/* Generated by scripts/static_bundles.cjs: auth-bundle.css
 * Sources in cascade/execution order: design-tokens.css, auth-shell.css, interaction.css
 */
/* design-tokens.css */
/* WONDORA suite design tokens. Product-specific styles may add components,
   but shared rhythm, typography, focus, status and brand values live here. */
:root{
  --brand-petrol:#164c61;--brand-petrol-strong:#103e51;--brand-teal:#267f79;
  --brand-gold:#e4c583;--brand-green:#43aa8b;--brand-red:#c85a52;
  --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;
  --space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;
  --radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:22px;
  --shadow-sm:0 4px 14px #17394512;--shadow-md:0 12px 36px #1739451f;
  --focus-ring:#57aeb5;--danger:#b64d45;--warning:#a56b16;--success:#267f66;
  --type-xs:12px;--type-sm:13px;--type-md:14px;--type-lg:18px;
  --leading-tight:1.25;--leading-normal:1.55;--leading-relaxed:1.7;
}
:where(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}
textarea:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
@media screen{
  html[data-theme=dark]{--focus-ring:#83d8e4;--shadow-sm:0 4px 14px #0004;--shadow-md:0 12px 36px #0006;--danger:#ff9f92;--warning:#f2d08a;--success:#98dfbd}
}

/* auth-shell.css */
:root{
  --auth-blue:#225f76;
  --auth-blue-deep:#164655;
  --auth-blue-dark:#0f303a;
  --auth-light-blue:#bbcbcd;
  --auth-gold:#f4a62a;
  --auth-gold-hover:#e99517;
  --canvas:#dfe9ea;
  --surface:#fff;
  --surface-soft:#edf3f3;
  --ink:#153943;
  --muted:#526d73;
  --line:#cbd9da;
  --danger:#8c352c;
  --danger-soft:#fbf0ec;
  --focus:#225f76;
  color-scheme:light;
  font-family:Inter,'Helvetica Neue',Arial,sans-serif;
  color:var(--ink);
  background:var(--canvas);
  font-synthesis:none;
  font-size:14px;
  line-height:1.55;
}

html[data-theme=dark]{
  --canvas:#0b242c;
  --surface:#17343b;
  --surface-soft:#214149;
  --ink:#e8f2f2;
  --muted:#b2c7c9;
  --line:#3b5960;
  --danger:#ffb6a5;
  --danger-soft:#493336;
  --focus:#f4c26f;
  color-scheme:dark;
}

*{box-sizing:border-box}
body{margin:0;min-width:280px;background:var(--canvas);color:var(--ink)}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button,a{touch-action:manipulation}
a{color:inherit;text-decoration:none}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.55}
:is(button,a,input,select,textarea):focus-visible{outline:3px solid var(--focus);outline-offset:3px}
button svg,a svg{flex-shrink:0}
img{max-width:100%}
h1,h2,p{margin:0}
p{color:var(--muted)}
svg{vertical-align:middle;flex-shrink:0}
[hidden]{display:none!important}

.skip-link{position:fixed;top:8px;left:12px;z-index:100;padding:12px 14px;border-radius:9px;background:var(--surface);color:var(--ink);box-shadow:0 8px 24px #102d4030;transform:translateY(-180%)}
.skip-link:focus{transform:none}
.icon-button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:10px;border:1px solid transparent;border-radius:12px;background:transparent;color:inherit}
.icon-button:hover{background:var(--surface-soft)}
.auth-theme-toggle{position:fixed;right:34px;top:34px;z-index:5;min-width:44px;min-height:44px;background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--ink);border-color:var(--line);box-shadow:0 8px 24px rgba(21,57,67,.08);backdrop-filter:blur(14px)}
.auth-theme-toggle svg{width:21px;height:21px}
.auth-theme-toggle[aria-pressed=true]{color:var(--auth-gold)}

.login-layout{position:relative;display:grid;grid-template-columns:minmax(500px,1.06fr) minmax(430px,.94fr);width:calc(100% - 32px);max-width:1680px;min-height:calc(100dvh - 32px);margin:16px auto;overflow:hidden;border:1px solid rgba(255,255,255,.72);border-radius:28px;background:var(--surface);box-shadow:0 28px 90px rgba(20,62,67,.16);outline:none}
.login-brand{position:relative;isolation:isolate;display:flex;min-width:0;flex-direction:column;overflow:hidden;padding:47px 54px 37px;background:linear-gradient(145deg,var(--auth-blue) 0%,#1c5263 54%,var(--auth-blue-deep) 100%);color:#fff}
.login-brand:before{content:"";position:absolute;z-index:-2;inset:0;background:radial-gradient(circle at 14% 12%,rgba(187,203,205,.17),transparent 30%),linear-gradient(120deg,transparent 65%,rgba(7,38,48,.24))}
.login-brand:after{content:"";position:absolute;z-index:-1;right:-80px;bottom:-90px;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(244,166,42,.12) 0 1.5%,transparent 1.7%),radial-gradient(circle,rgba(255,255,255,.08),transparent 66%);background-size:28px 28px,100% 100%;opacity:.75}
.login-brand-head{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:24px}
.login-brand-head>img{display:block;width:166px;height:auto}
.login-brand-head>span{display:inline-flex;align-items:center;gap:9px;padding:8px 12px;border:1px solid rgba(255,255,255,.24);border-radius:999px;color:#dbe7e8;font-size:10px;font-weight:700;letter-spacing:1.8px}
.login-brand-head i,.login-secure i{width:6px;height:6px;border-radius:50%;background:var(--auth-gold);box-shadow:0 0 0 4px rgba(244,166,42,.13)}
.login-brand-content{position:relative;z-index:2;width:min(650px,100%);margin:auto 0;padding:66px 0 52px}
.hero-label,.eyebrow{margin:0 0 12px;font-size:10px;font-weight:700;line-height:1.5;letter-spacing:2px;text-transform:uppercase}
.hero-label{color:#c4d6d7}
.login-brand h1{margin:17px 0 23px;font-family:Futura,Inter,'Arial Black',sans-serif;font-size:clamp(43px,4.3vw,72px);font-weight:750;line-height:1.02;letter-spacing:-2.7px;text-wrap:balance}
.login-brand h1 em{color:#fff;font-style:normal;font-weight:inherit}
.login-brand-copy{max-width:560px;font-size:17px;line-height:1.75;color:#d3e0e1}
.login-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:min(520px,100%);margin:35px 0 0;padding:0;list-style:none}
.login-modules li{display:flex;align-items:center;gap:11px;min-height:50px;padding:10px 14px;border:1px solid rgba(255,255,255,.17);border-radius:13px;background:rgba(255,255,255,.075);color:#edf5f5;font-size:12px;font-weight:600;backdrop-filter:blur(7px)}
.login-modules svg{width:18px;height:18px;color:#dce9e9}
.brand-portal{position:absolute;z-index:0;right:-92px;bottom:5%;width:min(58vw,710px);opacity:.2;transform:rotate(-2deg);pointer-events:none}
.brand-portal img{display:block;width:100%}
.login-brand-foot{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14);color:#b8ccce;font-size:11px}
.login-version{font-size:9px;font-weight:650;letter-spacing:1.7px;white-space:nowrap}

.login-side{position:relative;isolation:isolate;display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;padding:84px 60px 36px;background:linear-gradient(155deg,color-mix(in srgb,var(--surface) 94%,var(--auth-light-blue)) 0%,var(--surface) 70%);color:var(--ink)}
.login-side:before{content:"";position:absolute;z-index:-2;inset:0;background:linear-gradient(135deg,rgba(187,203,205,.18),transparent 34%)}
.login-side-orbit{position:absolute;z-index:-1;right:-118px;top:-132px;width:390px;height:390px;border:1px solid color-mix(in srgb,var(--auth-blue) 16%,transparent);border-radius:50%;pointer-events:none}
.login-side-orbit span{position:absolute;inset:44px;border:inherit;border-radius:inherit}
.login-side-orbit span:nth-child(2){inset:90px}
.login-side-orbit span:nth-child(3){inset:136px}
.login-card{width:100%;max-width:470px;padding:42px 43px 37px;border:1px solid color-mix(in srgb,var(--line) 82%,transparent);border-radius:24px;background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:0 22px 65px rgba(20,62,67,.11);backdrop-filter:blur(14px)}
.login-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px}
.login-symbol{display:inline-grid;place-items:center;width:48px;height:48px;border:1px solid color-mix(in srgb,var(--auth-blue) 13%,transparent);border-radius:14px;background:color-mix(in srgb,var(--auth-light-blue) 36%,var(--surface));color:var(--auth-blue)}
.login-symbol svg{width:23px;height:23px}
.login-secure{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:10px;font-weight:650;letter-spacing:.45px;text-transform:uppercase}
.login-secure i{width:5px;height:5px;box-shadow:0 0 0 3px rgba(244,166,42,.11)}
.eyebrow{margin-bottom:9px;color:var(--auth-blue);font-size:10px;letter-spacing:1.7px}
html[data-theme=dark] .eyebrow{color:#9bcfd2}
.login-card h2{margin:7px 0 10px;font-family:Futura,Inter,'Arial Black',sans-serif;font-size:clamp(29px,2.15vw,36px);font-weight:750;line-height:1.15;letter-spacing:-1.25px;overflow-wrap:anywhere}
.login-card>p{font-size:14px;line-height:1.7}
.login-card form{margin-top:29px}
.login-card form>div{margin-bottom:18px}
.login-card label{display:block;margin-bottom:7px;color:var(--ink);font-size:12px;font-weight:700;letter-spacing:.15px}
.login-card :is(input,select,textarea){width:100%;min-width:0;min-height:50px;padding:12px 14px;border:1px solid #8aa1a4;border-radius:11px;background:var(--surface);color:var(--ink);font-size:16px;box-shadow:inset 0 1px 2px rgba(20,62,67,.03);transition:border-color .15s,box-shadow .15s,background .15s}
.login-card :is(input,select,textarea):hover{border-color:#69878c}
.login-card :is(input,select,textarea):focus{border-color:var(--auth-blue);box-shadow:0 0 0 4px rgba(34,95,118,.11);outline:none}
.login-card :is(input,textarea)::placeholder{color:var(--muted);opacity:1}
.helptext{display:block;margin-top:7px;font-size:12px;line-height:1.55;color:var(--muted)}
.helptext ul{margin:7px 0 0;padding-left:20px}
.errorlist{margin:0 0 13px;padding:11px 13px 11px 32px;border:1px solid #d9aaa3;border-radius:9px;background:var(--danger-soft);color:var(--danger);font-size:12px;line-height:1.5}
.notice{display:flex;align-items:center;gap:10px;margin:20px 0 0;padding:13px 15px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft);color:var(--ink);font-size:12px;line-height:1.55}
.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:12px 18px;border:1px solid transparent;border-radius:11px;font-size:14px;font-weight:700;line-height:1.5;white-space:normal;transition:transform .15s,box-shadow .15s,background .15s,border-color .15s}
.button svg{width:17px;height:17px}
.button.primary{background:var(--auth-gold);color:#193c45;border-color:var(--auth-gold);box-shadow:0 8px 22px rgba(244,166,42,.22)}
.button.primary:hover{background:var(--auth-gold-hover);border-color:var(--auth-gold-hover);box-shadow:0 11px 28px rgba(244,166,42,.27);transform:translateY(-1px)}
.button.secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}
.button.secondary:hover{background:var(--surface-soft);border-color:#91a8aa}
.login-card .button{width:100%;justify-content:space-between;margin-top:6px}
.login-card>.button{justify-content:center;margin-top:24px}
.login-card a:not(.button){color:var(--auth-blue);font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
html[data-theme=dark] .login-card a:not(.button){color:#9bcfd2}
.login-help{margin-top:14px!important;font-size:12px!important}
.auth-divider{display:flex;align-items:center;gap:12px;margin:18px 0 12px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:1.2px}.auth-divider:before,.auth-divider:after{height:1px;flex:1;background:var(--line);content:""}.passkey-login-form{margin-top:0!important}.passkey-feedback{min-height:20px;margin-top:9px!important;font-size:12px!important}.passkey-feedback[data-state=error]{color:var(--danger)}.passkey-feedback[data-state=working]{color:var(--auth-blue)}
.login-card>.button+p,.login-card>form+p{margin-top:14px}
.login-footnote{display:flex;align-items:center;justify-content:space-between;gap:13px;margin-top:28px;padding-top:19px;border-top:1px solid var(--line);color:var(--muted)!important;font-size:11px!important}
.login-footnote span{display:inline-flex;align-items:center;gap:7px}
.login-footnote svg{width:15px;height:15px;color:var(--auth-blue)}
html[data-theme=dark] .login-footnote svg{color:#9bcfd2}
.login-side-note{margin-top:auto;padding-top:30px;color:var(--muted);font-size:10px;letter-spacing:.2px;text-align:center}
.login-side-note>span{display:block}.login-side-note .legal-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:5px 14px;margin-top:8px;letter-spacing:0}.login-side-note .legal-nav a{text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px}.login-side-note .legal-nav a:hover,.login-side-note .legal-nav a:focus-visible{text-decoration-color:currentColor}
.mfa-cancel{margin-top:14px!important}
.mfa-cancel .button{justify-content:center}

html[data-theme=dark] .login-layout{border-color:#34545c;box-shadow:0 28px 90px rgba(0,0,0,.35)}
html[data-theme=dark] .login-side{background:linear-gradient(155deg,#102a31,#0d252c)}
html[data-theme=dark] .login-card{border-color:#38565d;background:rgba(23,52,59,.91);box-shadow:0 22px 65px rgba(0,0,0,.24)}
html[data-theme=dark] .login-card :is(input,select,textarea){background:#102b31;border-color:#6f9496}
html[data-theme=dark] .login-symbol{background:#214149;border-color:#3b5960;color:#a6d4d6}
html[data-theme=dark] .button.primary{background:var(--auth-gold);color:#15343b;border-color:var(--auth-gold)}
html[data-theme=dark] .button.primary:hover{background:#ffc05e;border-color:#ffc05e}
html[data-theme=dark] .errorlist{border-color:#715057}

@media(min-width:821px) and (max-height:800px){
  .login-layout{width:calc(100% - 20px);min-height:calc(100dvh - 20px);margin:10px auto;border-radius:24px}
  .login-brand{padding:34px 46px 27px}
  .login-brand-head>img{width:151px}
  .login-brand-content{padding:30px 0 22px}
  .login-brand h1{margin:12px 0 17px;font-size:clamp(38px,4vw,58px)}
  .login-brand-copy{font-size:15px;line-height:1.65}
  .login-modules{margin-top:22px}
  .login-modules li{min-height:44px}
  .login-brand-foot{padding-top:16px}
  .login-side{padding:56px 46px 22px}
  .login-card{max-width:455px;padding:29px 37px 26px}
  .login-card-head{margin-bottom:19px}
  .login-symbol{width:44px;height:44px}
  .login-card h2{font-size:30px}
  .login-card form{margin-top:21px}
  .login-card form>div{margin-bottom:14px}
  .login-card :is(input,select,textarea){min-height:47px}
  .button{min-height:45px}
  .login-help{margin-top:11px!important}
  .login-footnote{margin-top:19px;padding-top:15px}
  .login-side-note{display:none}
}

@media(max-width:1100px){
  .login-layout{grid-template-columns:minmax(390px,.9fr) minmax(420px,1.1fr)}
  .login-brand{padding:42px 40px 34px}
  .login-brand-content{padding:54px 0 43px}
  .login-brand h1{font-size:clamp(40px,5vw,58px)}
  .login-side{padding:78px 40px 34px}
}

@media(max-width:820px){
  .auth-theme-toggle{right:25px;top:25px}
  .login-layout{display:flex;min-height:calc(100dvh - 24px);width:calc(100% - 24px);margin:12px auto;border-radius:23px;flex-direction:column}
  .login-brand{min-height:360px;padding:34px 36px 31px}
  .login-brand-content{margin:42px 0 24px;padding:0}
  .login-brand h1{max-width:630px;margin:14px 0 16px;font-size:clamp(38px,8vw,57px)}
  .login-brand-copy{max-width:560px;font-size:15px}
  .login-modules{margin-top:25px;grid-template-columns:repeat(4,minmax(0,1fr))}
  .login-modules li{justify-content:center;padding:9px;text-align:center}
  .login-modules svg{display:none}
  .login-brand-foot{display:none}
  .brand-portal{right:-70px;bottom:-160px;width:610px}
  .login-side{min-height:610px;padding:72px 36px 35px}
  .login-card{max-width:510px}
}

@media(max-width:600px){
  .auth-theme-toggle{right:21px;top:21px;width:40px;height:40px;min-width:40px;min-height:40px;border-radius:10px}
  .login-layout{width:100%;min-height:100dvh;margin:0;border:0;border-radius:0}
  .login-brand{min-height:auto;padding:21px 21px 22px}
  .login-brand-head{padding-right:49px}
  .login-brand-head>img{width:122px}
  .login-brand-head>span{padding:6px 9px;font-size:8px;letter-spacing:1.3px}
  .login-brand-content{margin:23px 0 0}
  .hero-label{font-size:8px;letter-spacing:1.45px}
  .login-brand h1{max-width:480px;margin:9px 0 11px;font-size:clamp(31px,9.3vw,43px);letter-spacing:-1.45px}
  .login-brand-copy{font-size:12px;line-height:1.58}
  .login-modules{display:none}
  .brand-portal{right:-110px;bottom:-205px;width:510px;opacity:.16}
  .login-side{min-height:0;flex:1;padding:31px 19px 27px}
  .login-side-orbit{display:none}
  .login-card{max-width:470px;padding:25px 22px 24px;border-radius:18px;box-shadow:0 14px 42px rgba(20,62,67,.1)}
  .login-card-head{margin-bottom:17px}
  .login-symbol{width:43px;height:43px;border-radius:12px}
  .login-secure{font-size:9px}
  .login-card h2{font-size:27px}
  .login-card form{margin-top:20px}
  .login-card form>div{margin-bottom:17px}
  .login-card :is(input,select,textarea){min-height:49px}
  .login-side-note{padding-top:22px;font-size:9px}
}

@media(max-width:380px){
  .login-brand-head>span{display:none}
  .login-brand h1{font-size:32px}
  .login-card{padding:25px 20px}
  .login-footnote{align-items:flex-start;flex-direction:column}
}

@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* interaction.css */
/* Shared interaction states for server-rendered ProjectHub pages. */
.app-feedback-stack{display:grid;gap:10px;margin-bottom:22px}
.app-feedback{position:relative;margin:0;min-height:52px;padding:12px 12px 12px 15px;align-items:center;box-shadow:0 8px 24px rgba(20,62,67,.08)}
.app-feedback-icon{display:grid;place-items:center;flex:0 0 24px}
.app-feedback-icon svg{width:20px;height:20px}
.app-feedback-message{min-width:0;flex:1;overflow-wrap:anywhere;line-height:1.55}
.app-feedback-dismiss{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;padding:0;border:0;border-radius:8px;background:transparent;color:currentColor}
.app-feedback-dismiss:hover{background:color-mix(in srgb,currentColor 9%,transparent)}
.app-feedback-dismiss svg{width:17px;height:17px}
.app-feedback.info{background:var(--surface-soft,#eef4f3);color:var(--ink);border-color:var(--line)}
.app-feedback.warning{background:#fff8e7;color:#71541d;border-color:#ddc783}
.app-feedback[hidden]{display:none}
.form-change-status{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;margin:14px 0 2px;padding:7px 11px;border:1px solid #ddc783;border-radius:999px;background:#fff8e7;color:#71541d;font-size:11px;font-weight:650;line-height:1.35}
.form-change-status:before{content:"";width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#b77b16;box-shadow:0 0 0 3px rgba(183,123,22,.14)}
.form-change-status[hidden]{display:none}
.session-timeout-warning{position:fixed;z-index:120;right:20px;bottom:20px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;width:min(560px,calc(100% - 40px));padding:15px 16px;border:1px solid #c99d49;border-radius:12px;background:#fff8e7;color:#593f12;box-shadow:0 18px 48px rgba(20,62,67,.2)}
.session-timeout-warning[hidden]{display:none}

/* ProjectHub suite shell: one predictable global rail, one tool switcher and one account menu. */
.app-layout{display:grid;grid-template-columns:82px minmax(0,1fr)}
.suite-rail{position:sticky;top:0;z-index:40;display:flex;flex-direction:column;align-items:center;height:100dvh;padding:16px 10px 14px;color:#fff;background:#225f76;border-right:1px solid #174b60}
.suite-rail-brand{display:flex;flex-direction:column;align-items:center;gap:7px;width:100%;padding:2px 0 18px;color:#fff}
.suite-rail-brand>span{display:grid;place-items:center;width:42px;height:42px;border:1px solid #ffffff40;border-radius:13px;background:#ffffff12;font-size:22px;font-weight:750;letter-spacing:-2px;padding-right:2px}
.suite-rail-brand>small{font-size:8px;font-weight:700;letter-spacing:1.1px;color:#fff}
.suite-rail-nav{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;padding-top:15px;border-top:1px solid #ffffff24}
.suite-rail-link,.suite-account-menu>summary{position:relative;display:grid!important;place-items:center;width:50px;height:50px;min-height:50px!important;padding:0!important;border:1px solid transparent;border-radius:13px!important;color:#dcebf0;transition:background .16s,border-color .16s,color .16s,transform .16s}
.suite-rail-link:hover,.suite-account-menu>summary:hover,.suite-account-menu[open]>summary{color:#fff;background:#ffffff17!important;border-color:#ffffff22!important;transform:translateY(-1px)}
.suite-rail-link[aria-current=page]{color:#123d4e;background:#fff!important;border-color:#fff;box-shadow:0 7px 18px #0c35462b}
.suite-rail-link svg{width:22px;height:22px;stroke-width:1.8}
.suite-rail-label{position:absolute;left:calc(100% + 13px);top:50%;z-index:90;display:block;max-width:260px;padding:7px 10px;border-radius:8px;color:#fff;background:#103e51;box-shadow:0 8px 24px #0e34452e;font-size:12px;font-weight:600;line-height:1.2;white-space:nowrap;opacity:0;pointer-events:none;transform:translate(4px,-50%);transition:opacity .14s,transform .14s}
.suite-rail-link:hover .suite-rail-label,.suite-rail-link:focus-visible .suite-rail-label,.suite-account-menu>summary:hover .suite-rail-label,.suite-account-menu>summary:focus-visible .suite-rail-label{opacity:1;transform:translate(0,-50%)}
.suite-account-menu[open]>summary .suite-rail-label{display:none}
.suite-rail-bottom{width:100%;margin-top:auto;padding-top:13px;border-top:1px solid #ffffff24}
.suite-account-menu{display:grid;place-items:center;width:100%;overflow:visible}
.suite-rail-avatar{width:34px;height:34px;background:#f4a62a;color:#173b4a;font-size:11px}
.suite-account-popover{position:fixed!important;top:auto!important;right:auto;bottom:14px;left:96px!important;width:290px;max-height:calc(100dvh - 28px);padding:10px;border-color:#cbd9de;border-radius:15px;box-shadow:0 18px 50px #133d4f38;overflow-y:auto;color:var(--ink);text-align:left}
.suite-account-heading{display:flex;align-items:center;gap:11px;padding:9px 9px 14px;border-bottom:1px solid var(--line)}
.suite-account-heading>span:last-child{min-width:0;overflow-wrap:anywhere}
.suite-account-heading strong{display:block;font-size:14px;line-height:1.35}
.suite-account-heading small{display:block;margin-top:2px;color:var(--muted);font-size:11px}
.suite-account-popover nav{padding-top:5px}
.suite-account-popover nav>a{display:flex;align-items:center;gap:11px;min-height:40px;padding:9px 10px;border-radius:8px;font-size:13px}
.suite-account-popover nav>a svg{width:18px;height:18px;color:#557783}
.suite-account-popover nav>a:hover{background:#edf3f5}
.suite-menu-label{margin:8px 10px 3px!important;padding:0!important;color:#718891!important;font-size:9px!important;font-weight:700;letter-spacing:1.2px}
.suite-account-logout{margin-top:7px;padding-top:8px;border-top:1px solid var(--line)}
.suite-account-logout button{display:flex;align-items:center;gap:11px;width:100%;min-height:40px;padding:9px 10px;border:0;border-radius:8px;color:#8d4138;background:transparent;font-size:13px;text-align:left}
.suite-account-logout button:hover{background:#fff0ed}
.suite-account-logout svg{width:18px;height:18px}

.topbar{height:70px;min-height:70px;padding:0 30px;background:#fffffff2}
.global-links{display:none}
.compact-page-name{display:block;min-width:0;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.top-avatar{display:none}
.hub-launch,.tool-page .hub-launch{gap:8px;min-height:42px;padding:4px 11px 4px 5px;border:1px solid #d3e0e4;border-radius:11px;background:#fff;color:#123e51;font-size:13px}
.hub-launch:hover,.tool-page .hub-launch:hover{background:#f4f8f9;border-color:#adc3cb}
.hub-monogram{width:30px;height:30px;border-radius:8px;background:#225f76;font-size:18px}
.hub-launch:hover .hub-monogram{background:#174d62}
.hub-launch-chevron{margin-left:2px;color:#6f8790;font-size:16px;line-height:1}
.topbar-actions{gap:7px}
.theme-toggle{border-radius:10px}
.app-layout .button.primary{background:#f4a62a!important;color:#183b49!important;border-color:#f4a62a!important;box-shadow:0 3px 9px #b36d1026}
.app-layout .button.primary:hover{background:#ffb83f!important;border-color:#ffb83f!important}

.hub-launcher{position:fixed;inset:82px auto auto 96px;width:min(460px,calc(100vw - 118px));max-height:calc(100dvh - 98px);margin:0;padding:22px;border-color:#cad9de;border-radius:16px;box-shadow:0 22px 60px #123f5138}
.hub-launcher::backdrop{background:#173c4a33;backdrop-filter:blur(2px)}
.hub-launcher .dialog-heading{margin-bottom:17px}
.hub-launcher h2{font-size:23px}
.launcher-primary>a{background:#edf4f6;color:#164e63}
.launcher-primary>a:hover{background:#dfecef}
.launcher-tool-row{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:4px;align-items:center;border-radius:10px}
.launcher-tool-row>a{display:flex;gap:13px;align-items:center;padding:10px;border:1px solid transparent;border-radius:10px;min-width:0}
.launcher-tool-row>a>span:nth-child(2){flex:1;min-width:0}
.launcher-tool-row>a:hover{background:#f3f7f8;border-color:#dce7ea}
.tool-favorite{display:grid;place-items:center;width:38px;height:38px;border:1px solid transparent;border-radius:9px;background:transparent;color:#8da0a3;font-size:18px;line-height:1}
.tool-favorite:hover{background:#eef4f5;color:#b78324}.tool-favorite.is-active{color:#d18d17;background:#fff6df;border-color:#edd39e}.tool-favorite:disabled{opacity:.65}
.launcher-catalog{display:flex;align-items:center;justify-content:space-between;min-height:44px;margin-top:15px;padding:12px 10px;border-top:1px solid var(--line);color:#225f76;font-size:12px;font-weight:650}

.dashboard-hero{background:radial-gradient(ellipse at 92% 0,#4e829433,transparent 57%),linear-gradient(115deg,#164c61,#225f76);box-shadow:0 12px 36px #225f761f}
.dashboard-hero h1 em{color:#f4c15d}
.dashboard-hero .eyebrow{color:#bfd5dd}
.dashboard-config-row{display:flex;justify-content:flex-end;margin:-21px 0 21px}.dashboard-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.dashboard-module{min-width:0;margin:0}.dashboard-tools{grid-column:1/-1}.dashboard-tool-card-shell{position:relative;min-width:0}.dashboard-tool-card-shell .tool-card{height:100%}.dashboard-tool-card-shell>.tool-favorite{position:absolute;z-index:2;top:15px;right:48px;background:#ffffffd9;backdrop-filter:blur(5px)}.dashboard-widget-options{display:grid;gap:8px;margin:18px 0}.dashboard-widget-option{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface,#fff)}.dashboard-widget-option label{display:flex;align-items:center;gap:10px;font-weight:650}.dashboard-widget-option input{width:20px;min-height:20px}.dashboard-widget-option span{display:flex;gap:4px}.dashboard-widget-option button{width:36px;height:36px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft,#f2f6f5);color:var(--ink)}.dashboard-activity{padding:0;overflow:hidden}.dashboard-activity-row{display:flex;gap:12px;align-items:flex-start;padding:16px 24px;border-top:1px solid var(--line)}.dashboard-activity-row>div{display:grid}.dashboard-activity-row strong{font-size:14px}.dashboard-activity-row small{color:var(--muted);font-size:12px;margin-top:3px}.search-result-kind{align-self:flex-start;margin-bottom:3px;padding:2px 6px;border-radius:999px;background:#e7f1f3;color:#28677a;font-size:10px;font-weight:700;letter-spacing:.4px;text-transform:uppercase}
.hero-button{background:#f4a62a;color:#173b49}
.hero-button:hover{background:#ffb83f}
.taskhub-launch-card{border-color:#b8ced5;background:radial-gradient(circle at 92% 0,#d6e4e8 0,transparent 30%),linear-gradient(115deg,#eaf2f4,#fff 64%)}
.taskhub-launch-icon{background:#225f76;box-shadow:0 8px 22px #225f7640}

html[data-theme=dark] .suite-rail{background:#16495d;border-right-color:#0d3342}
html[data-theme=dark] .suite-rail-link[aria-current=page]{color:#f4a62a;background:#102e3b!important;border-color:#426c7b}
html[data-theme=dark] .suite-account-popover{background:var(--surface);border-color:var(--line)}
html[data-theme=dark] .suite-account-popover nav>a:hover{background:var(--surface-soft)}
html[data-theme=dark] .suite-account-popover nav>a svg{color:#a8c9d3}
html[data-theme=dark] .suite-account-logout button:hover{background:#422e32}
html[data-theme=dark] .hub-launch,html[data-theme=dark] .tool-page .hub-launch{background:var(--surface);color:var(--ink);border-color:var(--line)}
html[data-theme=dark] .hub-launch:hover,html[data-theme=dark] .tool-page .hub-launch:hover{background:var(--surface-soft)}
html[data-theme=dark] .launcher-primary>a{background:var(--surface-soft);color:var(--ink)}
html[data-theme=dark] .launcher-tool-row>a:hover,html[data-theme=dark] .tool-favorite:hover{background:var(--surface-soft);border-color:var(--line)}html[data-theme=dark] .tool-favorite.is-active{background:#493e28;color:#f2d08a;border-color:#7b6840}html[data-theme=dark] .dashboard-tool-card-shell>.tool-favorite{background:#17343be8}html[data-theme=dark] .search-result-kind{background:#244b55;color:#b9e5ef}
html[data-theme=dark] .launcher-catalog{color:#9fcfdd}
html[data-theme=dark] .app-layout .button.primary{background:#f4a62a!important;color:#173b49!important;border-color:#f4a62a!important}

@media(min-width:901px){
  .projecthub-page{--tool-sidebar-top:70px}
  .projecthub-page .tool-sidebar{inset:70px auto 0 82px!important}
}
@media(max-width:900px){
  .app-layout{grid-template-columns:minmax(0,1fr)}
  .suite-rail{display:none}
  .top-avatar{display:inline-grid}
  .hub-launcher{inset:82px auto auto 16px}
  .dashboard-modules{grid-template-columns:1fr}
  .dashboard-tools{grid-column:auto}
}
@media(max-width:700px){
  .topbar,.tool-page .topbar{height:60px;min-height:60px;padding:0 12px}
  .hub-launch,.tool-page .hub-launch{min-height:40px;padding:4px;border:0;background:transparent}
  .hub-launch-label,.hub-launch-chevron{display:none}
  .compact-page-name{font-size:12px}
  .hub-launcher{inset:68px 12px auto;width:auto;max-height:calc(100dvh - 80px);padding:18px}
  .hub-launcher h2{font-size:21px}
}
@media(max-width:420px){
  .compact-page-name{display:none}
  .launcher-primary>a{font-size:11px}
}
@media print{
  .suite-rail{display:none!important}
  .app-layout{display:block}
}
.session-timeout-warning strong,.session-timeout-warning p{display:block;margin:0}
.session-timeout-warning strong{font-size:13px}
.session-timeout-warning p{margin-top:4px;font-size:12px;line-height:1.45}
.session-timeout-warning .button{white-space:nowrap}
.session-timeout-warning [data-session-login]{grid-column:1/-1;justify-self:end}
form[aria-busy=true] :is(button[type=submit],button:not([type]),input[type=submit]){cursor:wait}
:is(.button,.public-primary).is-submitting{position:relative;gap:9px;opacity:1}
:is(.button,.public-primary).is-submitting:before{content:"";display:inline-block;width:14px;height:14px;flex:0 0 14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:app-submit-spin .7s linear infinite}
[aria-invalid=true]{scroll-margin-block:110px}
.form-error-summary{margin:0 0 22px;padding:15px 17px;border:1px solid #d9aaa3;border-left:4px solid #a84f44;border-radius:9px;background:#fbf0ec;color:var(--ink);scroll-margin-block:110px}
.form-error-summary:focus{outline:3px solid color-mix(in srgb,#a84f44 35%,transparent);outline-offset:3px}
.form-error-summary strong{display:block;margin-bottom:7px;font-size:13px}
.form-error-summary ul{display:grid;gap:5px;margin:0;padding-left:20px;font-size:12px;line-height:1.5}
.form-error-summary a{color:#7c3029;text-decoration:underline;text-underline-offset:2px}
.action-confirm-dialog{width:min(500px,calc(100% - 32px));padding:0;overflow:hidden}
.action-confirm-body{display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;padding:26px 26px 20px}
.action-confirm-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fbefeb;color:#a84f44;font-size:20px;font-weight:700}
.action-confirm-copy h2{margin:2px 0 10px;font-size:21px;line-height:1.3}
.action-confirm-copy p{font-size:13px;line-height:1.7;overflow-wrap:anywhere}
.action-confirm-actions{display:flex;justify-content:flex-end;gap:10px;padding:17px 26px 22px;border-top:1px solid var(--line)}
.button.danger{background:#a84f44;color:#fff;border-color:#a84f44}
.button.danger:hover{background:#913f36;border-color:#913f36}
@keyframes app-submit-spin{to{transform:rotate(360deg)}}
@media(max-width:700px){.app-feedback-stack{margin:0 -4px 18px}.app-feedback{align-items:flex-start;border-radius:10px}.app-feedback-dismiss{margin:-6px -6px -6px 0}.form-actions{row-gap:10px}.form-actions .button{min-width:min(100%,180px)}.session-timeout-warning{right:12px;bottom:12px;grid-template-columns:1fr;width:calc(100% - 24px)}.session-timeout-warning .button,.session-timeout-warning [data-session-login]{width:100%;justify-content:center}.action-confirm-body{grid-template-columns:36px minmax(0,1fr);gap:12px;padding:22px 18px 18px}.action-confirm-icon{width:36px;height:36px;font-size:17px}.action-confirm-copy h2{font-size:19px}.action-confirm-actions{padding:15px 18px 18px}.action-confirm-actions .button{flex:1}}
@media(prefers-reduced-motion:reduce){.button.is-submitting:before{animation-duration:1.4s}}
