/* Approved graphite identity. Existing app DOM, routes, forms and semantics retained. */
html[data-graphite-review]:not([data-theme="dark"]){
 --paper:#FAF8F4;--white:#FDFDFD;--ink:#1D1D1F;--muted:#68686D;--line:#EAE7E2;--surface-soft:#FDFDFD;--cream:#FDFDFD;
 --accent:#41464D;--accent-soft:#F0EDE8;--accent-line:#C7CBD0;--accent-text:#41464D;--on-accent:#FFFFFF;
 --sage:#41464D;--sage-dark:#41464D;--clay:#41464D;--gold:#8B929B;--gold-text:#636970;--sand:#E5E5EA;
 --review-accent:#41464D;--review-soft:#F0EDE8;--review-border:#9AA0A7;--shadow:0 12px 30px rgba(22,27,33,.055);
 --danger-text:#b04537;--warn-text:#a35f12;--ok-text:#1a6a46;--info-text:#2a6496;
}
html[data-graphite-review][data-theme="dark"]{
 --paper:#191C20;--white:#22262B;--ink:#F1F2F4;--muted:#B4BAC3;--line:#42464D;--surface-soft:#292D32;--cream:#292D32;
 --accent:#D0D4DA;--accent-soft:#30353B;--accent-line:#69717C;--accent-text:#D0D4DA;--on-accent:#191C20;
 --sage:#D0D4DA;--sage-dark:#D0D4DA;--clay:#D0D4DA;--gold:#A9B1BC;--gold-text:#C4CBD3;--sand:#42464D;
 --review-accent:#D0D4DA;--review-soft:#30353B;--review-border:#777E88;--shadow:0 12px 30px rgba(0,0,0,.15);
}
html[data-graphite-review] body{background:var(--paper)}
html[data-graphite-review]{--island:#25292E;--island-2:#353A41;--island-line:#51565E;--on-island:#FDFDFD;--island-muted:#C5C9CF;--island-accent:#D0D4DA;--on-island-accent:#191C20}
html[data-graphite-review] .toast{background:#41464D;color:#FFFFFF}
html[data-graphite-review] .coordinate-item:hover{background:var(--ink)}
html[data-graphite-review] :is(.primary-button,.generate-button,.circle-primary){box-shadow:0 3px 10px rgba(20,25,32,.09)}
html[data-graphite-review] :is(.secondary-button,.search-box,.filter-sheet-button){border-color:var(--line)}
html[data-graphite-review] .topbar{border-color:var(--line)}
html[data-graphite-review] .sidebar{background:var(--surface-soft);color:var(--ink);border-inline-end:1px solid var(--line)}
html[data-graphite-review] :is(.nav-item,.profile-chip,.brand small){color:var(--muted)}
html[data-graphite-review] .nav-item.active{background:var(--accent-soft);color:var(--accent-text);box-shadow:inset -3px 0 var(--accent)}
html[data-graphite-review] .nav-item:hover{background:var(--accent-soft);color:var(--ink)}
html[data-graphite-review] :is(.sidebar-card,.settings-group){border-color:var(--line);background:var(--white)}
html[data-graphite-review] :is(.sidebar-card .eyebrow,.usage-row span,.profile-chip small){color:var(--muted)}
html[data-graphite-review] :is(.brand-mark,.brand-name){color:var(--ink);border-color:var(--line)}
html[data-graphite-review] :is(.avatar,.account-avatar){background:var(--accent-soft);color:var(--accent-text)}
html[data-graphite-review] .progress{background:var(--line)}
html[data-graphite-review] .tab-item{color:var(--muted)}
html[data-graphite-review] .tab-item.active{color:var(--ink)}
html[data-graphite-review] .tab-item.active svg{color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 5px var(--accent-soft)}
html[data-graphite-review] .item-visual{background:var(--surface-soft);border:1px solid var(--line);border-radius:18px}
/* Approved warm page with soft-white wardrobe tiles (light appearance). */
html[data-graphite-review]:not([data-theme="dark"]) .item-visual{background:#FDFDFD;border-color:#EAE7E2}
html[data-graphite-review] .look-card{border-radius:20px;border-color:var(--line);box-shadow:0 3px 14px rgba(20,25,32,.025)}
html[data-graphite-review] .look-preview{background:var(--surface-soft)}
html[data-graphite-review] :is(.look-preview img,.look-preview .photo-frame){box-shadow:none;background:transparent}
html[data-graphite-review] .upload-zone{border-color:var(--review-border);background:var(--surface-soft);border-radius:20px}
html[data-graphite-review] .upload-zone:hover{background:var(--accent-soft);border-color:var(--accent)}
html[data-graphite-review] dialog{border-color:var(--line);background:var(--paper);box-shadow:var(--shadow)}
html[data-graphite-review] dialog::backdrop{background:rgba(20,24,30,.36);backdrop-filter:blur(3px)}
html[data-graphite-review] :is(input,select,textarea):focus-visible{outline-color:var(--accent)}
html[data-graphite-review] #stylist-input-home .stylist-eyebrow{display:none}
html[data-graphite-review] .fashion-kicker{color:var(--muted)}
html[data-graphite-review] .feel-chip span{white-space:nowrap}
html[data-graphite-review] .chat-stage .sug-art img{width:100%;height:100%;object-fit:contain}
/* Preserve the final-ya markup and font fix from current main (#117). */

@media(max-width:900px){
 html[data-graphite-review]:not([data-theme="dark"]) .tabbar{background:rgba(253,253,253,.86);border-color:rgba(65,70,77,.14);box-shadow:0 8px 30px rgba(20,25,32,.10);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
 html[data-graphite-review][data-theme="dark"] .tabbar{background:rgba(34,38,43,.88);border-color:rgba(208,212,218,.18);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
}
@media(prefers-reduced-transparency:reduce){html[data-graphite-review] .tabbar{background:var(--paper)!important}}
html[data-graphite-review] :is(button,a,summary):focus-visible{outline:2px solid var(--accent);outline-offset:3px}
html[data-graphite-review] :is(input,select,textarea):focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 13%,transparent)}
html[data-graphite-review] .account-avatar{background:var(--accent-soft)}
html[data-graphite-review] .quick-action:hover{box-shadow:0 6px 18px rgba(20,25,32,.10)}
html[data-graphite-review] .close-button{color:var(--ink);background:var(--surface-soft)}
/* Review revision 2: wardrobe availability + complete saved ensembles. */
html[data-graphite-review] .wardrobe-title-row{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
html[data-graphite-review] #wardrobe-piece-count{font-size:14px;color:var(--muted);white-space:nowrap}
html[data-graphite-review] .wardrobe-filter-count{font-size:12px;color:var(--muted);margin:8px 0}
html[data-graphite-review] .item-state{position:absolute;inset:auto 6px 6px;max-width:calc(100% - 12px);width:fit-content;font-size:10px;line-height:1.5;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:5px;padding:3px 6px;text-align:start;white-space:normal}
html[data-graphite-review] .item-preparation{font-size:10px;color:var(--warn-text);line-height:1.5}
html[data-graphite-review] #open-add-menu{border-radius:999px;min-height:50px;padding:0 20px;box-shadow:0 5px 18px #14192022}
html[data-graphite-review] .saved-section-title{font-size:17px;margin:8px 0 16px}
html[data-graphite-review] #saved-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:22px}
html[data-graphite-review] #saved-grid .look-card{overflow:hidden;border-radius:24px;box-shadow:none;background:var(--paper)}
html[data-graphite-review] .saved-look-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 10px;padding:20px;background:var(--surface-soft);border-bottom:1px solid var(--line)}
html[data-graphite-review] .saved-piece{margin:0;min-width:0;display:flex;flex-direction:column;align-items:center;gap:6px}
html[data-graphite-review] .saved-piece-photo,html[data-graphite-review] .saved-piece-placeholder{width:100%;height:112px;object-fit:contain;border:0;box-shadow:none;background:transparent;border-radius:0;transform:none}
html[data-graphite-review] .saved-piece-placeholder{display:grid;place-items:center;color:var(--muted);border:1px dashed var(--line);border-radius:16px}
html[data-graphite-review] .saved-piece-placeholder svg{width:34px;height:34px}
html[data-graphite-review] .saved-piece figcaption{font-size:10px;line-height:1.5;text-align:center;color:var(--ink);overflow-wrap:anywhere}
html[data-graphite-review] #saved-grid .look-info{padding:18px}
html[data-graphite-review] .saved-look-heading h3{font-size:20px;margin:0}
html[data-graphite-review] .saved-look-items{display:none}
html[data-graphite-review] .saved-look-actions{display:grid;grid-template-columns:1.3fr 1fr auto;gap:8px;margin-top:16px}
html[data-graphite-review] .saved-look-actions button{min-height:42px;font-size:12px;border-radius:12px;padding:0 12px}
html[data-graphite-review] .saved-look-actions [data-open-saved-outfit]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
@media(max-width:900px){
 html[data-graphite-review] #wardrobe-page .wardrobe-add-actions{position:fixed;inset-inline-end:20px;bottom:calc(96px + env(safe-area-inset-bottom));z-index:35}
 html[data-graphite-review] #wardrobe-page{padding-bottom:90px}
 html[data-graphite-review] .wardrobe-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 10px}
 html[data-graphite-review] .item-visual{height:148px;border-radius:40% 40% 14px 14px}
 html[data-graphite-review] .item-meta h2{font-size:12px;line-height:1.55}
 html[data-graphite-review] .saved-look-board{padding:16px;gap:14px 8px}
 html[data-graphite-review] .saved-piece-photo,html[data-graphite-review] .saved-piece-placeholder{height:108px}
}
@media(max-width:350px){html[data-graphite-review] .item-visual{height:126px}html[data-graphite-review] .saved-piece-photo,html[data-graphite-review] .saved-piece-placeholder{height:92px}}

html[data-graphite-review] .saved-piece-placeholder{display:flex;flex-direction:column;justify-content:center;gap:10px}html[data-graphite-review] .saved-piece-placeholder small{font-size:9px;color:var(--muted)}html[data-graphite-review] .item-visual .saved-piece-placeholder{height:100%;border:0}
html[data-graphite-review] #open-add-menu{display:flex;align-items:center;gap:10px;flex-direction:row-reverse}
html[data-graphite-review] #open-add-menu::before{content:'+';display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--paper);color:var(--ink);font-size:22px;font-weight:400;line-height:1}
