:root{
  --bg:#0f0e0d;--panel:#191715;--panel2:#211e1b;--panel3:#121110;--ink:#f1ece5;--muted:#9e958c;
  --line:#38322d;--gold:#caa46a;--gold2:#e0c28d;--burg:#602a35;--good:#8ebc96;--warn:#d6aa67;--bad:#d67b74;
  --radius:18px;--shadow:0 16px 50px rgba(0,0,0,.18)
}
*{box-sizing:border-box}html{background:var(--bg);color-scheme:dark}body{margin:0;background:radial-gradient(circle at 60% -20%,#2a2118 0,#13110f 34%,#0f0e0d 70%);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}
button,input,select,textarea{font:inherit}.topbar{position:sticky;top:0;z-index:50;height:68px;padding:10px 18px calc(10px + env(safe-area-inset-top));background:rgba(15,14,13,.93);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:10px;align-items:center}.brandIcon{width:38px;height:38px;border-radius:11px}.brand strong{display:block;letter-spacing:.08em;font-size:14px}.brand span{display:block;color:var(--muted);font-size:10px;margin-top:2px}.topActions{display:flex;gap:8px;align-items:center}.iconBtn,.installBtn{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:10px;padding:9px 11px;font-size:12px;font-weight:800}.installBtn{border-color:var(--gold);color:var(--gold2)}.saveState{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.saveState.saving{color:var(--warn)}.saveState.saved{color:var(--good)}
.shell{display:grid;grid-template-columns:190px minmax(0,1fr);max-width:1480px;margin:0 auto;min-height:calc(100vh - 68px)}.sideNav{padding:28px 14px;position:sticky;top:68px;height:calc(100vh - 68px);border-right:1px solid rgba(56,50,45,.65);display:flex;flex-direction:column;gap:6px}.navItem{border:0;background:transparent;color:var(--muted);border-radius:12px;padding:11px 12px;text-align:left;font-weight:800;cursor:pointer}.navItem span{color:#675d54;font-size:9px;margin-right:8px}.navItem.active{background:var(--panel2);color:var(--ink)}.navItem.active span{color:var(--gold)}
main{padding:30px 28px 110px;min-width:0}.emptyState{min-height:66vh;max-width:700px;display:flex;flex-direction:column;justify-content:center}.strataMark{width:72px;height:72px;border-radius:22px;border:1px solid var(--gold);display:grid;place-items:center;font-size:32px;color:var(--gold);font-weight:900;margin-bottom:24px}.emptyState h1,.pageHead h1{font-size:clamp(34px,5vw,64px);letter-spacing:-.045em;line-height:.96;margin:5px 0 15px}.emptyState>p:not(.eyebrow),.pageHead p:not(.eyebrow){font-size:15px;line-height:1.55;color:#c7beb5;max-width:720px}.eyebrow{margin:0;color:var(--gold);font-size:10px;font-weight:900;letter-spacing:.16em}.pageHead{display:flex;gap:20px;align-items:flex-end;justify-content:space-between;margin-bottom:22px}.pageHead h1{font-size:clamp(30px,4vw,52px);margin-bottom:8px}.pageHead p{margin:0}.projectMeta{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:11px}.badge{display:inline-flex;align-items:center;border:1px solid var(--line);background:var(--panel2);padding:6px 9px;border-radius:999px;font-size:10px;font-weight:900;color:#dcd2c9}
.view{display:none}.view.active{display:block}.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}.card{background:linear-gradient(180deg,var(--panel),#151311);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);min-width:0}.span12{grid-column:span 12}.span7{grid-column:span 7}.span6{grid-column:span 6}.span5{grid-column:span 5}.card h2{font-size:17px;margin:0 0 12px}.subhead{margin-top:22px!important}.cardHead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.muted{color:var(--muted)!important}.card p{line-height:1.5;color:#c5bcb3;font-size:13px}.row2,.row3,.row4{display:grid;gap:10px}.row2{grid-template-columns:repeat(2,minmax(0,1fr))}.row3{grid-template-columns:repeat(3,minmax(0,1fr))}.row4{grid-template-columns:repeat(4,minmax(0,1fr))}label{display:block;text-transform:uppercase;letter-spacing:.09em;font-weight:900;font-size:9px;color:var(--muted);margin:13px 0 6px}input,select,textarea{width:100%;border:1px solid var(--line);background:#0e0d0c;color:var(--ink);border-radius:11px;padding:11px 12px;outline:none}textarea{min-height:102px;resize:vertical;line-height:1.45}input:focus,select:focus,textarea:focus{border-color:#816a49;box-shadow:0 0 0 2px rgba(202,164,106,.08)}.checkLine{display:flex;align-items:flex-start;gap:9px;text-transform:none;letter-spacing:0;font-size:12px;line-height:1.4;color:#cbc1b7;margin-top:16px}.checkLine input{width:18px;height:18px;accent-color:var(--gold);margin:0;flex:0 0 auto}
.primary,.secondaryBtn,.textBtn,.uploadBtn{border-radius:11px;font-weight:900;cursor:pointer}.primary{border:0;background:var(--gold);color:#17120e;padding:12px 15px}.secondaryBtn{border:1px solid var(--line);background:var(--panel2);color:var(--ink);padding:10px 12px}.textBtn{border:0;background:transparent;color:var(--gold2);padding:6px 4px}.uploadBtn{display:block;text-align:center;background:var(--panel2);border:1px solid var(--line);color:#dcd3ca;padding:9px;text-transform:none;letter-spacing:0;font-size:11px;margin:8px 0 0}.photoPreview,.photoEmpty{width:100%;aspect-ratio:16/10;border-radius:13px;border:1px solid var(--line);object-fit:cover;background:#0e0d0c}.photoEmpty{display:grid;place-items:center;color:#6d655e;font-size:11px}.stonePhotoWrap,.referenceImageWrap{margin-bottom:10px}
.choiceGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.choice{position:relative}.choice input{position:absolute;opacity:0;pointer-events:none}.choice label{margin:0;border:1px solid var(--line);background:#131210;border-radius:11px;padding:10px;text-transform:none;letter-spacing:0;font-size:11px;color:#bbb1a8;cursor:pointer}.choice input:checked+label{border-color:var(--gold);background:#251f18;color:#f1e3cb}.referenceCard{margin:16px 0;border-left:3px solid var(--gold);background:#15120f;padding:13px 14px;border-radius:0 12px 12px 0}.referenceCard strong{color:var(--gold2);display:block;margin-bottom:4px}.referenceCard p{margin:0}.briefBox{background:#0e0d0c;border:1px solid var(--line);padding:16px;border-radius:14px;min-height:220px;line-height:1.54;font-size:13px}.briefBox h3{color:var(--gold2);margin:0 0 8px;font-size:15px}.briefBox b{color:#f4e3c9}
.sketchGrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.sketch{border:1px solid var(--line);background:#0e0d0c;border-radius:13px;padding:7px;min-width:0}.sketchImage{position:relative;aspect-ratio:1/1;border:1px dashed #413a34;border-radius:10px;overflow:hidden;display:grid;place-items:center;color:#625b54;font-size:10px}.sketchImage img{width:100%;height:100%;object-fit:cover}.sketchImage input{position:absolute;inset:0;opacity:0;cursor:pointer}.sketchFoot{display:flex;gap:6px;align-items:center;justify-content:space-between;margin-top:6px}.sketchFoot label{margin:0;text-transform:none;letter-spacing:0;font-size:10px}.sketchFoot input[type=checkbox]{width:16px;height:16px;accent-color:var(--gold)}.sketch.selected{border-color:var(--gold);box-shadow:0 0 0 1px rgba(202,164,106,.2)}
.reviewItem{display:flex;gap:10px;padding:12px 0;border-bottom:1px solid #2b2724;align-items:flex-start}.reviewItem:last-child{border-bottom:0}.reviewItem input{width:19px;height:19px;accent-color:var(--gold);margin:1px 0 0;flex:0 0 auto}.reviewItem label{margin:0;text-transform:none;letter-spacing:0;font-size:12px;color:#d0c6bd;line-height:1.4}.riskItem{display:flex;gap:9px;padding:9px 0;align-items:flex-start}.riskItem input{width:18px;height:18px;accent-color:var(--bad);margin:1px 0 0;flex:0 0 auto}.riskItem label{margin:0;text-transform:none;letter-spacing:0;font-size:11px;color:#c5bbb2;line-height:1.4}.scorePanel{margin:18px 0 10px;border-top:1px solid var(--line);padding-top:17px;display:flex;align-items:center;justify-content:space-between}.scorePanel>div{font-size:46px;font-weight:950;letter-spacing:-.05em}.scorePanel small{font-size:16px;color:var(--muted);margin-left:3px}.statusBadge{font-size:10px;font-weight:950;letter-spacing:.08em;padding:8px 10px;border-radius:999px}.statusBadge.proceed{background:#213629;color:#bce8c4}.statusBadge.rework{background:#40331f;color:#f0d29f}.statusBadge.redesign{background:#442424;color:#f2aaa5}.assessment{font-size:12px;color:#c7bdb4;line-height:1.5;margin-bottom:8px}
.cadImageGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.cadSlot{position:relative;aspect-ratio:1/1;border:1px dashed var(--line);border-radius:12px;display:grid;place-items:center;color:#645d56;font-size:10px;overflow:hidden;background:#0e0d0c}.cadSlot img{width:100%;height:100%;object-fit:cover}.cadSlot input{position:absolute;inset:0;opacity:0;cursor:pointer}.archiveTools{display:grid;grid-template-columns:1fr auto auto;gap:9px;margin-bottom:14px}.fileBtn{display:flex;align-items:center}.archiveList{display:grid;gap:9px}.projectCard{border:1px solid var(--line);border-radius:14px;background:#12110f;padding:13px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.projectCard h3{margin:0 0 5px;font-size:14px}.projectCard p{margin:0;color:var(--muted);font-size:10px}.projectActions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.miniBtn{border:1px solid var(--line);background:var(--panel2);color:var(--ink);padding:7px 8px;border-radius:9px;font-size:10px;font-weight:800}.miniBtn.danger{color:#f0ada7;border-color:#592f31;background:#281719}.scoreDot{display:inline-flex;align-items:center;justify-content:center;min-width:29px;height:21px;border-radius:999px;background:#2b2622;margin-left:5px;color:#d7cbbf;font-weight:900}
.acronym{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}.acronym div{border:1px solid var(--line);background:#13110f;padding:12px;border-radius:12px}.acronym b{display:block;color:var(--gold);font-size:18px}.acronym span{font-size:10px;color:var(--muted)}.pillWrap{display:flex;gap:7px;flex-wrap:wrap}.pill{border:1px solid var(--line);background:#13110f;padding:7px 9px;border-radius:999px;font-size:10px;color:#d6ccc2}.ruleList>div{padding:9px 0;border-bottom:1px solid #2d2925;font-size:11px;line-height:1.4}.bannedList>div::before{content:"×";color:var(--bad);font-weight:900;margin-right:8px}.libraryList{max-height:520px;overflow:auto;padding-right:5px}.libraryEntry{padding:10px 0;border-bottom:1px solid #2d2925}.libraryEntry strong{display:block;font-size:11px;color:#e6d9cc}.libraryEntry span{font-size:10px;color:var(--muted);line-height:1.4;display:block;margin-top:3px}
.bottomNav{display:none}.toast{position:fixed;right:18px;bottom:22px;z-index:100;background:#2b261f;color:#f2e7d9;border:1px solid #5c4d39;border-radius:12px;padding:11px 13px;font-size:11px;box-shadow:var(--shadow);opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translateY(0)}
@media(max-width:980px){.shell{grid-template-columns:1fr}.sideNav{display:none}main{padding:22px 16px 100px}.span7,.span6,.span5{grid-column:span 12}.bottomNav{display:flex;position:fixed;z-index:40;left:0;right:0;bottom:0;padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:rgba(15,14,13,.96);backdrop-filter:blur(16px);border-top:1px solid var(--line);overflow:auto}.bottomItem{border:0;background:transparent;color:#928981;min-width:72px;padding:8px 8px;border-radius:10px;font-size:9px;font-weight:850}.bottomItem.active{background:var(--panel2);color:var(--gold2)}.topbar{padding-left:12px;padding-right:12px}.brand span{display:none}.saveState{display:none}}
@media(max-width:650px){.pageHead{align-items:flex-start;flex-direction:column}.pageHead .primary{width:100%}.row2,.row3,.row4{grid-template-columns:1fr}.choiceGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.sketchGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.cadImageGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.archiveTools{grid-template-columns:1fr 1fr}.archiveTools input{grid-column:1/-1}.projectCard{grid-template-columns:1fr}.projectActions{justify-content:flex-start}.emptyState h1{font-size:43px}.iconBtn{padding:8px 9px}.topActions{gap:5px}}
@media print{.topbar,.sideNav,.bottomNav,.pageHead button,.archiveTools,.projectActions,.uploadBtn{display:none!important}body{background:white;color:#111}.shell{display:block}.view{display:none!important}.view.active{display:block!important}main{padding:0}.card,.briefBox{background:white;color:#111;border-color:#aaa;box-shadow:none}.card p,.muted{color:#333!important}input,select,textarea{background:white;color:#111;border-color:#bbb}.eyebrow{color:#555}}
.stepAdvance{margin-top:16px;border:1px solid var(--line);background:linear-gradient(180deg,#17140f,#12100e);border-radius:14px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px}.stepAdvance>div{display:grid;gap:3px}.stepAdvance strong{font-size:12px;color:#eee2d5}.stepAdvance span{font-size:10px;color:var(--muted);line-height:1.4}.stepCompleteBtn{min-width:190px}.stepCompleteBtn.stepDone{background:#2d4735;color:#d8f0de}
@media(max-width:650px){.stepAdvance{align-items:stretch;flex-direction:column}.stepCompleteBtn{width:100%;min-width:0}}

.simpleCreate{min-height:58vh;max-width:none;align-items:center;justify-content:center}.createProjectOnly{min-width:220px;font-size:16px;padding:15px 24px}.archiveEmpty{display:grid;gap:12px;justify-items:start;padding:18px 0}
