.login-page,.consent-page{min-height:100vh;display:grid;place-items:center;padding:2rem;background:radial-gradient(circle at 14% 18%,rgba(120,104,255,.15),transparent 24rem),radial-gradient(circle at 86% 82%,rgba(40,215,229,.2),transparent 28rem),#f7f4ec;font-family:Aptos,Segoe UI Variable,Segoe UI,sans-serif}.login-card,.consent-card{width:100%;max-width:430px;padding:2.25rem;border:1px solid rgba(10,18,32,.1);border-radius:24px;background:#fffdf8e6;box-shadow:0 30px 80px #0a12201f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.login-card:before,.consent-card:before{content:"SeeAuth";display:block;min-height:44px;padding-left:55px;margin-bottom:1.5rem;background:url(/seeauth-mark.png) left center/44px 44px no-repeat;color:#0a1220;font-size:1.3rem;font-weight:760;line-height:44px;letter-spacing:-.04em;text-align:left}.back-link{display:inline-block;margin-bottom:1.5rem;color:#5d6f86;font-size:.88rem;text-decoration:none}h1{margin:0 0 1.25rem;color:#0a1220;font-size:1.75rem;letter-spacing:-.04em}.hint,.divider,.subtitle,.empty{color:#637287;font-size:.9rem;line-height:1.55}form,.sso-partners{display:flex;flex-direction:column;gap:1rem}label{display:flex;flex-direction:column;gap:.4rem;color:#26364a;font-size:.84rem;font-weight:700}input,textarea,select{padding:.72rem .8rem;border:1px solid #ced7e2;border-radius:11px;background:#fff;color:#0a1220;font:inherit}input:focus,textarea:focus,select:focus{outline:none;border-color:#176f9b;box-shadow:0 0 0 3px #28d7e533}button{margin-top:.25rem;padding:.78rem 1rem;border:0;border-radius:999px;background:#0a1220;color:#fff;font:inherit;font-weight:700;cursor:pointer;transition:transform var(--transition),box-shadow var(--transition)}button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 20px #0a12202e}button:focus-visible,.back-link:focus-visible,a:focus-visible{outline:3px solid #28d7e5;outline-offset:3px}button:disabled{opacity:.45;cursor:not-allowed}.error{color:#b42318;font-size:.88rem}.sso-partners{margin-top:1.4rem;gap:.65rem}.divider{margin:0 0 .25rem;text-align:center}.btn-partner{margin-top:0;border:1px solid #ced7e2;background:#fff;color:#0a1220;box-shadow:none}.link-button{display:block;margin:1.25rem 0 0;padding:0;background:none;color:#52657b;box-shadow:none;font-size:.84rem;text-decoration:underline}.secret{color:#0a1220;font-family:ui-monospace,monospace;font-size:.85rem;word-break:break-all}@media(max-width:520px){.login-page,.consent-page{padding:0;background:#f7f4ec}.login-card,.consent-card{min-height:100vh;max-width:none;padding:1.5rem;border:0;border-radius:0;box-shadow:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}:root{--bg: #f7f4ec;--panel: #fffdf8;--panel-hover: #eef3ff;--border: #d8dfeb;--text: #0a1220;--text-secondary: #5d6f86;--accent: #176f9b;--accent-hover: #125a80;--iris: #6652e8;--danger: #c43d47;--danger-hover: #9f2f38;--success: #087f74;--gradient-brand: linear-gradient(132deg, #0a1220 0%, #103754 35%, #177a9b 60%, #6652e8 112%);--gradient-wash: radial-gradient(circle at 8% 8%, rgba(40, 215, 229, .13), transparent 38%), radial-gradient(circle at 92% 90%, rgba(120, 104, 255, .1), transparent 40%), var(--bg);--shadow-sm: 0 1px 3px rgba(20, 20, 30, .07), 0 1px 2px rgba(20, 20, 30, .04);--shadow-md: 0 26px 72px rgba(10, 18, 32, .2), 0 8px 24px rgba(10, 18, 32, .08);--radius: 18px;--transition: .2s cubic-bezier(.4, 0, .2, 1);color-scheme:light}*{box-sizing:border-box}body{margin:0;font-family:Aptos,Segoe UI Variable,Segoe UI,sans-serif;color:var(--text);background:var(--gradient-wash);background-attachment:fixed;min-height:100vh}::view-transition-old(root){animation:ciam-fade-out var(--transition) both}::view-transition-new(root){animation:ciam-fade-in var(--transition) both}@keyframes ciam-fade-out{to{opacity:0;transform:translateY(-4px)}}@keyframes ciam-fade-in{0%{opacity:0;transform:translateY(4px)}}h1{font-family:Aptos Display,Segoe UI Variable Display,Segoe UI,sans-serif;font-size:1.65rem;letter-spacing:-.035em;margin:0 0 1.25rem}h2{font-family:Aptos Display,Segoe UI Variable Display,Segoe UI,sans-serif;font-size:1.05rem;margin:0 0 .75rem}a{color:var(--accent)}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;margin-bottom:1.25rem;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition),transform var(--transition)}::selection{color:#0a1220;background:#8cebf2}.form-group{margin-bottom:.9rem;display:flex;flex-direction:column;gap:.3rem}.form-row{display:flex;gap:.9rem}.form-row .form-group{flex:1}label{font-size:.82rem;font-weight:600;color:var(--text-secondary)}input,textarea{padding:.5rem .6rem;border-radius:10px;border:1px solid var(--border);background:var(--panel);color:var(--text);font-size:.9rem;font-family:inherit;transition:border-color var(--transition),box-shadow var(--transition)}input:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}.btn{padding:.55rem 1.1rem;border-radius:999px;border:1px solid var(--border);background:var(--panel);color:var(--text);font-size:.9rem;cursor:pointer;transition:background var(--transition),border-color var(--transition),box-shadow var(--transition),transform var(--transition)}.btn:hover{background:var(--panel-hover)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--gradient-brand);border-color:transparent;color:#fff;box-shadow:0 8px 20px #176f9b3d}.btn-primary:hover{box-shadow:0 12px 28px #6652e847;filter:brightness(1.06)}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--panel-hover);color:var(--text)}.btn-danger{background:transparent;border-color:var(--danger);color:var(--danger)}.btn-danger:hover{background:var(--danger);color:#fff}.btn-sm{padding:.3rem .65rem;font-size:.82rem}.error{color:var(--danger);font-size:.85rem;margin:.4rem 0}.success{color:var(--success);font-size:.85rem;margin:.4rem 0}.empty{color:var(--text-secondary);font-size:.88rem}.badge{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600;background:var(--panel-hover);color:var(--text-secondary)}.badge-success{background:color-mix(in srgb,var(--success) 18%,transparent);color:var(--success)}
