:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--palette-light:#3e5c76;--palette-dark:#8fb0cb;--palette-ink:#0e1822;--palette-side:#1e2731;--bg:color-mix(in srgb, var(--palette-light) 4%, #fafaf9);--surface:#fff;--surface-2:color-mix(in srgb, var(--palette-light) 7%, #f4f4f2);--text:#1c1f23;--text-2:#5f6670;--text-3:#858b93;--border:color-mix(in srgb, var(--palette-light) 9%, #e8e8e5);--disabled-bg:#efefee;--disabled-text:#8a8f96;--disabled-border:#dededc;--accent:var(--palette-light);--accent-ink:#fff;--accent-soft:color-mix(in srgb, var(--palette-light) 11%, #fff);--danger:#a64545;--danger-bg:#f5e8e7;--warn:#8a6116;--warn-bg:#f5eedf;--ok:#3f7a57;--ok-bg:#e8f1eb;--side-bg:var(--palette-side);--side-text:#e6e8ea;--side-muted:color-mix(in srgb, #fff 55%, var(--side-bg));--side-hover:#ffffff0f;--side-accent:var(--palette-dark);--side-active:color-mix(in srgb, var(--side-accent) 20%, transparent);--side-border:#ffffff14;--type-brique:#b5605a;--type-ocre:#b88a45;--type-indigo:#5f72a3;--type-prune:#7d689e;--type-sauge:#4f8a80;--type-gris:#8b9299;--type-olive:#6e8b4e;--type-rose:#a0657f;--type-petrole:#4d7a99;--swatch-argile:#8f5843;--swatch-ardoise:#3e5c76;--swatch-sauge:#4a7262;--swatch-petrole:#2e5f66;--swatch-prune:#664a5e;--swatch-encre:#25292e;--swatch-ink:#fff;--shadow:0 1px 2px #0000000d;--shadow-pop:0 8px 24px #0000001f, 0 2px 6px #0000000f;--overlay:#0f0f0f8c;--focus:color-mix(in srgb, var(--accent) 30%, transparent);--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--radius:8px;--radius-lg:12px;--sidebar-width:232px;--topbar-height:56px}:root[data-palette=argile]{--palette-light:#8f5843;--palette-dark:#d4a08b;--palette-ink:#1e120d;--palette-side:#2b211d}:root[data-palette=sauge]{--palette-light:#4a7262;--palette-dark:#8db8a5;--palette-ink:#0d1914;--palette-side:#1d2924}:root[data-palette=petrole]{--palette-light:#2e5f66;--palette-dark:#86b6bc;--palette-ink:#0b1a1c;--palette-side:#162729}:root[data-palette=prune]{--palette-light:#664a5e;--palette-dark:#c2a3b8;--palette-ink:#1a1118;--palette-side:#2a1f27}:root[data-palette=encre]{--palette-light:#25292e;--palette-dark:#e4e6e8;--palette-ink:#111315;--palette-side:#1c1f23}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#111315;--surface:#181b1e;--surface-2:#22262a;--text:#ecedee;--text-2:#a2a8af;--text-3:#7d838b;--border:#2a2e33;--disabled-bg:#25282c;--disabled-text:#6f757c;--disabled-border:#2e3237;--accent:var(--palette-dark);--accent-ink:var(--palette-ink);--accent-soft:color-mix(in srgb, var(--palette-dark) 18%, #181b1e);--danger:#e08a86;--danger-bg:#3a2322;--warn:#d9b36a;--warn-bg:#352b19;--ok:#86c29d;--ok-bg:#1d3226;--side-bg:#0c0d0f;--side-muted:#8c939b;--side-border:#ffffff12;--type-brique:#d98a84;--type-ocre:#d6ac6c;--type-indigo:#8d9dc8;--type-prune:#a693c4;--type-sauge:#7db3a9;--type-gris:#a9afb5;--type-olive:#98b37a;--type-rose:#c48ea6;--type-petrole:#7fa6c2;--shadow:none;--shadow-pop:0 8px 24px #00000080;--overlay:#000000b3}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#111315;--surface:#181b1e;--surface-2:#22262a;--text:#ecedee;--text-2:#a2a8af;--text-3:#7d838b;--border:#2a2e33;--disabled-bg:#25282c;--disabled-text:#6f757c;--disabled-border:#2e3237;--accent:var(--palette-dark);--accent-ink:var(--palette-ink);--accent-soft:color-mix(in srgb, var(--palette-dark) 18%, #181b1e);--danger:#e08a86;--danger-bg:#3a2322;--warn:#d9b36a;--warn-bg:#352b19;--ok:#86c29d;--ok-bg:#1d3226;--side-bg:#0c0d0f;--side-muted:#8c939b;--side-border:#ffffff12;--type-brique:#d98a84;--type-ocre:#d6ac6c;--type-indigo:#8d9dc8;--type-prune:#a693c4;--type-sauge:#7db3a9;--type-gris:#a9afb5;--type-olive:#98b37a;--type-rose:#c48ea6;--type-petrole:#7fa6c2;--shadow:none;--shadow-pop:0 8px 24px #00000080;--overlay:#000000b3}:root[data-hc="1"]{--bg:#fff;--surface:#fff;--surface-2:#e4e4e4;--text:#000;--text-2:#1f2328;--text-3:#3d434a;--border:#5c6168;--disabled-bg:#e4e4e4;--disabled-text:#3d434a;--disabled-border:#5c6168;--side-bg:#1c1f23;--side-text:#fff;--side-muted:#cfcfcf;--side-accent:#fff;--shadow:none}@media (prefers-color-scheme:dark){:root[data-hc="1"]:not([data-theme=light]){--bg:#000;--surface:#000;--surface-2:#2e2e2e;--text:#fff;--text-2:#ededed;--text-3:#cfcfcf;--border:#a0a4aa;--disabled-bg:#2e2e2e;--disabled-text:#cfcfcf;--disabled-border:#a0a4aa;--side-bg:#000}}:root[data-theme=dark][data-hc="1"]{--bg:#000;--surface:#000;--surface-2:#2e2e2e;--text:#fff;--text-2:#ededed;--text-3:#cfcfcf;--border:#a0a4aa;--disabled-bg:#2e2e2e;--disabled-text:#cfcfcf;--disabled-border:#a0a4aa;--side-bg:#000}:root[data-cvd="1"]{--ok:#0063a0;--ok-bg:#e3eff8;--danger:#b84a00;--danger-bg:#fbebe0;--warn:#7a5a00;--warn-bg:#fbf3d9;--type-brique:#d55e00;--type-ocre:#e69f00;--type-indigo:#0072b2;--type-prune:#cc79a7;--type-sauge:#009e73;--type-gris:#8c8c8c;--type-olive:#a89a00;--type-rose:#1a1a1a;--type-petrole:#56b4e9}@media (prefers-color-scheme:dark){:root[data-cvd="1"]:not([data-theme=light]){--ok:#56b4e9;--ok-bg:#10283a;--danger:#f08a4b;--danger-bg:#3a2213;--warn:#e6c14d;--warn-bg:#352b10;--type-brique:#f08a4b;--type-ocre:#e69f00;--type-indigo:#3e8fd0;--type-prune:#e09bc4;--type-sauge:#2dc79a;--type-gris:#a9afb5;--type-olive:#f0e442;--type-rose:#ededed;--type-petrole:#9ad6f5}}:root[data-theme=dark][data-cvd="1"]{--ok:#56b4e9;--ok-bg:#10283a;--danger:#f08a4b;--danger-bg:#3a2213;--warn:#e6c14d;--warn-bg:#352b10;--type-brique:#f08a4b;--type-ocre:#e69f00;--type-indigo:#3e8fd0;--type-prune:#e09bc4;--type-sauge:#2dc79a;--type-gris:#a9afb5;--type-olive:#f0e442;--type-rose:#ededed;--type-petrole:#9ad6f5}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;font-size:14px}h1,h2,h3,p{margin:0}button,input{font:inherit;color:inherit}a{color:var(--accent);font-weight:600}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.muted{color:var(--text-3)}.btn{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:7px;height:38px;padding:0 14px;font-size:13.5px;font-weight:600;display:inline-flex}.btn:hover{background:var(--surface-2)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:hover{filter:brightness(.95)}.btn.ghost{background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--surface-2)}.btn.danger{color:var(--danger)}.btn.danger:hover{background:var(--danger-bg)}.btn.danger.bordered{border-color:var(--danger)}a.btn{text-decoration:none}.btn.icon{width:38px;padding:0}.btn:disabled{opacity:.55;cursor:progress}.btn svg{flex:none;width:18px;height:18px}.field{flex-direction:column;gap:5px;display:flex}.field label{color:var(--text-2);font-size:12.5px;font-weight:600}.field-optional{color:var(--text-3);font-size:12px;font-weight:400}.field input{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);outline:none;width:100%;height:40px;padding:0 12px}.field input:focus{border-color:var(--text-3);box-shadow:0 0 0 3px var(--focus)}.field input[readonly]{background:var(--disabled-bg);border-color:var(--disabled-border);color:var(--disabled-text);cursor:default}.field input[readonly]:focus{border-color:var(--disabled-border)}.field input[aria-invalid=true]{border-color:var(--danger)}.field small{color:var(--text-3);font-size:12px}.password-field{display:flex;position:relative}.password-field input{padding-right:46px}.password-field .toggle{width:44px;color:var(--text-2);cursor:pointer;border-radius:0 var(--radius) var(--radius) 0;background:0 0;border:0;place-items:center;display:grid;position:absolute;inset:0 0 0 auto}.password-field .toggle svg{width:19px;height:19px}.error{color:var(--danger);font-weight:500}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.banner{border-radius:var(--radius);align-items:flex-start;gap:10px;padding:12px 14px;line-height:1.45;display:flex}.banner.warn{background:var(--warn-bg);color:var(--warn)}.banner svg{flex:none;width:18px;height:18px;margin-top:1px}.empty{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:48px 24px;display:flex}.empty .empty-icon{border-radius:var(--radius-lg);background:var(--accent-soft);width:48px;height:48px;color:var(--accent);place-items:center;margin-bottom:6px;display:grid}.empty h2{font-size:17px}.empty p{color:var(--text-2);max-width:46ch;line-height:1.5}.card-header{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:14px 16px;display:flex}.card-header h2{align-items:center;gap:8px;font-size:14.5px;font-weight:700;display:flex}.card-header h2:before{content:"";background:var(--accent);border-radius:2px;flex:none;width:3px;height:15px}.card-body{flex-direction:column;gap:16px;padding:16px;display:flex}.card-footer{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:12px 16px;display:flex}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-grid .full{grid-column:1/-1}.form-grid .row-start{grid-column-start:1}.hint{color:var(--text-3);margin-top:6px;font-size:12px}.notice.info{background:var(--accent-soft);color:var(--text);border-radius:var(--radius);padding:10px 12px;line-height:1.45}.badge{white-space:nowrap;background:var(--surface-2);height:22px;color:var(--text-2);border-radius:999px;align-items:center;padding:0 8px;font-size:11.5px;font-weight:600;display:inline-flex}.badge.ok{background:var(--ok-bg);color:var(--ok)}.badge.warn{background:var(--warn-bg);color:var(--warn)}.card-header .badge{margin-left:auto}.modal{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:min(440px,100% - 32px);color:var(--text);box-shadow:var(--shadow);margin:auto;padding:20px}.modal::backdrop{background:var(--overlay)}.modal h2{align-items:center;gap:8px;font-size:16px;font-weight:700;display:flex}.modal h2:before{content:"";background:var(--accent);border-radius:2px;flex:none;width:3px;height:16px}.modal h2{border-bottom:1px solid var(--border);margin-inline:-20px;margin-bottom:16px;padding:0 20px 14px}.modal>p{color:var(--text-2);line-height:1.5}.modal>p.error{color:var(--danger)}.modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:start;gap:16px;display:grid}.card-body>.hint:first-child{margin-top:0}.setting-rows{flex-direction:column;display:flex}.setting-row{border-bottom:1px solid var(--border);padding:10px 0}.setting-line{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.field-error{color:var(--danger);margin-top:2px;font-size:12.5px;font-weight:500}.setting-row:first-child{padding-top:0}.setting-row:last-child{border-bottom:0;padding-bottom:0}.setting-text{flex-direction:column;flex:1;gap:2px;min-width:160px;display:flex}.setting-text>label{font-weight:600}.setting-text small{color:var(--text-3);font-size:12px}.setting-text .check{color:var(--text-2);cursor:pointer;align-items:center;gap:6px;margin-top:4px;font-size:12.5px;display:inline-flex}.setting-input{flex:none;align-items:center;gap:8px;display:flex}.setting-input input{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);outline:none;width:84px;height:36px;padding:0 10px}.setting-input input:focus{border-color:var(--text-3);box-shadow:0 0 0 3px var(--focus)}.setting-input input[aria-invalid=true]{border-color:var(--danger)}.setting-input span{width:76px;color:var(--text-2);font-size:12.5px}.setting-help{color:var(--text-3);margin-bottom:4px;font-size:12px}.setting-text.rule-from{flex-direction:row;align-items:center;gap:8px}.setting-input label{color:var(--text-2);font-size:12.5px}.rule-remove-space{width:38px}.logo-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.logo-large{border-radius:var(--radius-lg);width:72px;height:72px;font-size:22px}.logo-actions{flex-wrap:wrap;gap:8px;display:flex}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.btn:has(.visually-hidden:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.logo{background:var(--accent);width:32px;height:32px;color:var(--accent-ink);border-radius:9px;flex:none;place-items:center;font-size:13px;font-weight:800;display:grid}.logo svg{width:55%;height:55%}.logo img{object-fit:cover;border-radius:inherit;width:100%;height:100%}.auth{place-items:center;min-height:100%;padding:24px 16px;display:grid}.auth-box{flex-direction:column;gap:14px;width:min(380px,100%);display:flex}.auth-box .logo{border-radius:var(--radius-lg);width:44px;height:44px;font-size:16px}.auth-box .app-name{color:var(--text-2);margin-top:-4px;font-weight:600}.auth-box h1{letter-spacing:-.02em;font-size:24px;font-weight:800}.auth-box .lead{color:var(--text-2);margin-top:-6px;line-height:1.5}.auth-box .btn{width:100%;margin-top:4px}.auth-box .secondary-action{text-align:center}.auth-box .sign-in-wait{font-variant-numeric:tabular-nums;gap:6px;display:grid}.auth-box .sign-in-wait p{margin:0}.auth-box .sign-in-wait a{color:var(--text);justify-self:start;font-weight:600}.auth-box .status{color:var(--text-3);margin-top:12px;font-size:12px}.app{grid-template-columns:var(--sidebar-width) 1fr;height:100%;display:grid}.side{background:var(--side-bg);color:var(--side-text);border-right:1px solid var(--side-border);flex-direction:column;padding:14px 10px;display:flex;overflow-y:auto}.brand{align-items:center;gap:10px;padding:4px 8px 12px;display:flex}.side .logo{background:var(--side-accent);color:var(--side-bg)}.brand b{font-size:14px;display:block}.brand small,.me small{color:var(--side-muted);font-size:12px}.nav-group{letter-spacing:.07em;text-transform:uppercase;color:var(--side-muted);margin:0;padding:14px 10px 6px;font-size:11px;font-weight:700}.side ul{margin:0;padding:0;list-style:none}.nav-link{border-radius:var(--radius);color:var(--side-text);opacity:.86;align-items:center;gap:10px;padding:8px 10px;font-weight:500;text-decoration:none;display:flex}.nav-link svg{flex:none;width:18px;height:18px}.nav-link:hover{background:var(--side-hover);opacity:1}.nav-link.active{background:var(--side-active);opacity:1;font-weight:600}.nav-link.active svg{color:var(--side-accent)}.me{border-top:1px solid var(--side-border);align-items:center;gap:10px;margin-top:auto;padding:12px 8px 4px;display:flex}.me .who{flex:1;min-width:0}.me b{text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.avatar{background:color-mix(in srgb, var(--side-accent) 35%, var(--side-bg));color:#fff;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-size:12px;font-weight:600;display:grid}.side .btn.ghost{color:var(--side-muted);width:32px;height:32px}.side .btn.ghost:hover{background:var(--side-hover);color:#fff}.main{flex-direction:column;min-width:0;height:100%;display:flex;overflow:hidden}.topbar{height:var(--topbar-height);border-bottom:1px solid var(--border);background:var(--surface);flex:none;align-items:center;gap:12px;padding:0 24px;display:flex}.topbar h1{white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:17px;font-weight:700;overflow:hidden}.topbar .page-icon{border-radius:var(--radius);background:var(--accent-soft);width:30px;height:30px;color:var(--accent);flex:none;place-items:center;display:grid}.topbar .page-icon svg{width:16px;height:16px}.topbar .today{color:var(--text-3);font-size:13px}.menu-button{display:none}.content{flex:1;padding:24px;overflow:auto}.scrim{background:var(--overlay);z-index:34;border:0;position:fixed;inset:0}@media (width<=760px){.app{grid-template-columns:1fr}.side{z-index:35;width:264px;display:none;position:fixed;inset:0 auto 0 0;box-shadow:0 0 40px #00000040}.side.open{display:flex}.menu-button{display:inline-flex}.topbar{padding:0 12px}.topbar .today{display:none}.content{padding:16px}.form-grid{grid-template-columns:1fr}}.page-stack{flex-direction:column;gap:16px;display:flex}.toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.toolbar>p{flex:1;min-width:240px;line-height:1.45}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%}.table th{text-align:left;color:var(--text-3);border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 14px;font-size:12px;font-weight:600}.table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:12px 14px}.table tbody tr:last-child td{border-bottom:0}.table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.table tr.archived td{opacity:.6}.row-link{font:inherit;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:0;font-weight:600;display:inline-flex}.row-link:hover{text-decoration:underline}.row-sub{color:var(--text-3);margin-top:2px;font-size:12.5px}.row-link+.row-sub{margin-left:22px}.type-dot{border-radius:50%;flex:none;width:12px;height:12px;display:inline-block}@media (width<=760px){.hide-narrow{display:none}}.modal.modal-form{width:min(600px,100% - 32px)}.modal-form form{flex-direction:column;gap:16px;display:flex}.modal-header p,.info-note{border-radius:var(--radius);background:var(--accent-soft);color:var(--text);padding:10px 12px 10px 36px;font-size:13px;font-style:italic;line-height:1.45;position:relative}.modal-header p:before,.info-note:before{content:"";background:var(--accent);width:16px;height:16px;position:absolute;top:12px;left:12px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4M12 8h.01'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4M12 8h.01'/%3E%3C/svg%3E") 50%/contain no-repeat}.modal-header{position:relative}.modal-header p.hint,.info-note.hint{padding-right:42px}.hint-hide,.hint-show{border-radius:var(--radius);width:28px;height:28px;color:var(--text-3);cursor:pointer;background:0 0;border:none;place-items:center;padding:0;display:grid}.hint-hide{position:absolute;top:5px;right:6px}.hint-hide:hover,.hint-show:hover{background:var(--surface-2);color:var(--text)}.hint-hide svg,.hint-show svg{width:16px;height:16px}.modal-header>.hint-show{position:absolute;top:-4px;right:0}.form-grid>.hint-show{grid-column:1/-1;justify-self:end;margin-block:-8px}.form-section>.hint-show{align-self:flex-end;margin-block:-8px}.hints-row{justify-content:space-between;align-items:center;gap:12px;font-size:13px;display:flex}.form-section{flex-direction:column;gap:14px;display:flex}.form-section+.form-section{margin-top:8px}.form-section-title{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);align-items:center;gap:10px;font-size:11.5px;font-weight:700;display:flex}.form-section-title:after{content:"";background:color-mix(in srgb, var(--accent) 30%, var(--border));flex:1;height:1px}.modal-actions-start{flex-wrap:wrap;gap:8px;margin-right:auto;display:flex}.field textarea{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);width:100%;font:inherit;resize:vertical;outline:none;padding:8px 12px}.field textarea:focus{border-color:var(--text-3);box-shadow:0 0 0 3px var(--focus)}.field textarea[aria-invalid=true]{border-color:var(--danger)}.field .char-count{font-variant-numeric:tabular-nums;align-self:flex-end}.field .check,.commitment-confirm .check{color:var(--text);cursor:pointer;align-items:center;gap:8px;font-size:13.5px;font-weight:500;display:inline-flex}.field .check input,.commitment-confirm .check input{flex:none;width:16px;height:16px}.field .check-hint{margin-left:24px}.check-row{flex-wrap:wrap;gap:8px 24px;display:flex}.field.check-beside:before{content:" ";font-size:12.5px;font-weight:600}.field.check-beside .check{min-height:40px}.field-off label{color:var(--text-3)}.color-field,.role-field{border:0;min-width:0;margin:0;padding:0}.color-field legend,.role-field legend{color:var(--text-2);margin-bottom:6px;font-size:12.5px;font-weight:600}.role-choices{flex-wrap:wrap;align-items:center;gap:8px 20px;min-height:38px;display:flex}.color-choices{flex-wrap:wrap;gap:8px;margin-bottom:4px;display:flex}.color-choice{cursor:pointer;border-radius:50%;place-items:center;width:36px;height:36px;display:grid;position:relative}.color-choice input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.color-choice .type-dot{width:26px;height:26px}.color-choice:has(input:checked){box-shadow:0 0 0 2px var(--text)}.color-choice:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.btn.sm{gap:5px;height:30px;padding:0 10px;font-size:12.5px}.btn.sm svg{width:15px;height:15px}.grow{flex:1}.view-date{color:var(--text-2);align-items:center;gap:8px;font-size:13.5px;font-weight:600;display:flex}.view-date .picker{width:160px;font-weight:400}.chips{flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.chip{border:1px solid var(--border);background:var(--surface);height:28px;color:var(--text-2);font-variant-numeric:tabular-nums;cursor:pointer;border-radius:999px;padding:0 10px;font-size:12.5px;font-weight:600}.chip:hover{background:var(--surface-2)}.chip.active{background:var(--accent-soft);border-color:var(--accent);color:var(--text)}.modal-form .banner{margin-top:14px}.week-wrap{max-height:calc(100vh - 220px);overflow:auto}.week{grid-template-columns:52px repeat(7,minmax(118px,1fr));min-width:880px;display:grid}.week-head{z-index:3;background:var(--surface);border-bottom:1px solid var(--border);text-align:center;color:var(--text);text-transform:capitalize;flex-direction:column;align-items:stretch;gap:2px;padding:10px 8px;font-size:12.5px;font-weight:700;display:flex;position:sticky;top:0}.week-head.corner{border-right:1px solid var(--border)}.week-head-sub{color:var(--text-3);text-transform:none;font-size:11.5px;font-weight:500}.week-head .btn{margin-top:6px}.week-head .badge{text-transform:none;align-self:center;margin-top:4px}.week-day h3 .badge{text-transform:none;letter-spacing:normal}.badge-button{cursor:pointer;border:0;font-family:inherit}.badge-button:hover{text-decoration:underline}.badge-button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.week-hours{border-right:1px solid var(--border);position:relative}.week-hours span{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:11px;position:absolute;right:8px;transform:translateY(-50%)}.week-col{border-right:1px solid var(--border);position:relative}.week-line{border-top:1px solid var(--border);pointer-events:none;position:absolute;left:0;right:0}.week-col:last-child{border-right:0}.week-col.pickable{cursor:pointer}.week-pick{border:1px dashed var(--accent);background:var(--accent-soft);color:var(--accent);font-variant-numeric:tabular-nums;pointer-events:none;border-radius:7px;align-items:flex-start;gap:4px;padding:4px 7px;font-size:12px;font-weight:700;display:flex;position:absolute;left:4px;right:4px}.week-pick svg{width:14px;height:14px;margin-top:1px}.week-pick.band{justify-content:center;width:calc(12.5% - .75px);min-width:18px;padding:4px 0;left:auto;right:2px}.week-item{border:0;border-left:3px solid var(--c);background:color-mix(in srgb, var(--c) 14%, var(--surface));color:var(--text);text-align:left;font:inherit;cursor:pointer;border-radius:7px;flex-direction:column;padding:4px 7px;font-size:12px;line-height:1.3;display:flex;position:absolute;left:4px;right:4px;overflow:hidden}.week-item:hover{background:color-mix(in srgb, var(--c) 22%, var(--surface))}.week-item:focus-visible{outline:2px solid var(--accent);outline-offset:1px;z-index:2}.week-item b,.week-item span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.week-item b{font-weight:700}.week-item span{color:var(--text-2)}.week-item.lane{padding:3px 4px 3px 5px;font-size:11px}.week-nav{align-items:center;gap:4px;display:flex}.week-nav .btn:disabled{cursor:default}.btn.sm.icon{width:30px;padding:0}.week-title{flex:1;font-size:15px}.chip{align-items:center;gap:6px;display:inline-flex}.chip-dot{background:var(--c);border-radius:50%;width:8px;height:8px}.chip-count{color:var(--text-3);font-weight:500}.notice-icon{align-items:flex-start;gap:8px;display:flex}.notice-icon svg{flex:none;width:16px;height:16px;margin-top:2px}.week-head.today{color:var(--accent)}.week-col.today{background:color-mix(in srgb, var(--accent) 5%, transparent)}div.week-item,div.week-row{cursor:default}div.week-item:hover{background:color-mix(in srgb, var(--c) 14%, var(--surface))}.week-item.past,.week-item.cancelled,div.week-item.past:hover,div.week-item.cancelled:hover{background:var(--surface-2);border-left-color:color-mix(in srgb, var(--c) 45%, var(--surface-2))}.week-item.past b,.week-item.cancelled b,.week-row.past b,.week-row.cancelled b{color:var(--text-2)}.week-item.past span,.week-item.cancelled span,.week-row.past small,.week-row.cancelled small{color:var(--text-3)}.week-row.past .week-row-bar,.week-row.cancelled .week-row-bar{background:color-mix(in srgb, var(--c) 45%, var(--surface))}.week-item.cancelled b,.week-row.cancelled b{text-decoration:line-through}.week-list{display:none}.week-day+.week-day{margin-top:18px}.week-day h3{text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);align-items:center;gap:8px;margin-bottom:6px;font-size:12px;display:flex}.week-day h3 .btn{color:var(--text);text-transform:none;letter-spacing:normal}.week-row{border:0;border-bottom:1px solid var(--border);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;align-items:center;gap:12px;padding:11px 12px;display:flex}.week-row:last-child{border-bottom:0}p.week-row{cursor:default}.week-row-bar{background:var(--c);border-radius:2px;align-self:stretch;width:3px}.week-row-time{font-variant-numeric:tabular-nums;width:44px;font-weight:700}.week-row .grow{min-width:0}.week-row small{color:var(--text-3);font-size:12.5px;display:block}@media (width<=760px){.week-wrap{display:none}.week-list{display:block}}.drawer{border:none;border-left:1px solid var(--border);background:var(--bg);width:min(460px,100%);max-width:100%;height:100%;max-height:100dvh;color:var(--text);margin:0 0 0 auto;padding:0}.drawer[open]{flex-direction:column;display:flex}.drawer::backdrop{background:var(--overlay)}.drawer-header{border-bottom:1px solid var(--border);background:var(--surface);padding:16px 20px}.drawer-header h2{margin-top:6px;font-size:20px;font-weight:800}.drawer-tags{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.drawer-type{color:var(--text-2);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:7px;font-size:12.5px;font-weight:700;display:inline-flex}.drawer-close{margin-left:auto}.drawer-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.drawer-body{flex-direction:column;flex:1;gap:14px;padding:16px 20px 32px;display:flex;overflow-y:auto}.badge.danger{background:var(--danger-bg);color:var(--danger)}.notice.danger{background:var(--danger-bg);color:var(--danger);border-radius:var(--radius);padding:10px 12px;line-height:1.45}.kvs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.kvs>div{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:10px 12px}.kvs dt{color:var(--text-3);font-size:12px}.kvs dd{margin:2px 0 0;font-weight:700}.kvs dd.tbd{color:var(--warn)}.muted.small{font-size:13px}.badge.accent{background:var(--accent-soft);color:var(--accent)}[data-autofocus]:focus{outline:none}.plans-table{table-layout:fixed}.plans-table .col-name{width:22%}.plans-table .col-price{width:10%}.plans-table .col-period{width:11%}.plans-table .col-terms{width:15%}.plans-table .col-max{width:8%}.plans-table .col-grace{width:10%}.plans-table .col-status,.plans-table .col-members{width:12%}.count-link{color:var(--text);text-underline-offset:2px;flex-direction:column;align-items:flex-end;text-decoration:underline;display:inline-flex}.count-link small{color:var(--text-2);white-space:nowrap;font-size:12px}.plan-cell{flex-direction:column;gap:2px;display:flex}.plans-table .row-link+.row-sub{margin-left:0}.filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.searchbox{border:1px solid var(--border);background:var(--surface);min-width:200px;max-width:340px;height:36px;color:var(--text-3);border-radius:8px;flex:1;align-items:center;gap:8px;padding:0 10px;display:flex}.searchbox svg{flex:none;width:16px;height:16px}.searchbox input{min-width:0;color:var(--text);font:inherit;background:0 0;border:0;outline:0;flex:1}.searchbox:focus-within{border-color:var(--accent)}.filter-select{flex:none;min-width:160px}.planning-filters{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px 16px;display:flex}.planning-filters .chips{flex:auto;min-width:0}.planning-filters .coach-filter{min-width:200px;margin-left:auto}.member-cell{align-items:center;gap:10px;min-width:0;display:flex}.member-avatar{background:var(--accent-soft);width:32px;height:32px;color:var(--text-2);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:600;display:grid}.member-link{color:var(--text);text-decoration:none}.table tr.row-click{cursor:pointer}.table tr.row-click:hover td{background:var(--surface-2)}.cell-button{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.payment-dialog .form-grid>.banner,.payment-dialog .form-grid>.kvs{margin:0}.payment-dialog .modal-header h2,.modal-header h2.modal-title-name{margin-bottom:0}.modal-title-name>span{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.cell-button:focus-visible{box-shadow:0 0 0 3px var(--focus);border-radius:4px;outline:none}.back-link{color:var(--text-2);align-self:flex-start;align-items:center;gap:4px;font-weight:600;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--text)}.back-link svg{width:16px;height:16px}.member-head{flex-wrap:wrap;align-items:center;gap:16px;padding:18px;display:flex}.member-head .member-avatar{width:56px;height:56px;font-size:18px}.member-head-text{flex-direction:column;gap:6px;min-width:0;display:flex}.member-head h2{letter-spacing:-.01em;font-size:20px;font-weight:800}.member-meta{color:var(--text-2);flex-wrap:wrap;gap:4px 14px;font-size:13px;display:flex}.member-head-actions{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}@media (width<=760px){.member-head-actions{width:100%;margin-left:0}}.card-header>.btn{margin-left:auto}.subscription-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.subscription-item{flex-direction:column;gap:6px;display:flex}.subscription-item+.subscription-item{border-top:1px solid var(--border);padding-top:12px}.subscription-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.subscription-action{margin-left:auto}.overrun-confirm{flex-direction:column;gap:12px;display:flex}.overrun-confirm ul{margin:6px 0;padding-left:18px}.overrun-confirm p{margin:0}.commitment-confirm{flex-direction:column;gap:12px;display:flex}.refund-fields{border:0;flex-direction:column;gap:10px;min-width:0;margin:0;padding:0;display:flex}.refund-fields legend{color:var(--text-2);margin-bottom:6px;font-size:12.5px;font-weight:600}.refund-fields p{margin:0}.refund-row{flex-direction:column;gap:4px;display:flex}.refund-row input{max-width:160px}.refund-total{font-weight:600}.subscription-meta{color:var(--text-2);flex-direction:column;gap:2px;font-size:13px;display:flex}.subscription-history{color:var(--text-2);margin:0;font-size:13px;font-weight:700}.assign-preview{flex-direction:column;gap:4px;display:flex}.member-text{min-width:0}.member-text strong{font-weight:600}.member-text strong,.member-text small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.member-text small{color:var(--text-3);font-size:12px}.badges{flex-wrap:wrap;gap:4px;display:inline-flex}.table-empty{text-align:center;color:var(--text-3);padding:30px}.table-empty svg{margin:0 auto 8px;display:block}.pager{border-top:1px solid var(--border);color:var(--text-2);justify-content:flex-end;align-items:center;gap:8px;padding:10px 12px;font-size:13px;display:flex}.select{min-width:0;position:relative}.select-trigger{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;height:40px;color:var(--text);font:inherit;text-align:left;cursor:pointer;align-items:center;gap:8px;padding:0 10px 0 12px;display:flex}.select-trigger:focus-visible,.select-trigger[aria-expanded=true]{border-color:var(--text-3);box-shadow:0 0 0 3px var(--focus);outline:none}.select-trigger[aria-invalid=true]{border-color:var(--danger)}.setting-input .select-trigger,.rule-from .select-trigger,.filter-select .select-trigger{height:36px}.filter-select .select-trigger{border-radius:8px}.select-value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.select-value.placeholder{color:var(--text-3)}.select-chevron{width:16px;height:16px;color:var(--text-3);flex:none;transition:transform .15s}.select-trigger[aria-expanded=true] .select-chevron{transform:rotate(180deg)}.select-list{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);max-height:280px;color:var(--text);box-shadow:var(--shadow-pop);margin:0;padding:4px;position:fixed;inset:auto;overflow-y:auto}.select-option{border-radius:var(--radius);cursor:pointer;white-space:nowrap;align-items:center;gap:8px;min-height:34px;padding:6px 10px 6px 8px;display:flex}.select-option.active{background:var(--accent-soft)}.select-option[aria-selected=true]{font-weight:600}.select-option-check{width:16px;height:16px;color:var(--accent);visibility:hidden;flex:none}.select-option[aria-selected=true] .select-option-check{visibility:visible}.select-option[aria-disabled=true]{color:var(--text-3);cursor:default}.select-group-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);padding:8px 10px 4px 32px;font-size:11px;font-weight:700}.field .field-label{color:var(--text-2);font-size:12.5px;font-weight:600}.palette-chip{align-items:center;gap:6px;padding-left:5px;display:inline-flex}.palette-swatch{background:var(--swatch);width:18px;height:18px;color:var(--swatch-ink);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.palette-swatch svg{width:12px;height:12px}.me-button{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:var(--radius);background:0 0;border:0;flex:1;align-items:center;gap:10px;padding:0;display:flex}.me-button:hover b{text-decoration:underline}.picker{width:100%;position:relative}.picker-field{position:relative}.picker-field input{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;height:40px;color:var(--text);font:inherit;font-variant-numeric:tabular-nums;outline:none;padding:0 40px 0 12px}.picker-field input:focus{border-color:var(--text-3);box-shadow:0 0 0 3px var(--focus)}.picker-field input[aria-invalid=true]{border-color:var(--danger)}.picker-field input::placeholder{color:var(--text-3)}.picker-button{border-radius:var(--radius);width:32px;height:32px;color:var(--text-3);cursor:pointer;background:0 0;border:none;place-items:center;padding:0;display:grid;position:absolute;top:4px;right:4px}.picker-button:hover:not(:disabled),.picker-button[aria-expanded=true]{background:var(--surface-2);color:var(--text)}.picker-button:disabled{color:var(--disabled-text);cursor:not-allowed}.picker-button svg{width:17px;height:17px}.picker-popup{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);color:var(--text);box-shadow:var(--shadow-pop);-webkit-user-select:none;user-select:none;outline:none;margin:0;padding:8px;position:fixed;inset:auto}.date-popup{width:304px}.date-popup-head{align-items:center;gap:4px;margin-bottom:6px;display:flex}.date-popup-head .select{flex:1;min-width:0}.date-popup-head .select.date-popup-year{flex:none;width:84px}.date-popup-head .select-trigger .select-value{text-overflow:clip}.date-popup-head .select-trigger{border-color:#0000;height:32px;font-weight:600}.date-popup-head .select-trigger:hover{background:var(--surface-2)}.date-grid{border-collapse:collapse;table-layout:fixed;width:100%}.date-grid th{height:28px;color:var(--text-3);text-align:center;font-size:11.5px;font-weight:600}.date-grid td{text-align:center;padding:1px}.date-day{border-radius:var(--radius);width:36px;height:34px;color:var(--text);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:1px solid #0000;padding:0}.date-day:hover:not(:disabled){background:var(--accent-soft)}.date-day.outside{color:var(--text-3)}.date-day.today{border-color:var(--text-3);font-weight:600}.date-day.selected{border-color:var(--accent);background:var(--accent);color:var(--accent-ink);font-weight:600}.date-day:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.date-day:disabled{color:var(--disabled-text);opacity:.45;cursor:not-allowed;pointer-events:none}.picker-foot{border-top:1px solid var(--border);justify-content:space-between;gap:8px;margin-top:6px;padding-top:6px;display:flex}.time-popup{gap:4px;padding:4px;display:flex}.time-column{flex-direction:column;gap:2px;width:56px;max-height:240px;padding:2px;display:flex;overflow-y:auto}.time-column+.time-column{border-left:1px solid var(--border);padding-left:6px}.time-option{border-radius:var(--radius);height:32px;color:var(--text);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:none;flex:none}.time-option:hover{background:var(--accent-soft)}.time-option.selected{background:var(--accent);color:var(--accent-ink);font-weight:600}.time-option:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}input:not([type=checkbox],[type=radio]):disabled,textarea:disabled,.select-trigger:disabled{background:var(--disabled-bg);border-color:var(--disabled-border);color:var(--disabled-text);-webkit-text-fill-color:var(--disabled-text);cursor:not-allowed}input:disabled::placeholder,textarea:disabled::placeholder,.select-trigger:disabled .select-value,.select-trigger:disabled .select-chevron{color:var(--disabled-text)}[data-hc="1"] .card,[data-hc="1"] .btn,[data-hc="1"] .chip,[data-hc="1"] .searchbox,[data-hc="1"] .select-trigger,[data-hc="1"] .select-list,[data-hc="1"] .field input,[data-hc="1"] .picker-field input,[data-hc="1"] .field textarea,[data-hc="1"] .table-wrap{border-width:2px;border-color:var(--text-2)}[data-hc="1"] .btn.primary{border-color:var(--accent)}[data-hc="1"] .table th,[data-hc="1"] small,[data-hc="1"] .muted,[data-hc="1"] .hint,[data-hc="1"] .badge{font-weight:600}[data-hc="1"] :focus-visible{outline:3px solid var(--accent);outline-offset:2px}[data-cvd="1"] .badge.ok:before{content:"✓";margin-right:4px}[data-cvd="1"] .badge.danger:before{content:"✕";margin-right:4px}[data-cvd="1"] .badge.warn:before{content:"◔";margin-right:4px}[data-cvd="1"] .week-item{border-left-width:5px}.kvs dd.over{color:var(--danger)}.drawer-section{flex-direction:column;gap:8px;display:flex}.drawer-section h3{font-size:14px;font-weight:700}.drawer-section-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.program-text{white-space:pre-wrap;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:10px 12px;line-height:1.5}.member-picker{position:relative}.member-picker .searchbox{max-width:none;height:38px}.member-picker-popup{z-index:5;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);max-height:290px;box-shadow:var(--shadow-pop);position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.member-picker-popup ul{margin:0;padding:0;list-style:none}.person-pick.active{background:var(--surface-2)}.person-pick[aria-disabled=true]{cursor:default;opacity:.6}.person-list{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}.person-row{border:0;border-bottom:1px solid var(--border);width:100%;min-height:48px;color:var(--text);font:inherit;text-align:left;background:0 0;align-items:center;gap:10px;margin:0;padding:8px 12px;display:flex}.person-row:last-child{border-bottom:0}.person-row svg{flex:none;width:16px;height:16px}.person-text{flex-direction:column;flex:1;min-width:0;display:flex}.person-text small{color:var(--text-3);align-items:center;gap:6px;font-size:12.5px;display:flex}.person-text small .badge{height:18px}.person-row.no-show b{text-decoration:line-through;-webkit-text-decoration-color:var(--warn);text-decoration-color:var(--warn)}.person-pick{cursor:pointer}.person-pick:hover:not([aria-disabled=true]){background:var(--surface-2)}.notice.warn{background:var(--warn-bg);color:var(--warn);border-radius:var(--radius);padding:10px 12px;line-height:1.45}.warning-list{margin:0;padding-left:18px}.confirm-text{white-space:pre-line}.title-with-badge{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.program-targets{border:0;gap:8px;min-width:0;margin:0;padding:0}.program-targets legend{color:var(--text-2);margin-bottom:6px;font-size:12.5px;font-weight:600}.program-text.draft{background:var(--surface-2);border-style:dashed}.program-tabs{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px}.program-tabs [role=tablist]{gap:2px;min-width:0;display:flex}.program-tabs .tab.invalid:after{content:"•";color:var(--danger)}.program-version{flex-direction:column;gap:12px;display:flex}.program-version-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px 12px;display:flex}.program-version-head .field{flex:220px}.program-version-actions{align-items:center;gap:4px;display:flex}.news-list{margin:0;padding:0;list-style:none}.news-list li+li{border-top:1px solid var(--border)}.news-row{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:flex-start;gap:14px;padding:14px 16px;display:flex}.news-row:hover{background:var(--surface-2)}.news-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.news-thumb{border-radius:var(--radius);background:var(--surface-2);width:64px;height:64px;color:var(--text-3);flex:none;place-items:center;display:grid;overflow:hidden}.news-thumb img,.news-image-preview img{object-fit:cover;width:100%;height:100%}.news-text{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.news-text strong{font-size:15px}.news-body{color:var(--text-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.45;display:-webkit-box;overflow:hidden}.news-text small{color:var(--text-3);flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;font-size:12px;display:flex}.news-image-preview{aspect-ratio:16/9;border-radius:var(--radius);background:var(--surface-2);width:min(100%,320px);overflow:hidden}.push-preview{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.push-preview p{color:var(--text-2);margin:2px 0 0;font-size:13px}.kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.kpis.kpis-3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=1100px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.kpi{border-top:3px solid var(--accent);color:var(--text);font:inherit;text-align:left;padding:16px;text-decoration:none;display:block}.kpi-action{cursor:pointer}.kpi-action:hover{background:var(--surface-2)}.kpi-action:focus-visible{box-shadow:0 0 0 3px var(--focus);outline:none}.kpi-action[aria-pressed=true]{background:var(--accent-soft)}.kpi small{color:var(--text-2);align-items:center;gap:8px;font-size:13px;font-weight:500;display:flex}.kpi small svg{background:var(--accent-soft);width:28px;height:28px;color:var(--accent);box-sizing:border-box;border-radius:8px;flex-shrink:0;padding:6px}.kpi b{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:6px;font-size:28px;font-weight:800;display:block}.kpi>span{color:var(--text-3);font-size:12.5px}.kpi.warn{border-top-color:var(--warn)}.kpi.warn b{color:var(--warn)}.kpi.warn small svg{background:var(--warn-bg);color:var(--warn)}.kpi.danger{border-top-color:var(--danger)}.kpi.danger b{color:var(--danger)}.kpi.danger small svg{background:var(--danger-bg);color:var(--danger)}@media (width<=640px){.kpis{gap:10px}.kpis.kpis-3{grid-template-columns:minmax(0,1fr)}.kpi{padding:12px}.kpi b{font-size:22px}}.dashboard-greeting{margin:0;font-size:20px}.todo-list{margin:0;padding:0;list-style:none}.todo-list li+li{border-top:1px solid var(--border)}.todo{color:var(--text);align-items:center;gap:12px;padding:12px 16px;text-decoration:none;display:flex}.todo:hover{background:var(--surface-2)}.todo:focus-visible{box-shadow:inset 0 0 0 3px var(--focus);outline:none}.todo>svg{width:16px;height:16px;color:var(--text-3);flex-shrink:0}.todo-count{border-radius:8px;justify-content:center;min-width:28px;height:28px;font-size:13px;font-weight:700}.todo-text{flex:1;min-width:0}.todo-text b{font-weight:600;display:block}.todo-text small{color:var(--text-3);font-size:12.5px}.dashboard-grid{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;gap:16px;display:grid}@media (width<=1100px){.dashboard-grid{grid-template-columns:minmax(0,1fr)}}.today-time{color:var(--text);font-variant-numeric:tabular-nums;font-weight:700;text-decoration:none}.today-time:focus-visible{box-shadow:0 0 0 3px var(--focus);border-radius:4px;outline:none}.today-type{align-items:center;gap:8px;display:inline-flex}.fill-cell{font-variant-numeric:tabular-nums;align-items:center;gap:8px;display:inline-flex}.fill-bar{background:var(--surface-2);border-radius:999px;width:56px;height:6px;overflow:hidden}.fill-bar i{background:var(--c);height:100%;display:block}.fill-bar i.full{background:var(--danger)}.badge svg{width:12px;height:12px;margin-right:4px}.tabs{border-bottom:1px solid var(--border);scrollbar-width:none;gap:2px;display:flex;overflow:auto hidden}.tab{color:var(--text-2);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:5px;margin:0 0 -1px;padding:10px 12px;font-weight:600;display:inline-flex}.tab:hover{color:var(--text)}.tab.active{color:var(--text);border-bottom-color:var(--accent)}.tab-panel[hidden]{display:none}.tab-count{color:var(--text-3);font-size:11.5px;font-weight:600}.member-bookings{grid-template-columns:1fr 1fr;align-items:start;gap:16px;display:grid}@media (width<=760px){.member-bookings{grid-template-columns:1fr}}.section-label{color:var(--text-3);letter-spacing:.07em;text-transform:uppercase;padding:0 0 8px;font-size:11px;font-weight:700}.booking-row{border-bottom:1px solid var(--border);color:var(--text);align-items:center;gap:12px;padding:11px 12px;text-decoration:none;display:flex}.booking-row:last-child{border-bottom:0}.booking-row:hover{background:var(--surface-2)}.booking-bar{background:var(--c);border-radius:2px;align-self:stretch;width:3px}.booking-text{flex-direction:column;flex:1;min-width:0;display:flex}.booking-text small{color:var(--text-3);font-size:12.5px}.booking-empty{padding:11px 12px}.member-notes{max-width:640px}.toasts{pointer-events:none;background:0 0;border:none;flex-direction:column;gap:8px;width:min(380px,100vw - 32px);margin:0;padding:0;display:flex;position:fixed;inset:16px 16px auto auto;overflow:visible}.toasts:not(:popover-open){display:none}.toast{border-radius:var(--radius);box-shadow:var(--shadow-pop);pointer-events:auto;border:1px solid;border-left-width:4px;align-items:flex-start;gap:10px;padding:12px 8px 12px 14px;line-height:1.45;animation:.16s ease-out toast-in;display:flex}.toast.ok{background:var(--ok-bg);color:var(--ok)}.toast.danger{background:var(--danger-bg);color:var(--danger)}.toast>svg{flex:none;width:18px;height:18px;margin-top:1px}.toast p{color:var(--text);flex:1;margin:0;font-weight:600}.toast-close{border-radius:var(--radius);width:26px;height:26px;color:var(--text-2);cursor:pointer;background:0 0;border:none;flex:none;place-items:center;margin:-3px 0;padding:0;display:grid}.toast-close:hover{background:color-mix(in srgb, currentcolor 12%, transparent);color:var(--text)}.toast-close svg{width:16px;height:16px}@keyframes toast-in{0%{opacity:0;transform:translateY(-6px)}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}
