:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#14212b;--muted:#62707c;--line:#dbe3e8;--surface:#fff;--surface-soft:#f4f7f9;--brand:#126a64;--brand-dark:#0a4845;--accent:#e7f4f1;--warning:#9b5d00;--danger:#a02d38;--shadow:0 18px 48px #14212b17}*{box-sizing:border-box}html{background:#eef3f5}body{color:var(--ink);background:radial-gradient(circle at 8% -10%,#126a6429,#0000 34rem),linear-gradient(#f8fafb 0%,#eef3f5 100%);min-height:100vh;margin:0;font-family:Yu Gothic UI,Hiragino Kaku Gothic ProN,system-ui,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.shell{width:min(1160px,100% - 32px);margin:0 auto}.topbar{justify-content:space-between;align-items:center;gap:24px;min-height:76px;display:flex}.brand{letter-spacing:.02em;align-items:center;gap:12px;font-weight:800;text-decoration:none;display:flex}.brand-mark{color:#fff;background:linear-gradient(145deg, var(--brand), #22a394);border-radius:12px;place-items:center;width:38px;height:38px;display:grid;box-shadow:0 9px 22px #126a643d}.topnav{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.topnav a:not(.button){color:var(--muted);border-radius:10px;padding:9px 12px;font-weight:700;text-decoration:none}.topnav a:not(.button):hover,.topnav a:not(.button):focus-visible{color:var(--brand-dark);background:var(--accent);outline:none}.hero{grid-template-columns:1.22fr .78fr;align-items:center;gap:32px;min-height:calc(100vh - 160px);padding:56px 0 86px;display:grid}.eyebrow{color:var(--brand);letter-spacing:.12em;text-transform:uppercase;margin:0 0 14px;font-size:.78rem;font-weight:800}h1{letter-spacing:-.055em;margin:0;font-size:clamp(2.35rem,6vw,5.4rem);line-height:.98}.lead{max-width:710px;color:var(--muted);margin:26px 0 0;font-size:1.06rem;line-height:1.85}.actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.button{background:var(--brand);color:#fff;cursor:pointer;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;min-height:44px;padding:0 18px;font-weight:800;text-decoration:none;display:inline-flex}.button:hover,.button:focus-visible{background:var(--brand-dark);outline-offset:2px;outline:3px solid #126a6433}.button.secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}.button.secondary:hover,.button.secondary:focus-visible{background:var(--surface-soft)}.button.danger{color:var(--danger);background:#fff1f2;border-color:#f3c4c9}.button:disabled{cursor:not-allowed;opacity:.55}.help-trigger{align-items:center;gap:4px;max-width:100%;display:inline-flex}.help-trigger>.role-toggle{flex:auto;min-width:0}.help-trigger:focus-visible{outline-offset:3px;border-radius:12px;outline:3px solid #126a644d}.help-tooltip{z-index:1000;color:#fff;overflow-wrap:anywhere;background:#14212b;border:1px solid #40545f;border-radius:10px;width:max-content;max-width:min(340px,100vw - 16px);padding:12px 14px;font-size:.85rem;font-weight:500;line-height:1.65;position:fixed;box-shadow:0 8px 26px #14212b38}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.help-touch-toggle{border:1px solid var(--line);width:44px;min-height:44px;color:var(--brand-dark);cursor:pointer;background:#fff;border-radius:50%;flex:0 0 44px;font-weight:800;display:none}.help-touch-toggle:focus-visible{outline-offset:2px;outline:3px solid #126a644d}@media (hover:none),(pointer:coarse){.help-touch-toggle{place-items:center;display:inline-grid}.role-action .help-trigger{width:100%}}.hero-card,.panel{box-shadow:var(--shadow);background:#ffffffeb;border:1px solid #dbe3e8eb;border-radius:24px}.hero-card{padding:28px}.signal{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:16px 0;display:flex}.signal:last-child{border:0}.signal-icon{background:var(--accent);width:42px;height:42px;color:var(--brand-dark);border-radius:14px;place-items:center;font-weight:900;display:grid}.signal strong,.signal span{display:block}.signal span{color:var(--muted);margin-top:3px;font-size:.9rem}.page{padding:36px 0 88px}.page-head{justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px;display:flex}.page-head h1{font-size:clamp(2rem,5vw,3.7rem)}.page-head p{color:var(--muted);max-width:640px;line-height:1.7}.grid{grid-template-columns:repeat(12,1fr);gap:18px;display:grid}.account-section-tabs{background:#e3ebe9;border-radius:16px;gap:6px;margin-bottom:22px;padding:6px;display:flex;overflow-x:auto}.account-section-tabs button{min-height:48px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:11px;flex:1 0 auto;padding:10px 18px;font-weight:700}.account-section-tabs button[aria-selected=true]{color:var(--brand-dark);background:#fff;box-shadow:0 2px 8px #14212b14}.account-section-tabs button:focus-visible,.account-sections [role=tabpanel]:focus-visible,.account-disclosure summary:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.account-sections [role=tabpanel][hidden]{display:none}.account-sections .panel{overflow-wrap:anywhere;min-width:0}.account-disclosure{border-top:1px solid var(--line);margin-top:16px;padding-top:8px}.account-disclosure summary{min-height:44px;color:var(--brand-dark);cursor:pointer;padding-block:12px;font-weight:700}.password-input{gap:8px;display:flex}.password-input input{flex:1;min-width:0}.password-input .button{flex:none}.auth-card form>.actions .button{width:100%}.panel{grid-column:span 6;padding:24px}.panel.wide{grid-column:span 12}.security-sections>*{overflow-wrap:anywhere;grid-column:1/-1;min-width:0}.security-feedback:empty{width:0;height:0;position:absolute;overflow:hidden}.security-feedback>p{margin:0}.panel h2{margin:0 0 8px;font-size:1.1rem}.panel p{color:var(--muted);line-height:1.65}.status{background:var(--accent);color:var(--brand-dark);border-radius:99px;align-items:center;gap:7px;padding:6px 9px;font-size:.78rem;font-weight:800;display:inline-flex}.status:before{content:"";background:#1d9d70;border-radius:50%;width:7px;height:7px}.status.pending{color:var(--warning);background:#fff5e5}.status.pending:before{background:#db8c18}.metric{letter-spacing:-.04em;margin-top:18px;font-size:2.1rem;font-weight:900}.list{margin:18px 0 0;padding:0;list-style:none}.list li{border-top:1px solid var(--line);justify-content:space-between;gap:16px;padding:13px 0;display:flex}.list small{color:var(--muted)}.auth-wrap{place-items:center;min-height:calc(100vh - 90px);padding:36px 0 80px;display:grid}.auth-card{background:var(--surface);border:1px solid var(--line);width:min(470px,100%);box-shadow:var(--shadow);border-radius:24px;padding:32px}.auth-card h1{letter-spacing:-.035em;font-size:2rem}.auth-card>p{color:var(--muted);line-height:1.65}.field{gap:7px;margin-top:18px;display:grid}.connect-recovery-confirm{cursor:pointer;align-items:flex-start;gap:10px;margin-top:20px;padding:10px 0;display:flex}.connect-recovery-confirm input{width:22px;height:22px;accent-color:var(--brand);flex:0 0 22px;margin:2px 0 0}.connect-recovery-confirm input:focus-visible{outline:3px solid var(--brand);outline-offset:3px}.connect-recovery-confirm span{overflow-wrap:anywhere;min-width:0}.field label{font-size:.9rem;font-weight:800}.field input,.field select{width:100%;min-height:46px;color:var(--ink);background:#fff;border:1px solid #c7d2d9;border-radius:11px;padding:10px 12px}.field input:focus,.field select:focus{border-color:var(--brand);outline:3px solid #126a6429}.form-error{color:var(--danger);background:#fff1f2;border:1px solid #f2c6ca;border-radius:10px;margin-top:16px;padding:10px 12px}.fineprint{color:var(--muted);font-size:.82rem;line-height:1.55}.divider{background:var(--line);height:1px;margin:24px 0}.social-auth{border-top:1px solid var(--line);text-align:center;margin-top:28px;padding-top:24px;position:relative}.social-auth-label{color:var(--muted);background:var(--surface);padding:0 10px;font-size:.78rem;position:absolute;top:-10px;left:50%;transform:translate(-50%)}.google-button{gap:10px;width:100%}.google-mark{border:1px solid var(--line);color:#4285f4;background:#fff;border-radius:50%;place-items:center;width:22px;height:22px;font-family:Arial,sans-serif;font-weight:900;display:inline-grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;display:grid}.field-wide{grid-column:1/-1}.invoice-action{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:16px 0;font-weight:800;display:flex}.divider-section{border-top:1px solid var(--line);margin-top:22px;padding-top:22px}.invoice-sheet{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:16px;padding:42px}.invoice-header{justify-content:space-between;gap:32px;display:flex}.invoice-header h2{margin:0 0 22px;font-size:2rem}.invoice-header dl{min-width:300px;margin:0}.invoice-header dl div{grid-template-columns:110px 1fr;gap:16px;padding:5px 0;display:grid}.invoice-header dt{color:var(--muted)}.invoice-header dd{text-align:right;margin:0}.invoice-total{background:var(--accent);border-radius:12px;justify-content:space-between;align-items:baseline;margin:34px 0;padding:22px;display:flex}.invoice-total strong{font-size:2rem}.invoice-table{border-collapse:collapse;width:100%}.invoice-table th,.invoice-table td{border-bottom:1px solid var(--line);text-align:left;padding:13px 10px}.invoice-table th:last-child,.invoice-table td:last-child{text-align:right}.invoice-table tfoot tr:last-child{font-size:1.15rem}.invoice-parties{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:34px;display:grid}.invoice-parties h3{margin-bottom:8px}.invoice-parties p{color:var(--ink);line-height:1.7}.consent-scopes{gap:10px;margin:20px 0;display:grid}.consent-scope{border:1px solid var(--line);background:var(--surface-soft);border-radius:12px;padding:13px 14px}.admin-page{width:min(1380px,100% - 32px)}.admin-tabs{border:1px solid var(--line);background:#fffc;border-radius:14px;flex-wrap:wrap;gap:6px;width:fit-content;margin-bottom:28px;padding:5px;display:flex}.admin-tabs a{min-height:42px;color:var(--muted);border-radius:10px;align-items:center;padding:0 15px;font-weight:800;text-decoration:none;display:inline-flex}.admin-tabs a:hover,.admin-tabs a:focus-visible{color:var(--brand-dark);background:var(--accent);outline:none}.admin-tabs a[aria-current=page]{color:#fff;background:var(--brand)}.admin-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.admin-metrics>div{border:1px solid var(--line);background:#ffffffe6;border-radius:18px;min-height:118px;padding:18px 20px;box-shadow:0 8px 24px #14212b0a}.admin-metrics span,.admin-metrics small{color:var(--muted);display:block}.admin-metrics strong{letter-spacing:-.04em;margin:5px 0 3px;font-size:2rem;display:block}.admin-filter{border:1px solid var(--line);background:#fff;border-radius:18px;grid-template-columns:minmax(240px,1fr) 180px auto auto;align-items:end;gap:12px;margin:0 0 18px;padding:18px;display:grid}.admin-filter-compact{grid-template-columns:minmax(280px,1fr) auto auto}.admin-filter label{color:var(--ink);gap:7px;font-size:.86rem;font-weight:800;display:grid}.admin-filter input,.admin-filter select{width:100%;min-height:44px;color:var(--ink);background:#fff;border:1px solid #c7d2d9;border-radius:10px;padding:9px 12px}.admin-filter input:focus,.admin-filter select:focus{border-color:var(--brand);outline:3px solid #126a6429}.notice{color:#734600;background:#fff8e8;border:1px solid #e9c376;border-radius:12px;margin:0 0 18px;padding:12px 14px}.directory{gap:12px;display:grid}.directory-row{border:1px solid var(--line);background:#fffffff0;border-radius:18px;grid-template-columns:minmax(280px,1.05fr) minmax(380px,1.4fr) 148px;align-items:center;gap:22px;padding:20px;display:grid;box-shadow:0 8px 24px #14212b09}.directory-identity{align-items:center;gap:14px;min-width:0;display:flex}.avatar{background:linear-gradient(145deg, var(--brand), #25a596);color:#fff;border-radius:15px;flex:none;place-items:center;width:46px;height:46px;font-size:1.1rem;font-weight:900;display:grid}.directory-identity h2,.admin-role-card h2{margin:0;font-size:1.03rem}.directory-identity p,.admin-role-card header p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:4px 0;overflow:hidden}.directory-identity small{max-width:380px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.identity-line{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.directory-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;margin:0;display:grid}.directory-facts div{min-width:0}.directory-facts dt{color:var(--muted);margin-bottom:3px;font-size:.75rem;font-weight:800}.directory-facts dd{text-overflow:ellipsis;margin:0;font-size:.85rem;line-height:1.45;overflow:hidden}.status.account-suspended{color:var(--warning);background:#fff5e5}.status.account-suspended:before{background:#db8c18}.status.account-closed{color:#68737b;background:#f0f1f2}.status.account-closed:before{background:#7d878d}.compact-action{justify-items:stretch;gap:6px;display:grid}.compact-action .button{width:100%}.compact-action small{color:var(--muted);text-align:center;font-size:.72rem;line-height:1.4}.form-message{color:var(--danger);font-size:.78rem;line-height:1.4}.empty-state{text-align:center;background:#ffffff8c;border:1px dashed #b8c4cb;border-radius:18px;padding:48px 24px}.empty-state strong{font-size:1.05rem}.empty-state p{color:var(--muted);margin-bottom:0}.risk-banner{background:#fff9e9;border:1px solid #e8c87f;border-radius:18px;align-items:center;gap:15px;margin-bottom:18px;padding:16px 18px;display:flex}.risk-icon{color:#fff;background:#f0a51f;border-radius:12px;flex:none;place-items:center;width:38px;height:38px;font-size:1.2rem;font-weight:900;display:grid}.risk-banner p{color:#76521b;margin:4px 0 0;line-height:1.55}.admin-role-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.admin-role-card{border:1px solid var(--line);background:#fffffff0;border-radius:20px;padding:20px;box-shadow:0 8px 24px #14212b09}.admin-role-card header{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;margin-bottom:16px;padding-bottom:16px;display:grid}.role-action-list{gap:8px;display:grid}.role-confirmation{overflow-wrap:anywhere;background:#fff9e9;border:1px solid #e8c87f;border-radius:12px;gap:10px;padding:14px;display:grid}.role-confirmation p{margin:0;line-height:1.6}.role-confirmation .inline-actions{flex-wrap:wrap;gap:8px;display:flex}body:has(.role-confirmation) .help-tooltip{visibility:hidden;pointer-events:none}.role-action{border:1px solid var(--line);border-radius:12px;justify-content:space-between;align-items:center;gap:14px;min-height:58px;padding:9px 10px 9px 13px;display:flex}.role-action strong,.role-action small{display:block}.role-action small{color:var(--muted);margin-top:2px}.role-toggle{min-width:90px;min-height:38px;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #bcc8cf;border-radius:10px;flex:none;padding:0 12px;font-weight:800}.role-toggle:hover,.role-toggle:focus-visible{border-color:var(--brand);outline:3px solid #126a6424}.role-toggle.is-enabled{background:var(--accent);color:var(--brand-dark);border-color:#8ec8b6}.role-toggle:disabled{cursor:not-allowed;opacity:.6}.admin-entry{background:linear-gradient(135deg,#fff,#effaf7);border-color:#abd7ce;justify-content:space-between;align-items:center;gap:22px;display:flex}.admin-entry h2{margin-top:14px}.context-panel{background:linear-gradient(135deg,#fff,#effaf7);border-color:#abd7ce;grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);align-items:center;gap:26px;display:grid}.context-panel h2{margin-top:14px}.context-current{flex-wrap:wrap;align-items:center;gap:9px 14px;margin-bottom:0;display:flex}.context-current strong{color:var(--ink)}.context-current span{color:var(--muted);font-size:.86rem}.context-switcher{background:#ffffffd1;border:1px solid #bcded7;border-radius:16px;gap:12px;padding:18px;display:grid}.context-switcher .field{margin:0}.mfa-enrollment{border:1px solid var(--line);background:var(--surface-soft);border-radius:16px;grid-template-columns:240px minmax(0,1fr);align-items:center;gap:24px;margin-top:18px;padding:18px;display:grid}.mfa-enrollment img{background:#fff;border-radius:10px;max-width:100%;height:auto;display:block}.mfa-enrollment code{overflow-wrap:anywhere;color:var(--ink)}.affiliation-directory{gap:14px;display:grid}.affiliation-account-head{justify-content:space-between;align-items:start;gap:16px;display:flex}.affiliation-account-head h2{margin:0}.affiliation-account-head p{margin:4px 0 0}.affiliation-create{border-top:1px solid var(--line);grid-template-columns:1.1fr 1.2fr 1.2fr auto;align-items:end;gap:12px;margin-top:18px;padding-top:18px;display:grid}.affiliation-create .field{margin:0}.affiliation-confirmation{overflow-wrap:anywhere;background:#fff9e9;border:1px solid #e8c87f;border-radius:12px;gap:10px;margin-top:16px;padding:14px;display:grid}.affiliation-confirmation p{margin:0;line-height:1.6}.affiliation-confirmation .inline-actions{justify-content:start}body:has(.affiliation-confirmation) .help-tooltip{visibility:hidden;pointer-events:none}.affiliation-admin .list li,.pending-affiliation{overflow-wrap:anywhere}.inline-actions{flex-wrap:wrap;justify-content:end;gap:8px;display:flex}.inline-actions .button{min-height:38px;padding-inline:12px}.lifecycle-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;display:grid}.lifecycle-grid h3{margin-top:0}.lifecycle-grid textarea{resize:vertical;border:1px solid #c7d2d9;border-radius:11px;width:100%;padding:10px 12px}@media (max-width:800px){.hero{grid-template-columns:1fr;padding-top:34px}.hero-card{order:-1}.panel{grid-column:span 12}.topbar{flex-direction:column;align-items:stretch;gap:12px;padding-block:16px}.topnav{gap:4px}.topnav a:not(.button){align-items:center;min-height:44px;display:inline-flex}.page-head{flex-direction:column;align-items:start}.form-grid,.invoice-parties{grid-template-columns:1fr}.field-wide{grid-column:auto}.invoice-action,.invoice-header{flex-direction:column;align-items:stretch}.invoice-header dl{min-width:0}.invoice-sheet{padding:22px 18px}.admin-page{width:min(100% - 24px,1380px)}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-filter,.admin-filter-compact{grid-template-columns:1fr}.directory-row{grid-template-columns:1fr;gap:16px}.directory-facts,.admin-role-directory{grid-template-columns:1fr}.admin-entry{flex-direction:column;align-items:stretch}.context-panel,.mfa-enrollment,.affiliation-create,.lifecycle-grid{grid-template-columns:1fr}}@media (max-width:460px){.account-section-tabs{grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:visible}.account-section-tabs button{min-width:0;padding-inline:8px}.admin-metrics{grid-template-columns:1fr}.admin-tabs{width:100%}.admin-tabs a{flex:auto;justify-content:center}.admin-role-card header{grid-template-columns:auto minmax(0,1fr)}.admin-role-card header>.status{grid-column:1/-1;width:fit-content}.role-action{flex-direction:column;align-items:stretch}.role-toggle{width:100%}}.directory-group-selector{margin:1.5rem 0}.directory-group-tabs{border-bottom:2px solid #cbd5e1;flex-wrap:wrap;gap:.5rem;padding-bottom:.5rem;display:flex}.directory-group-tabs a{color:#15364b;background:#fff;border:1px solid #cbd5e1;border-radius:.75rem .75rem 0 0;align-items:center;gap:.75rem;min-height:48px;padding:.75rem 1rem;font-weight:700;text-decoration:none;display:flex}.directory-group-tabs a[aria-current=page]{color:#fff;background:#116b67;border-color:#116b67}.directory-group-tabs a:focus-visible{outline-offset:3px;outline:3px solid #2563eb}.directory-group-tabs span{white-space:nowrap;font-size:.85rem}@media (max-width:600px){.directory-group-tabs a{border-radius:.75rem;flex:100%;justify-content:space-between}}@media print{body{background:#fff}body>header,.no-print{display:none!important}.shell{width:100%}.page{padding:0}.invoice-sheet{box-shadow:none;border:0;padding:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.connect-notification-reference{overflow-wrap:anywhere}
