:root{font-family:'Courier New',monospace;color:#e5e5e4;background:#08090a;color-scheme:dark;font-size:13px}*{box-sizing:border-box}body{margin:0;min-height:100vh;display:flex;flex-direction:column}button,input,select,textarea{font:inherit;border-radius:0}button,a,input,select,textarea{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #e4e4e2}button{cursor:pointer;border:1px solid #343638;background:#111214;color:#ddd;padding:11px 15px;transition:background .15s,border-color .15s}button:hover{background:#252628;border-color:#7c7e80}button:disabled{opacity:.45;cursor:wait}a{color:inherit}header{height:94px;border-bottom:1px solid #292a2c;margin:0 3.5vw;display:flex;align-items:center;gap:30px}.logo{font-size:29px;letter-spacing:-2px;font-weight:bold;text-decoration:none}.logo span{font-weight:normal;margin-left:9px;color:#b0b1b3}.header-caption,.eyebrow{font-size:10px;letter-spacing:2px;color:#85888a}.account{margin-left:auto;display:flex;align-items:center;gap:22px}.quiet{background:transparent;border-color:#303234;color:#aaa}main{flex:1;width:100%;padding:0 3.5vw}footer{margin:0 3.5vw;border-top:1px solid #292a2c;display:flex;justify-content:space-between;gap:20px;padding:25px 0;color:#747779;font-size:10px;letter-spacing:1px}h1{font-size:36px;font-weight:normal;letter-spacing:-2px;line-height:1.15;margin:12px 0 0}h2{font-size:20px;font-weight:normal;letter-spacing:-.7px;margin:0 0 20px}.muted,small{color:#919496;line-height:1.8}small{font-size:11px}.dot{color:#666}.primary{background:#dcdedc;color:#111;border-color:#dcdedc}.primary:hover{background:#fff;color:#080808}.primary span{float:right}.eyebrow{line-height:1.8}#login-panel{display:grid;grid-template-columns:1fr 1fr;max-width:1030px;min-height:500px;margin:8vh auto;border:1px solid #303234}.login-art{padding:36px;display:flex;flex-direction:column;border-right:1px solid #303234;overflow:hidden;background:radial-gradient(ellipse at center,#191b1d,#090a0b 72%)}.mark{font-size:clamp(100px,16vw,205px);line-height:1.4;letter-spacing:-35px;color:transparent;-webkit-text-stroke:1px #777b7d;transform:skew(-10deg);user-select:none}.login-art p{font-size:22px;letter-spacing:-1px;line-height:1.3;margin:0 0 40px}.login-art small{margin-top:auto;font-size:9px;letter-spacing:2px}.login-body{padding:50px 42px}.login-body h1{font-size:30px}.login-body .muted{margin:20px 0 28px}.login-body>small{display:block;margin-top:25px}form{display:grid;gap:20px}label{display:grid;gap:9px;color:#aaa;font-size:12px}input,textarea,select{width:100%;min-width:0;padding:12px;background:#0c0d0e;border:1px solid #393b3d;color:#eee}input::placeholder,textarea::placeholder{color:#616568}input:focus,textarea:focus,select:focus{border-color:#999}textarea{min-height:130px;resize:vertical}input[type=checkbox]{width:16px;height:16px;accent-color:#ddd}.check{display:flex;align-items:center;gap:10px}#workspace{display:grid;grid-template-columns:205px minmax(0,1fr);min-height:calc(100vh - 167px)}aside{padding:38px 26px 30px 0;border-right:1px solid #292a2c;display:flex;flex-direction:column}nav{display:grid;gap:7px;margin-top:20px}nav button{display:flex;gap:14px;text-align:left;border:1px solid transparent;background:none;padding:13px 11px;color:#999}nav button span{font-size:10px;color:#666}nav button.active{background:#1a1c1e;border-color:#343638;color:#fff}nav button.active span{color:#ccc}.aside-note{margin-top:auto;padding-top:90px;line-height:2;font-size:12px}.aside-note span{font-size:8px;color:#666;letter-spacing:1px}.workspace-body{padding:35px 0 60px 38px;min-width:0}.heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:32px}.heading button{font-size:11px}#status:empty{display:none}#status{padding:14px 18px;border:1px solid #444;white-space:pre-wrap;line-height:1.6;overflow-wrap:anywhere}#status.error,#editor-status.error{color:#e8aaa2}#status.success{color:#b7cbb0}#editor-status{white-space:pre-wrap;line-height:1.7;overflow-wrap:anywhere}.card{border:1px solid #303234;padding:24px;background:#0c0d0e}.toolbar{display:flex;gap:15px;align-items:center;justify-content:space-between;margin:0 0 20px}.toolbar input{max-width:350px}.count{color:#777;font-size:11px}.stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #303234;margin-bottom:26px}.stat{padding:23px;border-right:1px solid #303234}.stat:last-child{border:0}.stat strong{display:block;font-size:30px;font-weight:normal;margin-top:12px;letter-spacing:-1px}.stat span{font-size:10px;color:#939698}.table-wrap{overflow:auto;border:1px solid #303234}table{border-collapse:collapse;width:100%;text-align:left;white-space:nowrap}th{font-size:10px;color:#888;font-weight:normal;letter-spacing:1px;background:#101113}td,th{padding:17px 16px;border-bottom:1px solid #292b2d}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#101214}td{font-size:12px}td.product-name{min-width:180px;white-space:normal;max-width:360px}td .secondary{display:block;color:#777;font-size:10px;margin-top:6px}td button{font-size:11px;padding:8px 10px}.badge{font-size:10px;border:1px solid #424846;padding:5px 8px;color:#bdd0c4;white-space:nowrap}.badge.off{color:#8d8f91;border-color:#343638}.actions{display:flex;gap:8px;justify-content:flex-end}.empty{padding:45px 25px;text-align:center;color:#8d9092;border:1px dashed #333;line-height:1.8}.row{display:flex;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid #292b2d}.row:last-child{border-bottom:0}.row>strong{flex:1;overflow-wrap:anywhere;font-weight:normal}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}.photo{width:100%;height:220px;object-fit:contain;background:#141618;border:1px solid #252729}.photo-card{padding:14px}.photo-card p{font-size:11px}.photo-card code{font-size:9px;color:#808486;overflow-wrap:anywhere}.photo-card button{margin-top:15px}.danger{color:#d3a29c}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.full{grid-column:1/-1}.filters{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;margin-bottom:22px}.section-gap{margin-top:30px}.note{padding:16px 0;color:#8c9092;font-size:12px;line-height:1.7}.loading{padding:65px 0;color:#898d90;animation:pulse 1s infinite alternate}dialog{background:#0e1011;color:#ddd;border:1px solid #535659;padding:28px;width:min(650px,calc(100vw - 30px));max-height:90vh}dialog::backdrop{background:#000b;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.dialog-heading h2{margin:0}.dialog-heading button{border:0;background:transparent}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.image-fallback{height:220px;display:grid;place-items:center;background:#141618;color:#74797c;font-size:11px;text-align:center;padding:20px}[hidden]{display:none!important}@keyframes pulse{to{opacity:.4}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(min-width:1600px){main,header,footer{max-width:1500px;margin-left:auto;margin-right:auto}main{padding:0}header,footer{width:100%}}@media(max-width:950px){#workspace{grid-template-columns:170px minmax(0,1fr)}.workspace-body{padding-left:24px}aside{padding-right:16px}.header-caption{display:none}.login-body{padding:35px 28px}.filters{grid-template-columns:1fr 1fr}}@media(max-width:650px){header{height:76px}.logo{font-size:24px}.account{gap:10px;font-size:10px}main{padding:0 18px}header,footer{margin:0 18px}#login-panel{display:block;margin:35px auto}.login-art{display:none}.login-body{padding:30px 23px}#workspace{display:block}aside{border:0;padding:24px 0 0}aside>.eyebrow,.aside-note{display:none}nav{grid-template-columns:repeat(3,1fr);gap:5px;margin:0}nav button{font-size:10px;padding:11px 6px;gap:6px}.workspace-body{padding:27px 0 40px}h1{font-size:30px}.stats .stat{padding:15px 12px}.stat strong{font-size:25px}.stat span{font-size:9px}.toolbar{flex-wrap:wrap}.toolbar input{max-width:none}.form-grid,.filters{grid-template-columns:1fr}.row{gap:10px;flex-wrap:wrap}.row>strong{min-width:100px}.row button{font-size:10px}.card{padding:18px}footer{font-size:8px}footer>span:nth-child(2){display:none}dialog{padding:22px}}

/* Minimal terminal interface. */
:root{background:#080808;color:#ccc;font-size:14px}
header:has(#logout[hidden]){display:none}
header{height:60px;border:0}
main{width:100%;max-width:1400px;margin:0 auto}
#login-panel{display:block;width:100%;max-width:360px;min-height:0;margin:clamp(90px,22vh,230px) auto 50px;border:0;background:none}
.login-body{padding:0}
.login-body h1{font-size:20px;letter-spacing:0;margin:0 0 34px;line-height:1.4}
#login{gap:22px}
#login label{font-size:14px;color:#999}
#login input{padding:11px 0;border:0;border-bottom:1px solid #3a3a3a;background:transparent;font-size:16px}
#login input:focus{border-color:#bbb;outline:0}
#login button{justify-self:start;padding:8px 0;margin-top:7px;border:0;background:transparent;color:#ddd}
#login button:hover{color:#fff;text-decoration:underline}
#workspace{display:block;min-height:0}
aside{display:block;padding:12px 0 20px;border:0;border-bottom:1px solid #292a2c}
nav{display:flex;flex-wrap:wrap;gap:8px;margin:0}
nav button{padding:9px 12px}
.workspace-body{padding:28px 0 50px}
h1{font-size:27px;letter-spacing:-1px}
@media(max-width:650px){#login-panel{max-width:320px;margin-top:20vh}.login-body{padding:0}nav button{font-size:11px}.workspace-body{padding-top:24px}}

.photo-manager-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.photo-manager-grid .photo{height:160px}.photo-actions{display:flex;flex-wrap:wrap;gap:6px}.photo-actions button{padding:8px;font-size:11px}.photo-manager-grid .card{min-width:0}
