:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#f5f2f7;background:#0d0c10;line-height:1.45;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 15% 0,#2a1326 0,transparent 34rem),linear-gradient(180deg,#0d0c10,#141118)}button,input,select{font:inherit}.shell{max-width:1220px;margin:0 auto;padding:24px}.hidden{display:none!important}.auth-card{width:min(520px,100%);margin:6vh auto;background:#19151d;border:1px solid #34283a;border-radius:24px;padding:28px;box-shadow:0 28px 80px #0008}.brand{display:flex;align-items:center;gap:14px;margin-bottom:24px}.brand.compact{margin:0;min-width:150px}.brand h1,.brand p{margin:0}.brand p,.brand small{color:#a99eac}.brand-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:linear-gradient(135deg,#ff4ba8,#8f5cff);font-size:26px;font-weight:900}.tabs{display:grid;grid-template-columns:1fr 1fr;background:#100e13;border-radius:14px;padding:4px;margin-bottom:20px}.tab,.topbar nav button{border:0;background:transparent;color:#a99eac;padding:10px 12px;border-radius:10px;cursor:pointer}.tab.active,.topbar nav button.active{background:#2c2130;color:white}.stack{display:grid;gap:14px}label{display:grid;gap:7px;color:#d9d1dc;font-size:14px}input,select{width:100%;background:#100e13;color:#fff;border:1px solid #3a3040;border-radius:11px;padding:11px 12px;outline:none}input:focus,select:focus{border-color:#d64d9d;box-shadow:0 0 0 3px #d64d9d22}.check{display:flex;align-items:flex-start;gap:9px}.check input{width:auto;margin-top:4px}.primary,.secondary,.ghost{border:0;border-radius:11px;padding:11px 15px;cursor:pointer;font-weight:700}.primary{background:linear-gradient(135deg,#f3459c,#9257ff);color:#fff}.secondary{background:#2b2130;color:#f8f3f9;border:1px solid #4b3a52}.ghost{background:transparent;color:#c7bdca;border:1px solid #3a3040}.primary:hover,.secondary:hover,.ghost:hover{filter:brightness(1.12)}.fineprint{font-size:12px;color:#9b909f}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:18px;background:#121016e8;backdrop-filter:blur(18px);border:1px solid #2d2431;border-radius:18px;padding:10px 12px;margin-bottom:22px}.topbar nav{display:flex;gap:3px;overflow:auto;flex:1}.topbar nav button{white-space:nowrap}.page-section{display:grid;gap:18px}.page-title{display:flex;align-items:end;justify-content:space-between;gap:16px}.page-title h2{margin:0;font-size:28px}.page-title p{margin:4px 0 0;color:#a99eac}.badge{padding:7px 12px;border-radius:99px;background:#332b37;color:#d7ced9;font-weight:700}.badge.ok{background:#183729;color:#9ef2bf}.badge.warn{background:#432a20;color:#ffbf99}.card{background:#19151d;border:1px solid #34283a;border-radius:18px;padding:20px;box-shadow:0 12px 36px #0003}.card h3{margin:0 0 12px}.grid{display:grid;gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.full{grid-column:1/-1}fieldset{border:1px solid #3a3040;border-radius:14px;padding:14px}legend{color:#cfc5d2;padding:0 8px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{display:flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid #43364a;border-radius:99px;background:#100e13;color:#cfc6d2}.chip input{width:auto}.inline-actions{display:flex;align-items:center;gap:14px}.checklist{display:grid;gap:8px}.check-item{display:flex;align-items:center;gap:9px;color:#c7bdca}.check-item:before{content:"○"}.check-item.ok:before{content:"●";color:#56d890}.privacy{border-color:#4b2b46;background:linear-gradient(135deg,#21151f,#19151d)}.media-list{display:grid;gap:8px;margin-top:14px}.media-row{display:flex;justify-content:space-between;gap:12px;padding:9px 10px;background:#110f14;border-radius:10px}.status-QUEUED,.status-PROCESSING{color:#ffd26f}.status-ANALYZED,.status-READY{color:#78e6a0}.status-FAILED{color:#ff7f91}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.photo-grid img,.match-photos img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px;background:#0c0b0e}.analysis-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.metric{background:#100e13;border-radius:12px;padding:12px}.metric small{display:block;color:#9f95a2}.metric strong{font-size:17px}.search-grid{grid-template-columns:minmax(320px,.9fr) 1.1fr}.dial-card{text-align:center}.dial-card canvas{width:min(360px,100%);height:auto;display:block;margin:0 auto}.dial-card input[type=range]{margin:10px 0}.dial-readout{display:flex;align-items:baseline;justify-content:center;gap:14px;margin:8px 0 16px}.dial-readout strong{font-size:28px}.dial-readout span{font-size:20px;color:#d7cbd9}.dial-readout small{color:#aa9cad}.big{width:100%;padding:14px}.notice{padding:14px 16px;background:#2d2130;border:1px solid #503b56;border-radius:14px}.results-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.result-card{background:#19151d;border:1px solid #34283a;border-radius:16px;padding:18px}.score{font-size:38px;font-weight:900;background:linear-gradient(135deg,#ff59ac,#a77aff);-webkit-background-clip:text;background-clip:text;color:transparent}.result-card p{color:#afa3b2}.result-actions{display:flex;gap:8px;flex-wrap:wrap}.price{font-size:42px;font-weight:900}.price span{font-size:15px;color:#a99eac;font-weight:500}.paywall{border-color:#8e4774;background:linear-gradient(135deg,#2a1726,#1b1620)}.match-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}#toast{position:fixed;right:22px;bottom:22px;z-index:100;background:#241b29;border:1px solid #4d3a54;color:#fff;padding:12px 16px;border-radius:12px;opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}#toast.show{opacity:1;transform:none}@media(max-width:900px){.topbar{position:static;flex-wrap:wrap}.topbar nav{order:3;width:100%}.grid.two,.form-grid,.search-grid,.results-grid{grid-template-columns:1fr}.analysis-summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.shell{padding:12px}.auth-card{padding:20px}.page-title{align-items:start;flex-direction:column}.photo-grid{grid-template-columns:repeat(2,1fr)}}
