@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.12tyk43_3sh9u.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.0jzbimsg8vl84.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.0-wfv7uh4i7h9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0nx0ww8fni_q3.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.0zgw-jeven.3w.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0wkzw~je483f-.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.0rhz0arwfsn~5.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.0l76wvqk9d84w.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0k4k9394f2q-k.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.08e28id.o-okb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ccf27e5a7366fb23-s.0hck6o0i8wq3a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e41d5df559864f9e-s.p.0gq7fw9.sy_5..woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif Fallback;src:local(Times New Roman);ascent-override:117.94%;descent-override:36.93%;line-gap-override:0.0%;size-adjust:83.94%}.instrument_serif_aae0ad7d-module__6mRBtq__className{font-family:Instrument Serif,Instrument Serif Fallback;font-style:normal;font-weight:400}.instrument_serif_aae0ad7d-module__6mRBtq__variable{--font-instrument-serif:"Instrument Serif", "Instrument Serif Fallback"}
:root{--brand:#087878;--brand-fg:#fff;--brand-soft:color-mix(in oklch, var(--brand) 8%, var(--bg));--brand-soft-strong:color-mix(in oklch, var(--brand) 14%, var(--bg));--brand-ring:color-mix(in oklch, var(--brand) 24%, transparent);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fafaf9;--surface:#fff;--surface-2:#f5f5f4;--surface-3:#ebebe9;--border:#e7e5e4;--border-strong:#d6d3d1;--text:#1c1917;--text-2:#57534e;--text-3:#a8a29e;--text-inv:#fafaf9;--ok:#15803d;--ok-soft:#ecfdf5;--ok-border:#bbf7d0;--warn:#b45309;--warn-soft:#fffbeb;--warn-border:#fde68a;--danger:#b91c1c;--danger-soft:#fef2f2;--danger-border:#fecaca;--info:#0369a1;--info-soft:#f0f9ff;--info-border:#bae6fd;--sb-w:248px;--tb-h:56px;--radius:10px;--radius-sm:6px;--radius-lg:14px;--shadow-sm:0 1px 2px #0f0d080a;--shadow-md:0 4px 16px -4px #0f0d0814, 0 1px 2px #0f0d080a;--shadow-lg:0 24px 48px -12px #0f0d082e;--f-sans:var(--font-geist-sans), ui-sans-serif, system-ui, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif;--f-mono:var(--font-geist-mono), ui-monospace, "SF Mono", Menlo, monospace;--f-serif:var(--font-instrument-serif), "Times New Roman", serif}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0c0a09;--surface:#161412;--surface-2:#1c1a17;--surface-3:#28241f;--border:#2a2724;--border-strong:#3a3531;--text:#f5f5f4;--text-2:#a8a29e;--text-3:#57534e;--text-inv:#1c1917;--ok:#4ade80;--ok-soft:#4ade801a;--ok-border:#4ade8040;--warn:#fbbf24;--warn-soft:#fbbf241a;--warn-border:#fbbf2440;--danger:#f87171;--danger-soft:#f871711a;--danger-border:#f8717140;--info:#60a5fa;--info-soft:#60a5fa1a;--info-border:#60a5fa40;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 16px -4px #00000059, 0 1px 2px #00000040;--shadow-lg:0 24px 48px -12px #0009}*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--f-sans);-webkit-font-smoothing:antialiased;font-feature-settings:"cv11", "ss01", "ss03";font-size:13.5px;line-height:1.45}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}.mono,.num{font-family:var(--f-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.serif{font-family:var(--f-serif)}
.app{grid-template-columns:var(--sb-w) 1fr;height:100dvh;display:grid;overflow:hidden}.app.topbar{grid-template-rows:auto 1fr;grid-template-columns:1fr}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.sb-brand{align-items:center;gap:10px;padding:18px 18px 14px;display:flex}.sb-brand .logo{background:var(--brand);width:28px;height:28px;color:var(--brand-fg);letter-spacing:-.02em;border-radius:7px;place-items:center;font-size:14px;font-weight:700;display:grid;box-shadow:inset 0 -2px #0000002e,inset 0 1px #ffffff40}.sb-brand .wm{letter-spacing:-.02em;font-size:15px;font-weight:600}.sb-brand .wm em{color:var(--brand);font-style:normal}.brand-logo{align-items:center;line-height:0;display:inline-flex}.brand-logo img{height:var(--logo-h,28px);width:auto;display:block}.brand-logo .logo-dark,[data-theme=dark] .brand-logo .logo-light{display:none}[data-theme=dark] .brand-logo .logo-dark{display:block}.agenda-dot{color:#fff;letter-spacing:-.02em;border-radius:50%;place-items:center;width:24px;height:24px;font-size:9.5px;font-weight:700;text-decoration:none;transition:transform .1s;display:grid;position:relative;box-shadow:0 1px 2px #0000002e}.agenda-dot:hover{transform:scale(1.14)}.agenda-dot-done{color:#fff;border:1.5px solid var(--surface);background:#16a34a;border-radius:50%;place-items:center;width:13px;height:13px;display:grid;position:absolute;top:-3px;right:-3px;box-shadow:0 1px 2px #00000040}.agenda-pop{z-index:60;background:var(--surface);border:1px solid var(--border-strong);width:max-content;max-width:240px;box-shadow:var(--shadow-lg);pointer-events:none;border-radius:10px;padding:8px 11px;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}.agenda-pop.align-l{left:0;transform:none}.agenda-pop.align-r{left:auto;right:0;transform:none}.agenda-wd{text-align:center;padding:2px 0;font-size:11px;font-weight:600}.agenda-cell{border:1px solid var(--border);background:var(--surface);border-radius:9px;min-height:64px;padding:5px}.agenda-cell.today{border-color:var(--brand);background:var(--surface-2)}.agenda-cell.clickable{cursor:pointer}.agenda-cell.clickable:hover{border-color:var(--border-strong);background:var(--surface-2)}.agenda-cell-num{color:var(--text-2);font-size:11px;font-weight:500}.agenda-cell.today .agenda-cell-num{color:var(--brand);font-weight:700}.agenda-pills{flex-wrap:wrap;gap:3px;margin-top:4px;display:flex}.agenda-pill{font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;min-width:24px;height:17px;padding:0 6px;font-size:10px;font-weight:700;display:inline-grid}.agenda-mp{position:relative}.agenda-mp-btn{min-width:150px;color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:4px 8px;font-family:inherit;font-size:14px;font-weight:600;display:inline-flex}.agenda-mp-btn:hover{background:var(--surface-2);border-color:var(--border)}.agenda-mp-pop{z-index:70;background:var(--surface);border:1px solid var(--border-strong);width:264px;max-width:calc(100vw - 24px);box-shadow:var(--shadow-lg);border-radius:12px;padding:10px;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}.agenda-mp-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.agenda-mp-grid{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.agenda-mp-cell{height:40px;color:var(--text);border:1px solid #0000;border-radius:8px;place-items:center;font-size:13px;text-decoration:none;display:grid}.agenda-mp-cell:hover{background:var(--surface-2)}.agenda-mp-cell.now{border-color:var(--brand)}.agenda-mp-cell.sel{background:var(--brand);color:var(--brand-fg)}@media (max-width:640px){.agenda-mp-pop{left:0;transform:none}}.agenda-week{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.agenda-week-cell{border:1px solid var(--border);background:var(--surface);border-radius:9px;flex-direction:column;gap:6px;min-width:0;min-height:200px;padding:6px;display:flex}.agenda-week-cell.today{border-color:var(--brand);background:var(--surface-2)}.agenda-week-hd{color:var(--text-2);text-transform:capitalize;font-size:11px;font-weight:600}.agenda-week-cell.today .agenda-week-hd{color:var(--brand)}.agenda-card{border:1px solid var(--border);background:var(--surface);color:inherit;border-left-width:3px;border-radius:7px;padding:6px 8px;text-decoration:none;display:block}.agenda-card:hover{background:var(--surface-2)}.agenda-card-title{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.agenda-card-sub{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.agenda-card-foot{justify-content:space-between;align-items:center;gap:6px;margin-top:3px;font-size:11.5px;display:flex}.agenda-week-more{border:1px dashed var(--border-strong);color:var(--text-2);cursor:pointer;background:0 0;border-radius:7px;padding:5px;font-family:inherit;font-size:11.5px}.agenda-week-more:hover{background:var(--surface-2)}@media (max-width:900px){.agenda-week{grid-template-columns:1fr}.agenda-week-cell{min-height:0}}.agenda-acc-group{scroll-margin-top:84px}.agenda-acc-head{border:0;border-top:1px solid var(--border);cursor:pointer;text-align:left;width:100%;color:inherit;background:0 0;align-items:center;gap:12px;padding:11px 16px;font-family:inherit;display:flex}.agenda-acc-group:first-child .agenda-acc-head{border-top:0}.agenda-acc-head:hover{background:var(--surface-2)}.agenda-acc-date{text-transform:uppercase;letter-spacing:.3px;color:var(--text-2);white-space:nowrap;align-items:center;gap:8px;font-size:11px;font-weight:600;display:inline-flex}.agenda-hoy-tag{color:var(--brand);border:1px solid var(--brand);text-transform:none;letter-spacing:0;border-radius:999px;padding:1px 6px;font-size:10px;font-weight:700}.agenda-acc-badges{flex-wrap:wrap;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.agenda-acc-badge{color:var(--text-2);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:4px;font-size:11.5px;display:inline-flex}.agenda-acc-sum{white-space:nowrap;gap:8px;margin-left:auto;font-size:12.5px;display:inline-flex}.agenda-acc-chev{color:var(--text-3);flex-shrink:0;transition:transform .15s;display:inline-flex}.agenda-acc-head[aria-expanded=true] .agenda-acc-chev{transform:rotate(180deg)}.agenda-acc-panel{max-height:440px;animation:.12s ease-out agenda-in;overflow-y:auto}@keyframes agenda-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.agenda-acc-panel{animation:none}}.agenda-acc-more{border:0;border-top:1px solid var(--border);width:100%;color:var(--brand);cursor:pointer;text-align:center;background:0 0;padding:9px 16px;font-family:inherit;font-size:12px;display:block}.agenda-acc-more:hover{background:var(--surface-2)}@media (max-width:700px){.agenda-acc-sum{display:none}.agenda-acc-badge{font-size:11px}}.sb-nav{flex-direction:column;flex:1;gap:1px;padding:4px 8px 12px;display:flex;overflow-y:auto}.sb-group{letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);padding:14px 10px 6px;font-size:10.5px;font-weight:600}.sb-item{color:var(--text-2);cursor:pointer;border-radius:7px;align-items:center;gap:10px;padding:7px 10px;font-size:13px;transition:background .12s,color .12s;display:flex;position:relative}.sb-item .ic{color:var(--text-3);flex-shrink:0;display:flex}.sb-item:hover{background:var(--surface-2);color:var(--text)}.sb-item:hover .ic{color:var(--text-2)}.sb-item.active{background:var(--brand-soft);color:var(--brand);font-weight:500}.sb-item.active .ic{color:var(--brand)}.sb-item .badge-n{background:var(--surface-3);color:var(--text-2);font-size:10.5px;font-weight:600;font-family:var(--f-mono);border-radius:999px;margin-left:auto;padding:1px 6px}.sb-item.active .badge-n{background:var(--brand);color:var(--brand-fg)}.sb-foot{border-top:1px solid var(--border);align-items:center;gap:10px;padding:10px 12px;display:flex}.sb-foot .avatar{background:linear-gradient(135deg, var(--brand), color-mix(in oklch, var(--brand) 40%, #000));width:32px;height:32px;color:var(--brand-fg);border-radius:8px;place-items:center;font-size:12px;font-weight:600;display:grid}.sb-foot .who{flex:1;min-width:0}.sb-foot .who .nm{font-size:12.5px;font-weight:500}.sb-foot .who .sub{color:var(--text-3);font-size:11px}.sb-foot button{color:var(--text-3);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px}.sb-foot button:hover{background:var(--surface-2);color:var(--text)}.topbar-nav{background:var(--surface);border-bottom:1px solid var(--border);z-index:30;align-items:center;gap:8px;height:56px;padding:0 24px;display:flex;position:sticky;top:0}.topbar-nav .tb-brand{cursor:pointer;align-items:center;gap:10px;margin-right:28px;display:flex}.topbar-nav .tb-items{flex:1;align-items:center;gap:2px;display:flex;overflow-x:auto}.topbar-nav .tb-item{color:var(--text-2);white-space:nowrap;cursor:pointer;border-radius:7px;padding:6px 10px;font-size:13px}.topbar-nav .tb-item:hover{background:var(--surface-2);color:var(--text)}.topbar-nav .tb-item.active{background:var(--brand-soft);color:var(--brand);font-weight:500}.topbar-nav .tb-right{align-items:center;gap:10px;display:flex}.main{background:var(--bg);flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;overflow-y:auto}.acct{align-items:center;gap:6px;margin-left:14px;display:flex}.acct>button{color:var(--text-3);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:6px;display:grid}.acct>button:hover{background:var(--surface-2);color:var(--text)}.um-wrap{position:relative}.um-trigger{cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:4px 6px 4px 10px;display:flex}.um-trigger:hover{background:var(--surface-2)}.um-trigger .who{text-align:right;min-width:0;line-height:1.2}.um-trigger .who .nm{color:var(--text);font-size:12.5px;font-weight:500}.um-trigger .who .sub{color:var(--text-3);font-size:11px}.um-trigger .avatar{background:linear-gradient(135deg, var(--brand), color-mix(in oklch, var(--brand) 40%, #000));width:32px;height:32px;color:var(--brand-fg);border-radius:8px;flex-shrink:0;place-items:center;font-size:12px;font-weight:600;display:grid}.um-menu{background:var(--surface);border:1px solid var(--border);min-width:230px;box-shadow:var(--shadow-lg);z-index:50;border-radius:10px;padding:6px;position:absolute;top:calc(100% + 6px);right:0}.um-menu .um-head{padding:8px 10px}.um-menu .um-head .nm{font-size:13px;font-weight:600}.um-menu .um-head .em{color:var(--text-3);font-size:11.5px}.um-menu .um-sep{background:var(--border);height:1px;margin:6px 0}.um-menu a,.um-menu>button{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;padding:8px 10px;font-size:13px;text-decoration:none;display:flex}.um-menu a:hover,.um-menu>button:hover{background:var(--surface-2)}.page-hd{border-bottom:1px solid var(--border);background:var(--bg);z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:color-mix(in oklch, var(--bg) 88%, transparent);justify-content:space-between;align-items:flex-end;gap:16px;padding:18px 28px 14px;display:flex;position:sticky;top:0}.imp-banner{z-index:40;background:var(--warn);color:#fff;align-items:center;gap:8px;height:40px;padding:0 16px;font-size:13px;line-height:1.3;display:flex;position:sticky;top:0}.imp-banner>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.imp-banner form{flex:none;margin-left:auto}.imp-banner b{font-weight:600}.imp-banner button{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff9;border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:12.5px;font-weight:500;display:inline-flex}.imp-banner button:hover{background:#ffffff29}.app-imp .page-hd{top:40px}.page-hd .ttl-row{align-items:center;gap:10px;display:flex}.page-hd h1{letter-spacing:-.02em;margin:0;font-size:20px;font-weight:600}.page-hd .crumb{color:var(--text-3);align-items:center;gap:6px;margin-bottom:3px;font-size:12px;display:flex}.page-hd .crumb svg{opacity:.5}.page-hd .crumb a{color:var(--brand);font-weight:500;text-decoration:none}.page-hd .crumb a:hover{text-decoration:underline}.page-hd .right{align-items:center;gap:8px;display:flex}.page-body{flex:1;min-width:0;padding:20px 28px 60px}.btn{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap;box-shadow:var(--shadow-sm);border-radius:7px;align-items:center;gap:7px;padding:7px 12px;font-size:12.5px;font-weight:500;transition:background .12s,border-color .12s,transform 50ms;display:inline-flex}.btn:hover{background:var(--surface-2)}.btn:active{transform:translateY(.5px)}.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--brand-fg);box-shadow:inset 0 -1px #00000026,inset 0 1px #ffffff26,0 1px 2px #00000014}.btn.primary:hover{background:color-mix(in oklch, var(--brand) 90%, #000)}.btn.ghost{box-shadow:none;background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--surface-2)}.btn.danger{color:var(--danger);border-color:var(--danger-border);background:var(--danger-soft)}.btn.danger:hover{background:color-mix(in oklch, var(--danger) 14%, var(--surface))}.btn.sm{border-radius:6px;gap:5px;padding:4px 8px;font-size:11.5px}.btn.lg{gap:8px;padding:9px 16px;font-size:13.5px}.btn:disabled,.btn[disabled]{opacity:.55;cursor:not-allowed;box-shadow:none}.btn:disabled:hover{background:var(--surface)}.btn.primary:disabled,.btn.primary:disabled:hover{background:var(--brand)}.btn:disabled:active{transform:none}.btn.icon{padding:6px}.btn.icon.sm{padding:4px}.seg{background:var(--surface-2);border:1px solid var(--border);border-radius:7px;padding:2px;display:inline-flex}.seg button{color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:4px 10px;font-size:12px;font-weight:500}.seg button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card.flat{box-shadow:none}.card-hd{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;display:flex}.card-hd h3{letter-spacing:-.005em;margin:0;font-size:13.5px;font-weight:600}.card-hd .sub{color:var(--text-3);font-size:11.5px}.card-body{padding:16px}.card-pad-0 .card-body{padding:0}.stats{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:4px;padding:14px 16px;display:flex;position:relative;overflow:hidden}.stat .lbl{color:var(--text-2);font-size:11.5px;font-weight:500}.stat .val{letter-spacing:-.03em;font-size:26px;font-weight:600;font-family:var(--f-mono);margin-top:2px;line-height:1.1}.stat .val .sym{color:var(--text-3);margin-right:2px;font-weight:500}.stat .sub{color:var(--text-3);align-items:center;gap:6px;font-size:11.5px;display:flex}.stat .sub .delta{color:var(--ok);font-weight:500;font-family:var(--f-mono)}.stat .sub .delta.down{color:var(--danger)}.stat.brand{background:var(--brand-soft);border-color:color-mix(in oklch, var(--brand) 22%, var(--border))}.stat.brand .lbl,.stat.brand .val,.stat.brand .sub,.stat.brand .sub .delta{color:var(--brand)}.spark{width:100%;height:28px;margin-top:6px;display:block}.badge{background:var(--surface-2);color:var(--text-2);border:1px solid var(--border);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:2px 7px;font-size:11px;font-weight:500;line-height:1.6;display:inline-flex}.badge .dot{background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.badge.ok{background:var(--ok-soft);color:var(--ok);border-color:var(--ok-border)}.badge.warn{background:var(--warn-soft);color:var(--warn);border-color:var(--warn-border)}.badge.danger{background:var(--danger-soft);color:var(--danger);border-color:var(--danger-border)}.badge.info{background:var(--info-soft);color:var(--info);border-color:var(--info-border)}.badge.brand{background:var(--brand-soft);color:var(--brand);border-color:color-mix(in oklch, var(--brand) 24%, transparent)}.badge.solid{background:var(--text);color:var(--text-inv);border-color:#0000}.ins{align-items:center;gap:7px;font-size:12.5px;font-weight:500;display:inline-flex}.ins .mark{width:22px;height:22px;font-family:var(--f-mono);color:#fff;letter-spacing:-.02em;border-radius:5px;flex-shrink:0;place-items:center;font-size:10px;font-weight:600;display:grid}.tbl{border-collapse:separate;border-spacing:0;width:100%;font-size:12.5px}.tbl th{text-align:left;color:var(--text-3);border-bottom:1px solid var(--border);background:var(--surface-2);letter-spacing:.01em;padding:9px 14px;font-size:11.5px;font-weight:500;position:sticky;top:0}.tbl th:first-child{border-top-left-radius:var(--radius)}.tbl th:last-child{border-top-right-radius:var(--radius)}.tbl td{border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle;padding:11px 14px}.tbl tr:last-child td{border-bottom:0}.tbl tbody tr:hover td{background:var(--surface-2)}.tbl tbody tr.row-link{cursor:pointer}.tbl tbody tr.row-link:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.tbl tbody tr.sel td{background:var(--brand-soft)}.tbl td .num{font-family:var(--f-mono)}.tbl.dense th,.tbl.dense td{padding-left:10px;padding-right:10px}.tbl .right{text-align:right}.tbl .center{text-align:center}.tbl .muted{color:var(--text-3)}.tbl .primary{font-weight:500}.tbl .row-link td{cursor:pointer}.tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.tools .left,.tools .right{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.chip{background:var(--surface);border:1px solid var(--border);color:var(--text-2);cursor:pointer;border-radius:7px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:inline-flex}.chip:hover{background:var(--surface-2)}.chip.on{background:var(--brand-soft);color:var(--brand);border-color:color-mix(in oklch, var(--brand) 28%, transparent);font-weight:500}.chip .x{color:var(--text-3);margin-left:2px}.search{display:inline-block;position:relative}.search input{background:var(--surface);border:1px solid var(--border);width:240px;color:var(--text);border-radius:7px;outline:none;padding:6px 10px 6px 30px;font-size:12.5px}.search input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}.search .ic{color:var(--text-3);display:flex;position:absolute;top:50%;left:9px;transform:translateY(-50%)}.modal-bg{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:100;background:#0f0d0866;place-items:center;padding:24px;animation:.15s ease-out fadeIn;display:grid;position:fixed;inset:0}[data-theme=dark] .modal-bg{background:#0009}.modal{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:14px;flex-direction:column;width:100%;max-width:560px;max-height:88vh;animation:.2s cubic-bezier(.2,.9,.3,1) slideUp;display:flex}.modal.wide{max-width:880px}.modal-hd{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-hd h3{margin:0;font-size:15px;font-weight:600}.modal-body{flex:1;padding:20px;overflow-y:auto}.modal-ft{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:12px 20px;display:flex}.modal .x{width:28px;height:28px;color:var(--text-3);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.modal .x:hover{background:var(--surface-2);color:var(--text)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{transform-origin:50%;animation:.9s linear infinite spin}.rich-editor-content{text-align:left;outline:none;min-height:100px;line-height:1.5}.rich-editor-content p{text-align:left;margin:0 0 8px}.rich-editor-content p:last-child{margin-bottom:0}.rich-editor-content ul,.rich-editor-content ol{margin:0 0 8px;padding-left:22px}.rich-editor-content ul{list-style:outside}.rich-editor-content ol{list-style:decimal}.rich-editor-content a{color:var(--brand);text-decoration:underline}.rich-editor-content strong{font-weight:600}.rich-editor-content em{font-style:italic}.var-text-wrap{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:8px 10px;font-size:13px;line-height:1.5;position:relative}.var-text-wrap.disabled{opacity:.5}.var-text-wrap:focus-within{border-color:var(--brand-ring)}.var-text-editor{white-space:pre-wrap;word-break:break-word;outline:none}.var-text-editor p{text-align:left;margin:0}.var-text-ph{color:var(--text-3);pointer-events:none;font-size:13px;position:absolute;top:8px;left:10px}.field{flex-direction:column;gap:5px;display:flex}.field .lbl{color:var(--text-2);font-size:11.5px;font-weight:500}.field .lbl .req{color:var(--danger);margin-left:2px}:where(input[type=text],input[type=search],input[type=email],input[type=tel],input[type=url],input[type=number],input[type=password],input[type=date],input[type=datetime-local],input[type=time],input[type=month],input[type=week],input:not([type]),select,textarea){background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:7px;outline:none;padding:7px 10px;font-size:13px;transition:border-color .12s,box-shadow .12s}:where(input[type=text],input[type=search],input[type=email],input[type=tel],input[type=url],input[type=number],input[type=password],input[type=date],input[type=datetime-local],input[type=time],input[type=month],input[type=week],input:not([type]),select,textarea):focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}input[type=checkbox],input[type=radio]{accent-color:var(--brand);cursor:pointer;flex-shrink:0;width:15px;height:15px;margin:0}.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea{box-sizing:border-box;width:100%}.field input:not([type=checkbox]):not([type=radio]):focus,.field select:focus,.field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}.field input:not([type=checkbox]):not([type=radio]):user-invalid{border-color:var(--danger)}.field select:user-invalid{border-color:var(--danger)}.field textarea:user-invalid{border-color:var(--danger)}:is(.field input:user-invalid:focus,.field select:user-invalid:focus,.field textarea:user-invalid:focus){box-shadow:0 0 0 3px #dc262626}.field .err{color:var(--danger);font-size:11px;display:none}:is(.field input:user-invalid~.err,.field select:user-invalid~.err,.field textarea:user-invalid~.err){display:block}.field .hint{color:var(--text-3);font-size:11px}.field-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.field-grid-3{grid-template-columns:1fr 1fr 1fr;gap:14px;display:grid}.field-grid-1{grid-template-columns:1fr;gap:14px;display:grid}.cbx{width:100%;position:relative}.cbx-trigger{background:var(--surface);border:1px solid var(--border);width:100%;color:var(--text);text-align:left;cursor:pointer;border-radius:7px;outline:none;justify-content:space-between;align-items:center;gap:8px;padding:7px 10px;font-size:13px;transition:border-color .12s,box-shadow .12s;display:flex}.cbx-trigger:hover{border-color:var(--border-strong)}.cbx-trigger.open,.cbx-trigger:focus-visible{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}.cbx-trigger>svg{color:var(--text-3);flex:none}.cbx-value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cbx-value.placeholder{color:var(--text-3)}.cbx.disabled .cbx-trigger{opacity:.55;cursor:not-allowed}.cbx-pop{z-index:50;background:var(--surface);border:1px solid var(--border);border-radius:9px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden;box-shadow:0 10px 30px #0000002e}.cbx-search{border-bottom:1px solid var(--border);color:var(--text-3);align-items:center;gap:7px;padding:8px 10px;display:flex}.cbx-search input,.field .cbx-search input{color:var(--text);box-shadow:none;background:0 0;border:none;outline:none;flex:1;width:auto;padding:0;font-size:13px}.cbx-search input:focus,.field .cbx-search input:focus{box-shadow:none;border:none}.cbx-list{max-height:264px;padding:4px;overflow-y:auto}.cbx-group+.cbx-group{margin-top:2px}.cbx-group-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);padding:6px 9px 3px;font-size:10.5px;font-weight:600}.cbx-item{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:7px 9px;font-size:13px;display:flex}.cbx-item-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cbx-item.hi{background:var(--surface-2)}.cbx-item.sel{color:var(--brand);font-weight:500}.cbx-item.sel svg{color:var(--brand);flex:none}.cbx-item:disabled{opacity:.45;cursor:default}.cbx-empty{text-align:center;color:var(--text-3);padding:16px 12px;font-size:12.5px}.row{align-items:center;gap:8px;display:flex}.col{flex-direction:column;gap:8px;display:flex}.gap-12{gap:12px}.gap-16{gap:16px}.gap-20{gap:20px}.flex-1{flex:1}.muted{color:var(--text-3)}.subdued{color:var(--text-2)}.right{text-align:right}.tnum{font-variant-numeric:tabular-nums}.divider{background:var(--border);height:1px;margin:12px 0}.bar{background:var(--surface-3);border-radius:999px;height:6px;position:relative;overflow:hidden}.bar>i{background:var(--brand);border-radius:999px;height:100%;display:block}.bar.ok>i{background:var(--ok)}.bar.warn>i{background:var(--warn)}.bar.danger>i{background:var(--danger)}.av{background:var(--surface-3);width:32px;height:32px;color:var(--text);border-radius:50%;flex-shrink:0;place-items:center;font-size:11.5px;font-weight:500;display:grid}.av.sm{width:24px;height:24px;font-size:10px}.av.lg{width:56px;height:56px;font-size:17px}.av.xl{width:72px;height:72px;font-size:22px}.sem{align-items:center;gap:4px;display:inline-flex}.sem .l{background:var(--surface-3);border-radius:50%;width:10px;height:10px}.sem.green .l:first-child{background:var(--ok);box-shadow:0 0 0 3px color-mix(in oklch, var(--ok) 20%, transparent)}.sem.yellow .l:nth-child(2){background:var(--warn);box-shadow:0 0 0 3px color-mix(in oklch, var(--warn) 20%, transparent)}.sem.red .l:nth-child(3){background:var(--danger);box-shadow:0 0 0 3px color-mix(in oklch, var(--danger) 20%, transparent)}.cal{border-left:1px solid var(--border);border-top:1px solid var(--border);border-radius:var(--radius);background:var(--surface);grid-template-columns:repeat(7,1fr);display:grid;overflow:hidden}.cal .dow{background:var(--surface-2);color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:7px 10px;font-size:11px;font-weight:500}.cal .day{border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);flex-direction:column;gap:3px;min-height:100px;padding:6px 8px;font-size:12px;display:flex}.cal .day .n{color:var(--text-2);font-weight:500;font-family:var(--f-mono);font-size:12px}.cal .day.other .n{color:var(--text-3);opacity:.5}.cal .day.today{background:var(--brand-soft)}.cal .day.today .n{color:var(--brand);font-weight:600}.cal .ev{background:var(--surface-2);color:var(--text-2);border-left:2px solid var(--text-3);white-space:nowrap;text-overflow:ellipsis;border-radius:4px;padding:2px 6px;font-size:10.5px;overflow:hidden}.cal .ev.warn{background:var(--warn-soft);color:var(--warn);border-color:var(--warn)}.cal .ev.danger{background:var(--danger-soft);color:var(--danger);border-color:var(--danger)}.cal .ev.ok{background:var(--ok-soft);color:var(--ok);border-color:var(--ok)}.cal .ev.brand{background:var(--brand-soft);color:var(--brand);border-color:var(--brand)}.tl{flex-direction:column;gap:0;padding-left:4px;display:flex}.tl-item{padding:0 0 18px 28px;position:relative}.tl-item:last-child{padding-bottom:0}.tl-item:before{content:"";background:var(--border);width:1.5px;position:absolute;top:16px;bottom:0;left:9px}.tl-item:last-child:before{display:none}.tl-item .dot{background:var(--surface-3);border:2px solid var(--surface);width:12px;height:12px;box-shadow:0 0 0 2px var(--border);border-radius:50%;position:absolute;top:4px;left:4px}.tl-item.brand .dot{background:var(--brand);box-shadow:0 0 0 2px var(--brand)}.tl-item.ok .dot{background:var(--ok);box-shadow:0 0 0 2px var(--ok)}.tl-item.warn .dot{background:var(--warn);box-shadow:0 0 0 2px var(--warn)}.tl-item.danger .dot{background:var(--danger);box-shadow:0 0 0 2px var(--danger)}.tl-item .when{color:var(--text-3);font-size:11px;font-family:var(--f-mono)}.tl-item .what{color:var(--text);margin-top:2px;font-size:13px}.tl-item .note{color:var(--text-2);margin-top:3px;font-size:12px}.tabs{border-bottom:1px solid var(--border);gap:0;margin-bottom:16px;display:flex}.tabs button{color:var(--text-2);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:7px;margin-bottom:-1px;padding:9px 14px;font-size:13px;display:inline-flex}.tabs button:hover{color:var(--text)}.tabs button.on{color:var(--brand);border-bottom-color:var(--brand);font-weight:500}.tabs button .badge-n{font-family:var(--f-mono);background:var(--surface-3);color:var(--text-2);border-radius:999px;padding:1px 6px;font-size:10.5px;font-weight:500}.chat-app{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:320px 1fr;height:calc(100dvh - 112px);min-height:480px;display:grid;overflow:hidden}.chat-back{width:32px;height:32px;color:var(--text-2);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin-left:-4px;display:none}.chat-back:hover{background:var(--surface-2);color:var(--text)}.chat-list{border-right:1px solid var(--border);flex-direction:column;min-width:0;min-height:0;display:flex}.chat-list-hd{border-bottom:1px solid var(--border);flex-shrink:0;padding:10px 12px}.chat-list-items{flex:1 1 0;min-height:0;overflow-y:auto}.chat-row{border-bottom:1px solid var(--border);cursor:pointer;align-items:flex-start;gap:10px;padding:11px 12px;display:flex}.chat-row:hover{background:var(--surface-2)}.chat-row.on{background:var(--brand-soft)}.chat-row .who{font-size:13px;font-weight:500}.chat-row .last{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;max-width:200px;margin-top:2px;font-size:11.5px;overflow:hidden}.chat-row .when{color:var(--text-3);font-size:10.5px;font-family:var(--f-mono);flex-shrink:0;margin-left:auto}.chat-row .meta{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.chat-row .ch{text-transform:uppercase;letter-spacing:.04em;border-radius:4px;margin-top:4px;padding:1px 5px;font-size:9.5px;font-weight:600;display:inline-flex}.chat-row .ch.wa{color:#166534;background:#dcfce7}.chat-row .ch.sms{color:#1e40af;background:#dbeafe}.chat-row .ch.em{color:#92400e;background:#fef3c7}[data-theme=dark] .chat-row .ch.wa{color:#4ade80;background:#4ade8026}[data-theme=dark] .chat-row .ch.sms{color:#60a5fa;background:#60a5fa26}[data-theme=dark] .chat-row .ch.em{color:#fbbf24;background:#fbbf2426}.chat-view{flex-direction:column;min-width:0;min-height:0;display:flex}.chat-vhd{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:12px;padding:11px 16px;display:flex}.chat-body{background:var(--surface-2);flex-direction:column;flex:1 1 0;gap:8px;min-height:0;padding:16px;display:flex;overflow-y:auto}.bubble{border-radius:12px;max-width:60%;padding:8px 12px;font-size:13px;line-height:1.4}.bubble.them{background:var(--surface);border:1px solid var(--border);border-bottom-left-radius:4px;align-self:flex-start}.bubble.us{background:var(--brand);color:var(--brand-fg);border-bottom-right-radius:4px;align-self:flex-end}.bubble .t{opacity:.7;font-size:10px;font-family:var(--f-mono);margin-top:3px}.chat-input{border-top:1px solid var(--border);background:var(--surface);flex-shrink:0;align-items:center;gap:8px;padding:12px 16px;display:flex}.chat-input input{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;flex:1;padding:8px 12px}.chat-input input:focus{border-color:var(--brand);background:var(--surface);outline:none}.scan-drop{border:2px dashed var(--border-strong);text-align:center;background:var(--surface);cursor:pointer;border-radius:14px;padding:40px 30px;transition:border-color .15s,background .15s}.scan-drop:hover,.scan-drop.over{border-color:var(--brand);background:var(--brand-soft)}.scan-drop .ico{background:var(--brand-soft);width:56px;height:56px;color:var(--brand);border-radius:14px;place-items:center;margin:0 auto 12px;display:grid}.scan-drop h3{margin:0 0 6px;font-size:16px;font-weight:600}.scan-drop p{color:var(--text-2);margin:0;font-size:13px}.scan-drop .formats{color:var(--text-3);justify-content:center;gap:8px;margin-top:14px;font-size:11px;display:flex}.scan-grid{grid-template-columns:1fr 1.1fr;align-items:start;gap:20px;display:grid}.pdf-thumb{aspect-ratio:8.5/11;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:8px;flex-direction:column;gap:10px;padding:22px;display:flex;position:relative;overflow:hidden}.pdf-thumb .ln{background:var(--surface-3);border-radius:3px;height:6px}.pdf-thumb .ln.short{width:70%}.pdf-thumb .ln.tiny{width:40%}.pdf-thumb .ln.title{background:var(--text-2);width:50%;height:10px}.pdf-thumb .scan-line{background:linear-gradient(to bottom, transparent, color-mix(in oklch, var(--brand) 30%, transparent), transparent);border-top:1px solid var(--brand);border-bottom:1px solid var(--brand);height:30px;animation:1.8s ease-in-out infinite scanMove;position:absolute;left:0;right:0}.pdf-thumb.done .scan-line{display:none}@keyframes scanMove{0%,to{top:0%}50%{top:calc(100% - 30px)}}.extract-list{flex-direction:column;gap:6px;display:flex}.extract-row{background:var(--surface);border:1px solid var(--border);opacity:0;border-radius:8px;grid-template-columns:140px 1fr auto;align-items:center;gap:12px;padding:9px 12px;font-size:12.5px;animation:.35s cubic-bezier(.2,.9,.3,1) forwards rowIn;display:grid;transform:translateY(4px)}@keyframes rowIn{to{opacity:1;transform:none}}.extract-row .k{color:var(--text-3);font-size:11.5px;font-weight:500}.extract-row .v{font-family:var(--f-mono);color:var(--text);font-size:12.5px}.extract-row .conf{color:var(--ok);font-size:10.5px;font-family:var(--f-mono)}.extract-row .conf.med{color:var(--warn)}.act-list .row{border-bottom:1px solid var(--border);grid-template-columns:32px 1fr auto;align-items:center;gap:12px;padding:10px 16px;display:grid}.act-list .row:last-child{border-bottom:0}.act-list .row .ic{background:var(--surface-2);width:32px;height:32px;color:var(--text-2);border-radius:8px;place-items:center;display:grid}.act-list .row .ic.brand{background:var(--brand-soft);color:var(--brand)}.act-list .row .ic.ok{background:var(--ok-soft);color:var(--ok)}.act-list .row .ic.warn{background:var(--warn-soft);color:var(--warn)}.act-list .row .ic.danger{background:var(--danger-soft);color:var(--danger)}.act-list .row .what{font-size:12.5px}.act-list .row .when{color:var(--text-3);font-size:11px;font-family:var(--f-mono)}.act-list .row .sub{color:var(--text-2);font-size:11.5px}.dash{grid-template-columns:2fr 1fr;gap:16px;display:grid}.dash-2col{grid-template-columns:1fr 1fr;gap:16px;display:grid}.dash-3col{grid-template-columns:1fr 1fr 1fr;gap:12px;display:grid}.ring{--p:60;--c:var(--brand);--s:80px;width:var(--s);height:var(--s);background:conic-gradient(var(--c) calc(var(--p) * 1%), var(--surface-3) 0);border-radius:50%;place-items:center;display:grid;position:relative}.ring:before{content:"";background:var(--surface);border-radius:50%;position:absolute;inset:9px}.ring>span{font-family:var(--f-mono);letter-spacing:-.02em;font-size:17px;font-weight:600;position:relative}.dist{flex-direction:column;gap:10px;display:flex}.dist-row{grid-template-columns:110px 1fr 60px;align-items:center;gap:10px;font-size:12px;display:grid}.dist-row .lbl{color:var(--text-2)}.dist-row .v{text-align:right;font-family:var(--f-mono);color:var(--text);font-weight:500}.dash-sec{letter-spacing:-.01em;margin:0;font-size:14px;font-weight:600}.dash-sec .muted{font-size:12px;font-weight:400}.file-pill{border:1px solid var(--border);background:var(--surface);border-radius:7px;align-items:center;gap:8px;padding:6px 10px;font-size:12px;display:inline-flex}.file-pill .fz{color:var(--text-3);font-family:var(--f-mono);font-size:11px}@media (max-width:1100px){.stats{grid-template-columns:repeat(2,1fr)}.dash,.dash-2col,.dash-3col,.scan-grid{grid-template-columns:1fr}}.tbl-wrap{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.page-hd-left{align-items:flex-end;gap:8px;min-width:0;display:flex}.m-menu-btn,.m-overlay,.m-drawer,.bottom-nav{display:none}@media (max-width:1024px){.app{grid-template-columns:1fr}.sidebar{display:none}.card-pad-0:has(>table.tbl){-webkit-overflow-scrolling:touch;overflow-x:auto}.m-menu-btn{width:38px;height:38px;color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.m-menu-btn:hover{background:var(--surface-2);color:var(--text)}.m-overlay{z-index:55;opacity:0;pointer-events:none;background:#00000073;transition:opacity .2s;display:block;position:fixed;inset:0}.m-overlay.open{opacity:1;pointer-events:auto}.m-drawer{z-index:60;width:min(82vw, var(--sb-w));background:var(--surface);border-right:1px solid var(--border);height:100dvh;box-shadow:var(--shadow-lg);flex-direction:column;transition:transform .22s;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden;transform:translate(-100%)}.m-drawer.open{transform:translate(0)}.bottom-nav{z-index:50;background:color-mix(in oklch, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);display:flex;position:fixed;bottom:0;left:0;right:0}.bn-item{color:var(--text-3);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;align-items:center;gap:3px;padding:7px 4px 8px;font-size:10px;font-weight:500;text-decoration:none;display:flex}.bn-item.active{color:var(--brand)}.bn-item:active{background:var(--surface-2)}.main{padding-bottom:calc(56px + env(safe-area-inset-bottom))}.page-hd{flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px}.page-hd-left{flex:auto;align-items:center}.page-hd h1{font-size:18px}.page-hd .right{flex-wrap:wrap;justify-content:flex-end}.page-body{padding:16px 16px 28px}}.rule-row{border-top:1px solid var(--border);grid-template-columns:130px 110px 1fr auto auto auto;align-items:center;gap:14px;padding:12px 16px;font-size:13px;display:grid}@media (max-width:768px){.field-grid,.field-grid-3{grid-template-columns:1fr}.rule-row{grid-template-columns:1fr auto;grid-template-areas:"day toggle""scope scope""msg msg""chans chans""edit edit";gap:10px 12px}.rule-row .rule-day{grid-area:day}.rule-row .rule-scope{flex-flow:wrap;grid-area:scope}.rule-row .rule-msg{grid-area:msg}.rule-row .rule-channels{grid-area:chans}.rule-row .rule-edit{grid-area:edit;justify-self:start}.rule-row .rule-toggle{grid-area:toggle;justify-self:end}.chat-app{grid-template-columns:1fr;height:calc(100dvh - 150px);min-height:320px}.chat-app .chat-view,.chat-app.has-active .chat-list{display:none}.chat-app.has-active .chat-view{display:flex}.chat-back{display:inline-flex}}@media (max-width:640px){.stats{grid-template-columns:1fr}.modal-bg{padding:12px}.modal{max-height:92dvh}}.pager{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.pager-info{color:var(--text-3);font-size:12px}.pager-pages{align-items:center;gap:4px;display:flex}.pager-num,.pager-btn{border:1px solid var(--border);min-width:30px;height:30px;color:var(--text-2);background:var(--surface);border-radius:7px;justify-content:center;align-items:center;padding:0 8px;font-size:12.5px;text-decoration:none;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.pager-num:hover,.pager-btn:hover{background:var(--surface-2);color:var(--text)}.pager-num.on{background:var(--brand);border-color:var(--brand);color:var(--brand-fg);font-weight:500}.pager-btn.disabled{opacity:.4;pointer-events:none}.pager-gap{color:var(--text-3);padding:0 4px;font-size:12.5px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border:3px solid var(--bg);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--text-3)}.botitus-fab{z-index:90;background:var(--surface);border:2px solid var(--brand);cursor:pointer;width:68px;height:68px;box-shadow:0 8px 24px #00000042, 0 0 0 4px var(--brand-ring);border-radius:50%;place-items:center;transition:transform .12s,box-shadow .12s;display:grid;position:fixed;bottom:22px;right:22px;overflow:hidden}.botitus-anim{transform-origin:bottom;animation:3s ease-in-out infinite botitus-float;display:inline-block;position:relative}.botitus-anim img{object-fit:contain;opacity:0;width:100%;height:100%;animation:2.8s linear infinite botitus-flip;position:absolute;inset:0}.botitus-fab .botitus-anim{width:80%;height:80%}.botitus-fab:hover{box-shadow:0 12px 30px #00000052, 0 0 0 5px var(--brand-ring);transform:translateY(-2px)}.botitus-fab:hover .botitus-anim{animation:.55s ease-in-out botitus-wiggle}@keyframes botitus-float{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes botitus-wiggle{0%,to{transform:rotate(0)}30%{transform:rotate(-7deg)}70%{transform:rotate(7deg)}}@keyframes botitus-flip{0%,13%{opacity:1}13.5%,to{opacity:0}}@keyframes botitus-nod{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-2px)rotate(-4deg)}}.botitus-avatar.thinking img{animation:.8s ease-in-out infinite botitus-nod}@media (prefers-reduced-motion:reduce){.botitus-fab .botitus-anim,.botitus-fab .botitus-anim img,.botitus-fab:hover .botitus-anim,.botitus-avatar.thinking img{animation:none}.botitus-fab .botitus-anim img:first-child{opacity:1}}.botitus-panel{z-index:90;background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;width:380px;max-width:calc(100vw - 32px);height:560px;max-height:calc(100vh - 120px);display:flex;position:fixed;bottom:20px;right:20px;overflow:hidden;box-shadow:0 12px 40px #00000047}.botitus-hd{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.botitus-avatar{background:var(--surface-2);border-radius:9px;place-items:center;width:30px;height:30px;display:grid;overflow:hidden}.botitus-avatar img{object-fit:contain;width:100%;height:100%}.botitus-icon-btn{width:30px;height:30px;color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:7px;place-items:center;display:grid}.botitus-icon-btn:hover{background:var(--surface-2);color:var(--text)}.botitus-body{flex-direction:column;flex:1;gap:10px;padding:14px;display:flex;overflow-y:auto}.botitus-msg{word-break:break-word;border-radius:12px;max-width:88%;padding:9px 12px;font-size:13px;line-height:1.5}.botitus-msg.user{background:var(--brand);color:var(--brand-fg);white-space:pre-wrap;border-bottom-right-radius:4px;align-self:flex-end}.botitus-msg.assistant{background:var(--surface-2);color:var(--text);border-bottom-left-radius:4px;align-self:flex-start}.botitus-suggestion{text-align:left;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:10px;padding:9px 11px;font-size:12.5px}.botitus-suggestion:hover{background:var(--surface-2);border-color:var(--brand)}.botitus-error{color:var(--danger,#e5484d);align-self:center;font-size:12px}.botitus-input{border-top:1px solid var(--border);align-items:flex-end;gap:8px;padding:10px;display:flex}.botitus-input textarea{resize:none;border:1px solid var(--border);background:var(--surface);max-height:120px;color:var(--text);border-radius:10px;outline:none;flex:1;padding:9px 11px;font-family:inherit;font-size:13px}.botitus-input textarea:focus{border-color:var(--brand)}.botitus-input button{cursor:pointer;background:var(--brand);width:38px;height:38px;color:var(--brand-fg);border:none;border-radius:10px;flex-shrink:0;place-items:center;display:grid}.botitus-input button:disabled{opacity:.45;cursor:default}.botitus-foot{color:var(--text-3);text-align:center;padding:0 12px 10px;font-size:10px}@media (max-width:1024px){.botitus-fab{bottom:78px}.botitus-panel{height:calc(100vh - 170px);bottom:78px}}@media (max-width:480px){.botitus-panel{width:auto;max-width:none;left:10px;right:10px}}.botitus-page{height:calc(100vh - 172px);min-height:500px;padding:0;display:flex;position:relative;overflow:hidden}.botitus-sidebar{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;flex-shrink:0;width:250px;display:flex;overflow:hidden}.botitus-main{flex-direction:column;flex:1;min-width:0;display:flex}.botitus-chatitem{cursor:pointer;color:var(--text-2);border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:12.5px;display:flex}.botitus-chatitem:hover,.botitus-chatitem.active{background:var(--surface-2);color:var(--text)}.botitus-chatitem-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.botitus-chatitem-del{color:var(--text-3);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:5px;place-items:center;padding:2px;display:grid}.botitus-chatitem:hover .botitus-chatitem-del{opacity:1}.botitus-chatitem-del:hover{color:var(--danger,#e5484d);background:var(--surface)}.botitus-history-toggle,.botitus-sidebar-scrim{display:none}@media (max-width:820px){.botitus-sidebar{z-index:6;width:260px;transition:transform .18s;position:absolute;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:2px 0 18px #0000002e}.botitus-sidebar.open{transform:translate(0)}.botitus-history-toggle{display:grid}.botitus-sidebar-scrim{z-index:5;background:#00000040;display:block;position:absolute;inset:0}}
