:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172033;background:#f3f6fa}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at top right,rgba(24,87,196,.10),transparent 30rem),#f3f6fa}
.shell{width:min(760px,calc(100% - 28px));margin:36px auto 24px}.card{background:#fff;border:1px solid #e4e9f1;border-radius:22px;box-shadow:0 16px 50px rgba(28,45,78,.08);overflow:hidden}
.brand{display:flex;gap:12px;align-items:center;padding:22px 24px;border-bottom:1px solid #edf0f5}.brand-mark{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-weight:800;color:#fff;background:#172033}
.brand-name{font-weight:800;font-size:18px}.brand-subtitle{color:#6f7a8d;font-size:13px;margin-top:2px}.intro{padding:28px 26px 8px}.eyebrow{color:#315fb5;font-weight:800;font-size:12px;letter-spacing:.08em}
h1{margin:8px 0;font-size:clamp(28px,6vw,38px);line-height:1.05}.intro p,.state p{color:#667287;line-height:1.55}.documents{padding:10px 26px 24px;display:grid;gap:14px}
.doc{border:1px solid #e3e8f0;border-radius:16px;padding:18px;background:#fbfcfe}.doc-top{display:flex;align-items:center;justify-content:space-between;gap:14px}.doc-title{font-weight:800}
.doc-status{white-space:nowrap;font-size:12px;font-weight:800;padding:7px 10px;border-radius:999px;background:#eef2f7;color:#657186}.doc-status.received{background:#e8f8ef;color:#187443}
.doc-hint{margin:8px 0 14px;color:#748096;font-size:14px;line-height:1.45}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.file-input{display:none}
.button{appearance:none;border:0;background:#172033;color:white;border-radius:12px;padding:11px 15px;font-weight:800;cursor:pointer}.button.secondary{background:#edf2fa;color:#244c92}.file-name{color:#667287;font-size:13px;word-break:break-all}
.progress{margin-top:12px;height:7px;background:#edf1f6;border-radius:999px;overflow:hidden}.progress>span{display:block;height:100%;width:0;background:#315fb5;transition:width .25s ease}.message{margin-top:10px;font-size:13px;color:#536078}.message.error{color:#a52b2b}
.privacy,.done-box{margin:0 26px 26px;border-radius:16px;padding:16px 18px;display:flex;gap:14px;align-items:flex-start}.privacy{background:#f5f8fd;border:1px solid #e1e8f4}.done-box{background:#effaf4;border:1px solid #d7efdf}.privacy p,.done-box p{margin:4px 0 0;color:#69758a;line-height:1.45}
.state{min-height:340px;padding:50px 26px;text-align:center;display:grid;place-items:center;align-content:center}.spinner{width:34px;height:34px;border-radius:50%;border:3px solid #e5eaf1;border-top-color:#315fb5;animation:spin .8s linear infinite}
.status-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:20px}.error-icon{color:#a52b2b;background:#fdeeee}.ok-icon{color:#187443;background:#dff4e8}.muted{font-size:13px}.hidden{display:none!important}
footer{padding:18px 4px 0;display:flex;justify-content:center;gap:8px;color:#8a95a7;font-size:12px}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:560px){.shell{margin-top:14px;width:min(100% - 18px,760px)}.brand,.intro,.documents{padding-left:18px;padding-right:18px}.privacy,.done-box{margin-left:18px;margin-right:18px}}
