:root{--ink:#2c2437;--muted:#696174;--purple:#6b30b3;--line:#e8dff0;--soft:#f7f2fb;--red:#a72c36}*{box-sizing:border-box}body{margin:0;background:#faf9fc;color:var(--ink);font:16px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input{font:inherit}button{cursor:pointer}a{color:var(--purple)}.wrap{width:min(1160px,calc(100% - 32px));margin:auto}header{background:#fff;border-bottom:1px solid var(--line)}.top{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:72px}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}.brand>span{background:var(--purple);color:white;width:35px;height:35px;display:grid;place-items:center;border-radius:10px;font-weight:800}.brand strong{font-size:16px;letter-spacing:.02em}.brand em{font-style:normal;font-weight:400;color:var(--purple)}nav{display:flex;gap:22px;font-size:14px}nav a{text-decoration:none}.breadcrumb{flex-wrap:wrap;gap:9px;padding:20px 0;color:var(--muted);font-size:12px}.breadcrumb a{color:var(--muted)}.hero{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:30px;padding:32px 0 34px}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:800;color:var(--purple);margin:0 0 12px}h1{font-size:clamp(34px,4.5vw,56px);line-height:1.12;letter-spacing:-.045em;margin:0 0 20px}h1 span{color:var(--purple)}.hero p:not(.eyebrow){color:var(--muted);max-width:650px;margin:10px 0}.hero .subtitle{font-size:21px;font-weight:700;color:var(--ink)!important}.badges{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}.badges span,.mini-tags span{padding:5px 12px;background:#f1e9f8;color:#643594;border:1px solid #e3d4ef;border-radius:100px;font-size:12px;font-weight:700}.hero-art{position:relative;min-height:260px;display:grid;place-items:center;background:radial-gradient(ellipse,#eadcf7 0%,transparent 65%)}.picture-icon{width:200px;transform:rotate(-7deg);color:#8b57bf}.art-tag{position:absolute;right:10%;top:40px;border:1px solid #e4d5ee;border-radius:10px;padding:8px 22px;background:white;box-shadow:0 10px 30px #6b30b312;font-weight:750;color:#653297}.art-tag b{margin-left:22px;color:#a479c9}.art-tag.second{top:auto;bottom:58px;right:auto;left:5%}.art-caption{position:absolute;bottom:0;color:var(--muted);font-size:12px}.notice{border:1px solid #ead9b2;border-left:4px solid #c58c20;background:#fff9eb;padding:15px 20px;border-radius:11px;margin-bottom:25px;font-size:14px;color:#73531e}.notice p{margin:2px 0 0}.tool{scroll-margin-top:16px;background:white;border:1px solid var(--line);border-radius:19px;overflow:hidden;box-shadow:0 15px 45px #33204208}.tool-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 29px;border-bottom:1px solid var(--line)}h2{font-size:25px;line-height:1.25;letter-spacing:-.025em;margin:0 0 10px}.tool-heading .eyebrow{margin-bottom:6px}.tool-heading h2{margin:0}.status-badge{display:inline-block;padding:5px 10px;border:1px solid var(--line);border-radius:99px;background:#faf7fd;color:var(--muted);font-size:11px;white-space:nowrap}.status-badge.ready{color:#176348;background:#edfaf4;border-color:#c6e6d5}.service-notice{padding:13px 29px;background:#fff6e6;color:#765219;font-size:14px}.work-grid{display:grid;grid-template-columns:1fr 1.05fr}.upload-panel,.results-panel{padding:28px;min-width:0}.upload-panel{border-right:1px solid var(--line)}h3{font-size:19px;margin:0 0 17px;letter-spacing:-.02em}.step{display:inline-grid;place-items:center;width:29px;height:29px;border-radius:8px;margin-right:6px;background:#f2e9fa;color:var(--purple);font-size:12px}.drop-zone{display:flex;align-items:center;flex-direction:column;padding:28px 20px;border:2px dashed #d8c4eb;border-radius:13px;background:#fcfaff;text-align:center}.drop-zone svg{color:#8b58b9;margin-bottom:13px}.drop-zone strong{font-size:19px}.drop-zone p{margin:2px 0 14px;color:var(--muted);font-size:14px}.drop-zone small{margin-top:13px;color:var(--muted);font-size:12px}.drop-zone.drag{background:#f0e4fc;border-color:var(--purple)}.button{display:inline-flex;justify-content:center;align-items:center;padding:11px 17px;min-height:44px;border:1px solid transparent;border-radius:9px;font-weight:750;font-size:14px;line-height:1.4;text-decoration:none}.primary{background:var(--purple);color:#fff}.primary:hover{background:#56218f}.secondary{background:#fff;border-color:#ceb7e0;color:var(--purple)}.secondary:hover{background:#f6f0fc}.full{width:100%}button:disabled{opacity:.46;cursor:not-allowed}.file-label{position:relative;cursor:pointer;overflow:hidden}.file-label input{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.file-label:focus-within{outline:3px solid #b48dd9;outline-offset:3px}.privacy-note{margin:14px 0 18px;font-size:12px;color:var(--muted)}.file-card{display:flex;align-items:center;gap:12px;padding:12px;margin-top:13px;border:1px solid var(--line);border-radius:10px}.file-card img{width:54px;height:54px;object-fit:contain;border-radius:6px;background:repeating-conic-gradient(#eee 0% 25%,white 0% 50%) 50%/12px 12px}.file-card>div{min-width:0;flex:1}.file-card strong{display:block;font-size:13px;overflow-wrap:anywhere}.file-card span{display:block;color:var(--muted);font-size:12px}.icon-button{background:none;border:none;color:var(--muted);font-size:25px;min-width:32px;min-height:40px}.error{color:var(--red);background:#fff0f1;border:1px solid #ecc7cd;border-radius:8px;padding:11px 13px;font-size:13px}.results-panel{background:linear-gradient(150deg,#fdfbff,#fff)}.result-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.result-heading h3{margin:0}.empty-result{display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;min-height:360px;padding:25px 12px}.empty-symbol{color:#b490d1;font-size:76px;line-height:1;margin-bottom:16px}.empty-result h4{font-size:20px;margin:0 0 9px}.empty-result p{font-size:14px;color:var(--muted);margin:0 0 18px}.mini-tags{display:flex;gap:8px}.mini-tags span{font-size:11px;padding:3px 10px}.technical{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0}.technical>div{padding:11px 13px;background:white;border:1px solid var(--line);border-radius:9px}.technical dt{color:var(--muted);font-size:11px}.technical dd{margin:1px 0 0;font-size:15px;font-weight:700}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;padding:9px 6px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-weight:650}.results-panel h4{margin:20px 0 9px;font-size:16px}.finding-note{color:var(--muted);font-size:13px}.limits{border-left:3px solid #d9c7e9;padding:9px 13px;background:#f8f3fc;border-radius:0 8px 8px 0;font-size:12px}.limits strong{color:#62378c}.limits p{margin:6px 0;color:var(--muted)}.clean-options{border-top:1px solid var(--line);margin-top:24px;padding-top:22px}.clean-options fieldset{border:0;padding:0;margin:0 0 16px;min-width:0}.clean-options legend{font-size:12px;font-weight:700;margin-bottom:8px}.profile{display:flex;align-items:flex-start;gap:9px;padding:12px;border:1px solid var(--line);border-radius:9px;margin-bottom:8px;cursor:pointer}.profile:has(input:checked){border-color:#a67bc6;background:#faf5fe}.profile input{margin:5px 0 0;flex-shrink:0;accent-color:var(--purple)}.profile strong{font-size:13px}.profile small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.consent{display:flex;gap:9px;font-size:12px;margin:12px 0;color:var(--muted);align-items:flex-start}.consent input{margin:4px 0 0;accent-color:var(--purple);flex-shrink:0;width:16px;height:16px}.finished{margin-top:23px;padding:17px;border:1px solid #cce2d8;border-radius:11px;background:#f3fbf7}.finished h4{margin:0 0 7px;color:#246247}.finished p{font-size:12px;margin:7px 0;color:#466454}.actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.text-button{border:0;background:none;color:var(--purple);font-size:13px;font-weight:700;padding:10px 0;text-decoration:underline}.announcement{font-size:13px;color:var(--purple);margin:8px 0 0}#progress-area{margin-top:12px}progress{width:100%;accent-color:var(--purple);height:8px}#progress-label{margin:4px 0;font-size:12px;color:var(--muted)}.guide{background:white;border:1px solid var(--line);border-radius:19px;padding:32px 36px;margin:36px 0 48px}.guide h2{font-size:23px;margin-top:28px}.guide>.eyebrow+h2{margin-top:0}.guide p,.guide li{color:var(--muted);font-size:15px}.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:25px 0}.guide-grid article{border:1px solid var(--line);background:#fcfaff;border-radius:11px;padding:20px}.guide-grid h2{font-size:19px;margin-top:0}.guide-grid a{font-size:13px}.faq details{border-bottom:1px solid var(--line);padding:14px 0}.faq summary{font-weight:700;cursor:pointer;font-size:15px}.faq p{margin:8px 0}.attribution{font-size:12px!important;padding-top:20px}.related{display:flex;flex-wrap:wrap;gap:9px}.related a{border:1px solid var(--line);border-radius:8px;padding:8px 12px;font-size:13px;text-decoration:none;font-weight:650}footer{background:#282032;color:#eee;padding:24px 0}footer .wrap{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:12px}*:focus-visible{outline:3px solid #b48dd9;outline-offset:3px}.skip-link{position:absolute;top:-80px;left:15px;padding:12px;background:white;z-index:10}.skip-link:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}@media(max-width:850px){.hero{grid-template-columns:1fr}.hero-art{display:none}.work-grid{grid-template-columns:1fr}.upload-panel{border-right:0;border-bottom:1px solid var(--line)}.guide-grid{grid-template-columns:1fr}.empty-result{min-height:240px}}@media(max-width:500px){.wrap{width:calc(100% - 24px)}.top nav{gap:12px;font-size:12px}.top nav a:last-child{display:none}.hero{padding:20px 0}h1{font-size:36px}.tool-heading{padding:20px;align-items:flex-start;flex-direction:column}.upload-panel,.results-panel{padding:20px}.result-heading{align-items:flex-start;flex-direction:column}.guide{padding:23px 20px}.notice{padding:13px 16px}.technical{gap:7px}.technical>div{padding:9px}.technical dd{font-size:13px}.actions .button{width:100%}}
