:root{color:#16362d;font-synthesis:none;text-rendering:optimizelegibility;--bg:#f4f8f5;--surface:#ffffffe0;--surface-strong:#fff;--surface-soft:#edf5f0;--line:#dce9e1;--line-strong:#c7dbcf;--ink:#17372e;--muted:#698078;--accent:#3c8f70;--accent-strong:#236c52;--accent-soft:#dff2e9;--danger:#a94747;--danger-soft:#fbe8e8;--warning:#946921;--warning-soft:#fff2d6;--shadow:0 20px 55px #294c3d14;--shadow-soft:0 8px 24px #294c3d0f;--radius-lg:24px;--radius-md:16px;--radius-sm:12px;background:#f4f8f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--bg);min-width:320px}body{background:radial-gradient(circle at 12% 0%, #a6dbbf40, transparent 32rem), var(--bg);min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #3c8f7047}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.045em}h2{letter-spacing:-.025em}.skip-link{z-index:100;border:2px solid var(--accent-strong);color:#fff;background:var(--accent-strong);border-radius:10px;padding:10px 14px;font-weight:800;text-decoration:none;transition:transform .12s;position:fixed;top:12px;left:12px;transform:translateY(-180%)}.skip-link:focus-visible{transform:translateY(0)}.sr-only{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.eyebrow{color:var(--accent-strong);letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px;font-size:.74rem;font-weight:800;display:block}.card{border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid #d1e2d8d1}.button{cursor:pointer;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-weight:750;text-decoration:none;transition:transform .12s,background .12s,border-color .12s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:.6}.button--primary{color:#fff;background:var(--accent-strong)}.button--primary:hover:not(:disabled){background:#195e47}.button--secondary{border-color:var(--line-strong);color:var(--ink);background:#fff}.button--danger{color:#fff;background:var(--danger)}.button--ghost{color:var(--muted);background:0 0;padding-inline:10px}.button--wide{width:100%}.button-spinner{border:2px solid #ffffff73;border-top-color:currentColor;border-radius:50%;width:15px;height:15px;animation:.7s linear infinite spin}.button-row{flex-wrap:wrap;gap:10px;display:flex}@keyframes spin{to{transform:rotate(360deg)}}.alert{border-radius:12px;padding:13px 14px;font-size:.9rem;line-height:1.45}.alert--info{background:#eaf3ff}.alert--success{color:#226145;background:var(--accent-soft)}.alert--warning{color:#76541c;background:var(--warning-soft)}.alert--danger{color:#8c3434;background:var(--danger-soft)}.field{gap:7px;display:grid}.field>span,.organisation-switcher>span{color:#557067;font-size:.82rem;font-weight:750}.field input,.field select,.search-field input,.compact-field select,.organisation-switcher select{border:1px solid var(--line-strong);width:100%;min-height:46px;color:var(--ink);background:#fbfdfc;border-radius:12px}.field input,.field select{padding:0 13px}.field input:focus,.field select:focus,.search-field:focus-within{border-color:var(--accent);background:#fff}.checkbox{color:var(--muted);align-items:center;gap:9px;font-size:.88rem;display:flex}.checkbox input{width:16px;height:16px;accent-color:var(--accent-strong)}.text-link,.text-button{color:var(--accent-strong);font-size:.88rem;font-weight:750}.text-link{text-align:center;text-decoration:none}.text-button{cursor:pointer;background:0 0;border:0;padding:4px}.auth-layout{grid-template-columns:minmax(360px,1.05fr) minmax(420px,.95fr);min-height:100vh;display:grid}.auth-hero{color:#fff;background:linear-gradient(145deg,#185b43fa,#207153ed),#1d6a50;flex-direction:column;justify-content:space-between;padding:46px 56px;display:flex;position:relative;overflow:hidden}.auth-hero:after{content:"";border:1px solid #ffffff1a;border-radius:50%;width:34rem;height:34rem;position:absolute;bottom:-9rem;right:-8rem;box-shadow:0 0 0 70px #ffffff08,0 0 0 140px #ffffff05}.auth-hero__copy{z-index:1;max-width:600px;position:relative}.auth-hero__copy .eyebrow,.brand-lockup--hero span{color:#ffffffad}.auth-hero__copy h1{max-width:560px;margin-bottom:20px;font-size:clamp(3rem,6vw,5.7rem);line-height:.94}.auth-hero__copy p{color:#ffffffbd;max-width:560px;font-size:1.08rem;line-height:1.7}.auth-hero__security{z-index:1;color:#ffffffb3;align-items:center;gap:9px;font-size:.84rem;display:flex;position:relative}.auth-panel,.auth-simple{place-items:center;min-height:100vh;padding:28px;display:grid}.auth-panel{background:#f9fcfae6}.auth-card{border:1px solid var(--line);width:min(100%,460px);box-shadow:var(--shadow);background:#fffffff0;border-radius:26px;gap:20px;padding:34px;display:grid}.auth-card--compact{width:min(100%,500px)}.auth-card__heading h2{margin-bottom:8px;font-size:1.8rem}.auth-card__heading p{color:var(--muted);margin-bottom:0;line-height:1.6}.brand-lockup{align-items:center;gap:11px;display:flex}.brand-mark{color:#fff;background:var(--accent-strong);letter-spacing:-.04em;border-radius:13px;place-items:center;width:42px;height:42px;font-size:.86rem;font-weight:900;display:grid}.brand-lockup--hero .brand-mark{background:#ffffff1f}.brand-lockup strong,.brand-lockup span{display:block}.brand-lockup strong{font-size:1rem}.brand-lockup span{color:var(--muted);margin-top:2px;font-size:.72rem}.security-icon{width:54px;height:54px;color:var(--accent-strong);background:var(--accent-soft);border-radius:16px;place-items:center;display:grid}.security-icon--success{color:#fff;background:var(--accent-strong)}.app-shell{grid-template-columns:258px minmax(0,1fr);min-height:100vh;transition:grid-template-columns .18s;display:grid}.app-shell--compact{grid-template-columns:82px minmax(0,1fr)}.sidebar{z-index:30;border-right:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fafdfbf0;flex-direction:column;height:100vh;padding:20px 14px;display:flex;position:sticky;top:0}.sidebar__top{justify-content:space-between;align-items:center;min-height:48px;padding:0 6px;display:flex}.app-shell--compact .brand-copy,.app-shell--compact .nav-item span,.app-shell--compact .sidebar__footer span{display:none}.app-shell--compact .brand-lockup{justify-content:center}.sidebar-nav{scrollbar-gutter:stable;flex:auto;align-content:start;gap:5px;min-height:0;margin-top:22px;padding-bottom:8px;display:grid;overflow-y:auto}.nav-item{color:#61766f;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:11px;min-height:45px;padding:0 12px;font-size:.88rem;font-weight:720;text-decoration:none;display:flex}.nav-item svg{flex:0 0 19px;width:19px}.nav-item:hover{color:var(--ink);background:var(--surface-soft)}.nav-item--active{color:var(--accent-strong);background:var(--accent-soft)}.nav-item--button{text-align:left;width:100%}.sidebar__footer{flex:none;margin-top:12px}.organisation-switcher{gap:7px;margin:18px 6px 0;display:grid}.organisation-switcher select{min-height:42px;padding:0 9px;font-size:.82rem}.app-shell--compact .organisation-switcher{display:none}.shell-main{min-width:0}.topbar{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f4f8f5e0;border-bottom:1px solid #dce9e1db;align-items:center;gap:16px;min-height:72px;padding:10px 26px;display:flex;position:sticky;top:0}.topbar__context{color:var(--muted);align-items:center;gap:8px;font-size:.82rem;font-weight:700;display:flex}.live-dot{background:#4cb184;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #4cb1841f}.topbar__user{align-items:center;gap:8px;margin-left:auto;display:flex}.topbar__user>div:first-child{text-align:right;margin-right:6px}.topbar__user strong,.topbar__user span{display:block}.topbar__user strong{font-size:.82rem}.topbar__user span{color:var(--muted);margin-top:2px;font-size:.7rem}.icon-button{border:1px solid var(--line);width:40px;height:40px;color:var(--ink);cursor:pointer;background:#fff;border-radius:12px;place-items:center;display:inline-grid}.icon-button svg{width:18px}.mobile-menu,.sidebar-close{display:none}.content{width:min(100%,1560px);margin:0 auto;padding:34px 32px 60px}.page-header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.page-header h1{margin-bottom:8px;font-size:clamp(2rem,4vw,3rem)}.page-header p{max-width:760px;color:var(--muted);margin-bottom:0;line-height:1.6}.page-header__actions{flex:none}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.metric-card{align-items:center;gap:14px;padding:20px;display:flex}.metric-card--accent{background:linear-gradient(145deg,#e3f4eb,#f5fbf7)}.metric-icon,.module-icon{width:44px;height:44px;color:var(--accent-strong);background:var(--accent-soft);border-radius:14px;flex:0 0 44px;place-items:center;display:grid}.metric-icon svg,.module-icon svg{width:20px}.metric-card span:not(.metric-icon){color:var(--muted);font-size:.76rem;font-weight:700;display:block}.metric-card strong{letter-spacing:-.04em;margin-top:5px;font-size:1.65rem;display:block}.dashboard-grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:16px;display:grid}.card-heading{justify-content:space-between;align-items:center;display:flex}.card-heading h2,.roadmap-card h2{margin-bottom:5px}.status-list{border:1px solid var(--line);background:var(--line);border-radius:14px;gap:1px;margin-top:18px;display:grid;overflow:hidden}.status-row{background:#fff;justify-content:space-between;align-items:center;padding:13px 14px;display:flex}.status-badge{color:#48635a;text-transform:capitalize;background:#edf3ef;border-radius:999px;align-items:center;padding:5px 9px;font-size:.7rem;font-weight:800;display:inline-flex}.status-badge--active{color:#246246;background:#dcf1e5}.status-badge--trial{color:#3f6188;background:#e7f0fb}.status-badge--past_due{color:#855e1e;background:#fff0d1}.status-badge--suspended,.status-badge--cancelled{color:#8a3f3f;background:#f9e5e5}.roadmap-card{color:#fff;background:linear-gradient(145deg, #1c674cfa, #348465ed), var(--accent-strong)}.roadmap-card .eyebrow,.roadmap-card p{color:#ffffffb8}.roadmap-card p{line-height:1.65}.roadmap-chips{flex-wrap:wrap;gap:7px;margin-top:18px;display:flex}.roadmap-chips span{background:#ffffff14;border:1px solid #ffffff29;border-radius:999px;padding:7px 9px;font-size:.72rem}.filter-bar{border-bottom:1px solid var(--line);gap:10px;padding:18px;display:flex}.search-field{border:1px solid var(--line-strong);background:#fff;border-radius:12px;flex:1;align-items:center;gap:8px;max-width:520px;padding:0 11px;display:flex}.search-field input{border:0;outline:0;min-height:42px}.compact-field select{min-height:44px;padding:0 12px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--line);text-align:left;padding:14px 18px}th{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem}td{font-size:.86rem}.table-subtitle{color:var(--muted);margin-top:3px;font-size:.72rem;display:block}.empty-table,.empty-inline{color:var(--muted);text-align:center;padding:24px}.module-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.module-card{align-items:flex-start;gap:13px;min-height:136px;padding:18px;display:flex}.module-card h2{margin-bottom:6px;font-size:1rem}.module-card p{color:var(--muted);margin-bottom:0;font-size:.78rem;line-height:1.5}.workspace-foundation{margin-top:16px;padding:24px}.workspace-foundation p{max-width:760px;color:var(--muted);margin-bottom:0;line-height:1.6}.security-steps{gap:8px;margin:0 0 20px;padding:0;list-style:none;display:flex}.security-step{color:var(--muted);align-items:center;gap:7px;font-size:.78rem;font-weight:700;display:flex}.security-step>span{background:#e5ece8;border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.security-step--active{color:var(--accent-strong)}.security-step--active>span{color:#fff;background:var(--accent-strong)}.standalone-page{width:min(100% - 40px,1080px);margin:0 auto;padding:56px 0}.security-card,.success-card{gap:20px;max-width:720px;padding:26px;display:grid}.security-card form{gap:16px;display:grid}.success-card{grid-template-columns:auto 1fr auto;align-items:center}.qr-wrap{border:1px solid var(--line);background:#fff;border-radius:16px;width:fit-content;padding:18px;display:grid}.qr-wrap img{width:220px;height:220px}.recovery-codes{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.recovery-codes code{background:#edf4f0;border-radius:9px;padding:9px 11px;font-size:.8rem}.spinner-wrap,.centered-state{min-height:240px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:12px;padding:30px;display:grid}.spinner{border:3px solid #d6e5dc;border-top-color:var(--accent);border-radius:50%;width:30px;height:30px;animation:.75s linear infinite spin}.centered-state h1{color:var(--ink);margin-bottom:4px}@media (width<=1120px){.metric-grid,.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-layout{grid-template-columns:minmax(330px,.8fr) minmax(410px,1.2fr)}.auth-hero{padding:40px}}@media (width<=840px){.auth-layout{display:block}.auth-hero{min-height:310px;padding:28px}.auth-hero__copy{margin:48px 0 24px}.auth-hero__copy h1{font-size:3rem}.auth-panel{min-height:auto;padding:28px 18px 44px}.app-shell,.app-shell--compact{display:block}.sidebar{width:min(310px,88vw);box-shadow:var(--shadow);transition:transform .18s;position:fixed;left:0;transform:translate(-102%)}.sidebar--open{transform:translate(0)}.sidebar-close,.mobile-menu{display:inline-grid}.sidebar-backdrop{z-index:25;background:#0f251d52;border:0;position:fixed;inset:0}.topbar{padding-inline:16px}.topbar__context{display:none}.content{padding:24px 18px 48px}.dashboard-grid{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:flex-start}.success-card{grid-template-columns:1fr}}@media (width<=560px){.metric-grid,.module-grid{grid-template-columns:1fr}.auth-hero__security{align-items:flex-start}.auth-card{padding:24px 20px}.topbar__user>div:first-child{display:none}.filter-bar{flex-direction:column;align-items:stretch}.security-steps{flex-direction:column;align-items:flex-start}.recovery-codes{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){body .app-shell,body .button,body .sidebar,body .skip-link,body .module-link .module-card{transition:none}body .button-spinner,body .centered-spinner{animation:none}}:root{--border:var(--line);--border-subtle:var(--line);--surface-raised:var(--surface-strong);--surface-subtle:var(--surface-soft);--muted-foreground:var(--muted);--ink-soft:#48635a;--control-height:46px;--page-gap:20px;--section-pad:clamp(18px, 2vw, 24px)}body{color:var(--ink);line-height:1.5}button,input,select,textarea{color:inherit}input::placeholder,textarea::placeholder{color:#82958d;opacity:1}.card{background:#fffffff0;border-color:#c7dbcfe6;box-shadow:0 10px 30px #294c3d0e}.button{border-radius:13px;min-height:44px;padding-inline:17px;line-height:1.2}.button--secondary:hover:not(:disabled){background:#f8fbf9;border-color:#a9c7b6}.button--ghost:hover:not(:disabled){background:var(--surface-soft)}.content{width:min(100%,1480px);padding:38px clamp(20px,3vw,42px) 68px}.page-header{align-items:flex-start;gap:20px;margin-bottom:24px}.page-header>div:first-child{min-width:0}.page-header h1{margin:0 0 8px;font-size:clamp(2.15rem,4vw,3rem);line-height:1.03}.page-header p{max-width:800px;font-size:.96rem;line-height:1.65}.page-header__actions{padding-top:2px}.eyebrow{margin-bottom:9px}.field{gap:7px}.field input,.field select,.search-field,.compact-field select,.organisation-switcher select{min-height:var(--control-height);border-color:var(--line-strong)}.field input,.field select{padding-inline:14px}.field input:hover:not(:disabled),.field select:hover:not(:disabled),.compact-field select:hover:not(:disabled),.organisation-switcher select:hover:not(:disabled){border-color:#aac8b8}.field input:disabled,.field select:disabled,textarea:disabled{color:#81928b;background:#f1f5f2}.filter-bar{background:#f8fbf9b8;align-items:center;gap:12px;padding:16px 18px}.search-field{background:var(--surface-strong);min-width:min(280px,100%);max-width:none;padding-inline:12px}.search-field input{background:0 0;min-height:44px;padding:0}.compact-field{flex:none}.compact-field select{background:var(--surface-strong);min-width:154px;padding-inline:12px}.table-wrap{scrollbar-gutter:stable;min-width:0}table{font-variant-numeric:tabular-nums}th,td{vertical-align:middle;padding:13px 18px}th{background:#f5f9f6b8;font-size:.7rem}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:#f0f7f373}.empty-table,.empty-inline{padding:28px 22px;line-height:1.55}.metric-grid{gap:14px;margin-bottom:18px}.metric-card{min-height:96px;padding:18px 20px}.metric-card strong{font-size:1.72rem;line-height:1.1}.dashboard-grid{gap:18px}.dashboard-grid>.card{padding:22px}.module-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.module-card{gap:15px;min-height:128px;padding:20px}.module-card h2{font-size:1.02rem;line-height:1.25}.module-card p{font-size:.8rem;line-height:1.55}.spinner-wrap,.centered-state{min-height:180px;padding:26px}.auth-card{border-radius:24px;gap:18px;padding:32px}.auth-card__heading h2{line-height:1.15}.auth-card__heading p{line-height:1.55}.auth-simple{padding:36px 20px}.standalone-page{padding-block:48px}.security-card,.success-card{gap:18px;padding:24px}@media (width<=1120px){.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=840px){.content{padding:28px 20px 52px}.page-header{gap:14px;margin-bottom:20px}.page-header__actions,.page-header__actions .button{width:100%}.filter-bar{flex-wrap:wrap}.search-field{flex-basis:100%}}@media (width<=560px){.content{padding:24px 16px 44px}.page-header h1{font-size:clamp(2rem,10vw,2.55rem)}.page-header p{font-size:.92rem}.module-grid{grid-template-columns:1fr}.filter-bar{padding:14px}.compact-field,.compact-field select{width:100%}th,td{padding:12px 14px}.auth-card{padding:24px 20px}}
