@font-face{font-display:swap;font-family:Outfit;font-style:normal;font-weight:100 900;src:url(/fonts/outfit.woff2) format("woff2")}@font-face{font-display:swap;font-family:DM Sans;font-style:normal;font-weight:100 1000;src:url(/fonts/dm-sans.woff2) format("woff2")}@font-face{font-display:swap;font-family:DM Mono;font-style:normal;font-weight:400;src:url(/fonts/dm-mono-400.woff2) format("woff2")}@font-face{font-display:swap;font-family:DM Mono;font-style:normal;font-weight:500;src:url(/fonts/dm-mono-500.woff2) format("woff2")}:root,[data-theme=light]{--r-xs:6px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-card:20px;--r-xl:24px;--r-2xl:32px;--r-full:999px;--font-display:"Outfit",system-ui,sans-serif;--font-body:"DM Sans",system-ui,sans-serif;--font-mono:"DM Mono",ui-monospace,monospace;--sidebar-w:264px;--topbar-h:64px;--btn-h:32px;--cell-y:9px;--backdrop:radial-gradient(110% 85% at 50% 110%,oklch(0.58 0.153 260/0.5) 0%,transparent 65%),radial-gradient(70% 55% at 50% 45%,oklch(0.72 0.085 260/0.28) 0%,transparent 70%),linear-gradient(180deg,oklch(0.97 0.012 260),oklch(0.9 0.0425 260));--bg:oklch(0.975 0.008 260);--surface:hsla(0,0%,100%,.62);--surface-2:oklch(0.93 0.034 260/0.7);--surface-raised:hsla(0,0%,100%,.84);--border:oklch(0.80 0.0425 260/0.55);--border-strong:oklch(0.70 0.051 260/0.7);--glass:hsla(0,0%,100%,.55);--glass-edge:hsla(0,0%,100%,.65);--text:oklch(0.25 0.025 260);--text-2:oklch(0.42 0.03 260);--text-muted:oklch(0.5 0.03 260);--text-inverse:#fff;--primary:oklch(0.52 0.17 260);--primary-hover:oklch(0.45 0.17 260);--primary-fg:#fff;--primary-subtle:oklch(0.94 0.03 260);--primary-subtle-fg:oklch(0.38 0.1 260);--accent:#f2784b;--accent-subtle:#fdebe2;--accent-subtle-fg:#a23c1b;--leaf:#2f8d5f;--leaf-subtle:#e6f3ea;--leaf-subtle-fg:#1c5c3d;--berry:#c0508a;--berry-subtle:#f9e7f0;--berry-subtle-fg:#8a2c5e;--success:#2f8d5f;--success-subtle:#eff7f1;--success-fg:#1c5c3d;--warning:#d98b0e;--warning-subtle:#fbf0d6;--warning-fg:#8a5e08;--danger:#d9534f;--danger-subtle:#fcedec;--danger-fg:#9c2e2b;--info:#3b9bd1;--info-subtle:#eaf5fb;--info-fg:#1f6a96;--ring:oklch(0.52 0.17 260/0.32);--shadow-xs:0 1px 2px rgba(30,40,80,.07);--shadow-sm:0 1px 3px rgba(30,40,80,.1),0 1px 2px rgba(30,40,80,.06);--shadow-md:0 4px 14px rgba(30,40,80,.11),0 2px 5px rgba(30,40,80,.06);--shadow-lg:0 14px 32px rgba(30,40,80,.14),0 4px 10px rgba(30,40,80,.06);--shadow-xl:0 28px 56px rgba(30,40,80,.17);--shadow-pop:0 18px 40px rgba(20,30,70,.19),0 2px 6px rgba(20,30,70,.08);--shadow-card:0 8px 24px rgba(20,30,70,.08)}[data-theme=dark]{color-scheme:dark;--backdrop:radial-gradient(110% 85% at 50% 110%,oklch(0.52 0.085 260/0.55) 0%,transparent 65%),radial-gradient(70% 55% at 50% 45%,oklch(0.46 0.051 260/0.35) 0%,transparent 70%),linear-gradient(180deg,oklch(0.21 0.0425 260),oklch(0.16 0.051 260));--bg:oklch(0.19 0.03 260);--surface:hsla(0,0%,100%,.06);--surface-2:oklch(0.34 0.034 260/0.55);--surface-raised:rgba(28,31,44,.8);--border:oklch(0.45 0.03 260/0.45);--border-strong:oklch(0.55 0.0425 260/0.6);--glass:rgba(16,18,26,.52);--glass-edge:hsla(0,0%,100%,.08);--text:oklch(0.95 0.01 260);--text-2:oklch(0.82 0.02 260);--text-muted:oklch(0.7 0.025 260);--text-inverse:oklch(0.2 0.03 260);--primary:oklch(0.78 0.119 260);--primary-hover:oklch(0.84 0.119 260);--primary-fg:oklch(0.22 0.05 260);--primary-subtle:oklch(0.3 0.05 260);--primary-subtle-fg:oklch(0.86 0.07 260);--accent:#f4936a;--accent-subtle:#3a2419;--accent-subtle-fg:#f8c4ac;--leaf:#5cb487;--leaf-subtle:#1f3328;--leaf-subtle-fg:#a6dcbc;--berry:#d77aab;--berry-subtle:#3a2231;--berry-subtle-fg:#f2b9d6;--success:#5cb487;--success-subtle:#17241d;--success-fg:#9bd6b5;--warning:#e8b23e;--warning-subtle:#332a14;--warning-fg:#f0ce84;--danger:#e47470;--danger-subtle:#2a1715;--danger-fg:#f2aba8;--info:#5bb3e0;--info-subtle:#15242d;--info-fg:#a7d8f0;--ring:oklch(0.78 0.119 260/0.4);--shadow-xs:0 1px 2px rgba(0,0,0,.4);--shadow-sm:0 1px 3px rgba(0,0,0,.5),0 1px 2px rgba(0,0,0,.4);--shadow-md:0 4px 14px rgba(0,0,0,.5),0 2px 5px rgba(0,0,0,.4);--shadow-lg:0 14px 32px rgba(0,0,0,.55),0 4px 10px rgba(0,0,0,.4);--shadow-xl:0 28px 56px rgba(0,0,0,.6);--shadow-pop:0 18px 40px rgba(0,0,0,.5),0 2px 6px rgba(0,0,0,.3)}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }

/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--font-mono);font-feature-settings:normal;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-feature-settings:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}body{background:var(--backdrop);background-attachment:fixed;background-color:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{color:var(--text);font-family:var(--font-display);font-weight:700;letter-spacing:-.01em;line-height:1.15}h1{font-size:2rem}h2{font-size:1.625rem}h3{font-size:1.375rem;font-weight:800}h4{font-size:1.2rem}a{color:var(--primary-hover)}:focus-visible{box-shadow:0 0 0 3px var(--ring);outline:none}.text-muted{color:var(--text-muted)}.sr-only{clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.btn{align-items:center;border:1px solid transparent;border-radius:var(--r-full);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:14px;font-weight:600;gap:8px;justify-content:center;line-height:1.2;min-height:44px;padding:0 20px;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s}.btn:disabled{opacity:.6;pointer-events:none}.btn-primary{background:var(--primary);border-color:var(--primary);box-shadow:var(--shadow-sm);color:var(--primary-fg)}.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover);color:var(--primary-fg)}.btn-white{background:transparent;border-color:var(--border-strong);color:var(--text-2)}.btn-white:hover{background:var(--surface-2);color:var(--text)}.btn-ghost{background:transparent;color:var(--text-2);padding:0 12px}.btn-ghost:hover{background:var(--surface-2);color:var(--text)}.btn-block{width:100%}.form-group{display:flex;flex-direction:column;gap:5px}.form-label{color:var(--text-2);font-size:14px;font-weight:600}.form-control{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-md);color:var(--text);display:block;font-family:inherit;font-size:15px;min-height:44px;padding:0 13px;transition:border-color .12s,box-shadow .12s;width:100%}.form-control::-moz-placeholder{color:var(--text-muted)}.form-control::placeholder{color:var(--text-muted)}.form-control:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--ring);outline:none}.field-error{color:var(--danger-fg);font-size:13px}.alert{border-radius:var(--r-lg);font-size:14px;padding:12px 16px}.alert-danger{background:var(--danger-subtle);color:var(--danger-fg)}.alert-info{background:var(--info-subtle);color:var(--info-fg)}.badge{align-items:center;background:var(--surface-2);border-radius:var(--r-full);color:var(--text-2);display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:3px 10px}.badge-primary{background:var(--primary-subtle);color:var(--primary-subtle-fg)}.badge-warn{background:var(--warning-subtle);color:var(--warning-fg)}.card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:var(--glass);border:1px solid var(--glass-edge);border-radius:var(--r-card);box-shadow:var(--shadow-card)}.auth-wrap{align-items:center;gap:24px;justify-content:center;min-height:100vh;padding:24px 16px}.auth-card,.auth-wrap{display:flex;flex-direction:column}.auth-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:var(--surface-raised);border:1px solid var(--glass-edge);border-radius:var(--r-2xl);box-shadow:var(--shadow-xl);gap:20px;max-width:420px;padding:32px;width:100%}.brand{align-items:center;color:var(--text);display:inline-flex;gap:9px;text-decoration:none}.brand-name{font-family:var(--font-display);font-size:24px;font-weight:800;letter-spacing:-.02em}.brand-mark-dark,[data-theme=dark] .brand-mark-light{display:none}[data-theme=dark] .brand-mark-dark{display:block}.app{display:flex;min-height:100vh}.sidebar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:var(--glass);border-right:1px solid var(--border);flex:0 0 var(--sidebar-w);gap:24px;height:100vh;padding:20px 16px;position:sticky;top:0;width:var(--sidebar-w);z-index:30}.sidebar,.sidebar-brand{display:flex;flex-direction:column}.sidebar-brand{gap:2px;padding:0 8px}.sidebar-version{color:var(--text-2);font-family:var(--font-mono);font-size:12px;text-decoration:none}.sidebar-nav{display:flex;flex-direction:column;flex-grow:1;gap:4px;overflow-y:auto}.nav-link{align-items:center;border-radius:var(--r-md);color:var(--text);display:flex;font-size:15px;font-weight:500;gap:12px;min-height:44px;padding:0 10px;text-decoration:none}.nav-link:hover{background:var(--surface-2)}.nav-link.active{background:var(--primary);color:var(--primary-fg);font-weight:600}.nav-link svg{flex-shrink:0;height:20px;width:20px}.main{display:flex;flex:1 1 0;flex-direction:column;min-width:0}.topbar{align-items:center;color:var(--text-2);display:flex;font-size:13px;gap:12px;min-height:var(--topbar-h);padding:0 32px}.content{display:flex;flex-direction:column;flex-grow:1;gap:20px;padding:0 32px 32px}.page-head{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.page-head p{color:var(--text-2);font-size:15px;margin-top:4px}.nav-toggle{align-items:center;background:transparent;border:0;border-radius:var(--r-md);color:var(--text);cursor:pointer;height:44px;justify-content:center;width:44px}.nav-backdrop,.nav-toggle{display:none}.empty-state{align-items:center;color:var(--text-2);display:flex;flex-direction:column;gap:8px;padding:48px 24px;text-align:center}.profile{position:relative}.profile-trigger{align-items:center;background:var(--surface-raised);border:1px solid var(--glass-edge);border-radius:var(--r-lg);box-shadow:var(--shadow-xs);color:var(--text);cursor:pointer;display:flex;font-family:inherit;gap:10px;min-height:52px;padding:6px 10px;text-align:left;width:100%}.profile-trigger[aria-expanded=true]{box-shadow:0 0 0 3px var(--ring)}.avatar{align-items:center;background:var(--berry-subtle);border-radius:var(--r-full);color:var(--berry-subtle-fg);display:flex;flex-shrink:0;font-size:13px;font-weight:600;height:36px;justify-content:center;width:36px}.profile-name{font-size:14px;font-weight:600}.profile-tenant{color:var(--text-2);font-size:13px}.profile-tenant.is-global{color:var(--danger-fg)}.profile-menu{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:var(--surface-raised);border:1px solid var(--glass-edge);border-radius:var(--r-card);bottom:calc(100% + 8px);box-shadow:var(--shadow-pop);display:flex;flex-direction:column;gap:14px;left:0;max-height:calc(100vh - 110px);max-width:calc(100vw - 32px);overflow-y:auto;padding:16px;position:absolute;width:320px}.profile-menu[hidden]{display:none}.pm-head{color:var(--text-2);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.pm-switcher{display:flex;flex-direction:column;gap:4px;max-height:240px;overflow-y:auto}.pm-form{margin:0}.pm-tenant{align-items:center;background:transparent;border:0;border-radius:var(--r-md);color:var(--text);cursor:pointer;display:flex;font-family:inherit;gap:12px;min-height:52px;padding:6px 10px;text-align:left;width:100%}.pm-tenant:hover{background:var(--surface-2)}.pm-tenant.active{background:var(--primary-subtle);box-shadow:inset 3px 0 0 var(--primary)}.pm-tenant-logo{align-items:center;background:var(--tint-subtle);border-radius:10px;color:var(--tint-subtle-fg);display:flex;flex-shrink:0;font-family:var(--font-display);font-size:16px;font-weight:700;height:36px;justify-content:center;width:36px}.pm-tenant-name{font-size:15px;font-weight:600}.pm-tenant-sub{color:var(--text-2);font-size:13px}.pm-rule{background:var(--border);height:1px}.pm-row{align-items:center;display:flex;font-size:14px;font-weight:600;gap:12px;justify-content:space-between}.pm-seg{background:var(--surface-2);border-radius:var(--r-full);display:flex;padding:3px}.pm-seg button{background:transparent;border:0;border-radius:var(--r-full);color:var(--text-2);cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;min-height:38px;padding:0 16px}.pm-seg button[aria-checked=true]{background:var(--surface-raised);box-shadow:var(--shadow-xs);color:var(--text)}.pm-link{align-items:center;background:transparent;border:0;border-radius:var(--r-md);color:var(--text);cursor:pointer;display:flex;font-family:inherit;font-size:15px;font-weight:500;justify-content:space-between;min-height:44px;padding:0 10px;text-align:left;text-decoration:none;width:100%}.pm-link:hover{background:var(--surface-2)}.pm-link.danger{color:var(--danger-fg);font-weight:600}.tint-primary{--tint-subtle:var(--primary-subtle);--tint-subtle-fg:var(--primary-subtle-fg)}.tint-leaf{--tint-subtle:var(--leaf-subtle);--tint-subtle-fg:var(--leaf-subtle-fg)}.tint-accent{--tint-subtle:var(--accent-subtle);--tint-subtle-fg:var(--accent-subtle-fg)}.tint-berry{--tint-subtle:var(--berry-subtle);--tint-subtle-fg:var(--berry-subtle-fg)}.tint-warning{--tint-subtle:var(--warning-subtle);--tint-subtle-fg:var(--warning-fg)}.btn-sm{border-radius:var(--r-md);font-size:13px;min-height:40px;padding:0 14px}.btn-warn{background:transparent;border-color:var(--border-strong);color:var(--warning-fg)}.btn-warn:hover{background:var(--warning-subtle)}.btn-danger{background:transparent;border-color:var(--border-strong);color:var(--danger-fg)}.btn-danger:hover{background:var(--danger-subtle);border-color:var(--danger)}.icon-btn{align-items:center;background:transparent;border:0;border-radius:var(--r-md);color:var(--text-2);cursor:pointer;display:inline-flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.icon-btn:hover{background:var(--surface-2);color:var(--text)}.icon-btn.danger{color:var(--danger-fg)}.icon-btn:disabled{cursor:not-allowed;opacity:.35}.icon-btn svg{height:18px;width:18px}.form-select{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-md);color:var(--text);font-family:inherit;font-size:15px;min-height:44px;padding:0 12px}textarea.form-control{line-height:1.5;min-height:120px;padding:10px 13px}.form-text{font-size:13px}.check,.form-text{color:var(--text-2)}.check{align-items:center;cursor:pointer;display:inline-flex;font-size:14px;gap:8px}.check input{accent-color:var(--primary);height:18px;width:18px}.tint-neutral{--tint:var(--border-strong);--tint-subtle:var(--surface-2);--tint-subtle-fg:var(--text-2)}.tint-primary{--tint:var(--primary)}.tint-leaf{--tint:var(--leaf)}.tint-accent{--tint:var(--accent)}.tint-berry{--tint:var(--berry)}.tint-warning{--tint:var(--warning)}.swatch{background:var(--tint);border-radius:var(--r-full);flex-shrink:0;height:14px;width:14px}.swatch.square{border-radius:4px}.chip{align-items:center;background:var(--tint-subtle);border-radius:var(--r-sm);color:var(--tint-subtle-fg);display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:3px 9px 3px 7px}.chip:before{background:var(--tint);border-radius:var(--r-full);content:"";height:6px;width:6px}dialog.dialog{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:var(--surface-raised);border:1px solid var(--glass-edge);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);color:var(--text);padding:24px;width:min(440px,calc(100vw - 32px))}dialog.dialog::backdrop{background:rgba(10,14,30,.4)}.dialog form{display:flex;flex-direction:column;gap:16px}.dialog-actions{display:flex;flex-wrap:wrap;gap:8px}.tiles{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.tile{display:flex;flex-direction:column;gap:12px;padding:20px}.tile-name{color:var(--text);font-family:var(--font-display);font-size:1.2rem;font-weight:700;letter-spacing:-.01em;text-decoration:none}.tile-meta{color:var(--text-2);font-size:13px;font-variant-numeric:tabular-nums}.tile-actions{gap:8px;margin-top:auto}.tabs,.tile-actions{display:flex;flex-wrap:wrap}.tabs{border-bottom:1px solid var(--border);gap:4px}.tab{align-items:center;color:var(--text-2);display:inline-flex;font-size:15px;font-weight:600;gap:6px;min-height:44px;padding:0 14px;text-decoration:none}.tab.active{box-shadow:inset 0 -3px 0 var(--primary);color:var(--text)}.blocks{align-items:start;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}.block{display:flex;flex-direction:column;overflow:hidden}.block-head{padding:16px 20px 12px}.block-head h2{font-size:1.2rem}.block-head p{color:var(--text-2);font-size:13px}.block-row{align-items:center;border-top:1px solid var(--border);display:flex;gap:8px;min-height:52px;padding:4px 12px 4px 14px}.block-row.tinted{background:linear-gradient(color-mix(in srgb,var(--tint) 10%,transparent),color-mix(in srgb,var(--tint) 10%,transparent))}.block-row.dragging{opacity:.5}.block-row.drop-before{box-shadow:inset 0 3px 0 var(--primary)}.block-row form{display:contents}.row-name{background:transparent;border:1px solid transparent;border-radius:var(--r-sm);color:var(--text);flex:1 1 0;font:inherit;font-size:15px;font-weight:600;min-height:40px;min-width:0;padding:0 8px}.row-name:focus,.row-name:hover{background:var(--surface);border-color:var(--border-strong);outline:none}.row-count{color:var(--text-2);flex-shrink:0;font-size:13px;font-variant-numeric:tabular-nums;min-width:64px;text-align:right}.drag-handle{align-items:center;color:var(--text-muted);cursor:grab;display:inline-flex;flex-shrink:0;height:40px;justify-content:center;width:20px}.block-add{align-items:center;background:var(--surface-2);border-top:1px solid var(--border);display:flex;flex-wrap:wrap;gap:8px;padding:12px 14px}.block-add .form-control{flex:1 1 140px;width:auto}.color-options{display:flex;flex-wrap:wrap;gap:8px}.color-option{align-items:center;border:1px solid var(--border-strong);border-radius:var(--r-full);cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;min-height:44px;padding:0 14px}.color-option:has(input:checked){background:var(--tint-subtle);border-color:var(--tint);box-shadow:0 0 0 2px var(--tint);color:var(--tint-subtle-fg)}.color-option input{opacity:0;position:absolute}.board{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:var(--glass);border-top:1px solid var(--border);margin:0 -32px -32px;overflow-x:auto}.board,.board-grid{display:flex;flex-direction:column;flex-grow:1}.board-grid{background-image:linear-gradient(to right,transparent calc(100% - 1px),var(--border) calc(100% - 1px));background-size:calc(100%/var(--columns)) 100%;min-width:calc(var(--columns)*220px)}.board-row{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr))}.board-heads{border-bottom:1px solid var(--border)}.board-head{align-items:center;display:flex;gap:8px;min-height:52px;padding:0 16px}.board-head h2{font-size:1.05rem}.done-dot{background:var(--success);border-radius:var(--r-full);height:8px;width:8px}.board-lane{align-items:center;background:var(--surface-2);border-bottom:1px solid var(--border);display:flex;font-family:var(--font-display);font-size:.95rem;font-weight:700;gap:10px;min-height:44px;padding:0 16px}.board-cell{min-height:96px;padding:12px}.board-lane-cells{border-bottom:1px solid var(--border);flex-grow:1}@media (max-width:719px){.board{margin:0 -16px -24px}}.badge-danger{background:var(--danger-subtle);color:var(--danger-fg)}.avatar-sm{font-size:11px;height:24px;width:24px}.filters{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.filters .form-control{width:240px}.pill{background:transparent;border:1px solid var(--border-strong);border-radius:var(--r-full);color:var(--text-2);cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;min-height:44px;padding:0 16px}.pill[aria-pressed=true]{background:var(--primary-subtle);border-color:var(--primary);color:var(--primary-subtle-fg)}.board-cell{display:flex;flex-direction:column;gap:8px}.board-cell.drop-target{background:var(--primary-subtle);box-shadow:inset 0 0 0 2px var(--primary)}button.board-lane{border:0;border-bottom:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;width:100%}button.board-lane svg{transform:rotate(90deg);transition:transform .15s}button.board-lane[aria-expanded=false] svg{transform:none}.card-tile{background:var(--surface-raised);border:1px solid var(--glass-edge);border-radius:var(--r-md);box-shadow:var(--shadow-xs);color:var(--text);display:flex;flex-direction:column;gap:7px;padding:12px;text-decoration:none}.card-tile:hover{box-shadow:var(--shadow-sm)}.card-tile.typed{background:linear-gradient(color-mix(in srgb,var(--tint) 10%,transparent),color-mix(in srgb,var(--tint) 10%,transparent)),var(--surface-raised);border-color:color-mix(in srgb,var(--tint) 50%,transparent)}.card-tile.dragging{box-shadow:var(--shadow-pop);opacity:.45}.card-tile.drop-before{box-shadow:0 -3px 0 var(--primary)}.card-tile[hidden]{display:none}.card-type{align-items:center;color:var(--tint-subtle-fg);display:inline-flex;font-size:12px;font-weight:700;gap:6px;letter-spacing:.02em}.card-type .swatch{border-radius:3px;height:8px;width:8px}.card-title{font-family:var(--font-display);font-size:.95rem;font-weight:600;letter-spacing:-.01em;line-height:1.25}.card-meta{align-items:center;color:var(--text-2);display:flex;flex-wrap:wrap;font-size:13px;font-variant-numeric:tabular-nums;gap:6px 10px}.card-meta:empty{display:none}.add-card{align-items:center;background:transparent;border:0;border-radius:var(--r-md);color:var(--primary-hover);cursor:pointer;display:flex;font-family:inherit;font-size:14px;font-weight:600;gap:8px;min-height:44px;padding:0 8px}.add-card:hover{background:var(--surface-2)}.card-panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:var(--surface-raised);border:1px solid var(--glass-edge);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:24px;margin:0 auto;max-width:1040px;padding:28px;width:100%}.card-columns{display:flex;flex-wrap:wrap;gap:28px}.card-main{flex:999 1 420px;flex-direction:column;gap:24px}.card-main,.card-side{display:flex;min-width:0}.card-side{flex:1 1 260px;flex-direction:column;gap:20px}.card-fields{background:var(--surface-2);border-radius:var(--r-lg);display:flex;flex-direction:column;gap:14px;padding:16px}.card-fields .form-control,.card-fields .form-select{background:var(--surface-raised)}.notes{font-size:1rem;line-height:1.5;overflow-wrap:anywhere}.notes ol,.notes p,.notes ul{margin:0 0 10px}.notes ul{list-style:disc;padding-left:22px}.notes ol{list-style:decimal;padding-left:22px}.notes strong{font-weight:700}.notes-edit summary{color:var(--primary-hover);cursor:pointer;font-size:14px;font-weight:600;min-height:32px}.notes-edit[open] summary{margin-bottom:8px}.notes-toolbar{background:var(--surface-2);border:1px solid var(--border-strong);border-bottom:0;border-radius:var(--r-md) var(--r-md) 0 0;display:flex;flex-wrap:wrap;gap:2px;padding:4px}.notes-toolbar+.sr-only+textarea.form-control{border-radius:0 0 var(--r-md) var(--r-md)}.progress{background:var(--surface-2);overflow:hidden}.progress,.progress div{border-radius:var(--r-full);height:6px}.progress div{background:var(--success)}.task-row{align-items:center;border-bottom:1px solid var(--border);display:flex;gap:8px;min-height:48px}.task-row form{display:contents}.task-row.dragging{opacity:.5}.task-row.drop-before{box-shadow:inset 0 3px 0 var(--primary)}.tick{align-items:center;background:var(--surface);border:2px solid var(--border-strong);border-radius:7px;color:transparent;cursor:pointer;display:inline-flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.tick svg{height:14px;width:14px}.tick.done{background:var(--success);border-color:var(--success);color:#fff}.row-name.is-done{color:var(--text-2);font-weight:500;text-decoration:line-through}.activity{display:flex;flex-direction:column;font-size:14px;gap:12px;line-height:1.4}.file-kind{background:var(--surface-2);border-radius:var(--r-sm);display:inline-flex;flex-shrink:0;font-family:var(--font-mono);font-size:11px;font-weight:500;height:36px;justify-content:center;width:36px}.dropzone,.file-kind{align-items:center;color:var(--text-2)}.dropzone{border:2px dashed var(--border-strong);border-radius:var(--r-md);display:flex;flex-direction:column;font-size:14px;gap:4px;padding:16px;text-align:center}.dropzone label{cursor:pointer}.dropzone.over{background:var(--primary-subtle);border-color:var(--primary)}.dropzone:focus-within{box-shadow:0 0 0 3px var(--ring)}.dropzone-pick{color:var(--primary-hover);font-weight:600;text-decoration:underline}.list-table{border-collapse:collapse;font-size:15px;width:100%}.list-table thead tr{background:var(--surface-2)}.list-table th{color:var(--text-2);font-size:12px;font-weight:700;letter-spacing:.06em;padding:10px 16px;text-align:left;text-transform:uppercase}.list-table td{border-top:1px solid var(--border);font-variant-numeric:tabular-nums;padding:var(--cell-y) 16px;vertical-align:middle}.list-table td:first-child,.list-table th:first-child{padding-left:20px}.list-table td:last-child,.list-table th:last-child{padding-right:20px;text-align:right}[data-density=compact]{--cell-y:5px;--btn-h:28px}[data-density=comfortable]{--cell-y:16px;--btn-h:40px}[data-density=compact] .block-row .btn-sm,[data-density=compact] .list-table .btn-sm{min-height:28px}[data-density=comfortable] .block-row .btn-sm,[data-density=comfortable] .list-table .btn-sm{min-height:40px;padding-left:16px;padding-right:16px}[data-density=compact] .block-row{padding-bottom:4px;padding-top:4px}[data-density=comfortable] .block-row{padding-bottom:14px;padding-top:14px}[data-density=compact] .card-tile{gap:4px;padding:8px 10px}[data-density=comfortable] .card-tile{gap:10px;padding:16px}.pm-row-stack{align-items:stretch;flex-direction:column;gap:6px}.pm-row-stack .pm-seg button{flex:1;padding:0 8px}.pm-swatch-atmosphere,[data-bg-hue=blue]{--bg-h:260;--bg-c:0.085}[data-bg-hue=indigo]{--bg-h:278;--bg-c:0.08}[data-bg-hue=sky]{--bg-h:235;--bg-c:0.08}[data-bg-hue=cyan]{--bg-h:210;--bg-c:0.08}[data-bg-hue=teal]{--bg-h:190;--bg-c:0.08}[data-bg-hue=forest]{--bg-h:160;--bg-c:0.09}[data-bg-hue=emerald]{--bg-h:145;--bg-c:0.085}[data-bg-hue=moss]{--bg-h:130;--bg-c:0.08}[data-bg-hue=lime]{--bg-h:110;--bg-c:0.08}[data-bg-hue=sand]{--bg-h:90;--bg-c:0.06}[data-bg-hue=amber]{--bg-h:65;--bg-c:0.08}[data-bg-hue=peach]{--bg-h:40;--bg-c:0.07}[data-bg-hue=rose]{--bg-h:15;--bg-c:0.07}[data-bg-hue=magenta]{--bg-h:350;--bg-c:0.075}[data-bg-hue=plum]{--bg-h:330;--bg-c:0.07}[data-bg-hue=mauve]{--bg-h:300;--bg-c:0.055}[data-bg-hue=slate]{--bg-h:250;--bg-c:0.025}[data-bg-hue=taupe]{--bg-h:70;--bg-c:0.035}[data-bg-hue=graphite]{--bg-h:250;--bg-c:0.008}html[data-theme=light] .pm-swatch-atmosphere,html[data-theme=light] .pm-swatch[data-bg-hue],html[data-theme=light][data-bg-hue]{--glow:radial-gradient(110% 85% at 50% 110%,oklch(0.58 max(calc(var(--bg-c)*1.8),0.12) var(--bg-h)/0.5) 0%,transparent 65%),radial-gradient(70% 55% at 50% 45%,oklch(0.72 var(--bg-c) var(--bg-h)/0.28) 0%,transparent 70%),linear-gradient(180deg,oklch(0.97 0.012 var(--bg-h)) 0%,oklch(0.9 calc(var(--bg-c)*0.5) var(--bg-h)) 100%)}html[data-theme=dark] .pm-swatch-atmosphere,html[data-theme=dark] .pm-swatch[data-bg-hue],html[data-theme=dark][data-bg-hue]{--glow:radial-gradient(110% 85% at 50% 110%,oklch(0.52 var(--bg-c) var(--bg-h)/0.55) 0%,transparent 65%),radial-gradient(70% 55% at 50% 45%,oklch(0.46 calc(var(--bg-c)*0.6) var(--bg-h)/0.35) 0%,transparent 70%),linear-gradient(180deg,oklch(0.21 calc(var(--bg-c)*0.5) var(--bg-h)) 0%,oklch(0.16 calc(var(--bg-c)*0.6) var(--bg-h)) 100%)}html[data-theme=light][data-bg-hue]{--backdrop:var(--glow);--surface-2:oklch(0.93 calc(var(--bg-c)*0.4) var(--bg-h)/0.7);--border:oklch(0.80 calc(var(--bg-c)*0.5) var(--bg-h)/0.55);--border-strong:oklch(0.70 calc(var(--bg-c)*0.6) var(--bg-h)/0.7)}html[data-theme=dark][data-bg-hue]{--backdrop:var(--glow);--surface-2:oklch(0.34 calc(var(--bg-c)*0.4) var(--bg-h)/0.55);--border:oklch(0.45 calc(var(--bg-c)*0.35) var(--bg-h)/0.45);--border-strong:oklch(0.55 calc(var(--bg-c)*0.5) var(--bg-h)/0.6)}html[data-theme=light][data-bg-hue]:not([data-bg-hue=slate],[data-bg-hue=taupe],[data-bg-hue=graphite]){--primary:oklch(0.52 max(calc(var(--bg-c)*2),0.14) var(--bg-h));--primary-hover:oklch(0.45 max(calc(var(--bg-c)*2),0.14) var(--bg-h));--primary-fg:#fff;--primary-subtle:oklch(0.94 0.03 var(--bg-h));--primary-subtle-fg:oklch(0.38 0.1 var(--bg-h));--ring:oklch(0.52 max(calc(var(--bg-c)*2),0.14) var(--bg-h)/0.32)}html[data-theme=dark][data-bg-hue]:not([data-bg-hue=slate],[data-bg-hue=taupe],[data-bg-hue=graphite]){--primary:oklch(0.78 max(calc(var(--bg-c)*1.4),0.1) var(--bg-h));--primary-hover:oklch(0.84 max(calc(var(--bg-c)*1.4),0.1) var(--bg-h));--primary-fg:oklch(0.22 0.05 var(--bg-h));--primary-subtle:oklch(0.3 0.05 var(--bg-h));--primary-subtle-fg:oklch(0.86 0.07 var(--bg-h));--ring:oklch(0.78 max(calc(var(--bg-c)*1.4),0.1) var(--bg-h)/0.4)}html[data-theme=light][data-bg=plain]{--backdrop:none;--glass:#fff;--glass-edge:rgba(30,40,80,.14);--surface-2:#eef1f6;--border:rgba(30,40,80,.14);--border-strong:rgba(30,40,80,.26)}html[data-theme=dark][data-bg=plain]{--backdrop:none;--glass:#23262f;--glass-edge:hsla(0,0%,100%,.12);--surface-2:#2d313c;--border:hsla(0,0%,100%,.12);--border-strong:hsla(0,0%,100%,.24)}html[data-theme=light][data-bg=image]{--bg-scrim:hsla(0,0%,100%,.7);--text-2:#2c3345;--text-muted:#2c3345;--surface-2:hsla(0,0%,100%,.55);--border:rgba(30,40,80,.2);--border-strong:rgba(30,40,80,.32)}html[data-theme=dark][data-bg=image]{--bg-scrim:rgba(18,20,26,.68);--text-2:#dde2ee;--text-muted:#dde2ee;--surface-2:hsla(0,0%,100%,.1);--border:hsla(0,0%,100%,.16);--border-strong:hsla(0,0%,100%,.28)}html[data-bg=image] body{background:none}html[data-bg=image] body:before{background:linear-gradient(var(--bg-scrim),var(--bg-scrim)),var(--bg-image) center /cover no-repeat,var(--bg);content:"";inset:0;position:fixed;z-index:-1}.pm-bg{color:var(--text-2);display:flex;flex-direction:column;font-weight:500;gap:8px}.pm-swatches{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,28px)}.pm-swatch{background:var(--glow);border:1px solid var(--border-strong);border-radius:var(--r-full);cursor:pointer;height:28px;padding:0;width:28px}.pm-swatch-plain{background:var(--bg)}.pm-swatch-image{background:var(--surface-2) center /cover no-repeat}.pm-swatch-add{background:var(--surface-2);position:relative}.pm-swatch-add:after{align-items:center;color:var(--text);content:"+";display:flex;font-size:15px;font-weight:700;inset:0;justify-content:center;position:absolute;text-shadow:0 0 3px var(--bg)}.pm-swatch[aria-checked=true]{outline:2px solid var(--primary);outline-offset:2px}.pm-swatch:focus-visible{outline:2px solid var(--text);outline-offset:2px}.pm-bg-head{align-items:baseline;display:flex;gap:12px;justify-content:space-between}.pm-bg-remove{background:none;border:0;color:var(--danger-fg);cursor:pointer;font:inherit;font-size:12.5px;font-weight:600;padding:0}.pm-bg-remove:hover{text-decoration:underline}.pm-bg-message{color:var(--danger-fg);font-size:12.5px;margin:0}@media print{html[data-bg=image] body:before{display:none}}.cl-month{color:var(--text-2);font-size:12px;font-weight:700;letter-spacing:.08em;margin:8px 0 0;text-transform:uppercase}.cl-day{border-left:2px solid var(--border-strong);display:flex;flex-direction:column;gap:12px;margin-left:7px;padding:0 0 20px 26px;position:relative}.cl-day:before{background:var(--primary);border-radius:var(--r-full);box-shadow:0 0 0 4px var(--primary-subtle);content:"";height:12px;left:-7px;position:absolute;top:4px;width:12px}.cl-date{align-items:center;display:flex;font-size:15px;font-weight:700;gap:8px}.cl-entry{max-width:760px;padding:20px 24px}.cl-entry h2{font-size:1.25rem;margin-bottom:4px}.cl-entry h3{color:var(--text-2);font-family:var(--font-body);font-size:12px;font-weight:700;letter-spacing:.08em;margin-top:12px;text-transform:uppercase}.cl-entry ul{display:flex;flex-direction:column;gap:4px;list-style:disc;margin:6px 0 0;padding-left:20px}.cl-entry code{font-family:var(--font-mono);font-size:.92em}a.pill{align-items:center;display:inline-flex;text-decoration:none}.mailbox{display:grid;grid-template-columns:minmax(280px,380px) minmax(0,1fr);min-height:520px;overflow:hidden}.mail-list{border-right:1px solid var(--border);max-height:75vh;overflow-y:auto}.mail-day{background:var(--surface-2);color:var(--text-2);font-size:12px;font-weight:700;letter-spacing:.06em;padding:8px 16px;text-transform:uppercase}.mail-row{border-top:1px solid var(--border);color:var(--text);display:flex;flex-direction:column;font-size:14px;gap:2px;padding:12px 16px;text-decoration:none}.mail-row.active{background:var(--primary-subtle)}.mail-view{display:flex;flex-direction:column;gap:12px;min-width:0;padding:20px}.mail-back{align-self:flex-start;display:none}.mail-facts{display:grid;font-size:14px;gap:4px 16px;grid-template-columns:max-content 1fr;margin:0}.mail-facts dt{color:var(--text-2)}.mail-facts dd{margin:0}.mail-frame{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);flex-grow:1;min-height:420px;width:100%}@media (max-width:899px){.mailbox{grid-template-columns:minmax(0,1fr)}.mail-list{border-right:0;max-height:none}.mailbox.has-selected .mail-list,.mailbox:not(.has-selected) .mail-view{display:none}.mail-back{display:inline-flex}}@media (max-width:719px){.sidebar{background:var(--surface-raised);left:0;position:fixed;top:0;transform:translateX(-100%);transition:transform .2s}.app.nav-open .sidebar{transform:none}.app.nav-open .nav-backdrop{background:rgba(10,14,30,.4);display:block;inset:0;position:fixed;z-index:20}.nav-toggle{display:inline-flex}.topbar{padding:0 16px}.content{padding:0 16px 24px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}.m-0{margin:0}.mb-2{margin-bottom:.5rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mt-1{margin-top:.25rem}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.hidden{display:none}.min-w-0{min-width:0}.max-w-3xl{max-width:48rem}.flex-1{flex:1 1 0%}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.overflow-x-auto{overflow-x:auto}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.border-0{border-width:0}.p-0{padding:0}.p-6{padding:1.5rem}.pb-1{padding-bottom:.25rem}.font-body{font-family:var(--font-body)}.font-mono{font-family:var(--font-mono)}.text-\[1\.125rem\]{font-size:1.125rem}.text-\[1\.25rem\]{font-size:1.25rem}.text-\[1\.2rem\]{font-size:1.2rem}.text-\[1\.375rem\]{font-size:1.375rem}.text-\[1\.625rem\]{font-size:1.625rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-normal{font-weight:400}.font-semibold{font-weight:600}.italic{font-style:italic}.text-fg{color:var(--text)}.text-fg-2{color:var(--text-2)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}