*,:before,:after{box-sizing:border-box}:root{--primary:#e05c00;--primary-dark:#b84a00;--bg:#f5f5f5;--surface:#fff;--border:#ddd;--text:#333;--text-muted:#888;--success-bg:#f0fdf4;--success-border:#86efac;--warn-bg:#fffbeb;--warn-border:#fcd34d;--error:#dc2626;color:var(--text);background:var(--bg);font-family:system-ui,Segoe UI,Roboto,sans-serif;font-size:15px}body{margin:0}.app{flex-direction:column;min-height:100vh;display:flex}.app-header{background:var(--primary);color:#fff;justify-content:space-between;align-items:center;height:56px;padding:0 24px;display:flex}.app-header h1{color:#fff;margin:0;font-size:18px}.header-right{align-items:center;gap:16px;font-size:14px;display:flex}main{width:100%;max-width:860px;margin:0 auto;padding:24px}.login-wrapper{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{width:360px}.login-card h2{margin:0 0 4px}.subtitle{color:var(--text-muted);margin:0 0 24px;font-size:14px}.card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:24px}.form-card h2{margin:0 0 24px;font-size:20px}.form-section{margin-bottom:28px}.form-section h3{text-transform:uppercase;letter-spacing:.6px;color:var(--text-muted);border-bottom:1px solid var(--border);margin:0 0 12px;padding-bottom:6px;font-size:13px}.test-section{border:1px solid var(--border);background:#fafafa;border-radius:6px;padding:16px}.row{flex-wrap:wrap;gap:16px;display:flex}.row .field{flex:160px}.field{flex-direction:column;gap:4px;margin-bottom:12px;display:flex}.field label{font-size:13px;font-weight:500}.hint{color:var(--text-muted);font-weight:400}input[type=text],input[type=email],input[type=number],input[type=password],input[type=date]{border:1px solid var(--border);border-radius:5px;outline:none;width:100%;padding:8px 10px;font-size:14px;transition:border-color .15s}input:focus{border-color:var(--primary)}.checkboxes{align-items:center;margin-top:4px}.checkbox-label{cursor:pointer;align-items:center;gap:6px;font-size:14px;display:flex}.checkbox-label input{width:auto}.btn{cursor:pointer;border:1px solid #0000;border-radius:5px;padding:8px 18px;font-size:14px;font-weight:500;transition:background .15s,opacity .15s}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-dark)}.btn-secondary{color:var(--primary);border-color:var(--primary);background:#fff}.btn-secondary:hover:not(:disabled){background:#fff5f0}.btn-outline{color:#fff;background:0 0;border-color:#fff9}.btn-outline:hover:not(:disabled){background:#ffffff26}.btn-large{padding:12px 32px;font-size:16px}.full-width{width:100%}.send-bar{border-top:1px solid var(--border);justify-content:flex-end;margin-top:24px;padding-top:20px;display:flex}.error{color:var(--error);margin:8px 0;font-size:13px}.result{border-radius:6px;margin:16px 0;padding:14px 16px;font-size:14px}.result-success{background:var(--success-bg);border:1px solid var(--success-border)}.result-warn{background:var(--warn-bg);border:1px solid var(--warn-border)}.voucher-code{margin-top:8px;font-size:13px}.voucher-code code{letter-spacing:2px;background:#e5e7eb;border-radius:4px;padding:2px 8px;font-size:15px}.error-list{margin-top:10px;font-size:13px}.error-list summary{cursor:pointer}.error-list ul{margin:8px 0 0;padding-left:16px}.error-list li{margin-bottom:4px}
