:root{--bg:#14161a;--panel:#1c1f25;--line:#2c313a;--ink:#e8e4da;--muted:#8d939e;--amber:#f2a93b;--teal:#5fc4b8;}
body{background:var(--bg);color:var(--ink);font-family:"IBM Plex Sans",system-ui,sans-serif;padding-bottom:140px}
.mono{font-family:"IBM Plex Mono",monospace}.muted{color:var(--muted)!important}
.shell{max-width:760px;margin:0 auto;padding:16px}
h1,h2,h3{font-family:"Barlow Condensed",sans-serif;letter-spacing:.02em}
.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.eyebrow{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--amber)}
.identity{border-left:3px solid var(--amber);padding:4px 0 4px 16px;margin-bottom:28px}
.identity h1{font-size:2.4rem;font-weight:700;margin:2px 0 12px}
.specs{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden;margin:0}
.specs>div{background:var(--panel);padding:8px 10px}.specs dt{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:500}
.specs dd{margin:0;font-family:"IBM Plex Mono",monospace;font-size:1rem;word-break:break-word}
.specs .wide{grid-column:1/-1}.google-box{margin-top:12px;font-size:.9rem}
.section-head{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:6px;border-bottom:1px solid var(--line);margin:26px 0 14px;padding-bottom:6px}
.section-head h2{font-size:1.6rem;margin:0}
.empty{display:flex;gap:16px;align-items:center;border:1px dashed var(--line);border-radius:8px;padding:18px}
.empty-mark{font-family:"Barlow Condensed";font-size:3rem;color:var(--line);line-height:1}
.rec{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:14px;margin-bottom:14px}
.rec-latest{border-color:var(--amber);box-shadow:inset 3px 0 0 var(--amber)}
.rec-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:10px}
.rec-head h3{font-size:1.05rem;margin:2px 0 0}.badge-id{font-size:.75rem;color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:1px 6px}
.steps{list-style:none;padding:0;margin:12px 0 0}.steps li{border-top:1px solid var(--line);padding:10px 0}
.step-title{font-weight:600;margin-bottom:6px}.num{display:inline-block;min-width:26px;text-align:center;background:var(--teal);color:#0e1a19;border-radius:4px;font-size:.8rem;margin-right:6px}
.step-note{white-space:pre-wrap;margin:0 0 8px;color:#cfcabf;font-size:.92rem}
.thumbs,.existing{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.existing{margin-bottom:10px}
.thumb{position:relative;display:block;width:120px;height:120px;border-radius:6px;overflow:hidden;background:#101215;border:1px solid var(--line)}
.thumb-sm{width:84px;height:84px}.thumb img{width:100%;height:100%;object-fit:cover}
.thumb-fail{display:none}.thumb-broken img{display:none}.thumb-broken .thumb-fail{display:flex;height:100%;align-items:center;justify-content:center;text-align:center;font-size:.72rem;color:var(--muted);padding:6px}
.thumb-locked{display:flex;align-items:center;justify-content:center;text-align:center;font-size:.72rem;color:var(--amber);padding:8px}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:14px;margin-bottom:12px}
.params{display:grid;grid-template-columns:1fr 1fr;gap:12px}.params .wide{grid-column:1/-1}
.field label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:4px}
.form-control{background:#111317;border-color:var(--line);color:var(--ink)}.form-control:focus{background:#111317;color:var(--ink);border-color:var(--teal);box-shadow:none}
.group{font-size:1.2rem;color:var(--muted);margin:22px 0 10px;text-transform:uppercase;letter-spacing:.1em}
.camera-btn{width:100%;background:transparent;border:1px solid var(--teal);color:var(--teal);font-weight:600}.camera-btn:hover{background:var(--teal);color:#0e1a19}
.preview:not(:empty){margin-top:10px;display:flex;flex-direction:column;gap:6px;align-items:start}
.photo-preview{max-width:100%;max-height:220px;border-radius:6px}
.savebar{position:sticky;bottom:0;background:rgba(20,22,26,.96);border-top:1px solid var(--line);padding:10px 16px;display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap;z-index:10}
.savebar #save-status{flex:1 1 300px;max-width:560px;font-size:.88rem}.savebar .alert{margin:0;padding:6px 10px}
.btn-save{background:var(--amber);color:#1a1205;font-weight:700;padding:10px 26px}.btn-save:hover{background:#ffbe5c}.btn-save:disabled{opacity:.5}
@media(max-width:576px){.specs{grid-template-columns:1fr 1fr}.params{grid-template-columns:1fr}.identity h1{font-size:1.9rem}.btn-save{width:100%}}
