:root{--ink:#193b35;--muted:#6c7d78;--line:#e1e9e5;--paper:#f6f8f6;--accent:#246b58;--pale:#eaf4ef}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.5 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.topbar{min-height:66px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(16px,calc((100% - 820px)/2));gap:12px}.brand{display:flex;gap:9px;align-items:center;text-decoration:none;color:var(--ink);font-weight:800}.brand small{display:block;font-size:9px;color:var(--muted);letter-spacing:1px;text-transform:uppercase}.brand-mark{background:var(--ink);color:white;border-radius:10px;padding:5px 11px;font-size:20px}.topbar nav{display:flex;gap:14px;align-items:center}.topbar nav a,.link-button{color:var(--muted);font-size:12px;text-decoration:none;border:0;background:none;font-weight:700}.topbar nav form{margin:0}.container{max-width:820px;margin:auto;padding:30px 18px 45px;min-height:calc(100vh - 120px)}footer{max-width:820px;margin:auto;padding:0 18px 22px;color:#91a09a;font-size:10px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.5px;color:var(--accent);margin-bottom:6px}h1{font-size:clamp(28px,5vw,36px);line-height:1.15;letter-spacing:-1px;margin:0 0 8px}h2{font-size:17px;margin:0 0 5px}.muted{color:var(--muted);font-size:13px;margin:0}.panel{background:white;border:1px solid var(--line);border-radius:17px;padding:22px;margin-bottom:17px;box-shadow:0 10px 30px #193b3508}.upload-panel{text-align:center;padding:27px 20px}.upload-icon{margin:0 auto 12px;background:var(--pale);color:var(--accent);border-radius:15px;width:48px;height:48px;font-size:27px}.upload-panel>p{margin:5px 0 20px}.form-stack{display:flex;flex-direction:column;gap:14px;text-align:left}.form-stack label:not(.file-picker){display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700}.form-stack input:not([type=file]){padding:12px;border:1px solid var(--line);border-radius:9px;font:inherit}.primary,.secondary{display:inline-flex;justify-content:center;align-items:center;padding:12px 16px;border:0;border-radius:10px;background:var(--accent);color:white;font-size:13px;font-weight:750;text-decoration:none;cursor:pointer;min-height:43px}.file-picker{display:flex;flex-direction:column;align-items:center;gap:6px;border:1.5px dashed #b7cdc1;background:#fbfdfb;border-radius:12px;padding:18px 10px}.file-picker input{max-width:100%;font-size:11px}.file-title{font-size:13px;color:var(--accent);font-weight:750}.file-subtitle{font-size:11px;color:var(--muted);overflow-wrap:anywhere}.preview{max-width:100%;max-height:280px;border-radius:10px}.hidden{display:none!important}.notice{margin-top:20px;background:#f7faf8;padding:13px;text-align:left;border-radius:10px;color:var(--muted);font-size:12px}.notice strong{color:var(--ink)}.notice ul{margin:5px 0 0;padding-left:18px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:27px 0 12px}.text-link,.back-link{font-size:12px;color:var(--accent);font-weight:750;text-decoration:none}.history-list{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden}.history-row{display:flex;align-items:center;gap:11px;padding:14px;border-bottom:1px solid #edf1ee;color:var(--ink);text-decoration:none}.history-row:last-child{border:0}.result-dot{width:8px;height:8px;background:#5b9b7e;border-radius:50%;flex-shrink:0}.history-info{flex:1;min-width:0}.history-info strong{display:block;font-size:12px;overflow-wrap:anywhere}.history-info small,.history-value small{display:block;color:var(--muted);font-size:10px}.history-value{text-align:right;font-size:14px;font-weight:800;white-space:nowrap}.empty-state{padding:24px;text-align:center;background:white;border:1px dashed var(--line);border-radius:12px;color:var(--muted);font-size:13px}.empty-state a{color:var(--accent)}.disclaimer{margin-top:17px;background:#eef2ef;border-radius:10px;padding:12px;color:#75837d;font-size:11px;line-height:1.6}.login-wrap{max-width:420px;margin:35px auto}.login-wrap h1{font-size:32px}.login-wrap>.muted{margin-bottom:20px}.small{font-size:11px;margin-top:13px}.alert{padding:12px;border-radius:9px;margin-bottom:14px;font-size:13px}.error{background:#fff0ef;color:#a52e32}.avatar,.status-pill{background:var(--pale);color:var(--accent);padding:9px 12px;border-radius:99px;font-size:11px;font-weight:800}.result-hero{padding:27px}.big-number{font-size:clamp(36px,8vw,53px);font-weight:850;letter-spacing:-2px;margin:7px 0 13px}.big-number span{font-size:15px;color:var(--muted);letter-spacing:0}.result-image{display:block;width:100%;height:auto;max-height:520px;object-fit:contain;border-radius:10px;margin-top:14px}.image-actions{display:flex;gap:9px;margin-top:12px;flex-wrap:wrap}.secondary{background:#eff5f1;color:var(--accent);font-size:11px;min-height:37px}.metrics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:15px}.metric{padding:12px;background:#f7faf8;border:1px solid #e9efeb;border-radius:10px}.metric span{display:block;font-size:10px;color:var(--muted)}.metric strong{font-size:16px}@media(min-width:620px){.metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:480px){.container{padding:23px 13px 35px}.topbar{padding:0 12px}.topbar nav{gap:9px}.topbar nav a,.link-button{font-size:10px}.panel{padding:17px}.upload-panel{padding:22px 14px}.history-row{gap:8px;padding:12px 9px}.history-info strong{font-size:11px}.history-value{font-size:12px}.big-number{letter-spacing:-1px}}