:root{--brand:#3399CC;--brand-dark:#2b80ac;--brand-light:#e9f4fa;--brand-tint:#cfe6f3;--accent:#009966;--accent-dark:#007e53;--accent-light:#e4f5ee;--earth:#999966;--earth-light:#f0efe6;--text-primary:#1F2937;--text-secondary:#5b6471;--surface:#f4f7f9;--surface-card:#fff;--border:#e3e9ef;--radius-card:18px;--radius-input:12px;--radius-pill:9999px;--font-heading:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-body:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--shadow-card:0 24px 60px -28px rgba(31,41,55,.28);--shadow-soft:0 1px 3px rgba(31,41,55,.06),0 8px 24px -16px rgba(31,41,55,.18);--ease:cubic-bezier(.22,.61,.36,1);--bottomnav:74px;--sidebar-w:260px;--sidebar-w-collapsed:72px;--topbar-h:64px}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font-body);font-size:17px;line-height:1.55;color:var(--text-secondary);background:var(--surface);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}@keyframes fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes panelIn{from{opacity:0;transform:scale(1.04)}to{opacity:1;transform:none}}@keyframes drift{from{transform:translateX(0)}to{transform:translateX(-80px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes sunPulse{0%,100%{opacity:.55}50%{opacity:.85}}@keyframes loginShake{0%,100%{transform:translateX(0)}16%{transform:translateX(-9px)}33%{transform:translateX(9px)}50%{transform:translateX(-6px)}66%{transform:translateX(6px)}83%{transform:translateX(-3px)}}.anim{opacity:0;animation:fadeUp .55s var(--ease) forwards}.a1{animation-delay:.06s}.a2{animation-delay:.12s}.a3{animation-delay:.18s}.a4{animation-delay:.24s}.a5{animation-delay:.30s}.a6{animation-delay:.36s}.a7{animation-delay:.42s}.a8{animation-delay:.48s}.shell{min-height:100dvh;display:grid;grid-template-columns:1.05fr 1fr}.panel{position:relative;overflow:hidden;color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:56px 52px;isolation:isolate;animation:panelIn .9s var(--ease) both}.panel__photos{position:absolute;inset:-20px;z-index:-3;overflow:hidden;--panel-photo-hold:6s}.panel__photo{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease-in-out;z-index:0;overflow:hidden}.panel__photo.is-active{opacity:1;z-index:1}.panel__photo-inner{position:absolute;inset:-8%;background-size:cover;background-position:center;filter:blur(var(--panel-blur,0));transform:scale(1.14);transform-origin:center center;will-change:transform}.panel__photo.is-active .panel__photo-inner{animation:panelKenBurns var(--panel-photo-hold) ease-out forwards}.panel--photos-1 .panel__photo{opacity:1}@keyframes panelKenBurns{from{transform:scale(1.14)}to{transform:scale(1.05)}}.panel__bg{position:absolute;inset:0;z-index:-2;background:linear-gradient(155deg,var(--panel-primary),var(--panel-primary-dark) 38%,var(--panel-accent))}.panel--gradient .panel__bg{background:linear-gradient(160deg,var(--panel-primary) 0%,var(--panel-accent-dark) 100%)}.panel--radial .panel__bg{background:linear-gradient(180deg,var(--panel-primary-dark),var(--panel-accent-dark))}.panel--photo .panel__bg{display:none}.panel__overlay{position:absolute;inset:0;z-index:-1;background:rgba(0,0,0,var(--panel-overlay,0));pointer-events:none}.panel--waves .panel__overlay,.panel--gradient .panel__overlay,.panel--radial .panel__overlay{display:none}.panel__glow{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 70% 60% at 85% 15%,rgb(255 255 255 / .18),transparent 60%),radial-gradient(ellipse 50% 40% at 10% 90%,color-mix(in srgb,var(--panel-neutral) 40%,transparent),transparent 70%)}.panel__art{position:absolute;inset:0;z-index:-1;width:100%;height:100%}.panel__earth{position:absolute;left:0;right:0;bottom:0;height:30%;z-index:-1;background:linear-gradient(to top,color-mix(in srgb,var(--panel-neutral) 34%,transparent),transparent);pointer-events:none}.brandlock{display:flex;align-items:center;gap:14px}.brandlock__logo{max-height:52px;width:auto;display:block}.brandlock__mark{width:46px;height:46px;border-radius:13px;background:rgb(255 255 255 / .16);border:1px solid rgb(255 255 255 / .4);display:grid;place-items:center;backdrop-filter:blur(4px)}.brandlock__name{font-family:var(--font-heading);font-weight:700;font-size:24px;letter-spacing:.04em;line-height:1}.brandlock__sub{font-size:12px;letter-spacing:.16em;opacity:.85;margin-top:3px}.panel__eyebrow{font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;opacity:.85;margin-bottom:18px}.panel__title{font-family:var(--font-heading);font-weight:700;font-size:clamp(28px,3vw,40px);line-height:1.12;letter-spacing:-.01em;margin-bottom:16px;max-width:14ch}.panel__text{font-size:15.5px;line-height:1.6;opacity:.92;max-width:34ch}.waves{animation:drift 16s linear infinite alternate}.sun{animation:sunPulse 7s ease-in-out infinite;transform-origin:center}.form-side{display:flex;align-items:center;justify-content:center;padding:40px 28px;background:linear-gradient(180deg,#fff,var(--surface))}.card{width:100%;max-width:430px;background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:42px 40px 34px;transition:border-color .2s,box-shadow .2s}.card.is-shake{animation:loginShake .48s cubic-bezier(.36,.07,.19,.97) both;border-color:#e0533d;box-shadow:0 0 0 3px rgb(224 83 61 / .14),var(--shadow-card)}.input.is-error{border-color:#e0533d;box-shadow:0 0 0 3px rgb(224 83 61 / .12)}.eyebrow{color:var(--brand);font-weight:700;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px}.title{font-family:var(--font-heading);color:var(--text-primary);font-weight:700;font-size:27px;letter-spacing:-.01em;line-height:1.15;margin-bottom:8px}.lead{font-size:15.5px;margin-bottom:26px}.lead b{color:var(--text-primary)}.seg{position:relative;display:grid;grid-template-columns:1fr 1fr;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);padding:4px;margin-bottom:24px}.seg__pill{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);background:var(--surface-card);border:1px solid var(--brand-tint);border-radius:var(--radius-pill);box-shadow:0 2px 8px -4px rgb(51 153 204 / .5);transition:transform .32s var(--ease)}.seg.is-pwd .seg__pill{transform:translateX(100%)}.seg button{position:relative;z-index:1;border:0;background:#fff0;cursor:pointer;font-family:var(--font-body);font-size:14.5px;font-weight:600;color:var(--text-secondary);padding:11px 8px;border-radius:var(--radius-pill);transition:color .2s;display:flex;align-items:center;justify-content:center;gap:7px}.seg button.is-active{color:var(--brand)}.seg svg{width:17px;height:17px}.field{margin-bottom:18px}.field>label{display:block;font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:7px}.input{position:relative;display:flex;align-items:center;border:1.5px solid var(--border);border-radius:var(--radius-input);background:var(--surface-card);transition:border-color .18s,box-shadow .18s}.input:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px rgb(51 153 204 / .18)}.input__icon{display:grid;place-items:center;padding-left:14px;color:var(--brand)}.input__icon svg{width:19px;height:19px}.input input{flex:1;border:0;outline:0;background:#fff0;font-family:var(--font-body);font-size:16.5px;color:var(--text-primary);padding:14px 14px 14px 12px}.input input::placeholder{color:#9aa3af}.input__toggle{border:0;background:#fff0;cursor:pointer;color:var(--text-secondary);padding:0 14px;display:grid;place-items:center}.input__toggle svg{width:19px;height:19px}.helper{font-size:13.5px;line-height:1.5;color:var(--text-secondary);margin:-6px 0 22px}.helper svg{width:15px;height:15px;vertical-align:-3px;margin-right:5px;color:var(--brand)}.row-between{display:flex;justify-content:flex-end;margin:-8px 0 20px}.linkbtn{background:0;border:0;cursor:pointer;padding:0;font-family:var(--font-body);font-size:13.5px;font-weight:600;color:var(--brand)}.linkbtn:hover{text-decoration:underline}.btn{width:100%;border:0;cursor:pointer;font-family:var(--font-body);font-size:16px;font-weight:700;color:#fff;background:var(--brand);border-radius:var(--radius-pill);padding:16px 22px;display:flex;align-items:center;justify-content:center;gap:9px;transition:background .18s,transform .12s;box-shadow:0 10px 24px -12px rgb(51 153 204 / .85)}.btn:hover{background:var(--brand-dark)}.btn:active{transform:translateY(1px)}.btn svg{width:19px;height:19px}.btn .spin{animation:spin .8s linear infinite}.secure{display:flex;gap:11px;align-items:flex-start;background:var(--accent-light);border-radius:12px;padding:13px 15px;margin-top:24px;font-size:13px;line-height:1.5;color:#33614c}.secure svg{width:19px;height:19px;color:var(--accent);flex:0 0 auto;margin-top:1px}.foothelp{text-align:center;font-size:13.5px;color:var(--text-secondary);margin-top:22px}.foothelp a{color:var(--brand);font-weight:600;text-decoration:none}.foothelp a:hover{text-decoration:underline}.sent{display:none;text-align:center;padding:8px 0 4px}.magic-link{display:none;text-align:center;padding:8px 0 4px}.magic-link__brand{display:none;justify-content:center;margin-bottom:18px}.magic-link__logo{max-height:42px;width:auto}.magic-link__title{font-size:clamp(24px,5vw,28px);margin-bottom:8px}.magic-link__lead{margin-bottom:24px;color:var(--text-secondary)}.magic-link__flash{color:#c0392b;font-size:13.5px;line-height:1.45;margin:-8px 0 16px}.magic-link__btn{margin-top:4px}.magic-link__btn:disabled{opacity:.72;cursor:wait}.magic-link__back{margin-top:18px}.sent__icon{width:64px;height:64px;border-radius:50%;margin:6px auto 20px;background:var(--accent-light);display:grid;place-items:center}.sent__icon svg{width:32px;height:32px;color:var(--accent)}.sent__title{font-family:var(--font-heading);color:var(--text-primary);font-weight:700;font-size:23px;margin-bottom:10px}.sent__text{font-size:15px;line-height:1.6;margin-bottom:6px}.sent__text b{color:var(--text-primary)}.sent__hint{font-size:13px;color:var(--text-secondary);margin:14px 0 0}.is-success .login-view{display:none}.is-success .sent{display:block;animation:fadeUp .5s var(--ease) both}.is-magic .login-view{display:none}.is-magic .sent{display:none}.is-magic .magic-link{display:block;animation:fadeUp .5s var(--ease) both}.login-form{display:block}@media (min-width:769px){.layout{grid-template-columns:240px minmax(0,1fr);gap:32px;padding:0 clamp(24px,3vw,48px)}.topbar{padding-left:clamp(24px,3vw,48px);padding-right:clamp(24px,3vw,48px)}.sidenav{display:block;position:sticky;top:88px;align-self:start;padding-top:28px}.sidenav button{width:100%;display:flex;align-items:center;gap:11px;border:0;background:0;cursor:pointer;font-family:var(--font-body);font-size:14.5px;font-weight:600;color:var(--text-secondary);padding:11px 14px;border-radius:11px;margin-bottom:4px;transition:all .15s;text-align:left}.sidenav button svg{width:20px;height:20px}.sidenav button:hover{background:var(--surface)}.sidenav button.is-active{background:var(--brand-light);color:var(--brand)}.main{padding:28px 0 60px}.bottomnav{display:none}.quick{grid-template-columns:repeat(3,1fr)}.bdays{grid-template-columns:1fr 1fr}.people{grid-template-columns:1fr 1fr}:root{--bottomnav:0px}}@media (max-width:880px){.shell{grid-template-columns:1fr}.panel{display:none}.intra-login--magic .magic-link__brand{display:flex}.form-side{min-height:100dvh;align-items:center;justify-content:center;padding:24px 18px 32px;background:linear-gradient(180deg,#fff,var(--surface))}.card{box-shadow:var(--shadow-card);border:1px solid var(--border);padding:34px 24px 28px;max-width:420px}.is-magic .card{box-shadow:none;border:0;padding:24px 8px 12px}}@media (prefers-reduced-motion:reduce){.panel__photo{transition:none}.panel__photo-inner{animation:none!important;transform:scale(1.05)}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.anim{opacity:1!important}.card.is-shake{border-color:#e0533d}}