:root{
  --bg:#070a0f;--bg2:#0c1016;--steel:#151a20;--steel2:#20262d;--steel3:#2b323a;
  --line:#5a626b;--line-dark:#222831;--blue:#1e90ff;--blue2:#62b4ff;--red:#d6332d;
  --text:#f2f4f6;--muted:#b4bcc5;--success:#36db68;--warning:#f3c44e;--danger:#ff493f;
  --shadow:0 14px 32px rgba(0,0,0,.42);--bevel:inset 0 1px rgba(255,255,255,.12),inset 0 -2px rgba(0,0,0,.65);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);font-family:"Arial Narrow",Impact,Arial,sans-serif;letter-spacing:.01em;padding-bottom:98px;background:
 radial-gradient(circle at 50% -10%,rgba(30,144,255,.12),transparent 30%),
 repeating-linear-gradient(135deg,rgba(255,255,255,.018) 0 1px,transparent 1px 7px),
 linear-gradient(180deg,#05070a,#0b0f14 45%,#05070a);min-height:100vh}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.32;background-image:
 radial-gradient(circle at 12% 18%,rgba(255,115,36,.34) 0 1px,transparent 2px),
 radial-gradient(circle at 82% 38%,rgba(30,144,255,.26) 0 1px,transparent 2px),
 linear-gradient(90deg,transparent 49.8%,rgba(255,255,255,.018) 50%,transparent 50.2%);background-size:180px 180px,230px 230px,8px 8px}
button,input,select{font:inherit}button{-webkit-tap-highlight-color:transparent}.top-bar{position:sticky;top:0;z-index:20;padding:8px 14px 10px;background:linear-gradient(#090c10ee,#090c10f8);border-bottom:1px solid #505862;box-shadow:0 2px 0 #000,0 4px 16px rgba(0,0,0,.55);backdrop-filter:blur(9px)}
.brand-wrap{max-width:760px;margin:auto;text-align:center}.brand-logo{width:min(100%,500px);height:96px;object-fit:contain;display:block;margin:auto;filter:drop-shadow(0 5px 9px #000)}.brand-tagline{margin:-8px 0 1px;color:#d7dbe0;text-transform:uppercase;font-size:.72rem;letter-spacing:.18em;text-shadow:0 1px 0 #000}
main{width:min(100%,760px);margin:auto}.page{display:none;padding:18px 14px 30px}.page.active{display:block;animation:pageIn .2s ease-out}@keyframes pageIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.metal-panel,.metal-card,.form-card,.result-card,.load-summary,.load-list-wrap,.notice-card,.analysis-card,.material-result{position:relative;background:
 linear-gradient(135deg,rgba(255,255,255,.05),transparent 32%),
 repeating-linear-gradient(115deg,rgba(255,255,255,.018) 0 1px,transparent 1px 6px),
 linear-gradient(180deg,#181d23,#0d1116);border:1px solid #59616a;box-shadow:var(--bevel),var(--shadow)}
.metal-panel:before,.metal-card:before{content:"";position:absolute;inset:5px;pointer-events:none;border:1px solid rgba(0,0,0,.75);border-radius:inherit}
.hero-panel{border-radius:14px;padding:22px 18px 18px;text-align:center;overflow:hidden}.hero-panel:after{content:"";position:absolute;left:14%;right:14%;bottom:0;height:2px;background:var(--blue);box-shadow:0 0 12px var(--blue)}.hero-panel h2{margin:0;text-transform:uppercase;font-size:clamp(1.55rem,6vw,2.35rem);letter-spacing:.045em;text-shadow:0 2px 0 #000}.hero-panel>p:last-of-type{color:var(--muted);line-height:1.48;max-width:540px;margin:10px auto 16px}.eyebrow{margin:0 0 8px;color:var(--blue);font-size:.74rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.scan-hero{position:relative;z-index:1;width:100%;min-height:126px;border:1px solid #515962;border-radius:12px;color:white;background:linear-gradient(180deg,#171d23,#090c10);box-shadow:var(--bevel),0 8px 18px #000;display:flex;align-items:center;justify-content:center;gap:20px;padding:18px;cursor:pointer}.scan-hero:active{transform:translateY(1px)}.scan-hero strong{display:block;font-size:1.55rem;letter-spacing:.06em;text-transform:uppercase}.scan-hero small{display:block;color:var(--muted);margin-top:4px;text-transform:uppercase;letter-spacing:.08em}.scan-ring{width:78px;height:78px;border-radius:50%;display:grid;place-items:center;border:4px solid #313940;border-top-color:var(--blue);border-right-color:var(--blue);background:radial-gradient(circle,#27313b,#080b0e 70%);box-shadow:0 0 0 4px #10151b,0 0 22px rgba(30,144,255,.72),inset 0 0 18px #000}.scan-ring.large{width:105px;height:105px}.scan-ring .icon-camera{width:35px;height:25px}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.home-grid{margin-top:14px}.card{position:relative;min-height:145px;padding:18px 12px 15px;border-radius:10px;color:var(--text);text-align:center;cursor:pointer}.card:active{transform:scale(.985)}.tool-icon{display:block;margin:2px auto 13px;width:34px;height:34px}.card h3{margin:0 0 7px;text-transform:uppercase;font-size:1rem;letter-spacing:.035em}.card p{margin:0;color:var(--muted);font-family:Arial,sans-serif;font-size:.84rem;line-height:1.4}.ready-pill{display:inline-block;margin-top:10px;padding:5px 9px;border:1px solid rgba(54,219,104,.45);border-radius:3px;background:rgba(54,219,104,.1);color:var(--success);font-size:.68rem;font-weight:900}
.feature-strip{margin-top:14px;border-radius:10px;padding:14px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.feature-strip>div{text-align:center;border-right:1px solid #3c434b}.feature-strip>div:last-child{border-right:0}.feature-strip strong,.feature-strip small{display:block}.feature-strip strong{text-transform:uppercase;font-size:.72rem;color:var(--blue)}.feature-strip small{margin-top:4px;color:var(--muted);font-family:Arial,sans-serif;font-size:.67rem;line-height:1.25}.mini-icon{display:block;width:27px;height:27px;margin:0 auto 7px}
.back-btn,.primary-btn,.secondary-btn{position:relative;width:100%;border-radius:5px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;box-shadow:var(--bevel),0 5px 12px rgba(0,0,0,.35)}.back-btn,.primary-btn{border:1px solid #4aa6ff;background:linear-gradient(180deg,#1177e8,#064b9d);color:white}.back-btn{padding:13px;margin-bottom:10px;text-align:left}.primary-btn{padding:16px;margin-top:18px;font-size:1rem}.primary-btn.compact{margin-top:0}.secondary-btn{padding:14px;border:1px solid #636b74;background:linear-gradient(#2d333a,#171b20);color:var(--text)}button:disabled{opacity:.5;cursor:default}.section-heading{margin:15px 2px}.section-heading h2{margin:0;text-transform:uppercase;font-size:1.75rem;letter-spacing:.045em}.section-heading p:last-child{color:var(--muted);font-family:Arial,sans-serif;line-height:1.45}.scan-title{text-align:center}
.form-card,.load-list-wrap,.analysis-card{border-radius:11px;padding:18px}.notice-card{border-radius:8px;padding:13px 15px;margin-bottom:13px;color:var(--muted);font-family:Arial,sans-serif;font-size:.84rem;line-height:1.45}label{display:block;margin:15px 0 7px;text-transform:uppercase;font-size:.8rem;letter-spacing:.05em}label:first-child{margin-top:0}input,select{width:100%;border:1px solid #59616a;border-radius:5px;background:linear-gradient(#333a42,#20262d);color:white;padding:14px;outline:none;box-shadow:inset 0 2px 5px #111}input:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 2px rgba(30,144,255,.16),inset 0 2px 5px #111}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-message{min-height:20px;margin:11px 2px 0;color:var(--danger);font-family:Arial,sans-serif;font-size:.9rem}.form-message.success{color:var(--success)}.form-message.centered{text-align:center}.result-card{margin-top:16px;padding:25px 18px;text-align:center;border-radius:10px}.result-card span,.load-summary span,.photo-facts span{color:var(--muted);font-family:Arial,sans-serif}.result-card h2{margin:8px 0 0;color:var(--blue2);font-size:2.8rem;text-shadow:0 0 12px rgba(30,144,255,.3)}
.load-summary{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:16px;padding:12px;border-radius:10px}.load-summary>div{padding:13px;background:#20262d;border:1px solid #434b54;border-radius:5px}.load-summary span{display:block;margin-bottom:5px;font-size:.78rem}.load-summary .total-box{grid-column:1/-1;background:linear-gradient(180deg,#123b69,#092440);border-color:#258dff}.total-box strong{color:#fff;font-size:1.8rem}.load-list-wrap{margin-top:16px}.list-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.list-heading h3{margin:0;text-transform:uppercase}.text-btn,.remove-btn{border:0;background:transparent;color:var(--danger);font-weight:900}.empty-state{padding:28px 10px;text-align:center;color:var(--muted);font-family:Arial,sans-serif}.empty-state[hidden]{display:none}.empty-anvil{display:block;font-size:2rem;color:var(--blue)}.empty-state h3{margin:9px 0 5px;color:var(--text);font-family:"Arial Narrow",Arial,sans-serif;text-transform:uppercase}.empty-state p{margin:0}.load-list,.history-list{display:grid;gap:10px;margin-top:13px}.load-item,.history-card{background:linear-gradient(#20262d,#12171c);border:1px solid #505862;border-radius:6px;box-shadow:var(--bevel);padding:13px}.load-item{display:grid;grid-template-columns:1fr auto;gap:12px}.load-item h4,.history-card h3{margin:0 0 6px}.load-item p,.history-card p{margin:0;color:var(--muted);font-family:Arial,sans-serif;font-size:.86rem;line-height:1.4}.item-value{text-align:right}.item-value strong{display:block;color:var(--blue2);font-size:1.08rem}.remove-btn{margin-top:7px;padding:3px}
.camera-stage{position:relative;overflow:hidden;aspect-ratio:4/3;background:#030506;border:1px solid #626a73;border-radius:7px;box-shadow:0 0 0 4px #11161b,0 0 0 5px #454d56,0 12px 30px #000}.camera-stage video,.camera-stage img{width:100%;height:100%;object-fit:contain;background:#030506}.camera-placeholder{position:absolute;inset:0;display:grid;place-content:center;text-align:center;padding:24px;color:var(--muted);font-family:Arial,sans-serif}.camera-placeholder[hidden]{display:none}.camera-placeholder h3{margin:12px 0 5px;color:var(--text);text-transform:uppercase;font-family:"Arial Narrow",Arial,sans-serif}.camera-placeholder p{margin:0;line-height:1.42}.corner{position:absolute;width:28px;height:28px;border-color:var(--blue);filter:drop-shadow(0 0 5px var(--blue))}.corner.tl{left:9px;top:9px;border-left:3px solid;border-top:3px solid}.corner.tr{right:9px;top:9px;border-right:3px solid;border-top:3px solid}.corner.bl{left:9px;bottom:9px;border-left:3px solid;border-bottom:3px solid}.corner.br{right:9px;bottom:9px;border-right:3px solid;border-bottom:3px solid}.camera-actions,.photo-toolbar{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:14px}.photo-toolbar[hidden]{display:none}
.analysis-card{margin-top:17px}.analysis-status{display:flex;align-items:center;gap:11px;border-bottom:1px solid #414850;padding-bottom:14px}.analysis-status h3{margin:0;font-size:1.55rem}.pulse-dot{width:13px;height:13px;border-radius:50%;background:var(--success);box-shadow:0 0 0 6px rgba(54,219,104,.09),0 0 12px rgba(54,219,104,.5)}.confidence-shell{margin-left:auto;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--success) 0 82%,#20262d 82%);box-shadow:0 0 0 5px #10151a,inset 0 0 0 7px #0b0f13}.confidence-shell span{font-weight:900;color:white;font-size:.82rem}.analysis-card>p{color:var(--muted);font-family:Arial,sans-serif;line-height:1.48}.photo-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.photo-facts div,.ai-result-grid div{padding:12px 9px;background:linear-gradient(#282f37,#1b2026);border:1px solid #454d56;border-radius:5px}.photo-facts span,.ai-result-grid span{display:block;font-size:.7rem;margin-bottom:5px}.photo-facts strong{font-size:.84rem}.ai-result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.ai-result-grid strong{font-size:.9rem}.ai-guidance{margin:15px 0;padding:14px;background:#0b0f13;border:1px solid #4a525b;border-radius:6px}.ai-guidance h4{margin:13px 0 6px;color:var(--blue);text-transform:uppercase;letter-spacing:.04em}.ai-guidance h4:first-child{margin-top:0}.ai-guidance h4.danger-heading{color:var(--danger)}.ai-guidance ul{margin:0;padding-left:20px;color:var(--muted);font-family:Arial,sans-serif;line-height:1.5}.ai-guidance p{margin:0;color:var(--muted);font-family:Arial,sans-serif;line-height:1.5}
.material-results{display:grid;gap:10px;margin-top:14px}.material-result{border-radius:6px;padding:15px}.material-result h3{margin:0 0 6px;color:var(--blue2);text-transform:uppercase}.material-category{display:inline-block;padding:4px 8px;border:1px solid rgba(30,144,255,.5);border-radius:3px;background:rgba(30,144,255,.08);color:var(--blue2);font-size:.72rem;font-weight:900}.material-result p{color:var(--muted);font-family:Arial,sans-serif;line-height:1.42}.material-result .material-grade{margin-bottom:0;padding-top:9px;border-top:1px solid #414850;color:var(--text)}.database-match{margin:17px 0;padding:15px;background:linear-gradient(180deg,rgba(13,31,49,.92),rgba(7,12,18,.95));border:1px solid #348fe6;border-radius:7px;box-shadow:inset 0 0 22px rgba(30,144,255,.08)}.database-match h3{margin:0;color:#fff;font-size:1.45rem}.database-match h4{margin:13px 0 6px;color:var(--blue);text-transform:uppercase}.database-match p,.database-match li{color:var(--muted);font-family:Arial,sans-serif;line-height:1.48}.db-heading{display:flex;align-items:center;gap:12px}.db-heading img{width:78px;height:50px;object-fit:cover;object-position:center;border:1px solid #515962;border-radius:4px}.db-heading span{color:var(--blue2);font-size:.8rem}.db-columns{display:grid;grid-template-columns:1fr 1fr;gap:13px}.db-columns ul{margin:0;padding-left:20px}.history-card{display:grid;grid-template-columns:95px 1fr;gap:13px;align-items:center}.history-card img{width:95px;height:82px;object-fit:cover;border-radius:4px;background:#05080a;border:1px solid #48505a}
.history-card{cursor:pointer;transition:border-color .16s ease,transform .16s ease}.history-card:hover,.history-card:focus-visible{border-color:var(--blue);outline:none}.history-card:active{transform:scale(.992)}.history-open-hint{display:block;margin-top:7px;color:var(--blue2);font-family:Arial,sans-serif;font-size:.75rem;font-weight:800}.history-card .remove-btn{position:relative;z-index:1}.history-load-more{margin-top:14px}.saved-scan-detail{padding:18px;border-radius:11px}.saved-scan-photo-button{display:block;width:100%;padding:0;border:1px solid #56616c;border-radius:8px;background:#05080a;overflow:hidden;cursor:zoom-in}.saved-scan-photo-button img{display:block;width:100%;max-height:520px;object-fit:contain}.saved-photo-hint{text-align:center;color:var(--muted);font-family:Arial,sans-serif;font-size:.78rem}.saved-scan-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:17px 0}.saved-scan-summary div{padding:12px 9px;background:linear-gradient(#282f37,#1b2026);border:1px solid #454d56;border-radius:5px}.saved-scan-summary span{display:block;margin-bottom:5px;color:var(--muted);font-family:Arial,sans-serif;font-size:.7rem}.saved-scan-detail h3{margin:18px 0 6px;color:var(--blue);text-transform:uppercase}.saved-scan-detail h3.danger-heading{color:var(--danger)}.saved-scan-detail p,.saved-scan-detail li{color:var(--muted);font-family:Arial,sans-serif;line-height:1.5}.saved-scan-detail ul{margin:0;padding-left:20px}.danger-btn{width:100%;margin-top:22px;padding:14px;border:1px solid #ff6b6b;border-radius:5px;background:linear-gradient(#8b2424,#571313);color:white;font-weight:900;text-transform:uppercase}.saved-photo-viewer{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.94);display:grid;place-items:center;padding:52px 12px 18px}.saved-photo-viewer[hidden]{display:none}.saved-photo-viewer img{max-width:100%;max-height:100%;object-fit:contain}.saved-photo-viewer button{position:absolute;right:14px;top:10px;width:42px;height:42px;border:1px solid #7b8792;border-radius:50%;background:#151b21;color:#fff;font-size:2rem;line-height:1}
.history-storage-status{margin:9px 0 0;color:var(--muted);font-family:Arial,sans-serif;font-size:.78rem;line-height:1.4}.history-storage-status.storage-warning{color:#ffbd59;font-weight:800}
.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:30;height:84px;padding-bottom:env(safe-area-inset-bottom);display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#151a20,#080b0f);border-top:1px solid #626a73;box-shadow:0 -3px 0 #000,0 -10px 22px rgba(0,0,0,.42);overflow-x:auto}.bottom-nav button{position:relative;flex:1 0 58px;max-width:110px;height:68px;border:0;border-right:1px solid #333a42;background:transparent;color:#c2c7cc;font-size:.65rem;text-transform:uppercase;letter-spacing:.03em}.bottom-nav button:last-child{border-right:0}.bottom-nav button.active{color:var(--blue);background:linear-gradient(180deg,rgba(30,144,255,.12),transparent)}.bottom-nav button.active:before{content:"";position:absolute;left:22%;right:22%;top:0;height:2px;background:var(--blue);box-shadow:0 0 9px var(--blue)}.nav-icon{display:block;width:22px;height:22px;margin:0 auto 5px}
/* Lightweight CSS icons */
.icon-camera,.icon-home,.icon-truck,.icon-dollar,.icon-search,.icon-history,.icon-ai,.icon-shield,.icon-target{position:relative;display:block;color:currentColor}
.icon-camera{border:2px solid currentColor;border-radius:3px}.icon-camera:before{content:"";position:absolute;left:6px;top:-6px;width:12px;height:6px;background:currentColor;border-radius:2px 2px 0 0}.icon-camera:after{content:"";position:absolute;left:50%;top:50%;width:9px;height:9px;border:2px solid currentColor;border-radius:50%;transform:translate(-50%,-50%)}
.icon-home:before{content:"";position:absolute;left:3px;top:8px;width:16px;height:13px;border:2px solid currentColor;border-top:0}.icon-home:after{content:"";position:absolute;left:4px;top:1px;width:14px;height:14px;border-left:2px solid currentColor;border-top:2px solid currentColor;transform:rotate(45deg)}
.icon-truck:before{content:"";position:absolute;left:1px;top:5px;width:13px;height:10px;border:2px solid currentColor}.icon-truck:after{content:"●  ●";position:absolute;left:1px;top:10px;font-size:12px;letter-spacing:7px;white-space:nowrap}.icon-dollar:before{content:"$";position:absolute;inset:0;border:2px solid currentColor;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:18px}.icon-search:before{content:"";position:absolute;left:1px;top:1px;width:13px;height:13px;border:2px solid currentColor;border-radius:50%}.icon-search:after{content:"";position:absolute;width:10px;height:2px;background:currentColor;transform:rotate(45deg);right:0;bottom:3px}.icon-history:before{content:"";position:absolute;inset:2px;border:2px solid currentColor;border-radius:50%;border-left-color:transparent}.icon-history:after{content:"↶";position:absolute;left:-2px;top:-7px;font-size:18px}.icon-ai:before{content:"AI";position:absolute;inset:0;border:2px solid var(--blue);display:grid;place-items:center;font-size:12px;font-weight:900;color:var(--blue)}.icon-shield:before{content:"⚒";position:absolute;inset:0;border:2px solid var(--red);clip-path:polygon(50% 0,95% 18%,85% 72%,50% 100%,15% 72%,5% 18%);display:grid;place-items:center;color:#fff;font-size:14px}.icon-target:before{content:"◎";position:absolute;inset:-5px;color:var(--blue);font-size:34px;line-height:1}
@media(max-width:520px){.db-columns{grid-template-columns:1fr}.feature-strip{grid-template-columns:1fr}.feature-strip>div{display:grid;grid-template-columns:35px 1fr;column-gap:8px;text-align:left;border-right:0;border-bottom:1px solid #3c434b;padding:7px 0}.feature-strip>div:last-child{border-bottom:0}.mini-icon{grid-row:1/3;margin:2px 0}.feature-strip strong,.feature-strip small{align-self:center}.bottom-nav{justify-content:flex-start}.bottom-nav button{flex:0 0 64px}.brand-logo{height:82px}}
@media(max-width:430px){.hero-panel h2,.section-heading h2{font-size:1.55rem}.scan-hero{gap:13px}.scan-hero strong{font-size:1.22rem}.scan-ring{width:68px;height:68px}.photo-facts,.ai-result-grid,.saved-scan-summary{grid-template-columns:1fr}.camera-actions,.photo-toolbar{grid-template-columns:1fr 1fr}.card{min-height:137px}.brand-tagline{font-size:.62rem}}
@media(max-width:350px){.grid,.two-column{grid-template-columns:1fr}.camera-actions,.photo-toolbar{grid-template-columns:1fr}.brand-logo{height:72px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* v0.7.1 — alignment pass against the approved industrial mock */
body[data-page="home"] .top-bar{display:block}
body:not([data-page="home"]) .top-bar{display:none}
body:not([data-page="home"]){padding-top:0}

.top-bar{
  position:relative;
  padding:14px 12px 12px;
  min-height:190px;
  background:
    linear-gradient(rgba(5,7,10,.18),rgba(5,7,10,.68)),
    repeating-linear-gradient(135deg,rgba(255,255,255,.02) 0 1px,transparent 1px 7px),
    #06090d;
  border-bottom:2px solid #202a34;
  box-shadow:0 3px 0 #000,0 5px 0 rgba(30,144,255,.55),0 10px 26px #000;
  overflow:hidden;
}
.top-bar:before,.top-bar:after{
  content:"";position:absolute;top:18px;width:7px;height:7px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#cbd1d7,#4a5159 42%,#090b0e 68%);
  box-shadow:0 0 0 1px #000,0 1px 4px #000;
}
.top-bar:before{left:13px}.top-bar:after{right:13px}
.brand-wrap{display:flex;min-height:164px;flex-direction:column;align-items:center;justify-content:center}
.brand-logo{
  width:min(96vw,610px);height:auto;max-height:145px;object-fit:contain;
  margin:0 auto;filter:drop-shadow(0 7px 11px #000);
}
.brand-tagline{
  position:relative;margin:2px auto 0;padding:5px 22px 4px;max-width:92%;
  white-space:nowrap;overflow:visible;color:#e2e5e8;font-size:.68rem;letter-spacing:.19em;
}
.brand-tagline:before,.brand-tagline:after{content:"";position:absolute;top:50%;width:20px;height:2px;background:var(--blue);box-shadow:0 0 7px var(--blue)}
.brand-tagline:before{left:-5px}.brand-tagline:after{right:-5px}

.page{padding:16px 12px 28px}
body:not([data-page="home"]) .page.active{padding-top:10px}
body:not([data-page="home"]) .back-btn{
  margin:0 0 10px;padding:12px 14px;border-radius:0;
  background:linear-gradient(180deg,#161b21,#090d11);border-color:#505a64;
  border-left:3px solid var(--blue);box-shadow:inset 0 1px rgba(255,255,255,.09),0 3px 10px #000;
  color:#dfe4e8;font-size:.86rem;
}
body:not([data-page="home"]) .section-heading{
  margin:0 0 13px;padding:11px 14px 12px;text-align:center;
  background:linear-gradient(180deg,#111820,#090d12);border-top:1px solid #59616a;border-bottom:1px solid #59616a;
  box-shadow:inset 0 1px rgba(255,255,255,.08),0 4px 12px #000;
}
body:not([data-page="home"]) .section-heading .eyebrow{display:none}
body:not([data-page="home"]) .section-heading h2{color:var(--blue);font-size:1.03rem;letter-spacing:.11em}
body:not([data-page="home"]) .section-heading p:last-child{margin:6px 0 0;font-size:.8rem}

.hero-panel{padding:18px 14px 15px;border-radius:8px}
.hero-panel h2{font-size:clamp(1.42rem,5.5vw,2rem)}
.hero-panel>p:last-of-type{margin:8px auto 14px;font-size:.92rem}
.scan-hero{
  min-height:150px;border-radius:5px;border:1px solid #68717a;
  background:
    linear-gradient(135deg,rgba(255,255,255,.045),transparent 35%),
    linear-gradient(180deg,#12181e,#06090c);
  box-shadow:inset 0 0 0 5px #0b0f13,inset 0 0 0 6px #414a54,0 10px 22px #000;
}
.scan-hero:before,.scan-hero:after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#77818a;box-shadow:0 0 0 1px #000}
.scan-hero:before{left:10px;top:10px}.scan-hero:after{right:10px;bottom:10px}
.scan-ring{width:88px;height:88px;border-width:5px}
.scan-hero strong{font-size:1.48rem}.scan-hero small{font-size:.72rem;line-height:1.35}

.home-grid{gap:10px;margin-top:12px}.card{min-height:126px;padding:16px 10px 13px;border-radius:5px}
.card h3{font-size:.9rem}.card p{font-size:.76rem}.tool-icon{width:31px;height:31px;margin-bottom:10px}
.feature-strip{border-radius:5px}

.form-card,.load-list-wrap,.analysis-card{border-radius:6px;padding:16px}
input,select{border-radius:3px;padding:15px 13px}
.primary-btn,.secondary-btn,.back-btn{border-radius:3px}

/* Explicit form rhythm: material selector is clearly separated from weight/price. */
#builder-material{margin-bottom:24px}
#builder .two-column{gap:14px}
#builder .two-column label{margin-top:0}
#builder .two-column input{min-height:58px}
#builder #add-load-btn{margin-top:22px}
#calculator #material{margin-bottom:20px}

.material-results{gap:12px}.material-result{padding:16px;border-radius:4px}
.load-list,.history-list{gap:12px}.history-card{border-radius:4px}

.bottom-nav{height:78px;background:linear-gradient(180deg,#121820,#070a0e);border-top:1px solid #66707a}
.bottom-nav button{height:66px;font-size:.61rem}
.bottom-nav button.active{background:linear-gradient(180deg,rgba(30,144,255,.16),transparent)}

@media(max-width:520px){
  .top-bar{min-height:178px;padding-top:12px}.brand-wrap{min-height:152px}.brand-logo{width:94vw;max-height:132px}
  .brand-tagline{font-size:.58rem;letter-spacing:.14em;padding-left:18px;padding-right:18px}
  .bottom-nav button{flex-basis:64px}
}
@media(max-width:390px){
  .brand-tagline{font-size:.52rem;letter-spacing:.11em}
  .scan-hero{gap:11px;padding:14px 11px}.scan-ring{width:72px;height:72px}.scan-hero strong{font-size:1.14rem}
}

/* v0.7.5 — rebuilt seamless, truly centered header */
.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}
.icon-svg{display:block;fill:none;stroke:currentColor;stroke-width:2.15;stroke-linecap:round;stroke-linejoin:round}

.top-bar{
  padding:12px 12px 0;
  min-height:0;
  background:
    radial-gradient(circle at 50% 95%,rgba(30,144,255,.16),transparent 34%),
    repeating-linear-gradient(135deg,rgba(255,255,255,.018) 0 1px,transparent 1px 7px),
    linear-gradient(180deg,#090c10,#05070a);
  border-bottom:0;
  box-shadow:none;
  overflow:visible;
}
.top-bar:before,.top-bar:after{display:none}
.brand-panel{
  position:relative;
  width:min(100%,720px);
  margin:0 auto;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
  overflow:visible;
}
.brand-panel:after{
  content:"";position:absolute;left:7%;right:7%;bottom:0;height:2px;
  background:linear-gradient(90deg,transparent,var(--blue) 18%,var(--blue) 82%,transparent);
  box-shadow:0 0 12px var(--blue);
}
.brand-rivet{position:absolute;z-index:2;width:7px;height:7px;border-radius:50%;top:11px;background:radial-gradient(circle at 35% 30%,#d2d7dc,#505860 42%,#090b0e 70%);box-shadow:0 0 0 1px #000,0 1px 3px #000}
.brand-rivet-a{left:14px}.brand-rivet-b{right:14px}
.brand-logo{
  display:block;
  width:100%;
  max-width:none;
  height:auto;
  max-height:none;
  margin:0 auto;
  object-fit:contain;
  object-position:center;
  transform:none;
  filter:drop-shadow(0 8px 11px #000);
}
.brand-tagline{
  display:flex;align-items:center;justify-content:center;gap:12px;
  width:min(100%,720px);margin:0 auto;padding:10px 8px 12px;
  max-width:none;white-space:normal;overflow:visible;
  color:#eef1f4;font-size:clamp(.56rem,2.1vw,.72rem);letter-spacing:.18em;line-height:1.25;text-align:center;
  border-bottom:2px solid #252e37;box-shadow:0 2px 0 #000,0 4px 0 rgba(30,144,255,.55),0 9px 20px #000;
}
.brand-tagline:before,.brand-tagline:after{content:"";position:static;display:block;flex:1 1 42px;max-width:70px;height:2px;background:var(--blue);box-shadow:0 0 8px var(--blue)}
.brand-tagline span{flex:0 1 auto}

.tool-icon{width:42px;height:42px;margin:0 auto 10px;color:var(--blue)}
.scan-ring .icon-svg{width:42px;height:42px;stroke-width:2.35}
.scan-ring.large .icon-svg{width:50px;height:50px}
.mini-icon.icon-svg{width:31px;height:31px;color:var(--blue)}

.home-grid .card{overflow:hidden}
.home-grid .card:after{content:"";position:absolute;left:10%;right:10%;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(30,144,255,.75),transparent)}
.bottom-nav{height:82px;padding-bottom:env(safe-area-inset-bottom)}
.bottom-nav button{height:72px;font-size:.65rem}
.bottom-nav button.active:before{left:18%;right:18%;height:3px}

/* Builder spacing and mock-like machine-control rhythm. */
#builder .form-card>label:first-child{margin-bottom:8px}
#builder-material{display:block;margin-bottom:30px}
#builder .two-column{gap:16px;padding-top:2px}
#builder .two-column>div{min-width:0}
#builder .two-column label{margin:0 0 9px}
#builder .two-column input{min-height:60px}
#builder #add-load-btn{margin-top:24px}

@media(max-width:520px){
  .top-bar{padding:10px 8px 0}
  .brand-panel{padding:0}
  .brand-logo{width:100%;height:auto;max-height:none;transform:none}
  .brand-tagline{padding:8px 3px 10px;gap:7px;letter-spacing:.12em}
  .brand-tagline:before,.brand-tagline:after{max-width:42px}
  .tool-icon{width:38px;height:38px}
  .bottom-nav button{flex-basis:68px}
}
@media(max-width:390px){
  .brand-tagline{font-size:.5rem;letter-spacing:.09em}
  .brand-tagline:before,.brand-tagline:after{max-width:28px}
}


/* Header-only rebuild: seamless blend and equal side margins. */
.brand-panel{overflow:hidden;border-radius:0;isolation:isolate}
.brand-panel:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#06090d 0,transparent 7%,transparent 93%,#06090d 100%),linear-gradient(180deg,#06090d 0,transparent 8%,transparent 91%,#06090d 100%)}
.brand-logo{position:relative;z-index:0;object-position:50% 50%;filter:drop-shadow(0 8px 12px #000)}
.brand-rivet{z-index:3}


/* v0.7.6 — final primary-logo header asset */
.brand-rivet{display:none!important}
.brand-panel{width:min(100%,760px);overflow:hidden;background:transparent}
.brand-panel:before{background:linear-gradient(90deg,#06090d 0,transparent 5%,transparent 95%,#06090d 100%),linear-gradient(180deg,#06090d 0,transparent 4%,transparent 94%,#06090d 100%)}
.brand-logo{width:100%;object-position:center center;transform:none}
@media(max-width:520px){.brand-panel{width:100%}.brand-logo{width:100%}}


/* v0.7.8 — continuous scanning controls */
.new-photo-btn{
  position:relative;
  width:100%;
  padding:14px;
  border:1px solid #55e778;
  border-radius:3px;
  background:linear-gradient(180deg,#31bd4c,#137b29);
  color:#fff;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
  cursor:pointer;
  box-shadow:inset 0 1px rgba(255,255,255,.2),inset 0 -2px rgba(0,0,0,.55),0 0 16px rgba(54,219,104,.18),0 5px 12px rgba(0,0,0,.35);
}
.new-photo-btn:active{transform:translateY(1px)}
.photo-toolbar .primary-btn,.photo-toolbar .secondary-btn,.photo-toolbar .new-photo-btn{min-height:72px;margin-top:0}

/* v0.7.8 full release — permanent continuous-scanning grid */
.continuous-controls{display:grid!important;grid-template-columns:1fr 1fr;gap:11px;margin-top:14px}
.continuous-controls button:disabled{opacity:.42;cursor:not-allowed;filter:grayscale(.35);box-shadow:inset 0 1px rgba(255,255,255,.08)}
@media(max-width:350px){.continuous-controls{grid-template-columns:1fr 1fr}}

/* v0.7.9 — locked official ScrapSmith™ header logo.
   The approved image asset is displayed exactly as supplied. */
.top-bar{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  width:100%;
}
.brand-panel{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  max-width:760px;
  margin-inline:auto;
  overflow:visible;
  isolation:auto;
}
.brand-panel:before,
.brand-panel:after{display:none!important}
.brand-logo{
  position:static;
  display:block;
  width:auto;
  height:auto;
  max-width:min(92vw,650px);
  max-height:260px;
  margin:0 auto;
  object-fit:contain;
  object-position:center center;
  transform:none;
  filter:none;
}
@media(max-width:768px){
  .brand-logo{max-width:min(94vw,520px);max-height:230px}
}
@media(max-width:520px){
  .top-bar{padding:10px 8px 0}
  .brand-panel{width:100%;max-width:none}
  .brand-logo{max-width:94vw;max-height:215px}
}
@media(max-width:390px){
  .brand-logo{max-width:95vw;max-height:200px}
}


/* v0.7.9.1 — official transparent TM logo; brand artwork frozen.
   Integration-only changes: 12% larger and optically lowered 5px. */
.brand-logo{
  max-width:min(92vw,728px);
  max-height:292px;
  margin:5px auto 0;
}
@media(max-width:768px){
  .brand-logo{max-width:min(94vw,582px);max-height:258px;margin-top:5px}
}
@media(max-width:520px){
  .brand-logo{max-width:min(94vw,350px);max-height:241px;margin-top:5px}
}
@media(max-width:390px){
  .brand-logo{max-width:min(95vw,326px);max-height:224px;margin-top:5px}
}


/* Yard Finder and Scrap Weather feature foundations */
.feature-card .ready-pill{margin-top:9px}
.blue-pill{border-color:rgba(30,144,255,.55);background:rgba(30,144,255,.1);color:var(--blue)}
.yard-card .tool-icon{color:var(--blue)}
.weather-card{min-height:190px;padding:0!important;background:#071019!important;border-color:rgba(74,166,255,.72)}
.weather-card:before{z-index:4}
.home-weather-layer,.home-weather-shade{position:absolute;inset:0;display:block;pointer-events:none}
.home-weather-layer{z-index:0;background-image:url("assets/weather/neutral-day.webp");background-position:center 28%;background-size:cover;opacity:0;transform:none;filter:contrast(1.06) saturate(1.05);transition:opacity 1.15s ease}
.home-weather-layer.active{opacity:1}
.home-weather-shade{z-index:1;background:linear-gradient(180deg,rgba(2,7,12,.16),rgba(2,7,12,.5)),linear-gradient(90deg,rgba(2,7,12,.14),transparent,rgba(2,7,12,.14))}
.home-weather-content{position:relative;z-index:2;display:flex;min-height:190px;padding:20px 16px 18px;flex-direction:column;align-items:center;justify-content:center;text-shadow:0 2px 5px #000}
.weather-card .tool-icon{filter:drop-shadow(0 2px 4px #000) drop-shadow(0 0 7px rgba(30,144,255,.55))}
.weather-card h3{font-size:1.18rem}.weather-card p{color:#f1f5f8;font-weight:800;font-size:1rem}
.home-weather-location{display:block;margin-top:5px;color:#c8d3dc;font-family:Arial,sans-serif;font-size:.73rem;line-height:1.35}
.weather-card .ready-pill{background:rgba(4,18,31,.76);box-shadow:0 2px 8px #000}
.finder-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}
.finder-row .primary-btn{margin:0;min-width:102px;height:100%}
.location-btn{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:12px;width:100%}
.inline-icon{width:22px;height:22px}
.status-chip{padding:5px 8px;border:1px solid rgba(30,144,255,.45);background:rgba(30,144,255,.08);color:var(--blue);font-size:.65rem;font-weight:900;letter-spacing:.08em}
.empty-feature-icon{width:54px;height:54px;margin:0 auto 12px;color:var(--blue)}
@media(max-width:430px){.finder-row{grid-template-columns:1fr}.finder-row .primary-btn{min-height:50px}}

/* v0.8.2 — full-screen ScrapSmith camera */
.preview-stage{
  aspect-ratio:4/3;
  height:auto;
}
/* v0.9.11.29: legacy custom camera CSS removed. */

/* Yard Finder result cards */
.yard-results-panel{margin-top:18px}
.verified-yard-card{border:1px solid rgba(79,163,255,.45);border-radius:18px;padding:18px;background:linear-gradient(145deg,rgba(23,38,53,.96),rgba(10,17,25,.98));box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.verified-yard-topline,.yard-status-row,.yard-profile-header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.verified-yard-badge{display:inline-flex;align-items:center;border:1px solid rgba(79,163,255,.5);border-radius:999px;padding:6px 10px;color:#8ec7ff;background:rgba(23,111,184,.16);font-size:.78rem;font-weight:800;letter-spacing:.04em}
.verified-yard-card h3,.yard-profile h2{margin:14px 0 6px}
.yard-address{color:var(--muted);margin:0 0 14px}
.yard-status-row{justify-content:flex-start;flex-wrap:wrap;color:var(--muted);font-size:.9rem;margin-bottom:14px}
.yard-open-status{font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.yard-open-status.is-open{color:#66d38f}.yard-open-status.is-closed{color:#ff8b8b}
.yard-quick-actions,.yard-profile-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}
.yard-profile-actions{grid-template-columns:1fr 1fr}
.yard-action{text-align:center;text-decoration:none;display:flex;align-items:center;justify-content:center;min-height:44px}
.yard-favorite-btn{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);color:#8ec7ff;border-radius:50%;width:42px;height:42px;font-size:1.45rem;line-height:1;cursor:pointer}
.yard-profile{margin-top:18px;padding:18px}
.yard-profile-back{margin:0}
.yard-map-frame{overflow:hidden;border-radius:16px;border:1px solid rgba(255,255,255,.12);background:#0b1118;min-height:280px}
.yard-map-frame iframe{display:block;width:100%;height:320px;border:0}
.yard-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}
.yard-info-block{border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:14px;background:rgba(255,255,255,.035)}
.yard-info-block h3{margin:0 0 9px;color:#a9d4ff}.yard-info-block p{margin:6px 0}.yard-info-block ul{margin:8px 0 0;padding-left:20px}.yard-info-block li{margin:6px 0}
@media (max-width:640px){.yard-quick-actions{grid-template-columns:1fr}.yard-profile-actions{grid-template-columns:1fr}.yard-profile-grid{grid-template-columns:1fr}.yard-profile-header{align-items:flex-start;flex-direction:column}.yard-map-frame iframe{height:260px}}


/* v0.8.5 — live Google Places Yard Finder */
.yard-results-list{display:grid;gap:14px}
.live-yard-card{border-color:rgba(255,255,255,.14);background:linear-gradient(145deg,rgba(22,28,35,.96),rgba(8,12,17,.98))}
.live-yard-source{padding:5px 9px;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.03em}
.yard-rating{color:#ffd166;font-weight:900;white-space:nowrap}
.yard-action.is-disabled{opacity:.42;cursor:not-allowed;pointer-events:none}
#yard-search-btn:disabled{opacity:.65;cursor:wait}
@media(max-width:640px){.verified-yard-topline,.yard-status-row{align-items:flex-start;flex-direction:column}}


/* v0.8.5.1 — approved Yard Finder mobile action layout */
.yard-action-icon{display:none;flex:0 0 auto;width:1.35rem;text-align:center;font-size:1.15rem;line-height:1}
.yard-action-label{display:block}

@media (max-width:900px){
  .yard-results-list{gap:16px!important}
  .verified-yard-card,
  .live-yard-card{
    display:block!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
    padding:16px!important;
  }
  .verified-yard-card h3{margin:16px 0 8px!important;line-height:1.2}
  .yard-address{margin:0 0 10px!important;line-height:1.45;overflow-wrap:anywhere}
  .verified-yard-topline{
    display:flex!important;
    flex-direction:row!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:10px!important;
    flex-wrap:wrap!important;
  }
  .yard-status-row{
    display:flex!important;
    position:static!important;
    margin:0 0 14px!important;
    gap:8px 12px!important;
  }
  .yard-quick-actions{
    position:static!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:14px 0 0!important;
    clear:both!important;
  }
  .yard-action{
    position:relative!important;
    display:grid!important;
    grid-template-columns:34px 1fr 34px!important;
    align-items:center!important;
    justify-content:stretch!important;
    width:100%!important;
    min-height:48px!important;
    height:auto!important;
    margin:0!important;
    padding:11px 14px!important;
    box-sizing:border-box!important;
    text-decoration:none!important;
  }
  .yard-action-icon{
    display:block!important;
    grid-column:1!important;
    justify-self:start!important;
    color:#fff!important;
  }
  .yard-action-label{
    grid-column:2!important;
    justify-self:center!important;
    text-align:center!important;
  }
  .yard-action:after{
    content:"";
    grid-column:3;
    width:1px;
    height:1px;
  }
  .yard-action.is-disabled{display:none!important}
  .verified-yard-card>.primary-btn{margin-top:10px!important}
}



/* Scrap Weather Center — Step 2 */
#weather{isolation:isolate}
#weather>:not(.weather-scene){position:relative;z-index:2}
.weather-scene{position:fixed;inset:0 0 82px;z-index:0;overflow:hidden;background:#080d12;pointer-events:none}
.weather-scene-layer{position:absolute;inset:0;background-image:url("assets/weather/neutral-day.webp");background-position:center 28%;background-size:cover;opacity:0;transform:none;filter:contrast(1.07) saturate(1.06);transition:opacity 1.15s ease;will-change:opacity}
.weather-scene-layer.active{opacity:1}
.weather-scene-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,7,11,.08),rgba(3,7,11,.2) 48%,rgba(3,7,11,.42)),linear-gradient(90deg,rgba(2,6,10,.07),transparent,rgba(2,6,10,.09));backdrop-filter:saturate(1.02)}
#weather .back-btn{background:linear-gradient(180deg,rgba(18,25,32,.72),rgba(5,10,15,.78));backdrop-filter:blur(3px)}
#weather .section-heading{padding:17px 14px;border:1px solid rgba(111,128,143,.52);border-radius:7px;background:rgba(7,12,17,.56);box-shadow:0 8px 25px rgba(0,0,0,.4);backdrop-filter:blur(3px)}
#weather .metal-panel{background:linear-gradient(155deg,rgba(30,38,46,.62),rgba(8,13,18,.7));backdrop-filter:blur(3px);box-shadow:var(--bevel),0 10px 25px rgba(0,0,0,.42)}
.weather-location-card{margin-bottom:12px;padding:16px;border-radius:7px}
.weather-location-card label{margin:9px 0 7px}
.weather-search-row{display:grid;grid-template-columns:minmax(0,1fr) 104px;gap:9px}
.weather-search-row .primary-btn{height:100%;padding:12px 8px}
.weather-gps-btn{margin-top:10px}
.weather-location-results{display:grid;gap:8px;margin-top:10px}
.weather-location-result{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid rgba(74,166,255,.52);border-radius:5px;background:linear-gradient(180deg,rgba(27,39,50,.96),rgba(10,17,23,.96));color:#fff;text-align:left;box-shadow:inset 0 1px rgba(255,255,255,.06)}
.weather-location-result strong,.weather-location-result span{display:block}.weather-location-result strong{font-size:.9rem}.weather-location-result span{max-width:46%;color:var(--muted);font-family:Arial,sans-serif;font-size:.7rem;text-align:right}
.weather-location-result:active{transform:translateY(1px);border-color:var(--blue)}
.weather-current{margin-bottom:12px;padding:18px;border-radius:6px;overflow:hidden}
.weather-current-top{display:flex;align-items:center;gap:14px}
.weather-condition-icon{width:58px;height:58px;display:grid;place-items:center;border:1px solid #4d5964;border-radius:50%;font-size:2rem;background:radial-gradient(circle,#24313d,#0a0e12 72%);box-shadow:0 0 18px rgba(30,144,255,.22),inset 0 0 12px #000}
.weather-current h3{margin:0 0 4px;text-transform:uppercase;font-size:1.1rem}
.weather-location{margin:0;color:var(--muted);font-family:Arial,sans-serif;font-size:.84rem}
.weather-temperature-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:20px;padding-top:16px;border-top:1px solid #414a53}
.weather-temperature-row>strong{font-size:3.35rem;color:var(--blue2);line-height:1;text-shadow:0 0 16px rgba(30,144,255,.25)}
.weather-temperature-row div{text-align:right}.weather-temperature-row span,.weather-temperature-row b{display:block}.weather-temperature-row span{color:var(--muted);font-family:Arial,sans-serif;font-size:.75rem}.weather-temperature-row b{margin-top:5px;font-size:1.25rem}
.weather-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}
.weather-stat{padding:15px 13px;border-radius:5px}.weather-stat span,.weather-stat strong{display:block}.weather-stat span{color:var(--muted);font-family:Arial,sans-serif;font-size:.75rem}.weather-stat strong{margin-top:6px;color:#fff;font-size:1.08rem}
.weather-connect-card h3{margin:0 0 8px;text-transform:uppercase}.weather-connect-card>p:not(.eyebrow):not(.form-message){color:var(--muted);font-family:Arial,sans-serif;line-height:1.5}
.weather-connect-card .primary-btn:disabled{opacity:.65;cursor:wait}
.weather-source{display:block;margin-top:12px;color:#77838e;font-family:Arial,sans-serif;text-align:center}
.weather-connect-card .form-message.success{color:var(--green,#35d978)}
@media(max-width:380px){.weather-temperature-row>strong{font-size:2.8rem}.weather-stat-grid{grid-template-columns:1fr}}
@media(max-width:390px){.weather-search-row{grid-template-columns:1fr}.weather-search-row .primary-btn{min-height:46px}.weather-location-result{align-items:flex-start;flex-direction:column}.weather-location-result span{max-width:none;text-align:left}}
@media(max-width:699px){.weather-scene-layer{background-position:center 34%;filter:contrast(1.05) saturate(1.04)}.home-weather-layer{background-position:center 30%}}
@media(prefers-reduced-motion:reduce){.weather-scene-layer,.home-weather-layer{transition:none;transform:none}}


/* v0.8.9.0 — Firebase account portal */
.account-status-button{
  position:relative;z-index:5;display:flex;align-items:center;gap:12px;width:min(calc(100% - 24px),736px);
  margin:12px auto 0;padding:12px 14px;border:1px solid #43505c;border-left:3px solid var(--blue);border-radius:5px;
  background:linear-gradient(180deg,#111820,#080d12);color:#fff;text-align:left;box-shadow:var(--bevel),0 7px 18px rgba(0,0,0,.42);cursor:pointer;
}
.account-status-button:active{transform:translateY(1px)}
.account-status-button.signed-in{border-left-color:var(--success)}
.account-status-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;overflow:visible;border:0;border-radius:0;background:transparent;color:var(--blue);box-shadow:none}
.account-status-button.signed-in .account-status-icon{color:var(--success);box-shadow:none}
.account-status-icon .icon-svg{width:23px;height:23px}.account-status-icon-image{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;transform:scale(1.32);transform-origin:center}.account-status-copy{min-width:0;flex:1}.account-status-copy strong,.account-status-copy small{display:block}.account-status-copy strong{text-transform:uppercase;letter-spacing:.05em}.account-status-copy small{margin-top:4px;color:var(--muted);font-family:Arial,sans-serif;font-size:.74rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-status-arrow{font-size:1.8rem;color:var(--blue)}
body:not([data-page="home"])>.account-status-button{display:none}

.auth-loading{display:grid;justify-items:center;gap:7px;padding:28px 18px;border-radius:7px;text-align:center}.auth-loading small{color:var(--muted);font-family:Arial,sans-serif}.auth-spinner{width:34px;height:34px;border:3px solid #27323d;border-top-color:var(--blue);border-radius:50%;animation:authSpin .8s linear infinite}@keyframes authSpin{to{transform:rotate(360deg)}}
.auth-unavailable strong{color:var(--danger);text-transform:uppercase}.auth-unavailable p{margin:6px 0 0}
.auth-shell[hidden],.auth-panel[hidden],.auth-loading[hidden],.auth-unavailable[hidden],.verification-card[hidden]{display:none!important}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;margin-bottom:12px;padding:4px;border-radius:6px}.auth-tab{min-height:48px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.04em;cursor:pointer}.auth-tab.active{border-bottom-color:var(--blue);background:linear-gradient(180deg,rgba(30,144,255,.2),rgba(30,144,255,.04));color:#fff}
.auth-panel{margin-top:0}.auth-panel-title{display:flex;align-items:center;gap:13px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid #3d4650}.auth-panel-title .icon-svg{width:38px;height:38px;color:var(--blue)}.auth-panel-title h3,.auth-panel-title p{margin:0}.auth-panel-title h3{text-transform:uppercase;letter-spacing:.04em}.auth-panel-title p{margin-top:4px;color:var(--muted);font-family:Arial,sans-serif;font-size:.82rem}
.password-field{position:relative}.password-field input{padding-right:70px}.password-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);min-width:54px;padding:8px 7px;border:1px solid #505b66;border-radius:3px;background:#11171d;color:var(--blue2);font-size:.72rem;font-weight:900;text-transform:uppercase;cursor:pointer}
.auth-link-btn{display:block;margin:12px auto 0;padding:7px 4px;border:0;background:transparent;color:var(--blue2);font-family:Arial,sans-serif;font-weight:700;cursor:pointer}.auth-divider{display:flex;align-items:center;gap:12px;margin:17px 0;color:#7f8a95;font-family:Arial,sans-serif;font-size:.74rem;text-transform:uppercase}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:#39434d}
.google-signin-btn{display:flex;align-items:center;justify-content:center;gap:11px;width:100%;min-height:52px;padding:12px;border:1px solid #66717b;border-radius:4px;background:linear-gradient(180deg,#f7f8fa,#dfe4e8);color:#15191d;font-weight:900;text-transform:uppercase;letter-spacing:.03em;box-shadow:0 5px 12px rgba(0,0,0,.35);cursor:pointer}.google-signin-btn span{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#fff;color:#1676e8;font-family:Arial,sans-serif;font-size:1.05rem;box-shadow:0 1px 5px rgba(0,0,0,.25)}
.auth-consent{display:flex;align-items:flex-start;gap:10px;margin-top:18px;color:var(--muted);font-family:Arial,sans-serif;font-size:.78rem;line-height:1.45;text-transform:none;letter-spacing:0}.auth-consent input{flex:0 0 auto;width:20px;height:20px;margin:1px 0 0;accent-color:var(--blue)}.auth-privacy-note{margin:12px 10px 0;color:#7e8994;font-family:Arial,sans-serif;font-size:.72rem;line-height:1.45;text-align:center}
.account-profile{display:flex;align-items:center;gap:14px;padding:18px;border-radius:7px}.account-avatar{display:grid;place-items:center;flex:0 0 62px;width:62px;height:62px;border:2px solid var(--blue);border-radius:50%;background:radial-gradient(circle,#193d60,#08101a 72%);color:#fff;font-size:1.7rem;font-weight:900;box-shadow:0 0 18px rgba(30,144,255,.28),inset 0 0 15px #000}.account-profile-copy{min-width:0;flex:1}.account-kicker{color:var(--success);font-size:.68rem;font-weight:900;letter-spacing:.14em}.account-profile h3{margin:4px 0 3px;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-profile p{margin:0;color:var(--muted);font-family:Arial,sans-serif;font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-plan{margin:0}
.account-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:12px;padding:1px;border-radius:6px;overflow:hidden;background:#47515b}.account-facts>div{padding:14px 10px;background:linear-gradient(180deg,#171d23,#0c1116);text-align:center}.account-facts span,.account-facts strong{display:block}.account-facts span{color:var(--muted);font-family:Arial,sans-serif;font-size:.68rem}.account-facts strong{margin-top:6px;font-size:.78rem;text-transform:uppercase;line-height:1.25}.account-facts strong.good{color:var(--success)}.account-facts strong.warn{color:var(--warning)}
.verification-card{margin-top:12px}.verification-card strong{color:var(--warning);text-transform:uppercase}.verification-card p{margin:7px 0 0}.verification-card .secondary-btn{margin-top:13px}.account-data-note{margin-top:12px;padding:17px;border-radius:6px}.account-data-note h3{margin:0 0 8px;text-transform:uppercase}.account-data-note p{margin:0;color:var(--muted);font-family:Arial,sans-serif;line-height:1.5}.account-signout{margin-top:12px}
button.auth-busy{pointer-events:none;opacity:.65}
@media(max-width:520px){.account-status-button{width:calc(100% - 16px);margin-top:9px}.account-status-copy small{font-size:.69rem}.account-facts{grid-template-columns:1fr}.account-facts>div{display:flex;align-items:center;justify-content:space-between;text-align:left}.account-facts strong{margin-top:0;text-align:right}.account-profile{align-items:flex-start}.account-plan{position:absolute;right:12px;top:12px}.account-profile-copy{padding-right:48px}}
@media(max-width:390px){.account-status-icon{flex-basis:36px;width:36px;height:36px}.account-status-copy strong{font-size:.84rem}.account-profile{gap:10px}.account-avatar{flex-basis:52px;width:52px;height:52px}}



/* ScrapSmith v0.8.9.2 — Cloud Loads */
.cloud-load-card,.cloud-load-library{margin-top:16px;padding:18px;border-radius:6px}
.cloud-load-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.cloud-load-heading h3,.cloud-load-library-heading h3{margin:3px 0 0;text-transform:uppercase}
.load-sync-pill{flex:0 0 auto;margin:0;white-space:nowrap}
.load-sync-pill.sync-device{border-color:rgba(151,160,169,.45);background:rgba(151,160,169,.09);color:var(--muted)}
.load-sync-pill.sync-ready{border-color:rgba(30,144,255,.55);background:rgba(30,144,255,.12);color:var(--blue2)}
.load-sync-pill.sync-saving{border-color:rgba(255,193,7,.55);background:rgba(255,193,7,.11);color:var(--warning)}
.load-sync-pill.sync-saved{border-color:rgba(54,219,104,.55);background:rgba(54,219,104,.11);color:var(--success)}
.load-sync-pill.sync-offline{border-color:rgba(255,88,88,.5);background:rgba(255,88,88,.1);color:var(--danger)}
.cloud-load-copy,.cloud-load-library-copy{margin:10px 0 0;color:var(--muted);font-family:Arial,sans-serif;font-size:.88rem;line-height:1.48}
.load-cloud-controls[hidden],.cloud-load-library[hidden]{display:none!important}
.load-cloud-controls{margin-top:14px;padding-top:14px;border-top:1px solid #414a54}
.cloud-load-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.cloud-load-actions .primary-btn,.cloud-load-actions .secondary-btn{min-height:50px;margin:0;padding:13px 12px;font-size:.82rem}
.cloud-load-library-heading{align-items:flex-end}.cloud-refresh-btn{padding:7px;color:var(--blue2)}
.cloud-load-list{display:grid;gap:10px;margin-top:13px}
.cloud-load-item{position:relative;padding:14px;border:1px solid #505862;border-radius:6px;background:linear-gradient(#20262d,#12171c);box-shadow:var(--bevel)}
.cloud-load-item.is-active{border-color:#258dff;box-shadow:var(--bevel),0 0 0 1px rgba(37,141,255,.25),0 0 18px rgba(30,144,255,.12)}
.cloud-load-item-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.cloud-load-item h4{margin:0;text-transform:uppercase;letter-spacing:.025em}.cloud-load-item time{color:var(--muted);font-family:Arial,sans-serif;font-size:.74rem;white-space:nowrap}
.cloud-load-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:11px}
.cloud-load-metrics span{display:block;padding:8px;border:1px solid #3d4650;border-radius:4px;background:#11171d;color:var(--muted);font-family:Arial,sans-serif;font-size:.72rem}
.cloud-load-metrics strong{display:block;margin-top:3px;color:var(--text);font-family:"Arial Narrow",Arial,sans-serif;font-size:.9rem}
.cloud-load-item-actions{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:8px;margin-top:11px}
.cloud-load-action{min-height:39px;border:1px solid #56616c;border-radius:3px;background:linear-gradient(#2b333b,#151b21);color:var(--text);font-weight:900;text-transform:uppercase;letter-spacing:.035em;cursor:pointer}
.cloud-load-action.open{border-color:#2d8fe9;color:var(--blue2)}.cloud-load-action.delete{border-color:rgba(255,88,88,.45);color:var(--danger)}
.cloud-load-action:disabled{opacity:.5;cursor:default}
@media(max-width:520px){.cloud-load-heading{align-items:stretch;flex-direction:column}.load-sync-pill{align-self:flex-start}.cloud-load-actions{grid-template-columns:1fr}.cloud-load-metrics{grid-template-columns:1fr}.cloud-load-metrics span{display:flex;align-items:center;justify-content:space-between;gap:10px}.cloud-load-metrics strong{margin-top:0}.cloud-load-item-actions{grid-template-columns:1fr}.cloud-load-item-top{flex-direction:column}.cloud-load-item time{white-space:normal}}


/* ScrapSmith v0.8.9.3 — Cloud Scan History */
.scan-record-fields{margin:16px 0;padding:15px;border:1px solid #46515c;border-radius:6px;background:linear-gradient(180deg,rgba(12,23,34,.88),rgba(8,13,19,.94))}
.scan-record-fields .eyebrow{margin:0 0 12px}.scan-record-fields textarea{width:100%;min-height:92px;resize:vertical;border:1px solid #59616a;border-radius:3px;background:linear-gradient(#333a42,#20262d);color:#fff;padding:15px 13px;outline:none;box-shadow:inset 0 2px 5px #111;font:inherit}.scan-record-fields textarea:focus{border-color:var(--blue);box-shadow:0 0 0 2px rgba(30,144,255,.16),inset 0 2px 5px #111}.scan-record-fields input{width:100%}
.scan-linked-load,.scan-cloud-photo-note{margin:10px 0 0;color:var(--muted);font-family:Arial,sans-serif;font-size:.8rem;line-height:1.45}.scan-linked-load.is-linked{color:var(--success);font-weight:800}.scan-cloud-photo-note{padding-top:10px;border-top:1px solid #35404a}
.history-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.history-card-heading h3{min-width:0}
.scan-sync-badge{flex:0 0 auto;padding:4px 7px;border:1px solid #58636e;border-radius:3px;font-family:Arial,sans-serif;font-size:.65rem;font-weight:900;text-transform:uppercase;white-space:nowrap}.scan-sync-badge.is-synced{border-color:rgba(54,219,104,.55);background:rgba(54,219,104,.1);color:var(--success)}.scan-sync-badge.is-device{border-color:rgba(151,160,169,.45);background:rgba(151,160,169,.08);color:var(--muted)}.scan-sync-badge.is-other{border-color:rgba(255,193,7,.5);background:rgba(255,193,7,.08);color:var(--warning)}
.history-card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px}.history-card-actions .remove-btn{margin:0;padding:7px 8px}.scan-sync-button{padding:7px 9px;border:1px solid #2d8fe9;border-radius:3px;background:rgba(30,144,255,.1);color:var(--blue2);font-weight:900;text-transform:uppercase;cursor:pointer}.scan-sync-button:disabled{opacity:.45;cursor:default}
.history-photo-placeholder{display:grid;place-items:center;width:95px;height:82px;border:1px solid #48505a;border-radius:4px;background:#08111a;color:var(--blue2);font-size:.72rem;font-weight:900;letter-spacing:.12em}
.cloud-scan-library{margin-top:16px;padding:18px;border-radius:6px}.cloud-scan-library-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.cloud-scan-library-heading h3{margin:3px 0 0;text-transform:uppercase}.cloud-scan-copy{margin:10px 0 0;color:var(--muted);font-family:Arial,sans-serif;font-size:.88rem;line-height:1.48}.cloud-scan-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.cloud-scan-controls .primary-btn,.cloud-scan-controls .secondary-btn{min-height:46px;margin:0;padding:12px;font-size:.78rem}.cloud-scan-list{display:grid;gap:10px;margin-top:13px}
.cloud-scan-item{padding:14px;border:1px solid #505862;border-radius:6px;background:linear-gradient(#20262d,#12171c);box-shadow:var(--bevel)}.cloud-scan-item-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.cloud-scan-item h4{margin:0;text-transform:uppercase;letter-spacing:.025em}.cloud-scan-item time{color:var(--muted);font-family:Arial,sans-serif;font-size:.74rem;text-align:right}.cloud-scan-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:11px}.cloud-scan-metrics span{display:block;min-width:0;padding:8px;border:1px solid #3d4650;border-radius:4px;background:#11171d;color:var(--muted);font-family:Arial,sans-serif;font-size:.72rem}.cloud-scan-metrics strong{display:block;margin-top:3px;overflow-wrap:anywhere;color:var(--text);font-family:"Arial Narrow",Arial,sans-serif;font-size:.86rem}.cloud-scan-notes{margin:10px 0 0;color:var(--muted);font-family:Arial,sans-serif;font-size:.82rem;line-height:1.45}.cloud-scan-item-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:11px}.cloud-scan-action{min-height:39px;border:1px solid #56616c;border-radius:3px;background:linear-gradient(#2b333b,#151b21);color:var(--text);font-weight:900;text-transform:uppercase;letter-spacing:.035em;cursor:pointer}.cloud-scan-action.open{border-color:#2d8fe9;color:var(--blue2)}.cloud-scan-action.delete{border-color:rgba(255,88,88,.45);color:var(--danger)}.cloud-scan-action:disabled{opacity:.5;cursor:default}
.saved-scan-no-photo{padding:28px 18px;border:1px dashed #4b5966;border-radius:8px;background:#0b1117;text-align:center}.saved-scan-no-photo strong{display:block;color:var(--blue2);text-transform:uppercase}.saved-scan-no-photo p{margin:8px 0 0}.saved-scan-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:520px){.cloud-scan-library-heading{flex-direction:column}.cloud-scan-controls,.cloud-scan-metrics,.cloud-scan-item-actions{grid-template-columns:1fr}.cloud-scan-metrics span{display:flex;align-items:center;justify-content:space-between;gap:10px}.cloud-scan-metrics strong{margin-top:0;text-align:right}.cloud-scan-item-top{flex-direction:column}.cloud-scan-item time{text-align:left}.history-card-heading{flex-direction:column}.scan-sync-badge{align-self:flex-start}.history-card-actions{align-items:stretch;flex-direction:column}.history-card-actions button{width:100%}}
.saved-scan-photo-button[hidden],.saved-photo-hint[hidden],.saved-scan-no-photo[hidden]{display:none!important}


/* ScrapSmith unified mastered icon system - accepted cleanup checkpoint 2026-08-08.
   Consolidated replacement for the previous stacked icon patches.
   Scope: mastered home-card, Scan Scrap, and bottom-navigation PNG integration only. */
.master-icon,
.nav-master-icon{
  display:block;
  object-fit:contain;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
}

/* Front-page card icons: approved transparent masters, no artificial dark halo. */
.home-grid .master-icon-card{
  height:auto!important;
  margin-top:-7px!important;
  margin-bottom:1px!important;
  background:none!important;
  box-shadow:none!important;
  filter:drop-shadow(0 0 4px rgba(30,144,255,.14))!important;
  transform:none!important;
}
.home-grid .master-icon-card[src$="load-builder.png"]{width:96px!important}
.home-grid .master-icon-card[src$="value-calculator.png"]{width:94px!important}
.home-grid .master-icon-card[src$="material-database.png"]{width:95px!important}
.home-grid .master-icon-card[src$="history.png"]{width:100px!important}
.home-grid .master-icon-card[src$="yard-finder.png"]{width:94px!important}
.home-grid .master-icon-card[src$="scrap-prices.png"]{width:100px!important}

/* Scan Scrap hero: approved transparent master directly on the existing hero. */
.scan-master-shell{
  flex:0 0 130px!important;
  width:130px!important;
  height:130px!important;
  display:grid;
  place-items:center;
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
  overflow:visible!important;
}
.master-icon-hero[src$="scan-scrap.png"]{
  width:124px!important;
  height:auto!important;
  background:none!important;
  box-shadow:none!important;
  filter:drop-shadow(0 0 5px rgba(30,144,255,.16))!important;
  transform:none!important;
}

/* Bottom navigation: one authoritative mastered-icon rule.
   No radial plate; larger artwork remains inside the existing 72px nav buttons. */
.nav-master-icon{
  width:40px!important;
  height:40px!important;
  max-width:none!important;
  max-height:none!important;
  margin:0 auto 3px!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  opacity:1!important;
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.68))!important;
  transform:none!important;
}
.bottom-nav button.active .nav-master-icon{
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.72)) drop-shadow(0 0 6px rgba(30,144,255,.56))!important;
}

@media(max-width:520px){
  /* Preserve the accepted two-column home-card proportions. */
  .home-grid .master-icon-card{margin-top:-5px!important;margin-bottom:1px!important}
  .home-grid .master-icon-card[src$="load-builder.png"]{width:88px!important}
  .home-grid .master-icon-card[src$="value-calculator.png"]{width:86px!important}
  .home-grid .master-icon-card[src$="material-database.png"]{width:87px!important}
  .home-grid .master-icon-card[src$="history.png"]{width:91px!important}
  .home-grid .master-icon-card[src$="yard-finder.png"]{width:86px!important}
  .home-grid .master-icon-card[src$="scrap-prices.png"]{width:91px!important}
  .scan-master-shell{flex-basis:118px!important;width:118px!important;height:118px!important}
  .master-icon-hero[src$="scan-scrap.png"]{width:112px!important}

  /* Keep all seven existing controls in one row, but make the mastered artwork readable. */
  .bottom-nav{
    justify-content:stretch!important;
    overflow-x:hidden!important;
  }
  .bottom-nav button{
    flex:1 1 0!important;
    min-width:0!important;
    max-width:none!important;
    padding:0 1px!important;
    font-size:.53rem!important;
    letter-spacing:0!important;
  }
  .nav-master-icon{
    width:46px!important;
    height:46px!important;
    margin-bottom:2px!important;
  }
  .bottom-nav button.active:before{left:10%!important;right:10%!important}
}

@media(max-width:390px){
  .bottom-nav button{font-size:.49rem!important}
}

/* ScrapSmith Material Detail v1.0 — additive encyclopedia detail layer.
   Existing Material Database search cards and accepted global/icon styling remain unchanged. */
.material-detail-toggle{
  width:100%;
  min-height:44px;
  margin-top:13px;
  padding:10px 13px;
  border:1px solid rgba(30,144,255,.5);
  border-radius:3px;
  background:linear-gradient(180deg,rgba(25,56,86,.82),rgba(9,28,46,.92));
  color:var(--blue2);
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.045em;
  text-transform:uppercase;
  cursor:pointer;
  box-shadow:inset 0 1px rgba(255,255,255,.08);
}
.material-detail-toggle:hover,.material-detail-toggle:focus-visible{border-color:var(--blue);color:#fff;outline:none;box-shadow:inset 0 1px rgba(255,255,255,.08),0 0 0 2px rgba(30,144,255,.12)}
.material-detail-toggle:active{transform:translateY(1px)}
.material-result.detail-open{border-color:rgba(30,144,255,.7);box-shadow:var(--bevel),var(--shadow),0 0 18px rgba(30,144,255,.08)}
.material-detail-panel{margin-top:14px;padding-top:14px;border-top:1px solid #414850}
.material-detail-panel[hidden]{display:none!important}
.material-detail-section{margin-top:10px;padding:13px;border:1px solid #3d4751;border-radius:4px;background:linear-gradient(180deg,rgba(10,16,22,.94),rgba(6,10,14,.96))}
.material-detail-section:first-child{margin-top:0}
.material-detail-section h4{margin:0 0 9px;color:var(--blue2);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}
.material-detail-section ul{margin:0;padding-left:19px;color:var(--muted);font-family:Arial,sans-serif;font-size:.84rem;line-height:1.5}
.material-detail-section li+li{margin-top:5px}
.material-detail-empty{color:#77818b;font-style:italic}
.material-detail-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}
.material-detail-columns .material-detail-section{margin-top:0}
.material-alias-list{display:flex;flex-wrap:wrap;gap:6px}
.material-alias-chip{display:inline-block;padding:4px 7px;border:1px solid #46525d;border-radius:999px;background:#111820;color:#c9d2da;font-family:Arial,sans-serif;font-size:.72rem}
.material-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.material-photo-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border:1px solid #4b5660;border-radius:4px;background:#05080a}
@media(max-width:600px){
  .material-detail-columns{grid-template-columns:1fr}
  .material-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:360px){.material-photo-grid{grid-template-columns:1fr}}




/* v0.9.3 — Material Database Scale Search v1.2 fixed-overlay standard.
   Search stays separate from the database cards; the canonical ScrapSmith scale
   becomes the live visual preview surface between search and material details. */
.material-search-card{position:relative;z-index:6;margin-bottom:14px;overflow:visible}
.material-search-card label{margin-bottom:8px}
.material-search-card #material-search{min-height:58px;font-family:Arial,sans-serif}
.material-suggestions{
  position:absolute;z-index:12;left:16px;right:16px;top:calc(100% - 9px);
  max-height:min(30vh,228px);overflow:auto;padding:6px;overscroll-behavior:contain;
  border:1px solid #5e6a75;border-top-color:#348fe6;border-radius:0 0 5px 5px;
  background:linear-gradient(180deg,rgba(18,25,32,.99),rgba(6,10,14,.995));
  box-shadow:0 16px 30px rgba(0,0,0,.72),0 0 0 1px rgba(0,0,0,.75);
}
.material-suggestions[hidden]{display:none!important}
.material-suggestion{
  width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;
  padding:11px 10px;border:0;border-bottom:1px solid #303943;background:transparent;color:#eef2f5;
  text-align:left;cursor:pointer;
}
.material-suggestion:last-child{border-bottom:0}
.material-suggestion:hover,.material-suggestion:focus-visible{outline:none;background:linear-gradient(90deg,rgba(30,144,255,.18),rgba(30,144,255,.045));box-shadow:inset 3px 0 var(--blue)}
.material-suggestion strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;text-transform:uppercase;letter-spacing:.025em}
.material-suggestion span{color:var(--blue2);font-family:Arial,sans-serif;font-size:.7rem;white-space:nowrap}

.material-scale-preview{margin:0 0 15px;padding:7px;border-radius:7px;overflow:hidden}
.material-scale-stage{position:relative;isolation:isolate;width:100%;aspect-ratio:1/1;overflow:hidden;border:1px solid #4f5b66;border-radius:4px;background:#050709;box-shadow:inset 0 0 0 1px #050709,0 8px 22px rgba(0,0,0,.45)}
.material-scale-background{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-drag:none}
.material-scale-object{
  position:absolute;z-index:2;inset:0;width:100%;height:100%;max-width:none;object-fit:contain;object-position:center;
  opacity:0;
  pointer-events:none;user-select:none;-webkit-user-drag:none;
  filter:drop-shadow(0 8px 8px rgba(0,0,0,.24));
  transition:opacity .18s ease,filter .18s ease;
}
.material-scale-object.is-visible{opacity:1}
.material-scale-object.is-changing{opacity:.12;filter:drop-shadow(0 5px 6px rgba(0,0,0,.18))}
.material-scale-badge{position:absolute;z-index:4;left:10px;top:10px;padding:5px 8px;border:1px solid rgba(98,180,255,.55);border-radius:3px;background:rgba(3,9,14,.78);color:#a9d6ff;font-family:Arial,sans-serif;font-size:.58rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 3px 12px rgba(0,0,0,.42)}
.material-scale-copy{display:grid;gap:4px;padding:11px 8px 7px;text-align:center}
.material-scale-copy>span{color:var(--blue2);font-size:.67rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.material-scale-copy strong{color:#f3f6f8;font-size:1.02rem;text-transform:uppercase;letter-spacing:.035em}
.material-scale-copy p{margin:0;color:#97a3ad;font-family:Arial,sans-serif;font-size:.76rem;line-height:1.4}
.material-scale-stage[data-preview-state="loaded"]+.material-scale-copy strong{color:#fff;text-shadow:0 0 10px rgba(30,144,255,.22)}
.material-scale-stage[data-preview-state="missing"]+.material-scale-copy p,.material-scale-stage[data-preview-state="uncalibrated"]+.material-scale-copy p{color:#aeb7bf}

.material-results-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:13px 2px 8px;padding:0 2px 8px;border-bottom:1px solid #343d46}
.material-results-heading .eyebrow{margin:0 0 3px}
.material-results-heading h3{margin:0;color:#f0f3f5;font-size:1rem;text-transform:uppercase;letter-spacing:.055em}
.material-search-count{margin:0;color:var(--success);font-family:Arial,sans-serif;font-size:.76rem;font-weight:800;text-align:right;white-space:nowrap}
#search .material-results{margin-top:0}

@media(min-width:800px){.material-scale-preview{max-width:620px;margin-left:auto;margin-right:auto}}

@media(max-width:520px){
  .material-suggestions{left:12px;right:12px;max-height:min(26vh,208px)}
  .material-scale-preview{padding:5px}
  .material-scale-badge{left:8px;top:8px;font-size:.53rem}
  .material-scale-copy{padding:9px 6px 6px}
  .material-scale-copy strong{font-size:.92rem}
  .material-results-heading{align-items:center}
}
@media(max-width:370px){
  .material-suggestion{grid-template-columns:1fr;gap:3px}
  .material-suggestion span{white-space:normal}
  .material-results-heading{align-items:flex-start;flex-direction:column;gap:5px}
  .material-search-count{text-align:left}
}

/* Production form-control compatibility: keep native material option lists readable in desktop browsers. */
select{
  color-scheme:light;
}
select option,
select optgroup{
  background:#fff;
  color:#11161b;
  font-family:Arial,sans-serif;
}

/* ScrapSmith v0.9.0 — Find the Money scanner extension.
   Additive only: preserves the existing scanner, account, cloud, history, database, and load UI. */
.breakdown-resume-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  margin-bottom:14px;
  padding:16px;
  border-radius:7px;
  border-color:rgba(30,144,255,.72);
  box-shadow:var(--bevel),0 0 22px rgba(30,144,255,.12),var(--shadow);
}
.breakdown-resume-card[hidden]{display:none!important}
.breakdown-resume-card h3{margin:0 0 5px;text-transform:uppercase;letter-spacing:.035em}
.breakdown-resume-card p:not(.eyebrow){margin:0;color:var(--muted);font-family:Arial,sans-serif;font-size:.84rem;line-height:1.45}
.breakdown-resume-card .primary-btn{margin:0;min-width:168px}

.find-money-entry{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(160px,220px);
  align-items:center;
  gap:16px;
  margin:12px 0 15px;
  padding:16px;
  border:1px solid rgba(69,164,255,.8);
  border-radius:7px;
  background:
    linear-gradient(135deg,rgba(45,151,255,.15),transparent 42%),
    linear-gradient(180deg,#111c27,#08111a);
  box-shadow:inset 0 1px rgba(255,255,255,.08),0 0 22px rgba(30,144,255,.14);
}
.find-money-entry[hidden],.find-money-hazard[hidden]{display:none!important}
.find-money-entry h3{margin:1px 0 6px;text-transform:uppercase;font-size:1.18rem}
.find-money-entry p:not(.eyebrow){margin:0;color:var(--muted);font-family:Arial,sans-serif;line-height:1.48}
.find-money-btn{
  position:relative;
  min-height:58px;
  padding:14px 16px;
  border:1px solid #64b8ff;
  border-radius:4px;
  background:linear-gradient(180deg,#178cff,#0754aa);
  color:#fff;
  font-weight:900;
  font-size:1rem;
  letter-spacing:.07em;
  text-transform:uppercase;
  box-shadow:inset 0 1px rgba(255,255,255,.25),inset 0 -2px rgba(0,0,0,.45),0 0 20px rgba(30,144,255,.34),0 7px 14px rgba(0,0,0,.4);
  cursor:pointer;
}
.find-money-btn:after{content:"";position:absolute;left:12%;right:12%;bottom:5px;height:1px;background:#9dd6ff;box-shadow:0 0 7px #4aa6ff}
.find-money-btn:active{transform:translateY(1px)}
.find-money-btn:disabled{opacity:.55}
.find-money-hazard,.money-safety-stop{
  margin:17px 0;
  padding:15px 16px;
  border:1px solid rgba(255,73,63,.78);
  border-left:4px solid var(--danger);
  border-radius:5px;
  background:linear-gradient(180deg,rgba(89,22,20,.52),rgba(32,9,9,.75));
  box-shadow:inset 0 0 20px rgba(255,73,63,.06),0 7px 18px rgba(0,0,0,.35);
}
.find-money-hazard .eyebrow{color:#ff8f88}
.find-money-hazard h3,.money-safety-stop h3{margin:2px 0 6px;color:#fff;text-transform:uppercase}
.find-money-hazard p:not(.eyebrow),.money-safety-stop p{margin:0;color:#f3c7c4;font-family:Arial,sans-serif;line-height:1.5}

/* The clean scanner photo stays untouched. Find the Money renders a second copy of the real user photo for annotations. */
.money-guide-visual{
  margin:16px 0 18px;
  padding:12px;
  border:1px solid rgba(74,166,255,.48);
  border-radius:6px;
  background:linear-gradient(180deg,rgba(8,18,28,.92),rgba(4,9,14,.96));
  box-shadow:inset 0 1px rgba(255,255,255,.05),0 8px 22px rgba(0,0,0,.38);
}
.money-guide-visual[hidden]{display:none!important}
.money-guide-photo-frame{
  position:relative;
  display:grid;
  place-items:center;
  width:100%;
  aspect-ratio:4/3;
  line-height:0;
  overflow:hidden;
  background:#020405;
  border:1px solid #64717c;
  border-radius:6px;
  box-shadow:0 0 0 3px #10161c,0 0 0 4px rgba(74,166,255,.35),0 8px 20px rgba(0,0,0,.55);
}
.money-guide-photo-frame>img{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  border-radius:5px;
  background:#020405;
}
.money-guide-identity{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:11px;
  align-items:start;
  margin-top:13px;
  padding-top:12px;
  border-top:1px solid #34414d;
}
.money-identity-level{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 8px;
  border:1px solid rgba(74,166,255,.62);
  border-radius:3px;
  background:rgba(30,144,255,.11);
  color:#9dd1ff;
  font-size:.63rem;
  font-weight:900;
  letter-spacing:.08em;
  line-height:1.1;
  text-transform:uppercase;
  white-space:nowrap;
}
.money-guide-identity strong{display:block;color:#fff;font-size:.94rem;line-height:1.25;text-transform:uppercase}
.money-guide-identity p{margin:4px 0 0;color:var(--muted);font-family:Arial,sans-serif;font-size:.75rem;line-height:1.4}
.money-marker-note{margin:10px 0 0;color:#8896a2;font-family:Arial,sans-serif;font-size:.69rem;line-height:1.4}

.money-marker-layer,.scrapsmithing-overlay{position:absolute;inset:0;z-index:8;pointer-events:none}
.money-marker-layer[hidden],.scrapsmithing-overlay[hidden]{display:none!important}
.money-marker-surface{position:absolute;inset:0;overflow:visible}
.money-marker{
  position:absolute;
  width:0;
  height:0;
  filter:drop-shadow(0 3px 4px rgba(0,0,0,.85));
}
.money-marker-pin{
  position:absolute;
  z-index:3;
  left:0;
  top:0;
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  transform:translate(-50%,-50%);
  border:2px solid #e5f5ff;
  border-radius:50%;
  background:linear-gradient(180deg,#168aff,#064d9f);
  color:#fff;
  font-family:Arial,sans-serif;
  font-size:.82rem;
  font-weight:900;
  line-height:1;
  box-shadow:0 0 0 3px rgba(3,10,17,.76),0 0 12px rgba(30,144,255,.85);
}
.money-marker-label{
  position:absolute;
  z-index:2;
  left:23px;
  top:-17px;
  display:block;
  width:max-content;
  max-width:min(170px,46vw);
  padding:6px 8px;
  border:1px solid rgba(121,195,255,.76);
  border-radius:3px;
  background:rgba(3,10,17,.91);
  color:#fff;
  font-family:Arial,sans-serif;
  font-size:clamp(.64rem,2.55vw,.78rem);
  font-weight:900;
  line-height:1.22;
  letter-spacing:.025em;
  text-transform:uppercase;
  backdrop-filter:blur(2px);
}
.money-marker.marker-left .money-marker-label{left:auto;right:23px;text-align:right}
.money-marker.marker-up .money-marker-label{top:auto;bottom:17px}
.money-marker.marker-likely .money-marker-pin,.money-marker.marker-hidden .money-marker-pin{border-style:dashed}
.money-marker.marker-low-confidence{display:none!important}

.scrapsmithing-overlay{
  z-index:12;
  display:grid;
  place-items:center;
  padding:18px;
  background:rgba(1,5,9,.62);
  backdrop-filter:brightness(.58) saturate(.72);
}
.scrapsmithing-copy{text-align:center}
.scrapsmithing-step{
  display:block;
  margin-bottom:7px;
  color:#a9d6ff;
  font-family:Arial,sans-serif;
  font-size:clamp(.64rem,2.7vw,.8rem);
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
  text-shadow:0 0 8px rgba(30,144,255,.52);
}
.scrapsmithing-copy strong{
  display:block;
  color:#e9f6ff;
  font-size:clamp(1.48rem,7vw,2.45rem);
  letter-spacing:.09em;
  text-transform:uppercase;
  text-shadow:0 0 3px #fff,0 0 10px #1e90ff,0 0 22px rgba(30,144,255,.78);
  animation:scrapsmithingPulse 1.55s ease-in-out infinite;
}
.scrapsmithing-copy span{
  display:block;
  margin-top:9px;
  color:#93caff;
  font-family:Arial,sans-serif;
  font-size:clamp(.67rem,2.7vw,.83rem);
  font-weight:900;
  letter-spacing:.11em;
  line-height:1.35;
  text-transform:uppercase;
}
@keyframes scrapsmithingPulse{0%,100%{opacity:.78;filter:brightness(.9)}50%{opacity:1;filter:brightness(1.23)}}

.money-result-panel{margin-top:17px;padding:18px;border-radius:7px;border-color:#4b86bb;overflow:hidden}
.money-result-panel[hidden]{display:none!important}
.money-result-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:13px;border-bottom:1px solid #3d4c59}
.money-result-heading h2{margin:0;text-transform:uppercase;font-size:clamp(1.4rem,5vw,1.85rem);letter-spacing:.045em}
.money-hazard-chip{flex:0 0 auto;padding:6px 9px;border:1px solid rgba(255,73,63,.72);border-radius:3px;background:rgba(255,73,63,.12);color:#ff918a;font-size:.67rem;font-weight:900;letter-spacing:.08em}
.money-hazard-chip[hidden]{display:none!important}
.money-summary{margin:14px 0;color:var(--muted);font-family:Arial,sans-serif;line-height:1.55}
.money-action-first{margin:15px 0;padding:15px;border:1px solid rgba(65,160,255,.55);border-left:4px solid var(--blue);border-radius:4px;background:linear-gradient(90deg,rgba(30,144,255,.12),rgba(8,15,22,.55))}
.money-action-first span,.money-action-first strong{display:block}
.money-action-first span{color:var(--blue2);font-size:.7rem;font-weight:900;letter-spacing:.11em}
.money-action-first strong{margin-top:6px;font-family:Arial,sans-serif;font-size:1rem;line-height:1.45}
.money-target-list{display:grid;gap:10px;margin-top:14px}
.money-target{position:relative;padding:14px;border:1px solid #4a535d;border-left:4px solid #4a93d8;border-radius:5px;background:linear-gradient(180deg,#202831,#10161c);box-shadow:inset 0 1px rgba(255,255,255,.06)}
.money-target-top{display:flex;align-items:flex-start;gap:11px}
.money-target-number{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid #77beff;border-radius:50%;background:#0d4d88;color:#fff;font-weight:900;box-shadow:0 0 10px rgba(30,144,255,.32)}
.money-target-category{display:inline-block;color:#8fc9ff;font-size:.66rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.money-target h3{margin:3px 0 0;color:#fff;font-size:1rem;text-transform:uppercase}
.money-target-action,.money-target-reason{margin:9px 0 0;color:#d9e0e5;font-family:Arial,sans-serif;font-size:.84rem;line-height:1.45}
.money-target-reason{color:var(--muted);font-size:.77rem}
.money-category-best-value{border-left-color:#f3c44e}.money-category-best-value .money-target-category{color:#f3d56f}
.money-category-easy-recovery{border-left-color:#36db68}.money-category-easy-recovery .money-target-category{color:#71e88f}
.money-category-bulk-scrap{border-left-color:#9da6ae}.money-category-bulk-scrap .money-target-category{color:#c3c9ce}
.money-category-usually-skip{border-left-color:#b35a55}.money-category-usually-skip .money-target-category{color:#dd8c86}
.money-stopping-point{margin-top:16px;padding:16px;border:1px solid rgba(243,196,78,.58);border-radius:5px;background:linear-gradient(180deg,rgba(84,65,16,.22),rgba(22,18,8,.72))}
.money-stopping-point[hidden]{display:none!important}
.money-stopping-point .eyebrow{color:#f3c44e}.money-stopping-point h3{margin:2px 0 7px;text-transform:uppercase}.money-stopping-point>p:not(.eyebrow){margin:0;color:#d8d0b8;font-family:Arial,sans-serif;line-height:1.5}
.money-stop-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:13px}.money-stop-actions button{margin:0;min-height:48px}
.money-session-controls{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:16px;padding-top:16px;border-top:1px solid #39434d}
.money-session-controls button{margin:0;min-height:54px;padding:11px 10px;font-size:.76rem;line-height:1.2}
.money-session-controls #money-next-photo-btn{grid-column:1/-1;min-height:60px;font-size:.86rem}
.money-session-controls button[hidden]{display:none!important}

@media(max-width:520px){
  .breakdown-resume-card,.find-money-entry{grid-template-columns:1fr}
  .breakdown-resume-card .primary-btn{width:100%;min-width:0}
  .find-money-btn{width:100%}
  .money-session-controls{grid-template-columns:1fr}
  .money-session-controls #money-next-photo-btn{grid-column:auto}
  .money-marker-label{max-width:min(150px,45vw)}
}
@media(max-width:380px){
  .money-result-panel{padding:14px}
  .money-result-heading{flex-direction:column}
  .money-stop-actions{grid-template-columns:1fr}
  .money-marker-pin{width:29px;height:29px;font-size:.74rem}
  .money-marker-label{max-width:min(124px,43vw);padding:5px 6px;font-size:.59rem}
  .money-guide-identity{grid-template-columns:1fr}
  .money-identity-level{justify-self:start}
}
@media(prefers-reduced-motion:reduce){
  .scrapsmithing-copy strong{animation:none!important;opacity:1!important;filter:none!important}
}


/* v0.9.2 — Find the Money placement + full-photo annotation correction */
.analysis-panel .find-money-entry{
  border-width:2px;
  box-shadow:inset 0 1px rgba(255,255,255,.1),0 0 0 1px rgba(30,144,255,.18),0 0 26px rgba(30,144,255,.18);
}
.analysis-panel .find-money-btn{min-height:64px;font-size:1.04rem}
.money-guide-photo-frame{max-height:min(70vh,560px)}
.money-marker-surface{position:absolute;overflow:visible}
@media(max-width:520px){
  .analysis-panel .find-money-entry{margin:10px 0 14px;padding:14px}
  .analysis-panel .find-money-entry h3{font-size:1.08rem}
  .analysis-panel .find-money-entry p:not(.eyebrow){font-size:.82rem}
  .analysis-panel .find-money-btn{min-height:66px;font-size:1.08rem}
  .money-guide-photo-frame{max-height:min(64vh,470px)}
}

/* ScrapSmith v0.9.3 — page-by-page Find the Money breakdown flow.
   The normal identification page remains intact. Each breakdown photo is rendered
   as its own focused step state with Back navigation through the saved session. */
.camera-permission-note-secondary{
  margin-top:18px;
  margin-bottom:0;
  opacity:.78;
  font-size:.75rem;
}

body[data-page="breakdown"]{
  padding-bottom:24px;
}
body[data-page="breakdown"] .bottom-nav{
  display:none!important;
}
body[data-page="breakdown"] .section-heading .eyebrow{
  display:block!important;
  margin-bottom:5px;
}
#breakdown{
  padding:10px 12px 28px;
}
#breakdown .breakdown-back-btn{
  margin-bottom:8px;
}
#breakdown .breakdown-page-heading{
  margin-bottom:10px;
  padding:10px 12px 11px;
}
#breakdown .breakdown-page-heading h2{
  color:#fff;
  font-size:1.12rem;
  letter-spacing:.08em;
}
#breakdown .breakdown-page-heading p:last-child{
  margin-top:4px;
  color:#94a6b7;
  font-size:.76rem;
}
.breakdown-status-row{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  min-height:25px;
  margin-bottom:8px;
}
.money-current-step-chip{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:4px 8px;
  border:1px solid rgba(74,166,255,.42);
  border-radius:3px;
  background:rgba(30,144,255,.08);
  color:#8ec9ff;
  font-size:.6rem;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}
#breakdown .money-result-panel{
  margin-top:0;
  padding:12px;
  border-radius:6px;
  overflow:visible;
}
#breakdown .money-guide-visual{
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
#breakdown .breakdown-photo-frame{
  width:100%;
  aspect-ratio:4/3;
  margin:0;
  border-radius:7px;
}
#breakdown .breakdown-photo-frame>img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  background:#020405;
}
#breakdown .money-guide-identity{
  grid-template-columns:auto minmax(0,1fr);
  gap:8px;
  margin-top:10px;
  padding:9px 2px 0;
  border-top:0;
}
#breakdown .money-identity-level{
  min-height:24px;
  padding:4px 7px;
  font-size:.57rem;
}
#breakdown .money-guide-identity strong{
  font-size:.82rem;
}
#breakdown .money-guide-identity p{
  display:-webkit-box;
  margin-top:3px;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  font-size:.69rem;
}
#breakdown .money-action-first{
  margin:12px 0 10px;
  padding:15px 14px;
  border:1px solid rgba(79,174,255,.72);
  border-left:5px solid var(--blue);
  background:
    linear-gradient(90deg,rgba(30,144,255,.17),rgba(8,15,22,.62)),
    linear-gradient(180deg,#17222c,#0b1117);
  box-shadow:inset 0 1px rgba(255,255,255,.07),0 0 16px rgba(30,144,255,.1);
}
#breakdown .money-action-first span{
  font-size:.67rem;
  letter-spacing:.14em;
}
#breakdown .money-action-first strong{
  margin-top:7px;
  color:#fff;
  font-size:1.04rem;
  line-height:1.4;
}
.money-worth-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin:14px 1px 8px;
  padding-top:12px;
  border-top:1px solid #34414d;
}
.money-worth-heading span{
  color:#dfeeff;
  font-size:.77rem;
  font-weight:900;
  letter-spacing:.08em;
}
.money-worth-heading small{
  color:#748392;
  font-family:Arial,sans-serif;
  font-size:.64rem;
}
#breakdown .money-target-list{
  gap:7px;
  margin-top:0;
}
#breakdown .money-target{
  padding:10px 11px;
  border-left-width:3px;
}
#breakdown .money-target-top{
  gap:9px;
  align-items:center;
}
#breakdown .money-target-number{
  flex-basis:29px;
  width:29px;
  height:29px;
  font-size:.74rem;
}
#breakdown .money-target-category{
  font-size:.59rem;
}
#breakdown .money-target h3{
  margin-top:2px;
  font-size:.86rem;
}
#breakdown .money-target-reason{
  margin:6px 0 0 38px;
  font-size:.71rem;
  line-height:1.38;
}
#breakdown .money-stopping-point{
  margin-top:12px;
  padding:13px;
}
#breakdown .money-stopping-point h3{
  font-size:.92rem;
}
#breakdown .money-stopping-point>p:not(.eyebrow){
  font-size:.78rem;
}
.money-step-details{
  margin-top:11px;
  border:1px solid #36424d;
  border-radius:4px;
  background:#0a1016;
}
.money-step-details[hidden]{display:none!important}
.money-step-details summary{
  padding:11px 12px;
  color:#9fcfff;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
}
.money-step-details[open] summary{
  border-bottom:1px solid #303c47;
}
.money-step-details .money-summary,
.money-step-details .money-marker-note{
  margin:0;
  padding:10px 12px;
  font-size:.72rem;
  line-height:1.45;
}
.money-step-details .money-marker-note{
  padding-top:0;
}
#breakdown .money-session-controls{
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:12px;
  padding-top:12px;
}
#breakdown .money-session-controls #money-next-photo-btn,
#breakdown .money-session-controls #breakdown-current-btn{
  grid-column:1/-1;
  min-height:58px;
  font-size:.84rem;
}
#breakdown .money-session-controls .breakdown-new-item-btn{
  grid-column:1/-1;
  min-height:44px;
  color:#b8c2cb;
}
#breakdown .money-session-controls button[hidden]{display:none!important}
#breakdown .money-safety-stop{
  margin:11px 0;
}
#breakdown.is-analyzing .money-current-step-chip{
  color:#a9d6ff;
  border-color:rgba(74,166,255,.65);
  box-shadow:0 0 10px rgba(30,144,255,.12);
}

@media(max-width:430px){
  #breakdown{padding-left:9px;padding-right:9px}
  #breakdown .money-result-panel{padding:9px}
  #breakdown .breakdown-photo-frame{aspect-ratio:4/3}
  .money-worth-heading{align-items:flex-start;flex-direction:column;gap:3px}
  #breakdown .money-target-reason{margin-left:0}
  #breakdown .money-session-controls{grid-template-columns:1fr 1fr}
}
#breakdown.is-analyzing .money-worth-heading{display:none}
.camera-permission-details{
  margin-top:18px;
  border-top:1px solid #2c3741;
  color:#7f8c98;
  font-family:Arial,sans-serif;
  font-size:.7rem;
}
.camera-permission-details summary{
  padding:10px 2px;
  color:#7f8c98;
  cursor:pointer;
}
.camera-permission-details p{
  margin:0;
  padding:0 2px 10px;
  line-height:1.45;
}


/* ScrapSmith v0.9.4 — actionable mechanical guidance.
   NEXT MOVE is the access step; HOW TO explains a supported method or shows
   source-backed variants; WHAT'S WORTH PULLING remains a separate value list. */
#breakdown .money-next-reason{
  margin:9px 0 0;
  color:#9eabb6;
  font-family:Arial,sans-serif;
  font-size:.78rem;
  line-height:1.45;
}
#breakdown .money-next-reason[hidden]{display:none!important}
#breakdown .money-howto{
  margin-top:13px;
  padding-top:13px;
  border-top:1px solid rgba(94,156,214,.32);
}
#breakdown .money-howto[hidden]{display:none!important}
.money-howto-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
}
.money-howto-heading>span:first-child{
  color:#9ed2ff;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.11em;
}
.money-howto-status{
  padding:4px 7px;
  border:1px solid rgba(84,169,255,.48);
  border-radius:3px;
  background:rgba(30,144,255,.09);
  color:#b9dcff;
  font-size:.58rem;
  font-weight:900;
  letter-spacing:.075em;
  text-align:right;
}
.money-howto-copy,
.money-howto-evidence,
.money-closeup-request p{
  margin:0;
  font-family:Arial,sans-serif;
  line-height:1.5;
}
.money-howto-copy{color:#edf5fb;font-size:.9rem}
.money-howto-evidence{margin-top:7px;color:#95a7b5;font-size:.75rem}
.money-research-result{
  margin-top:8px;
  padding:11px;
  border:1px solid rgba(114,184,247,.35);
  border-radius:4px;
  background:rgba(3,10,16,.55);
}
.money-research-result[hidden]{display:none!important}
.money-research-text{
  margin:0;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  color:#e5edf3;
  font-family:Arial,sans-serif;
  font-size:.8rem;
  line-height:1.52;
}
.money-research-sources{
  display:grid;
  gap:7px;
  margin-top:11px;
}
.money-research-source{
  display:block;
  padding:9px 10px;
  border:1px solid rgba(104,164,218,.42);
  border-radius:4px;
  background:#0a1721;
  color:#9fd2ff;
  font-family:Arial,sans-serif;
  font-size:.72rem;
  font-weight:800;
  line-height:1.35;
  text-decoration:none;
}
.money-research-source.is-youtube{border-color:rgba(215,83,83,.48);color:#ffc0bd}
.money-research-source:active{transform:translateY(1px)}
.money-search-entry{margin-top:10px;overflow:hidden}
.money-closeup-request{
  margin-top:8px;
  padding:11px;
  border:1px solid rgba(243,196,78,.42);
  border-left:3px solid #e3b84a;
  border-radius:4px;
  background:rgba(70,53,13,.18);
}
.money-closeup-request[hidden]{display:none!important}
.money-closeup-request strong{display:block;color:#f3d674;font-size:.7rem;letter-spacing:.08em}
.money-closeup-request p{margin-top:6px;color:#e0d8bd;font-size:.8rem}
@media(max-width:560px){
  .money-howto-heading{align-items:flex-start;flex-direction:column;gap:5px}
  .money-howto-status{text-align:left}
  .money-research-result{padding:9px}
}


/* ScrapSmith v0.9.6 — photo-driven Milo suggestion session.
   Internal session records still use the legacy "steps" field for storage compatibility,
   but the customer experience is photo history + Milo recommendations, not a prescribed teardown sequence. */
.money-photo-nav{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) 52px;
  align-items:center;
  gap:9px;
  margin:0 0 11px;
  padding:8px;
  border:1px solid #354654;
  border-radius:5px;
  background:linear-gradient(180deg,#111820,#080d12);
  box-shadow:inset 0 1px rgba(255,255,255,.05);
}
.money-photo-nav-btn{
  width:52px;
  height:48px;
  padding:0;
  border:1px solid rgba(74,166,255,.62);
  border-radius:4px;
  background:linear-gradient(180deg,#173a60,#0a223b);
  color:#e9f6ff;
  font-size:1.35rem;
  font-weight:900;
  box-shadow:inset 0 1px rgba(255,255,255,.1),0 3px 8px rgba(0,0,0,.35);
  cursor:pointer;
  touch-action:manipulation;
}
.money-photo-nav-btn:disabled{opacity:.28;cursor:default;filter:grayscale(.5)}
.money-photo-position{text-align:center;min-width:0}
.money-photo-position strong{
  display:block;
  color:#e8f4ff;
  font-size:.76rem;
  letter-spacing:.1em;
  line-height:1.2;
}
.money-photo-position small{
  display:block;
  margin-top:3px;
  color:#7f9ab1;
  font-family:Arial,sans-serif;
  font-size:.61rem;
  font-weight:800;
  letter-spacing:.06em;
}
.money-suggestion-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:7px;
}
#breakdown .money-suggestion-heading>span:first-child{
  color:#9ed2ff;
  font-size:.67rem;
  font-weight:900;
  letter-spacing:.13em;
}
.money-decision-chip{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:5px 8px;
  border:1px solid rgba(117,185,247,.46);
  border-radius:3px;
  background:rgba(30,144,255,.09);
  color:#c4e2ff;
  font-size:.58rem!important;
  font-weight:900;
  letter-spacing:.07em!important;
  line-height:1.15;
  text-align:center;
}
.money-decision-chip.decision-remove{
  border-color:rgba(54,219,104,.58);
  background:rgba(54,219,104,.1);
  color:#82efa0;
}
.money-decision-chip.decision-optional{
  border-color:rgba(243,196,78,.58);
  background:rgba(243,196,78,.09);
  color:#f1d67e;
}
.money-decision-chip.decision-mission-over{
  border-color:rgba(157,166,174,.58);
  background:rgba(157,166,174,.1);
  color:#d0d7dd;
}
.money-decision-chip.decision-safety-stop{
  border-color:rgba(255,73,63,.68);
  background:rgba(255,73,63,.11);
  color:#ff9c96;
}
#breakdown .money-action-first.decision-remove{border-left-color:var(--success)}
#breakdown .money-action-first.decision-optional{border-left-color:var(--warning)}
#breakdown .money-action-first.decision-mission-over{border-left-color:#9da6ae}
#breakdown .money-action-first.decision-safety-stop{border-left-color:var(--danger)}
#breakdown .money-stopping-point{
  border-color:rgba(157,166,174,.55);
  background:linear-gradient(180deg,rgba(55,65,74,.26),rgba(13,17,21,.8));
}
#breakdown .money-stopping-point .eyebrow{color:#b8c3cc}
#breakdown .money-stopping-point>p:not(.eyebrow){color:#c2cbd2}
@media(max-width:430px){
  .money-photo-nav{grid-template-columns:48px minmax(0,1fr) 48px;gap:7px;padding:7px}
  .money-photo-nav-btn{width:48px;height:48px}
  .money-suggestion-heading{align-items:flex-start;flex-direction:column;gap:6px}
  .money-decision-chip{max-width:100%;text-align:left;justify-content:flex-start}
}

/* v0.9.6.2 — keep breakdown session actions out of view while Milo is analyzing. */
#breakdown .money-session-controls[hidden]{display:none!important}

/* ScrapSmith v0.9.7 — linked breakdown history + auto-save + swipe review. */
.history-breakdown-strip{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  margin-top:9px;
  padding:10px;
  border:1px solid rgba(30,144,255,.38);
  border-radius:5px;
  background:rgba(30,144,255,.07);
}
.history-breakdown-strip strong{
  display:block;
  color:#dceeff;
  font-size:.73rem;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.history-breakdown-strip small{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-family:Arial,sans-serif;
  font-size:.68rem;
}
.breakdown-history-button{
  min-height:38px;
  padding:8px 10px;
  border:1px solid rgba(74,166,255,.62);
  border-radius:4px;
  background:linear-gradient(180deg,#173a60,#0a223b);
  color:#e9f6ff;
  font-size:.66rem;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  cursor:pointer;
}
.breakdown-history-button.is-completed{
  border-color:#596674;
  background:linear-gradient(180deg,#2d353d,#171d22);
  color:#d5dde4;
}
.saved-scan-breakdown{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  margin:17px 0 4px;
  padding:14px;
  border:1px solid rgba(30,144,255,.55);
  border-radius:6px;
  background:linear-gradient(180deg,rgba(24,54,81,.42),rgba(8,16,24,.72));
}
.saved-scan-breakdown[hidden]{display:none!important}
.saved-scan-breakdown .eyebrow{margin:0 0 4px}
.saved-scan-breakdown h3{margin:0!important;color:#fff!important;font-size:.95rem}
.saved-scan-breakdown p:not(.eyebrow){margin:4px 0 0!important;font-size:.76rem!important}
.saved-scan-breakdown .primary-btn{margin:0;min-width:150px}
.money-swipe-hint{
  margin:-3px 0 10px;
  color:#7f9ab1;
  text-align:center;
  font-family:Arial,sans-serif;
  font-size:.66rem;
  line-height:1.35;
}
.money-swipe-hint[hidden]{display:none!important}
#breakdown .money-result-panel{
  touch-action:pan-y;
  will-change:transform,opacity;
}
#breakdown .money-result-panel.is-swipe-dragging{
  transition:none!important;
  user-select:none;
}
#breakdown .money-result-panel.is-swipe-settling{
  transition:transform .15s ease,opacity .15s ease;
}
#breakdown .money-result-panel.swipe-enter-from-right{animation:breakdownSwipeInRight .18s ease}
#breakdown .money-result-panel.swipe-enter-from-left{animation:breakdownSwipeInLeft .18s ease}
@keyframes breakdownSwipeInRight{from{transform:translateX(22px);opacity:.78}to{transform:translateX(0);opacity:1}}
@keyframes breakdownSwipeInLeft{from{transform:translateX(-22px);opacity:.78}to{transform:translateX(0);opacity:1}}
.money-autosave-note{
  grid-column:1/-1;
  margin:0;
  padding-top:2px;
  color:#7f9ab1;
  text-align:center;
  font-family:Arial,sans-serif;
  font-size:.66rem;
}
#breakdown .money-session-controls #breakdown-current-btn{
  grid-column:1/-1;
  min-height:52px;
  color:#dceeff;
}
#breakdown .money-session-controls.is-reviewing #money-autosave-note{display:none}
#breakdown .money-session-controls.is-completed #money-autosave-note{display:none}
#breakdown .money-session-controls.is-completed{
  grid-template-columns:1fr;
}
@media(max-width:560px){
  .history-breakdown-strip,.saved-scan-breakdown{grid-template-columns:1fr}
  .breakdown-history-button,.saved-scan-breakdown .primary-btn{width:100%;min-width:0}
}
@media(prefers-reduced-motion:reduce){
  #breakdown .money-result-panel.swipe-enter-from-right,
  #breakdown .money-result-panel.swipe-enter-from-left{animation:none}
  #breakdown .money-result-panel.is-swipe-settling{transition:none}
}

/* ScrapSmith v0.9.7.1 — same-item continuity gate for follow-up breakdown photos. */
.money-continuity-gate{
  margin:14px 0 4px;
  padding:15px;
  border:1px solid rgba(255,178,69,.62);
  border-radius:6px;
  background:linear-gradient(180deg,rgba(73,48,17,.42),rgba(16,13,10,.88));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025);
}
.money-continuity-gate[hidden]{display:none!important}
.money-continuity-gate.is-uncertain{
  border-color:rgba(74,166,255,.58);
  background:linear-gradient(180deg,rgba(19,53,82,.42),rgba(8,16,24,.88));
}
.money-continuity-chip{
  display:inline-block;
  margin-bottom:6px;
  color:#ffc56e;
  font-size:.66rem;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.money-continuity-gate.is-uncertain .money-continuity-chip{color:#7fc0ff}
.money-continuity-copy h3{
  margin:0;
  color:#fff;
  font-size:1rem;
  line-height:1.2;
  text-transform:uppercase;
}
.money-continuity-copy p{
  margin:7px 0 0;
  color:#c9d3dc;
  font-family:Arial,sans-serif;
  font-size:.78rem;
  line-height:1.45;
}
.money-continuity-detected{
  color:#e8f3fc!important;
  font-weight:700;
}
.money-continuity-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
  margin-top:14px;
}
.money-continuity-actions button{margin:0;min-height:52px}
.money-continuity-actions .primary-btn{grid-column:1/-1}
.money-continuity-note{
  display:block;
  margin-top:10px;
  color:#8495a3;
  text-align:center;
  font-family:Arial,sans-serif;
  font-size:.65rem;
  line-height:1.35;
}
@media(max-width:560px){
  .money-continuity-actions{grid-template-columns:1fr}
  .money-continuity-actions .primary-btn{grid-column:auto}
}

/* ScrapSmith v0.9.7.3 — breakdown photo removal. */
#breakdown .money-session-controls #money-remove-photo-btn{
  grid-column:1/-1;
  min-height:46px;
  border-color:rgba(255,73,63,.38);
  background:linear-gradient(#332428,#1d1518);
  color:#ff8d86;
  font-size:.7rem;
}
#breakdown .money-session-controls #money-remove-photo-btn:hover,
#breakdown .money-session-controls #money-remove-photo-btn:focus-visible{
  border-color:rgba(255,93,84,.72);
  color:#ffb0ab;
}


/* ScrapSmith v0.9.8 — organized Scrap History master library. */
.history-overview{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin:0 0 14px;
}
.history-overview>button{
  position:relative;
  min-width:0;
  min-height:64px;
  padding:11px 10px;
  border:1px solid #424b55;
  border-radius:5px;
  background:linear-gradient(180deg,#20272e,#12171c);
  box-shadow:var(--bevel);
  color:inherit;
  font:inherit;
  text-align:left;
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .12s ease;
}
.history-overview>button:hover,
.history-overview>button:focus-visible{
  border-color:rgba(74,166,255,.68);
}
.history-overview>button:focus-visible{
  outline:2px solid rgba(74,166,255,.78);
  outline-offset:2px;
}
.history-overview>button:active{transform:translateY(1px)}
.history-overview>button.is-active{
  border-color:rgba(74,166,255,.95);
  background:linear-gradient(180deg,rgba(23,66,103,.95),rgba(13,30,44,.98));
  box-shadow:inset 0 -3px 0 rgba(59,166,255,.92),0 0 15px rgba(30,144,255,.17),var(--bevel);
}
.history-overview span{
  display:block;
  color:var(--muted);
  font-family:Arial,sans-serif;
  font-size:.66rem;
  font-weight:800;
  line-height:1.15;
  text-transform:uppercase;
}
.history-overview strong{
  display:block;
  margin-top:5px;
  color:#fff;
  font-size:1.35rem;
  line-height:1;
}
.history-overview>button:nth-child(2) strong{color:var(--blue2)}
.history-overview>button:nth-child(3) strong{color:#c7d2dc}
.history-overview>button.is-active strong{color:#dff1ff}
.history-library-panel{padding-top:15px}
.history-group-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:5px 0 -2px;
  padding:8px 2px 4px;
  border-bottom:1px solid rgba(110,124,138,.28);
}
.history-group-heading strong{
  display:block;
  color:#e8f2fb;
  font-size:.73rem;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.history-group-heading span{
  display:block;
  margin-top:2px;
  color:#798b9a;
  font-family:Arial,sans-serif;
  font-size:.66rem;
}
.history-group-heading b{
  flex:0 0 auto;
  min-width:28px;
  padding:4px 7px;
  border:1px solid rgba(74,166,255,.36);
  border-radius:999px;
  background:rgba(30,144,255,.08);
  color:#a8d5ff;
  text-align:center;
  font-family:Arial,sans-serif;
  font-size:.7rem;
}
.history-card{
  grid-template-columns:92px minmax(0,1fr);
  align-items:start;
  padding:11px;
  border-color:#46505a;
}
.history-card.has-active-breakdown{
  border-color:rgba(48,145,235,.7);
  box-shadow:inset 3px 0 0 rgba(46,153,255,.82),var(--bevel);
}
.history-card.has-completed-breakdown{
  border-color:#4a555f;
}
.history-card img,.history-photo-placeholder{
  width:92px;
  height:92px;
}
.history-card-body{min-width:0}
.history-card-heading{gap:8px}
.history-card-heading>div{min-width:0}
.history-card-heading h3{
  margin:0;
  overflow-wrap:anywhere;
  color:#f5f8fb;
  font-size:1rem;
  line-height:1.08;
  text-transform:uppercase;
}
.history-item-subtitle{
  margin:4px 0 0!important;
  color:#96a8b7!important;
  font-size:.72rem!important;
  line-height:1.25!important;
}
.history-item-date{
  margin-top:6px!important;
  color:#768795!important;
  font-size:.7rem!important;
}
.history-breakdown-strip{
  margin-top:9px;
  padding:9px 10px;
}
.history-breakdown-strip.is-active{
  border-color:rgba(30,144,255,.52);
  background:linear-gradient(180deg,rgba(17,62,102,.36),rgba(7,21,34,.66));
}
.history-breakdown-strip.is-completed{
  border-color:rgba(115,129,141,.38);
  background:linear-gradient(180deg,rgba(48,58,67,.28),rgba(16,21,26,.58));
}
.history-breakdown-strip.is-active strong{color:#dff1ff}
.history-breakdown-strip.is-completed strong{color:#d2d9df}
.history-card-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-top:9px;
}
.history-card-footer .history-open-hint{
  margin:0;
  color:#7fbfff;
}
.history-card-footer .scan-sync-button{
  flex:0 0 auto;
  padding:6px 8px;
  font-size:.64rem;
}
#history .history-card-actions{display:none}
#cloud-scan-library .cloud-scan-list:empty{display:none}
@media(max-width:560px){
  .history-overview{gap:6px}
  .history-overview>button{min-height:58px;padding:9px 7px}
  .history-overview span{font-size:.58rem}
  .history-overview strong{font-size:1.15rem}
  .history-card{grid-template-columns:82px minmax(0,1fr);gap:10px;padding:10px}
  .history-card img,.history-photo-placeholder{width:82px;height:82px}
  .history-card-heading{flex-direction:column;gap:6px}
  .history-card-heading .scan-sync-badge{align-self:flex-start}
  .history-card-footer{align-items:flex-start;flex-direction:column}
  .history-card-footer .scan-sync-button{width:auto;min-height:34px}
}

@media(max-width:560px){
  #history .list-heading{align-items:flex-start;flex-direction:column}
  #history #clear-history-btn{align-self:flex-start;padding-left:0}
}

/* ScrapSmith v0.9.8.1 — tappable Scrap History filters. */
.history-filter-empty{
  margin:12px 2px 2px;
  padding:14px 12px;
  border:1px dashed rgba(109,129,145,.42);
  border-radius:5px;
  background:rgba(12,18,23,.54);
  color:#9eb0bf;
  font-family:Arial,sans-serif;
  font-size:.76rem;
  line-height:1.45;
  text-align:center;
}
.history-filter-empty[hidden]{display:none!important}


/* ScrapSmith v0.9.9 - photo contributions + tighter Scrap History organization. */
.photo-contribution-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:10px;
}
.photo-contribution-row small{
  color:#7e909f;
  font-family:Arial,sans-serif;
  font-size:.66rem;
  line-height:1.35;
}
.contribution-photo-btn{
  flex:0 0 auto;
  min-height:38px;
  padding:8px 11px;
  border:1px solid rgba(66,157,244,.62);
  border-radius:4px;
  background:linear-gradient(180deg,rgba(22,67,106,.72),rgba(8,26,42,.9));
  color:#b9dcff;
  font-family:Arial,sans-serif;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.035em;
  text-transform:uppercase;
  cursor:pointer;
}
.contribution-photo-btn:hover,.contribution-photo-btn:focus-visible{
  border-color:#58adff;
  color:#edf7ff;
  outline:none;
  box-shadow:0 0 0 2px rgba(30,144,255,.12);
}
.contribution-photo-btn.is-contributed{
  border-color:rgba(100,171,126,.7);
  background:linear-gradient(180deg,rgba(30,78,48,.72),rgba(13,38,24,.92));
  color:#bce7ca;
  cursor:default;
}
.contribution-photo-btn:disabled{opacity:.62;cursor:default}
.breakdown-photo-contribution{
  margin:11px 1px 0;
  padding-top:10px;
  border-top:1px solid rgba(70,88,103,.46);
}
.saved-photo-contribution-row{margin:10px 0 0}
.contribution-message{margin:6px 0 0!important}

.support-scrapsmith-panel{margin-top:16px;padding:16px}
.support-scrapsmith-heading{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:start;
}
.support-scrapsmith-heading h3,.history-storage-management h3{
  margin:0;
  color:#f3f7fa;
  text-transform:uppercase;
}
.support-scrapsmith-heading p:not(.eyebrow),.history-storage-management p:not(.eyebrow){
  margin:7px 0 0;
  color:#91a3b1;
  font-family:Arial,sans-serif;
  font-size:.78rem;
  line-height:1.45;
}
.support-contribution-total{
  min-width:96px;
  padding:11px 10px;
  border:1px solid rgba(66,157,244,.48);
  border-radius:5px;
  background:rgba(15,44,69,.58);
  text-align:center;
}
.support-contribution-total strong{
  display:block;
  color:#d9edff;
  font-size:1.45rem;
  line-height:1;
}
.support-contribution-total span{
  display:block;
  margin-top:5px;
  color:#8eb4d4;
  font-family:Arial,sans-serif;
  font-size:.61rem;
  text-transform:uppercase;
}
.support-contribution-stats{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:13px;
}
.support-contribution-stats>div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:9px 11px;
  border:1px solid rgba(86,100,113,.38);
  border-radius:4px;
  background:rgba(17,24,30,.62);
}
.support-contribution-stats strong{color:#d6e8f8}
.support-contribution-stats span{color:#8093a2;font-family:Arial,sans-serif;font-size:.68rem;text-transform:uppercase}
.support-contribution-status{margin:10px 0 0;color:#8ea1b0;font-family:Arial,sans-serif;font-size:.7rem}
.support-contribution-status.success{color:#9fd7b2}

.history-storage-management{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:16px;
  padding:14px 16px;
  border-color:#3f4851;
}
.history-storage-management .text-btn{flex:0 0 auto;padding:8px 0}

/* Shorter history cards: one work action, details from the card itself, bulk backup below. */
.history-breakdown-strip{
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:center!important;
  margin-top:8px!important;
  padding:8px 9px!important;
}
.history-breakdown-strip strong{font-size:.72rem!important}
.history-breakdown-strip small{font-size:.64rem!important;line-height:1.25!important}
.breakdown-history-button{
  min-height:34px!important;
  padding:7px 9px!important;
  font-size:.62rem!important;
  white-space:nowrap;
}
.history-card-footer{margin-top:7px!important}
.history-card-footer .history-open-hint{font-size:.7rem!important}

.contribution-dialog{
  position:fixed;
  inset:0;
  z-index:220;
  display:grid;
  place-items:center;
  padding:18px;
  background:rgba(0,0,0,.82);
  backdrop-filter:blur(2px);
}
.contribution-dialog[hidden]{display:none!important}
.contribution-dialog-card{
  position:relative;
  width:min(560px,100%);
  max-height:calc(100vh - 36px);
  overflow:auto;
  padding:20px;
  border-color:rgba(63,153,241,.72);
  box-shadow:0 18px 48px rgba(0,0,0,.65),inset 0 0 26px rgba(30,144,255,.05);
}
.contribution-dialog-card h2{margin:2px 42px 8px 0;text-transform:uppercase}
.contribution-dialog-card>p:not(.eyebrow):not(.form-message){color:#a3b3c0;font-family:Arial,sans-serif;line-height:1.48}
.contribution-dialog-points{margin:12px 0 0;padding-left:20px;color:#91a4b3;font-family:Arial,sans-serif;font-size:.78rem;line-height:1.48}
.contribution-dialog-points li+li{margin-top:6px}
.contribution-dialog-close{
  position:absolute;
  top:10px;
  right:10px;
  width:36px;
  height:36px;
  border:1px solid #55616c;
  border-radius:50%;
  background:#161d23;
  color:#d8e0e7;
  font-size:1.4rem;
  cursor:pointer;
}
.contribution-dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:16px}
.contribution-dialog-actions button{margin:0}

@media(max-width:560px){
  .photo-contribution-row{align-items:stretch;flex-direction:column}
  .contribution-photo-btn{width:100%}
  .support-scrapsmith-heading{grid-template-columns:1fr}
  .support-contribution-total{display:flex;align-items:center;justify-content:space-between;text-align:left}
  .support-contribution-total span{margin:0}
  .history-storage-management{align-items:flex-start;flex-direction:column}
  .history-breakdown-strip{grid-template-columns:1fr!important}
  .breakdown-history-button{width:100%}
  .contribution-dialog-actions{grid-template-columns:1fr}
}
/* v0.9.9 contribution visibility guards: author display rules must respect hidden. */
#breakdown .breakdown-photo-contribution[hidden],
#saved-photo-contribution-row[hidden]{display:none!important}
body.contribution-dialog-open{overflow:hidden}


/* ScrapSmith v0.9.9.1 — contribution visibility, batch selection, and backup-state separation. */
.photo-contribution-row{
  display:block;
  margin:7px 0 13px;
  padding:9px;
  border:1px solid rgba(63,153,241,.46);
  border-radius:5px;
  background:linear-gradient(180deg,rgba(16,42,66,.72),rgba(8,20,31,.82));
  box-shadow:inset 0 0 18px rgba(30,144,255,.035);
}
.photo-contribution-row small{
  display:block;
  margin-top:6px;
  text-align:center;
}
.contribution-photo-btn{
  width:100%;
  min-height:48px;
  padding:10px 13px;
  border-color:rgba(75,169,255,.88);
  background:linear-gradient(180deg,rgba(24,82,130,.92),rgba(9,35,57,.98));
  color:#e3f2ff;
  font-size:.72rem;
  box-shadow:0 6px 16px rgba(0,0,0,.22),inset 0 0 16px rgba(30,144,255,.08);
}
.breakdown-photo-contribution{margin:7px 1px 13px;padding-top:9px;border-top:0}
.saved-photo-contribution-row{margin:7px 0 10px}

.home-support-scrapsmith{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:14px 0 0;
  padding:14px 16px;
  border-color:rgba(63,153,241,.58);
  color:inherit;
  text-align:left;
  cursor:pointer;
}
.home-support-copy{display:grid;gap:3px;min-width:0}
.home-support-copy small{color:#5dadf7;font:800 .62rem/1 Arial,sans-serif;letter-spacing:.08em}
.home-support-copy strong{color:#e0eefb;font-size:.92rem;text-transform:uppercase}
.home-support-copy b{color:#899cab;font:400 .7rem/1.35 Arial,sans-serif}
.home-support-action{flex:0 0 auto;color:#8fc9ff;font:800 .68rem/1 Arial,sans-serif;text-transform:uppercase;white-space:nowrap}
.home-support-scrapsmith:hover,.home-support-scrapsmith:focus-visible{outline:none;border-color:#59aeff;box-shadow:0 0 0 2px rgba(30,144,255,.1)}

.support-scrapsmith-panel{margin:12px 0 14px;padding:16px;border-color:rgba(63,153,241,.5)}
.support-contribution-open-btn{width:100%;margin:14px 0 0;min-height:46px}
.support-contribution-helper{display:block;margin:7px 0 0;color:#7f93a2;font-family:Arial,sans-serif;font-size:.66rem;text-align:center;line-height:1.35}

.contribution-picker{
  position:fixed;
  inset:0;
  z-index:225;
  display:grid;
  place-items:center;
  padding:14px;
  background:rgba(0,0,0,.86);
  backdrop-filter:blur(2px);
}
.contribution-picker[hidden]{display:none!important}
.contribution-picker-card{
  position:relative;
  width:min(760px,100%);
  max-height:calc(100vh - 28px);
  overflow:auto;
  padding:18px;
  border-color:rgba(63,153,241,.72);
  box-shadow:0 18px 50px rgba(0,0,0,.7),inset 0 0 28px rgba(30,144,255,.045);
}
.contribution-picker-card h2{margin:2px 42px 6px 0;text-transform:uppercase}
.contribution-picker-copy{margin:0;color:#9daebb;font-family:Arial,sans-serif;font-size:.78rem;line-height:1.45}
.contribution-picker-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0 10px}
.contribution-picker-toolbar button{margin:0}
.contribution-picker-toolbar strong{color:#b9d9f4;font:800 .72rem/1 Arial,sans-serif;text-transform:uppercase}
.contribution-picker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.contribution-picker-item{
  position:relative;
  display:grid;
  grid-template-rows:auto 1fr;
  min-width:0;
  overflow:hidden;
  border:1px solid #3e4d59;
  border-radius:5px;
  background:#10171d;
  cursor:pointer;
  transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease;
}
.contribution-picker-item:hover,.contribution-picker-item:focus-within{border-color:#5aaeff}
.contribution-picker-item.is-selected{border-color:#58adff;box-shadow:0 0 0 2px rgba(30,144,255,.16),inset 0 0 20px rgba(30,144,255,.05)}
.contribution-picker-item.is-contributed{opacity:.68;cursor:default;border-color:rgba(90,151,110,.6)}
.contribution-picker-photo{position:relative;display:block;aspect-ratio:4/3;background:#070b0e;overflow:hidden}
.contribution-picker-photo img{width:100%;height:100%;object-fit:cover;display:block}
.contribution-picker-checkbox{
  position:absolute;
  top:8px;
  right:8px;
  width:28px;
  height:28px;
  margin:0;
  appearance:none;
  -webkit-appearance:none;
  border:2px solid #d4e7f7;
  border-radius:4px;
  background:rgba(5,10,14,.86);
  box-shadow:0 2px 8px rgba(0,0,0,.5);
  cursor:pointer;
}
.contribution-picker-checkbox:checked{border-color:#69b8ff;background:#1e90ff}
.contribution-picker-checkbox:checked::after{content:"✓";position:absolute;inset:0;display:grid;place-items:center;color:white;font:900 18px/1 Arial,sans-serif}
.contribution-picker-checkbox:disabled{cursor:default;background:#2c6540;border-color:#7dc997;opacity:1}
.contribution-picker-item-copy{display:grid;gap:3px;padding:9px 10px 10px;min-width:0}
.contribution-picker-item-copy strong{overflow:hidden;color:#dce9f3;font-size:.72rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase}
.contribution-picker-item-copy small{color:#7f94a4;font:400 .64rem/1.3 Arial,sans-serif}
.contribution-picker-message{margin:10px 0 0!important}
.contribution-picker-footer{position:sticky;bottom:-18px;display:grid;grid-template-columns:1fr auto;gap:9px;margin:14px -18px -18px;padding:12px 18px 18px;background:linear-gradient(180deg,rgba(9,14,18,.15),#090e12 30%);border-top:1px solid rgba(74,92,107,.42)}
.contribution-picker-footer button{margin:0}
body.contribution-picker-open{overflow:hidden}

@media(max-width:680px){
  .contribution-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:480px){
  .home-support-scrapsmith{align-items:flex-start;flex-direction:column}
  .home-support-action{align-self:stretch;padding-top:7px;border-top:1px solid rgba(78,98,113,.42)}
  .contribution-picker{padding:8px}
  .contribution-picker-card{max-height:calc(100vh - 16px);padding:14px}
  .contribution-picker-grid{gap:8px}
  .contribution-picker-item-copy{padding:8px}
  .contribution-picker-footer{bottom:-14px;margin:12px -14px -14px;padding:10px 14px 14px;grid-template-columns:1fr}
}

/* ScrapSmith v0.9.9.2 — tactile industrial controls + amber Support ScrapSmith identity. */
:root{
  --support:#f2b84b;
  --support-bright:#ffc857;
  --support-deep:#8a5708;
  --support-ink:#151006;
  --button-blue-top:#238fff;
  --button-blue-mid:#0c67cf;
  --button-blue-bottom:#06458f;
  --button-steel-top:#3c4650;
  --button-steel-mid:#252d35;
  --button-steel-bottom:#12171c;
}

/* Shared tactile language: bright top edge, dark lower lip, real press depth. */
.primary-btn,.secondary-btn,.back-btn,.new-photo-btn,.find-money-btn,.danger-btn,
.cloud-load-action,.history-overview-filter,.money-photo-nav-btn,.google-signin-btn,
.account-status-button,.scan-hero,.home-grid .card,.text-btn,.auth-tab,.password-toggle,
.contribution-dialog-close,.contribution-photo-btn,
.home-support-scrapsmith,.yard-favorite-btn{
  transition:transform .08s ease,box-shadow .08s ease,border-color .12s ease,filter .12s ease,background .12s ease;
  transform:translateY(0);
}

.primary-btn,.back-btn,.find-money-btn{
  border:1px solid #72bcff!important;
  background:linear-gradient(180deg,var(--button-blue-top) 0%,var(--button-blue-mid) 48%,var(--button-blue-bottom) 100%)!important;
  color:#fff!important;
  text-shadow:0 1px 1px rgba(0,0,0,.65);
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,.28),
    inset 0 -4px 0 rgba(0,0,0,.28),
    0 4px 0 #032b5a,
    0 8px 16px rgba(0,0,0,.42),
    0 0 13px rgba(30,144,255,.16)!important;
}
.primary-btn:hover,.primary-btn:focus-visible,
.back-btn:hover,.back-btn:focus-visible,
.find-money-btn:hover,.find-money-btn:focus-visible{
  filter:brightness(1.08);
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,.34),inset 0 -4px 0 rgba(0,0,0,.27),
    0 4px 0 #032b5a,0 9px 18px rgba(0,0,0,.46),0 0 18px rgba(30,144,255,.3)!important;
}
.primary-btn:active:not(:disabled),.back-btn:active:not(:disabled),.find-money-btn:active:not(:disabled){
  transform:translateY(3px)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.22),inset 0 -2px 0 rgba(0,0,0,.3),0 1px 0 #032b5a,0 4px 8px rgba(0,0,0,.42)!important;
}

.secondary-btn,.cloud-load-action,.money-photo-nav-btn,.auth-tab,.password-toggle,.yard-favorite-btn{
  border:1px solid #75808a!important;
  background:linear-gradient(180deg,var(--button-steel-top) 0%,var(--button-steel-mid) 48%,var(--button-steel-bottom) 100%)!important;
  color:#eef3f7!important;
  text-shadow:0 1px 1px #000;
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,.14),
    inset 0 -4px 0 rgba(0,0,0,.34),
    0 4px 0 #080b0e,
    0 8px 14px rgba(0,0,0,.36)!important;
}
.secondary-btn:hover,.secondary-btn:focus-visible,.cloud-load-action:hover,.cloud-load-action:focus-visible,
.money-photo-nav-btn:hover,.money-photo-nav-btn:focus-visible,.auth-tab:hover,.auth-tab:focus-visible,
.password-toggle:hover,.password-toggle:focus-visible:hover:focus-visible,
.yard-favorite-btn:hover,.yard-favorite-btn:focus-visible{
  border-color:#9aa5af!important;
  filter:brightness(1.08);
}
.secondary-btn:active:not(:disabled),.cloud-load-action:active:not(:disabled),.money-photo-nav-btn:active:not(:disabled),
.auth-tab:active:not(:disabled),.password-toggle:active:not(:disabled):active:not(:disabled),
.yard-favorite-btn:active:not(:disabled){
  transform:translateY(3px)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),inset 0 -2px 0 rgba(0,0,0,.34),0 1px 0 #080b0e,0 4px 8px rgba(0,0,0,.36)!important;
}

.new-photo-btn{
  border:1px solid #70f28b!important;
  background:linear-gradient(180deg,#39d65a 0%,#20a63d 50%,#126f29 100%)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.3),inset 0 -4px 0 rgba(0,0,0,.28),0 4px 0 #074519,0 8px 14px rgba(0,0,0,.4),0 0 12px rgba(54,219,104,.18)!important;
}
.new-photo-btn:active:not(:disabled){transform:translateY(3px)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 0 #074519,0 4px 8px rgba(0,0,0,.4)!important}

.danger-btn,.breakdown-remove-photo-btn{
  border-color:#ff7c72!important;
  background:linear-gradient(180deg,#cf443d 0%,#982c29 52%,#621816 100%)!important;
  color:#fff!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.22),inset 0 -4px 0 rgba(0,0,0,.3),0 4px 0 #3d0d0c,0 8px 14px rgba(0,0,0,.4),0 0 10px rgba(255,73,63,.14)!important;
}
.danger-btn:active:not(:disabled),.breakdown-remove-photo-btn:active:not(:disabled){transform:translateY(3px)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 1px 0 #3d0d0c,0 4px 8px rgba(0,0,0,.4)!important}

/* Subtle utility controls still read as actual controls instead of loose text. */
.text-btn,.auth-link-btn{
  border:1px solid #49545e!important;
  border-radius:4px!important;
  background:linear-gradient(180deg,#242b32,#11161b)!important;
  color:var(--blue2)!important;
  padding:8px 11px!important;
  text-decoration:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 3px 0 #07090b,0 6px 10px rgba(0,0,0,.3)!important;
}
.text-btn:active:not(:disabled),.auth-link-btn:active:not(:disabled){transform:translateY(2px)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 1px 0 #07090b,0 3px 6px rgba(0,0,0,.3)!important}
#clear-history-btn,.cloud-load-action.delete{border-color:rgba(255,105,95,.55)!important;color:#ff9b94!important}

/* Home tools and scanner are themselves buttons: deepen their machine-control feel. */
.scan-hero,.home-grid .card,.account-status-button{
  box-shadow:inset 0 2px 0 rgba(255,255,255,.1),inset 0 -4px 0 rgba(0,0,0,.38),0 5px 0 #06090c,0 11px 20px rgba(0,0,0,.42)!important;
}
.scan-hero:hover,.scan-hero:focus-visible,.home-grid .card:hover,.home-grid .card:focus-visible,.account-status-button:hover,.account-status-button:focus-visible{
  outline:none;
  border-color:#6ab8ff!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.12),inset 0 -4px 0 rgba(0,0,0,.36),0 5px 0 #06090c,0 12px 22px rgba(0,0,0,.46),0 0 15px rgba(30,144,255,.18)!important;
}
.scan-hero:active,.home-grid .card:active,.account-status-button:active{transform:translateY(3px)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 2px 0 #06090c,0 5px 9px rgba(0,0,0,.4)!important}

/* History filters look like three compact machine switches. */
.history-overview-filter{
  border:1px solid #5d6872!important;
  background:linear-gradient(180deg,#303941,#171d23)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.11),inset 0 -3px 0 rgba(0,0,0,.32),0 4px 0 #080b0e,0 8px 12px rgba(0,0,0,.34)!important;
}
.history-overview-filter.is-active{
  border-color:#64b7ff!important;
  background:linear-gradient(180deg,#174b78,#0d2e4c)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.15),inset 0 -3px 0 rgba(0,0,0,.28),0 4px 0 #061c31,0 8px 14px rgba(0,0,0,.36),0 0 14px rgba(30,144,255,.26)!important;
}
.history-overview-filter:active{transform:translateY(3px)!important}

/* Google remains recognizably light, but gains the same physical depth. */
.google-signin-btn{
  border-color:#fff!important;
  background:linear-gradient(180deg,#fff,#e5eaee 55%,#c7d0d7)!important;
  box-shadow:inset 0 2px 0 #fff,inset 0 -4px 0 rgba(0,0,0,.13),0 4px 0 #87939d,0 8px 14px rgba(0,0,0,.34)!important;
}
.google-signin-btn:active:not(:disabled){transform:translateY(3px)!important;box-shadow:inset 0 1px 0 #fff,0 1px 0 #87939d,0 4px 8px rgba(0,0,0,.3)!important}

/* SUPPORT SCRAPSMITH = amber/gold everywhere. */
.home-support-scrapsmith{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(242,184,75,.95)!important;
  background:
    linear-gradient(135deg,rgba(255,200,87,.09),transparent 42%),
    linear-gradient(180deg,#252117 0%,#15130e 100%)!important;
  box-shadow:inset 0 2px 0 rgba(255,216,130,.12),inset 0 -4px 0 rgba(0,0,0,.34),0 4px 0 #4c3007,0 9px 18px rgba(0,0,0,.42),0 0 18px rgba(242,184,75,.19)!important;
}
.home-support-scrapsmith:before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--support);box-shadow:0 0 12px rgba(255,200,87,.7)
}
.home-support-copy small{color:var(--support-bright)!important;text-shadow:0 0 8px rgba(255,200,87,.22)}
.home-support-copy strong{color:#fff1cf!important}
.home-support-copy b{color:#b8aa8d!important}
.home-support-action{
  padding:9px 11px!important;
  border:1px solid #ffd579!important;
  border-radius:4px;
  background:linear-gradient(180deg,#ffc857,#e6a62d)!important;
  color:var(--support-ink)!important;
  text-shadow:none!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.4),inset 0 -3px 0 rgba(105,61,0,.25),0 3px 0 #7d4b05,0 6px 10px rgba(0,0,0,.35);
}
.home-support-scrapsmith:hover,.home-support-scrapsmith:focus-visible{border-color:#ffd77e!important;box-shadow:inset 0 2px 0 rgba(255,216,130,.15),inset 0 -4px 0 rgba(0,0,0,.32),0 4px 0 #4c3007,0 10px 20px rgba(0,0,0,.45),0 0 24px rgba(242,184,75,.34)!important}
.home-support-scrapsmith:active{transform:translateY(3px)!important;box-shadow:inset 0 1px 0 rgba(255,216,130,.12),0 1px 0 #4c3007,0 4px 8px rgba(0,0,0,.4)!important}

.support-scrapsmith-panel{
  border-color:rgba(242,184,75,.78)!important;
  background:linear-gradient(135deg,rgba(255,200,87,.055),transparent 38%),linear-gradient(180deg,#191711,#0e0e0c)!important;
  box-shadow:inset 0 1px 0 rgba(255,224,151,.08),0 10px 22px rgba(0,0,0,.35),0 0 17px rgba(242,184,75,.08)!important;
}
.support-scrapsmith-panel .eyebrow{color:var(--support-bright)!important}
.support-contribution-total{border-color:rgba(242,184,75,.65)!important;background:rgba(78,53,12,.5)!important}
.support-contribution-total strong{color:#ffe2a3!important}.support-contribution-total span{color:#d2b36f!important}
.support-contribution-stats>div{border-color:rgba(242,184,75,.24)!important;background:rgba(39,30,13,.5)!important}
.support-contribution-stats strong{color:#ffdc91!important}.support-contribution-stats span{color:#aa976e!important}
.support-contribution-helper,.support-contribution-status{color:#aa9b7a!important}

/* Every saved photo gets an unmistakable amber contribution control immediately below it. */
.photo-contribution-row{
  border-color:rgba(242,184,75,.64)!important;
  background:linear-gradient(180deg,rgba(69,49,13,.76),rgba(28,22,11,.88))!important;
  box-shadow:inset 0 0 18px rgba(255,200,87,.035),0 5px 12px rgba(0,0,0,.22)!important;
}
.photo-contribution-row small{color:#b9aa89!important}
.contribution-photo-btn,#open-contribution-picker-btn,#contribution-picker-send-btn,#contribution-confirm-btn{
  border:1px solid #ffd77e!important;
  background:linear-gradient(180deg,#ffc857 0%,#efaD33 48%,#c98516 100%)!important;
  color:#1a1306!important;
  text-shadow:0 1px rgba(255,255,255,.28)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.42),inset 0 -4px 0 rgba(112,63,0,.25),0 4px 0 #744506,0 8px 14px rgba(0,0,0,.38),0 0 14px rgba(242,184,75,.17)!important;
}
.contribution-photo-btn:hover,.contribution-photo-btn:focus-visible,#open-contribution-picker-btn:hover,#open-contribution-picker-btn:focus-visible,
#contribution-picker-send-btn:hover,#contribution-picker-send-btn:focus-visible,#contribution-confirm-btn:hover,#contribution-confirm-btn:focus-visible{
  filter:brightness(1.06);
  border-color:#ffe29d!important;
}
.contribution-photo-btn:active:not(:disabled),#open-contribution-picker-btn:active:not(:disabled),#contribution-picker-send-btn:active:not(:disabled),#contribution-confirm-btn:active:not(:disabled){
  transform:translateY(3px)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 1px 0 #744506,0 4px 8px rgba(0,0,0,.36)!important;
}
.contribution-photo-btn.is-contributed{
  border-color:#81d69f!important;
  background:linear-gradient(180deg,#3ca762,#216d3d 52%,#15492a)!important;
  color:#effff4!important;
  text-shadow:0 1px 1px #123b22!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.18),inset 0 -3px 0 rgba(0,0,0,.28),0 3px 0 #0d341d,0 7px 12px rgba(0,0,0,.32)!important;
}

/* Contribution picker/dialog inherit the amber identity instead of looking like another blue tool. */
.contribution-picker-card,.contribution-dialog-card{border-color:rgba(242,184,75,.82)!important;box-shadow:0 18px 50px rgba(0,0,0,.7),inset 0 0 28px rgba(255,200,87,.045),0 0 20px rgba(242,184,75,.1)!important}
.contribution-picker-card .eyebrow,.contribution-dialog-card .eyebrow{color:var(--support-bright)!important}
.contribution-picker-toolbar strong{color:#e8ca89!important}
.contribution-picker-item:hover,.contribution-picker-item:focus-within{border-color:#e6ae40!important}
.contribution-picker-item.is-selected{border-color:#ffc857!important;box-shadow:0 0 0 2px rgba(242,184,75,.18),inset 0 0 20px rgba(242,184,75,.05)!important}
.contribution-picker-checkbox:checked{border-color:#ffe29d!important;background:#e5a52a!important;box-shadow:0 0 0 2px rgba(242,184,75,.12),0 2px 8px rgba(0,0,0,.5)!important}
.contribution-picker-checkbox:checked::after{color:#171006!important}
.contribution-dialog-close{border-color:#8a7446!important;color:#ffe1a0!important}

/* Clear focus language across all tactile controls. */
.primary-btn:focus-visible,.secondary-btn:focus-visible,.back-btn:focus-visible,.new-photo-btn:focus-visible,
.find-money-btn:focus-visible,.danger-btn:focus-visible,.contribution-photo-btn:focus-visible,
.history-overview-filter:focus-visible,.text-btn:focus-visible,.google-signin-btn:focus-visible,
.scan-hero:focus-visible,.home-grid .card:focus-visible,.home-support-scrapsmith:focus-visible,
.account-status-button:focus-visible{
  outline:2px solid rgba(255,255,255,.92)!important;
  outline-offset:3px;
}

@media(max-width:520px){
  .primary-btn,.secondary-btn,.new-photo-btn,.find-money-btn,.danger-btn,.contribution-photo-btn{min-height:50px}
  .home-support-action{width:100%;text-align:center}
}
@media(prefers-reduced-motion:reduce){
  .primary-btn,.secondary-btn,.back-btn,.new-photo-btn,.find-money-btn,.danger-btn,.cloud-load-action,.history-overview-filter,
  .money-photo-nav-btn,.google-signin-btn,.account-status-button,.scan-hero,.home-grid .card,.text-btn,.auth-tab,.password-toggle,
  .contribution-dialog-close,.contribution-photo-btn,.home-support-scrapsmith,.yard-favorite-btn{transition:none!important}
}


/* ScrapSmith v0.9.9.3 — Home control polish.
   Stronger machine-control depth for the main Home tools and Scan Scrap.
   Functionality and non-home surfaces are intentionally unchanged. */
body[data-page="home"] .scan-hero{
  border:1px solid #78c2ff!important;
  background:
    linear-gradient(135deg,rgba(255,255,255,.08),transparent 32%),
    linear-gradient(180deg,#172738 0%,#0a1723 48%,#050b11 100%)!important;
  box-shadow:
    inset 0 3px 0 rgba(255,255,255,.16),
    inset 0 -6px 0 rgba(0,0,0,.48),
    inset 0 0 0 1px rgba(77,170,255,.13),
    0 6px 0 #03192d,
    0 13px 23px rgba(0,0,0,.52),
    0 0 20px rgba(30,144,255,.21)!important;
}
body[data-page="home"] .scan-hero .scan-master-shell{
  filter:drop-shadow(0 5px 5px rgba(0,0,0,.7)) drop-shadow(0 0 10px rgba(30,144,255,.22));
}
body[data-page="home"] .scan-hero strong{
  color:#f8fbff;
  text-shadow:0 2px 1px #000,0 0 11px rgba(98,180,255,.2);
}
body[data-page="home"] .scan-hero:hover,
body[data-page="home"] .scan-hero:focus-visible{
  border-color:#a4d8ff!important;
  box-shadow:
    inset 0 3px 0 rgba(255,255,255,.19),inset 0 -6px 0 rgba(0,0,0,.45),
    inset 0 0 0 1px rgba(111,190,255,.18),0 6px 0 #03192d,0 14px 25px rgba(0,0,0,.54),
    0 0 27px rgba(30,144,255,.34)!important;
}
body[data-page="home"] .scan-hero:active{
  transform:translateY(4px)!important;
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,.13),inset 0 -3px 0 rgba(0,0,0,.42),
    0 2px 0 #03192d,0 6px 11px rgba(0,0,0,.48),0 0 12px rgba(30,144,255,.15)!important;
}

/* The four core Home tools read as raised controls instead of passive cards. */
body[data-page="home"] .home-grid > .card:nth-child(-n+4){
  border:1px solid #657787!important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.075),transparent 33%),
    linear-gradient(180deg,#242d35 0%,#151c23 48%,#0b1015 100%)!important;
  box-shadow:
    inset 0 3px 0 rgba(255,255,255,.12),
    inset 0 -5px 0 rgba(0,0,0,.45),
    inset 0 0 0 1px rgba(30,144,255,.055),
    0 5px 0 #060a0e,
    0 11px 19px rgba(0,0,0,.45),
    0 0 13px rgba(30,144,255,.08)!important;
}
body[data-page="home"] .home-grid > .card:nth-child(-n+4):after{
  left:13%;right:13%;height:2px;
  background:linear-gradient(90deg,transparent,#2796ff 18%,#71bfff 50%,#2796ff 82%,transparent)!important;
  box-shadow:0 0 9px rgba(30,144,255,.7)!important;
}
body[data-page="home"] .home-grid > .card:nth-child(-n+4) .master-icon-card{
  filter:drop-shadow(0 5px 5px rgba(0,0,0,.68)) drop-shadow(0 0 8px rgba(30,144,255,.2));
  transform:translateY(-1px);
}
body[data-page="home"] .home-grid > .card:nth-child(-n+4) h3{
  color:#f4f8fb;
  text-shadow:0 2px 1px rgba(0,0,0,.85);
}
body[data-page="home"] .home-grid > .card:nth-child(-n+4):hover,
body[data-page="home"] .home-grid > .card:nth-child(-n+4):focus-visible{
  border-color:#7fc5ff!important;
  filter:brightness(1.05);
  box-shadow:
    inset 0 3px 0 rgba(255,255,255,.14),inset 0 -5px 0 rgba(0,0,0,.43),
    inset 0 0 0 1px rgba(82,173,255,.11),0 5px 0 #060a0e,0 12px 21px rgba(0,0,0,.48),
    0 0 20px rgba(30,144,255,.2)!important;
}
body[data-page="home"] .home-grid > .card:nth-child(-n+4):active{
  transform:translateY(4px)!important;
  filter:brightness(.98);
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,.1),inset 0 -2px 0 rgba(0,0,0,.42),
    0 1px 0 #060a0e,0 5px 9px rgba(0,0,0,.43),0 0 8px rgba(30,144,255,.09)!important;
}

@media(max-width:430px){
  body[data-page="home"] .home-grid > .card:nth-child(-n+4){min-height:140px;padding-top:17px}
  body[data-page="home"] .scan-hero{min-height:154px}
}

/* ScrapSmith v0.9.9.4 - Industrial Depth Theme.
   Global surface pass: raised controls, recessed information wells,
   weathered steel, subtle oxidation, aged seams, and tactile depth.
   Existing feature colors and app behavior remain unchanged. */
:root{
  --rust:#a45125;
  --rust2:#6f3319;
  --rust-glow:rgba(183,82,34,.24);
  --steel-hi:#7b8791;
  --steel-mid:#27313a;
  --steel-low:#0a0e12;
  --surface-raised:inset 0 2px 0 rgba(255,255,255,.10),inset 0 -4px 0 rgba(0,0,0,.48),0 3px 0 #05080b,0 11px 24px rgba(0,0,0,.48);
  --surface-recessed:inset 0 3px 7px rgba(0,0,0,.82),inset 0 -1px 0 rgba(255,255,255,.045),0 1px 0 rgba(255,255,255,.025);
}

/* Weathered machine backdrop: restrained scratches and oxidation, never over text. */
body{
  background-image:
    radial-gradient(circle at 7% 22%,rgba(139,61,25,.15) 0 1px,transparent 7px),
    radial-gradient(circle at 92% 63%,rgba(145,64,25,.11) 0 2px,transparent 9px),
    radial-gradient(circle at 18% 86%,rgba(112,48,20,.10) 0 1px,transparent 8px),
    repeating-linear-gradient(101deg,transparent 0 23px,rgba(255,255,255,.012) 24px,transparent 25px 47px),
    radial-gradient(circle at 50% -10%,rgba(30,144,255,.12),transparent 30%),
    repeating-linear-gradient(135deg,rgba(255,255,255,.018) 0 1px,transparent 1px 7px),
    linear-gradient(180deg,#05070a,#0b0f14 45%,#05070a);
}

/* Outer machine housings: raised steel frames with lightly aged edges. */
.metal-panel:not(.weather-card):not(.support-scrapsmith-panel):not(.contribution-picker-card):not(.contribution-dialog-card),
.metal-card:not(.weather-card),
.form-card,
.result-card,
.load-summary,
.load-list-wrap,
.notice-card,
.analysis-card,
.material-result,
.cloud-load-card,
.cloud-load-library,
.cloud-scan-library,
.history-storage-management,
.saved-scan-detail,
.account-profile,
.account-facts,
.account-data-note,
.yard-profile,
.verified-yard-card,
.live-yard-card{
  border-color:#65717b!important;
  background-image:
    radial-gradient(circle at 2% 8%,rgba(161,70,28,.17) 0 1px,rgba(112,48,19,.08) 2px,transparent 8px),
    radial-gradient(circle at 97% 94%,rgba(149,64,26,.12) 0 1px,transparent 7px),
    linear-gradient(135deg,rgba(255,255,255,.065),transparent 30%),
    repeating-linear-gradient(108deg,rgba(255,255,255,.014) 0 1px,transparent 1px 8px),
    linear-gradient(180deg,#20272e 0%,#12181e 52%,#090d11 100%)!important;
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,.09),
    inset 0 -4px 0 rgba(0,0,0,.48),
    inset 0 0 0 1px rgba(161,76,35,.055),
    0 3px 0 #05080b,
    0 11px 24px rgba(0,0,0,.46),
    0 0 0 1px rgba(0,0,0,.34)!important;
}
.metal-panel:not(.weather-card):not(.support-scrapsmith-panel):not(.contribution-picker-card):not(.contribution-dialog-card):before,
.metal-card:not(.weather-card):before{
  border-color:rgba(0,0,0,.78)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 0 0 1px rgba(119,59,31,.08);
}

/* Section plates feel bolted to the machine instead of floating as flat headers. */
body:not([data-page="home"]) .section-heading{
  position:relative;
  border:1px solid #67727c!important;
  border-left:4px solid #3b86c8!important;
  background-image:
    radial-gradient(circle at 98% 20%,rgba(157,69,28,.15) 0 1px,transparent 8px),
    linear-gradient(180deg,#252c33 0%,#141a20 52%,#090d11 100%)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.09),inset 0 -4px 0 rgba(0,0,0,.48),0 3px 0 #05080b,0 9px 17px rgba(0,0,0,.43)!important;
  text-shadow:0 2px 1px #000;
}
body:not([data-page="home"]) .section-heading:after{
  content:"";
  position:absolute;
  right:9px;
  top:8px;
  width:6px;
  height:6px;
  border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#d0d5d9,#545d65 42%,#080a0c 72%);
  box-shadow:0 0 0 1px #000,0 1px 2px #000;
}

/* Information wells: values and readouts sit below the steel surface. */
input,select,textarea,
.scan-record-fields textarea,
.load-summary>div,
.saved-scan-summary>div,
.ai-result-grid>div,
.photo-facts>div,
.account-facts>div,
.cloud-load-metrics span,
.cloud-scan-metrics span,
.weather-stat,
.yard-info-block,
.material-detail-section,
.ai-guidance,
.database-match,
.scan-record-fields,
.money-action-first,
.money-target,
.money-guide-identity,
.history-breakdown-strip,
.saved-scan-breakdown,
.money-howto,
.money-step-details,
.money-continuity-gate,
.money-stopping-point{
  border-color:#3f4850!important;
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.24),transparent 14%),
    radial-gradient(circle at 96% 9%,rgba(135,56,23,.10) 0 1px,transparent 7px),
    linear-gradient(180deg,#11171c 0%,#0a0f13 100%)!important;
  box-shadow:inset 0 4px 8px rgba(0,0,0,.68),inset 0 -1px 0 rgba(255,255,255,.04),0 1px 0 rgba(255,255,255,.025)!important;
}
input:focus,select:focus,textarea:focus,.scan-record-fields textarea:focus{
  border-color:#4ca8f5!important;
  box-shadow:inset 0 4px 8px rgba(0,0,0,.68),0 0 0 2px rgba(30,144,255,.18),0 0 12px rgba(30,144,255,.12)!important;
}

/* Preserve semantic colors while keeping recessed depth. */
.load-summary .total-box{
  border-color:#258dff!important;
  background-image:linear-gradient(180deg,#102f4c,#071725)!important;
  box-shadow:inset 0 4px 9px rgba(0,0,0,.62),inset 0 0 18px rgba(30,144,255,.08)!important;
}
.money-category-best-value{border-left-color:#f3c44e!important}
.money-category-easy-recovery{border-left-color:#36db68!important}
.money-category-bulk-scrap{border-left-color:#9da6ae!important}
.money-category-usually-skip{border-left-color:#b35a55!important}
#breakdown .money-action-first.decision-remove{border-left-color:var(--success)!important}
#breakdown .money-action-first.decision-optional{border-left-color:var(--warning)!important}
#breakdown .money-action-first.decision-mission-over{border-left-color:#9da6ae!important}
#breakdown .money-action-first.decision-safety-stop{border-left-color:var(--danger)!important}

/* Photo and map openings get a deep steel bezel. */
.camera-stage,
.money-guide-photo-frame,
.saved-scan-photo-button,
.material-scale-stage,
.yard-map-frame,
.contribution-picker-photo{
  border-color:#707a82!important;
  box-shadow:
    inset 0 0 0 3px #05080a,
    inset 0 0 18px rgba(0,0,0,.72),
    0 0 0 3px #12181d,
    0 0 0 4px #4b555e,
    0 7px 18px rgba(0,0,0,.5)!important;
}

/* Dynamic cards become steel trays with an aged outer lip. */
.load-item,.history-card,.cloud-load-item,.cloud-scan-item,.contribution-picker-item{
  border-color:#59646e!important;
  background-image:
    radial-gradient(circle at 97% 10%,rgba(151,65,27,.13) 0 1px,transparent 7px),
    linear-gradient(145deg,rgba(255,255,255,.045),transparent 28%),
    linear-gradient(180deg,#20272d,#11171c 58%,#0a0e12)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.07),inset 0 -3px 0 rgba(0,0,0,.43),0 3px 0 #06090c,0 8px 14px rgba(0,0,0,.36)!important;
}
.history-card.has-active-breakdown{box-shadow:inset 3px 0 0 rgba(46,153,255,.82),inset 0 2px 0 rgba(255,255,255,.07),inset 0 -3px 0 rgba(0,0,0,.43),0 3px 0 #06090c,0 8px 14px rgba(0,0,0,.36)!important}

/* Raise every ordinary interactive control, including dynamically generated ones. */
.cloud-load-action,.cloud-scan-action,.breakdown-history-button,.material-detail-toggle,
.weather-location-result,.scan-sync-button,.auth-tab,.password-toggle,.auth-link-btn,
.money-photo-nav-btn,.contribution-dialog-close,.saved-photo-viewer button,.yard-favorite-btn{
  border-style:solid!important;
  border-width:1px!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.10),inset 0 -3px 0 rgba(0,0,0,.40),0 3px 0 #05080b,0 7px 12px rgba(0,0,0,.34)!important;
  text-shadow:0 1px 1px rgba(0,0,0,.7);
  transition:transform .08s ease,filter .12s ease,box-shadow .08s ease,border-color .12s ease;
}
.cloud-load-action:active:not(:disabled),.cloud-scan-action:active:not(:disabled),.breakdown-history-button:active:not(:disabled),
.material-detail-toggle:active:not(:disabled),.weather-location-result:active:not(:disabled),.scan-sync-button:active:not(:disabled),
.auth-tab:active:not(:disabled),.password-toggle:active:not(:disabled),.auth-link-btn:active:not(:disabled),
.money-photo-nav-btn:active:not(:disabled),.contribution-dialog-close:active:not(:disabled),.saved-photo-viewer button:active:not(:disabled),
.yard-favorite-btn:active:not(:disabled){
  transform:translateY(2px)!important;
  box-shadow:inset 0 2px 4px rgba(0,0,0,.42),0 1px 0 #05080b,0 3px 7px rgba(0,0,0,.34)!important;
}

/* Existing primary/secondary/danger colors stay intact; only physical depth is strengthened. */
.primary-btn,.secondary-btn,.back-btn,.new-photo-btn,.find-money-btn,.danger-btn,.contribution-photo-btn{
  border-top-color:rgba(255,255,255,.42)!important;
  border-bottom-color:rgba(0,0,0,.82)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.16),inset 0 -5px 0 rgba(0,0,0,.34),0 4px 0 #05080b,0 9px 15px rgba(0,0,0,.40)!important;
}
.primary-btn:active:not(:disabled),.secondary-btn:active:not(:disabled),.back-btn:active:not(:disabled),
.new-photo-btn:active:not(:disabled),.find-money-btn:active:not(:disabled),.danger-btn:active:not(:disabled),.contribution-photo-btn:active:not(:disabled){
  transform:translateY(3px)!important;
  box-shadow:inset 0 2px 5px rgba(0,0,0,.42),0 1px 0 #05080b,0 4px 8px rgba(0,0,0,.36)!important;
}

/* Compact wear marks on rails, filters, and bottom navigation. */
.history-overview,
.bottom-nav,
.money-photo-nav,
.auth-tabs{
  background-image:
    radial-gradient(circle at 4% 20%,rgba(145,62,25,.13) 0 1px,transparent 7px),
    linear-gradient(180deg,#1c2329,#0a0f13)!important;
  border-color:#5c6770!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.075),inset 0 -4px 0 rgba(0,0,0,.48),0 -2px 0 rgba(0,0,0,.38),0 6px 15px rgba(0,0,0,.34)!important;
}
.bottom-nav button{
  box-shadow:inset 1px 0 0 rgba(255,255,255,.025),inset -1px 0 0 rgba(0,0,0,.45);
  text-shadow:0 1px 1px #000;
}
.bottom-nav button.active{
  box-shadow:inset 0 4px 9px rgba(0,0,0,.58),inset 1px 0 0 rgba(255,255,255,.025),inset -1px 0 0 rgba(0,0,0,.45)!important;
}

/* Contribution amber is retained, now with an aged brass/steel housing. */
.home-support-scrapsmith,.support-scrapsmith-panel,.photo-contribution-row,.contribution-picker-card,.contribution-dialog-card{
  background-image:
    radial-gradient(circle at 2% 10%,rgba(151,72,26,.18) 0 1px,transparent 8px),
    radial-gradient(circle at 96% 90%,rgba(113,48,18,.12) 0 1px,transparent 7px),
    linear-gradient(135deg,rgba(255,200,87,.07),transparent 38%),
    linear-gradient(180deg,#211c12,#0e0d0a)!important;
}
.photo-contribution-row{
  box-shadow:inset 0 4px 8px rgba(0,0,0,.58),inset 0 -1px 0 rgba(255,225,154,.05),0 2px 0 rgba(79,45,8,.5)!important;
}

/* Weather photography remains untouched; only its steel frame gains mass. */
.weather-card{
  border-color:#6b879d!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.09),inset 0 -5px 0 rgba(0,0,0,.45),0 4px 0 #05080b,0 11px 22px rgba(0,0,0,.48),0 0 15px rgba(30,144,255,.10)!important;
}
.weather-current,.weather-connect-card,.weather-location-card{
  border-color:#66717a!important;
}

/* Account status reads like a mounted instrument on the machine. */
.account-status-button{
  border-color:#69747d!important;
  background-image:
    radial-gradient(circle at 97% 18%,rgba(148,62,25,.13) 0 1px,transparent 7px),
    linear-gradient(180deg,#252d34,#11171c)!important;
}
.account-avatar,.confidence-shell,.money-target-number,.ready-pill,.status-chip,.verified-yard-badge,.scan-sync-badge{
  box-shadow:inset 0 2px 3px rgba(255,255,255,.08),inset 0 -3px 5px rgba(0,0,0,.48),0 2px 4px rgba(0,0,0,.45)!important;
}

/* Small worn seams give the app age without sacrificing readability. */
.list-heading,.cloud-load-heading,.cloud-scan-library-heading,.weather-current-top,.analysis-status,.money-worth-heading{
  border-bottom-color:#39434b!important;
  box-shadow:0 1px 0 rgba(118,59,31,.10);
}

@media(max-width:520px){
  .metal-panel:not(.weather-card):not(.support-scrapsmith-panel):not(.contribution-picker-card):not(.contribution-dialog-card),
  .metal-card:not(.weather-card),.form-card,.result-card,.load-summary,.load-list-wrap,.analysis-card,.material-result{
    box-shadow:inset 0 2px 0 rgba(255,255,255,.08),inset 0 -3px 0 rgba(0,0,0,.45),0 2px 0 #05080b,0 8px 17px rgba(0,0,0,.42)!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .cloud-load-action,.cloud-scan-action,.breakdown-history-button,.material-detail-toggle,.weather-location-result,.scan-sync-button,
  .auth-tab,.password-toggle,.auth-link-btn,.money-photo-nav-btn,.contribution-dialog-close,.saved-photo-viewer button,.yard-favorite-btn{transition:none!important}
}

/* ScrapSmith v0.9.9.5 - Full Machine Surface + Control Hierarchy Pass.
   Goal: every page reads as one physical scrapyard instrument panel.
   Raised = actionable. Recessed = information/input. Rust/aging stays at edges and seams. */
:root{
  --ss-rust:#78391f;
  --ss-rust-hot:#a85a31;
  --ss-steel-hi:#727d86;
  --ss-steel-mid:#303840;
  --ss-steel-low:#0a0e12;
  --ss-cavity:#080c10;
  --ss-blue-edge:#5db5ff;
  --ss-raised-shadow:inset 0 2px 0 rgba(255,255,255,.15),inset 0 -5px 0 rgba(0,0,0,.42),0 4px 0 #05080b,0 10px 18px rgba(0,0,0,.46);
  --ss-recessed-shadow:inset 0 5px 11px rgba(0,0,0,.76),inset 0 -1px 0 rgba(255,255,255,.045),0 1px 0 rgba(255,255,255,.025);
}

/* The page itself becomes a steel chassis instead of empty black space. */
.page.active{
  background-image:
    radial-gradient(circle at 1.5% 10%,rgba(151,70,31,.12) 0 1px,transparent 8px),
    radial-gradient(circle at 98% 75%,rgba(121,52,23,.09) 0 1px,transparent 9px),
    linear-gradient(90deg,rgba(255,255,255,.012),transparent 3%,transparent 97%,rgba(0,0,0,.16));
}
body:not([data-page="home"]) .page.active{
  border-left:1px solid rgba(83,94,104,.22);
  border-right:1px solid rgba(0,0,0,.38);
}

/* Major housings: raised steel frame, dark lower lip, edge-only oxidation. */
.hero-panel,.form-card,.result-card,.load-summary,.load-list-wrap,.notice-card,.analysis-card,
.material-result,.cloud-load-card,.cloud-load-library,.cloud-scan-library,.history-storage-management,
.saved-scan-detail,.account-profile,.account-facts,.account-data-note,.yard-profile,.verified-yard-card,
.live-yard-card,.weather-current,.weather-connect-card,.weather-location-card,.money-result-panel,
.auth-panel,.camera-permission-details,.material-detail-panel,.find-money-entry,.find-money-hazard,
.money-safety-stop,.breakdown-resume-card{
  border-color:#68737c!important;
  background-image:
    radial-gradient(circle at 1.5% 7%,rgba(168,90,49,.16) 0 1px,rgba(120,57,31,.06) 2px,transparent 9px),
    radial-gradient(circle at 98.5% 94%,rgba(130,55,25,.12) 0 1px,transparent 8px),
    linear-gradient(165deg,rgba(255,255,255,.065),transparent 22%),
    repeating-linear-gradient(108deg,rgba(255,255,255,.012) 0 1px,transparent 1px 9px),
    linear-gradient(180deg,#252d34 0%,#151b21 50%,#0a0e12 100%)!important;
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,.10),
    inset 0 -5px 0 rgba(0,0,0,.48),
    inset 0 0 0 1px rgba(140,68,35,.05),
    0 3px 0 #05080b,
    0 10px 20px rgba(0,0,0,.44),
    0 0 0 1px rgba(0,0,0,.35)!important;
}

/* Information cavities: visibly sunk below the surrounding metal. */
input,select,textarea,
.load-summary>div,.saved-scan-summary>div,.ai-result-grid>div,.photo-facts>div,.account-facts>div,
.cloud-load-metrics span,.cloud-scan-metrics span,.weather-stat,.yard-info-block,.material-detail-section,
.ai-guidance,.database-match,.scan-record-fields,.money-action-first,.money-target,.money-guide-identity,
.history-breakdown-strip,.saved-scan-breakdown,.money-howto,.money-step-details,.money-continuity-gate,
.money-stopping-point,.support-contribution-stats>div,.support-contribution-total,.contribution-picker-item-copy{
  border-color:#3b444c!important;
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.34),transparent 20%),
    linear-gradient(180deg,#0d1318 0%,#070b0f 100%)!important;
  box-shadow:var(--ss-recessed-shadow)!important;
}
input,select,textarea{
  border-top-color:#252c32!important;
  border-bottom-color:#59636b!important;
  color:#f3f6f8!important;
}
input::placeholder,textarea::placeholder{color:#77818a!important}
input:focus,select:focus,textarea:focus{
  border-color:#4ca8f5!important;
  box-shadow:inset 0 5px 11px rgba(0,0,0,.74),0 0 0 2px rgba(30,144,255,.18),0 0 14px rgba(30,144,255,.14)!important;
}

/* Photo, material-scale and map openings are deep machine windows. */
.camera-stage,.money-guide-photo-frame,.saved-scan-photo-button,.material-scale-stage,.yard-map-frame,.contribution-picker-photo{
  border-color:#747e86!important;
  box-shadow:
    inset 0 0 0 4px #030507,
    inset 0 0 23px rgba(0,0,0,.82),
    0 0 0 3px #11171c,
    0 0 0 5px #424c54,
    0 4px 0 #05080b,
    0 11px 22px rgba(0,0,0,.50)!important;
}

/* Dynamic records are raised removable steel trays. */
.load-item,.history-card,.cloud-load-item,.cloud-scan-item,.contribution-picker-item,.material-suggestion{
  border-color:#616c75!important;
  background-image:
    radial-gradient(circle at 98% 8%,rgba(158,70,30,.14) 0 1px,transparent 7px),
    linear-gradient(155deg,rgba(255,255,255,.055),transparent 25%),
    linear-gradient(180deg,#222a31,#12181e 58%,#090d11)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.08),inset 0 -4px 0 rgba(0,0,0,.45),0 3px 0 #05080b,0 8px 15px rgba(0,0,0,.38)!important;
}

/* Section titles and labels are engraved/mounted, not floating typography. */
body:not([data-page="home"]) .section-heading{
  border-top-color:#7b858d!important;
  border-right-color:#4a535b!important;
  border-bottom-color:#1f252a!important;
  border-left:4px solid #3198eb!important;
  background-image:
    radial-gradient(circle at 98% 16%,rgba(166,73,31,.15) 0 1px,transparent 7px),
    linear-gradient(180deg,#2b333a,#151b20 52%,#090d11)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.11),inset 0 -5px 0 rgba(0,0,0,.46),0 4px 0 #05080b,0 10px 18px rgba(0,0,0,.42)!important;
}
label,.eyebrow,.account-kicker,.money-suggestion-heading,.money-worth-heading{
  text-shadow:0 1px 0 #000,0 -1px 0 rgba(255,255,255,.025);
}

/* PRIMARY = raised illuminated blue machine controls. */
.primary-btn,.find-money-btn{
  border:1px solid #7ac5ff!important;
  border-top-color:#b8e1ff!important;
  border-bottom-color:#02366d!important;
  background-image:
    linear-gradient(180deg,rgba(255,255,255,.16),transparent 22%),
    linear-gradient(180deg,#2799ff 0%,#0e6fd9 46%,#064b9c 74%,#04366f 100%)!important;
  color:#fff!important;
  text-shadow:0 2px 1px rgba(0,0,0,.72)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.30),inset 0 -5px 0 rgba(0,0,0,.30),0 5px 0 #032850,0 11px 18px rgba(0,0,0,.45),0 0 14px rgba(30,144,255,.18)!important;
}
.primary-btn:hover,.primary-btn:focus-visible,.find-money-btn:hover,.find-money-btn:focus-visible{filter:brightness(1.08)}
.primary-btn:active:not(:disabled),.find-money-btn:active:not(:disabled){
  transform:translateY(4px)!important;
  box-shadow:inset 0 4px 7px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.14),0 1px 0 #032850,0 4px 8px rgba(0,0,0,.38)!important;
}

/* BACK is deliberately SECONDARY: steel body + blue locator edge, not another primary CTA. */
.back-btn{
  border:1px solid #737e87!important;
  border-left:4px solid #3198eb!important;
  border-top-color:#9ba5ad!important;
  border-bottom-color:#11171c!important;
  background-image:
    radial-gradient(circle at 97% 14%,rgba(151,64,28,.11) 0 1px,transparent 7px),
    linear-gradient(180deg,#3a444d 0%,#252d34 48%,#12181d 100%)!important;
  color:#f1f4f6!important;
  text-shadow:0 2px 1px #000!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.15),inset 0 -5px 0 rgba(0,0,0,.42),0 4px 0 #06090c,0 9px 15px rgba(0,0,0,.40)!important;
}
.back-btn:active:not(:disabled):active:not(:disabled){
  transform:translateY(3px)!important;
  box-shadow:inset 0 4px 7px rgba(0,0,0,.44),0 1px 0 #06090c,0 4px 7px rgba(0,0,0,.35)!important;
}

/* SECONDARY/UTILITY = raised weathered gunmetal. */
.secondary-btn,.cloud-load-action,.cloud-scan-action,.breakdown-history-button,.material-detail-toggle,
.weather-location-result,.scan-sync-button,.auth-tab,.password-toggle,.money-photo-nav-btn,.yard-favorite-btn,
.google-signin-btn:not(.google-signin-btn),.contribution-dialog-close,.saved-photo-viewer button{
  border:1px solid #78838c!important;
  border-top-color:#9aa4ac!important;
  border-bottom-color:#11161b!important;
  background-image:
    radial-gradient(circle at 97% 12%,rgba(157,69,29,.12) 0 1px,transparent 7px),
    linear-gradient(180deg,#3b454e 0%,#252d34 50%,#12171c 100%)!important;
  color:#eef2f5!important;
  text-shadow:0 1px 1px #000!important;
  box-shadow:var(--ss-raised-shadow)!important;
}
.secondary-btn:active:not(:disabled),.cloud-load-action:active:not(:disabled),.cloud-scan-action:active:not(:disabled),
.breakdown-history-button:active:not(:disabled),.material-detail-toggle:active:not(:disabled),.weather-location-result:active:not(:disabled),
.scan-sync-button:active:not(:disabled),.auth-tab:active:not(:disabled),.password-toggle:active:not(:disabled),
.money-photo-nav-btn:active:not(:disabled),.yard-favorite-btn:active:not(:disabled),.contribution-dialog-close:active:not(:disabled),
.saved-photo-viewer button:active:not(:disabled){
  transform:translateY(3px)!important;
  box-shadow:inset 0 4px 7px rgba(0,0,0,.45),0 1px 0 #05080b,0 4px 8px rgba(0,0,0,.34)!important;
}

/* Text-style controls are still physical switches, just lower priority. */
.text-btn,.auth-link-btn,.remove-btn,.cloud-refresh-btn{
  border:1px solid #56616a!important;
  border-top-color:#78838c!important;
  border-bottom-color:#10151a!important;
  border-radius:4px!important;
  padding:8px 11px!important;
  background-image:linear-gradient(180deg,#2b333a,#151b20)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),inset 0 -3px 0 rgba(0,0,0,.38),0 3px 0 #06090b,0 6px 9px rgba(0,0,0,.30)!important;
}
.text-btn:active:not(:disabled),.auth-link-btn:active:not(:disabled),.remove-btn:active:not(:disabled){transform:translateY(2px)!important}

/* Selected toggles feel physically pressed into the panel. */
.history-overview,.auth-tabs,.money-photo-nav{
  border-color:#59646d!important;
  background-image:linear-gradient(180deg,#151b20,#080c10)!important;
  box-shadow:inset 0 5px 10px rgba(0,0,0,.58),inset 0 -1px 0 rgba(255,255,255,.04),0 3px 0 #05080b!important;
}
.history-overview-filter,.auth-tab{
  box-shadow:inset 0 2px 0 rgba(255,255,255,.10),inset 0 -4px 0 rgba(0,0,0,.34),0 3px 0 #05080b,0 6px 9px rgba(0,0,0,.30)!important;
}
.history-overview-filter.is-active,.auth-tab.active{
  border-color:#4ea7ef!important;
  background-image:linear-gradient(180deg,#0c3558,#071e33)!important;
  box-shadow:inset 0 5px 9px rgba(0,0,0,.66),inset 0 0 12px rgba(30,144,255,.10),0 1px 0 rgba(255,255,255,.035)!important;
  transform:translateY(2px);
}

/* Green camera action stays semantic but uses the same forged geometry. */
.new-photo-btn{
  border-top-color:#b1ffc1!important;
  border-bottom-color:#06451a!important;
  background-image:linear-gradient(180deg,#46df66 0%,#23ae42 50%,#116c29 100%)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.28),inset 0 -5px 0 rgba(0,0,0,.30),0 5px 0 #073d17,0 10px 16px rgba(0,0,0,.42),0 0 12px rgba(54,219,104,.15)!important;
}

/* Danger = raised red hardware; destructive utility buttons join the same family. */
.danger-btn,.breakdown-remove-photo-btn,#clear-history-btn,.cloud-load-action.delete,.cloud-scan-action.delete{
  border-color:#ff8178!important;
  border-top-color:#ffaaa4!important;
  border-bottom-color:#48110f!important;
  background-image:linear-gradient(180deg,#d84b44 0%,#9d2d29 52%,#621816 100%)!important;
  color:#fff!important;
  text-shadow:0 2px 1px rgba(0,0,0,.72)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.20),inset 0 -5px 0 rgba(0,0,0,.31),0 4px 0 #3e0e0c,0 9px 15px rgba(0,0,0,.40),0 0 9px rgba(255,73,63,.12)!important;
}

/* Contribution hardware keeps its dedicated amber/brass identity and gains a deeper lower lip. */
.contribution-photo-btn,#open-contribution-picker-btn,#contribution-picker-send-btn,#contribution-confirm-btn,.home-support-action{
  border-top-color:#fff0ba!important;
  border-bottom-color:#6d4105!important;
  background-image:linear-gradient(180deg,#ffd46b 0%,#efad33 48%,#c27a12 100%)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.40),inset 0 -5px 0 rgba(100,55,0,.28),0 5px 0 #704305,0 10px 16px rgba(0,0,0,.40),0 0 12px rgba(242,184,75,.15)!important;
}

/* Google remains intentionally recognizable, but behaves like a raised physical key. */
.google-signin-btn{
  border:1px solid #f8fafc!important;
  border-bottom-color:#87939d!important;
  background-image:linear-gradient(180deg,#fff 0%,#e6ebef 56%,#c9d1d8 100%)!important;
  color:#15191d!important;
  text-shadow:none!important;
  box-shadow:inset 0 2px 0 #fff,inset 0 -4px 0 rgba(0,0,0,.12),0 4px 0 #7c8891,0 9px 15px rgba(0,0,0,.35)!important;
}

/* Bottom navigation = a row of individual instrument wells. */
.bottom-nav{
  border-top-color:#7a848c!important;
  background-image:
    radial-gradient(circle at 3% 10%,rgba(144,61,26,.10) 0 1px,transparent 8px),
    linear-gradient(180deg,#20272d,#090d11)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.08),inset 0 5px 12px rgba(0,0,0,.25),0 -3px 0 #05080b,0 -10px 20px rgba(0,0,0,.43)!important;
}
.bottom-nav button{
  border-left:1px solid rgba(116,127,137,.16)!important;
  border-right:1px solid rgba(0,0,0,.62)!important;
  background-image:linear-gradient(180deg,rgba(255,255,255,.025),rgba(0,0,0,.16))!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.025),inset 0 -3px 0 rgba(0,0,0,.33)!important;
}
.bottom-nav button.active{
  background-image:linear-gradient(180deg,#0b2236,#07121d)!important;
  box-shadow:inset 0 6px 11px rgba(0,0,0,.70),inset 0 0 13px rgba(30,144,255,.08),inset 1px 0 0 rgba(255,255,255,.03)!important;
}

/* Home and account launch plates remain raised, with the same forged lip as the rest of the app. */
.scan-hero,.home-grid .card,.account-status-button,.home-support-scrapsmith{
  border-top-color:#7b8790!important;
  border-bottom-color:#11161a!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.12),inset 0 -6px 0 rgba(0,0,0,.45),0 5px 0 #05080b,0 12px 21px rgba(0,0,0,.46)!important;
}
.scan-hero:active,.home-grid .card:active,.account-status-button:active,.home-support-scrapsmith:active{
  transform:translateY(4px)!important;
  box-shadow:inset 0 4px 8px rgba(0,0,0,.42),0 1px 0 #05080b,0 5px 9px rgba(0,0,0,.38)!important;
}

/* Weather stays photographic; its data modules become recessed gauges in a steel console. */
.weather-card{
  border-top-color:#9bb8cc!important;
  border-bottom-color:#142432!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.09),inset 0 -6px 0 rgba(0,0,0,.48),0 5px 0 #05080b,0 12px 22px rgba(0,0,0,.48),0 0 16px rgba(30,144,255,.10)!important;
}
.weather-stat{border-top-color:#272f35!important;border-bottom-color:#4c5861!important}

/* Find the Money reads like a service bay console: outer frame raised, advice/targets recessed. */
.money-result-panel{
  box-shadow:inset 0 2px 0 rgba(255,255,255,.10),inset 0 -5px 0 rgba(0,0,0,.48),0 4px 0 #05080b,0 12px 22px rgba(0,0,0,.46)!important;
}
.money-action-first,.money-target,.money-guide-identity,.money-howto,.money-step-details,.money-continuity-gate,.money-stopping-point{
  border-top-color:#252d33!important;
  border-bottom-color:#4f5961!important;
}
.money-current-step-chip,.money-decision-chip,.money-howto-status,.money-identity-level,.money-hazard-chip,.ready-pill,.status-chip,.verified-yard-badge,.scan-sync-badge{
  box-shadow:inset 0 3px 5px rgba(0,0,0,.48),inset 0 -1px 0 rgba(255,255,255,.08),0 2px 3px rgba(0,0,0,.34)!important;
}

/* Account/readout rows and scan details get a stronger machined bezel. */
.account-facts,.saved-scan-summary,.ai-result-grid,.load-summary,.weather-stat-grid{
  gap:10px!important;
}
.account-facts>div,.saved-scan-summary>div,.ai-result-grid>div,.load-summary>div,.weather-stat{
  outline:1px solid rgba(0,0,0,.60);
  outline-offset:-4px;
}

/* Dialogs float as heavy removable inspection plates. */
.contribution-picker-card,.contribution-dialog-card{
  border-top-color:#ffe29d!important;
  border-bottom-color:#5b3b0a!important;
  box-shadow:inset 0 2px 0 rgba(255,231,176,.12),inset 0 -6px 0 rgba(0,0,0,.42),0 7px 0 #3f2807,0 20px 50px rgba(0,0,0,.72),0 0 21px rgba(242,184,75,.10)!important;
}

/* Disabled controls stay physical instead of disappearing. */
button:disabled{
  opacity:.48!important;
  filter:saturate(.5) brightness(.8);
  box-shadow:inset 0 3px 7px rgba(0,0,0,.52),0 1px 0 rgba(255,255,255,.025)!important;
  transform:none!important;
}

/* Mobile touch geometry: substantial controls without wasting vertical space. */
@media(max-width:520px){
  .primary-btn,.secondary-btn,.new-photo-btn,.find-money-btn,.danger-btn,.contribution-photo-btn,.back-btn{min-height:50px}
  .compact{min-height:46px!important}
  .page{padding-left:12px;padding-right:12px}
  .account-facts>div,.saved-scan-summary>div,.ai-result-grid>div,.load-summary>div{outline-offset:-3px}
}
@media(prefers-reduced-motion:reduce){
  .primary-btn,.secondary-btn,.back-btn,.new-photo-btn,.find-money-btn,.danger-btn,.contribution-photo-btn,
  .cloud-load-action,.cloud-scan-action,.breakdown-history-button,.material-detail-toggle,.weather-location-result,
  .scan-sync-button,.auth-tab,.password-toggle,.money-photo-nav-btn,.yard-favorite-btn,.text-btn,.auth-link-btn,
  .remove-btn,.scan-hero,.home-grid .card,.account-status-button,.home-support-scrapsmith{transition:none!important}
}


/* v0.9.9.6 — ScrapSmith Exit Guard
   Browser Back / Android back gestures are intercepted with one same-page
   history sentinel so an accidental exit requires explicit confirmation. */
.exit-guard-dialog{
  position:fixed;
  inset:0;
  z-index:4000;
  display:grid;
  place-items:center;
  padding:22px 14px calc(22px + env(safe-area-inset-bottom));
  background:
    radial-gradient(circle at 50% 42%,rgba(30,144,255,.12),transparent 34%),
    rgba(0,0,0,.84);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}
.exit-guard-dialog[hidden]{display:none!important}
body.exit-guard-open{overflow:hidden!important}
.exit-guard-card{
  width:min(100%,520px);
  padding:26px 20px 20px;
  text-align:center;
  border:1px solid #707982!important;
  border-top-color:#aeb5bb!important;
  border-bottom-color:#2a1c17!important;
  border-radius:7px!important;
  background:
    radial-gradient(circle at 8% 10%,rgba(154,69,31,.10) 0 2px,transparent 3px),
    radial-gradient(circle at 92% 88%,rgba(128,58,28,.09) 0 2px,transparent 3px),
    repeating-linear-gradient(115deg,rgba(255,255,255,.018) 0 1px,transparent 1px 7px),
    linear-gradient(180deg,#242a30 0%,#151a1f 48%,#0a0e12 100%)!important;
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,.16),
    inset 0 -6px 0 rgba(0,0,0,.55),
    inset 0 0 0 5px rgba(0,0,0,.22),
    0 7px 0 #050708,
    0 24px 60px rgba(0,0,0,.8),
    0 0 24px rgba(30,144,255,.12)!important;
}
.exit-guard-card:before{
  content:"";
  position:absolute;
  inset:7px;
  pointer-events:none;
  border:1px solid rgba(0,0,0,.78);
  border-radius:4px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.exit-guard-warning-mark{
  position:relative;
  z-index:1;
  width:62px;
  height:62px;
  margin:0 auto 15px;
  display:grid;
  place-items:center;
  border:1px solid #f0c46a;
  border-radius:50%;
  background:radial-gradient(circle at 35% 28%,#4b3c20,#21190d 58%,#090a0b 100%);
  color:#ffc857;
  font-size:2rem;
  font-weight:900;
  text-shadow:0 1px 0 #000,0 0 10px rgba(255,200,87,.6);
  box-shadow:
    inset 0 2px 2px rgba(255,235,185,.25),
    inset 0 -4px 7px #000,
    0 3px 0 #08090a,
    0 0 16px rgba(242,184,75,.22);
}
.exit-guard-card h2{
  position:relative;
  z-index:1;
  margin:0;
  color:#f3f5f7;
  font-size:clamp(1.3rem,5vw,1.72rem);
  line-height:1.1;
  text-transform:uppercase;
  letter-spacing:.055em;
  text-shadow:0 2px 0 #000;
}
.exit-guard-card p{
  position:relative;
  z-index:1;
  max-width:420px;
  margin:12px auto 18px;
  color:#c6ccd2;
  font-family:Arial,sans-serif;
  font-size:.94rem;
  line-height:1.5;
}
.exit-guard-actions{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:11px;
}
.exit-guard-actions .primary-btn,
.exit-guard-actions .danger-btn{
  min-height:54px;
  margin:0!important;
}
.exit-guard-leave-btn{
  border-color:#ff6a62!important;
  background:linear-gradient(180deg,#a9322d 0%,#7d1f1b 48%,#4c100e 100%)!important;
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,.18),
    inset 0 -5px 0 rgba(42,4,3,.72),
    0 5px 0 #2b0806,
    0 9px 16px rgba(0,0,0,.52),
    0 0 13px rgba(255,73,63,.18)!important;
}
.exit-guard-leave-btn:active{
  transform:translateY(4px)!important;
  box-shadow:inset 0 4px 8px rgba(0,0,0,.62),0 1px 0 #2b0806!important;
}
@media(max-width:430px){
  .exit-guard-card{padding:23px 16px 17px}
  .exit-guard-actions{grid-template-columns:1fr}
  .exit-guard-actions .primary-btn,.exit-guard-actions .danger-btn{min-height:52px}
}


/* v0.9.9.8 — owner-only ScrapSmith photo contribution review */
.owner-admin-access{
  margin:18px 0;padding:17px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 16px;align-items:center;
  border-color:#4e769b;background:
    linear-gradient(135deg,rgba(255,255,255,.045),transparent 34%),
    repeating-linear-gradient(115deg,rgba(255,255,255,.018) 0 1px,transparent 1px 7px),
    linear-gradient(180deg,#17212b,#0a0f14);
  box-shadow:inset 0 1px rgba(255,255,255,.12),inset 0 -4px 8px rgba(0,0,0,.66),0 10px 22px rgba(0,0,0,.48),0 0 0 1px rgba(30,144,255,.12);
}
.owner-admin-access:after{content:"";position:absolute;left:12px;right:12px;bottom:7px;height:1px;background:linear-gradient(90deg,transparent,#1e90ff,transparent);opacity:.72;box-shadow:0 0 8px rgba(30,144,255,.55)}
.owner-admin-access-copy h3{margin:2px 0 5px;text-transform:uppercase;letter-spacing:.055em}.owner-admin-access-copy p:last-child{margin:0;color:var(--muted);font-family:Arial,sans-serif;font-size:.84rem;line-height:1.4}
.owner-admin-access-count{min-width:96px;text-align:center;padding:10px;border:1px solid #3d4b58;background:#090d11;box-shadow:inset 0 4px 10px #000,inset 0 0 0 1px rgba(255,255,255,.025)}
.owner-admin-access-count strong,.owner-admin-access-count span{display:block}.owner-admin-access-count strong{color:var(--warning);font-size:1.5rem}.owner-admin-access-count span{margin-top:3px;color:var(--muted);font-family:Arial,sans-serif;font-size:.68rem}
.owner-admin-access .primary-btn{grid-column:1/-1;margin:0}

.admin-contribution-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:0 0 14px}
.admin-contribution-filter{min-height:70px;padding:10px;border:1px solid #4d5660;background:linear-gradient(180deg,#2b3239,#12171c);color:#e9edf0;text-transform:uppercase;font-weight:900;box-shadow:inset 0 1px rgba(255,255,255,.14),inset 0 -4px 6px rgba(0,0,0,.62),0 6px 12px rgba(0,0,0,.35)}
.admin-contribution-filter:active{transform:translateY(2px);box-shadow:inset 0 3px 7px #000}
.admin-contribution-filter.is-active{border-color:#45a4ff;background:linear-gradient(180deg,#173c60,#09233a);box-shadow:inset 0 3px 7px rgba(0,0,0,.62),0 0 12px rgba(30,144,255,.24)}
.admin-contribution-filter span,.admin-contribution-filter strong{display:block}.admin-contribution-filter span{font-size:.68rem;letter-spacing:.08em}.admin-contribution-filter strong{margin-top:4px;font-size:1.25rem;color:#fff}

.admin-review-console{padding:16px;border-radius:5px}.admin-review-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:13px;border-bottom:1px solid #3f4851}.admin-review-toolbar h3{margin:2px 0 0;text-transform:uppercase}.admin-review-toolbar .secondary-btn{width:auto;min-width:104px;margin:0}
.admin-contributions-list{display:grid;gap:15px;margin-top:15px}.admin-contribution-card{padding:12px;display:grid;grid-template-columns:minmax(170px,38%) minmax(0,1fr);gap:14px;border-radius:5px}
.admin-contribution-photo-shell{position:relative;min-height:205px;overflow:hidden;border:1px solid #58616a;background:#020405;box-shadow:inset 0 0 0 5px #0c1116,inset 0 0 0 6px #3f4851,inset 0 12px 24px #000,0 4px 10px #000}
.admin-contribution-photo-shell img{display:block;width:100%;height:100%;min-height:205px;object-fit:contain;background:#020405}.admin-contribution-photo-state{position:absolute;inset:0;display:grid;place-items:center;padding:18px;text-align:center;color:var(--muted);font-family:Arial,sans-serif;font-size:.8rem}
.admin-contribution-photo-shell:not(.is-loading):not(.is-missing) .admin-contribution-photo-state{display:none}.admin-contribution-photo-shell.is-missing .admin-contribution-photo-state{color:var(--danger)}.admin-contribution-photo-shell.is-missing .admin-contribution-photo-state:before{content:"Contribution photo unavailable"}.admin-contribution-photo-shell.is-missing .admin-contribution-photo-state{font-size:0}.admin-contribution-photo-shell.is-missing .admin-contribution-photo-state:before{font-size:.8rem}
.admin-contribution-body{min-width:0}.admin-contribution-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.admin-contribution-topline h3{margin:7px 0 4px;text-transform:uppercase}.admin-contribution-topline p{margin:0;color:var(--muted);font-family:Arial,sans-serif;font-size:.82rem}.admin-contribution-topline time{flex:0 0 auto;color:var(--muted);font-family:Arial,sans-serif;font-size:.7rem;text-align:right}
.admin-review-status{display:inline-block;padding:5px 8px;border:1px solid #8b7135;background:rgba(242,184,75,.08);color:#ffc857;font-size:.64rem;font-weight:900;letter-spacing:.08em}.admin-review-status-approved{border-color:rgba(54,219,104,.5);background:rgba(54,219,104,.08);color:var(--success)}.admin-review-status-rejected{border-color:rgba(255,73,63,.5);background:rgba(255,73,63,.08);color:var(--danger)}
.admin-contribution-facts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.admin-contribution-facts>div{min-width:0;padding:9px;border:1px solid #3e4750;background:#090d11;box-shadow:inset 0 3px 8px #000}.admin-contribution-facts span,.admin-contribution-facts strong{display:block}.admin-contribution-facts span{color:var(--muted);font-family:Arial,sans-serif;font-size:.64rem;text-transform:uppercase;letter-spacing:.06em}.admin-contribution-facts strong{margin-top:4px;font-family:Arial,sans-serif;font-size:.78rem;overflow-wrap:anywhere}.admin-contribution-targets{margin:10px 0 0;padding:9px;border-left:3px solid #f2b84b;background:#0b0f13;color:#d7dce1;font-family:Arial,sans-serif;font-size:.8rem}
.admin-contribution-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.admin-review-action{min-height:46px;border-radius:3px;color:white;font-weight:900;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.18),inset 0 -3px 5px rgba(0,0,0,.6),0 5px 10px rgba(0,0,0,.34)}.admin-review-action:active{transform:translateY(2px);box-shadow:inset 0 3px 7px #000}.admin-approve-btn{border:1px solid #62e681;background:linear-gradient(180deg,#2baa4a,#116225)}.admin-reject-btn{border:1px solid #ffc857;background:linear-gradient(180deg,#9c6c19,#5d3d08)}.admin-delete-btn{border:1px solid #ff6b64;background:linear-gradient(180deg,#8d2925,#501311)}
body[data-page="admin-contributions"] .bottom-nav{display:none}

@media(max-width:620px){.admin-contribution-card{grid-template-columns:1fr}.admin-contribution-photo-shell,.admin-contribution-photo-shell img{min-height:240px}.admin-contribution-topline{flex-direction:column}.admin-contribution-topline time{text-align:left}.admin-contribution-facts{grid-template-columns:1fr 1fr}}
@media(max-width:430px){.admin-contribution-overview{gap:6px}.admin-contribution-filter{min-height:64px;padding:8px 4px}.admin-contribution-filter span{font-size:.58rem}.admin-contribution-facts{grid-template-columns:1fr}.admin-contribution-actions{grid-template-columns:1fr}.owner-admin-access{grid-template-columns:1fr}.owner-admin-access-count{width:100%}}


/* v0.9.9.9 — owner dataset review: high-functioning, low-friction, ground-truth curation */
.admin-ground-truth-note{margin:0 0 12px;padding:12px 14px;border-left:4px solid #45a4ff;background:linear-gradient(180deg,#111922,#080d12)}
.admin-ground-truth-note strong{display:block;color:#7fc2ff;letter-spacing:.08em;font-size:.76rem}.admin-ground-truth-note p{margin:5px 0 0;color:var(--muted);font-family:Arial,sans-serif;font-size:.78rem;line-height:1.45}
.admin-contribution-overview{grid-template-columns:repeat(4,1fr)}
.admin-contribution-filter[data-admin-status="held"].is-active{border-color:#f2b84b;background:linear-gradient(180deg,#574019,#2b1b06);box-shadow:inset 0 3px 7px rgba(0,0,0,.62),0 0 12px rgba(242,184,75,.2)}
.admin-review-search-wrap{margin:12px 0 4px;padding:10px;border:1px solid #3e4750;background:#080c10;box-shadow:inset 0 4px 10px #000}.admin-review-search-wrap label{margin:0 0 7px}.admin-review-search-wrap input{min-height:48px}
.admin-review-status-held{border-color:#f2b84b!important;color:#ffd276!important;background:rgba(113,77,12,.26)!important}.admin-review-status-approved{color:#6ef08d!important}.admin-review-status-rejected{color:#ff9b70!important}
.admin-label-comparison{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.admin-label-comparison-heading{grid-column:1/-1;display:flex;justify-content:space-between;gap:10px;padding:8px 10px;border-bottom:1px solid #414a53;background:#0a0f14}.admin-label-comparison-heading strong{color:#dfe7ee;font-size:.72rem;letter-spacing:.08em}.admin-label-comparison-heading span{color:#62b4ff;font-size:.66rem;font-weight:900;letter-spacing:.06em;text-align:right}
.admin-label-column{min-width:0;padding:10px;border:1px solid #3c454e;background:#080c10;box-shadow:inset 0 5px 12px #000}.admin-label-column h4{margin:0 0 8px;color:#aeb8c1;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.admin-label-column>div{padding:6px 0;border-top:1px solid #20272e}.admin-label-column>div:first-of-type{border-top:0}.admin-label-column span,.admin-label-column strong{display:block}.admin-label-column span{color:#7f8a94;font-family:Arial,sans-serif;font-size:.6rem;text-transform:uppercase}.admin-label-column strong{margin-top:2px;font-family:Arial,sans-serif;font-size:.76rem;overflow-wrap:anywhere}.admin-label-reviewed.is-ground-truth{border-color:rgba(54,219,104,.45);box-shadow:inset 0 5px 12px #000,0 0 10px rgba(54,219,104,.08)}.admin-label-column .is-corrected strong{color:#ffc857}.admin-label-column .is-corrected:after{content:"CORRECTED";display:inline-block;margin-top:4px;color:#ffc857;font-size:.55rem;font-weight:900;letter-spacing:.08em}
.admin-last-review{margin-top:10px;padding:10px 12px;border-left:3px solid #62b4ff;background:#090d11}.admin-last-review>strong,.admin-last-review>span{display:block}.admin-last-review>strong{color:#7fc2ff;font-size:.68rem;letter-spacing:.08em}.admin-last-review>span{margin-top:3px;color:#9aa5af;font-family:Arial,sans-serif;font-size:.68rem}.admin-last-review p{margin:7px 0 0;color:#cbd3da;font-family:Arial,sans-serif;font-size:.78rem;line-height:1.4}.admin-owner-note{padding:8px;border:1px solid #2f3841;background:#06090c}.admin-review-history{margin-top:8px;color:#aeb8c1;font-family:Arial,sans-serif;font-size:.72rem}.admin-review-history summary{cursor:pointer;color:#7fc2ff;font-weight:800}.admin-review-history ol{margin:8px 0 0;padding-left:20px}.admin-review-history li{margin:7px 0}.admin-review-history small{display:block;margin-top:2px;color:#929ca5}
.admin-correct-btn{border:1px solid #62b4ff;background:linear-gradient(180deg,#1769ae,#0b355b)}.admin-hold-btn{border:1px solid #ffc857;background:linear-gradient(180deg,#9f6d17,#5b3a06)}
.admin-review-editor{grid-column:1/-1;margin-top:12px;padding:12px;border:1px solid #5b6670;background:linear-gradient(180deg,#11171d,#070a0e);box-shadow:inset 0 0 0 4px #090d11,inset 0 0 0 5px #2d353d,0 8px 18px #000}.admin-review-editor-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.admin-review-editor-heading strong,.admin-review-editor-heading span{display:block}.admin-review-editor-heading strong{color:#62b4ff;letter-spacing:.08em}.admin-review-editor-heading span{margin-top:3px;color:#9aa5af;font-family:Arial,sans-serif;font-size:.72rem}.admin-review-editor-close{width:38px;height:38px;border:1px solid #69737d;background:linear-gradient(#303740,#151a20);color:#fff;font-size:1.3rem;font-weight:900;box-shadow:inset 0 1px rgba(255,255,255,.15),inset 0 -3px 5px #000}.admin-review-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.admin-review-editor label{margin:11px 0 0}.admin-review-editor input,.admin-review-editor select,.admin-review-editor textarea{margin-top:6px;background:linear-gradient(#171c22,#0b0f13);box-shadow:inset 0 4px 9px #000}.admin-review-editor textarea{width:100%;resize:vertical;color:#fff;border:1px solid #59616a;border-radius:3px;padding:12px;font:inherit;line-height:1.4}.admin-review-editor-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}.admin-review-editor-actions .secondary-btn{margin:0;min-height:46px}.admin-review-editor-message{min-height:18px;margin:8px 0 0;color:#ffc857;font-family:Arial,sans-serif;font-size:.76rem}
.admin-contribution-photo-shell img{content-visibility:auto}.admin-contribution-card.admin-status-held{border-color:rgba(242,184,75,.44)}.admin-contribution-card.admin-status-approved{border-color:rgba(54,219,104,.36)}
@media(max-width:620px){.admin-contribution-overview{grid-template-columns:1fr 1fr}.admin-label-comparison{grid-template-columns:1fr}.admin-label-comparison-heading{grid-column:1}.admin-review-editor-grid{grid-template-columns:1fr}.admin-review-editor-actions{grid-template-columns:1fr 1fr}}
@media(max-width:430px){.admin-contribution-filter{min-height:68px}.admin-review-editor-actions{grid-template-columns:1fr}.admin-label-comparison-heading{flex-direction:column}.admin-label-comparison-heading span{text-align:left}}


/* v0.9.10.0 - owner admin fast review: compact mobile cards, quick actions, collapsed audit detail */
.admin-contribution-card-compact{
  grid-template-columns:160px minmax(0,1fr);
  gap:12px;
  padding:10px;
  align-items:start;
}
.admin-contribution-photo-compact{
  min-height:0;
  height:160px;
  cursor:zoom-in;
  touch-action:manipulation;
}
.admin-contribution-photo-compact img{
  min-height:0;
  height:100%;
  object-fit:contain;
}
.admin-photo-zoom-hint{
  position:absolute;
  left:8px;
  right:8px;
  bottom:7px;
  z-index:3;
  padding:5px 7px;
  border:1px solid rgba(98,180,255,.4);
  background:rgba(3,8,13,.82);
  color:#a8d6ff;
  font-family:Arial,sans-serif;
  font-size:.6rem;
  font-weight:800;
  letter-spacing:.04em;
  text-align:center;
  text-transform:uppercase;
  opacity:.92;
}
.admin-contribution-photo-shell.is-loading .admin-photo-zoom-hint,
.admin-contribution-photo-shell.is-missing .admin-photo-zoom-hint{display:none}
.admin-contribution-body-compact{align-self:stretch}
.admin-contribution-identity{min-width:0}
.admin-contribution-identity h3{font-size:1rem;line-height:1.15}
.admin-compact-review-summary{
  margin-top:9px;
  padding:9px 10px;
  border:1px solid #34404b;
  border-left:3px solid #62b4ff;
  background:linear-gradient(180deg,#0d141b,#070b0f);
  box-shadow:inset 0 3px 8px #000;
}
.admin-compact-review-approved{border-left-color:#36db68}
.admin-compact-review-held{border-left-color:#f2b84b}
.admin-compact-review-rejected{border-left-color:#ff6b64}
.admin-compact-review-label,.admin-compact-review-value,.admin-compact-review-detail{display:block}
.admin-compact-review-label{color:#8fcaff;font-size:.58rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.admin-compact-review-approved .admin-compact-review-label{color:#6ef08d}
.admin-compact-review-held .admin-compact-review-label{color:#ffd276}
.admin-compact-review-rejected .admin-compact-review-label{color:#ff9b70}
.admin-compact-review-value{margin-top:3px;color:#f4f7f9;font-size:.9rem;line-height:1.2}
.admin-compact-review-detail{margin-top:3px;color:#a6b0ba;font-family:Arial,sans-serif;font-size:.68rem;line-height:1.32;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.admin-compact-review-meta{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}
.admin-compact-review-meta span{min-width:0;padding:6px 7px;border:1px solid #2b343d;background:#06090c;color:#d7dce1;font-family:Arial,sans-serif;font-size:.66rem;overflow-wrap:anywhere}
.admin-compact-review-meta b{display:block;margin-bottom:2px;color:#77838e;font-size:.54rem;letter-spacing:.06em;text-transform:uppercase}
.admin-contribution-actions-fast{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:9px}
.admin-contribution-actions-fast .admin-review-action{min-height:42px;padding:7px 6px;font-size:.65rem;line-height:1.15}
.admin-contribution-details{
  grid-column:1/-1;
  margin:0;
  border-top:1px solid #313a43;
  background:#070a0e;
}
.admin-contribution-details>summary{
  position:relative;
  cursor:pointer;
  list-style:none;
  min-height:42px;
  display:flex;
  align-items:center;
  padding:10px 36px 10px 12px;
  color:#9fabb5;
  font-family:Arial,sans-serif;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  user-select:none;
}
.admin-contribution-details>summary::-webkit-details-marker{display:none}
.admin-contribution-details>summary:after{
  content:"+";
  position:absolute;
  right:12px;
  top:50%;
  transform:translateY(-50%);
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border:1px solid #4b5660;
  background:#111820;
  color:#62b4ff;
  font-size:1rem;
  line-height:1;
}
.admin-contribution-details[open]>summary:after{content:"-"}
.admin-contribution-details[open]>summary{color:#dbe3ea;background:#0b1117}
.admin-contribution-details-inner{padding:0 10px 10px}
.admin-contribution-details .admin-contribution-facts{margin-top:0}
.admin-contribution-danger-zone{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:12px;
  padding:9px;
  border:1px solid rgba(255,73,63,.32);
  background:rgba(92,18,15,.14);
}
.admin-contribution-danger-zone>span{color:#cfa39f;font-family:Arial,sans-serif;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em}
.admin-contribution-danger-zone .admin-delete-btn{width:auto;min-width:190px;min-height:42px;padding:8px 12px}
.admin-review-editor{grid-column:1/-1}
.admin-review-editor.is-hold-mode{border-color:#b88626;box-shadow:inset 0 0 0 4px #090d11,inset 0 0 0 5px #5a421a,0 8px 18px #000}
.admin-review-editor.is-hold-mode .admin-review-editor-heading strong{color:#ffc857}

@media(max-width:620px){
  .admin-contribution-card-compact{grid-template-columns:118px minmax(0,1fr);gap:9px;padding:9px}
  .admin-contribution-photo-compact,.admin-contribution-photo-compact img{height:118px;min-height:0}
  .admin-contribution-topline{display:block}
  .admin-contribution-topline time{display:block;margin-top:4px;font-size:.6rem;text-align:left}
  .admin-review-status{font-size:.55rem;padding:4px 6px}
  .admin-contribution-identity h3{margin-top:5px;font-size:.92rem}
  .admin-contribution-identity p{font-size:.7rem}
  .admin-compact-review-summary{margin-top:7px;padding:7px 8px}
  .admin-compact-review-value{font-size:.82rem}
  .admin-compact-review-meta{grid-template-columns:1fr;gap:4px}
  .admin-compact-review-meta span{padding:4px 6px;font-size:.61rem}
  .admin-contribution-actions-fast{grid-template-columns:1fr 1fr}
  .admin-contribution-actions-fast .admin-review-action{min-height:40px;font-size:.61rem}
  .admin-contribution-actions-fast .admin-hold-btn:last-child{grid-column:1/-1}
  .admin-photo-zoom-hint{font-size:.53rem;padding:4px}
  .admin-contribution-details-inner{padding:0 8px 8px}
  .admin-contribution-details .admin-label-comparison{grid-template-columns:1fr}
  .admin-contribution-details .admin-label-comparison-heading{grid-column:1}
  .admin-contribution-danger-zone{align-items:stretch;flex-direction:column}
  .admin-contribution-danger-zone .admin-delete-btn{width:100%;min-width:0}
}
@media(max-width:390px){
  .admin-contribution-card-compact{grid-template-columns:104px minmax(0,1fr);gap:8px;padding:8px}
  .admin-contribution-photo-compact,.admin-contribution-photo-compact img{height:104px}
  .admin-contribution-identity h3{font-size:.85rem}
  .admin-compact-review-detail{-webkit-line-clamp:1}
  .admin-contribution-actions-fast{grid-template-columns:1fr}
  .admin-contribution-actions-fast .admin-hold-btn:last-child{grid-column:auto}
  .admin-contribution-actions-fast .admin-review-action{min-height:39px}
}


/* =========================================================
   v0.9.11.0 - MILO'S GAME PLAN + SMART BINS
   Progressive disclosure: one decision first; details on tap.
   ========================================================= */
.game-plan-entry{
  margin:12px 0 14px;padding:14px;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;
  border:1px solid rgba(68,157,244,.58);border-radius:8px;background:linear-gradient(145deg,rgba(14,31,47,.96),rgba(7,13,19,.98));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 8px 18px rgba(0,0,0,.24)
}
.game-plan-entry[hidden]{display:none!important}.game-plan-entry h3{margin:2px 0 4px;text-transform:uppercase}.game-plan-entry p:not(.eyebrow){margin:0;color:#8fa3b4;font:400 .78rem/1.4 Arial,sans-serif}
.game-plan-btn{min-height:44px;padding:10px 13px;border:1px solid #62b4ff;border-radius:5px;background:linear-gradient(#1d6fb4,#0d4779);color:#fff;font-weight:900;text-transform:uppercase;white-space:nowrap;box-shadow:inset 0 1px rgba(255,255,255,.15),0 3px 0 #062e50}
.game-plan-btn:active{transform:translateY(2px);box-shadow:inset 0 1px rgba(255,255,255,.12),0 1px 0 #062e50}

.game-plan-page{padding-bottom:110px}.game-plan-heading{margin-bottom:12px}.game-plan-context{padding:13px 15px;border-radius:8px;display:grid;gap:3px}.game-plan-context>span{color:#62b4ff;font:900 .62rem/1 Arial,sans-serif;letter-spacing:.09em}.game-plan-context>strong{font-size:1.05rem;text-transform:uppercase}.game-plan-context>small{color:#92a2af;font:400 .75rem/1.35 Arial,sans-serif}
.game-plan-settings{margin-top:12px;border-radius:8px;overflow:hidden}.game-plan-settings>summary,.smart-bins-panel>summary,.game-plan-detail>summary{list-style:none;cursor:pointer}.game-plan-settings>summary::-webkit-details-marker,.smart-bins-panel>summary::-webkit-details-marker,.game-plan-detail>summary::-webkit-details-marker{display:none}
.game-plan-settings>summary{min-height:54px;padding:12px 42px 12px 14px;position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#10171e}
.game-plan-settings>summary:after,.smart-bins-panel>summary:after,.game-plan-detail>summary:after{content:"›";position:absolute;right:15px;top:50%;transform:translateY(-50%);color:#63b5ff;font-size:1.45rem;font-weight:900;transition:transform .16s ease}
.game-plan-settings[open]>summary:after,.smart-bins-panel[open]>summary:after,.game-plan-detail[open]>summary:after{transform:translateY(-50%) rotate(90deg)}
.game-plan-settings>summary span{color:#62b4ff;font:900 .66rem/1 Arial,sans-serif;letter-spacing:.08em}.game-plan-settings>summary strong{max-width:68%;color:#cbd6df;font:700 .68rem/1.3 Arial,sans-serif;text-align:right}
.game-plan-settings-body{padding:13px}.game-plan-choice-group{margin:0 0 14px;padding:0;border:0}.game-plan-choice-group:last-child{margin-bottom:0}.game-plan-choice-group legend{margin:0 0 7px;color:#a9b8c4;font:800 .7rem/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.05em}.game-plan-choice-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.game-plan-choice-row button{min-height:43px;padding:8px 5px;border:1px solid #48545f;border-radius:5px;background:linear-gradient(#242c34,#151b21);color:#b7c3cc;font:800 .72rem/1.15 Arial,sans-serif;text-transform:uppercase}.game-plan-choice-row button.is-selected{border-color:#5eb2ff;background:linear-gradient(#155c95,#0b3e69);color:#fff;box-shadow:0 0 0 2px rgba(30,144,255,.12),inset 0 1px rgba(255,255,255,.12)}

.game-plan-result{margin-top:12px;padding:17px;border-radius:9px;border-color:rgba(69,158,243,.62)}.game-plan-result[hidden]{display:none!important}.game-plan-decision{display:inline-flex;margin:2px 0 10px;padding:5px 9px;border:1px solid #5eb2ff;border-radius:999px;background:#0b3558;color:#b8ddff;font:900 .68rem/1 Arial,sans-serif;letter-spacing:.08em}.game-plan-result h2{margin:0;color:#f2f6f9;font-size:1.45rem;text-transform:uppercase}.game-plan-call-copy{margin:7px 0 0;color:#9aacb9;font:400 .86rem/1.45 Arial,sans-serif}.game-plan-primary-action{margin-top:15px;width:100%;min-height:48px}.game-plan-result.tone-accumulate .game-plan-decision{border-color:#65c5a2;background:#103c31;color:#b9f0dc}.game-plan-result.tone-safety{border-color:rgba(255,99,99,.7)}.game-plan-result.tone-safety .game-plan-decision{border-color:#ff7777;background:#4b1717;color:#ffd0d0}.game-plan-result.tone-breakdown .game-plan-decision{border-color:#83c7ff;background:#123f63;color:#d4ecff}.game-plan-result.tone-prep .game-plan-decision{border-color:#82b9e7;background:#17344b;color:#d4eaff}
.game-plan-bin-add{margin-top:12px;padding:12px;border:1px solid #3e5364;border-radius:6px;background:#091017}.game-plan-bin-add[hidden]{display:none!important}.game-plan-bin-add label{margin:0 0 7px}.game-plan-bin-row{display:grid;grid-template-columns:1fr auto;gap:8px}.game-plan-bin-row input{min-width:0}.game-plan-bin-add small{display:block;margin-top:6px;color:#8295a5;font:400 .68rem/1.3 Arial,sans-serif}
.game-plan-details-stack{display:grid;gap:8px;margin-top:14px}.game-plan-detail{border:1px solid #36434e;border-radius:6px;background:#090f14;overflow:hidden}.game-plan-detail>summary{position:relative;padding:12px 40px 12px 12px;color:#c3ced7;font:800 .76rem/1 Arial,sans-serif;text-transform:uppercase}.game-plan-detail[open]>summary{color:#9ed0ff;background:#0d1720}.game-plan-detail ul,.game-plan-detail p{margin:0;padding:2px 14px 13px;color:#a5b3be;font:400 .78rem/1.5 Arial,sans-serif}.game-plan-detail ul{padding-left:31px}.game-plan-detail li+li{margin-top:5px}.game-plan-safety-detail[open]{border-color:#5b4b37}
.saved-scan-game-plan{margin-top:10px;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #3f6686;border-radius:6px;background:#0b141c}.saved-scan-game-plan h3{margin:2px 0 0!important;color:#dce8f2!important;font-size:.92rem!important}.saved-scan-game-plan .eyebrow{margin:0}.saved-scan-game-plan button{flex:0 0 auto;margin:0}

.smart-bins-panel{margin-top:12px;border-radius:8px;overflow:hidden}.smart-bins-panel>summary{position:relative;min-height:58px;padding:11px 42px 11px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(#151d24,#0d1318)}.smart-bins-panel>summary span{display:grid;gap:3px}.smart-bins-panel>summary small{color:#62b4ff;font:900 .62rem/1 Arial,sans-serif;letter-spacing:.09em}.smart-bins-panel>summary strong{color:#e0e8ee;font-size:.86rem;text-transform:uppercase}.smart-bins-panel>summary>b{color:#a9bac7;font:800 .72rem/1.2 Arial,sans-serif;text-align:right}.smart-bins-body{padding:11px}.smart-bins-empty{margin:2px 0;color:#8798a5;font:400 .78rem/1.4 Arial,sans-serif;text-align:center}.smart-bins-empty[hidden]{display:none!important}.smart-bins-list{display:grid;gap:8px}.smart-bin-card{padding:11px;border:1px solid #3b4751;border-radius:6px;background:linear-gradient(#171e24,#0c1116)}.smart-bin-main{display:flex;align-items:center;justify-content:space-between;gap:10px}.smart-bin-main>div{display:grid;gap:3px}.smart-bin-main span{color:#65b6ff;font:900 .58rem/1 Arial,sans-serif;letter-spacing:.08em}.smart-bin-main strong{font-size:.92rem;text-transform:uppercase}.smart-bin-main>b{color:#eaf4fc;font-size:1.15rem;white-space:nowrap}.smart-bin-actions{display:grid;grid-template-columns:1fr 1fr auto;gap:7px;margin-top:10px}.smart-bin-actions .secondary-btn{margin:0;min-height:39px;padding:8px}.smart-bin-empty{align-self:center;padding:7px}.smart-bin-empty:disabled{opacity:.35}

@media(max-width:560px){
  .game-plan-entry{grid-template-columns:1fr}.game-plan-btn{width:100%}.game-plan-choice-row{gap:5px}.game-plan-choice-row button{font-size:.66rem;padding:7px 3px}.game-plan-settings>summary{align-items:flex-start;flex-direction:column}.game-plan-settings>summary strong{max-width:88%;text-align:left}.saved-scan-game-plan{align-items:stretch;flex-direction:column}.saved-scan-game-plan button{width:100%}.smart-bins-panel>summary{align-items:flex-start;flex-direction:column}.smart-bins-panel>summary>b{text-align:left}.smart-bin-actions{grid-template-columns:1fr 1fr}.smart-bin-actions .smart-bin-empty{grid-column:1/-1;justify-self:center}
}
@media(prefers-reduced-motion:reduce){.game-plan-settings>summary:after,.smart-bins-panel>summary:after,.game-plan-detail>summary:after{transition:none!important}}


/* v0.9.11.1 — Field UX: one-hand hierarchy, swipeable actions, progressive disclosure */
:root{--field-touch:58px}

/* Scan result: answer first, actions second, reading on demand. */
.field-result-panel{padding:12px!important;overflow:hidden}
.field-result-hero{padding:4px 2px 2px}
.field-result-status{padding:5px 3px 13px;border-bottom:1px solid #34404a}
.field-result-title{min-width:0}.field-result-title .eyebrow{margin-bottom:4px}.field-result-title h3{font-size:clamp(1.25rem,5vw,1.65rem);line-height:1.05;overflow-wrap:anywhere}
.field-result-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:11px 0 3px}
.field-result-facts>div{min-width:0;padding:9px 8px;border:1px solid #303b45;border-radius:5px;background:#0a1015}
.field-result-facts span{display:block;margin-bottom:4px;color:#748797;font:800 .59rem/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.06em}
.field-result-facts strong{display:block;color:#e4ebf0;font:800 .76rem/1.25 Arial,sans-serif;overflow-wrap:anywhere}

.field-action-rail{display:flex;gap:10px;margin:12px -2px 5px;padding:0 2px 8px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.field-action-rail::-webkit-scrollbar{display:none}
.field-action-card{flex:0 0 min(86%,390px);min-width:0;min-height:136px;margin:0!important;padding:14px!important;scroll-snap-align:start;display:flex!important;flex-direction:column;justify-content:space-between;gap:12px;border:1px solid #3f5364!important;border-radius:8px!important;background:linear-gradient(145deg,#101a23,#080d12)!important;box-shadow:inset 0 1px rgba(255,255,255,.06),0 7px 18px rgba(0,0,0,.35)!important}
.field-action-card[hidden]{display:none!important}
.field-action-card .eyebrow{margin-bottom:5px}.field-action-card h3{margin:0 0 4px!important;color:#eef5fb!important;font-size:1.07rem!important}.field-action-card p:not(.eyebrow){margin:0!important;color:#8fa1af!important;font:400 .79rem/1.35 Arial,sans-serif!important}
.field-action-button{width:100%;min-height:var(--field-touch)!important;padding:12px 14px!important;display:flex;align-items:center;justify-content:space-between;border:1px solid #388ed6!important;border-radius:5px!important;background:linear-gradient(#185f99,#0b3e68)!important;color:#fff!important;font-size:.88rem!important;font-weight:900!important;text-transform:uppercase;letter-spacing:.035em;box-shadow:inset 0 1px rgba(255,255,255,.13),0 3px 0 #052b49!important}
.field-action-button span{font-size:1.55rem;line-height:.8}.field-action-button:active{transform:translateY(2px)}
.field-swipe-cue{margin:0 0 8px;color:#627685;font:700 .64rem/1 Arial,sans-serif;text-align:center;text-transform:uppercase;letter-spacing:.08em}
.field-action-rail:not(:has(#game-plan-entry:not([hidden]))):not(:has(#find-money-entry:not([hidden]))) + .field-swipe-cue{display:none}
.field-action-rail:not(:has(#game-plan-entry:not([hidden]))):has(#find-money-entry:not([hidden])) + .field-swipe-cue{display:none}
.field-action-rail:has(#game-plan-entry:not([hidden])):not(:has(#find-money-entry:not([hidden]))) + .field-swipe-cue{display:none}

.field-confirm-material{margin:9px 0 10px;padding:10px 11px;border:1px solid #34414b;border-radius:6px;background:#0a1015}.field-confirm-material label{margin:0 0 7px;color:#7f93a2;font-size:.65rem}.field-confirm-material select{min-height:52px}
.field-details-stack{display:grid;gap:7px;margin:8px 0 0}
.field-detail{position:relative;border:1px solid #34414b;border-radius:6px;background:#080d12;overflow:hidden}
.field-detail>summary{position:relative;min-height:54px;padding:15px 44px 14px 13px;list-style:none;cursor:pointer;color:#cbd6df;font:800 .78rem/1.25 Arial,sans-serif;text-transform:uppercase;letter-spacing:.025em;touch-action:manipulation}
.field-detail>summary::-webkit-details-marker{display:none}.field-detail>summary:after{content:"›";position:absolute;right:16px;top:50%;transform:translateY(-50%);color:#62b4ff;font-size:1.45rem;font-weight:900;transition:transform .14s ease}.field-detail[open]>summary:after{transform:translateY(-50%) rotate(90deg)}
.field-detail[open]>summary{background:#0c151d;color:#9fd2ff}.field-detail>p,.field-detail>ul,.field-detail>.database-match-body{margin:0;padding:2px 14px 14px;color:#9fadb8;font:400 .8rem/1.5 Arial,sans-serif}.field-detail>ul{padding-left:31px}.field-detail li+li{margin-top:5px}.field-detail-safety[open]{border-color:#594a38}.field-detail-safety[open]>summary{color:#f3c878}.field-save-detail>summary small{margin-left:6px;color:#718594;font-size:.62rem}.field-save-detail .scan-record-fields{margin:0;padding:2px 13px 13px;border:0;background:transparent}.field-save-detail .scan-record-fields label:first-child{margin-top:4px}
#database-match.field-detail{margin:0;padding:0;background:#080d12;box-shadow:none}#database-match.field-detail:before{display:none}.database-match-body{padding-top:3px!important}.database-match-body .db-heading{margin-bottom:9px}
.field-save-scan{min-height:var(--field-touch);margin-top:12px!important}

/* Game Plan: one question at a time, then one dominant answer. */
.game-plan-page{padding-bottom:110px}.game-plan-heading{margin-bottom:8px!important}.game-plan-heading p{margin-bottom:0!important}
.game-plan-item-bar{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:4px 4px 12px;border-bottom:1px solid #2d3943}.game-plan-item-bar strong{min-width:0;color:#f0f5f8;font-size:1.05rem;text-transform:uppercase;overflow-wrap:anywhere}.game-plan-item-bar small{flex:0 1 45%;color:#7890a1;font:700 .7rem/1.25 Arial,sans-serif;text-align:right;overflow-wrap:anywhere}
.game-plan-wizard{margin-top:12px;padding:14px;border-radius:9px;overflow:hidden}
.game-plan-wizard[hidden]{display:none!important}.game-plan-progress{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:8px;max-width:320px;margin:0 auto 16px}.game-plan-progress span{width:38px;height:38px;display:grid;place-items:center;border:1px solid #3b4650;border-radius:50%;background:#171e24;color:#8294a2;font:900 .83rem/1 Arial,sans-serif}.game-plan-progress span.is-active{border-color:#48a6ff;background:#0f64ae;color:#fff;box-shadow:0 0 0 4px rgba(30,144,255,.09)}.game-plan-progress span.is-complete{border-color:#326b98;color:#82c4ff;background:#0b2840}.game-plan-progress i{height:2px;background:#2b3740}
.game-plan-wizard-stage{min-height:390px;touch-action:pan-y}.game-plan-step[hidden]{display:none!important}.game-plan-step-count{display:block;margin-bottom:8px;color:#62b4ff;font:900 .66rem/1 Arial,sans-serif;letter-spacing:.1em}.game-plan-step h2{margin:0;color:#f4f7f9;font-size:clamp(1.45rem,6vw,1.9rem);line-height:1.05}.game-plan-step>p{margin:7px 0 14px;color:#8fa0ad;font:400 .84rem/1.35 Arial,sans-serif}
.game-plan-option-stack{display:grid;gap:9px}.game-plan-option-stack button{position:relative;min-height:76px;padding:13px 45px 13px 14px;border:1px solid #3b4853;border-radius:7px;background:linear-gradient(#1a2229,#0d1318);color:#dce5eb;text-align:left;touch-action:manipulation}.game-plan-option-stack button strong,.game-plan-option-stack button small{display:block}.game-plan-option-stack button strong{font-size:1rem;text-transform:uppercase}.game-plan-option-stack button small{margin-top:5px;color:#8698a6;font:400 .74rem/1.3 Arial,sans-serif}.game-plan-option-stack button b{position:absolute;right:15px;top:50%;transform:translateY(-50%);color:#62b4ff;font-size:1.6rem}.game-plan-option-stack button.is-selected{border-color:#4aa6ff;background:linear-gradient(#144b75,#0a2e4b);box-shadow:0 0 0 2px rgba(30,144,255,.1),inset 0 1px rgba(255,255,255,.1)}.game-plan-option-stack button:active{transform:scale(.99)}
.game-plan-wizard-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}.game-plan-wizard-footer .secondary-btn{width:auto;min-width:128px;min-height:52px;margin:0}.game-plan-wizard-footer small{margin-left:auto;color:#617582;font:700 .65rem/1.3 Arial,sans-serif;text-align:right}

.game-plan-result{margin-top:12px;padding:0!important;border-radius:9px;overflow:hidden}.game-plan-result[hidden]{display:none!important}.game-plan-plan-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid #34414b;background:#0b1218}.game-plan-plan-strip>div{min-width:0;display:grid;gap:4px}.game-plan-plan-strip span{color:#62b4ff;font:900 .61rem/1 Arial,sans-serif;letter-spacing:.08em}.game-plan-plan-strip strong{color:#b9c7d1;font:800 .68rem/1.3 Arial,sans-serif;overflow-wrap:anywhere}.game-plan-plan-strip button{flex:0 0 auto;min-height:44px;padding:0 3px;border:0;background:transparent;color:#62b4ff;font:900 .75rem/1 Arial,sans-serif;text-transform:uppercase;touch-action:manipulation}
.game-plan-call-hero{padding:18px 15px 16px}.game-plan-call-hero .eyebrow{margin-bottom:8px}.game-plan-decision{margin:0 0 9px!important}.game-plan-result h2{font-size:clamp(1.45rem,6vw,1.95rem);line-height:1.05}.game-plan-call-copy{max-width:540px;font-size:.84rem!important;line-height:1.4!important}.game-plan-primary-action{min-height:62px;margin-top:15px!important;font-size:.98rem!important}
.game-plan-bin-add{margin:0 14px 12px!important}.game-plan-details-stack{gap:7px;margin:0 14px 14px!important}.game-plan-detail>summary{min-height:54px;display:flex;align-items:center;padding:13px 42px 13px 12px;font-size:.75rem!important}.game-plan-detail ul,.game-plan-detail p{font-size:.79rem!important}

/* Smart Bins stay out of the way until there is actual stored material. */
.smart-bins-panel[hidden]{display:none!important}.smart-bins-panel{margin-top:12px!important}.smart-bins-panel>summary{min-height:62px!important;padding:11px 48px 11px 14px!important}.smart-bins-panel>summary span{gap:4px!important}.smart-bins-panel>summary small{font-size:.61rem!important}.smart-bins-panel>summary strong{font-size:.9rem!important}.smart-bins-panel>summary>b{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:#62b4ff!important;font-size:1.55rem!important;transition:transform .14s ease}.smart-bins-panel[open]>summary>b{transform:translateY(-50%) rotate(90deg)}
.smart-bins-panel>summary:after{display:none!important}.smart-bins-list{gap:7px!important}.smart-bin-card{padding:0!important;overflow:hidden}.smart-bin-card>summary{list-style:none;position:relative;min-height:62px;padding:11px 44px 11px 12px;display:flex;align-items:center;gap:10px;cursor:pointer}.smart-bin-card>summary::-webkit-details-marker{display:none}.smart-bin-main>div{min-width:0;display:grid;gap:4px;flex:1}.smart-bin-main span{color:#6d8291;font:800 .58rem/1 Arial,sans-serif;letter-spacing:.08em}.smart-bin-main strong{color:#e4ebf0;font-size:.9rem;overflow-wrap:anywhere}.smart-bin-main b{margin-left:auto;color:#9ed2ff;font-size:.92rem;white-space:nowrap}.smart-bin-main i{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:#62b4ff;font-style:normal;font-size:1.45rem;transition:transform .14s ease}.smart-bin-card[open] .smart-bin-main i{transform:translateY(-50%) rotate(90deg)}.smart-bin-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;padding:0 10px 10px!important}.smart-bin-actions .primary-btn,.smart-bin-actions .secondary-btn{min-height:54px!important;margin:0!important}.smart-bin-actions .smart-bin-empty{grid-column:1/-1;min-height:44px;padding:8px}

/* Tablet / desktop: keep touch rhythm but let paired action cards sit together. */
@media(min-width:700px){
  .game-plan-page{max-width:760px;margin-inline:auto}.game-plan-wizard{padding:18px}.game-plan-option-stack{grid-template-columns:repeat(3,minmax(0,1fr))}.game-plan-option-stack button{min-height:118px;padding:16px 36px 16px 14px}.game-plan-wizard-stage{min-height:260px}
}
@media(min-width:980px){
  .field-action-rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;padding-bottom:2px}.field-action-card{width:auto;max-width:none;min-height:150px}.field-swipe-cue{display:none}
}
@media(max-width:520px){
  .field-result-facts{grid-template-columns:1fr}.field-result-facts>div{display:grid;grid-template-columns:76px minmax(0,1fr);gap:8px;align-items:center}.field-result-facts span{margin:0}.field-action-card{flex-basis:88%}.confidence-shell{width:50px;height:50px}
  .game-plan-item-bar{align-items:flex-start;flex-direction:column;gap:3px}.game-plan-item-bar small{max-width:none;text-align:left}.game-plan-wizard{padding:12px}.game-plan-wizard-stage{min-height:375px}.game-plan-wizard-footer small{font-size:.61rem}.game-plan-plan-strip{align-items:flex-start}.game-plan-plan-strip strong{font-size:.64rem}.game-plan-call-hero{padding:16px 13px 14px}.game-plan-bin-row{grid-template-columns:1fr}.game-plan-bin-row .secondary-btn{min-height:54px}
}
@media(max-width:360px){.field-action-card{flex-basis:94%}.game-plan-option-stack button{min-height:70px}.game-plan-wizard-footer small{display:none}}

/* =========================================================
   v0.9.11.2 — FIELD TOUCH UX
   Bigger glove-friendly disclosure rows, clearer hierarchy,
   one-open-at-a-time details, and obvious swipe/tap navigation.
   ========================================================= */
:root{--field-touch:68px;--field-row:72px;--field-gap:11px}

/* Scan Result — reduce aiming. Every disclosure header is a real thumb target. */
.field-result-panel{padding:10px!important}
.field-info-label,.game-plan-more-label{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin:17px 2px 9px;padding:0 2px;color:#7b8f9e;font-family:Arial,sans-serif;
  text-transform:uppercase;letter-spacing:.07em
}
.field-info-label strong,.game-plan-more-label strong{color:#a9b9c6;font-size:.72rem}
.field-info-label span,.game-plan-more-label span{font-size:.65rem;text-align:right}
.field-details-stack{gap:var(--field-gap);margin:0}
.field-detail{
  border-color:#46535e;border-radius:8px;background:linear-gradient(180deg,#111820,#080d12);
  box-shadow:inset 0 1px rgba(255,255,255,.045),0 4px 10px rgba(0,0,0,.24)
}
.field-detail>summary{
  min-height:var(--field-row);display:flex;align-items:center;
  padding:0 60px 0 18px;color:#e1e8ed;font-size:.91rem;font-weight:900;
  line-height:1.15;letter-spacing:.02em;user-select:none;-webkit-user-select:none
}
.field-detail>summary:before{
  content:"";flex:0 0 8px;width:8px;height:8px;margin-right:14px;border-radius:50%;
  background:#238ff0;box-shadow:0 0 0 5px rgba(35,143,240,.08),0 0 9px rgba(35,143,240,.35)
}
.field-detail>summary:after{
  right:18px;width:34px;height:34px;display:grid;place-items:center;
  border:1px solid #465764;border-radius:50%;background:#0d151c;
  color:#86c8ff;font-size:1.9rem;line-height:1;transform:translateY(-50%) rotate(0deg)
}
.field-detail[open]>summary{background:linear-gradient(180deg,#132231,#0d171f);color:#bfe2ff;border-bottom:1px solid #354553}
.field-detail[open]>summary:after{transform:translateY(-50%) rotate(90deg);background:#0d2f4b;border-color:#368bca;color:#fff}
.field-detail>p,.field-detail>ul,.field-detail>.database-match-body{
  padding:16px 18px 19px;color:#c0cbd3;font-size:.94rem;line-height:1.58
}
.field-detail>ul{padding-left:40px}.field-detail li+li{margin-top:9px}
.field-detail-safety>summary:before{background:#e95a43;box-shadow:0 0 0 5px rgba(233,90,67,.08)}
.field-save-detail>summary:before{background:#45c86c;box-shadow:0 0 0 5px rgba(69,200,108,.08)}
.field-save-detail>summary small{font-size:.7rem;margin-left:8px}
.field-save-detail .scan-record-fields{padding:6px 17px 18px}
.field-save-scan{min-height:72px!important;margin-top:16px!important;font-size:1.02rem!important}

/* Primary Scan Result actions should be easy to hit with a dirty/gloved thumb. */
.field-action-card{min-height:154px!important;padding:16px!important}
.field-action-button{min-height:68px!important;padding:14px 17px!important;font-size:.95rem!important}
.field-action-button span{font-size:1.9rem}
.field-swipe-cue{margin:1px 0 9px;font-size:.68rem}
.field-confirm-material{padding:12px;border-radius:8px}.field-confirm-material select{min-height:60px;font-size:.96rem}

/* Game Plan wizard — large choices and persistent left/right thumb controls. */
.game-plan-wizard{padding:15px!important}
.game-plan-wizard-stage{min-height:420px}
.game-plan-step>p{font-size:.92rem;line-height:1.4;margin-bottom:17px}
.game-plan-option-stack{gap:12px}
.game-plan-option-stack button{
  min-height:94px;padding:16px 58px 16px 18px;border-radius:10px;border-color:#485765;
  box-shadow:inset 0 1px rgba(255,255,255,.05),0 4px 12px rgba(0,0,0,.22)
}
.game-plan-option-stack button strong{font-size:1.08rem}
.game-plan-option-stack button small{margin-top:6px;font-size:.83rem;line-height:1.35}
.game-plan-option-stack button b{right:19px;font-size:2rem}
.game-plan-option-stack button.is-selected{border-color:#58b1ff;box-shadow:0 0 0 3px rgba(30,144,255,.12),inset 0 1px rgba(255,255,255,.12)}
.game-plan-wizard-footer{
  display:grid;grid-template-columns:64px minmax(0,1fr) 64px;align-items:center;gap:12px;
  margin-top:14px;padding-top:13px;border-top:1px solid #2f3c46
}
.game-plan-step-arrow{
  width:64px;height:64px;padding:0;border:1px solid #486071;border-radius:50%;
  background:linear-gradient(#172633,#0b141b);color:#85c9ff;font-size:2rem;font-weight:900;
  box-shadow:inset 0 1px rgba(255,255,255,.08),0 4px 10px #000;touch-action:manipulation
}
.game-plan-step-arrow.is-primary{border-color:#3a9dea;background:linear-gradient(#1678ce,#0b4d88);color:#fff}
.game-plan-step-arrow:active:not(:disabled){transform:scale(.96)}
.game-plan-step-arrow:disabled{opacity:.28;filter:grayscale(.4)}
.game-plan-step-position{text-align:center}.game-plan-step-position strong,.game-plan-step-position small{display:block}
.game-plan-step-position strong{color:#e2e9ee;font:900 .78rem/1.2 Arial,sans-serif;letter-spacing:.09em}
.game-plan-step-position small{margin-top:5px;color:#7f919e;font:700 .69rem/1.25 Arial,sans-serif}

/* Game Plan result — answer first, optional details clearly separated. */
.game-plan-result{overflow:visible}
.game-plan-plan-strip{min-height:58px;padding:11px 15px}
.game-plan-plan-strip strong{font-size:.74rem;line-height:1.4}
.game-plan-call-hero{padding:21px 16px 20px}
.game-plan-result h2{font-size:clamp(1.65rem,7vw,2.2rem);line-height:1.03}
.game-plan-call-copy{font-size:.94rem!important;line-height:1.5!important}
.game-plan-primary-action{min-height:72px!important;font-size:1.04rem!important;margin-top:18px!important}
.game-plan-more-label{margin:18px 16px 9px}
.game-plan-details-stack{display:grid;gap:var(--field-gap);margin:0 10px 13px!important}
.game-plan-detail{
  border:1px solid #46535e!important;border-radius:9px!important;background:linear-gradient(180deg,#111820,#080d12)!important;overflow:hidden
}
.game-plan-detail>summary{
  min-height:var(--field-row)!important;padding:0 60px 0 18px!important;
  color:#e2e9ee!important;font-size:.91rem!important;font-weight:900!important;letter-spacing:.02em!important
}
.game-plan-detail>summary:before{
  content:"";width:8px;height:8px;flex:0 0 8px;margin-right:14px;border-radius:50%;background:#238ff0;
  box-shadow:0 0 0 5px rgba(35,143,240,.08),0 0 9px rgba(35,143,240,.3)
}
.game-plan-detail>summary:after{
  right:18px!important;width:34px;height:34px;display:grid;place-items:center;
  border:1px solid #465764;border-radius:50%;background:#0d151c;color:#86c8ff!important;
  font-size:1.9rem!important;line-height:1
}
.game-plan-detail[open]>summary{background:linear-gradient(180deg,#132231,#0d171f);color:#bfe2ff!important;border-bottom:1px solid #354553}
.game-plan-detail[open]>summary:after{background:#0d2f4b;border-color:#368bca;color:#fff!important}
.game-plan-detail ul,.game-plan-detail p{padding:16px 18px 19px!important;font-size:.94rem!important;line-height:1.58!important;color:#c0cbd3!important}
.game-plan-detail ul{padding-left:40px!important}.game-plan-detail li+li{margin-top:9px}
.game-plan-safety-detail>summary:before{background:#e95a43;box-shadow:0 0 0 5px rgba(233,90,67,.08)}
.game-plan-change-answers{
  width:calc(100% - 20px);min-height:62px;margin:2px 10px 13px;padding:12px 16px;
  border:1px solid #398ed0;border-radius:7px;background:#0b1319;color:#75c0ff;
  font:900 .9rem/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.045em;touch-action:manipulation
}
.game-plan-change-answers:active{background:#102c41;transform:scale(.99)}

/* Smart Bins — same touch language as the rest of the field UI. */
.smart-bins-panel>summary{min-height:74px!important;padding:12px 56px 12px 16px!important}
.smart-bins-panel>summary strong{font-size:1rem!important}.smart-bins-panel>summary small{font-size:.68rem!important}
.smart-bins-panel>summary>b{right:18px!important;font-size:1.9rem!important}
.smart-bins-list{gap:10px!important}
.smart-bin-card{border-radius:8px!important}
.smart-bin-card>summary{min-height:72px!important;padding:12px 52px 12px 15px!important}
.smart-bin-main strong{font-size:1rem!important}.smart-bin-main b{font-size:1rem!important}.smart-bin-main i{right:16px!important;font-size:1.8rem!important}
.smart-bin-actions{gap:10px!important;padding:0 12px 12px!important}.smart-bin-actions .primary-btn,.smart-bin-actions .secondary-btn{min-height:60px!important;font-size:.88rem!important}.smart-bin-actions .smart-bin-empty{min-height:52px!important}

/* Tablet keeps the field controls large instead of shrinking into desktop widgets. */
@media(min-width:700px){
  .game-plan-option-stack{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  .game-plan-option-stack button{min-height:132px;padding:18px 45px 18px 16px}
  .game-plan-wizard-stage{min-height:290px}
  .field-detail>summary,.game-plan-detail>summary{min-height:76px!important}
}
@media(max-width:520px){
  .field-result-panel{padding:8px!important}
  .field-details-stack,.game-plan-details-stack{gap:10px}
  .field-detail>summary,.game-plan-detail>summary{min-height:72px!important;padding-left:16px!important}
  .field-action-card{flex-basis:92%;min-height:160px!important}
  .game-plan-wizard{padding:12px!important}.game-plan-wizard-stage{min-height:438px}
  .game-plan-option-stack button{min-height:96px}
  .game-plan-more-label{margin-left:12px;margin-right:12px}
}
@media(max-width:360px){
  .game-plan-wizard-footer{grid-template-columns:58px minmax(0,1fr) 58px}.game-plan-step-arrow{width:58px;height:58px}
  .field-action-card{flex-basis:95%}
}


/* =========================================================
   v0.9.11.3 — FIELD USABILITY
   Five-target navigation, large shared material picker,
   easier disclosures, stronger touch feedback, and a
   contextual thumb-zone action dock.
   ========================================================= */
:root{--field-row:80px;--field-gap:14px;--field-nav-height:92px}
body{padding-bottom:calc(var(--field-nav-height) + 20px + env(safe-area-inset-bottom))}
body.material-picker-open{overflow:hidden;touch-action:none}
body.field-action-dock-visible{padding-bottom:calc(var(--field-nav-height) + 112px + env(safe-area-inset-bottom))}

/* Five large primary destinations. No horizontal nav scrolling. */
.bottom-nav.field-bottom-nav{
  height:calc(var(--field-nav-height) + env(safe-area-inset-bottom))!important;
  padding:6px 8px env(safe-area-inset-bottom)!important;
  display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:4px!important;justify-content:stretch!important;overflow:visible!important;
  background:linear-gradient(180deg,#121922,#05080b)!important;
  border-top:1px solid #596774!important;box-shadow:0 -2px 0 #000,0 -12px 28px rgba(0,0,0,.52)!important
}
.bottom-nav.field-bottom-nav button{
  min-width:0!important;max-width:none!important;width:100%!important;height:78px!important;flex:none!important;
  padding:7px 3px 5px!important;border:0!important;border-radius:9px!important;background:transparent!important;
  color:#9eabb5!important;font:900 .67rem/1 Arial,sans-serif!important;letter-spacing:.035em!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:5px!important;
  touch-action:manipulation;overflow:visible
}
.bottom-nav.field-bottom-nav button>span:last-child{display:block}
.bottom-nav.field-bottom-nav .nav-master-icon{width:35px!important;height:35px!important;margin:0!important;object-fit:contain!important;opacity:.9!important}
.bottom-nav.field-bottom-nav button.active{color:#8fceff!important;background:rgba(30,144,255,.1)!important}
.bottom-nav.field-bottom-nav button.active:before{left:20%!important;right:20%!important;top:2px!important;height:3px!important;border-radius:99px}
.bottom-nav.field-bottom-nav button:active{background:rgba(30,144,255,.2)!important;transform:scale(.95)}
.field-nav-scan{transform:translateY(-8px)}
.field-nav-scan:active{transform:translateY(-8px) scale(.95)!important}
.field-nav-scan-shell{
  width:58px;height:58px;margin-top:-5px;border:2px solid #329cff;border-radius:50%;display:grid!important;place-items:center;
  background:radial-gradient(circle at 50% 38%,#244e73,#07111a 68%);box-shadow:0 0 0 4px #071019,0 0 20px rgba(30,144,255,.52),inset 0 0 12px #000
}
.field-nav-scan-shell .nav-master-icon{width:42px!important;height:42px!important}
.nav-milo-mark{
  width:38px;height:38px;border:2px solid #348fd1;border-radius:50%;display:grid!important;place-items:center;
  background:linear-gradient(#163652,#091622);color:#a7d8ff;font:900 1.18rem/1 Arial,sans-serif;box-shadow:inset 0 1px rgba(255,255,255,.1)
}
.field-nav-milo.active .nav-milo-mark{border-color:#61b8ff;color:#fff;box-shadow:0 0 14px rgba(30,144,255,.42),inset 0 1px rgba(255,255,255,.12)}

/* Shared field material picker replaces small native selects for Builder, Calculator, and Scan confirmation. */
.field-native-material-select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;clip-path:inset(50%)!important}
.field-material-trigger{
  width:100%;min-height:76px;margin:0 0 24px;padding:12px 58px 12px 16px;position:relative;
  border:1px solid #566777;border-radius:9px;background:linear-gradient(180deg,#1d2831,#0b1218);color:#fff;text-align:left;
  box-shadow:inset 0 1px rgba(255,255,255,.08),0 5px 14px rgba(0,0,0,.28);touch-action:manipulation
}
.field-material-trigger span,.field-material-trigger small,.field-material-trigger strong{display:block}
.field-material-trigger small{margin-bottom:5px;color:#7f95a5;font:800 .66rem/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.065em}
.field-material-trigger strong{color:#edf5fb;font:900 1.02rem/1.25 Arial,sans-serif;text-transform:none;letter-spacing:0}
.field-material-trigger>b{position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:2.25rem;line-height:1;color:#71bfff}
.field-material-trigger:active{border-color:#55adf2;background:linear-gradient(180deg,#173c5a,#0c2437);transform:scale(.99)}
#builder .field-material-trigger{margin-bottom:30px}
#calculator .field-material-trigger{margin-bottom:20px}
.field-confirm-material .field-material-trigger{margin-bottom:0}

.field-material-picker{position:fixed;inset:0;z-index:1400;background:rgba(0,0,0,.82);backdrop-filter:blur(5px);display:flex;align-items:flex-end;justify-content:center}
.field-material-picker[hidden]{display:none}
.field-material-picker-card{
  width:min(100%,760px);height:min(88dvh,820px);display:flex;flex-direction:column;overflow:hidden;
  border:1px solid #60707e;border-bottom:0;border-radius:18px 18px 0 0;background:linear-gradient(180deg,#121a21,#05090d);
  box-shadow:0 -18px 48px rgba(0,0,0,.72),inset 0 1px rgba(255,255,255,.07)
}
.field-material-picker-header{min-height:82px;display:grid;grid-template-columns:58px 1fr;gap:12px;align-items:center;padding:10px 16px;border-bottom:1px solid #34424d;background:#0c1319}
.field-material-picker-header small{display:block;color:#5dadf0;font:900 .67rem/1 Arial,sans-serif;letter-spacing:.09em}
.field-material-picker-header h2{margin:5px 0 0;color:#fff;font-size:1.35rem;text-transform:uppercase}
.field-material-picker-close{width:54px;height:54px;border:1px solid #526474;border-radius:50%;background:#111d26;color:#a8d7ff;font-size:1.8rem;font-weight:900;touch-action:manipulation}
.field-material-picker-close:active{background:#174366;transform:scale(.95)}
.field-material-picker-search-wrap{padding:14px 16px 12px;border-bottom:1px solid #28343d;background:#091016}
.field-material-picker-search-wrap label{margin:0 0 7px;color:#93a6b5;font-size:.71rem}
.field-material-picker-search-wrap input{min-height:62px;padding:13px 16px;border-radius:9px;font-size:1rem;background:#151f27}
.field-material-picker-section{padding:13px 12px 0;min-height:0}
.field-material-picker-all{flex:1;display:flex;flex-direction:column;padding-bottom:10px;overflow:hidden}
.field-material-picker-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 4px 9px;color:#8093a1;font:800 .68rem/1 Arial,sans-serif;letter-spacing:.07em}
.field-material-picker-section-title strong{color:#a9bac6}.field-material-picker-section-title span{font-size:.64rem}
.field-material-picker-list{display:grid;gap:9px}
.field-material-picker-all .field-material-picker-list{overflow:auto;overscroll-behavior:contain;padding:0 4px 12px;scrollbar-gutter:stable}
.field-material-picker-row{
  width:100%;min-height:70px;position:relative;padding:12px 56px 12px 16px;border:1px solid #3f4f5b;border-radius:9px;
  background:linear-gradient(180deg,#162028,#0b1116);color:#edf3f7;text-align:left;touch-action:manipulation
}
.field-material-picker-row strong{font:900 .98rem/1.22 Arial,sans-serif}
.field-material-picker-row b{position:absolute;right:18px;top:50%;transform:translateY(-50%);color:#6fbcf7;font-size:2rem;line-height:1}
.field-material-picker-row:active{border-color:#55adf2;background:linear-gradient(180deg,#174366,#0b2940);transform:scale(.99)}
.field-material-picker-empty{margin:auto;padding:30px 18px;color:#9caab5;text-align:center;font-family:Arial,sans-serif}

/* Disclosure controls: substantially easier to hit and visually separated. */
.field-details-stack,.game-plan-details-stack{gap:var(--field-gap)!important}
.field-detail,.game-plan-detail{border-radius:11px!important;overflow:hidden!important}
.field-detail>summary,.game-plan-detail>summary{
  min-height:var(--field-row)!important;padding:0 68px 0 20px!important;font-size:.98rem!important;line-height:1.2!important;touch-action:manipulation
}
.field-detail>summary:before,.game-plan-detail>summary:before{width:10px!important;height:10px!important;flex-basis:10px!important;margin-right:15px!important}
.field-detail>summary:after,.game-plan-detail>summary:after{
  right:18px!important;width:42px!important;height:42px!important;font-size:2.15rem!important;border-width:1px!important
}
.field-detail>summary:active,.game-plan-detail>summary:active{background:linear-gradient(180deg,#184a70,#0c2d46)!important;color:#fff!important}
.field-detail>p,.field-detail>ul,.field-detail>.database-match-body,.game-plan-detail ul,.game-plan-detail p{padding-top:19px!important;padding-bottom:22px!important;font-size:.98rem!important;line-height:1.62!important}

/* Game Plan choices: less reading, larger physical targets. */
.game-plan-wizard-stage{min-height:454px!important}
.game-plan-option-stack{gap:14px!important}
.game-plan-option-stack button{min-height:108px!important;padding:18px 62px 18px 20px!important;border-radius:12px!important}
.game-plan-option-stack button strong{font-size:1.15rem!important}
.game-plan-option-stack button small{margin-top:7px!important;font-size:.9rem!important;line-height:1.25!important}
.game-plan-option-stack button b{right:21px!important;font-size:2.3rem!important}
.game-plan-option-stack button:active{border-color:#63b9ff!important;background:linear-gradient(#1b5681,#0b3451)!important;transform:scale(.985)!important}

/* Contextual next-action dock only appears when the real action is outside the comfortable viewport. */
.field-action-dock{
  position:fixed;left:10px;right:10px;bottom:calc(var(--field-nav-height) + 10px + env(safe-area-inset-bottom));z-index:31;
  max-width:740px;margin-inline:auto;padding:6px;border:1px solid #3d91d2;border-radius:13px;background:rgba(6,13,19,.96);
  box-shadow:0 8px 28px rgba(0,0,0,.65),0 0 18px rgba(30,144,255,.12);backdrop-filter:blur(9px)
}
.field-action-dock[hidden]{display:none}
.field-action-dock button{
  width:100%;min-height:70px;padding:11px 16px;border:1px solid #4aabf2;border-radius:9px;
  background:linear-gradient(180deg,#147fd8,#07519a);color:#fff;text-align:center;box-shadow:inset 0 1px rgba(255,255,255,.18);touch-action:manipulation
}
.field-action-dock small,.field-action-dock strong{display:block}
.field-action-dock small{margin-bottom:5px;color:#c7e7ff;font:800 .62rem/1 Arial,sans-serif;letter-spacing:.1em}
.field-action-dock strong{font:900 1.02rem/1.15 Arial,sans-serif;text-transform:uppercase}
.field-action-dock button:active{filter:brightness(1.16);transform:scale(.985)}

/* Stronger tactile feedback across the important field controls. */
.field-action-button:active,.primary-btn:active:not(:disabled),.secondary-btn:active:not(:disabled),.new-photo-btn:active:not(:disabled){filter:brightness(1.18);transform:scale(.985)}

@media(min-width:700px){
  .game-plan-option-stack button{min-height:148px!important}
  .field-material-picker-card{height:min(84dvh,760px);border-radius:18px;margin-bottom:12px;border-bottom:1px solid #60707e}
}
@media(max-width:520px){
  :root{--field-row:78px;--field-gap:13px;--field-nav-height:90px}
  .bottom-nav.field-bottom-nav{padding-left:4px!important;padding-right:4px!important;gap:2px!important}
  .bottom-nav.field-bottom-nav button{height:76px!important;font-size:.62rem!important}
  .bottom-nav.field-bottom-nav .nav-master-icon{width:33px!important;height:33px!important}
  .field-nav-scan-shell{width:56px;height:56px}
  .field-detail>summary,.game-plan-detail>summary{padding-left:17px!important;padding-right:64px!important}
  .field-material-picker-card{height:92dvh}
  .field-material-picker-row{min-height:72px}
  .game-plan-option-stack button{min-height:108px!important}
}
@media(max-width:360px){
  .bottom-nav.field-bottom-nav button{font-size:.56rem!important}
  .nav-milo-mark{width:35px;height:35px}
  .field-nav-scan-shell{width:52px;height:52px}
}


/* =========================================================
   v0.9.11.4 - THUMB-FIRST WORKFLOW
   Scan is an action, nav geometry is normalized, main pages
   support deliberate horizontal swiping, and Game Plans stay
   attached to individual scrap items.
   ========================================================= */
:root{--thumb-nav-height:92px;--thumb-standard-icon:42px;--thumb-scan-icon:52px}

/* Standard nav tabs share one geometry. Scan alone is emphasized. */
.bottom-nav.field-bottom-nav{
  height:calc(var(--thumb-nav-height) + env(safe-area-inset-bottom))!important;
  padding:7px 6px env(safe-area-inset-bottom)!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:2px!important;align-items:end!important
}
.bottom-nav.field-bottom-nav button{
  height:78px!important;padding:5px 2px 6px!important;border-radius:10px!important;
  gap:4px!important;justify-content:flex-end!important;overflow:visible!important
}
.field-nav-icon{
  width:50px;height:48px;display:grid!important;place-items:center;margin:0 auto!important;
  background:transparent;border:0;border-radius:12px
}
.bottom-nav.field-bottom-nav .field-nav-icon .nav-master-icon{
  width:var(--thumb-standard-icon)!important;height:var(--thumb-standard-icon)!important;
  display:block!important;margin:0!important;object-fit:contain!important;object-position:50% 50%!important
}
.nav-milo-mark{
  width:var(--thumb-standard-icon)!important;height:var(--thumb-standard-icon)!important;
  display:grid!important;place-items:center!important;margin:0!important;border:0!important;border-radius:10px!important;
  background:linear-gradient(180deg,#25313c,#10161d)!important;color:#d8e9f7!important;
  font:900 1.35rem/1 Arial,sans-serif!important;box-shadow:inset 0 1px rgba(255,255,255,.1),inset 0 0 0 1px #40505e!important
}
.field-nav-milo.active .nav-milo-mark{color:#fff!important;background:linear-gradient(180deg,#1d5d8d,#0b2a42)!important;box-shadow:inset 0 0 0 1px #4aaeff,0 0 12px rgba(30,144,255,.28)!important}
.field-nav-scan{transform:none!important;justify-content:flex-end!important}
.field-nav-scan:active{transform:scale(.96)!important}
.field-nav-scan-shell{
  width:66px!important;height:66px!important;margin:-14px auto -1px!important;
  border:2px solid #4aaeff!important;border-radius:50%!important;display:grid!important;place-items:center!important;
  background:radial-gradient(circle at 50% 40%,#285d87,#07121c 68%)!important;
  box-shadow:0 0 0 4px #071019,0 0 22px rgba(30,144,255,.58),inset 0 0 14px #000!important
}
.field-nav-scan-shell .nav-master-icon{
  width:var(--thumb-scan-icon)!important;height:var(--thumb-scan-icon)!important;margin:0!important;
  object-fit:contain!important;object-position:50% 50%!important;transform:none!important
}
.bottom-nav.field-bottom-nav button>span:last-child{min-height:13px;display:block!important;line-height:1!important}
.bottom-nav.field-bottom-nav button.active:before{top:auto!important;bottom:0!important;left:24%!important;right:24%!important;height:2px!important}

/* Horizontal page swipe follows the thumb slightly before committing. */
.page.active.primary-swipe-tracking{
  transform:translateX(var(--primary-swipe-x,0));
  transition:none!important;will-change:transform;opacity:.985
}

/* Scan entry: camera first. The underlying page is now a clean fallback/result workspace. */
.scan-workspace{padding-top:10px!important}
.scan-workspace-back{min-height:58px!important;margin-bottom:12px!important}
.scan-capture-fallback{
  padding:22px 14px 16px;border-radius:12px!important;overflow:hidden;
  background:linear-gradient(180deg,#121a22,#080c11)!important;border-color:#425364!important
}
.scan-capture-copy{text-align:left;padding:2px 4px 14px}
.scan-capture-kicker{display:block;color:#5eb7ff;font:900 .72rem/1 Arial,sans-serif;letter-spacing:.12em;margin-bottom:8px}
.scan-capture-copy h2{margin:0;color:#f3f7fa;font:900 clamp(1.45rem,6vw,2rem)/1.05 "Arial Narrow",Arial,sans-serif;text-transform:uppercase;letter-spacing:.025em}
.scan-capture-copy p{margin:8px 0 0;color:#9eabb5;font:400 .88rem/1.45 Arial,sans-serif}
.scan-capture-actions{display:grid;gap:12px}
.scan-capture-primary,.scan-capture-secondary{
  width:100%;min-height:86px;padding:12px 16px;display:grid;grid-template-columns:48px minmax(0,1fr) 30px;align-items:center;gap:12px;
  border-radius:10px;text-align:left;color:#fff;touch-action:manipulation
}
.scan-capture-primary{border:1px solid #50aaff;background:linear-gradient(180deg,#1767a6,#0a3e68);box-shadow:inset 0 1px rgba(255,255,255,.13),0 5px 16px rgba(0,0,0,.38)}
.scan-capture-secondary{border:1px solid #536474;background:linear-gradient(180deg,#202b34,#0c1218);box-shadow:inset 0 1px rgba(255,255,255,.08),0 5px 16px rgba(0,0,0,.3)}
.scan-capture-primary .icon-svg,.scan-capture-secondary .icon-svg{width:42px;height:42px;color:#8fd0ff;stroke-width:2}
.scan-capture-primary span,.scan-capture-secondary span{display:block;min-width:0}
.scan-capture-primary strong,.scan-capture-secondary strong{display:block;font:900 1.02rem/1.1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.025em}
.scan-capture-primary small,.scan-capture-secondary small{display:block;margin-top:5px;color:#bfccd6;font:400 .76rem/1.2 Arial,sans-serif}
.scan-capture-primary>b,.scan-capture-secondary>b{font:400 2rem/1 Arial,sans-serif;color:#8dccff;text-align:right}
.scan-capture-primary:active,.scan-capture-secondary:active{transform:scale(.985);filter:brightness(1.12)}
.scan-photo-workspace[hidden],.scan-capture-fallback[hidden]{display:none!important}
.scan-photo-heading{margin:0 2px 10px;padding:0 2px;display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.scan-photo-heading span{color:#5eb7ff;font:900 .68rem/1 Arial,sans-serif;letter-spacing:.1em}
.scan-photo-heading strong{color:#c9d4dc;font:700 .78rem/1.2 Arial,sans-serif;text-align:right}
.scan-photo-actions{grid-template-columns:1fr 1.35fr!important;gap:12px!important;margin-top:14px!important}
.scan-photo-actions .secondary-btn,.scan-photo-actions .primary-btn{min-height:72px!important;margin:0!important;font-size:.92rem!important}
.scan-camera-message{margin:12px 4px 0!important}
body:not(.scan-photo-ready) #camera-permission-note{display:none!important}

/* Game Plan is always reviewed per item. */
.game-plan-item-bar{position:relative;padding-right:132px!important;min-height:72px}
.game-plan-use-last{
  position:absolute;right:10px;top:50%;transform:translateY(-50%);min-height:44px;padding:0 12px;border:1px solid #47708f;border-radius:8px;
  background:#0d1e2c;color:#88caff;font:900 .68rem/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.03em;touch-action:manipulation
}
.game-plan-use-last[hidden]{display:none!important}.game-plan-use-last:active{background:#17476a}.game-plan-use-last:disabled{opacity:.7}

/* History becomes a decision review surface, not only a photo archive. */
.history-plan-strip{
  margin-top:10px;min-height:56px;padding:8px 8px 8px 12px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;
  border:1px solid #33536a;border-left:4px solid #2f92db;border-radius:8px;background:linear-gradient(180deg,#102130,#09141d)
}
.history-plan-strip.goal-sell{border-left-color:#60c478}.history-plan-strip.goal-accumulate{border-left-color:#58a9f2}.history-plan-strip.goal-maximize{border-left-color:#b582ff}.history-plan-strip.is-empty{border-left-color:#59636d;background:#11171d}
.history-plan-strip strong,.history-plan-strip small{display:block}.history-plan-strip strong{color:#eef7fd;font:900 .8rem/1.1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.035em}.history-plan-strip small{margin-top:4px;color:#9eb0bd;font:400 .72rem/1.25 Arial,sans-serif}
.history-plan-button{min-width:72px;min-height:44px;padding:0 10px;border:1px solid #4c85ad;border-radius:8px;background:#0c2638;color:#8dceff;font:900 .7rem/1 Arial,sans-serif;text-transform:uppercase;touch-action:manipulation}.history-plan-button:active{background:#174b6d;transform:scale(.97)}

@media(max-width:520px){
  :root{--thumb-standard-icon:40px;--thumb-scan-icon:50px}
  .bottom-nav.field-bottom-nav button{height:76px!important;font-size:.61rem!important}
  .field-nav-icon{width:48px;height:46px}
  .field-nav-scan-shell{width:64px!important;height:64px!important;margin-top:-13px!important}
  .scan-capture-fallback{margin-top:2px;padding:18px 12px 14px}
  .scan-capture-primary,.scan-capture-secondary{min-height:82px;grid-template-columns:44px minmax(0,1fr) 26px;padding:11px 13px}
  .scan-capture-primary .icon-svg,.scan-capture-secondary .icon-svg{width:38px;height:38px}
  .game-plan-item-bar{padding-right:118px!important}.game-plan-use-last{right:8px;padding:0 9px;font-size:.62rem}
}
@media(max-width:360px){
  :root{--thumb-standard-icon:36px;--thumb-scan-icon:46px}
  .field-nav-icon{width:44px;height:44px}.field-nav-scan-shell{width:60px!important;height:60px!important}
  .bottom-nav.field-bottom-nav button{font-size:.55rem!important}
  .game-plan-item-bar{padding-right:0!important;padding-bottom:56px}.game-plan-use-last{top:auto;bottom:8px;left:8px;right:8px;transform:none;width:calc(100% - 16px)}
}

/* =========================================================
   v0.9.11.6 — FIELD FOCUS CORRECTION
   Built directly from the verified v0.9.11.4 package.
   ========================================================= */

/* Floating next-action overlay is intentionally disabled. */
#field-action-dock,.field-action-dock{display:none!important}
body.field-action-dock-visible{padding-bottom:calc(var(--thumb-nav-height) + 20px + env(safe-area-inset-bottom))!important}

/* Center Scan: keep the ring, make the owner's artwork visibly fill it. */
.field-nav-scan-shell{
  width:70px!important;
  height:70px!important;
  margin:-16px auto 0!important;
  overflow:hidden!important;
  border:2px solid #4aaeff!important;
  border-radius:50%!important;
}
.field-nav-scan-shell .nav-master-icon{
  width:64px!important;
  height:64px!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:50% 50%!important;
  transform:scale(1.34)!important;
  transform-origin:50% 50%!important;
}

/* Game Plan choice cards: unmistakable selection cards, not disclosure rows. */
.game-plan-option-stack button{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:112px!important;
  padding:18px 20px!important;
  text-align:center!important;
}
.game-plan-option-stack button strong,
.game-plan-option-stack button small{
  display:block!important;
  width:100%!important;
  text-align:center!important;
}
.game-plan-option-stack button strong{
  font-size:1.34rem!important;
  line-height:1.08!important;
  letter-spacing:.015em!important;
}
.game-plan-option-stack button small{
  margin-top:9px!important;
  font-size:.96rem!important;
  line-height:1.2!important;
}
.game-plan-option-stack button b{display:none!important}
.game-plan-option-stack button.is-selected{
  border-color:#5cb6ff!important;
  box-shadow:0 0 0 3px rgba(30,144,255,.18),inset 0 1px rgba(255,255,255,.14)!important;
}

/* Find the Money bottom actions: one clean, equal-width stack. */
#breakdown .money-session-controls{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
}
#breakdown .money-session-controls #money-next-photo-btn,
#breakdown .money-session-controls #breakdown-current-btn,
#breakdown .money-session-controls #money-done-btn,
#breakdown .money-session-controls #money-new-item-btn,
#breakdown .money-session-controls #money-remove-photo-btn{
  grid-column:1/-1!important;
  width:100%!important;
  min-height:58px!important;
  justify-self:stretch!important;
}
#breakdown .money-session-controls .breakdown-new-item-btn{min-height:58px!important}

@media(max-width:520px){
  .field-nav-scan-shell{width:68px!important;height:68px!important;margin-top:-15px!important}
  .field-nav-scan-shell .nav-master-icon{width:62px!important;height:62px!important;transform:scale(1.34)!important}
  .game-plan-option-stack button{min-height:112px!important;padding:17px 16px!important}
  .game-plan-option-stack button strong{font-size:1.28rem!important}
  .game-plan-option-stack button small{font-size:.94rem!important}
}
@media(max-width:360px){
  .field-nav-scan-shell{width:64px!important;height:64px!important;margin-top:-13px!important}
  .field-nav-scan-shell .nav-master-icon{width:58px!important;height:58px!important;transform:scale(1.32)!important}
  .game-plan-option-stack button strong{font-size:1.18rem!important}
}

/* =========================================================
   v0.9.11.7 — SCAN BUTTON FIT
   Keep the proven outer blue ring. Enlarge only the owner's
   scan artwork so its metal rim nearly meets that blue ring.
   ========================================================= */
.field-nav-scan-shell{
  width:68px!important;
  height:68px!important;
  margin:-15px auto 0!important;
  padding:0!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
}
.field-nav-scan-shell .nav-master-icon{
  width:64px!important;
  height:64px!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  object-fit:contain!important;
  object-position:50% 50%!important;
  transform:scale(1.88)!important;
  transform-origin:50% 50%!important;
}
@media(max-width:360px){
  .field-nav-scan-shell{width:66px!important;height:66px!important;margin-top:-14px!important}
  .field-nav-scan-shell .nav-master-icon{width:62px!important;height:62px!important;transform:scale(1.88)!important}
}

/* =========================================================
   v0.9.11.8 — SCAN ARTWORK EDGE FIT
   The owner's visible scan artwork fills the center control.
   The ScrapSmith-blue ring is drawn over the artwork at the
   extreme outer edge rather than surrounding a black gap.
   ========================================================= */
.field-nav-scan-shell{
  position:relative!important;
  width:68px!important;
  height:68px!important;
  margin:-15px auto 0!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  overflow:hidden!important;
  display:block!important;
  background:#071019!important;
  box-shadow:0 0 0 4px #071019,0 0 22px rgba(30,144,255,.58),inset 0 0 14px #000!important;
}
.field-nav-scan-shell::after{
  content:"";
  position:absolute;
  z-index:4;
  inset:0;
  pointer-events:none;
  border:2px solid #4aaeff;
  border-radius:50%;
  box-shadow:inset 0 0 7px rgba(74,174,255,.28),0 0 5px rgba(30,144,255,.45);
}
.field-nav-scan-shell .nav-master-icon{
  position:absolute!important;
  z-index:2!important;
  left:50%!important;
  top:50%!important;
  width:68px!important;
  height:68px!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  object-fit:contain!important;
  object-position:50% 50%!important;
  transform:translate(-50%,-50%) scale(2.55)!important;
  transform-origin:50% 50%!important;
}
@media(max-width:360px){
  .field-nav-scan-shell{width:66px!important;height:66px!important;margin-top:-14px!important}
  .field-nav-scan-shell .nav-master-icon{width:66px!important;height:66px!important;transform:translate(-50%,-50%) scale(2.55)!important}
}

/* =========================================================
   v0.9.11.9 — ORIGINAL SCAN ICON FIT
   Final authoritative center-scan rule: preserve the original
   artwork upright, enlarge it by actual dimensions only, and
   keep the existing blue ring at the button edge.
   ========================================================= */
.field-nav-scan-shell{
  position:relative!important;
  width:68px!important;
  height:68px!important;
  margin:-15px auto 0!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  overflow:hidden!important;
  display:block!important;
  background:#071019!important;
  box-shadow:0 0 0 4px #071019,0 0 22px rgba(30,144,255,.58),inset 0 0 14px #000!important;
}
.field-nav-scan-shell::after{
  content:"";
  position:absolute;
  z-index:4;
  inset:0;
  pointer-events:none;
  border:2px solid #4aaeff;
  border-radius:50%;
  box-shadow:inset 0 0 7px rgba(74,174,255,.28),0 0 5px rgba(30,144,255,.45);
}
.field-nav-scan-shell .nav-master-icon{
  position:absolute!important;
  z-index:2!important;
  width:166px!important;
  height:166px!important;
  max-width:none!important;
  max-height:none!important;
  left:-49px!important;
  top:-49px!important;
  margin:0!important;
  object-fit:contain!important;
  object-position:50% 50%!important;
  transform:none!important;
  rotate:none!important;
  scale:none!important;
  filter:none!important;
  opacity:1!important;
}
@media(max-width:360px){
  .field-nav-scan-shell{width:66px!important;height:66px!important;margin-top:-14px!important}
  .field-nav-scan-shell .nav-master-icon{
    width:160px!important;
    height:160px!important;
    left:-47px!important;
    top:-47px!important;
    transform:none!important;
    rotate:none!important;
    scale:none!important;
  }
}

/* =========================================================
   v0.9.11.10 — EXACT ORIGINAL SCAN ICON FIT
   Uses the user's exact original scan icon artwork, upright
   and undistorted. Only display size/position are changed.
   ========================================================= */
.field-nav-scan-shell{
  position:relative!important;
  width:68px!important;
  height:68px!important;
  margin:-15px auto 0!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  overflow:hidden!important;
  display:block!important;
  background:#071019!important;
  box-shadow:0 0 0 4px #071019,0 0 22px rgba(30,144,255,.58),inset 0 0 14px #000!important;
}
.field-nav-scan-shell::after{
  content:"";
  position:absolute;
  z-index:4;
  inset:0;
  pointer-events:none;
  border:2px solid #4aaeff;
  border-radius:50%;
  box-shadow:inset 0 0 7px rgba(74,174,255,.28),0 0 5px rgba(30,144,255,.45);
}
.field-nav-scan-shell .nav-master-icon{
  position:absolute!important;
  z-index:2!important;
  width:76px!important;
  height:76px!important;
  max-width:none!important;
  max-height:none!important;
  left:50%!important;
  top:calc(50% + 2.3px)!important;
  margin-left:-38px!important;
  margin-top:-38px!important;
  object-fit:contain!important;
  object-position:50% 50%!important;
  transform:none!important;
  rotate:0deg!important;
  scale:1!important;
  filter:none!important;
  opacity:1!important;
}
@media(max-width:360px){
  .field-nav-scan-shell{width:66px!important;height:66px!important;margin-top:-14px!important}
  .field-nav-scan-shell .nav-master-icon{
    width:74px!important;height:74px!important;
    top:calc(50% + 2.2px)!important;
    margin-left:-37px!important;margin-top:-37px!important;
    transform:none!important;rotate:0deg!important;scale:1!important;
  }
}

/* v0.9.11.10 final scan fit: transparent canvas trimmed from the
   supplied original artwork; full artwork remains upright and unwarped. */
.field-nav-scan-shell{
  width:68px!important;height:68px!important;margin:-15px auto 0!important;
  padding:0!important;overflow:hidden!important;display:grid!important;place-items:center!important;
  border:0!important;border-radius:50%!important;background:#071019!important;
}
.field-nav-scan-shell::after{
  content:""!important;position:absolute!important;z-index:4!important;inset:0!important;
  border:2px solid #4aaeff!important;border-radius:50%!important;pointer-events:none!important;
}
.field-nav-scan-shell .nav-master-icon{
  position:static!important;width:64px!important;height:64px!important;max-width:64px!important;max-height:64px!important;
  margin:0!important;object-fit:contain!important;object-position:center!important;
  transform:none!important;rotate:0deg!important;scale:1!important;filter:none!important;opacity:1!important;
}
@media(max-width:360px){
  .field-nav-scan-shell{width:66px!important;height:66px!important;margin-top:-14px!important}
  .field-nav-scan-shell .nav-master-icon{width:62px!important;height:62px!important;max-width:62px!important;max-height:62px!important}
}

/* =========================================================
   v0.9.11.11 — AUDITED AUTHORITATIVE SCAN CONTROL
   This selector intentionally outranks the older generic
   mobile .bottom-nav.field-bottom-nav .nav-master-icon rule.
   The supplied Scan artwork stays upright and proportional.
   ========================================================= */
.bottom-nav.field-bottom-nav .field-nav-scan .field-nav-scan-shell{
  position:relative!important;
  width:68px!important;
  height:68px!important;
  margin:-15px auto 0!important;
  padding:0!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:50%!important;
  background:#071019!important;
  box-shadow:0 0 0 4px #071019,0 0 22px rgba(30,144,255,.58),inset 0 0 14px #000!important;
}
.bottom-nav.field-bottom-nav .field-nav-scan .field-nav-scan-shell::after{
  content:""!important;
  position:absolute!important;
  z-index:4!important;
  inset:0!important;
  pointer-events:none!important;
  border:2px solid #4aaeff!important;
  border-radius:50%!important;
  box-shadow:inset 0 0 7px rgba(74,174,255,.24),0 0 5px rgba(30,144,255,.42)!important;
}
.bottom-nav.field-bottom-nav .field-nav-scan .field-nav-scan-shell > img.nav-master-icon{
  position:static!important;
  display:block!important;
  width:66px!important;
  height:66px!important;
  min-width:66px!important;
  min-height:66px!important;
  max-width:66px!important;
  max-height:66px!important;
  margin:0!important;
  object-fit:contain!important;
  object-position:50% 50%!important;
  transform:none!important;
  rotate:0deg!important;
  scale:1!important;
  filter:none!important;
  opacity:1!important;
}
@media(max-width:360px){
  .bottom-nav.field-bottom-nav .field-nav-scan .field-nav-scan-shell{
    width:66px!important;
    height:66px!important;
    margin-top:-14px!important;
  }
  .bottom-nav.field-bottom-nav .field-nav-scan .field-nav-scan-shell > img.nav-master-icon{
    width:64px!important;
    height:64px!important;
    min-width:64px!important;
    min-height:64px!important;
    max-width:64px!important;
    max-height:64px!important;
  }
}

/* =========================================================
   v0.9.11.12 — MILO NAV BADGE
   Milo now matches the industrial circular icon family.
   This final high-specificity block intentionally outranks
   all legacy .nav-milo-mark rules without touching Scan.
   ========================================================= */
.bottom-nav.field-bottom-nav .field-nav-milo .field-nav-icon{
  width:50px!important;
  height:48px!important;
  display:grid!important;
  place-items:center!important;
  margin:0 auto!important;
  background:transparent!important;
  border:0!important;
  border-radius:12px!important;
}
.bottom-nav.field-bottom-nav .field-nav-milo .field-nav-icon > .nav-milo-mark{
  position:relative!important;
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;
  max-width:42px!important;
  max-height:42px!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid #8b969f!important;
  border-radius:50%!important;
  background:
    radial-gradient(circle at 50% 42%,#303a43 0 31%,#151c22 58%,#06090c 100%)!important;
  color:#dbe4ea!important;
  box-shadow:
    inset 0 0 0 2px #05080b,
    inset 0 0 0 4px #4a555e,
    inset 0 0 12px rgba(0,0,0,.95),
    0 2px 5px rgba(0,0,0,.9)!important;
  transform:none!important;
  rotate:0deg!important;
  scale:1!important;
}
.bottom-nav.field-bottom-nav .field-nav-milo .field-nav-icon > .nav-milo-mark::before{
  content:""!important;
  position:absolute!important;
  inset:5px!important;
  z-index:1!important;
  border:1px solid rgba(43,154,245,.78)!important;
  border-radius:50%!important;
  box-shadow:inset 0 0 5px rgba(30,144,255,.2)!important;
  pointer-events:none!important;
}
.bottom-nav.field-bottom-nav .field-nav-milo .field-nav-icon > .nav-milo-mark::after{
  content:""!important;
  position:absolute!important;
  z-index:3!important;
  left:4px!important;
  top:19px!important;
  width:4px!important;
  height:4px!important;
  border:1px solid #9dd8ff!important;
  border-radius:50%!important;
  background:radial-gradient(circle at 35% 30%,#eef9ff 0 12%,#3ba8ff 35%,#0c4e82 72%,#04121e 100%)!important;
  box-shadow:28px 0 0 -1px #3ba8ff,28px 0 0 0 #9dd8ff!important;
  pointer-events:none!important;
}
.bottom-nav.field-bottom-nav .field-nav-milo .nav-milo-letter{
  position:relative!important;
  z-index:2!important;
  display:block!important;
  color:#eef3f6!important;
  font:900 1.42rem/1 "Arial Black","Arial Narrow",Arial,sans-serif!important;
  letter-spacing:-.08em!important;
  text-indent:-.08em!important;
  text-shadow:0 1px 0 #000,0 0 3px rgba(255,255,255,.18)!important;
  transform:translateY(-.5px)!important;
}
.bottom-nav.field-bottom-nav .field-nav-milo.active .field-nav-icon > .nav-milo-mark{
  border-color:#b9dfff!important;
  background:radial-gradient(circle at 50% 42%,#315b7d 0 29%,#123551 57%,#06111a 100%)!important;
  box-shadow:
    inset 0 0 0 2px #05080b,
    inset 0 0 0 4px #438dc4,
    inset 0 0 12px rgba(0,0,0,.88),
    0 0 13px rgba(30,144,255,.45)!important;
}
.bottom-nav.field-bottom-nav .field-nav-milo.active .field-nav-icon > .nav-milo-mark::before{
  border-color:#69bdff!important;
  box-shadow:inset 0 0 7px rgba(30,144,255,.35),0 0 5px rgba(30,144,255,.24)!important;
}
.bottom-nav.field-bottom-nav .field-nav-milo.active .nav-milo-letter{
  color:#fff!important;
  text-shadow:0 1px 0 #000,0 0 6px rgba(92,187,255,.5)!important;
}
.bottom-nav.field-bottom-nav .field-nav-milo:active .field-nav-icon > .nav-milo-mark{
  filter:brightness(1.12)!important;
}
@media(max-width:360px){
  .bottom-nav.field-bottom-nav .field-nav-milo .field-nav-icon{width:46px!important;height:44px!important}
  .bottom-nav.field-bottom-nav .field-nav-milo .field-nav-icon > .nav-milo-mark{
    width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;max-width:38px!important;max-height:38px!important
  }
  .bottom-nav.field-bottom-nav .field-nav-milo .field-nav-icon > .nav-milo-mark::before{inset:5px!important}
  .bottom-nav.field-bottom-nav .field-nav-milo .field-nav-icon > .nav-milo-mark::after{left:4px!important;top:17px!important;box-shadow:24px 0 0 -1px #3ba8ff,24px 0 0 0 #9dd8ff!important}
  .bottom-nav.field-bottom-nav .field-nav-milo .nav-milo-letter{font-size:1.25rem!important}
}

/* =========================================================
   v0.9.11.13 — REMASTERED SCRAPSMITH ICON FAMILY
   Uses one production icon language across primary navigation
   and the existing feature surfaces. Scan geometry/behavior is
   intentionally preserved; only the artwork family is updated.
   ========================================================= */

/* Standard bottom-nav icons: same visual footprint, Scan remains larger. */
.bottom-nav.field-bottom-nav .field-nav-icon{
  width:52px!important;
  height:50px!important;
  display:grid!important;
  place-items:center!important;
}
.bottom-nav.field-bottom-nav .field-nav-icon > img.nav-master-icon,
.bottom-nav.field-bottom-nav .field-nav-milo .field-nav-icon > img.nav-milo-image{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  max-width:46px!important;
  max-height:46px!important;
  margin:0!important;
  object-fit:contain!important;
  object-position:50% 50%!important;
  opacity:1!important;
  transform:none!important;
  rotate:0deg!important;
  scale:1!important;
  filter:none!important;
}
.bottom-nav.field-bottom-nav button.active .field-nav-icon > img.nav-master-icon{
  filter:drop-shadow(0 0 5px rgba(30,144,255,.34))!important;
}

/* The owner's featured center Scan geometry remains exactly the proven size. */
.bottom-nav.field-bottom-nav .field-nav-scan .field-nav-scan-shell > img.nav-master-icon{
  filter:none!important;
}

/* Home feature artwork uses the remastered assets without extra artificial recoloring. */
.home-grid .master-icon-card[src^="assets/icons/"]{
  filter:none!important;
}

/* Weather and account surfaces now use the same icon family. */
.weather-card .remaster-tool-icon{
  width:64px!important;
  height:64px!important;
  margin:0 auto 8px!important;
  object-fit:contain!important;
  filter:none!important;
}
.account-status-icon{
  flex-basis:48px!important;
  width:48px!important;
  height:48px!important;
}
.account-status-icon-image[src$="account.png"]{
  width:48px!important;
  height:48px!important;
  max-width:48px!important;
  max-height:48px!important;
  object-fit:contain!important;
  transform:none!important;
  filter:none!important;
}

@media(max-width:520px){
  .bottom-nav.field-bottom-nav .field-nav-icon > img.nav-master-icon,
  .bottom-nav.field-bottom-nav .field-nav-milo .field-nav-icon > img.nav-milo-image{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    max-width:44px!important;
    max-height:44px!important;
  }
  .weather-card .remaster-tool-icon{width:58px!important;height:58px!important}
  .account-status-icon{flex-basis:44px!important;width:44px!important;height:44px!important}
  .account-status-icon-image[src$="account.png"]{width:44px!important;height:44px!important;max-width:44px!important;max-height:44px!important}
}
@media(max-width:360px){
  .bottom-nav.field-bottom-nav .field-nav-icon{width:46px!important;height:44px!important}
  .bottom-nav.field-bottom-nav .field-nav-icon > img.nav-master-icon,
  .bottom-nav.field-bottom-nav .field-nav-milo .field-nav-icon > img.nav-milo-image{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
    max-width:40px!important;
    max-height:40px!important;
  }
}


/* =========================================================
   v0.9.11.14 — PRIMARY NAV ICON FIT
   Production patch applied on top of the verified v0.9.11.13
   icon-family build. Home/Search/Milo/History share one exact
   footprint. The approved center Scan size is preserved while
   its blue ring and artwork share the same true circular box.
   ========================================================= */

/* Four standard nav icons: identical box, identical circular crop. */
.bottom-nav.field-bottom-nav .field-nav-icon{
  width:52px!important;
  height:50px!important;
  display:grid!important;
  place-items:center!important;
  margin:0 auto!important;
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
}
.bottom-nav.field-bottom-nav .field-nav-icon > img.nav-master-icon,
.bottom-nav.field-bottom-nav .field-nav-milo .field-nav-icon > img.nav-milo-image{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  max-width:46px!important;
  max-height:46px!important;
  margin:0!important;
  border-radius:50%!important;
  object-fit:cover!important;
  object-position:50% 50%!important;
  transform:none!important;
  rotate:0deg!important;
  scale:1!important;
  filter:none!important;
  opacity:1!important;
}
.bottom-nav.field-bottom-nav button.active .field-nav-icon > img.nav-master-icon,
.bottom-nav.field-bottom-nav .field-nav-milo.active .field-nav-icon > img.nav-milo-image{
  filter:drop-shadow(0 0 5px rgba(30,144,255,.34))!important;
}

/* Center Scan: same approved overall size, one geometric circle.
   The 2px blue border is the shell itself; no second pseudo-ring. */
.bottom-nav.field-bottom-nav .field-nav-scan .field-nav-scan-shell{
  position:relative!important;
  box-sizing:border-box!important;
  width:68px!important;
  height:68px!important;
  margin:-15px auto 0!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  border:2px solid #4aaeff!important;
  border-radius:50%!important;
  background:#05090d!important;
  box-shadow:0 0 0 3px #071019,0 0 19px rgba(30,144,255,.50),inset 0 0 10px rgba(0,0,0,.74)!important;
}
.bottom-nav.field-bottom-nav .field-nav-scan .field-nav-scan-shell::after{
  content:none!important;
  display:none!important;
}
.bottom-nav.field-bottom-nav .field-nav-scan .field-nav-scan-shell > img.nav-master-icon{
  position:static!important;
  display:block!important;
  width:64px!important;
  height:64px!important;
  min-width:64px!important;
  min-height:64px!important;
  max-width:64px!important;
  max-height:64px!important;
  margin:0!important;
  border-radius:50%!important;
  object-fit:cover!important;
  object-position:50% 50%!important;
  transform:none!important;
  rotate:0deg!important;
  scale:1!important;
  filter:none!important;
  opacity:1!important;
}

@media(max-width:520px){
  .bottom-nav.field-bottom-nav .field-nav-icon > img.nav-master-icon,
  .bottom-nav.field-bottom-nav .field-nav-milo .field-nav-icon > img.nav-milo-image{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    max-width:44px!important;
    max-height:44px!important;
  }
}
@media(max-width:360px){
  .bottom-nav.field-bottom-nav .field-nav-icon{width:46px!important;height:44px!important}
  .bottom-nav.field-bottom-nav .field-nav-icon > img.nav-master-icon,
  .bottom-nav.field-bottom-nav .field-nav-milo .field-nav-icon > img.nav-milo-image{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
    max-width:40px!important;
    max-height:40px!important;
  }
  .bottom-nav.field-bottom-nav .field-nav-scan .field-nav-scan-shell{
    width:66px!important;
    height:66px!important;
    margin-top:-14px!important;
  }
  .bottom-nav.field-bottom-nav .field-nav-scan .field-nav-scan-shell > img.nav-master-icon{
    width:62px!important;
    height:62px!important;
    min-width:62px!important;
    min-height:62px!important;
    max-width:62px!important;
    max-height:62px!important;
  }
}


/* =========================================================
   v0.9.11.15 — EXACT SCAN RING FIT
   The nav Scan asset is now physically cropped to its visible
   metal circle. The blue shell therefore hugs the artwork
   instead of outlining the old padded image canvas.
   ========================================================= */
.bottom-nav.field-bottom-nav .field-nav-scan .field-nav-scan-shell{
  width:68px!important;
  height:68px!important;
  box-sizing:border-box!important;
  border:2px solid #4aaeff!important;
  border-radius:50%!important;
  overflow:hidden!important;
  background:#05090d!important;
}
.bottom-nav.field-bottom-nav .field-nav-scan .field-nav-scan-shell::after{content:none!important;display:none!important}
.bottom-nav.field-bottom-nav .field-nav-scan .field-nav-scan-shell > img.nav-master-icon{
  width:64px!important;
  height:64px!important;
  min-width:64px!important;
  min-height:64px!important;
  max-width:64px!important;
  max-height:64px!important;
  border-radius:50%!important;
  object-fit:cover!important;
  object-position:50% 50%!important;
  transform:none!important;
  rotate:0deg!important;
  scale:1!important;
  margin:0!important;
}
@media(max-width:360px){
  .bottom-nav.field-bottom-nav .field-nav-scan .field-nav-scan-shell{width:66px!important;height:66px!important}
  .bottom-nav.field-bottom-nav .field-nav-scan .field-nav-scan-shell > img.nav-master-icon{
    width:62px!important;height:62px!important;min-width:62px!important;min-height:62px!important;max-width:62px!important;max-height:62px!important;
  }
}

/* =========================================================
   v0.9.11.18 — FIELD FLOW CLEANUP
   Native camera stays primary. Reduce taps and reading after capture.
   ========================================================= */

/* The diagnostic photo facts remain in the DOM for save/history logic,
   but are not part of the customer-facing scan result. */
.photo-facts[hidden]{display:none!important}

/* Auto-identification leaves Retake as the only normal photo action.
   The Identify button appears only as a retry if analysis fails. */
.scan-photo-actions{
  grid-template-columns:1fr!important;
}
.scan-photo-actions #retake-btn,
.scan-photo-actions #identify-btn{
  grid-column:1/-1!important;
  width:100%!important;
  min-height:56px!important;
}
.scan-photo-actions #identify-btn[hidden]{display:none!important}

/* Find the Money: Milo's call and the next action stay in the main flow.
   Mechanical explanation and value-target detail are tap-to-expand. */
#breakdown .money-howto{
  margin-top:12px!important;
  padding:0!important;
  border:1px solid #344554!important;
  border-radius:7px!important;
  background:#091118!important;
  overflow:hidden!important;
}
#breakdown .money-howto[hidden]{display:none!important}
#breakdown .money-howto > summary.money-howto-heading{
  list-style:none!important;
  margin:0!important;
  padding:11px 12px!important;
  cursor:pointer!important;
  user-select:none!important;
  min-height:46px!important;
}
#breakdown .money-howto > summary.money-howto-heading::-webkit-details-marker{display:none!important}
#breakdown .money-howto[open] > summary.money-howto-heading{
  border-bottom:1px solid #303c47!important;
}
#breakdown .money-howto-body{
  padding:11px 12px 12px!important;
}

#breakdown .money-session-controls{
  margin-top:12px!important;
  margin-bottom:10px!important;
  padding-top:12px!important;
}

#breakdown .money-worth-details{
  display:block!important;
  margin:10px 0 0!important;
  padding:0!important;
  border:1px solid #36424d!important;
  border-radius:7px!important;
  background:#0a1016!important;
  overflow:hidden!important;
}
#breakdown .money-worth-details[hidden]{display:none!important}
#breakdown .money-worth-details > summary{
  list-style:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  min-height:52px!important;
  padding:11px 12px!important;
  cursor:pointer!important;
  user-select:none!important;
}
#breakdown .money-worth-details > summary::-webkit-details-marker{display:none!important}
#breakdown .money-worth-details > summary span{
  color:#dfeeff!important;
  font-size:.77rem!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
}
#breakdown .money-worth-details > summary small{
  color:#7f91a0!important;
  font-family:Arial,sans-serif!important;
  font-size:.68rem!important;
  text-align:right!important;
}
#breakdown .money-worth-details[open] > summary{
  border-bottom:1px solid #303c47!important;
}
#breakdown .money-worth-details #money-target-list{
  padding:10px!important;
  margin:0!important;
}

/* Load Builder: the working load stays up front; account management becomes
   optional disclosure below the current load. */
#builder .load-list-wrap{margin-top:14px!important}
#builder .builder-secondary-details{
  margin-top:12px!important;
  padding:0!important;
  border-radius:7px!important;
  overflow:hidden!important;
}
#builder .builder-secondary-details[hidden]{display:none!important}
#builder .builder-secondary-summary{
  list-style:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  min-height:58px!important;
  padding:11px 12px!important;
  cursor:pointer!important;
  user-select:none!important;
}
#builder .builder-secondary-summary::-webkit-details-marker{display:none!important}
#builder .builder-secondary-summary > span:first-child{
  display:grid!important;
  gap:3px!important;
  min-width:0!important;
}
#builder .builder-secondary-summary small{
  color:#6eaee2!important;
  font:900 .62rem/1 Arial,sans-serif!important;
  letter-spacing:.1em!important;
}
#builder .builder-secondary-summary strong{
  color:#eef6fc!important;
  font-size:.88rem!important;
  text-transform:uppercase!important;
}
#builder .builder-secondary-details[open] > .builder-secondary-summary{
  border-bottom:1px solid #34404a!important;
}
#builder .builder-secondary-body{
  padding:12px 14px 14px!important;
}
#builder .builder-secondary-toolbar{
  display:flex!important;
  justify-content:flex-end!important;
  margin-bottom:4px!important;
}
#builder .cloud-load-copy,
#builder .cloud-load-library-copy{margin-top:0!important}

@media(max-width:430px){
  #breakdown .money-worth-details > summary{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:4px!important;
  }
  #breakdown .money-worth-details > summary small{text-align:left!important}
  #builder .builder-secondary-summary{min-height:56px!important}
}
#builder > .load-summary{margin-top:0!important;margin-bottom:14px!important}
#builder > .form-card{margin-top:0!important}


/* =========================================================
   v0.9.11.20 — MATERIAL QUICK LIST
   Search remains intact. The arrow opens an alphabetical,
   names-only material list for fast thumb browsing in the field.
   ========================================================= */
.material-search-control{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 58px;
  gap:8px;
  align-items:stretch;
}
.material-search-card .material-search-control #material-search{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
.material-name-toggle{
  width:58px;
  min-width:58px;
  min-height:58px;
  margin:0;
  padding:0;
  display:grid;
  place-items:center;
  border:1px solid #596874;
  border-radius:6px;
  background:linear-gradient(180deg,#202b34,#0b1117);
  color:#8dccff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 4px 10px rgba(0,0,0,.32);
  touch-action:manipulation;
}
.material-name-toggle span{
  display:block;
  font:900 1.7rem/1 Arial,sans-serif;
  transform:translateY(-2px);
}
.material-name-toggle[aria-expanded="true"]{
  border-color:#4aaeff;
  color:#fff;
  background:linear-gradient(180deg,#164e78,#092940);
  box-shadow:inset 0 0 0 1px rgba(110,190,255,.18),0 0 13px rgba(30,144,255,.28);
}
.material-name-menu{
  position:absolute;
  z-index:16;
  left:0;
  right:0;
  top:calc(100% + 7px);
  max-height:min(58vh,500px);
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  padding:5px;
  border:1px solid #63717d;
  border-top-color:#4aaeff;
  border-radius:6px;
  background:linear-gradient(180deg,rgba(18,25,32,.995),rgba(5,9,13,.998));
  box-shadow:0 18px 34px rgba(0,0,0,.78),0 0 0 1px rgba(0,0,0,.8),0 0 18px rgba(30,144,255,.12);
}
.material-name-menu[hidden]{display:none!important}
.material-name-row{
  width:100%;
  min-height:48px;
  margin:0;
  padding:0 13px;
  display:flex;
  align-items:center;
  border:0;
  border-bottom:1px solid #303943;
  border-radius:0;
  background:transparent;
  color:#edf4f9;
  text-align:left;
  touch-action:manipulation;
}
.material-name-row:last-child{border-bottom:0}
.material-name-row strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font:900 .88rem/1.15 Arial,sans-serif;
  letter-spacing:.025em;
  text-transform:uppercase;
}
.material-name-row:hover,.material-name-row:focus-visible{
  outline:none;
  background:linear-gradient(90deg,rgba(30,144,255,.19),rgba(30,144,255,.035));
  box-shadow:inset 3px 0 #1e90ff;
}
.material-name-row:active{background:#12324a}
.material-name-empty{margin:0;padding:16px 12px;color:#9ba8b2;font:700 .8rem/1.35 Arial,sans-serif;text-align:center}

@media(max-width:520px){
  .material-search-control{grid-template-columns:minmax(0,1fr) 56px;gap:7px}
  .material-name-toggle{width:56px;min-width:56px;min-height:58px}
  .material-name-menu{max-height:min(60vh,480px)}
  .material-name-row{min-height:50px;padding:0 12px}
}

/* ============================================================
   v0.9.11.21 RECONSTRUCTED — HISTORY DENSITY CLEANUP
   Known approved cleanup rebuilt on the verified 0.9.11.20 base.
   ============================================================ */
html{min-height:100%;background:#05070a!important}
body{min-height:100dvh;background-color:#05070a!important}

.history-density-details{display:block!important;margin:12px 0 14px!important;padding:0!important;overflow:hidden;border-radius:8px!important}
.history-density-details>summary{list-style:none;position:relative;min-height:64px;padding:12px 48px 12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;background:linear-gradient(180deg,#171e24,#0d1318)}
.history-density-details>summary::-webkit-details-marker{display:none}
.history-density-details>summary:after{content:"›";position:absolute;right:16px;top:50%;transform:translateY(-50%);color:#62b4ff;font-size:1.55rem;font-weight:900;transition:transform .14s ease}
.history-density-details[open]>summary:after{transform:translateY(-50%) rotate(90deg)}
.history-density-summary>span{display:grid;gap:4px;min-width:0}
.history-density-summary small{color:#62b4ff;font:900 .62rem/1 Arial,sans-serif;letter-spacing:.09em}
.history-density-summary strong{color:#e4ebf0;font-size:.92rem;text-transform:uppercase}
.history-density-summary>b{color:#9eb1bf;font:800 .67rem/1.2 Arial,sans-serif;text-align:right;white-space:nowrap}
.history-density-summary>b strong{color:#d9edff;font-size:.9rem}
.history-density-body{padding:13px 14px 14px;border-top:1px solid rgba(74,91,105,.42)}
.history-density-body>p:first-child{margin-top:0;color:#91a3b1;font:400 .78rem/1.45 Arial,sans-serif}
.history-density-body .primary-btn{margin-top:12px}
.history-storage-management.history-density-details{align-items:initial!important;justify-content:initial!important;gap:0!important}
.history-storage-management.history-density-details .text-btn{display:block;width:100%;min-height:48px;margin-top:8px;padding:10px!important;border:1px solid rgba(255,73,63,.32);border-radius:5px;background:rgba(95,25,22,.16)}

.saved-scan-disclosure-stack{display:grid;gap:8px;margin-top:16px}
.saved-scan-disclosure{overflow:hidden;border:1px solid #3f4a54;border-radius:7px;background:linear-gradient(180deg,#151c22,#0d1217)}
.saved-scan-disclosure>summary{list-style:none;position:relative;min-height:54px;padding:13px 42px 13px 13px;display:flex;align-items:center;color:#dfe8ef;font-size:.8rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}
.saved-scan-disclosure>summary::-webkit-details-marker{display:none}
.saved-scan-disclosure>summary:after{content:"›";position:absolute;right:14px;top:50%;transform:translateY(-50%);color:#62b4ff;font-size:1.35rem;transition:transform .14s ease}
.saved-scan-disclosure[open]>summary:after{transform:translateY(-50%) rotate(90deg)}
.saved-scan-disclosure>div{padding:0 13px 13px;border-top:1px solid rgba(75,91,104,.38)}
.saved-scan-disclosure p,.saved-scan-disclosure ul{margin:11px 0 0!important}
.saved-scan-safety{margin-top:12px;padding:12px 13px;border:1px solid rgba(255,73,63,.42);border-radius:7px;background:linear-gradient(180deg,rgba(83,22,20,.28),rgba(27,13,14,.42))}
.saved-scan-safety h3{margin:0 0 6px!important}
.saved-scan-safety p{margin:0!important}

/* ============================================================
   v0.9.11.22 — SMART BINS
   Extends the existing Game Plan / Load Builder bin store.
   ============================================================ */
.home-grid .master-icon-card[src$="smart-bins.png"]{width:96px!important}
.smart-bins-home-card .ready-pill{border-color:rgba(30,144,255,.48)!important;background:rgba(30,144,255,.11)!important;color:#87c8ff!important}

.smart-bins-overview{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:12px 0 0;padding:1px;border-radius:8px;overflow:hidden}
.smart-bins-overview>div{padding:14px;background:linear-gradient(180deg,#18212a,#0d1318);text-align:center}
.smart-bins-overview span{display:block;color:#8295a5;font:800 .66rem/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.07em}
.smart-bins-overview strong{display:block;margin-top:6px;color:#dceeff;font-size:1.3rem}
.smart-bins-new-btn{min-height:58px;margin:12px 0 0!important}
.smart-bins-page-empty{margin-top:12px;padding:18px 16px;text-align:center;border-radius:9px}
.smart-bins-page-empty[hidden]{display:none!important}
.smart-bins-empty-icon{display:block;width:112px;height:112px;object-fit:contain;margin:0 auto 2px;filter:drop-shadow(0 0 7px rgba(30,144,255,.18))}
.smart-bins-page-empty h3{margin:0 0 6px;text-transform:uppercase}
.smart-bins-page-empty p{max-width:520px;margin:0 auto;color:#92a3af;font:400 .79rem/1.45 Arial,sans-serif}
.smart-bins-page-list{display:grid;gap:10px;margin-top:12px}

.smart-bin-library-card{width:100%;min-height:112px;padding:10px 12px;display:grid;grid-template-columns:86px minmax(0,1fr) auto;align-items:center;gap:12px;border-radius:9px;color:#eef5fa;text-align:left;cursor:pointer}
.smart-bin-library-card:hover,.smart-bin-library-card:focus-visible{outline:none;border-color:#5caeff;box-shadow:inset 0 1px rgba(255,255,255,.08),0 0 0 2px rgba(30,144,255,.08),0 8px 20px rgba(0,0,0,.42)}
.smart-bin-library-card:active{transform:translateY(2px)}
.smart-bin-library-visual{width:82px;height:82px;display:grid;place-items:center;overflow:hidden;border:1px solid #46525d;border-radius:7px;background:#080c10}
.smart-bin-library-visual img{width:100%;height:100%;object-fit:cover}
.smart-bin-library-visual img.is-master-icon{object-fit:contain;padding:4px}
.smart-bin-library-copy{min-width:0;display:grid;gap:4px}
.smart-bin-library-copy>strong{font-size:.98rem;text-transform:uppercase;overflow-wrap:anywhere}
.smart-bin-library-copy>b{color:#9fcfff;font:800 .76rem/1.2 Arial,sans-serif;overflow-wrap:anywhere}
.smart-bin-library-copy>small{color:#8799a6;font:400 .68rem/1.3 Arial,sans-serif;overflow-wrap:anywhere}
.smart-bin-library-weight{display:grid;gap:7px;text-align:right}
.smart-bin-library-weight strong{color:#dff1ff;font-size:1rem;white-space:nowrap}
.smart-bin-library-weight small{color:#62b4ff;font:900 .62rem/1 Arial,sans-serif;white-space:nowrap}

.smart-bin-create-view{margin-top:12px;padding:16px;border-radius:9px}
.smart-bin-create-view[hidden],.smart-bin-detail-view[hidden],#smart-bins-library-view[hidden]{display:none!important}
.smart-bin-inline-back{padding:0 0 14px;border:0;background:transparent;color:#8fc9ff;font-weight:900;text-transform:uppercase;cursor:pointer}
.smart-bin-create-view h3{margin:0;text-transform:uppercase;font-size:1.2rem}
.smart-bin-create-copy{margin:7px 0 15px;color:#8fa1ae;font:400 .78rem/1.45 Arial,sans-serif}

.smart-bin-detail-card{padding:14px;border-radius:10px}
.smart-bin-visual{height:min(52vw,330px);min-height:190px;display:grid;place-items:center;overflow:hidden;border:1px solid #4f5a64;border-radius:8px;background:radial-gradient(circle at 50% 40%,rgba(30,144,255,.08),transparent 45%),#070a0e}
.smart-bin-detail-photo{width:100%;height:100%;object-fit:cover}
.smart-bin-detail-fallback{width:min(58%,220px);height:auto;object-fit:contain;filter:drop-shadow(0 0 8px rgba(30,144,255,.2))}
.smart-bin-detail-title{margin-top:13px;text-align:center}
.smart-bin-detail-title .eyebrow{margin-bottom:5px}
.smart-bin-detail-title h2{margin:0;color:#f0f5f9;font-size:1.55rem;text-transform:uppercase}
.smart-bin-detail-title>strong{display:block;margin-top:5px;color:#9fd0ff;font:800 .84rem/1.2 Arial,sans-serif}
.smart-bin-detail-location{margin:6px 0 0!important;color:#95a7b4!important;font-size:.74rem!important}
.smart-bin-detail-weight{margin-top:12px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #3f4f5d;border-radius:7px;background:linear-gradient(180deg,#15212c,#0c141b)}
.smart-bin-detail-weight span{color:#8296a6;font:800 .66rem/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.07em}
.smart-bin-detail-weight strong{color:#dff1ff;font-size:1.22rem}

.smart-bin-primary-disclosure,.smart-bin-context-editor,.smart-bin-secondary-disclosure{margin-top:10px;overflow:hidden;border:1px solid #43515d;border-radius:8px;background:linear-gradient(180deg,#151d24,#0c1217)}
.smart-bin-primary-disclosure>summary,.smart-bin-context-editor>summary,.smart-bin-secondary-disclosure>summary,.smart-bin-context-option>summary{list-style:none;position:relative;cursor:pointer}
.smart-bin-primary-disclosure>summary::-webkit-details-marker,.smart-bin-context-editor>summary::-webkit-details-marker,.smart-bin-secondary-disclosure>summary::-webkit-details-marker,.smart-bin-context-option>summary::-webkit-details-marker{display:none}
.smart-bin-primary-disclosure>summary{min-height:60px;padding:18px 44px 16px 15px;color:#eef7ff;font-size:.95rem;font-weight:900;text-transform:uppercase;background:linear-gradient(180deg,#126fc8,#07447f);border-bottom:1px solid rgba(0,0,0,.35)}
.smart-bin-primary-disclosure>summary:after,.smart-bin-context-editor>summary:after,.smart-bin-secondary-disclosure>summary:after,.smart-bin-context-option>summary:after{content:"›";position:absolute;right:15px;top:50%;transform:translateY(-50%);color:#8dccff;font-size:1.5rem;font-weight:900;transition:transform .14s ease}
.smart-bin-primary-disclosure[open]>summary:after,.smart-bin-context-editor[open]>summary:after,.smart-bin-secondary-disclosure[open]>summary:after,.smart-bin-context-option[open]>summary:after{transform:translateY(-50%) rotate(90deg)}
.smart-bin-add-body{padding:13px 14px 14px}
.smart-bin-add-body label{margin-top:0}
.smart-bin-add-body .primary-btn{margin-top:10px}

.smart-bin-context-glance{display:grid;gap:7px;margin-top:10px}
.smart-bin-context-glance[hidden]{display:none!important}
.smart-bin-context-glance>div{padding:10px 12px;border:1px solid #394753;border-radius:6px;background:#0b1116}
.smart-bin-context-glance span{display:block;color:#62b4ff;font:900 .59rem/1 Arial,sans-serif;letter-spacing:.08em}
.smart-bin-context-glance strong{display:block;margin-top:5px;color:#d6e2eb;font:700 .76rem/1.35 Arial,sans-serif}

.smart-bin-context-editor>summary,.smart-bin-secondary-disclosure>summary{min-height:56px;padding:16px 44px 14px 14px;color:#dce8f1;font-size:.8rem;font-weight:900;text-transform:uppercase}
.smart-bin-context-stack{display:grid;gap:7px;padding:0 10px 10px}
.smart-bin-context-option{overflow:hidden;border:1px solid #35424d;border-radius:6px;background:#0b1116}
.smart-bin-context-option>summary{min-height:50px;padding:14px 40px 12px 12px;color:#bdd0df;font:800 .75rem/1.2 Arial,sans-serif}
.smart-bin-context-option>summary:after{right:12px;font-size:1.25rem}
.smart-bin-context-body{padding:0 12px 12px;border-top:1px solid rgba(65,80,93,.38)}
.smart-bin-context-body p{margin:10px 0;color:#879aa8;font:400 .73rem/1.4 Arial,sans-serif}
.smart-bin-context-body label{margin-top:11px}
.smart-bin-context-body .secondary-btn{margin-top:10px;min-height:48px}
.smart-bin-file-input{display:none!important}
.smart-bin-context-preview{display:block;width:100%;max-height:260px;margin-top:10px;object-fit:cover;border:1px solid #47545f;border-radius:6px;background:#05080b}
.smart-bin-context-preview[hidden]{display:none!important}
.smart-bin-remove-media{display:block;width:100%;padding:10px;margin-top:7px}
.smart-bin-remove-media[hidden]{display:none!important}
.smart-bin-context-editor>.primary-btn{width:calc(100% - 20px);margin:0 10px 10px!important}
.smart-bin-context-editor>.form-message{margin:0 12px 12px!important}
textarea{width:100%;border:1px solid #59616a;border-radius:5px;background:linear-gradient(#333a42,#20262d);color:white;padding:14px;outline:none;box-shadow:inset 0 2px 5px #111;font:inherit;resize:vertical}
textarea:focus{border-color:var(--blue);box-shadow:0 0 0 2px rgba(30,144,255,.16),inset 0 2px 5px #111}

.smart-bin-secondary-body{padding:0 12px 12px}
.smart-bin-location-photo-wrap,.smart-bin-note-wrap{margin:0 0 10px;padding:10px;border:1px solid #384753;border-radius:6px;background:#0a1015}
.smart-bin-location-photo-wrap span,.smart-bin-note-wrap span{display:block;margin-bottom:7px;color:#62b4ff;font:900 .58rem/1 Arial,sans-serif;letter-spacing:.08em}
.smart-bin-location-photo-wrap img{display:block;width:100%;max-height:280px;object-fit:cover;border-radius:5px}
.smart-bin-note-wrap p{margin:0;color:#9babb6;font:400 .76rem/1.45 Arial,sans-serif;white-space:pre-wrap}
.smart-bin-secondary-body .secondary-btn{margin-top:0}
.smart-bin-delete-btn{margin-top:9px!important}

#game-plan-bin-target{margin-bottom:8px}
.smart-bin-main small{color:#8194a3;font:400 .66rem/1.25 Arial,sans-serif;overflow-wrap:anywhere}

@media(max-width:520px){
  .home-grid .master-icon-card[src$="smart-bins.png"]{width:88px!important}
  .history-density-summary>b{display:none}
  .smart-bin-library-card{grid-template-columns:76px minmax(0,1fr);gap:10px;min-height:104px;padding:10px}
  .smart-bin-library-visual{width:72px;height:72px}
  .smart-bin-library-weight{grid-column:2;display:flex;align-items:center;justify-content:space-between;text-align:left}
  .smart-bin-library-weight strong{font-size:.9rem}
  .smart-bin-visual{height:52vw;min-height:180px}
}
@media(max-width:350px){
  .smart-bins-overview{grid-template-columns:1fr}
  .smart-bin-library-card{grid-template-columns:68px minmax(0,1fr)}
  .smart-bin-library-visual{width:64px;height:64px}
}
@media(prefers-reduced-motion:reduce){
  .history-density-details>summary:after,.saved-scan-disclosure>summary:after,.smart-bin-primary-disclosure>summary:after,.smart-bin-context-editor>summary:after,.smart-bin-secondary-disclosure>summary:after,.smart-bin-context-option>summary:after{transition:none!important}
}

/* ============================================================
   v0.9.11.26 — WORKFLOW BACKBONE
   Scope: confidence language, Game Plan gating, organization,
   and the fourth History state. Existing icon/logo treatment stays locked.
   ============================================================ */
.match-status{
  margin-left:auto;
  min-width:92px;
  min-height:38px;
  padding:7px 9px;
  display:grid;
  place-items:center;
  border:1px solid rgba(74,166,255,.72);
  border-radius:6px;
  background:linear-gradient(180deg,rgba(19,61,96,.92),rgba(10,31,48,.98));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 0 12px rgba(30,144,255,.12);
  text-align:center;
}
.match-status span{color:#d9efff;font:900 .62rem/1.05 Arial,sans-serif;letter-spacing:.075em;white-space:nowrap}
.match-status.match-status-strong{border-color:rgba(64,171,255,.88);background:linear-gradient(180deg,#174f79,#0b263c)}
.match-status.match-status-likely{border-color:rgba(80,145,199,.72);background:linear-gradient(180deg,#18384f,#0c202f)}
.match-status.match-status-verify{border-color:rgba(231,169,69,.72);background:linear-gradient(180deg,#55401f,#2b2112)}
.match-status.match-status-verify span{color:#ffe0a0}

.game-plan-skip-action{width:100%;min-height:54px;margin:9px 0 0!important}
.game-plan-next-note{display:block;margin:8px 4px 0;color:#8295a5;font:700 .7rem/1.35 Arial,sans-serif;text-align:center}
.game-plan-next-note[hidden],.game-plan-skip-action[hidden]{display:none!important}

.organize-heading{margin-bottom:10px}
.organize-source{display:grid;gap:4px;padding:14px 15px;margin-bottom:10px}
.organize-source>span{color:#62b4ff;font:900 .61rem/1 Arial,sans-serif;letter-spacing:.09em}
.organize-source>strong{font-size:1.18rem;text-transform:uppercase}
.organize-source>small{color:#91a3b1;font:700 .75rem/1.3 Arial,sans-serif}
.organize-guide-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:11px 2px 8px}
.organize-guide-row strong{color:#dceeff;font-size:.82rem;text-transform:uppercase}
.organize-guide-row span{color:#718494;font:700 .62rem/1.2 Arial,sans-serif;text-align:right}
.organize-output-list{display:grid;gap:10px}
.organize-output-card{padding:13px;border:1px solid #3b4751;border-radius:8px;background:linear-gradient(180deg,#171f26,#0d1318);box-shadow:var(--bevel)}
.organize-output-card.is-placed{border-color:rgba(57,149,220,.55)}
.organize-output-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.organize-output-head>div{min-width:0;display:grid;gap:3px}
.organize-output-head span{color:#6f8291;font:800 .58rem/1 Arial,sans-serif;letter-spacing:.08em}
.organize-output-head strong{color:#edf5fb;font-size:.94rem;overflow-wrap:anywhere}
.organize-output-head small{color:#8598a6;font:700 .7rem/1.25 Arial,sans-serif}
.organize-output-status{flex:0 0 auto;padding:5px 7px;border:1px solid #3f5a70;border-radius:999px;background:#10283a;color:#a9d7fb;font:900 .56rem/1 Arial,sans-serif;letter-spacing:.055em;text-transform:uppercase}
.organize-output-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:11px}
.organize-output-actions button{min-height:46px;margin:0!important;padding:7px 5px!important;font-size:.68rem!important}
.organize-bin-chooser{margin-top:10px;padding:10px;border-top:1px solid #33414d;background:#0b1116}
.organize-bin-chooser[hidden]{display:none!important}
.organize-bin-chooser label{display:block;margin:0 0 5px;color:#8ea1af;font:800 .64rem/1.2 Arial,sans-serif;text-transform:uppercase}
.organize-bin-chooser select,.organize-bin-chooser input{width:100%;min-height:46px;margin-bottom:8px}
.organize-bin-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}
.organize-bin-row .secondary-btn{min-height:46px;margin:0!important}
.organize-complete-btn{width:100%;min-height:60px;margin-top:12px!important}
.organize-complete-btn:disabled{opacity:.45}
.history-overview{grid-template-columns:repeat(2,minmax(0,1fr))}
.history-overview>button:nth-child(4) strong{color:#ffd38b}
.history-needs-home-strip{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:9px;padding:9px 10px;border:1px solid rgba(224,164,68,.42);border-radius:6px;background:rgba(78,56,20,.24)}
.history-needs-home-strip strong{display:block;color:#ffd38b;font-size:.75rem;text-transform:uppercase}
.history-needs-home-strip small{display:block;margin-top:2px;color:#9c8d74;font-size:.65rem}
.history-needs-home-strip button{min-height:38px;margin:0!important;padding:7px 10px!important}

@media(max-width:520px){
  .match-status{min-width:82px;min-height:36px;padding:6px 7px}.match-status span{font-size:.57rem}
  .organize-output-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .organize-guide-row{align-items:flex-start;flex-direction:column;gap:3px}.organize-guide-row span{text-align:left}
}
/* v0.9.11.26: result status uses ScrapSmith blue; confidence is carried by the match plate, not a green AI/pie treatment. */
.field-result-status .pulse-dot{background:#2f9eff;box-shadow:0 0 0 6px rgba(47,158,255,.08),0 0 12px rgba(47,158,255,.38)}

/* =========================================================
   v0.9.11.27 — BIN ACCESS + TRACEABILITY
   Smart Bins become part of the scan-to-organization plumbing.
   Existing icon/logo treatment and app shell are intentionally unchanged.
   ========================================================= */
.history-smart-bins-shortcut{
  position:relative;
  overflow:hidden;
}
.history-smart-bins-shortcut strong{color:#63b5ff!important}
.history-smart-bins-shortcut::after{
  content:"OPEN";
  position:absolute;
  right:8px;
  bottom:7px;
  color:#547086;
  font:900 .48rem/1 Arial,sans-serif;
  letter-spacing:.08em;
}
.history-smart-bins-shortcut:focus-visible{
  outline:2px solid #6ebaff;
  outline-offset:2px;
}

.history-organization-strip,
.saved-scan-organization{
  margin-top:10px;
  padding:10px 11px;
  border:1px solid rgba(56,132,190,.5);
  border-radius:7px;
  background:linear-gradient(180deg,rgba(15,36,52,.92),rgba(9,20,29,.96));
}
.history-organization-strip{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.history-organization-strip>div,
.saved-scan-organization-row>div{min-width:0;display:grid;gap:3px}
.history-organization-strip strong,
.saved-scan-organization-row strong{color:#dcefff;font-size:.78rem;overflow-wrap:anywhere}
.history-organization-strip small,
.saved-scan-organization-row small{color:#8da4b5;font:700 .66rem/1.35 Arial,sans-serif;overflow-wrap:anywhere}
.history-organization-strip .secondary-btn{flex:0 0 auto;margin:0!important;min-height:38px;padding:7px 10px!important}
.saved-scan-organization{margin:12px 0 0}
.saved-scan-organization-heading h3{margin:2px 0 8px;color:#eef6fb;font-size:1rem}
.saved-scan-organization-list{display:grid;gap:7px}
.saved-scan-organization-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:9px 10px;
  border:1px solid #344854;
  border-radius:6px;
  background:#0b141b;
}
.saved-scan-organization-row .secondary-btn{flex:0 0 auto;margin:0!important;min-height:38px;padding:7px 10px!important}

.organize-current-destination{
  margin-top:9px;
  padding:9px 10px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  border:1px solid rgba(60,151,220,.4);
  border-radius:6px;
  background:#0d1d29;
}
.organize-current-destination[hidden]{display:none!important}
.organize-current-destination>div{min-width:0;display:grid;gap:3px}
.organize-current-destination strong{color:#bfe2ff;font:900 .68rem/1.25 Arial,sans-serif;text-transform:uppercase;overflow-wrap:anywhere}
.organize-current-destination small{color:#8fa4b2;font:700 .64rem/1.25 Arial,sans-serif;overflow-wrap:anywhere}
.organize-view-bin{flex:0 0 auto;margin:0!important;padding:7px 8px!important;color:#68b8ff!important;font-size:.68rem!important}

.organize-bin-chooser{
  margin-top:10px;
  padding:11px;
  border-top:1px solid #33414d;
  border-radius:0 0 7px 7px;
  background:#091117;
}
.organize-bin-heading{display:grid;gap:4px;margin-bottom:9px}
.organize-bin-heading>span{color:#61b3ff;font:900 .62rem/1 Arial,sans-serif;letter-spacing:.09em}
.organize-bin-heading>small{color:#8a9daa;font:600 .69rem/1.35 Arial,sans-serif}
.organize-bin-weight-wrap{display:grid!important;gap:5px;margin:0 0 9px!important;color:#8195a5!important;font:800 .6rem/1.2 Arial,sans-serif!important;text-transform:uppercase}
.organize-bin-weight-wrap input{margin:0!important;min-height:44px!important}
.organize-bin-choices{display:grid;gap:7px}
.organize-bin-choice{
  width:100%;
  min-height:72px;
  padding:7px;
  display:grid;
  grid-template-columns:58px minmax(0,1fr) auto;
  align-items:center;
  gap:9px;
  border:1px solid #40505d;
  border-radius:7px;
  background:linear-gradient(180deg,#17212a,#0c1319);
  color:#edf6fb;
  text-align:left;
  cursor:pointer;
}
.organize-bin-choice:active{transform:translateY(1px)}
.organize-bin-choice:focus-visible{outline:2px solid #62b4ff;outline-offset:2px}
.organize-bin-choice.is-current{border-color:#3a9be5;background:linear-gradient(180deg,#142c3e,#0d1c27)}
.organize-bin-choice-visual{width:56px;height:56px;display:grid;place-items:center;overflow:hidden;border:1px solid #42515c;border-radius:6px;background:#070b0e}
.organize-bin-choice-visual img{width:100%;height:100%;object-fit:cover}
.organize-bin-choice-visual img.is-master-icon{object-fit:contain;padding:3px}
.organize-bin-choice-copy{min-width:0;display:grid;gap:3px}
.organize-bin-choice-copy strong{color:#edf6fb;font:900 .78rem/1.2 Arial,sans-serif;text-transform:uppercase;overflow-wrap:anywhere}
.organize-bin-choice-copy small{color:#879aa8;font:700 .63rem/1.25 Arial,sans-serif;overflow-wrap:anywhere}
.organize-bin-choice-meta{display:grid;gap:6px;text-align:right;white-space:nowrap}
.organize-bin-choice-meta strong{color:#dcefff;font:900 .72rem/1 Arial,sans-serif}
.organize-bin-choice-meta b{color:#64b6ff;font:900 .56rem/1 Arial,sans-serif;letter-spacing:.06em}
.organize-create-bin-inline{
  min-height:50px;
  padding:10px 12px;
  border:1px solid #397eb0;
  border-radius:6px;
  background:#0e2535;
  color:#88caff;
  font:900 .7rem/1.2 Arial,sans-serif;
  text-transform:uppercase;
  cursor:pointer;
}
.organize-create-bin-inline:focus-visible{outline:2px solid #69b9ff;outline-offset:2px}

.organize-completion-summary{margin-top:12px;padding:14px;border-color:#397eae}
.organize-completion-summary[hidden]{display:none!important}
.organize-completion-summary h3{margin:3px 0 11px;color:#eff7fc;font-size:1.05rem}
.organize-completion-list{display:grid;gap:7px}
.organize-completion-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border:1px solid #38505f;border-radius:6px;background:#0b151c}
.organize-completion-row>div{min-width:0;display:grid;gap:3px}
.organize-completion-row strong{color:#e5f2fb;font:900 .75rem/1.2 Arial,sans-serif;overflow-wrap:anywhere}
.organize-completion-row small{color:#89a1b2;font:700 .65rem/1.3 Arial,sans-serif;overflow-wrap:anywhere}
.organize-completion-row .text-btn{flex:0 0 auto;margin:0!important}
.organize-completion-actions{display:grid;gap:8px;margin-top:12px}
.organize-completion-actions .primary-btn,.organize-completion-actions .secondary-btn{margin:0!important;min-height:50px}

.smart-bin-assigned-contents{margin-top:12px;padding:11px;border:1px solid #3a4e5d;border-radius:7px;background:#0a1218}
.smart-bin-assigned-heading{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-bottom:8px}
.smart-bin-assigned-heading h3{margin:2px 0 0;color:#edf6fb;font-size:.95rem}
.smart-bin-assigned-heading>span{min-width:32px;padding:5px 7px;border:1px solid #386687;border-radius:999px;background:#0c2333;color:#8ecbfa;font:900 .68rem/1 Arial,sans-serif;text-align:center}
.smart-bin-assigned-empty{margin:5px 0;color:#748895;font:600 .68rem/1.35 Arial,sans-serif;text-align:center}
.smart-bin-assigned-empty[hidden]{display:none!important}
.smart-bin-assigned-list{display:grid;gap:6px}
.smart-bin-assigned-row{
  width:100%;
  min-height:58px;
  padding:6px;
  display:grid;
  grid-template-columns:46px minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  border:1px solid #31424e;
  border-radius:6px;
  background:#0d171e;
  color:#eef6fb;
  text-align:left;
}
button.smart-bin-assigned-row{cursor:pointer}
button.smart-bin-assigned-row:focus-visible{outline:2px solid #60b2f6;outline-offset:2px}
.smart-bin-assigned-visual{width:44px;height:44px;display:grid;place-items:center;overflow:hidden;border-radius:5px;background:#070b0e}
.smart-bin-assigned-visual img{width:100%;height:100%;object-fit:cover}
.smart-bin-assigned-visual img.is-master-icon{object-fit:contain;padding:2px}
.smart-bin-assigned-copy{min-width:0;display:grid;gap:3px}
.smart-bin-assigned-copy strong{color:#eaf5fc;font:900 .72rem/1.2 Arial,sans-serif;overflow-wrap:anywhere}
.smart-bin-assigned-copy small{color:#7f95a5;font:700 .61rem/1.25 Arial,sans-serif;overflow-wrap:anywhere}
.smart-bin-assigned-action{color:#5fb1f5;font:900 .54rem/1 Arial,sans-serif;white-space:nowrap}
.smart-bin-assigned-more{margin:7px 0 0;color:#7790a1;font:700 .63rem/1.3 Arial,sans-serif;text-align:center}

@media (max-width:520px){
  .organize-bin-choice{grid-template-columns:52px minmax(0,1fr);min-height:68px}
  .organize-bin-choice-visual{width:50px;height:50px}
  .organize-bin-choice-meta{grid-column:2;display:flex;align-items:center;justify-content:space-between;text-align:left}
  .history-organization-strip,.saved-scan-organization-row{align-items:flex-start}
  .smart-bin-assigned-row{grid-template-columns:44px minmax(0,1fr)}
  .smart-bin-assigned-action{grid-column:2}
}
.organize-quick-bin{
  margin-top:9px;
  padding:9px 10px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  border:1px solid rgba(51,148,218,.58);
  border-radius:7px;
  background:linear-gradient(180deg,#102b3e,#0b1c28);
}
.organize-quick-bin[hidden]{display:none!important}
.organize-quick-bin>div{min-width:0;display:grid;gap:3px}
.organize-quick-bin span{color:#63b5ff;font:900 .56rem/1 Arial,sans-serif;letter-spacing:.08em}
.organize-quick-bin strong{color:#e8f5fd;font:900 .78rem/1.2 Arial,sans-serif;text-transform:uppercase;overflow-wrap:anywhere}
.organize-quick-bin small{color:#8fa5b4;font:700 .63rem/1.25 Arial,sans-serif;overflow-wrap:anywhere}
.organize-quick-bin .primary-btn{flex:0 0 auto;margin:0!important;min-height:42px;padding:8px 11px!important}

/* =========================================================
   v0.9.11.28 — FIELD FLUIDITY
   Targeted mobile movement cleanup; approved icon/logo/nav treatments remain untouched.
   ========================================================= */
.history-organization-strip{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:9px!important;
}
.history-organization-strip>div{min-width:0!important;width:100%!important}
.history-organization-strip strong,.history-organization-strip small{word-break:normal!important;overflow-wrap:break-word!important}
.history-organization-strip .secondary-btn{max-width:92px!important;white-space:nowrap!important}

.organize-output-pager{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) 52px;
  align-items:center;
  gap:8px;
  margin:0 0 9px;
}
.organize-output-pager[hidden]{display:none!important}
.organize-output-pager>div{text-align:center;display:grid;gap:3px}
.organize-output-pager strong{color:#dfefff;font:900 .68rem/1 Arial,sans-serif;letter-spacing:.07em}
.organize-output-pager small{color:#6f8595;font:700 .59rem/1.1 Arial,sans-serif}
.organize-output-arrow{
  width:52px;
  height:46px;
  margin:0;
  border:1px solid #40515f;
  border-radius:7px;
  background:linear-gradient(180deg,#162430,#0c151c);
  color:#86c9ff;
  font-size:1.25rem;
  font-weight:900;
}
.organize-output-arrow:disabled{opacity:.3}
.organize-output-list{display:block!important}
.organize-output-card{padding:11px!important}
.organize-output-card.is-compact{padding-bottom:10px!important}
.organize-output-card.is-compact .organize-output-head{margin-bottom:7px}
.organize-output-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;margin-top:9px!important}
.organize-output-actions button{min-height:44px!important}
.organize-output-actions button[data-organize-action="needs_home"]{grid-column:1 / -1}
.organize-current-destination{margin-top:8px!important;padding:9px!important}
.organize-finished-destination{border-color:rgba(63,157,226,.65)!important;background:linear-gradient(180deg,#10283a,#0b1b27)!important}
.organize-finished-actions{display:flex;align-items:center;gap:5px;flex:0 0 auto}
.organize-change-output{color:#92a9ba!important}
.organize-bin-chooser{padding:9px!important}
.organize-bin-choices.is-swipe-row{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:minmax(250px,88%)!important;
  overflow-x:auto!important;
  overscroll-behavior-x:contain;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  padding:1px 2px 7px;
  gap:8px!important;
}
.organize-bin-choices.is-swipe-row::-webkit-scrollbar{display:none}
.organize-bin-choices.is-swipe-row .organize-bin-choice{scroll-snap-align:start}
.organize-quick-bin{padding:8px 9px!important}
.organize-source{padding-top:10px!important;padding-bottom:10px!important}
.organize-heading{margin-bottom:10px!important}

.smart-bin-detail-weight{align-items:flex-start!important}
.smart-bin-detail-weight span{line-height:1.25!important;max-width:58%}
.smart-bin-detail-weight strong{text-align:right;line-height:1.1}
.smart-bin-library-weight strong{white-space:normal!important;line-height:1.1!important}

@media (max-width:520px){
  .history-organization-strip{grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important}
  .history-organization-strip strong{font-size:.73rem!important}
  .history-organization-strip small{font-size:.62rem!important}
  .organize-output-pager{grid-template-columns:48px minmax(0,1fr) 48px}
  .organize-output-arrow{width:48px;height:44px}
  .organize-finished-destination{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important}
  .organize-bin-choices.is-swipe-row{grid-auto-columns:92%!important}
}


/* =============================================================
   v0.9.11.29 — PERFORMANCE + INTEGRITY
   ============================================================= */
html,body{
  overscroll-behavior-y:none!important;
}
body{
  -webkit-overflow-scrolling:touch;
}
button,.bottom-nav,.field-bottom-nav,.organize-output-card,.organize-output-pager,.organize-bin-choice,.organize-quick-bin,.smart-bin-library-card,.history-organization-strip{
  -webkit-user-select:none!important;
  user-select:none!important;
  -webkit-touch-callout:none!important;
}
input,textarea,[contenteditable="true"]{
  -webkit-user-select:text!important;
  user-select:text!important;
}
.organize-quick-bin{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:8px!important;
}
.organize-quick-bin .organize-more-destinations{
  grid-column:1 / -1;
  justify-self:start;
  margin-top:0!important;
  min-height:34px!important;
}
.organize-output-actions[hidden]{display:none!important}
#smart-bin-create-btn:disabled{opacity:.42!important;filter:saturate(.65)!important}


/* =============================================================
   v0.9.11.40 — SMART BIN QUICK CREATE
   ============================================================= */
.organize-specific-bin{
  border:1px solid #3b5668;
  border-radius:6px;
  background:#0a151d;
  overflow:hidden;
}
.organize-specific-bin>summary{
  min-height:48px;
  padding:10px 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:#b8ddf8;
  font:900 .7rem/1.2 Arial,sans-serif;
  text-transform:uppercase;
  cursor:pointer;
  list-style:none;
}
.organize-specific-bin>summary::-webkit-details-marker{display:none}
.organize-specific-bin>summary::after{content:"+";color:#67b8f7;font-size:1rem;line-height:1}
.organize-specific-bin[open]>summary::after{content:"−"}
.organize-specific-bin-body{
  display:grid;
  gap:9px;
  padding:0 10px 11px;
  border-top:1px solid #263946;
}
.organize-specific-bin-body p{
  margin:9px 0 0;
  color:#8da2b1;
  font:600 .67rem/1.35 Arial,sans-serif;
}
.organize-specific-bin-body label{
  display:grid!important;
  gap:5px;
  margin:0!important;
  color:#8da2b1!important;
  font:800 .6rem/1.2 Arial,sans-serif!important;
  text-transform:uppercase;
}
.organize-specific-bin-body input{
  min-height:46px!important;
  margin:0!important;
}
.organize-specific-bin-body .primary-btn{
  min-height:48px;
  margin:1px 0 0!important;
}
.organize-specific-bin-body .primary-btn:disabled{opacity:.42;filter:saturate(.65)}

/* v0.9.11.43 — Organizer bin discoverability */
.organize-bin-section{display:grid;gap:6px;margin-top:10px}
.organize-bin-section-label{color:#63b5ff;font:900 .56rem/1 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.organize-bin-choice-badge{color:#90d2ff!important;font:900 .54rem/1 Arial,sans-serif!important;letter-spacing:.06em;text-transform:uppercase}
.organize-bin-choice-badge.is-muted{color:#7f95a5!important}
.organize-quick-bin-actions{display:grid;gap:6px;justify-items:stretch}
.organize-quick-bin-actions .primary-btn,.organize-quick-bin-actions .secondary-btn{margin:0!important;min-height:40px;padding:8px 11px!important}
.organize-quick-bin .organize-more-destinations{justify-self:stretch}

/* =============================================================
   v0.9.11.48 — SAVED SCAN DESTINATION READABILITY
   Keep physical destination text readable beside View Bin on mobile.
   ============================================================= */
.saved-scan-organization-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
}
.saved-scan-organization-row>div{
  min-width:0!important;
  width:100%!important;
}
.saved-scan-organization-row strong,
.saved-scan-organization-row small{
  word-break:normal!important;
  overflow-wrap:break-word!important;
}
.saved-scan-organization-row .secondary-btn{
  width:auto!important;
  max-width:120px!important;
  white-space:nowrap!important;
  justify-self:end!important;
}
@media (max-width:520px){
  .saved-scan-organization-row{
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
  }
  .saved-scan-organization-row .secondary-btn{
    max-width:104px!important;
  }
}
