@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&family=DM+Mono:wght@400;500&display=swap";
:root{--bg:#f6f5f2;--panel:#fff;--panel2:#f0eeea;--panel3:#e9e6e1;--line:#e6e3dd;--line-soft:#efedea;--ink:#191512;--dim:#5d5751;--dimmer:#6f6862;--volt:#ffc531;--volt-dim:#f0a800;--volt-deep:#8a5e00;--volt-tint:#fff4d4;--grow:#00b87c;--grow-tint:#e2f7ef;--grow-ink:#067a52;--blue:#2f80ed;--blue-tint:#e4edfd;--blue-ink:#1a5fbf;--ease-c:#ff8a00;--ease-tint:#fff0dc;--ease-ink:#a35400;--red:#ff4d4f;--red-tint:#ffe9e9;--red-ink:#c62a2c;--sh-1:0 1px 2px #1915120f;--sh-2:0 2px 4px #1915120d, 0 8px 24px #19151214;--sh-sun:0 2px 8px #f0a80047;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:40px;--t-2xs:10px;--t-xs:11px;--t-sm:12px;--t-md:14px;--t-lg:17px;--t-xl:21px;--t-2xl:26px;--t-hero:33px;--lh-tight:1.15;--lh-snug:1.3;--lh-body:1.5;--tr-display:-.025em;--tr-title:-.015em;--tr-label:.02em;--r-sm:8px;--r-md:10px;--r-lg:14px;--r-pill:999px;--ease:cubic-bezier(.2,.8,.3,1)}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:var(--t-md);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;margin:0}h1,h2,.display,.t-display{letter-spacing:var(--tr-display);font-weight:700;line-height:var(--lh-tight);text-wrap:balance;text-transform:none}h1,.t-display{font-size:var(--t-hero)}h2{font-size:var(--t-2xl);position:relative}.t-title{font-size:var(--t-xl);letter-spacing:var(--tr-title);font-weight:700;line-height:var(--lh-tight)}.t-head{font-size:var(--t-lg);letter-spacing:var(--tr-title);font-weight:600;line-height:var(--lh-snug)}.t-body{font-size:var(--t-md);font-weight:400;line-height:var(--lh-body)}.t-strong{font-size:var(--t-md);font-weight:600;line-height:var(--lh-body)}.t-sec{font-size:var(--t-sm);font-weight:400;line-height:var(--lh-body);color:var(--dim)}.t-label{font-size:var(--t-xs);letter-spacing:var(--tr-label);color:var(--dimmer);font-weight:600}.mono,.t-num{font-variant-numeric:tabular-nums}.mono{font-family:DM Mono,monospace}.t-num{letter-spacing:0;font-weight:600}.day-title{margin:0 0 var(--s5);font-weight:700;font-size:var(--t-2xl);letter-spacing:var(--tr-display);line-height:var(--lh-tight);color:var(--ink)}::selection{background:var(--volt);color:#191512}:focus-visible{outline:3px solid var(--volt-dim);outline-offset:2px}.app-hdr{z-index:50;background:var(--panel);border-bottom:1px solid var(--line);position:sticky;top:0}.tab{background:var(--panel2);color:var(--dim);border-radius:var(--r-pill);font-family:inherit;font-size:var(--t-sm);letter-spacing:0;cursor:pointer;transition:background .16s var(--ease), color .16s var(--ease);border:0;padding:6px 14px;font-weight:600}.tab:hover{color:var(--ink);background:var(--panel3)}.tab.on,.tab[data-state=active]{background:var(--ink);color:var(--panel);font-weight:600}.card{background:var(--panel);border-radius:var(--r-lg);box-shadow:var(--sh-1);transition:box-shadow .2s var(--ease);border:0;border:1px solid var(--line)}.btn{background:var(--volt);color:#191512;border-radius:var(--r-pill);font-family:inherit;font-size:var(--t-md);letter-spacing:0;text-transform:none;cursor:pointer;box-shadow:var(--sh-sun);transition:transform .16s var(--ease), box-shadow .16s var(--ease), background .16s var(--ease);border:0;padding:9px 18px;font-weight:600;line-height:1.2}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px #f0a80066}.btn:active{box-shadow:var(--sh-1);transform:translateY(0)}.btn:disabled{cursor:not-allowed;background:var(--panel3);color:var(--dimmer);box-shadow:none;transform:none}.btn.ghost{background:var(--panel2);color:var(--ink);box-shadow:none}.btn.ghost:hover{background:var(--panel3);box-shadow:var(--sh-1)}.btn.danger{background:var(--red-tint);color:var(--red-ink);box-shadow:none}.btn.danger:hover{box-shadow:var(--sh-1);background:#ffd4d4}.btn.xs{padding:var(--s1) var(--s3);font-size:var(--t-sm);font-weight:600;line-height:1.6}.inp{background:var(--panel);border:1px solid var(--line);color:var(--ink);border-radius:var(--r-sm);font-family:inherit;font-size:var(--t-md);width:100%;transition:border-color .16s var(--ease), background .16s var(--ease);padding:8px 10px;font-weight:500;line-height:1.4}.inp::placeholder{color:var(--dimmer);font-weight:400}.inp:hover{border-color:var(--dimmer)}.inp:focus{border-color:var(--volt-dim);box-shadow:0 0 0 3px var(--volt-tint);outline:none}.inp.mono{font-family:DM Mono,monospace;font-size:var(--t-md);font-weight:500}select.inp{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--dim) 50%), linear-gradient(135deg, var(--dim) 50%, transparent 50%);background-position:calc(100% - 16px),calc(100% - 11px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:34px}input[type=checkbox]{accent-color:var(--volt-dim);cursor:pointer;width:18px;height:18px}input[type=number]{font-variant-numeric:tabular-nums}.lbl{font-size:var(--t-xs);letter-spacing:var(--tr-label);color:var(--dimmer);margin-bottom:6px;font-weight:600;display:block}th.lbl,td.lbl{margin-bottom:0;display:table-cell}.chip{font-family:inherit;font-size:var(--t-sm);text-transform:none;letter-spacing:0;border-radius:var(--r-pill);background:var(--panel2);color:var(--dim);border:0;padding:2px 8px;font-weight:500;display:inline-block}.chip.volt{background:var(--volt-tint);color:var(--volt-deep);font-weight:600}.chip.lg{font-size:var(--t-md);padding:var(--s2) var(--s4)}.exrow{transition:background .15s var(--ease)}.exrow:hover{background:var(--panel2)}.tbl{border-collapse:collapse;width:100%}.tbl thead tr{border-bottom:1px solid var(--line)}.tbl th{font-family:inherit;font-size:var(--t-xs);letter-spacing:var(--tr-label);color:var(--dimmer);white-space:nowrap;text-align:left;padding:var(--s2) var(--s3);font-weight:600}.tbl td{padding:var(--s3);font-size:var(--t-md)}.tbl tbody tr{border-bottom:1px solid var(--line-soft)}.tbl .num{text-align:center;font-variant-numeric:tabular-nums;font-family:DM Mono,monospace}.tbl .c{text-align:center}.tbl .muted{color:var(--dim)}.g-letter{border-radius:var(--r-sm);background:var(--volt-tint);width:26px;height:26px;color:var(--volt-deep);font-family:inherit;font-size:var(--t-xs);justify-content:center;align-items:center;font-weight:700;display:inline-flex}.tbl.dense th{padding:var(--s2) var(--s1)}.tbl.dense td{padding:var(--s1);vertical-align:middle;font-size:var(--t-md)}.tbl.dense .inp{padding:var(--s2);font-size:var(--t-md)}.tbl-sect td{padding:var(--s5) var(--s3) var(--s2);border-bottom:0}.tbl-sect .sect-name{font-size:var(--t-lg);color:var(--ink);letter-spacing:var(--tr-title);font-weight:700}.tbl-sect .sect-meta{font-family:DM Mono,monospace;font-size:var(--t-sm);color:var(--dimmer);margin-left:var(--s2)}.fadein{animation:fi .38s var(--ease) both}@keyframes fi{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}[data-radix-dialog-content][data-state=open]{animation:drawer-in .25s var(--ease)}[data-radix-dialog-content][data-state=closed]{animation:drawer-out .25s var(--ease)}@keyframes drawer-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes drawer-out{0%{transform:translate(0)}to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.btn:hover,.btn:active{transform:none}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--panel3);border-radius:var(--r-pill);background-clip:content-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--dimmer);background-clip:content-box;border:3px solid #0000}.main-wrap{max-width:1180px;margin:0 auto;padding:20px 20px 56px}.hdr-in{justify-content:space-between;align-items:center;gap:14px;max-width:1180px;margin:0 auto;padding:14px 28px;display:flex}.g-plans{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:16px;display:grid}.g-anag{grid-template-columns:2fr 1.4fr 1fr 1fr;gap:14px;margin-bottom:14px;display:grid}.g-prog{grid-template-columns:1fr 1fr 4fr;gap:14px;display:grid}.g-stats{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px;display:grid}.g-charts{grid-template-columns:1fr 1fr;gap:16px;display:grid}.g-sets{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.pv-head{padding:30px 34px}.pv-day{padding:24px 34px}.pv-foot{flex-wrap:wrap;justify-content:space-between;gap:10px;padding:16px 34px;display:flex}.tscroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.nav-desktop{flex-wrap:wrap;gap:6px;display:flex}.nav-burger{display:none}.burger-icon{cursor:pointer;flex-direction:column;gap:5px;display:flex}.burger-icon span{background:var(--ink);width:22px;height:2px;transition:transform .2s var(--ease), opacity .2s var(--ease);transform-origin:50%;border-radius:2px;display:block}.burger-icon.open span:first-child{transform:translateY(7px)rotate(45deg)}.burger-icon.open span:nth-child(2){opacity:0}.burger-icon.open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}@media (max-width:820px){.main-wrap{padding:22px 16px 56px}.hdr-in{padding:12px 16px}.g-anag,.g-prog,.g-stats{grid-template-columns:1fr 1fr}.g-charts{grid-template-columns:1fr}.pv-head{padding:20px 16px}.pv-day{padding:18px 16px}.pv-foot{padding:14px 16px}h2{font-size:32px!important}}@media (max-width:640px){.nav-desktop{display:none}.nav-burger{cursor:pointer;background:0 0;border:none;align-items:center;padding:8px;display:flex}.main-wrap{padding:18px 12px 48px}.hdr-in{padding:10px 14px}.g-anag,.g-prog{grid-template-columns:1fr}.g-stats,.g-sets{grid-template-columns:1fr 1fr}.g-charts{grid-template-columns:1fr}.tab{font-size:var(--t-sm);padding:8px 14px}.btn{font-size:var(--t-md);padding:12px 18px}.card{border-radius:var(--r-md)}h2{font-size:28px!important}.pv-head{padding:16px 14px}.pv-day{padding:14px}.pv-foot{padding:12px 14px}}@media (max-width:380px){.main-wrap{padding:14px 10px 40px}.hdr-in{padding:10px}.g-stats{grid-template-columns:1fr}h2{font-size:24px!important}}[data-radix-select-viewport] [data-highlighted]{background:var(--panel2)}[data-radix-select-viewport] [data-state=checked]{font-weight:600}
