:root{--bg: #f6f7f9;--card: #ffffff;--ink: #14181f;--muted: #6b7280;--line: #e5e7eb;--primary: #4f46e5;--primary-ink: #ffffff;--ok-bg: #ecfdf5;--ok-ink: #065f46;--err-bg: #fef2f2;--err-ink: #991b1b;--warn-bg: #fffbeb;--warn-ink: #92400e;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.center-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:28px;box-shadow:0 1px 2px #0000000a}.auth-card{width:100%;max-width:380px}.brand{font-size:26px;font-weight:700;margin:0 0 2px;letter-spacing:-.02em}.brand-sm{font-weight:700;letter-spacing:-.01em}.muted{color:var(--muted);margin:0 0 18px}.small{font-size:13px}.field{display:block;margin-bottom:14px}.field span{display:block;font-size:13px;color:var(--muted);margin-bottom:6px}.field input{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:9px;font-size:15px;outline:none}.field input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #4f46e526}.btn{width:100%;padding:10px 14px;border-radius:9px;border:1px solid var(--line);background:#fff;font-size:15px;font-weight:600;cursor:pointer;margin-top:6px}.btn:disabled{opacity:.6;cursor:default}.btn-primary{background:var(--primary);color:var(--primary-ink);border-color:var(--primary)}.btn-google{margin-top:10px}.linkbtn{background:none;border:none;color:var(--primary);cursor:pointer;font-size:13px;padding:0}.row-between{display:flex;justify-content:space-between;align-items:center;margin-top:14px}.banner{border-radius:9px;padding:10px 12px;font-size:13px;margin-bottom:14px}.banner-error{background:var(--err-bg);color:var(--err-ink)}.banner-ok{background:var(--ok-bg);color:var(--ok-ink)}.banner-warn{background:var(--warn-bg);color:var(--warn-ink);margin-top:14px}.page{min-height:100vh}.topbar{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;background:#fff;border-bottom:1px solid var(--line)}.container{max-width:720px;margin:32px auto;padding:0 20px}.kv{display:grid;grid-template-columns:140px 1fr;gap:8px 16px;margin:10px 0 18px}.kv dt{color:var(--muted);font-size:13px}.kv dd{margin:0}h2{margin:0 0 12px}h3{margin:18px 0 6px;font-size:15px}a{color:var(--primary)}.launcher{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.launcher-card h3{margin:0;font-size:1.05rem}.launcher-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.pill{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:999px;background:#eef2ff;color:#3730a3}.kv.compact dt,.kv.compact dd{padding:2px 0}.btn-secondary{display:inline-block;text-align:center;text-decoration:none;background:#f3f4f6;color:#111827;border:1px solid #d1d5db}.topbar .muted{margin-left:auto;margin-right:12px}:root{--mk-coral: #ff7857;--mk-coral-hover: #ff6a45;--mk-coral-ink: #271b16;--mk-ink: #24332b;--mk-body: #353f50;--mk-cream: #fbf7f2;--mk-cream-2: #f3ece1;--mk-line: #ece5db}.auth{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(1200px 600px at 85% -10%,#ffe9e1,#ffe9e100 55%),var(--mk-cream);font-family:Plus Jakarta Sans,system-ui,-apple-system,sans-serif;color:var(--mk-body)}.auth-shell{width:100%;max-width:960px;display:grid;grid-template-columns:1.05fr 1fr;background:#fff;border:1px solid var(--mk-line);border-radius:22px;overflow:hidden;box-shadow:0 30px 70px -30px #24332b47,0 2px 6px #24332b0d}.wordmark{font-family:Schibsted Grotesk,Plus Jakarta Sans,sans-serif;font-weight:800;font-size:22px;letter-spacing:-.02em;color:var(--mk-ink);display:inline-flex;align-items:baseline;gap:6px}.wordmark>span{font-weight:600;color:#9aa0a6}.auth-brand{position:relative;padding:44px 40px;background:radial-gradient(520px 320px at 115% 120%,#ffd9cd,#ffd9cd00 60%),linear-gradient(160deg,#fff 0%,var(--mk-cream) 60%,var(--mk-cream-2) 100%);border-right:1px solid var(--mk-line);display:flex;flex-direction:column;min-width:0}.auth-hero{font-family:Schibsted Grotesk,sans-serif;font-weight:800;font-size:38px;line-height:1.02;letter-spacing:-.045em;color:var(--mk-ink);margin:28px 0 16px;max-width:12ch}.auth-hero-sub{font-size:15px;line-height:1.55;color:#5c6672;margin:0 0 26px;max-width:34ch}.auth-feats{list-style:none;margin:auto 0 0;padding:0;display:grid;gap:10px}.auth-feats li{position:relative;padding-left:26px;font-size:14px;font-weight:500;color:var(--mk-ink)}.auth-feats li:before{content:"";position:absolute;left:0;top:3px;width:16px;height:16px;border-radius:50%;background:var(--mk-coral);box-shadow:inset 0 0 0 4px #ffffffd9}.auth-form{padding:44px 44px 40px;display:flex;flex-direction:column;min-width:0}.wordmark-sm{display:none}.auth-title{font-family:Schibsted Grotesk,sans-serif;font-weight:700;font-size:30px;letter-spacing:-.035em;color:var(--mk-ink);margin:26px 0 6px}.auth-sub{font-size:15px;color:#5c6672;margin:0 0 22px}.auth .field{margin-bottom:14px}.auth .field span{font-size:13px;color:#5c6672;font-weight:500}.auth .field input{border:1px solid var(--mk-line);border-radius:12px;padding:12px 13px;background:#fff;color:var(--mk-ink);transition:border-color .15s,box-shadow .15s}.auth .field input:focus{border-color:var(--mk-coral);box-shadow:0 0 0 3px #ff785738}.auth .btn{border-radius:12px;padding:13px 16px;font-family:Plus Jakarta Sans,sans-serif;font-weight:700;font-size:15px}.auth .btn-primary{background:var(--mk-coral);color:var(--mk-coral-ink);border-color:var(--mk-coral)}.auth .btn-primary:hover:not(:disabled){background:var(--mk-coral-hover);border-color:var(--mk-coral-hover)}.auth .linkbtn{color:var(--mk-body);font-weight:600}.auth .linkbtn:hover{color:var(--mk-coral)}.auth-links{margin-top:18px}.auth-or{display:flex;align-items:center;gap:12px;margin:18px 0 14px;color:#9aa0a6;font-size:12px;font-weight:600;text-transform:lowercase}.auth-or:before,.auth-or:after{content:"";flex:1;height:1px;background:var(--mk-line)}.admin-google{display:flex;flex-direction:column;align-items:center;width:100%}.admin-google>div{width:100%;display:flex;justify-content:center}.admin-google>div[aria-busy=true]{opacity:.6;pointer-events:none}.admin-google .banner{margin-top:12px;width:100%}@media (max-width: 860px){.auth-shell{grid-template-columns:1fr;max-width:420px;border-radius:18px}.auth-brand{display:none}.auth-form{padding:34px 26px 30px}.wordmark-sm{display:inline-flex}.auth-title{font-size:26px;margin-top:18px}}
