*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%}body{font-family:DM Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;color:#0f172a;background:#0b1220}#root{min-height:100vh}.page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:radial-gradient(ellipse 80% 60% at 50% -10%,rgba(37,99,235,.35),transparent),radial-gradient(ellipse 60% 50% at 100% 100%,rgba(14,165,233,.12),transparent),linear-gradient(165deg,#0b1220,#111827 45%,#0f172a)}.card{width:100%;max-width:520px;background:#fffffffa;border:1px solid rgba(255,255,255,.6);border-radius:20px;padding:28px 32px;box-shadow:0 24px 48px #00000047,0 0 0 1px #0f172a0a}.card-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px}.brand{flex:1;min-width:0}.brand-logo{display:block;height:40px;width:auto;max-width:180px;object-fit:contain}.lang-switch{display:inline-flex;padding:3px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;flex-shrink:0}.lang-switch-btn{min-width:44px;padding:6px 12px;border:none;border-radius:999px;background:transparent;color:#64748b;font-family:inherit;font-size:.8rem;font-weight:700;letter-spacing:.04em;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.lang-switch-btn:hover:not(.active){color:#334155}.lang-switch-btn.active{background:#fff;color:#1d4ed8;box-shadow:0 1px 4px #0f172a1a}.page-title{margin:0 0 12px;font-size:1.5rem;font-weight:700;letter-spacing:-.03em;color:#0f172a;line-height:1.25}.intro{margin:0 0 24px;padding:14px 16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;font-size:.925rem;line-height:1.55;color:#475569}.meta{margin:0 0 24px;padding:4px 0;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;background:#fafbfc}.meta-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:12px;align-items:start;padding:14px 16px;border-bottom:1px solid #e2e8f0}.meta-row:last-child{border-bottom:none}.meta-label{display:block;font-size:.78rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.meta-value{margin:0;font-size:.975rem;font-weight:600;color:#0f172a;text-align:right;word-break:break-word}.confirm-box{display:flex;gap:12px;align-items:flex-start;margin-bottom:20px;padding:14px 16px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.confirm-box:has(input:checked){border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.confirm-box input{margin-top:3px;width:18px;height:18px;accent-color:#2563eb;flex-shrink:0;cursor:pointer}.confirm-text{margin:0;font-size:.925rem;font-weight:600;color:#1e293b;line-height:1.45}.btn-primary{width:100%;padding:15px 20px;border:none;border-radius:12px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-family:inherit;font-size:.975rem;font-weight:700;letter-spacing:-.01em;cursor:pointer;box-shadow:0 10px 24px #2563eb59;transition:transform .12s ease,box-shadow .12s ease,opacity .12s ease}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 28px #2563eb66}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.footer-note{margin:24px 0 0;padding-top:20px;border-top:1px solid #e2e8f0}.footer-note p{margin:0;font-size:.75rem;line-height:1.5;color:#94a3b8;text-align:center}.alert{margin:0 0 16px;padding:12px 14px;border-radius:10px;font-size:.875rem;line-height:1.5}.alert-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.alert-warn{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.status-panel{text-align:center;padding:12px 0 8px}.status-icon{width:64px;height:64px;margin:0 auto 20px;border-radius:50%;display:flex;align-items:center;justify-content:center}.status-icon.success{background:#ecfdf5;color:#059669;box-shadow:0 0 0 8px #10b9811f}.status-icon.error{background:#fef2f2;color:#dc2626;box-shadow:0 0 0 8px #dc262614}.status-icon.loading{background:#eff6ff;color:#2563eb}.status-message{margin:0;font-size:1.05rem;font-weight:700;color:#0f172a;line-height:1.4}.spinner{width:28px;height:28px;border:3px solid #bfdbfe;border-top-color:#2563eb;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:480px){.card{padding:22px 20px;border-radius:16px}.card-top{margin-bottom:22px}.brand-logo{height:34px;max-width:150px}.meta-row{grid-template-columns:1fr;gap:6px}.meta-value{text-align:left}.page-title{font-size:1.3rem}}
