:root{--bg:#f4f1ea;--panel:#fffdf8;--ink:#101012;--muted:#5c5f6c;--accent:#ff6f3c;--accent-ink:#ffffff;--border:#e6dfd5}*{box-sizing:border-box}body,html{margin:0;padding:0;background:radial-gradient(circle at 10% 10%,#fff4e8 0,var(--bg) 60%);color:var(--ink);min-height:100%}body{font-family:var(--font-body),sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}main{width:min(1040px,92vw);margin:2rem auto 4rem}.card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:1.25rem;box-shadow:0 6px 20px rgba(16,16,18,.08)}.row{display:flex;gap:.75rem;align-items:center}.stack{display:grid;grid-gap:.75rem;gap:.75rem}button,input,select{font:inherit}input,select{width:100%;padding:.65rem .75rem;border:1px solid var(--border);border-radius:10px;background:#ffffff}button{border:1px solid transparent;border-radius:10px;padding:.65rem .9rem;cursor:pointer;transition:transform .14s ease,opacity .14s ease}button.primary{background:var(--accent);color:var(--accent-ink)}button.secondary{background:#ffffff;border-color:var(--border)}button:disabled{opacity:.6;cursor:not-allowed}button:not(:disabled):hover{transform:translateY(-1px)}.muted{color:var(--muted)}code,pre{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}img.preview{max-width:100%;border-radius:14px;border:1px solid var(--border);display:block}.grid{display:grid;grid-gap:1rem;gap:1rem}.upload-dropzone{border:1.5px dashed var(--border);border-radius:14px;padding:1rem;background:linear-gradient(180deg,#fffefb,#fff9f0);transition:border-color .14s ease,background .14s ease,transform .14s ease}.upload-dropzone.is-dragover{border-color:var(--accent);background:#fff3e8;transform:translateY(-1px)}.workbench-stage{width:min(100%,400px);margin:0 auto}.workbench-stage>.stack{width:100%}.workbench-stage.is-dragover .compare,.workbench-stage.is-dragover .workbench-stage__placeholder{border-color:var(--accent)}.workbench-stage__placeholder{width:100%;aspect-ratio:1/1;max-height:400px;border:1px dashed var(--border);border-radius:14px;display:grid;place-items:center;text-align:center;color:var(--muted);background:linear-gradient(180deg,#fffcf7,#fff6ea);padding:1rem;cursor:pointer}.workbench-stage__placeholder:hover{border-color:var(--accent)}.workbench-stage__placeholder:focus-visible{outline:3px solid rgba(255,111,60,.28);outline-offset:2px}.compare{position:relative;width:100%;aspect-ratio:1/1;max-height:400px;overflow:hidden;border-radius:14px;border:1px solid var(--border);background:linear-gradient(45deg,#ece9e4 25%,transparent 0) -8px 0 /16px 16px,linear-gradient(-45deg,#ece9e4 25%,transparent 0) -8px 0 /16px 16px,linear-gradient(45deg,transparent 75%,#ece9e4 0) -8px 0 /16px 16px,linear-gradient(-45deg,transparent 75%,#ece9e4 0) -8px 0 /16px 16px}.compare--clickable{cursor:pointer;transition:border-color .14s ease,box-shadow .14s ease}.compare--clickable:hover{border-color:var(--accent);box-shadow:0 0 0 3px rgba(255,111,60,.16)}.compare--clickable:focus-visible{outline:3px solid rgba(255,111,60,.28);outline-offset:2px}.compare__base,.compare__overlay{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.compare__processing-overlay{position:absolute;inset:0;background:linear-gradient(45deg,#f6f6f6 25%,transparent 0) -8px 0 /16px 16px,linear-gradient(-45deg,#f6f6f6 25%,transparent 0) -8px 0 /16px 16px,linear-gradient(45deg,transparent 75%,#f6f6f6 0) -8px 0 /16px 16px,linear-gradient(-45deg,transparent 75%,#f6f6f6 0) -8px 0 /16px 16px,linear-gradient(90deg,rgba(255,111,60,.15),rgba(255,111,60,.35))}.compare__line{position:absolute;top:0;bottom:0;width:2px;background:rgba(255,111,60,.95);box-shadow:0 0 0 3px rgba(255,111,60,.18);transform:translateX(-1px);pointer-events:none}.compare__badge{position:absolute;top:.7rem;right:.7rem;border-radius:999px;background:rgba(16,16,18,.74);color:#fff;padding:.25rem .6rem;font-size:.72rem;letter-spacing:.02em}.history-strip{display:grid;grid-gap:.6rem;gap:.6rem;grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.history-chip{background:#ffffff;border:1px solid var(--border);border-radius:12px;padding:.45rem;display:grid;grid-gap:.35rem;gap:.35rem;text-align:left}.history-chip img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px;border:1px solid var(--border)}.history-chip span{font-size:.78rem;line-height:1.2}.dashboard-shell{display:grid;grid-gap:1rem;gap:1rem}.dashboard-nav{display:grid;grid-gap:.65rem;gap:.65rem}.dashboard-nav__links{display:flex;flex-wrap:wrap;gap:.55rem}.dashboard-nav__link{border:1px solid var(--border);background:#fff;border-radius:999px;padding:.42rem .82rem;font-size:.9rem;font-weight:600;transition:background .14s ease,border-color .14s ease}.dashboard-nav__link:hover{border-color:var(--accent);background:#fff4ea}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:12px;background:#ffffff}.admin-users-table{width:100%;min-width:980px;border-collapse:collapse}.admin-users-table thead th{background:#fff8ef;color:var(--ink);font-weight:700;text-align:left}.admin-users-table td,.admin-users-table th{padding:.6rem .7rem;border-bottom:1px solid var(--border);vertical-align:top}.admin-users-table tr:last-child td{border-bottom:0}.admin-users-table__self{background:#fffaf2}.admin-users-table__actions{display:flex;flex-wrap:wrap;gap:.35rem}.admin-users-table__actions button{padding:.45rem .6rem;font-size:.82rem}.admin-users-table__actions input{width:12.5rem;min-width:10rem;padding:.45rem .5rem;font-size:.82rem}@media (min-width:860px){.grid.two{grid-template-columns:1.3fr 1fr}}