/* BuildaBody — jewel tones, stage-light rings and restrained crystal accents. */
:root{--bg:#110d18;--panel:#201828;--panel2:#2c2036;--line:#48324f;--muted:#c1aecb;--text:#fcf4ff;--lime:#ff9bdc;--amber:#ffd29a;--radius:22px}
body{background:radial-gradient(ellipse at 93% 0%,#48205a66,transparent 42%),radial-gradient(ellipse at 2% 70%,#132c3855,transparent 40%),var(--bg)}
.sidebar{background:linear-gradient(180deg,#211329ef,#170f20f5);border-color:#54305b}.brand{gap:10px;letter-spacing:-.06em;font-size:1.36rem;white-space:nowrap}.brand .wordmark{line-height:1}.brand .wordmark b{font-weight:800}.brand .wordmark em{font-style:normal;color:#ff93d6;font-weight:500}.brand .wordmark small{display:block;letter-spacing:.21em;font-family:'DM Sans',sans-serif;font-size:.55rem;color:#ceafd5;font-weight:500;margin-top:8px}.brand-orbit{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;border:1px solid #ffacdedd;box-shadow:0 0 0 4px #ff84d00e,inset 0 0 14px #db60cb26;position:relative;font-size:1.22rem;font-weight:800;font-family:Manrope;color:#fff0fc;flex-shrink:0}.brand-orbit:after{content:'';position:absolute;width:6px;height:6px;border-radius:50%;background:#72edf1;right:-3px;top:9px;box-shadow:0 0 9px #72edf1}
.nav{margin-top:46px}.nav button{border:1px solid transparent;border-radius:999px}.nav button.active{background:linear-gradient(105deg,#7c2860,#402757);color:#ffe1f5;border-color:#bb66a078;box-shadow:0 5px 24px #e743a710}.nav button:hover{background:#3d2846}.avatar{background:linear-gradient(145deg,#b44388,#573171);color:white;border:1px solid #d985c1}.learning-mini{border-color:var(--line)}.steps i{background:#543758}.steps i:first-child{background:linear-gradient(90deg,#ff8ad5,#76e9ed)}
.topbar{border-color:#4b3054}.topbar .tag{background:#281d33;color:#e1c4ea;border-color:#61416b}.page-title .eyebrow{color:#e0a7d5}.page-title h1{letter-spacing:-.055em}.btn{border-radius:999px;background:linear-gradient(105deg,#ffc0e8,#efa1ed 55%,#bdacff);color:#351536;box-shadow:0 6px 24px #ea66be16}.btn.secondary{border-color:#896491;color:#faeafa;background:#39203c33;box-shadow:none}.btn.quiet{background:#422a50;color:#f8ddff;box-shadow:none}.text-button{color:#ffabdf}.tag.lime{background:#4a2441;border-color:#91557d;color:#ffc1e8}.tag.amber{background:#473029;border-color:#866346}.card{border-color:#51345b;background:linear-gradient(135deg,#261b30,#1e1727);box-shadow:0 8px 35px #07040d1c}.state-card{background:radial-gradient(ellipse at 5% 0%,#82275980,transparent 70%),linear-gradient(115deg,#442044,#302048 68%,#19313c);border-color:#af63987d;isolation:isolate}.state-card:before,.state-card:after{content:'';position:absolute;border-radius:50%;pointer-events:none;z-index:-1}.state-card:before{width:270px;height:270px;right:-120px;top:-70px;border:1px solid #ffb2e078;box-shadow:0 0 0 23px #fa77d009,0 0 0 24px #fb9ddb38,0 0 0 55px #bb86ff08,0 0 0 56px #aa9bfa28}.state-card:after{width:150px;height:150px;right:-39px;bottom:-71px;border:3px dotted #9dedee66}.state-card h2{max-width:440px;color:#fff1fd;font-weight:600}.state-card p{color:#eed1eb}.state-card .eyebrow{color:#f4c4e9!important}.state-footer{border-color:#995d8c66;color:#dabfdf}.pulse-line path{stroke:#8cf2e9}.metric{background:linear-gradient(145deg,#2b1d34,#1e1929);border-color:#53365e;border-radius:20px}.metric .value{color:#fff0fb}.metric:nth-child(2) .value{color:#8eebeb}.metric:nth-child(3) .value{color:#ffacd9}.metric:nth-child(4) .value{color:#d1bcff}.metric-head .icon{color:#d3a9db}.number{border-color:#a75b92;color:#ffb9e5;background:#3c2140}
.action-card{background:radial-gradient(circle at 110% -10%,#ffffffe0 0,transparent 34%),linear-gradient(140deg,#ffd1ef,#e4b8ff 70%,#b5e8f5);color:#311436;border:1px solid #f7d7ff}.action-card .eyebrow{color:#6a366b}.action-card h2{font-weight:700}.action-card p{color:#653567}.action-card .btn{background:#3a1848;color:#ffdef5;box-shadow:none}.action-card>.row .icon{border:1px solid #9b62a1;border-radius:50%;width:35px;height:35px;padding:6px}.chart-grid{stroke:#5a3d64}.chart-line{stroke:#82e8e7}.chart-tabs{background:#17101f;border-radius:999px;padding:4px}.chart-tabs button{border-radius:999px}.chart-tabs button.active{background:#5b345f;color:#ffe5f9}.event-day{background:#3f254c;color:#f8c5ea;border:1px solid #68416f}.divider{background:var(--line)}.notice{background:#3b2443;color:#f0d5ee;border:1px solid #76517c55}.callout{border-color:#75e5e8;color:#f0d6ed}.progress{background:#4b3454}.progress span{background:linear-gradient(90deg,#ff94d4,#bda3ff)}.checklist li b{color:#96e8ed}.footer-brand{color:#cc9bc9}.option{background:#2e2039;border-color:#62406e;border-radius:17px}.option:hover{border-color:#fc9bd7;background:#3a2646}
input,select,textarea{background:#171020;border-color:#644370;color:#f9ebff;border-radius:11px}input::placeholder,textarea::placeholder{color:#af99b8}.field label{color:#e4cde9}.form-section{border-color:#54355f;color:#ffb2df}.confirm-food{background:#35243f}.radio-row label{border-color:#72547d}.radio-row input,input[type=range],.confirm-food input{accent-color:#f196cf}dialog{background:#24182e;border-color:#b179ad;box-shadow:0 30px 100px #050007aa}dialog::backdrop{background:#08030dba}dialog .close{background:#513059;color:#ffe7fa}.error{color:#ffb8ca}#toast{background:linear-gradient(100deg,#ffd4ed,#d8c7ff);color:#301135;border:1px solid #ffecfc}.fuel-scan-card{background:radial-gradient(circle at 110% 0%,#82295866,transparent 60%),linear-gradient(145deg,#3d2452,#1c2d3d);border-color:#896194}.fuel-scan-card p{color:#ddc9e7}.fuel-macro{--macro:#f4a5d8}.fuel-macro.carbs{--macro:#85e5ec}.fuel-macro.fat{--macro:#ffd39b}.fuel-macro.kcal{--macro:#c5b2ff}.scan-symbol{display:grid;place-items:center;width:78px;height:78px;border:1px solid #c791ce;border-radius:50%;box-shadow:0 0 0 8px #e7abf00b}.food-pick{background:#32213e;border-color:#63426f;border-radius:16px}.food-coach{margin-bottom:24px}.coach-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:23px}.coach-columns p{margin-top:10px;font-size:.9rem}
.pose-setup{display:flex;align-items:end;justify-content:space-between;gap:20px}.pose-setup>.field{flex:1}.pose-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:24px;margin:26px 0}.pose-list{align-self:start;padding:19px}.pose-list .eyebrow{margin-bottom:17px}.pose-list button{display:flex;align-items:center;gap:9px;width:100%;background:transparent;color:var(--muted);padding:13px 8px;text-align:left;font-size:.84rem;line-height:1.45;border-radius:12px;margin:4px 0}.pose-list button.active{background:#563252;color:#ffd4f0}.pose-list button span{color:#bc83b0;font-size:.73rem}.pose-list button small{margin-left:auto;border:1px solid #815985;border-radius:50%;width:22px;height:22px;display:grid;place-items:center;flex-shrink:0}.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.pose-photo{padding:14px}.photo-open{display:block;width:100%;padding:0;background:#160e20;border-radius:13px;overflow:hidden;margin-bottom:16px}.photo-open img{display:block;width:100%;aspect-ratio:3/4;object-fit:contain;color:var(--muted)}.pose-photo p{margin:9px 0}.pose-photo h3{font-size:.9rem}.pose-empty{min-height:340px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:18px;background:radial-gradient(circle at 100% 0%,#71488433,transparent 60%),#241a30}.pose-empty h2{font-size:1.7rem;max-width:430px;line-height:1.35}.pose-empty p{color:var(--muted);max-width:490px}.pose-boundary p{margin-top:14px}.image-stage{position:relative;width:100%;background:#0f0916;overflow:hidden;border-radius:14px}.image-stage img{display:block;width:100%;height:100%;object-fit:contain}.image-stage svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.photo-context{padding:17px 0;margin:15px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.photo-context p{font-size:.8rem;color:var(--muted);margin:7px 0}.photo-context b{color:#f7d8ef;font-weight:500}.alignment-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}.alignment-stats strong{display:block;color:#8ae5e9;font-size:1.5rem}.alignment-stats span{font-size:.8rem;color:var(--muted);line-height:1.5;display:block;margin-top:6px}dialog.wide{width:min(1080px,calc(100% - 24px))}.compare-images{display:grid;grid-template-columns:1fr 1fr;gap:20px}.compare-images h3{margin:16px 0}
@media(max-width:1100px){.brand{font-size:1.12rem;gap:8px}.brand-orbit{width:31px;height:31px;font-size:1rem}.brand .wordmark small{font-size:.48rem}.pose-layout{grid-template-columns:185px minmax(0,1fr)}.photo-grid{grid-template-columns:1fr}}
@media(max-width:850px){.pose-layout{grid-template-columns:1fr}.pose-list{display:flex;flex-wrap:wrap;gap:5px}.pose-list .eyebrow{width:100%}.pose-list button{width:auto;flex:1 1 180px}.photo-grid{grid-template-columns:1fr 1fr}.pose-setup{align-items:stretch;flex-direction:column}}
@media(max-width:620px){.sidebar{background:#1b1027f7}.nav{margin:0}.nav button{border-radius:14px;padding:9px 2px;font-size:.68rem;gap:5px;min-width:0}.nav button.active{background:#613453;border-color:#a45a83}.mobile-brand .brand{font-size:1.18rem;gap:9px}.mobile-brand .brand-orbit{width:30px;height:30px}.mobile-brand .wordmark small{font-size:.46rem;letter-spacing:.18em}.topbar>.tag{font-size:.67rem;max-width:132px;white-space:normal;text-align:center}.topbar{gap:12px}.coach-columns{grid-template-columns:1fr;gap:23px}.photo-grid{grid-template-columns:1fr 1fr;gap:10px}.pose-photo{padding:10px}.pose-photo .row{flex-wrap:wrap}.pose-photo .text-button{font-size:.76rem}.pose-empty h2{font-size:1.45rem}.pose-list button{flex-basis:130px}.pose-layout{gap:18px}.compare-images{grid-template-columns:1fr}.alignment-stats{gap:8px}.alignment-stats strong{font-size:1.2rem}.state-card:before{right:-170px}.footer-brand{font-size:.66rem}.card{border-radius:21px}.btn{min-height:48px}}

/* Fine black edging keeps the jewel palette crisp. */
:root{--ink-line:#09060d}
.card,.metric,.option,.food-pick,dialog{border-color:var(--ink-line)}
.card,.metric{box-shadow:inset 0 0 0 1px #ffffff05,0 3px 12px #00000028}
.btn,.btn.secondary,.btn.quiet{border:1px solid var(--ink-line);box-shadow:0 2px 0 #09060d66}
.nav button.active,.chart-tabs,.event-day,.avatar,.topbar .tag{border:1px solid var(--ink-line)}
.chart-tabs button.active,.pose-list button.active{box-shadow:inset 0 0 0 1px var(--ink-line)}
.sidebar,.topbar,.state-footer,.learning-mini{border-color:var(--ink-line)}
.divider{background:var(--ink-line)}
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea{border-color:#0b0710;box-shadow:inset 0 0 0 1px #84638b33}
.state-card:before{border-color:#0a0712;box-shadow:0 0 0 23px #fa77d009,0 0 0 24px #fb9ddb38,0 0 0 55px #bb86ff08,0 0 0 56px #0a071299}

/* Fill-out stage albums */
.album-templates,.album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:22px 0}.album-template{text-align:left;color:var(--text);cursor:pointer;min-height:175px}.album-template h2{margin:14px 0}.album-heading{display:grid;grid-template-columns:1fr 220px;gap:28px;margin-top:22px}.album-heading p{margin:14px 0;max-width:760px}.album-date{display:flex;flex-direction:column;gap:12px}.album-date input{width:100%;color-scheme:dark}.album-date strong{font-size:28px}.album-date progress{width:100%;accent-color:#f58bcc}.album-section{margin-top:32px}.album-slot{padding:18px;min-width:0;background:linear-gradient(145deg,#302036,#201927)}.album-number{font-size:24px;color:#f1b2de;font-weight:750}.album-frame{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;aspect-ratio:3/4;width:100%;margin:16px 0;border:1px dashed #ad82ab;border-radius:12px;background:radial-gradient(circle at 50% 42%,#46324d,#211b29 70%);color:#d8bad7;cursor:pointer;overflow:hidden}.album-frame img{width:100%;height:100%;object-fit:contain}.album-symbol{display:grid;place-items:center;width:66px;height:66px;border:1px solid #09070b;border-radius:50%;font-size:36px;background:#614469}.album-slot h3{min-height:28px}.album-slot p{margin:10px 0}.album-history{border-top:1px solid #09070b;margin-top:16px;padding-top:12px}.album-history button{display:block;margin-top:10px}.album-history summary{cursor:pointer;color:#d5bcd5}.album-slot.filled{border-color:#18101b;box-shadow:inset 0 3px #a2ddd0}.album-template:hover,.album-frame:hover{border-color:#f2a8d6}@media(max-width:950px){.album-grid,.album-templates{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.album-heading{grid-template-columns:1fr}.album-grid,.album-templates{gap:12px}.album-slot{padding:12px}.album-frame{font-size:12px}.album-slot h3{font-size:15px}.album-symbol{width:48px;height:48px}.album-templates{grid-template-columns:1fr}}
