@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/12d4e8c1f08b4a66-s.1w1m1wqmjasxa.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:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/cabb10e1d7cbc7c1-s.1y3v-klcv8xov.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:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9f5a2b9f13a4ecbb-s.p.15dvesjzf7814.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d8aeca813a9ab546-s.p.08ssgmy_tb90r.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:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/12d4e8c1f08b4a66-s.1w1m1wqmjasxa.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:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/cabb10e1d7cbc7c1-s.1y3v-klcv8xov.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:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9f5a2b9f13a4ecbb-s.p.15dvesjzf7814.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/d8aeca813a9ab546-s.p.08ssgmy_tb90r.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:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/12d4e8c1f08b4a66-s.1w1m1wqmjasxa.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:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/cabb10e1d7cbc7c1-s.1y3v-klcv8xov.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:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9f5a2b9f13a4ecbb-s.p.15dvesjzf7814.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/d8aeca813a9ab546-s.p.08ssgmy_tb90r.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:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/12d4e8c1f08b4a66-s.1w1m1wqmjasxa.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:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/cabb10e1d7cbc7c1-s.1y3v-klcv8xov.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:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9f5a2b9f13a4ecbb-s.p.15dvesjzf7814.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/d8aeca813a9ab546-s.p.08ssgmy_tb90r.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:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/12d4e8c1f08b4a66-s.1w1m1wqmjasxa.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:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/cabb10e1d7cbc7c1-s.1y3v-klcv8xov.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:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/9f5a2b9f13a4ecbb-s.p.15dvesjzf7814.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/d8aeca813a9ab546-s.p.08ssgmy_tb90r.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:Plus Jakarta Sans Fallback;src:local(Arial);ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.0%;size-adjust:104.98%}.Tx3fva_className{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback;font-style:normal}.Tx3fva_variable{--font-jakarta:"Plus Jakarta Sans", "Plus Jakarta Sans Fallback"}
:root{--bg:#f4f5fa;--surface:#fff;--surface-2:#eef0f6;--ink:#0b2038;--ink-2:#46546a;--ink-3:#5c6a85;--line:#e3e6ee;--brand:#7343f0;--brand-strong:#5b2fd9;--brand-soft:#efeaff;--brand-ink:#4a2bc2;--ok:#157a3b;--ok-bg:#e4f6ea;--ok-solid:#22a55a;--warn:#9a5b07;--warn-bg:#fff2d2;--warn-solid:#f2a516;--warn-ink:#7a4806;--bad:#c42828;--bad-bg:#fdeaeb;--bad-solid:#e5484d;--g-pre:#0e9f9e;--g-mla:#7c5cfa;--g-sta:#2563eb;--g-kor:#e3711a;--radius:18px;--radius-sm:12px;--shadow:0 1px 2px #0b20380a, 0 4px 16px #0b20380f;--nav-h:68px;--font:var(--font-jakarta), system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;font-size:16px;line-height:1.4}[hidden]{display:none!important}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit}h1,h2,h3,p{margin:0}img{max-width:100%;display:block}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:6px}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{outline-offset:0}.lucide{stroke-width:2px;flex:none;width:20px;height:20px}
.brand-logo{width:auto;height:28px}.brand-logo--lg{height:40px}.logo-mark{object-fit:contain;background:var(--surface);border-radius:50%;flex:none;width:40px;height:40px}.logo-mark--lg{width:56px;height:56px}.logo-mark--xl{width:96px;height:96px}.auth{min-height:100dvh;padding:32px 16px calc(24px + env(safe-area-inset-bottom));flex-direction:column;max-width:520px;margin:0 auto;display:flex}.auth__brand{flex-direction:column;align-items:center;gap:12px;margin:16px 0 28px;display:flex}.auth__title{letter-spacing:-.02em;font-size:26px;font-weight:800;line-height:1.15}.auth__lead{color:var(--ink-2);margin-top:8px;font-size:15px;line-height:1.5}.auth__foot{text-align:center;color:var(--ink-3);margin-top:auto;padding-top:24px;font-size:13px;line-height:1.5}.pw{display:block;position:relative}.pw .input{padding-right:52px}.pw .icon-btn{width:44px;height:44px;color:var(--ink-3);background:0 0;border:0;position:absolute;top:2px;right:2px}.alert{border-radius:12px;align-items:flex-start;gap:12px;padding:12px;font-size:14px;font-weight:600;display:flex}.alert .lucide{width:18px;height:18px;margin-top:1px}.alert--bad{background:var(--bad-bg);color:var(--bad)}.alert--ok{background:var(--ok-bg);color:var(--ok)}.steps{justify-content:center;gap:6px;display:flex}.steps span{background:var(--line);border-radius:99px;width:8px;height:8px}.steps .is-active{background:var(--brand);width:24px}.steps .is-done{background:var(--brand);opacity:.4}.feature{align-items:flex-start;gap:12px;padding:12px 0;display:flex}.feature+.feature{border-top:1px solid var(--line)}.feature__t{font-size:15px;font-weight:700}.feature__d{color:var(--ink-2);margin-top:2px;font-size:13px}.howto{counter-reset:k}.howto>div{color:var(--ink-2);align-items:flex-start;gap:12px;padding:12px 0;font-size:14px;display:flex}.howto>div+div{border-top:1px solid var(--line)}.howto>div:before{counter-increment:k;content:counter(k);background:var(--brand-soft);width:28px;height:28px;color:var(--brand-ink);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:800;display:grid}.howto b{color:var(--ink)}.ios-key{background:var(--surface-2);color:var(--ink);white-space:nowrap;border-radius:6px;align-items:center;gap:4px;padding:2px 6px;font-weight:700;display:inline-flex}.ios-key .lucide{width:14px;height:14px}
.app{min-height:100dvh;padding:12px 16px calc(var(--nav-h) + 28px);margin:0 auto}.app--focus{padding-bottom:calc(136px + env(safe-area-inset-bottom))}.app--plain{padding-bottom:32px}.app--fab{padding-bottom:calc(var(--nav-h) + 96px)}.stack>*+*{margin-top:12px}.stack-sm>*+*{margin-top:8px}.row-flex{align-items:center;gap:8px;display:flex}.gap-8{gap:8px}.gap-12{gap:12px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.grid-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.muted{color:var(--ink-2)}.faint{color:var(--ink-3)}.small{font-size:13px}.tiny{font-size:12px}.bold{font-weight:700}.xbold{font-weight:800}.num{font-variant-numeric:tabular-nums}.center{text-align:center}.topbar{z-index:30;-webkit-backdrop-filter:blur(12px);background:#f4f5fae6;align-items:center;gap:12px;min-height:56px;margin:-12px -16px 16px;padding:8px 16px;display:flex;position:sticky;top:0}.topbar__title{flex:1;min-width:0}.topbar__title h1{letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:19px;font-weight:800;line-height:1.2;overflow:hidden}.topbar__title .sub{color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:13px;overflow:hidden}.topbar__actions{gap:8px;margin-left:auto;display:flex}.page-header{margin-bottom:16px}.page-head{align-items:center;gap:12px;display:flex}.page-head__logo{border-right:1px solid var(--line);flex:none;align-self:stretch;align-items:center;padding-right:12px;display:flex}.page-head__logo .brand-logo{width:auto;height:32px}.page-head__text{flex:1;min-width:0}.page-head__actions{flex:none;gap:8px;display:flex}.page-title{letter-spacing:-.02em;font-size:28px;font-weight:800;line-height:1.15}.page-sub{color:var(--ink-2);margin-top:4px;font-size:14px}.eyebrow{color:var(--ink-2);font-size:13px;font-weight:600}.icon-btn{background:var(--surface);width:44px;height:44px;color:var(--ink);border:0;border-radius:14px;flex:none;place-items:center;padding:0;text-decoration:none;display:grid;position:relative;box-shadow:0 1px 2px #0b20380f,0 2px 8px #0b20380f}.icon-btn:active{background:var(--surface-2)}.icon-btn--brand{background:var(--brand);color:#fff;box-shadow:0 6px 16px #7343f047}.icon-btn--brand:active{background:var(--brand-strong)}.header-action__label{display:none}.icon-btn--lg{width:48px;height:48px}.icon-btn--plain{color:var(--ink-3);background:0 0;border:0}.icon-btn .pip{background:var(--bad-solid);border:2px solid var(--surface);border-radius:50%;width:9px;height:9px;position:absolute;top:9px;right:10px}.section-head{justify-content:space-between;align-items:center;margin:20px 0 12px;display:flex}.section-head h2{letter-spacing:-.01em;font-size:17px;font-weight:800}.link{color:var(--brand);background:0 0;border:0;padding:0;font-size:14px;font-weight:700;text-decoration:none}.label-caps{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;margin:20px 4px 8px;font-size:12px;font-weight:700}.mb-12{margin-bottom:12px}
.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);color:inherit;padding:16px;text-decoration:none}.card--tight{padding:12px}.card--action{text-align:left;cursor:pointer;border:0;align-items:center;gap:12px;width:100%;display:flex}.card--action>.grow>span,.card--action>.right>.price{display:block}.card--selected{box-shadow:var(--shadow), 0 0 0 2px var(--brand)}.card--disabled{opacity:.6}.card-title{color:var(--ink-2);margin-bottom:12px;font-size:13px;font-weight:700}.list{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.list>*+*{border-top:1px solid var(--line)}.list__group{background:var(--surface-2);margin:0;padding:12px 16px 8px}.item{min-height:60px;color:inherit;background:var(--surface);text-align:left;border:0;align-items:center;gap:12px;width:100%;padding:12px 16px;text-decoration:none;display:flex}button.item,a.item{cursor:pointer}a.item__main{color:inherit;text-decoration:none}button.item__main{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.item--compact{min-height:52px;padding:8px 16px}.item.is-selected{background:var(--brand-soft)}.item.is-unread{background:#faf8ff}.item__main{flex:1;min-width:0}.item__title,.item__sub{display:block}.item__title{white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:700;overflow:hidden}.item__title--wrap{white-space:normal;font-weight:600}.item__sub{color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:13px;overflow:hidden}.item__sub--wrap{white-space:normal}.chev{color:var(--ink-3)}.right{text-align:right}.price{letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:20px;font-weight:800}.item--outlined{border:1px solid var(--line);border-radius:16px}.item--outlined.is-primary{border:1.5px solid var(--brand);background:var(--brand-soft)}.item--outlined.is-primary .icon-box{background:var(--surface)}.icon-box{background:var(--surface-2);width:40px;height:40px;color:var(--ink-2);border-radius:12px;flex:none;place-items:center;display:grid}.icon-box--ok{background:var(--ok-bg);color:var(--ok)}.icon-box--warn{background:var(--warn-bg);color:var(--warn)}.icon-box--bad{background:var(--bad-bg);color:var(--bad)}.icon-box--brand{background:var(--brand-soft);color:var(--brand)}.icon-box--lg{width:52px;height:52px;font-size:20px;font-weight:800}.tbox{background:var(--surface-2);font-variant-numeric:tabular-nums;width:58px;height:46px;box-shadow:inset 3px 0 0 var(--g,var(--brand));border-radius:12px;flex:none;place-items:center;font-size:15px;font-weight:800;display:grid}.tbox--done{color:var(--ink-3)}.tbox--icon{width:46px}.gdot{background:var(--g,var(--brand));border-radius:50%;flex:none;width:10px;height:10px;display:inline-block}.gdot--sm{width:8px;height:8px}
.btn{white-space:nowrap;border:0;border-radius:14px;justify-content:center;align-items:center;gap:8px;height:48px;padding:0 16px;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.btn--primary{background:var(--brand);color:#fff;box-shadow:0 6px 16px #7343f047}.btn--primary:active{background:var(--brand-strong)}.btn--soft{background:var(--brand-soft);color:var(--brand-ink)}.btn--ghost{background:var(--surface);color:var(--ink);border:1px solid var(--line)}.btn--ghost:active,.btn--soft:active{filter:brightness(.96)}.btn--danger{background:var(--bad);color:#fff}.btn--danger:active{background:#a81f1f}.btn--block{width:100%}.btn--lg{border-radius:16px;height:56px;font-size:16px}.btn--sm{border-radius:10px;gap:6px;height:36px;padding:0 12px;font-size:13px}.btn--sm .lucide{width:16px;height:16px}.btn--on-hero{color:var(--brand-ink);background:#fff}.btn--on-hero:active{background:var(--brand-soft)}.fab{z-index:15;right:16px;bottom:calc(var(--nav-h) + 16px);background:var(--brand);color:#fff;border-radius:18px;place-items:center;width:56px;height:56px;text-decoration:none;display:grid;position:fixed;box-shadow:0 10px 24px #7343f059}.fab .lucide{width:24px;height:24px}.badge{white-space:nowrap;background:var(--surface-2);height:24px;color:var(--ink-2);border-radius:999px;align-items:center;gap:4px;padding:0 8px;font-size:12px;font-weight:700;display:inline-flex}.badge .lucide{width:14px;height:14px}.badge--ok{background:var(--ok-bg);color:var(--ok)}.badge--warn{background:var(--warn-bg);color:var(--warn)}.badge--bad{background:var(--bad-bg);color:var(--bad)}.badge--brand{background:var(--brand-soft);color:var(--brand-ink)}.badge--solid{background:var(--ink);color:#fff}.count{font-variant-numeric:tabular-nums;background:var(--surface-2);min-width:42px;height:32px;color:var(--ink-2);border-radius:10px;flex:none;place-items:center;padding:0 8px;font-size:15px;font-weight:800;display:inline-grid}.count--ok{background:var(--ok-bg);color:var(--ok)}.count--warn{background:var(--warn-bg);color:var(--warn)}.count--bad{background:var(--bad);color:#fff}.dot{background:var(--tone,var(--ink-3));border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.dot--ok{--tone:var(--ok-solid)}.dot--warn{--tone:var(--warn-solid)}.dot--bad{--tone:var(--bad-solid)}.dot--brand{--tone:var(--brand)}.chips{scrollbar-width:none;gap:8px;margin-left:-16px;margin-right:-16px;padding:2px 16px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{border:1px solid var(--line);background:var(--surface);height:36px;color:var(--ink-2);border-radius:999px;flex:none;align-items:center;gap:6px;padding:0 14px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.chip .lucide{width:16px;height:16px}.chip .n{opacity:.65;font-size:12px;font-weight:700}.chip.is-active{background:var(--ink);color:#fff;border-color:var(--ink)}.dd{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:12px;align-items:center;gap:8px;width:100%;height:52px;padding:0 12px 0 14px;display:flex}.dd__main{flex:1;min-width:0}.dd__label{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:700;line-height:1.2;display:block}.dd__value{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;margin-top:2px;font-size:14px;font-weight:700;display:flex;overflow:hidden}.dd__value>span:last-child{text-overflow:ellipsis;overflow:hidden}.dd>.lucide{width:18px;height:18px;color:var(--ink-3)}.dd.is-set{border-color:var(--brand);background:var(--brand-soft)}.dd.is-set .dd__label,.dd.is-set>.lucide{color:var(--brand-ink)}.list .item.is-active{background:var(--brand-soft)}.seg{background:var(--surface-2);border-radius:14px;gap:4px;padding:4px;display:flex}.seg>*{height:38px;color:var(--ink-2);background:0 0;border:0;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;font-size:14px;font-weight:700;text-decoration:none;display:flex}.seg>.is-active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.seg .lucide{width:18px;height:18px}.tabbar{z-index:20;width:100%;height:calc(var(--nav-h) + env(safe-area-inset-bottom));padding:6px 8px env(safe-area-inset-bottom);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);background:#fffffff5;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.tabbar a{color:var(--ink-3);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;font-size:11px;font-weight:700;text-decoration:none;display:flex;position:relative}.tabbar a .lucide{width:22px;height:22px}.tabbar a.is-active{color:var(--brand)}.tabbar a.is-active:before{content:"";background:var(--brand);border-radius:0 0 3px 3px;width:28px;height:3px;position:absolute;top:-7px}.tabbar .pip{background:var(--bad-solid);border-radius:50%;width:8px;height:8px;position:absolute;top:6px;left:calc(50% + 6px)}.footer-bar{z-index:20;width:100%;padding:16px 16px calc(16px + env(safe-area-inset-bottom));background:linear-gradient(to top, var(--bg) 72%, #f4f5fa00);position:fixed;bottom:0;left:50%;transform:translate(-50%)}.footer-bar__caption{text-align:center;color:var(--ink-2);min-height:18px;margin-bottom:8px;font-size:13px;font-weight:600}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;box-shadow:none}
.field{display:block}.field+.field,.grid-2+.field,.field+.grid-2{margin-top:12px}.grid-2>.field+.field{margin-top:0}.label{color:var(--ink-2);margin-bottom:8px;font-size:13px;font-weight:700;display:block}.label .opt-hint{color:var(--ink-3);font-weight:500}.input,.select,.textarea{border:1px solid var(--line);background:var(--surface);width:100%;height:48px;font:inherit;color:var(--ink);appearance:none;border-radius:12px;padding:0 14px;font-size:16px}.input--center{text-align:center}.select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%235C6A85' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:40px}.textarea{resize:vertical;height:auto;min-height:80px;padding:12px 14px;line-height:1.4}.input:focus,.select:focus,.textarea:focus{outline:2px solid var(--brand);outline-offset:0;border-color:#0000}.input-icon{position:relative}.input-icon .lucide{color:var(--ink-3);position:absolute;top:50%;left:14px;transform:translateY(-50%)}.input-icon .input{padding-left:44px}.field-error{color:var(--bad);margin-top:8px;font-size:13px;font-weight:600;display:block}.hint{color:var(--ink-3);align-items:flex-start;gap:6px;margin-top:8px;font-size:12px;display:flex}.hint .lucide{width:14px;height:14px;margin-top:2px}.hint--brand{color:var(--brand-ink);font-weight:600}.hint--center{text-align:center;justify-content:center}.check{cursor:pointer;align-items:flex-start;gap:12px;padding:8px 0;font-size:14px;display:flex}.check input{width:22px;height:22px;accent-color:var(--brand);flex:none;margin:0}.check small{color:var(--ink-3);margin-top:2px;font-size:12px;display:block}.check--inline{align-items:center;padding:0}.switch{flex:none;width:46px;height:28px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0;position:absolute}.switch span{background:#d3d7e2;border-radius:99px;transition:all .2s;position:absolute;inset:0}.switch span:after{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:all .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.switch input:checked+span{background:var(--brand)}.switch input:checked+span:after{transform:translate(18px)}.switch input:focus-visible+span{outline:2px solid var(--brand);outline-offset:2px}.term-row{flex-wrap:wrap}.term-row .select.term-row__assistant{flex:100%;width:auto}.term-row .select{width:136px;height:40px;padding-right:32px}.term-row .select.select--time{width:104px}.term-row .input{width:104px;height:40px;padding:0 8px}.opts{grid-template-columns:1fr 1fr;gap:12px;display:grid}.opt{border:1.5px solid var(--line);background:var(--surface);cursor:pointer;border-radius:16px;padding:12px 16px;display:block;position:relative}.opt input{opacity:0;pointer-events:none;position:absolute}.opt:has(input:checked){border-color:var(--brand);background:var(--brand-soft);box-shadow:0 0 0 3px #7343f01f}.opt:has(input:focus-visible){outline:2px solid var(--brand);outline-offset:2px}.opt__title{color:var(--ink-2);font-size:14px;font-weight:700}.opt__price{letter-spacing:-.02em;margin-top:2px;font-size:24px;font-weight:800}.opt__meta{color:var(--ink-2);margin-top:2px;font-size:12px}.opt__radio{border:2px solid var(--line);border-radius:50%;width:20px;height:20px;position:absolute;top:12px;right:12px}.opt:has(input:checked) .opt__radio{border:6px solid var(--brand)}.note{color:var(--ink-2);background:var(--surface-2);border-radius:12px;align-items:flex-start;gap:12px;padding:12px;font-size:13px;display:flex}.note .lucide{width:18px;height:18px;color:var(--brand);margin-top:1px}.note--warn{background:var(--warn-bg);color:var(--warn-ink)}.note--warn .lucide{color:var(--warn)}.health{background:var(--warn-bg);color:var(--warn-ink);border-radius:12px;align-items:flex-start;gap:8px;padding:12px;font-size:13px;font-weight:600;display:flex}.health .lucide{width:18px;height:18px;margin-top:1px}.health-inline{color:var(--warn);align-items:center;gap:4px;margin-top:4px;font-size:12px;font-weight:700;display:inline-flex}.health-inline .lucide{width:14px;height:14px}.select.select--inline{flex:none;width:auto;height:40px;padding-right:36px}.photo-field{align-items:center;gap:16px;display:flex}.photo-field__main{min-width:0}.photo-field .hint{margin-top:4px}.photo-field--compact{gap:12px}
.hero{color:#fff;background:radial-gradient(120% 140% at 100% 0,#9a6bff 0%,#7343f0 45%,#5530d0 100%);border-radius:24px;padding:20px;box-shadow:0 14px 30px #5b2fd94d}.hero__tag{background:#ffffff2e;border-radius:99px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.hero__tag .lucide{width:14px;height:14px}.hero__time{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:30px;font-weight:800;line-height:1}.hero__title{letter-spacing:-.01em;margin-top:12px;font-size:21px;font-weight:800}.hero__meta{opacity:.85;margin-top:2px;font-size:14px}.hero__alerts{flex-wrap:wrap;gap:8px;margin:12px 0 16px;display:flex}.pill-w{height:28px;color:var(--ink);background:#fffffff2;border-radius:99px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.pill-w .lucide{width:14px;height:14px;color:var(--warn)}.kpis{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.kpis--2{grid-template-columns:1fr 1fr}.kpi{background:var(--surface);box-shadow:var(--shadow);color:inherit;border-radius:16px;padding:12px;text-decoration:none;display:block}.kpi__v{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:22px;font-weight:800;line-height:1.15}.kpis--2 .kpi__v{font-size:26px}.kpi__unit{font-size:15px}.kpi__l{color:var(--ink-2);margin-top:2px;font-size:12px;font-weight:600}.delta{align-items:center;gap:2px;margin-top:8px;font-size:12px;font-weight:700;display:inline-flex}.delta .lucide{width:14px;height:14px}.delta--up{color:var(--ok)}.delta--down{color:var(--bad)}.delta--flat{color:var(--ink-3)}.status{background:var(--surface);box-shadow:var(--shadow);border-radius:20px;padding:16px;position:relative;overflow:hidden}.status:before{content:"";background:var(--tone-solid,var(--brand));height:4px;position:absolute;inset:0 0 auto}.status--compact{padding:12px 16px}.status--ok{--tone-solid:var(--ok-solid);--tone-ink:var(--ok);--tone-bg:var(--ok-bg)}.status--warn{--tone-solid:var(--warn-solid);--tone-ink:var(--warn);--tone-bg:var(--warn-bg)}.status--bad{--tone-solid:var(--bad-solid);--tone-ink:var(--bad);--tone-bg:var(--bad-bg)}.status__num{letter-spacing:-.03em;color:var(--tone-ink);font-variant-numeric:tabular-nums;font-size:46px;font-weight:800;line-height:1}.status__label{color:var(--tone-ink);font-size:15px;font-weight:700}.status__tag{background:var(--tone-bg);color:var(--tone-ink);border-radius:99px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.status__tag .lucide{width:14px;height:14px}.status__head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.status__value{align-items:baseline;gap:8px;display:flex}.bar{background:var(--surface-2);border-radius:99px;height:8px;overflow:hidden}.bar>span{border-radius:inherit;background:var(--tone-solid,var(--brand));height:100%;display:block}.bar--brand>span{background:var(--brand)}.avatar{background:var(--brand-soft);width:40px;height:40px;color:var(--brand-ink);border-radius:50%;flex:none;place-items:center;font-size:14px;font-weight:800;display:grid}.avatar--lg{width:56px;height:56px;font-size:18px}.avatar--sm{width:24px;height:24px;font-size:10px}.avatar--xl{width:88px;height:88px;font-size:28px}.avatar--photo{background:var(--surface-2);overflow:hidden}.avatar--photo img{object-fit:cover;width:100%;height:100%;display:block}.avatar--muted.avatar--photo img{filter:grayscale();opacity:.7}.avatar--muted{background:var(--surface-2);color:var(--ink-3)}.av-1{color:#4a2bc2;background:#efeaff}.av-2{color:#0b6aa8;background:#e0f2fe}.av-3{color:#157a3b;background:#dcfce7}.av-4{color:#b45309;background:#ffedd5}.av-5{color:#be185d;background:#fce7f3}.av-6{color:#0b7c7b;background:#e0f7f6}
.att-list{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.att-list>*+*{border-top:1px solid var(--line)}.att{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:12px;min-height:68px;padding:12px 8px 12px 16px;transition:background .15s;display:flex;position:relative}.att:before{content:"";background:var(--tone,var(--line));border-radius:0 5px 5px 0;width:5px;position:absolute;top:12px;bottom:12px;left:0}.att[data-tone=ok]{--tone:var(--ok-solid)}.att[data-tone=warn]{--tone:var(--warn-solid)}.att[data-tone=bad]{--tone:var(--bad-solid)}.att.is-marked{background:#f6fcf8}.att__main{flex:1;min-width:0}.att__name{flex-wrap:wrap;align-items:center;gap:8px;font-size:16px;font-weight:700;display:flex}.att__toggle{text-align:left;cursor:inherit;background:0 0;border:0;padding:0}.att__toggle:after{content:"";position:absolute;inset:0}.att__toggle:focus-visible{outline:none}.att__toggle:focus-visible:after{outline:2px solid var(--brand);outline-offset:-2px}.chip-pay,.att__more{z-index:1;position:relative}.att__line{flex-wrap:wrap;align-items:center;gap:8px;margin-top:2px;display:flex}.att__sub{color:var(--ink-2);font-size:13px}.att__sub b{color:var(--ink)}.chip-pay{background:var(--bad-bg);height:32px;color:var(--bad);border:0;border-radius:99px;align-items:center;gap:4px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.chip-pay .lucide{width:14px;height:14px}.att__state{border:2px solid var(--line);background:var(--surface);color:#c3c8d6;border-radius:15px;flex:none;place-items:center;width:50px;height:50px;padding:0;transition:all .15s;display:grid}.att__state .lucide{stroke-width:3px;width:26px;height:26px}.att__state .i-u{display:none}.att__state.is-p{background:var(--ok-solid);border-color:var(--ok-solid);color:#fff}.att__state.is-u{background:var(--bad-bg);border-color:var(--bad-solid);color:var(--bad)}.att__state.is-u .i-p{display:none}.att__state.is-u .i-u{display:block}.att__more{width:40px;height:50px;color:var(--ink-3);background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.progress-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.progress-head .big{font-variant-numeric:tabular-nums;font-size:22px;font-weight:800}.ministats{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px;display:grid}.ministats>div{background:var(--surface-2);border-radius:10px;padding:8px}.ministats b{font-variant-numeric:tabular-nums;font-size:14px;font-weight:800;display:block}.ministats span{color:var(--ink-2);font-size:11px;font-weight:600}.ministats .is-ok b{color:var(--ok)}.ministats .is-warn b{color:var(--warn)}.ministats .is-bad b{color:var(--bad)}
.matrix-wrap{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);overflow-x:auto}.matrix{border-collapse:collapse;width:100%;font-size:14px}.matrix th{color:var(--ink-2);text-align:center;background:var(--surface-2);white-space:nowrap;padding:8px 4px;font-size:12px;font-weight:700}.matrix th b{color:var(--ink);font-size:13px;display:block}.matrix td{text-align:center;border-top:1px solid var(--line);padding:8px 4px}.matrix th:first-child,.matrix td:first-child{text-align:left;background:inherit;padding-left:16px;position:sticky;left:0}.matrix thead th:first-child,.matrix tfoot td:first-child{background:var(--surface-2)}.matrix tbody tr{background:var(--surface)}.matrix .name{white-space:nowrap;text-overflow:ellipsis;max-width:120px;font-weight:700;overflow:hidden}.matrix .name small{color:var(--ink-3);font-size:11px;font-weight:600;display:block}.matrix tfoot td{color:var(--ink-2);background:var(--surface-2);font-size:12px;font-weight:700}.matrix .sep td{background:var(--surface-2);color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;padding:8px 16px;font-size:11px;font-weight:700}.mc{width:30px;height:30px;color:var(--ink-3);border-radius:50%;place-items:center;font-weight:800;display:inline-grid}.mc .lucide{stroke-width:3px;width:16px;height:16px}.mc--p{background:var(--ok-solid);color:#fff}.mc--a{border:2px solid var(--line)}.mc--u{background:var(--bad-bg);color:var(--bad)}.mc--s{border:2px dashed #c3b6fb}.legend{color:var(--ink-2);flex-wrap:wrap;gap:8px 16px;margin-top:12px;padding:0 4px;font-size:12px;font-weight:600;display:flex}.legend>span{align-items:center;gap:6px;display:inline-flex}.legend .mc{width:20px;height:20px}.legend .mc .lucide{width:12px;height:12px}.day{background:var(--surface);gap:12px;padding:12px 16px;display:flex}.day__label{text-align:center;flex:none;width:46px;padding-top:4px}.day__label b{font-size:18px;font-weight:800;line-height:1.1;display:block}.day__label b.range{font-size:13px;line-height:1.5}.day__label span{color:var(--ink-3);text-transform:uppercase;font-size:11px;font-weight:700}.day--today .day__label b,.day--today .day__label span{color:var(--brand)}.day__terms{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.term{background:var(--surface-2);min-height:44px;color:inherit;box-shadow:inset 3px 0 0 var(--g,var(--brand));border-radius:12px;align-items:center;gap:12px;padding:8px 12px;text-decoration:none;display:flex}.term__time{white-space:nowrap;font-variant-numeric:tabular-nums;flex:none;min-width:42px;font-size:14px;font-weight:800}.term__name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:14px;font-weight:700;overflow:hidden}.term__name small{color:var(--ink-3);margin-left:4px;font-size:12px;font-weight:600}.term__meta{color:var(--ink-2);flex:none;align-items:center;gap:4px;font-size:12px;font-weight:700;display:inline-flex}.term__meta .lucide{width:14px;height:14px}.day__empty{color:var(--ink-3);padding:8px 0;font-size:13px;font-weight:600}.weeknav{background:var(--surface);box-shadow:var(--shadow);border-radius:16px;align-items:center;gap:8px;padding:8px;display:flex}.weeknav--flat{box-shadow:none;padding:0}.weeknav .icon-btn{background:var(--surface-2);border:0;width:40px;height:40px}.weeknav__label{background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:2px 0;display:flex}.weeknav__label b{align-items:center;gap:6px;font-size:15px;font-weight:800;display:inline-flex}.weeknav__label b .lucide{width:16px;height:16px;color:var(--ink-3)}.weeknav__label span{color:var(--ink-3);align-items:center;gap:4px;font-size:12px;font-weight:600;display:inline-flex}.weeknav__label span .lucide{width:13px;height:13px}.matrix .name a{color:inherit;text-decoration:none}.matrix__pause{vertical-align:-1px;width:10px;height:10px}.matrix__cell{cursor:pointer;width:40px;height:40px;color:inherit;background:0 0;border:0;border-radius:12px;place-items:center;padding:0;text-decoration:none;display:inline-grid}.matrix__cell:hover{background:var(--surface-2)}.matrix__cell:disabled{cursor:progress}.matrix__cell.is-busy{opacity:.5}.matrix__head{width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:4px 6px;display:block}.matrix__head b{align-items:center;gap:2px;display:inline-flex}.matrix__head b .lucide{width:14px;height:14px;color:var(--ink-3)}.matrix__head:hover{background:var(--surface)}.matrix__head:hover b,.matrix__head:hover b .lucide{color:var(--brand)}.agenda{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}@media (min-width:768px){.agenda{grid-template-columns:repeat(auto-fill,minmax(156px,1fr))}}.agenda__day{background:var(--surface);box-shadow:var(--shadow);border-radius:16px;min-width:0;padding:12px}.agenda__day.is-empty{box-shadow:inset 0 0 0 1px var(--line);background:0 0}.agenda__head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px;font-size:13px;display:flex}.agenda__head span{color:var(--ink-3);font-size:12px}.agenda__day.is-empty .agenda__head{color:var(--ink-3);margin-bottom:0}.agenda__slots{gap:4px;margin:0;padding:0;list-style:none;display:grid}.agenda__slot{background:var(--surface-2);box-shadow:inset 3px 0 0 var(--g,var(--brand));color:inherit;border-radius:10px;align-items:center;gap:8px;min-width:0;padding:8px;font-size:13px;text-decoration:none;display:flex}.agenda__slot:hover{background:color-mix(in srgb, var(--g,var(--brand)) 10%, var(--surface-2))}.agenda__time{font-variant-numeric:tabular-nums;flex:none;font-weight:800}.agenda__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink-2);flex:1;overflow:hidden}.agenda__count{color:var(--ink-3);flex:none;font-size:12px;font-weight:700}
.scrim{z-index:40;background:#0b20386b;position:fixed;inset:0}.sheet{--sheet-pad:16px;z-index:50;background:var(--bg);border-radius:24px 24px 0 0;flex-direction:column;width:100%;max-height:90dvh;padding-top:8px;display:flex;position:fixed;bottom:0;left:50%;overflow:hidden;transform:translate(-50%)}.sheet__grab,.sheet__head,.sheet__toolbar,.sheet__body,.sheet__footer{padding-left:var(--sheet-pad);padding-right:var(--sheet-pad)}.sheet__toolbar{border-bottom:1px solid var(--line);padding-bottom:12px}.sheet__toolbar+.sheet__body{margin-top:0;padding-top:12px}.sheet__toolbar .chips{margin-top:12px}.sheet__body{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#0b20382e transparent;flex:auto;min-height:0;margin-top:-2px;padding-top:2px;overflow:hidden auto}.sheet__body--last{margin-bottom:calc(20px + env(safe-area-inset-bottom))}.sheet__body::-webkit-scrollbar{width:10px}.sheet__body::-webkit-scrollbar-track{background:0 0}.sheet__body::-webkit-scrollbar-thumb{background:#0b20382e padding-box padding-box;border:3px solid #0000;border-radius:8px}.sheet__footer{padding-top:12px;padding-bottom:calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--line)}.scrim[data-state=open]{animation:.2s both scrim-in}.scrim[data-state=closed]{animation:.2s both scrim-out}.sheet[data-state=open]{animation:.3s cubic-bezier(.2,.8,.2,1) both sheet-in}.sheet[data-state=closed]{animation:.22s ease-in both sheet-out}@keyframes scrim-in{0%{opacity:0}to{opacity:1}}@keyframes scrim-out{0%{opacity:1}to{opacity:0}}@keyframes sheet-in{0%{transform:translate(-50%,105%)}to{transform:translate(-50%)}}@keyframes sheet-out{0%{transform:translate(-50%)}to{transform:translate(-50%,105%)}}.sheet:focus{outline:none}.sheet__grab{background:#d3d7e2;border-radius:3px;width:40px;height:5px;margin:4px auto 12px}.sheet__head{align-items:center;gap:12px;margin-bottom:16px;display:flex}.sheet__head h2{flex:1;font-size:19px;font-weight:800}.sheet__head .icon-btn{border-radius:12px;width:36px;height:36px}.sheet__text{color:var(--ink-2);margin-bottom:16px;font-size:14px}.toast{z-index:60;background:var(--ink);color:#fff;opacity:0;pointer-events:none;border-radius:14px;align-items:center;gap:8px;width:max-content;max-width:calc(100% - 32px);padding:12px 16px;font-size:14px;font-weight:600;transition:all .25s;display:flex;position:fixed;bottom:128px;left:50%;transform:translate(-50%,16px)}.toast .lucide{color:#6ee7a0}.toast.is-show{opacity:1;transform:translate(-50%)}.empty{text-align:center;padding:24px 20px}.empty--tight{padding:8px 16px 16px}.empty .icon-box{border-radius:18px;width:56px;height:56px;margin:0 auto 12px}.empty .icon-box .lucide{width:26px;height:26px}.empty h3{font-size:17px;font-weight:800}.empty p{color:var(--ink-2);margin-top:4px;font-size:14px}.kv-list{margin:0}.kv{justify-content:space-between;gap:12px;padding:12px 0;font-size:14px;display:flex}.kv+.kv{border-top:1px solid var(--line)}.kv dt{color:var(--ink-2)}.kv dd{text-align:right;margin:0;font-weight:700}.tabs{border-bottom:1px solid var(--line);scrollbar-width:none;gap:4px;margin:20px 0 12px;display:flex;overflow-x:auto}.tabs button{color:var(--ink-3);background:0 0;border:0;border-bottom:2px solid #0000;flex:none;margin-bottom:-1px;padding:12px;font-size:14px;font-weight:700}.tabs button.is-active{color:var(--ink);border-bottom-color:var(--brand)}.tabs-aside:not(.is-active){display:none}.swatches{flex-wrap:wrap;gap:12px;display:flex}.swatch{background:var(--g);border:3px solid var(--surface);width:36px;height:36px;box-shadow:0 0 0 1.5px var(--line);border-radius:50%;padding:0}.swatch.is-active{box-shadow:0 0 0 2.5px var(--ink)}.divider{background:var(--line);height:1px;margin:12px 0}.summary-line{color:var(--ink-2);justify-content:space-between;padding:4px 0;font-size:14px;display:flex}.summary-line b{color:var(--ink);font-variant-numeric:tabular-nums}.summary-line b.t-bad{color:var(--bad)}.summary-line b.t-ok{color:var(--ok)}.summary-total{border-top:1px dashed var(--line);justify-content:space-between;align-items:baseline;margin-top:8px;padding-top:12px;display:flex}.summary-total .v{letter-spacing:-.02em;color:var(--ok);font-variant-numeric:tabular-nums;font-size:26px;font-weight:800}.total-row{justify-content:space-between;margin-top:12px;padding:0 4px;font-size:13px;display:flex}.actions-3{grid-template-columns:1.25fr 1fr 1fr;gap:8px;display:grid}.actions-3 .btn{min-width:0;padding:0 8px}.quick{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.quick__btn{background:var(--surface-2);color:var(--ink);border:0;border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:10px 4px 8px;font-size:12px;font-weight:700;line-height:1.2;text-decoration:none;display:flex}.quick__icon{background:var(--surface);width:40px;height:40px;color:var(--brand-ink);border-radius:12px;place-items:center;display:grid;box-shadow:0 1px 2px #0b20380f}.quick__btn.is-primary{background:var(--brand);color:#fff;box-shadow:0 6px 16px #7343f047}.quick__btn.is-primary .quick__icon{color:#fff;box-shadow:none;background:#ffffff2e}.plan-bar{text-align:left;border:0;border-radius:16px;align-items:center;gap:12px;width:100%;padding:12px 16px;font-size:14px;font-weight:700;display:flex}.plan-bar .lucide{flex:none}.plan-bar__sub{opacity:.85;margin-top:2px;font-size:12px;font-weight:600;display:block}.plan-bar--bad{background:var(--bad-bg);color:var(--bad)}.plan-bar--ok{background:var(--ok-bg);color:var(--ok)}.plan-bar .chev{color:inherit;opacity:.7;margin-left:auto}.matrix tr.is-unplanned .name{color:var(--ink-3)}.setting-row{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.setting-row .hint{margin-top:4px}.setting-row--static{cursor:default}.t-ok{color:var(--ok)}.t-warn{color:var(--warn)}.t-bad{color:var(--bad)}.t-brand{color:var(--brand)}.mt-0{margin-top:0}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mt-20{margin-top:20px}.banner{border-radius:14px;align-items:flex-start;gap:12px;margin-bottom:16px;padding:12px 14px;font-size:14px;display:flex}.banner .lucide{flex:none;margin-top:1px}.banner__main{flex:1;min-width:0}.banner__t{font-weight:800}.banner__d{opacity:.9;margin-top:2px;font-size:13px}.banner .link{flex:none;font-size:13px}.banner--ok{background:var(--ok-bg);color:var(--ok)}.banner--ok .link{color:var(--ok)}.banner--brand{background:var(--brand-soft);color:var(--brand-ink)}.empty--card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:32px 24px}.empty--card .icon-box{border-radius:24px;width:72px;height:72px;margin-bottom:16px}.empty--card .icon-box .lucide{width:32px;height:32px}.empty--card h3{font-size:20px}.empty--card p{max-width:280px;margin:6px auto 0;font-size:14px;line-height:1.5}.empty .btn{margin-top:16px}.welcome{color:#fff;background:radial-gradient(120% 140% at 100% 0,#9a6bff 0%,#7343f0 45%,#5530d0 100%);border-radius:24px;padding:24px 20px;box-shadow:0 14px 30px #5b2fd94d}.welcome h2{letter-spacing:-.02em;font-size:24px;font-weight:800;line-height:1.15}.welcome p{opacity:.9;margin-top:8px;font-size:14px;line-height:1.5}.welcome .logo-mark{width:56px;height:56px;margin-bottom:16px}.welcome__progress{align-items:center;gap:10px;margin-top:16px;font-size:13px;font-weight:700;display:flex}.welcome__progress .bar{background:#ffffff40;flex:1}.welcome__progress .bar>span{background:#fff}.todo{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.todo>*+*{border-top:1px solid var(--line)}.todo__item{color:inherit;align-items:center;gap:12px;padding:14px 16px;text-decoration:none;display:flex}.todo__num{background:var(--surface-2);width:32px;height:32px;color:var(--ink-2);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:800;display:grid}.todo__item.is-done .todo__num{background:var(--ok-solid);color:#fff}.todo__item.is-active .todo__num{background:var(--brand);color:#fff;box-shadow:0 0 0 4px var(--brand-soft)}.todo__item.is-done .todo__t{color:var(--ink-3);text-decoration:line-through}.todo__t{font-size:15px;font-weight:700}.todo__d{color:var(--ink-2);margin-top:2px;font-size:13px}.todo__item .chev{margin-left:auto}.toast--error .lucide{color:#fca5a5}.btn[aria-busy=true]{opacity:.75;pointer-events:none}.field-error{color:var(--bad);margin-top:6px;font-size:12px;font-weight:600;display:block}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--bad)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.banner__close{width:32px;height:32px}.more{margin-top:12px}.more>summary{cursor:pointer;padding:4px;list-style:none}.more>summary::-webkit-details-marker{display:none}.skeleton{background:linear-gradient(90deg, var(--surface-2) 0%, var(--surface) 50%, var(--surface-2) 100%);background-size:200% 100%;border-radius:14px;animation:1.4s ease-in-out infinite skeleton-wave}.skeleton--title{width:45%;height:32px}.skeleton--sub{width:30%;height:16px;margin-top:8px}.skeleton--card{border-radius:20px;height:140px}.skeleton--row{height:64px;margin-top:12px}@keyframes skeleton-wave{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}
.btn,.icon-btn,.chip,.dd,.opt,.plan-bar,.fab,.todo__item,.kpi,.term,.quick__btn,a.item,button.item{transition:transform .12s,background-color .15s,box-shadow .15s,filter .15s}.count{transition:background-color .25s,color .25s,transform .25s}.bar>span{transition:width .45s cubic-bezier(.2,.8,.2,1)}.att__state{transition:background-color .15s,border-color .15s,color .15s,transform .15s}.btn.is-busy{pointer-events:none}.btn.is-busy .lucide{animation:.35s both pop}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes pop{0%{transform:scale(.7)}60%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes drop{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:no-preference){.btn:active,.icon-btn:active,.chip:active,.dd:active,.plan-bar:active,.fab:active,.todo__item:active,.kpi:active,.term:active,.quick__btn:active,a.item:active,button.item:active,.opt:active{transform:scale(.97)}.att:active{background:var(--surface-2)}.att__state.is-p,.att__state.is-u{animation:.3s cubic-bezier(.2,.8,.2,1) pop}.att.is-marked .count{animation:.3s pop}.banner{animation:.35s cubic-bezier(.2,.8,.2,1) both drop}.app>:not(.topbar):not(.tabbar):not(.footer-bar):not(.fab),.auth>*{animation:.4s cubic-bezier(.2,.8,.2,1) both rise}.app>:nth-child(2),.auth>:first-child{animation-delay:30ms}.app>:nth-child(3),.auth>:nth-child(2){animation-delay:70ms}.app>:nth-child(4),.auth>:nth-child(3){animation-delay:.11s}.app>:nth-child(5),.auth>:nth-child(4){animation-delay:.15s}.app>:nth-child(6),.auth>:nth-child(5){animation-delay:.19s}.app>:nth-child(n+7),.auth>:nth-child(n+6){animation-delay:.23s}.att-list .att{animation:.35s both rise}.att-list .att:nth-child(2){animation-delay:40ms}.att-list .att:nth-child(3){animation-delay:80ms}.att-list .att:nth-child(4){animation-delay:.12s}.att-list .att:nth-child(5){animation-delay:.16s}.att-list .att:nth-child(n+6){animation-delay:.2s}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
.tabbar .tabbar__brand,.tabbar .tabbar__group,.tabbar .tabbar__foot{display:none}@media (hover:hover) and (pointer:fine){a.item:hover,button.item:hover,.todo__item:hover{background:#f8f8fc}.item.is-active:hover,.item.is-selected:hover{background:var(--brand-soft)}.kpi:hover,.card--action:hover,a.card:hover{box-shadow:var(--shadow), 0 0 0 1.5px var(--line)}.btn--ghost:hover,.icon-btn:hover,.dd:hover,.chip:hover{background:#f8f8fc}.btn--primary:hover,.icon-btn--brand:hover,.fab:hover{background:var(--brand-strong)}.btn--soft:hover{filter:brightness(.97)}.term:hover{background:#e7e9f2}.tabbar a:hover{color:var(--ink)}.link:hover{text-decoration:underline}.att:hover{background:#fafafd}}@media (min-width:768px){.app{max-width:720px;padding-left:24px;padding-right:24px}.topbar{margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px}.tabbar{padding-left:max(8px,50% - 352px);padding-right:max(8px,50% - 352px)}.footer-bar{padding-left:max(24px,50% - 336px);padding-right:max(24px,50% - 336px)}.app .chips,.sheet .chips{margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px}.sheet{--sheet-pad:24px}.fab{right:max(24px,50% - 336px)}.toast{bottom:112px}.sheet{border-radius:24px;max-width:520px;max-height:86dvh;padding-top:20px;top:50%;bottom:auto;transform:translate(-50%,-50%);box-shadow:0 24px 64px #0b203847}.sheet__grab{display:none}.sheet__body--last{margin-bottom:24px}.sheet__footer{padding-bottom:20px}.sheet[data-state=open]{animation-name:dialog-in}.sheet[data-state=closed]{animation-name:dialog-out}@keyframes dialog-in{0%{opacity:0;transform:translate(-50%,-48%)scale(.97)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes dialog-out{0%{opacity:1;transform:translate(-50%,-50%)}to{opacity:0;transform:translate(-50%,-48%)scale(.97)}}.grid-2--wide{grid-template-columns:1fr 1fr}.opts{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}@media (min-width:1080px){:root{--sidebar:248px}.mobile-only,.tabbar a.mobile-only,.tabs button.mobile-only,.topbar>.icon-btn.mobile-only{display:none}.tabs-aside:not(.is-active){display:block}.header-action{align-items:center;gap:8px;width:auto;padding:0 16px 0 14px;display:inline-flex}.header-action__label{white-space:nowrap;font-size:14px;font-weight:700;display:inline}html:has(.tabbar){padding-left:var(--sidebar)}.app{padding-top:32px}.topbar{margin-top:-32px;margin-bottom:24px;padding-top:28px;padding-bottom:12px}body:has(.tabbar) .app{max-width:1080px;padding:32px 40px 48px}body:has(.tabbar) .topbar{margin:-32px -40px 24px;padding:28px 40px 12px}body:has(.tabbar) .page-head__logo{display:none}body:has(.tabbar) .app .chips{margin-left:-40px;margin-right:-40px;padding-left:40px;padding-right:40px}body:has(.tabbar) .toast{left:calc(50% + var(--sidebar) / 2);bottom:32px}body:has(.tabbar) .fab{bottom:32px;right:40px}.tabbar{width:var(--sidebar);border-top:0;border-right:1px solid var(--line);background:var(--surface);flex-direction:column;gap:4px;max-width:none;height:100dvh;padding:24px 16px;top:0;bottom:0;left:0;transform:none}.tabbar .tabbar__brand{background:0 0;flex:none;height:auto;margin-bottom:24px;padding:0 8px;display:block}.tabbar .tabbar__brand:before{content:none}.tabbar__brand img{width:auto;height:36px}.tabbar a{border-radius:12px;flex-direction:row;flex:none;justify-content:flex-start;gap:12px;height:48px;padding:0 14px;font-size:15px}.tabbar a.is-active{background:var(--brand-soft);color:var(--brand-ink)}.tabbar a.is-active:before{border-radius:0 4px 4px 0;width:4px;height:auto;top:12px;bottom:12px;left:-16px}.tabbar .pip{top:12px;left:30px}.tabbar .tabbar__group{border-top:1px solid var(--line);flex-direction:column;gap:4px;margin-top:20px;padding-top:16px;display:flex}.tabbar__label{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;padding:0 14px 6px;font-size:11px;font-weight:700}.tabbar__group a{height:42px;font-size:14px}.tabbar .tabbar__foot{margin-top:auto;display:block}.tabbar__signout{width:100%;height:44px;color:var(--ink-3);text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;padding:0 14px;font-size:14px;font-weight:700;display:flex}.tabbar__signout:hover{background:var(--surface-2);color:var(--ink)}.tabbar__signout .lucide{width:20px;height:20px}.split{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:32px;display:grid}.split--even{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}body:has(.tabbar) .topbar__title h1{font-size:24px}body:has(.tabbar) .topbar__title .sub{font-size:14px}body:has(.tabbar) .topbar .avatar{width:48px;height:48px;font-size:16px}.split--profile{grid-template-rows:auto 1fr;grid-template-columns:minmax(360px,400px) minmax(0,1fr);gap:0 40px}.split--profile>.tabs-wrap{grid-area:1/2/span 2}.split--profile>.tabs-aside{grid-area:2/1;margin-top:12px}.split--profile .tabs,.split>*>.section-head:first-child{margin-top:0}.split__aside{position:sticky;top:24px}.page-title{font-size:32px}.kpis--wide{grid-template-columns:repeat(4,1fr)}.list--cols{grid-template-columns:1fr 1fr;column-gap:0;display:grid}.list--cols>*+*{border-top:0}.list--cols>*{border-bottom:1px solid var(--line)}.list--cols>:nth-child(odd){border-right:1px solid var(--line)}.week{grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.week>*+*{border-top:0;border-left:1px solid var(--line)}.week .day{flex-direction:column;gap:12px;min-height:220px;padding:16px 12px}.week .day__label{text-align:left;align-items:baseline;gap:6px;width:auto;padding:0 4px;display:flex}.week .term{flex-wrap:wrap;row-gap:2px;padding:8px 10px}.week .term__name{flex-basis:100%;order:3}.matrix .name{max-width:220px}.matrix th,.matrix td{padding-left:8px;padding-right:8px}}@media (min-width:1440px){body:has(.tabbar) .app{max-width:1200px}}

