.auth-page{background:#070b14;justify-content:center;align-items:center;min-height:100vh;padding:2rem 1.25rem;display:flex;position:relative}.auth-page__bg{pointer-events:none;background:radial-gradient(55% 45% at 50% -5%,#2563eb2e,#0000 55%),radial-gradient(40% 30% at 100% 100%,#6366f114,#0000 50%),linear-gradient(#070b14 0%,#0f172a 100%);position:absolute;inset:0}.auth-page__grid{z-index:1;grid-template-columns:1fr 1fr;align-items:center;gap:2.5rem;width:100%;max-width:1040px;display:grid;position:relative}@media (max-width:860px){.auth-page__grid{grid-template-columns:1fr;max-width:440px}.auth-hero{text-align:center}}.auth-hero h1{color:#fff;letter-spacing:-.02em;margin:0 0 .75rem;font-size:clamp(1.75rem,4vw,2.25rem);font-weight:800;line-height:1.15}.auth-hero p{color:#94a3b8;max-width:28rem;margin:0 0 1.5rem;font-size:1rem;line-height:1.6}.auth-hero__products{flex-wrap:wrap;gap:.45rem;max-width:28rem;margin:0;padding:0;list-style:none;display:flex}.auth-hero__products li{letter-spacing:.04em;color:#dbeafe;background:#2563eb1f;border:1px solid #3b82f638;border-radius:999px;padding:.32rem .7rem;font-size:.75rem;font-weight:650}@media (max-width:860px){.auth-hero__products{justify-content:center}}.auth-opening{color:#93c5fd;margin-top:.5rem;font-size:.9rem;font-weight:600}.auth-badge{color:#bfdbfe;background:#2563eb1f;border:1px solid #3b82f640;border-radius:999px;padding:.35rem .75rem;font-size:.75rem;font-weight:600}.auth-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#151c2ceb;border:1px solid #94a3b81f;border-radius:20px;padding:2rem 2rem 1.75rem;box-shadow:0 32px 64px #00000073}.auth-card__brand{color:#f1f5f9;align-items:center;gap:10px;margin-bottom:1.25rem;font-size:1.05rem;font-weight:700;text-decoration:none;display:inline-flex}.auth-card__brand img{border-radius:10px}.auth-card__title{color:#fff;margin:0 0 .35rem;font-size:1.35rem;font-weight:700}.auth-card__subtitle{color:#94a3b8;margin:0 0 1.5rem;font-size:.9rem}.auth-btn{cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:10px;width:100%;padding:12px 16px;font-size:.95rem;font-weight:600;transition:transform .15s,box-shadow .15s,background .15s;display:flex}.auth-btn svg{flex-shrink:0;display:block}.auth-btn:disabled{opacity:.65;cursor:not-allowed}.auth-btn--google{color:#1e293b;background:#fff;margin-bottom:.65rem}.auth-btn--google:hover:not(:disabled){background:#f8fafc;box-shadow:0 8px 24px #0003}.auth-btn--apple{color:#fff;background:#000;border:1px solid #ffffff1f;margin-bottom:1rem}.auth-apple-mark{display:block;overflow:visible}.auth-btn--apple:hover:not(:disabled){background:#111;box-shadow:0 8px 24px #00000059}.auth-btn--primary{color:#fff;background:linear-gradient(135deg,#2563eb,#4f46e5);margin-top:.25rem}.auth-btn--primary:hover:not(:disabled){box-shadow:0 8px 28px #2563eb59}.auth-divider-row{color:#64748b;align-items:center;gap:12px;margin:1rem 0;font-size:.8rem;display:flex}.auth-divider-row:before,.auth-divider-row:after{content:"";background:#94a3b82e;flex:1;height:1px}.auth-field{margin-bottom:.9rem}.auth-field label{color:#e2e8f0;margin-bottom:6px;font-size:.82rem;font-weight:500;display:block}.auth-input{box-sizing:border-box;color:#f1f5f9;background:#ffffff0a;border:1px solid #94a3b82e;border-radius:12px;outline:none;width:100%;padding:12px 14px;font-size:.95rem}.auth-input:focus{border-color:#3b82f68c;box-shadow:0 0 0 3px #2563eb26}.auth-error{color:#fca5a5;margin:0 0 .75rem;font-size:.85rem}.auth-footer{text-align:center;color:#64748b;margin-top:1.25rem;font-size:.82rem}.auth-footer a{color:#60a5fa;text-decoration:none}.auth-footer a:hover{color:#93c5fd}.auth-link-btn{color:#60a5fa;cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.auth-link-btn:hover{color:#93c5fd;text-decoration:underline}.portal-page{background:#070b14;min-height:100vh;padding:2rem 1.25rem 3rem}.portal-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;max-width:960px;margin:0 auto 2rem;display:flex}.portal-user{color:#94a3b8;font-size:.9rem}.portal-user strong{color:#e2e8f0}.portal-intro{max-width:960px;margin:0 auto 1.5rem}.portal-kicker{color:#93c5fd;letter-spacing:.12em;text-transform:uppercase;margin:0 0 .4rem;font-size:.75rem;font-weight:700}.portal-intro h1{color:#fff;letter-spacing:-.02em;margin:0 0 .4rem;font-size:1.6rem}.portal-intro p{color:#94a3b8;max-width:40rem;margin:0;line-height:1.55}.portal-card__status{color:#64748b;margin-top:.75rem;font-size:.8rem;font-weight:600}.portal-card__status--live{color:#93c5fd}.portal-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;max-width:960px;margin:0 auto;display:grid}.portal-card{color:inherit;cursor:pointer;text-align:left;font:inherit;background:#151c2c;border:1px solid #94a3b81f;border-radius:16px;padding:1.35rem;text-decoration:none;transition:border-color .15s,transform .15s,box-shadow .15s}.portal-card:hover:not(:disabled){border-color:#3b82f673;transform:translateY(-2px);box-shadow:0 16px 40px #00000040}.portal-card:disabled{opacity:.55;cursor:wait}.portal-card h3{color:#fff;margin:0 0 .35rem;font-size:1.1rem}.portal-card p{color:#94a3b8;margin:0;font-size:.85rem}.portal-card__icon{color:#93c5fd;letter-spacing:.06em;text-transform:uppercase;background:linear-gradient(135deg,#2563eb33,#4f46e526);border-radius:12px;justify-content:center;align-items:center;width:auto;min-width:44px;height:44px;margin-bottom:.85rem;padding:0 .7rem;font-size:.72rem;font-weight:800;display:inline-flex}.auth-btn--ghost{color:#cbd5e1;background:0 0;border:1px solid #94a3b840;width:auto;padding:8px 14px;font-size:.85rem}.auth-page h1,.auth-page h2,.auth-page .auth-card__title,.portal-page h1,.portal-page h3{color:#fff!important;-webkit-text-fill-color:#fff!important}.auth-page p,.auth-page li,.auth-page .auth-card__subtitle,.auth-hero p,.portal-page p,.portal-intro p,.portal-user,.portal-card p{color:#94a3b8!important;-webkit-text-fill-color:#94a3b8!important}.auth-hero__products li{color:#dbeafe!important;-webkit-text-fill-color:#dbeafe!important}.auth-card__brand,.auth-card__brand span{color:#f1f5f9!important;-webkit-text-fill-color:#f1f5f9!important}.auth-page label,.auth-field label{color:#e2e8f0!important}.auth-input{color:#f1f5f9!important}.auth-footer{color:#64748b!important}.auth-footer a,.auth-link-btn{color:#60a5fa!important}.portal-user strong{color:#e2e8f0!important;-webkit-text-fill-color:#e2e8f0!important}.portal-kicker,.portal-card__status--live,.portal-card__icon{color:#93c5fd!important}.portal-kite-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(135deg,#1e293bb3,#0f172ae6);border:1px solid #f973164d;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:2rem;padding:1.5rem 1.75rem;display:flex;box-shadow:0 10px 30px -10px #f9731626}.portal-kite-card__left{flex:1;min-width:280px}.portal-kite-card__header{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.portal-kite-badge{text-transform:uppercase;letter-spacing:.05em;background:#f9731633;border:1px solid #f9731659;border-radius:6px;padding:.2rem .55rem;font-size:.7rem;font-weight:700;color:#fb923c!important}.portal-kite-status{border-radius:6px;align-items:center;gap:.4rem;padding:.2rem .55rem;font-size:.78rem;font-weight:600;display:inline-flex}.portal-kite-status--connected{background:#10b98126;border:1px solid #10b9814d;color:#34d399!important}.portal-kite-status--relogin{background:#f59e0b26;border:1px solid #f59e0b4d;color:#fbbf24!important}.portal-kite-dot{background:currentColor;border-radius:50%;width:7px;height:7px}.portal-kite-status--relogin .portal-kite-dot{animation:2s infinite pulse}.portal-kite-title{font-size:1.25rem;font-weight:700;color:#fff!important;margin:0 0 .35rem!important}.portal-kite-desc{font-size:.88rem;line-height:1.45;color:#94a3b8!important;margin:0!important}.portal-kite-card__right{flex-direction:column;gap:.65rem;min-width:200px;display:flex}.auth-btn--kite{text-align:center;background:linear-gradient(135deg,#f97316,#ea580c);border:1px solid #fff3;font-weight:700;box-shadow:0 4px 14px #ea580c59;color:#fff!important;text-decoration:none!important}.auth-btn--kite:hover{background:linear-gradient(135deg,#fb923c,#f97316);transform:translateY(-1px);box-shadow:0 6px 20px #ea580c73}.portal-kite-link{text-align:center;font-size:.82rem;font-weight:600;text-decoration:none;transition:color .15s;color:#cbd5e1!important}.portal-kite-link:hover{text-decoration:underline;color:#60a5fa!important}.portal-conn-card{background:linear-gradient(135deg,#064e3b59 0%,#0f172abf 100%);border:1px solid #10b98147;border-radius:16px;justify-content:space-between;align-items:center;gap:1.5rem;max-width:960px;margin:0 auto 1.5rem;padding:1.25rem 1.5rem;transition:border-color .2s,box-shadow .2s;display:flex;box-shadow:0 4px 20px #00000040}.portal-conn-card:hover{border-color:#10b98173;box-shadow:0 6px 24px #05966926}.portal-conn-card__left{flex:1;min-width:0}.portal-conn-card__header{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.4rem;display:flex}.portal-conn-badge{color:#34d399;text-transform:uppercase;letter-spacing:.08em;background:#10b98129;border:1px solid #10b9814d;border-radius:6px;padding:.2rem .55rem;font-size:.72rem;font-weight:700}.portal-conn-status{color:#6ee7b7;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;display:inline-flex}.portal-conn-dot{background-color:#10b981;border-radius:50%;width:8px;height:8px;box-shadow:0 0 8px #10b981}.portal-conn-title{font-size:1.25rem;font-weight:700;color:#fff!important;margin:0 0 .35rem!important}.portal-conn-desc{font-size:.88rem;line-height:1.45;color:#94a3b8!important;margin:0!important}.portal-conn-card__right{flex-direction:column;gap:.65rem;min-width:200px;display:flex}.auth-btn--conn{text-align:center;cursor:pointer;background:linear-gradient(135deg,#059669,#047857);border:1px solid #fff3;border-radius:8px;padding:.7rem 1.2rem;font-size:.9rem;font-weight:700;transition:transform .15s,box-shadow .15s,background .15s;box-shadow:0 4px 14px #05966959;color:#fff!important;text-decoration:none!important}.auth-btn--conn:hover{background:linear-gradient(135deg,#10b981,#059669);transform:translateY(-1px);box-shadow:0 6px 20px #05966973}
