:root{--navy:#081a3a;--orange:#ff7a00;--bg:#f4f6f9;--line:#e4e9f0;--muted:#687386;--white:#fff;--green:#0b8f55;--red:#c53b3b}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Arial;background:var(--bg);color:#162238}a{color:inherit;text-decoration:none}button,.button{border:0;border-radius:12px;padding:12px 16px;font-weight:750;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.primary{background:var(--orange);color:white!important;box-shadow:0 8px 24px rgba(255,122,0,.22)}button:disabled{opacity:.55;cursor:wait}.app{min-height:100vh;display:grid;grid-template-columns:245px 1fr}aside{background:var(--navy);color:white;padding:24px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.logo{font-size:25px;font-weight:900;letter-spacing:-1px;margin-bottom:28px}.logo span{color:var(--orange)}nav{display:grid;gap:6px}nav a{padding:12px 13px;border-radius:11px;color:#c7d0df;font-weight:650}nav a.active,nav a:hover{background:rgba(255,255,255,.1);color:#fff}nav .disabled{opacity:.5;cursor:not-allowed}nav small{float:right;font-size:9px;background:var(--orange);padding:3px 5px;border-radius:8px;color:#fff}.user{margin-top:auto;border-top:1px solid rgba(255,255,255,.12);padding-top:15px}.user b,.user span{display:block}.user span{font-size:11px;color:#aeb9ca;margin:4px 0 8px}.user button{padding:0;background:none;color:#ffb77a}main{padding:28px 32px;min-width:0}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}header h1{margin:0;font-size:27px}header p{margin:5px 0 0;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.stats>div,.panel{background:var(--white);border:1px solid var(--line);border-radius:18px;box-shadow:0 8px 28px rgba(8,26,58,.055)}.stats>div{padding:20px}.stats span{display:block;color:var(--muted);font-size:12px}.stats b{display:block;font-size:30px;margin-top:8px}.panel{padding:20px}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-title h2{margin:0}.section-title a,.section-title span{font-size:12px;color:var(--orange);font-weight:700}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:13px 10px;border-bottom:1px solid var(--line);font-size:13px}th{color:var(--muted);font-size:11px;text-transform:uppercase}td small,td a small{display:block;color:var(--muted);margin-top:4px}.status{font-size:10px;padding:5px 8px;border-radius:999px;background:#edf1f6;font-weight:800}.status.analyzed,.status.published{background:#e6f8ef;color:var(--green)}.status.analyzing{background:#fff1df;color:#b45a00}.status.error{background:#fdeaea;color:var(--red)}.empty{text-align:center;color:var(--muted);padding:30px}.form-panel form{display:grid;gap:18px;max-width:900px}label{display:grid;gap:7px;font-size:12px;font-weight:750}input,select{width:100%;border:1px solid #d6dde7;background:#fff;border-radius:11px;padding:12px 13px;font:inherit;outline:none}input:focus,select:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(255,122,0,.12)}.grid2,.grid3{display:grid;gap:13px}.grid2{grid-template-columns:1fr 1fr}.grid3{grid-template-columns:repeat(3,1fr)}.upload-note{background:#fff7ef;border:1px solid #ffd6b0;padding:13px;border-radius:12px;font-size:12px}.alert{padding:13px 15px;border-radius:12px;margin-bottom:15px}.alert.error{background:#fdeaea;color:#9e2929}.alert.success{background:#e8f8ef;color:#087944}.auth-bg{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top,#183763,var(--navy) 58%)}.login-card,.install-card{width:min(460px,92vw);background:#fff;padding:30px;border-radius:24px;box-shadow:0 30px 80px rgba(0,0,0,.28)}.install-card{width:min(680px,94vw);margin:30px 0}.login-card .logo,.install-card .logo{color:var(--navy);margin-bottom:16px}.login-card h1,.install-card h1{margin:0}.login-card p,.install-card p{color:var(--muted)}.login-card form,.install-card form{display:grid;gap:14px}.install-card h3{margin:16px 0 0;color:var(--navy)}.product-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.meta{font-size:12px;color:var(--muted);margin-bottom:8px}.gallery{display:flex;gap:10px;overflow:auto;padding-bottom:12px;margin-bottom:10px}.gallery img{width:160px;height:105px;object-fit:contain;background:#10151d;border-radius:14px;flex:none}.analysis{margin-top:12px}.analysis-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.analysis-grid>div{background:#f5f7fa;padding:12px;border-radius:12px}.analysis-grid span{display:block;font-size:10px;color:var(--muted)}.analysis-grid b{display:block;margin-top:4px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chips span{background:#edf2f7;border-radius:999px;padding:6px 9px;font-size:11px}details{margin-top:16px}pre{overflow:auto;background:#101827;color:#d8e2f0;padding:14px;border-radius:12px;font-size:11px}.empty-analysis{text-align:center;padding:36px;color:var(--muted)}@media(max-width:900px){.app{grid-template-columns:1fr}aside{position:static;height:auto;padding:14px;display:block}aside .logo{margin:0 0 10px}nav{display:flex;overflow:auto}.user{display:none}main{padding:18px}.stats{grid-template-columns:1fr 1fr}.grid3{grid-template-columns:1fr}.analysis-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){header{align-items:flex-start;gap:10px}.stats,.grid2{grid-template-columns:1fr}.gallery img{width:135px}.product-head{align-items:flex-start;gap:12px;flex-direction:column}}