:root{--page-bg:#05071a;--panel-bg:#0b1024;--panel-elevated:#101735;--field-bg:#080d20;--border:rgba(237,241,245,0.13);--border-subtle:rgba(237,241,245,0.08);--text:#f7f9fb;--text-strong:#ffffff;--text-muted:#c6ccd6;--text-faint:#a7b0bd;--primary:#16275c;--primary-hover:#1c3170;--accent:#00aec7;--accent-soft:rgba(0,174,199,0.16);--focus-ring:rgba(0,174,199,0.42);--danger:#fda4af;--shadow:0 18px 44px rgba(0,0,0,0.28);--sso-viewport-height:100vh}*{box-sizing:border-box}body,html{min-height:100%}body{margin:0;min-height:var(--sso-viewport-height);position:relative;isolation:isolate;overflow-x:hidden;background:var(--page-bg);color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:0}body:before{inset:-18%;z-index:-2;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.5) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.42) 1px,transparent 0);background-size:44px 44px;transform:rotate(-18deg) scale(1.14);transform-origin:center}body:after,body:before{content:"";position:fixed;pointer-events:none}body:after{inset:0;z-index:-1;background:radial-gradient(ellipse at center,transparent 40%,rgba(0,0,0,.5) 100%)}button,input{font:inherit;letter-spacing:0}.page{position:relative;z-index:1;min-height:var(--sso-viewport-height);width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:32px 20px 22px}.panel{width:min(100%,392px);border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--panel-bg) 92%,transparent);box-shadow:0 22px 54px rgba(0,0,0,.34);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:32px}.brand{display:flex;flex-direction:column;align-items:center;margin-bottom:30px;text-align:center}.logo{width:44px;height:52px;margin-bottom:14px;filter:brightness(0) invert(1)}h1{margin:0;color:var(--text-strong);font-size:18px;line-height:1.4;font-weight:700;letter-spacing:0;text-transform:uppercase}.subtitle{margin:6px 0 0;color:var(--text-muted);font-size:14px;line-height:1.45}.form{display:grid;grid-gap:14px;gap:14px}.field{display:grid;grid-gap:8px;gap:8px;color:var(--text-muted);font-size:13px;line-height:1.4}.input-row{display:flex;align-items:center;min-height:48px;border:1px solid var(--border);border-radius:8px;background:var(--field-bg);transition:border-color .16s ease,box-shadow .16s ease}.input-row:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--text);font-size:16px;line-height:1.5;padding:12px 14px;letter-spacing:0}input::placeholder{color:var(--text-faint)}.button{min-height:48px;border:0;border-radius:8px;background:var(--primary);color:white;cursor:pointer;font-weight:600;letter-spacing:0;transition:background .16s ease,transform .16s ease,opacity .16s ease}.button:hover{background:var(--primary-hover)}.button:active{transform:translateY(1px)}.button:disabled{cursor:wait;opacity:.72}.message{min-height:20px;text-align:center}.error,.message{margin:0;color:var(--danger);font-size:13px;line-height:1.45}.projects{display:grid;grid-gap:10px;gap:10px}.project{width:100%;min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--border);border-radius:8px;background:var(--panel-elevated);color:var(--text);cursor:pointer;padding:12px 14px;text-align:left}.project:hover{border-color:rgba(0,174,199,.55)}.project span,.project strong{display:block;overflow-wrap:anywhere}.project span{margin-top:2px;color:var(--text-faint);font-size:12px;text-transform:uppercase}.top-actions{display:flex;justify-content:flex-end;margin-top:14px}.link-button{border:0;background:transparent;color:var(--text-muted);cursor:pointer;font-size:13px;text-decoration:underline}.link-button:hover{color:white}.powered{color:rgba(247,249,251,.42);font-size:12px;line-height:1.4;text-align:center}.powered a{color:rgba(247,249,251,.64);text-decoration:none}.powered a:hover{color:#ffffff}@media (max-width:520px){.page{padding:22px 14px 56px}.panel{padding:26px 20px}.powered{bottom:18px}}@media (prefers-reduced-motion:reduce){*,:after,:before{transition:none!important}}