.shell{grid-template-columns:var(--rail) minmax(0, 1fr);height:100dvh;display:grid;overflow:hidden}.rail{background:var(--bg-grain);border-right:1px solid var(--line);z-index:30;flex-direction:column;min-height:0;display:flex;position:relative}.brand{align-items:center;gap:10px;min-height:60px;padding:16px 14px 12px;display:flex}.brand-link{color:inherit;border-radius:var(--r-sm);flex:1;align-items:center;gap:10px;min-width:0;text-decoration:none;display:flex}.brand-link:hover{opacity:.85}.brand .mark{background:var(--brand);width:30px;height:30px;color:var(--on-brand);box-shadow:var(--shadow-1);border-radius:9px;flex:none;place-items:center;display:grid}.brand .nm{font-family:var(--font-display);letter-spacing:-.03em;white-space:nowrap;font-size:16px;font-weight:800}.brand .nm span{color:var(--text-3);font-weight:400}.nav{flex:1;min-height:0;padding:4px 10px 12px;overflow-y:auto}.nav-grp{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);padding:16px 8px 7px;font-size:10px}.nav a{border-radius:var(--r-sm);height:34px;color:var(--text-2);cursor:pointer;transition:background .14s var(--ease), color .14s var(--ease);align-items:center;gap:10px;margin-bottom:2px;padding:0 9px;font-size:13.5px;font-weight:500;text-decoration:none;display:flex;position:relative}.nav a:hover{background:var(--surface-3);color:var(--text)}.nav a.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-1)}.nav a.on:before{content:"";background:var(--mc,var(--brand));border-radius:0 3px 3px 0;width:3px;height:17px;position:absolute;top:50%;left:-10px;transform:translateY(-50%)}.nav a .ic{color:var(--mc,var(--text-3))}.nav a.on .ic{color:var(--mc,var(--brand))}.nav a .badge{font-family:var(--font-mono);background:var(--surface-3);border:1px solid var(--line);color:var(--text-2);border-radius:99px;place-items:center;min-width:20px;height:18px;margin-left:auto;padding:0 6px;font-size:10.5px;display:grid}.rail-foot{border-top:1px solid var(--line);align-items:center;gap:8px;padding:9px 10px;display:flex}.rail-foot .who{flex:1;min-width:0}.rail-foot .who .n{white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:600;overflow:hidden}.rail-foot .who .h{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}@media (min-width:901px){.shell.rail-collapsed{--rail:78px}.rail-collapsed .brand{justify-content:center;padding:16px 0 12px}.rail-collapsed .brand-link{flex:none;justify-content:center}.rail-collapsed .brand .nm{display:none}.rail-collapsed .nav{padding:4px 8px 12px}.rail-collapsed .nav-grp{display:none}.rail-collapsed .nav a{text-align:center;flex-direction:column;justify-content:center;gap:3px;height:auto;padding:8px 2px}.rail-collapsed .nav a .label{font-size:9.5px;font-weight:500;line-height:1.15}.rail-collapsed .nav a.on:before{height:14px;left:-8px}.rail-collapsed .rail-foot{justify-content:center;padding:9px 0}.rail-collapsed .rail-foot .who{display:none}}.main{background:var(--bg);flex-direction:column;min-width:0;min-height:0;display:flex}.top{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--bg) 82%, transparent);backdrop-filter:blur(12px);z-index:20;flex:none;align-items:center;gap:10px;height:60px;padding:0 16px;display:flex;position:sticky;top:0}.searchbox{border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--line);max-width:520px;height:36px;color:var(--text-3);cursor:pointer;transition:.15s var(--ease);flex:1;align-items:center;gap:9px;padding:0 11px;display:flex}.searchbox:hover{border-color:var(--line-strong);color:var(--text-2)}.searchbox>span:first-of-type{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.searchbox .kbd{flex:none;margin-left:auto}.kbd{font-family:var(--font-mono);background:var(--surface-2);border:1px solid var(--line);color:var(--text-3);white-space:nowrap;border-radius:5px;padding:2px 6px;font-size:10.5px}.top .spacer{flex:1}.langbtn .code{font-family:var(--font-mono);letter-spacing:.06em;font-size:11.5px}.scroll{scroll-behavior:smooth;flex:1;min-height:0;overflow-y:auto}.wrap{max-width:1180px;margin:0 auto;padding:22px 16px 80px}.wrap.wide{max-width:1500px}.page-h{flex-wrap:wrap;align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.page-h .txt{flex:1;min-width:0}.page-h .sub{color:var(--text-2);margin-top:3px;font-size:13.5px}.page-h .actions{flex-wrap:wrap;gap:8px;display:flex}.hero{border-radius:var(--r-xl);background:linear-gradient(135deg, color-mix(in srgb, var(--brand) 12%, var(--surface)), var(--surface) 58%);border:1px solid var(--line);box-shadow:var(--shadow-1);margin-bottom:16px;padding:22px;position:relative;overflow:hidden}.hero .row{flex-wrap:wrap;align-items:flex-start;gap:18px;display:flex;position:relative}.hero .greet{flex:1;min-width:260px}.hero h1{margin:6px 0 8px}.hero .stats{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);min-width:96px;padding:9px 13px}.stat .n{font-family:var(--font-display);letter-spacing:-.03em;font-size:22px;font-weight:800;line-height:1.1}.stat .l{color:var(--text-2);margin-top:1px;font-size:11.5px}.stat[data-m] .n{color:var(--mc)}.fin-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.fin-stat{border-radius:var(--r-lg);background:color-mix(in srgb, var(--mc) 6%, var(--surface));border:1px solid color-mix(in srgb, var(--mc) 22%, var(--line));box-shadow:var(--shadow-1);padding:15px 16px 13px;position:relative;overflow:hidden}.fin-stat:before{content:"";background:var(--mc);width:3px;position:absolute;top:0;bottom:0;left:0}.fin-stat .n{font-family:var(--font-display);letter-spacing:-.03em;color:var(--mc);white-space:nowrap;text-overflow:ellipsis;font-size:max(18px,min(2.2vw,25px));font-weight:800;line-height:1.1;overflow:hidden}.fin-stat .l{color:var(--text-2);margin-top:4px;font-size:12px}@media (max-width:1080px){.fin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:420px){.fin-stats{grid-template-columns:1fr}}.web{flex:none;width:270px}.web svg{width:100%;height:auto;display:block}.web .lnk{stroke:var(--line-strong);stroke-width:1.2px;fill:none;stroke-dasharray:3 4}.web .lnk.live{stroke:var(--brand);stroke-width:1.6px;animation:2.4s linear infinite dash}@keyframes dash{to{stroke-dashoffset:-28px}}.web .nd circle{stroke:var(--surface);stroke-width:2px}.web .nd text{font-family:var(--font-mono);fill:var(--text-2);text-anchor:middle;font-size:6.4px}.row-item{border-bottom:1px solid var(--line);transition:background .14s var(--ease);align-items:center;gap:11px;padding:11px 16px;display:flex}.row-item:last-child{border-bottom:0}.row-item:hover{background:var(--surface-2)}.row-item .body{flex:1;min-width:0}.row-item .ttl{flex-wrap:wrap;align-items:center;gap:8px;font-size:13.8px;font-weight:500;display:flex}.row-item .meta{color:var(--text-3);flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;font-size:11.5px;display:flex}.row-item .end{flex:none;align-items:center;gap:8px;margin-left:auto;display:flex}.row-item.done .ttl{color:var(--text-3);text-decoration:line-through}.row-item .tags{background:0 0;border:0;flex-wrap:wrap;gap:5px;min-height:0;padding:0;display:inline-flex}.due-chip{font-family:var(--font-mono);font-size:11px}.section-count{margin-left:auto}.empty{text-align:center;color:var(--text-2);flex-direction:column;align-items:center;gap:8px;padding:44px 20px;display:flex}.empty .empty-ico{border-radius:var(--r-lg);background:color-mix(in srgb, var(--mc,var(--brand)) 13%, transparent);width:52px;height:52px;color:var(--mc,var(--brand));place-items:center;margin-bottom:4px;display:grid}.empty p{color:var(--text-3);max-width:340px;margin:0 auto;font-size:12.5px}.dash-main{grid-column:span 2;min-width:0}.dash-side{min-width:0}.rail-close,.rail-scrim{display:none}@media (max-width:1080px){.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.web{display:none}}@media (max-width:900px){.shell{grid-template-columns:1fr}.rail{width:min(85vw,300px);transition:transform .25s var(--ease);z-index:130;position:fixed;top:0;bottom:0;left:0;transform:translate(-102%);box-shadow:0 0 40px rgba(0,0,0,.35)}body.rail-open .rail{transform:none}.rail-scrim{z-index:120;opacity:0;pointer-events:none;background:rgba(5,16,12,.5);transition:opacity .25s;display:block;position:fixed;top:0;bottom:0;left:0;right:0}body.rail-open .rail-scrim{opacity:1;pointer-events:auto}.rail-close{background:var(--surface-3);width:40px;height:40px;color:var(--text-2);cursor:pointer;border:none;border-radius:9px;justify-content:center;align-items:center;margin-left:auto;display:inline-flex}.nav a{height:44px;font-size:14.5px}.nav{padding-bottom:max(12px, env(safe-area-inset-bottom))}.grid,.g2,.g3,.g4{grid-template-columns:1fr!important}.dash-main,.dash-side{grid-column:auto}.form-grid{grid-template-columns:1fr}.wrap,.wrap.wide{padding:14px 12px 88px}.hide-sm{display:none!important}.top{gap:6px;padding:0 10px}.searchbox{flex:none;justify-content:center;width:40px;height:40px;padding:0}.searchbox>span{display:none}.task-row{flex-wrap:wrap}.task-row .end{justify-content:flex-end;gap:4px;width:100%;margin-left:0;padding-top:8px}.task-row .acts{gap:4px}.task-row .acts .btn.icon.sm,.row-item .end .btn.icon.sm{width:38px;height:38px}.hero{border-radius:var(--r-lg);padding:16px}.hero .row{gap:12px}.hero .greet{min-width:0}.hero h1{font-size:1.55rem}.hero .stats{gap:7px}.stat{flex:calc(50% - 4px);min-width:0;padding:9px 11px}.stat .n{font-size:20px}.page-h h1{font-size:1.6rem}.page-h{flex-direction:column;align-items:stretch}.page-h .actions{width:100%}.main,.scroll{overflow-x:hidden}}.menu-btn{display:none}@media (max-width:900px){.menu-btn{display:inline-flex}}.err-boundary{padding:48px 16px}.bell{position:relative}.bell-badge{background:var(--danger);color:#fff;text-align:center;min-width:15px;height:15px;box-shadow:0 0 0 2px var(--surface);border-radius:99px;padding:0 3px;font-size:9.5px;font-weight:700;line-height:15px;position:absolute;top:2px;right:2px}.notif-row{border-bottom:1px solid var(--line);cursor:pointer;transition:background .12s var(--ease);gap:11px;padding:11px 16px;display:flex}.notif-row:last-child{border-bottom:0}.notif-row:hover{background:var(--surface-2)}.notif-row.unread{background:color-mix(in srgb, var(--brand) 5%, transparent)}.notif-ico{border-radius:var(--r-sm);background:color-mix(in srgb, var(--mc,var(--brand)) 13%, transparent);width:30px;height:30px;color:var(--mc,var(--brand));flex:none;place-items:center;display:grid}.notif-row .body{flex:1;min-width:0}.notif-row .ttl{font-size:13.5px;font-weight:500}.notif-row.unread .ttl{font-weight:650}.notif-row .meta{color:var(--text-3);margin-top:2px;font-size:11.5px}.notif-dot{background:var(--brand);border-radius:99px;flex:none;align-self:center;width:8px;height:8px}.task-row{padding-left:18px;position:relative}.task-row:before{content:"";width:3px;transition:background .14s var(--ease);background:0 0;border-radius:3px;position:absolute;top:8px;bottom:8px;left:0}.task-row.pri-high:before{background:var(--warn)}.task-row.done:before{background:var(--ok)}.task-row .acts{align-items:center;gap:2px;display:flex}@media (hover:hover){.task-row .acts{opacity:0;transition:opacity .14s var(--ease), transform .14s var(--ease);transform:translate(4px)}.task-row:hover .acts,.task-row:focus-within .acts{opacity:1;transform:none}}.btn.icon.sm.danger{color:var(--text-3)}.btn.icon.sm.danger:hover{color:var(--danger);background:var(--danger-soft)}.notes-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));align-items:start;gap:14px;display:grid}.note-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-1);transition:border-color .12s var(--ease), box-shadow .12s var(--ease);flex-direction:column;gap:8px;padding:15px 16px;display:flex}.note-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-2)}.note-card.pinned{border-color:color-mix(in srgb, var(--m-notes) 40%, var(--line));background:color-mix(in srgb, var(--m-notes) 5%, var(--surface))}.note-top{align-items:flex-start;gap:8px;display:flex}.note-top h4{word-break:break-word;flex:1;min-width:0;font-size:14.5px;font-weight:650;line-height:1.35}.note-body{color:var(--text-2);white-space:pre-wrap;word-break:break-word;max-height:9.5em;margin:0;font-size:13px;line-height:1.5;overflow:hidden}.note-foot{justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:4px;display:flex}.note-tags{flex-wrap:wrap;gap:5px;min-width:0;display:flex}.note-acts{flex:none;gap:2px;display:flex}@media (hover:hover){.note-acts{opacity:0;transition:opacity .12s var(--ease)}.note-card:hover .note-acts,.note-card:focus-within .note-acts{opacity:1}}.kb-board{grid-template-columns:repeat(3,1fr);align-items:start;gap:14px;display:grid}.kb-col{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);min-height:120px;transition:background .12s var(--ease), border-color .12s var(--ease);padding:10px}.kb-col.over{border-color:var(--brand);background:color-mix(in srgb, var(--brand) 7%, var(--surface-2))}.kb-col-h{align-items:center;gap:8px;padding:4px 6px 10px;display:flex}.kb-dot{border-radius:3px;flex:none;width:9px;height:9px}.kb-title{font-size:13px;font-weight:650}.kb-col-h .chip{margin-left:auto}.kb-list{flex-direction:column;gap:8px;min-height:40px;max-height:66vh;padding-right:2px;display:flex;overflow-y:auto}.kb-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);box-shadow:var(--shadow-1);cursor:grab;transition:border-color .12s var(--ease), box-shadow .12s var(--ease);padding:10px 11px}.kb-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-2)}.kb-card:active{cursor:grabbing}.kb-card.locked{cursor:default;opacity:.85}.kb-card-t{word-break:break-word;font-size:13.5px;font-weight:500;line-height:1.35}.kb-card-m{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.kb-card-m .kb-assignee{margin-left:auto}.kb-empty{text-align:center;color:var(--text-3);border:1px dashed var(--line);border-radius:var(--r-sm);padding:14px 6px;font-size:12px}@media (max-width:900px){.kb-board{grid-template-columns:1fr}}.cal-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.cal-nav{align-items:center;gap:8px;display:flex}.cal-month{font-family:var(--font-display,inherit);text-align:center;text-transform:capitalize;min-width:9.5em;font-size:16px;font-weight:650}.cal-legend{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.cal-leg{color:var(--text-3);align-items:center;gap:6px;font-size:11.5px;display:inline-flex}.cal-leg i{border-radius:3px;width:9px;height:9px;display:inline-block}.cal-grid{grid-template-columns:repeat(7,1fr);display:grid}.cal-wd{color:var(--text-3);text-align:center;text-transform:capitalize;border-bottom:1px solid var(--line);padding:8px 6px;font-size:11px;font-weight:600}.cal-cell{text-align:left;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);cursor:pointer;min-height:92px;transition:background .12s var(--ease);font:inherit;color:inherit;background:0 0;flex-direction:column;gap:3px;padding:6px;display:flex;position:relative}.cal-cell:nth-child(7n+7){border-right:0}.cal-cell:hover{background:var(--surface-2)}.cal-cell.out{background:color-mix(in srgb, var(--surface-2) 55%, transparent)}.cal-cell.out .cal-day{color:var(--text-3);opacity:.6}.cal-day{border-radius:6px;place-items:center;width:24px;height:22px;font-size:12.5px;font-weight:600;display:grid}.cal-cell.today .cal-day{background:var(--m-calendar);color:#fff}.cal-items{flex-direction:column;gap:3px;min-width:0;display:flex}.cal-pill{text-overflow:ellipsis;white-space:nowrap;color:var(--mc);background:color-mix(in srgb, var(--mc) 13%, transparent);border-left:2px solid var(--mc);border-radius:5px;padding:1px 6px;font-size:11px;line-height:1.5;display:block;overflow:hidden}.cal-pill b{font-weight:700;font-family:var(--font-mono);font-size:10px}.cal-pill.done{opacity:.5;text-decoration:line-through}.cal-more{color:var(--text-3);padding-left:4px;font-size:10.5px}.cal-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (max-width:900px){.cal-scroll{margin:0 -1px}.cal-grid{min-width:560px}.cal-cell{min-height:74px;padding:5px}.cal-pill{font-size:10.5px}}.section-lab{letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);margin:18px 2px 10px;font-size:11px;font-weight:600}.section-lab:first-of-type{margin-top:4px}.banner-info{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-2);margin-bottom:6px;padding:10px 14px;font-size:13px}.apps-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));align-items:start;gap:14px;display:grid}.app-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-1);transition:border-color .12s var(--ease), box-shadow .12s var(--ease), opacity .12s var(--ease);flex-direction:column;gap:11px;padding:15px 16px;display:flex}.app-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-2)}.app-card.off{opacity:.62}.app-head{align-items:center;gap:11px;display:flex}.app-ico{width:38px;height:38px;color:var(--mc,var(--brand));background:color-mix(in srgb, var(--mc,var(--brand)) 13%, var(--surface));border:1px solid color-mix(in srgb, var(--mc,var(--brand)) 26%, var(--line));border-radius:10px;flex:none;place-items:center;display:grid}.app-name{min-width:0}.app-name .nm{color:var(--text);font-size:14px;font-weight:600}.app-name .rt{font-family:var(--font-mono);color:var(--text-3);font-size:11px}.app-head .sw{margin-left:auto}.app-core{color:var(--text-3);background:var(--surface-2);border:1px solid var(--line);border-radius:99px;align-items:center;gap:4px;margin-left:auto;padding:3px 9px;font-size:11px;display:inline-flex}.app-desc{color:var(--text-2);margin:0;font-size:12.5px;line-height:1.45}.app-caps{flex-direction:column;gap:6px;display:flex}.app-caps .lab{letter-spacing:.03em;text-transform:uppercase;color:var(--text-3);font-size:10.5px;font-weight:600}.caps{flex-wrap:wrap;gap:6px;display:flex}.cap{border:1px solid var(--line);background:var(--surface-2);color:var(--text-3);cursor:pointer;transition:.12s var(--ease);border-radius:99px;padding:3px 10px;font-size:12px}.cap:hover:not(:disabled){border-color:var(--line-strong);color:var(--text-2)}.cap.on{background:color-mix(in srgb, var(--mc,var(--brand)) 14%, var(--surface));border-color:color-mix(in srgb, var(--mc,var(--brand)) 40%, var(--line));color:var(--text)}.cap:disabled{cursor:default;opacity:.6}.chip.repeat{color:var(--text-2);align-items:center;gap:4px;display:inline-flex}.chip.repeat svg{opacity:.8}.remember{color:var(--text-2);cursor:pointer;user-select:none;align-items:center;gap:8px;font-size:13px;display:inline-flex}.remember input{width:15px;height:15px;accent-color:var(--brand);cursor:pointer}.budget-row .body{min-width:0}.bud-bar{background:var(--surface-3);border-radius:99px;height:6px;margin-top:7px;overflow:hidden}.bud-fill{background:var(--m-life);height:100%;transition:width .3s var(--ease);border-radius:99px}.bud-fill.over{background:var(--danger)}.budget-add{border-top:1px solid var(--line);gap:7px;padding:11px 16px;display:flex}.budget-add .inp.sm{padding:6px 9px;font-size:12.5px}.budget-add .inp.sm:first-child{flex:1}.budget-add .inp.sm:nth-child(2){width:84px}.task-row.subtask{background:color-mix(in srgb, var(--surface-2) 55%, transparent);padding-left:34px}.task-row.subtask .ttl{font-size:13px}.board-tabs{flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:14px;display:flex}.board-tab{border:1px solid var(--line);background:var(--surface);color:var(--text-2);cursor:pointer;transition:.12s var(--ease);border-radius:99px;align-items:center;gap:6px;padding:5px 12px;font-size:12.5px;display:inline-flex}.board-tab:hover{border-color:var(--line-strong);color:var(--text)}.board-tab.on,.board-tab>button.on{background:var(--surface-3);color:var(--text);border-color:var(--line-strong)}.board-tab.add{color:var(--text-3);border-style:dashed}.board-tab>button{color:inherit;cursor:pointer;font-size:inherit;background:0 0;border:none;align-items:center;gap:6px;padding:0;display:inline-flex}span.board-tab{padding:0;overflow:hidden}span.board-tab>button:first-child{padding:5px 4px 5px 12px}.board-x{color:var(--text-3);padding:5px 9px 5px 4px!important}.board-x:hover{color:var(--danger)}.board-dot{border-radius:99px;flex:none;width:7px;height:7px}.board-input{width:150px}.cal-grid.week .cal-cell{min-height:200px}.cal-grid.week .cal-pill{font-size:11px}.linked{border-top:1px solid var(--line);margin-top:6px;padding-top:12px}.linked-h{letter-spacing:.03em;text-transform:uppercase;color:var(--text-3);align-items:center;gap:6px;margin-bottom:8px;font-size:11px;font-weight:600;display:flex}.linked-list{flex-wrap:wrap;gap:6px;display:flex}.link-chip{border:1px solid var(--line);border-radius:99px;align-items:center;font-size:12px;display:inline-flex;overflow:hidden}.link-chip>button:first-child{color:var(--text-2);cursor:pointer;font-size:inherit;background:0 0;border:none;padding:4px 4px 4px 11px}.link-chip.add{color:var(--text-3);cursor:pointer;background:0 0;border-style:dashed;gap:4px;padding:4px 11px}.link-x{color:var(--text-3);cursor:pointer;background:0 0;border:none;padding:4px 9px 4px 4px}.link-x:hover{color:var(--danger)}.hh-menu{flex-direction:column;display:flex}.hh-menu>button{justify-content:space-between;align-items:center;gap:8px;display:flex}.hh-menu .hh-nm{text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1;overflow:hidden}.hh-menu>button.hh-cur{color:var(--brand);font-weight:600}.hh-add{gap:6px;padding:6px 8px;display:flex}.hh-add .inp{flex:1;min-width:0}.dock-fab{z-index:90;background:var(--brand);width:56px;height:56px;color:var(--on-brand);box-shadow:var(--shadow-2);cursor:pointer;border:none;border-radius:50%;place-items:center;transition:transform .12s,filter .12s;display:grid;position:fixed;bottom:20px;right:20px}.dock-fab:hover{filter:brightness(1.06);transform:translateY(-2px)}.dock-badge{background:var(--danger);color:#fff;text-align:center;min-width:20px;height:20px;box-shadow:0 0 0 2px var(--bg);border-radius:99px;padding:0 5px;font-size:11px;font-weight:700;line-height:20px;position:absolute;top:-2px;right:-2px}.dock-panel{z-index:95;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);width:min(380px,100vw - 24px);height:min(560px,100dvh - 90px);box-shadow:var(--shadow-2);flex-direction:column;display:flex;position:fixed;bottom:20px;right:20px;overflow:hidden}.dock-head{border-bottom:1px solid var(--line);background:var(--surface-2);align-items:center;gap:8px;padding:8px 10px;display:flex}.dock-tabs{flex:1}.dock-close{width:30px;height:30px;color:var(--text-3);cursor:pointer;background:0 0;border:none;border-radius:7px;flex:none;justify-content:center;align-items:center;display:inline-flex}.dock-close:hover{background:var(--surface-3);color:var(--text-1)}.dock-body{flex-direction:column;flex:1;min-height:0;display:flex}.dock-thread{flex-direction:column;flex:1;gap:10px;padding:12px;display:flex;overflow-y:auto}.dock-input{border-top:1px solid var(--line);gap:8px;padding:10px;display:flex}.dock-input .inp{flex:1;min-width:0}@media (max-width:560px){.dock-panel{width:auto;height:min(70dvh,560px);bottom:12px;left:12px;right:12px}.dock-fab{bottom:16px;right:16px}}.up-list{flex-direction:column;display:flex}.up-row{border-left:3px solid transparent;align-items:center;gap:12px;padding:11px 16px;text-decoration:none;transition:background .12s,border-color .12s;display:flex;position:relative}.up-row+.up-row{border-top:1px solid var(--line)}.up-row:hover{background:color-mix(in srgb, var(--mc) 7%, var(--surface));border-left-color:var(--mc)}.up-ic{width:34px;height:34px;color:var(--mc);background:color-mix(in srgb, var(--mc) 14%, transparent);border-radius:10px;flex:none;place-items:center;display:grid}.up-body{flex:1;min-width:0}.up-ttl{color:var(--text-1);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:550;overflow:hidden}.up-meta{color:var(--text-3);margin-top:1px;font-size:11.5px}.up-pill{white-space:nowrap;background:var(--surface-3);color:var(--text-2);border-radius:99px;flex:none;padding:4px 10px;font-size:11.5px;font-weight:600}.up-pill.today{background:color-mix(in srgb, var(--brand) 18%, transparent);color:var(--brand)}.up-pill.soon{background:color-mix(in srgb, var(--warn) 20%, transparent);color:var(--warn)}.up-pill.over{background:var(--danger-soft);color:var(--danger)}.widget-bar{justify-content:flex-end;display:flex}.widget-edit{border:1px dashed var(--line-strong);border-radius:var(--r-md);background:var(--surface-2);overflow:hidden}.widget-edit.dragging{opacity:.5}.widget-edit-h{border-bottom:1px solid var(--line);background:var(--surface);align-items:center;gap:4px;padding:6px 8px;display:flex}.widget-edit-h .grip{color:var(--text-3);cursor:grab;padding:2px;display:inline-flex}.widget-edit-h .grip:active{cursor:grabbing}.widget-edit-h .nm{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12.5px;font-weight:600;overflow:hidden}.widget-edit-h .wbtn{width:26px;height:26px;color:var(--text-3);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex}.widget-edit-h .wbtn:hover:not(:disabled){color:var(--text-1);background:var(--surface-3)}.widget-edit-h .wbtn:disabled{opacity:.3;cursor:default}.widget-preview{padding:8px}.widget-preview.off{opacity:.4;filter:grayscale(.5)}.widget-preview .card{box-shadow:none}.chart-bars{flex-direction:column;gap:10px;display:flex}.chart-row{flex-direction:column;gap:4px;display:flex}.chart-lab{justify-content:space-between;font-size:12.5px;display:flex}.chart-lab .nm{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chart-lab .amt{color:var(--text-1);font-weight:600;font-family:var(--font-mono);white-space:nowrap}.chart-track{background:var(--surface-3);border-radius:99px;height:8px;overflow:hidden}.chart-fill{height:100%;transition:width .5s var(--ease);border-radius:99px;min-width:4px}.chart-total{border-top:1px solid var(--line);color:var(--text-2);justify-content:space-between;margin-top:12px;padding-top:10px;font-size:13px;display:flex}.chart-total b{color:var(--text-1);font-family:var(--font-mono)}.score-row{gap:10px}.score-rank{text-align:center;width:22px;color:var(--text-3);flex:none;font-size:15px;font-weight:700}.onboard{border:1px solid color-mix(in srgb, var(--brand) 28%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--brand) 9%, var(--surface)), var(--surface))}.onboard-head{align-items:flex-start;gap:12px;display:flex}.onboard-head h3{margin:0 0 2px}.onboard-ic{background:var(--brand);width:38px;height:38px;color:var(--on-brand);border-radius:11px;flex:none;place-items:center;display:grid}.onboard-steps{flex-wrap:wrap;gap:8px;display:flex}.onboard-step{border:1px solid var(--line);color:var(--text-2);background:var(--surface);border-radius:99px;align-items:center;gap:7px;padding:7px 12px;font-size:13px;text-decoration:none;display:inline-flex}.onboard-step:hover{border-color:var(--brand);color:var(--text)}.accent-row{flex-wrap:wrap;gap:10px;display:flex}.accent-dot{background:var(--sw);border:2px solid var(--line);cursor:pointer;border-radius:50%;width:30px;height:30px;padding:0;transition:transform .12s;position:relative}.accent-dot:hover{transform:scale(1.08)}.accent-dot.on{border-color:var(--text);box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--sw)}.attach-list{flex-direction:column;gap:6px;margin-bottom:8px;display:flex}.attach-row{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);align-items:center;gap:8px;padding:6px 8px;display:flex}.attach-ic{color:var(--text-3);flex:none;display:inline-flex}.attach-nm{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-2);flex:1;font-size:12.5px;text-decoration:none;overflow:hidden}.attach-nm:hover{text-decoration:underline}.attach-sz{color:var(--text-3);font-size:11px;font-family:var(--font-mono);flex:none}.attach-btn{color:var(--text-3);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:none;padding:4px;text-decoration:none;display:inline-flex}.attach-btn:hover{color:var(--text-1);background:var(--surface-3)}.attach-row .attach-btn:last-child:hover{color:var(--danger)}.link-picker{margin-top:8px;position:relative}.link-results{border:1px solid var(--line);border-radius:var(--r-sm);margin-top:6px;overflow:hidden}.link-results button{text-align:left;background:var(--surface);border:none;border-bottom:1px solid var(--line);cursor:pointer;align-items:center;gap:8px;width:100%;padding:8px 11px;display:flex}.link-results button:last-child{border-bottom:none}.link-results button:hover{background:var(--surface-2)}.link-results .src{text-transform:uppercase;font-size:10.5px}.link-results .ttl{color:var(--text);font-size:13px}.link-none{color:var(--text-3);padding:8px 11px;font-size:12.5px}.shop-item.done .ttl{color:var(--text-3);text-decoration:line-through}.shop-add,.shop-newlist{align-items:center;gap:7px;display:flex}.shop-add{border-top:1px solid var(--line);padding:11px 16px}.shop-add .inp.sm{flex:1}.shop-newlist .inp.sm{width:160px}@media (max-width:900px){.page-h .actions.shop-newlist{width:100%}.shop-newlist .inp.sm{flex:1;width:auto;min-width:0}.shop-newlist .btn{flex:none}}.empty-ico.sm{width:26px;height:26px}.cur-pick{color:var(--text-3);align-items:center;gap:7px;font-size:12.5px;display:inline-flex}.cur-pick .sel{width:auto;min-height:34px;padding:5px 9px}.editable-h{align-items:center;gap:8px;display:inline-flex}.editable-h .btn{opacity:.5;transition:opacity .12s var(--ease)}.editable-h:hover .btn{opacity:1}.name-edit{align-items:center;gap:7px;display:flex}.name-edit .inp{max-width:320px;font-size:20px;font-weight:600}.assistant .card-b{flex-direction:column;gap:10px;display:flex}.assistant-hints{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.assistant-hints .hint{width:100%;margin:0 0 2px}.assistant-hints .chip{cursor:pointer}.assistant-hints .chip:hover{border-color:var(--line-strong);color:var(--text)}.assistant-thread{flex-direction:column;gap:8px;max-height:320px;display:flex;overflow-y:auto}.a-msg{white-space:pre-wrap;border-radius:12px;max-width:85%;padding:8px 12px;font-size:13.5px;line-height:1.45}.a-msg.user{background:var(--brand);color:var(--on-brand);border-bottom-right-radius:4px;align-self:flex-end}.a-msg.assistant{background:var(--surface-3);color:var(--text);border-bottom-left-radius:4px;align-self:flex-start}.a-typing{opacity:.7;font-style:italic}.assistant-input{gap:8px;display:flex}.assistant-input .inp{flex:1}.global-loader{z-index:200;pointer-events:none;opacity:0;height:3px;transition:opacity .18s var(--ease);position:fixed;top:0;left:0;right:0;overflow:hidden}.global-loader.on{opacity:1}.global-loader.on:before{content:"";background:linear-gradient(90deg, transparent, var(--brand), color-mix(in srgb, var(--brand) 60%, #fff), var(--brand), transparent);width:35%;animation:gload 1.05s var(--ease) infinite;border-radius:3px;position:absolute;top:0;bottom:0}@keyframes gload{0%{left:-35%}to{left:100%}}.scroll-list{max-height:62vh;overflow-y:auto}.scroll-list::-webkit-scrollbar{width:8px}.kb-list::-webkit-scrollbar{width:8px}.scroll-list::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:99px}.kb-list::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:99px}.view-all{color:var(--brand);cursor:pointer;border:0;border-top:1px solid var(--line);background:0 0;justify-content:center;align-items:center;gap:4px;width:100%;padding:10px 16px;font-size:12.5px;display:inline-flex}.view-all:hover{background:var(--surface-2)}.card.weather{background:linear-gradient(150deg, color-mix(in srgb, var(--m-calendar) 16%, var(--surface)), var(--surface) 72%);border-color:color-mix(in srgb, var(--m-calendar) 24%, var(--line))}.weather-main{align-items:center;gap:12px;padding:14px 16px;display:flex}.weather-ico{font-size:34px;line-height:1}.weather-temp{font-family:var(--font-display);letter-spacing:-.03em;font-size:34px;font-weight:800}.weather-meta{text-align:right;margin-left:auto}.weather-meta .cond{font-size:13px;font-weight:600}.weather-meta .hilo{font-family:var(--font-mono);color:var(--text-3);margin-top:2px;font-size:11.5px}.card.weather{align-items:center;display:flex}.card.weather .weather-main{flex:1}.weather-side{align-items:center;gap:10px;padding:14px 16px;display:flex}.weather-side .cond{font-size:13px;font-weight:600}.weather-temp.muted{color:var(--text-3);margin-left:auto;padding-right:16px}.weather-unavail{color:var(--text-3);margin-left:auto;padding:14px 16px;font-size:12.5px}.avatar-edit{cursor:pointer;background:0 0;border:0;border-radius:99px;padding:0;position:relative}.avatar-edit-badge{background:var(--brand);width:20px;height:20px;color:var(--on-brand);border:2px solid var(--surface);border-radius:99px;place-items:center;display:grid;position:absolute;bottom:-2px;right:-2px}.avatar-edit:hover .avatar-edit-badge{background:color-mix(in srgb, var(--brand) 85%, #000)}.chat-card{flex-direction:column;height:calc(100dvh - 220px);min-height:360px;display:flex;overflow:hidden}.chat-thread{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.chat-msg{align-items:flex-end;gap:8px;max-width:78%;display:flex}.chat-msg.mine{flex-direction:row-reverse;align-self:flex-end}.chat-bubble{background:var(--surface-3);border-radius:14px 14px 14px 4px;padding:8px 12px}.chat-msg.mine .chat-bubble{background:var(--brand);color:var(--on-brand);border-bottom-right-radius:4px;border-bottom-left-radius:14px}.chat-sender{color:var(--text-2);margin-bottom:2px;font-size:11px;font-weight:700}.chat-text{white-space:pre-wrap;word-break:break-word;font-size:13.5px;line-height:1.4}.chat-foot{align-items:center;gap:8px;margin-top:3px;display:flex}.chat-time{opacity:.65;font-size:10px;font-family:var(--font-mono)}.chat-act{color:inherit;opacity:0;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:2px;transition:opacity .12s,background .12s;display:inline-flex}.chat-msg:hover .chat-act{opacity:.55}.chat-act:hover{opacity:1;background:color-mix(in srgb, currentColor 14%, transparent)}.chat-bot-av{background:linear-gradient(135deg, var(--m-boards), color-mix(in srgb, var(--m-boards) 55%, var(--brand)));color:#fff;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;display:grid}.chat-msg.bot .chat-bubble{background:color-mix(in srgb, var(--m-boards) 12%, var(--surface-3));border:1px solid color-mix(in srgb, var(--m-boards) 24%, transparent)}.chat-msg.bot .chat-sender{color:var(--m-boards)}.chat-text.typing{opacity:.6;font-style:italic}.chat-input{border-top:1px solid var(--line);gap:8px;padding:12px 14px;display:flex;position:relative}.chat-input .inp{flex:1}.mention-pop{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);width:min(320px,100% - 28px);box-shadow:var(--shadow-2);z-index:8;position:absolute;bottom:calc(100% + 4px);left:14px;overflow:hidden}.mention-opt{border:0;border-bottom:1px solid var(--line);cursor:pointer;text-align:left;width:100%;color:var(--text-1);background:0 0;align-items:center;gap:8px;padding:8px 11px;font-size:13.5px;display:flex}.mention-opt:last-child{border-bottom:0}.mention-opt:hover{background:var(--surface-2)}.chat-hint{color:var(--text-3);margin:0;padding:0 16px 12px;font-size:11.5px}.seg.wrap{flex-wrap:wrap}.exam-laws{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px;display:grid}.exam-law{text-align:left;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);color:var(--text);cursor:pointer;min-height:var(--tap);transition:border-color .14s var(--ease), background .14s var(--ease);align-items:flex-start;gap:10px;padding:12px;display:flex}.exam-law:hover{border-color:var(--line-strong)}.exam-law.on{border-color:var(--m-exams);background:color-mix(in srgb, var(--m-exams) 9%, var(--surface))}.exam-law .tick{border-radius:var(--r-xs);border:1.5px solid var(--line-strong);color:#fff;flex:none;place-items:center;width:18px;height:18px;margin-top:2px;display:grid}.exam-law.on .tick{background:var(--m-exams);border-color:var(--m-exams)}.exam-law .body{gap:3px;min-width:0;display:grid}.exam-law .ttl{font-weight:600;line-height:1.3}.exam-law .gz,.exam-law .cnt{color:var(--text-3);font-size:12px;line-height:1.35}.exam-allhint{margin-top:10px}.exam-config{margin-top:14px}.exam-count{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.exam-count-own{align-items:center;gap:7px;display:flex}.exam-count-own .inp{width:84px}.exam-start{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.marking-list{flex:1;gap:10px;min-width:240px;display:grid}.exam-start .marking{align-items:flex-start;gap:10px;min-width:0;display:flex}.exam-start .marking .ico{border-radius:var(--r-sm);background:color-mix(in srgb, var(--mc) 14%, var(--surface));width:28px;height:28px;color:var(--mc);flex:none;place-items:center;display:grid}.exam-start .marking .ttl{font-size:13.5px;font-weight:600;line-height:1.4}.exam-run-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.exam-progress{background:var(--surface-3);height:4px;overflow:hidden}.exam-progress>span{background:var(--m-exams);height:100%;transition:width .2s var(--ease);display:block}.exam-q .meta{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.exam-q .text{margin-bottom:14px;font-size:17px;font-weight:600;line-height:1.5}.exam-opts{gap:8px;display:grid}.exam-opt{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);color:var(--text);cursor:pointer;min-height:var(--tap);transition:border-color .14s var(--ease), background .14s var(--ease);align-items:flex-start;gap:10px;padding:11px 13px;line-height:1.45;display:flex}.exam-opt:hover{border-color:var(--line-strong);background:var(--surface-2)}.exam-opt.on{border-color:var(--m-exams);background:color-mix(in srgb, var(--m-exams) 10%, var(--surface))}.exam-opt .mark{border-radius:var(--r-pill);border:1.5px solid var(--line-strong);color:#fff;flex:none;place-items:center;width:18px;height:18px;margin-top:1px;display:grid}.exam-opt .mark.sq{border-radius:var(--r-xs)}.exam-opt.on .mark{background:var(--m-exams);border-color:var(--m-exams)}.exam-nav{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.exam-dots{flex-wrap:wrap;flex:160px;justify-content:center;gap:5px;display:flex}.exam-dots .dot{border-radius:var(--r-pill);border:1.5px solid var(--line-strong);cursor:pointer;background:0 0;width:11px;height:11px;padding:0}.exam-dots .dot.done{background:color-mix(in srgb, var(--m-exams) 55%, var(--surface));border-color:var(--m-exams)}.exam-dots .dot.cur{outline:2px solid var(--m-exams);outline-offset:2px}.exam-more{justify-content:center}.exam-score .card-b{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.exam-score .dial{border-radius:var(--r-pill);text-align:center;background:color-mix(in srgb, var(--ok) 12%, var(--surface));border:3px solid var(--ok);flex:none;place-content:center;width:108px;height:108px;display:grid}.exam-score.fail .dial{background:color-mix(in srgb, var(--danger) 12%, var(--surface));border-color:var(--danger)}.exam-score .dial .pct{font-family:var(--font-display);font-size:27px;font-weight:700;line-height:1}.exam-score .dial .lbl{color:var(--text-3);font-size:11px}.exam-score .verdict{flex:180px;gap:4px;min-width:0;display:grid}.exam-score .grade{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.exam-score .grade .n{font-family:var(--font-display);font-size:34px;font-weight:700;line-height:1}.exam-score .grade .w{color:var(--text-2)}.exam-score .state{font-weight:600}.exam-score .state.ok{color:var(--ok)}.exam-score .state.no{color:var(--danger)}.exam-review{border-top:1px solid var(--line);padding:14px 16px}.exam-review:first-child{border-top:0}.exam-review .head{align-items:flex-start;gap:10px;display:flex}.exam-review .head .ic{border-radius:var(--r-pill);color:#fff;background:var(--danger);flex:none;place-items:center;width:20px;height:20px;margin-top:2px;display:grid}.exam-review.ok .head .ic{background:var(--ok)}.exam-review.partial .head .ic{background:var(--warn)}.exam-review .q{min-width:0}.exam-review .meta{flex-wrap:wrap;gap:6px;margin-bottom:6px;display:flex}.exam-review .text{font-weight:600;line-height:1.45}.exam-review .body{gap:8px;margin:10px 0 0 30px;display:grid}.exam-review .line{gap:2px;font-size:14px;line-height:1.5;display:grid}.exam-review .line b{color:var(--text-3);align-items:center;gap:4px;font-size:12px;font-weight:600;display:flex}.exam-review .line.good span{color:var(--ok)}.exam-review .line.fb span{color:var(--text-2);font-style:italic}.exam-review .opts{gap:5px;list-style:none;display:grid}.exam-review .opts li,.exam-study .opts li{border-radius:var(--r-xs);background:var(--surface-2);align-items:baseline;gap:8px;padding:7px 10px;font-size:14px;line-height:1.45;display:flex}.exam-review .opts li.right,.exam-study .opts li.right{background:color-mix(in srgb, var(--ok) 12%, var(--surface))}.exam-review .opts li.wrong{background:color-mix(in srgb, var(--danger) 12%, var(--surface))}.exam-review .opts .tag,.exam-study .opts .tag{color:var(--text-3);flex:none;min-width:52px;font-size:11px}.exam-review .why,.exam-study .why{color:var(--text-3);margin:8px 0 0 30px;font-size:13px;line-height:1.5}.exam-study-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;display:flex}.exam-search{color:var(--text-3);flex:220px;align-items:center;gap:6px;display:flex}.exam-search .inp{min-width:0}.exam-study{border-top:1px solid var(--line)}.exam-study:first-child{border-top:0}.exam-study>.q{gap:6px;padding:13px 16px 0;display:grid}.exam-study .meta{flex-wrap:wrap;gap:6px;display:flex}.exam-study>.q .text{font-weight:600;line-height:1.5}.exam-study .a{justify-items:start;gap:8px;padding:10px 16px 14px;display:grid}.exam-study .a .opts{width:100%}.exam-study .model{color:var(--ok);font-size:14px;line-height:1.55}.exam-study .a .why{margin-left:0}.exam-hist{flex-wrap:wrap}.exam-hist .grade{border-radius:var(--r-sm);width:32px;height:32px;font-family:var(--font-display);background:var(--surface-3);color:var(--text-2);flex:none;place-items:center;font-weight:700;display:grid}.exam-hist .grade.ok{background:color-mix(in srgb, var(--ok) 16%, var(--surface));color:var(--ok)}.exam-hist .grade.no{background:color-mix(in srgb, var(--danger) 16%, var(--surface));color:var(--danger)}.exam-hist .body{text-align:left;min-width:0;color:var(--text);cursor:pointer;background:0 0;border:0;flex:160px}.exam-hist .body .ttl{font-weight:600}.exam-hist .body .sub{color:var(--text-3);font-size:12px}.exam-widget-last{align-items:center;gap:10px;display:flex}.exam-widget-last .grade{border-radius:var(--r-sm);width:38px;height:38px;font-family:var(--font-display);background:color-mix(in srgb, var(--ok) 16%, var(--surface));color:var(--ok);flex:none;place-items:center;font-size:19px;font-weight:700;display:grid}.exam-widget-last .grade.no{background:color-mix(in srgb, var(--danger) 16%, var(--surface));color:var(--danger)}.exam-widget-last .ttl{font-weight:600}.exam-widget-spark{align-items:flex-end;gap:5px;height:42px;margin-top:12px;display:flex}.exam-widget-spark span{border-radius:var(--r-xs) var(--r-xs) 0 0;background:var(--ok);opacity:.55;flex:1}.exam-widget-spark span.no{background:var(--danger)}@media (max-width:780px){.exam-score .card-b{text-align:center;justify-content:center}.exam-score .verdict{text-align:center}.exam-score .grade{justify-content:center}}@media (max-width:560px){.exam-laws{grid-template-columns:1fr}.exam-count,.exam-count-own{width:100%}.exam-count .seg{justify-content:space-between;width:100%}.exam-count-own .inp{flex:1;width:auto}.exam-go{justify-content:center;width:100%}.marking-list{min-width:0}.exam-q .text{font-size:15.5px}.exam-nav .btn{flex:auto;justify-content:center}.exam-dots{flex-basis:100%;order:3;padding-top:4px}.exam-review .body,.exam-review .why{margin-left:0}.exam-review .opts li,.exam-study .opts li{flex-direction:column;gap:2px}.exam-review .opts .tag,.exam-study .opts .tag{min-width:0}.exam-search{flex-basis:100%}.exam-study-bar .btn{justify-content:center;width:100%}.exam-hist .body{flex-basis:100%;order:3}.exams-page .card-h{flex-wrap:wrap;row-gap:6px}.exams-page .card-h>.t{min-width:0}}.chip.link{cursor:pointer;font:inherit;background:color-mix(in srgb, var(--m-exams) 12%, var(--surface-2));color:color-mix(in srgb, var(--m-exams) 70%, var(--text));text-underline-offset:2px;border:0;gap:4px;font-size:11.5px;text-decoration:underline dotted}.chip.link:hover{background:color-mix(in srgb, var(--m-exams) 22%, var(--surface-2));text-decoration-style:solid}.law-tabs,.law-head{margin-bottom:12px}.law-head .ttl{font-weight:600;line-height:1.35}.law-article{border-top:1px solid var(--line);padding:16px;scroll-margin-top:74px}.law-article:first-child{border-top:0}.law-article>header{flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:8px;display:flex}.law-article>header h4{font-family:var(--font-display);font-size:15px;font-weight:700}.law-article>header .ttl{color:var(--text-2);font-size:13.5px}.law-article.target{background:color-mix(in srgb, var(--m-exams) 7%, var(--surface))}.law-article-body{gap:7px;display:grid}.law-article-body .chapter{letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);font-size:11px}.law-article-body p{white-space:pre-wrap;font-size:14.5px;line-height:1.62}.law-article-body .src{color:var(--text-3);margin-top:4px;font-size:11.5px}.exam-review.skipped .head .ic{background:var(--text-3)}.exam-score.none .dial{background:var(--surface-2);border-color:var(--line-strong)}.exam-score .verdict .note{color:var(--text-2);align-items:flex-start;gap:6px;margin-top:6px;font-size:12px;line-height:1.45;display:flex}.exam-score .verdict .note svg{flex:none;margin-top:2px}@media (max-width:560px){.law-article{padding:13px 14px}.law-article-body p{font-size:14px}.law-tabs{width:100%}.exam-score .verdict .note{text-align:left;justify-content:center}}.auth{z-index:10;background:var(--bg);grid-template-columns:1.05fr .95fr;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.auth-art{background:radial-gradient(120% 90% at 12% 8%, color-mix(in srgb, var(--brand) 26%, transparent), transparent 62%), radial-gradient(90% 80% at 92% 96%, color-mix(in srgb, var(--brass) 22%, transparent), transparent 60%), var(--bg-grain);border-right:1px solid var(--line);flex-direction:column;justify-content:space-between;padding:44px;display:flex;position:relative;overflow:hidden}.auth-art .plan{opacity:.5;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.auth-art .brand{align-items:center;gap:10px;padding:0;display:flex;position:relative}.auth-art .brand .mark{background:var(--brand);width:30px;height:30px;color:var(--on-brand);box-shadow:var(--shadow-1);border-radius:9px;place-items:center;display:grid}.auth-art .brand .nm{font-family:var(--font-display);letter-spacing:-.03em;font-size:16px;font-weight:800}.auth-art .brand .nm span{color:var(--text-3);font-weight:400}.auth-art .copy{max-width:430px;position:relative}.auth-art h1{margin:16px 0 14px;font-size:max(28px,min(3.4vw,44px));line-height:1.03}.auth-art h1 em{color:var(--brand);white-space:nowrap;font-style:normal}.auth-art p{color:var(--text-2);font-size:15px;line-height:1.55}.auth-art .legend{flex-wrap:wrap;gap:7px;margin-top:22px;display:flex;position:relative}.auth-art .foot{position:relative}.auth-panel{place-items:center;padding:32px 24px;display:grid;overflow-y:auto}.auth-card{width:100%;max-width:392px}.auth-topbar{justify-content:flex-end;gap:8px;margin-bottom:18px;display:flex}.auth-tabs{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-sm);gap:2px;margin-bottom:20px;padding:3px;display:flex}.auth-tabs a{text-align:center;border-radius:calc(var(--r-sm) - 2px);color:var(--text-2);flex:1;padding:8px;font-size:13px;font-weight:600}.auth-tabs a.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-1)}.auth-form{flex-direction:column;gap:13px;display:flex}.auth-form h2{font-family:var(--font-display)}.auth-form .btn.primary{min-height:42px}.auth-mini{justify-content:space-between;align-items:center;gap:10px;display:flex}.linkbtn{color:var(--brand);cursor:pointer;background:0 0;border:0;padding:0;font-size:12.5px;font-weight:500}.linkbtn:hover{text-decoration:underline}.divider{color:var(--text-3);align-items:center;gap:12px;margin:4px 0;font-size:11.5px;display:flex}.divider:before,.divider:after{content:"";background:var(--line);flex:1;height:1px}.auth-foot{color:var(--text-3);text-align:center;margin-top:18px;font-size:12.5px;line-height:1.6}.auth-foot a{color:var(--brand);font-weight:500}.auth-foot a:hover{text-decoration:underline}.pw-wrap{position:relative}.pw-wrap .inp{padding-right:40px}.pw-wrap .peek{width:32px;height:32px;color:var(--text-3);cursor:pointer;border-radius:var(--r-xs);background:0 0;border:0;place-items:center;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.pw-wrap .peek:hover{color:var(--text)}@media (max-width:900px){.auth{grid-template-columns:1fr}.auth-art{display:none}}.auth-solo{min-height:100dvh;padding:var(--space-5);background:radial-gradient(900px 500px at 90% -10%, color-mix(in srgb, var(--brand) 20%, transparent), transparent 60%), var(--bg);place-items:center;display:grid}.auth-solo .card{width:100%;max-width:400px}.auth-solo .brand-mark{background:var(--brand);width:30px;height:30px;color:var(--on-brand);border-radius:9px;place-items:center;display:grid}.auth-solo .brand-row{font-weight:800;font-family:var(--font-display);margin-bottom:var(--space-4);align-items:center;gap:10px;display:flex}.row-between{justify-content:space-between;align-items:center;gap:8px;display:flex}.mini-link{color:var(--brand);font-size:12px;text-decoration:none}.mini-link:hover{text-decoration:underline}:root{--font-display:"Bricolage Grotesque", system-ui, sans-serif;--font-body:"Instrument Sans", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--r-xs:6px;--r-sm:9px;--r-md:13px;--r-lg:18px;--r-xl:26px;--r-pill:999px;--sp:4px;--shadow-1:0 1px 2px rgba(10,20,15,.06), 0 1px 1px rgba(10,20,15,.04);--shadow-2:0 4px 14px rgba(10,20,15,.08), 0 1px 3px rgba(10,20,15,.05);--shadow-3:0 24px 60px rgba(8,16,12,.18), 0 4px 14px rgba(8,16,12,.1);--ease:cubic-bezier(.2, .7, .3, 1);--rail:250px;--tap:38px;--bg:#ecefea;--bg-grain:#e4e8e1;--surface:#fff;--surface-2:#f5f7f2;--surface-3:#edf0ea;--line:#dce1d8;--line-strong:#c6cdc0;--text:#141a16;--text-2:#5a655d;--text-3:#8a948c;--brand:#24685a;--brand-2:#1b5348;--brand-soft:#dceae4;--on-brand:#fff;--brass:#9c7318;--brass-soft:#f3e8cc;--danger:#af4229;--danger-soft:#f8e1db;--warn:#8b6410;--ok:#2c7a52;--focus:#24685a;--m-tasks:#4f7dd9;--m-boards:#8168b5;--m-calendar:#c2603a;--m-reminders:#c4437b;--m-notes:#2e8f6e;--m-finance:#b08322;--m-life:#2f8aa6;--m-lists:#6e8b3d;--m-meals:#c97c2e;--m-exams:#4c4f9e}html[data-density=compact]{--tap:32px}:root[data-accent=blue]{--brand:#4f7dd9;--brand-2:#3e67be;--on-brand:#fff;--focus:#4f7dd9;--brand-soft:color-mix(in srgb, #4f7dd9 16%, var(--surface))}:root[data-accent=violet]{--brand:#8168b5;--brand-2:#6b54a0;--on-brand:#fff;--focus:#8168b5;--brand-soft:color-mix(in srgb, #8168b5 16%, var(--surface))}:root[data-accent=rose]{--brand:#c4437b;--brand-2:#a83566;--on-brand:#fff;--focus:#c4437b;--brand-soft:color-mix(in srgb, #c4437b 16%, var(--surface))}:root[data-accent=amber]{--brand:#b08322;--brand-2:#946c17;--on-brand:#fff;--focus:#b08322;--brand-soft:color-mix(in srgb, #b08322 16%, var(--surface))}:root[data-accent=cyan]{--brand:#2f8aa6;--brand-2:#22718a;--on-brand:#fff;--focus:#2f8aa6;--brand-soft:color-mix(in srgb, #2f8aa6 16%, var(--surface))}:root[data-theme=dark][data-accent=blue]{--brand:#7fa4ea;--brand-2:#5e88dc;--on-brand:#08120f;--focus:#7fa4ea}:root[data-theme=dark][data-accent=violet]{--brand:#a992d8;--brand-2:#8c74c0;--on-brand:#08120f;--focus:#a992d8}:root[data-theme=dark][data-accent=rose]{--brand:#e274a5;--brand-2:#c85589;--on-brand:#08120f;--focus:#e274a5}:root[data-theme=dark][data-accent=amber]{--brand:#d6ab57;--brand-2:#bc9138;--on-brand:#08120f;--focus:#d6ab57}:root[data-theme=dark][data-accent=cyan]{--brand:#5fb4ce;--brand-2:#3f98b4;--on-brand:#08120f;--focus:#5fb4ce}@media (prefers-color-scheme:dark){:root:not([data-theme=light])[data-accent=blue]{--brand:#7fa4ea;--brand-2:#5e88dc;--on-brand:#08120f;--focus:#7fa4ea}:root:not([data-theme=light])[data-accent=violet]{--brand:#a992d8;--brand-2:#8c74c0;--on-brand:#08120f;--focus:#a992d8}:root:not([data-theme=light])[data-accent=rose]{--brand:#e274a5;--brand-2:#c85589;--on-brand:#08120f;--focus:#e274a5}:root:not([data-theme=light])[data-accent=amber]{--brand:#d6ab57;--brand-2:#bc9138;--on-brand:#08120f;--focus:#d6ab57}:root:not([data-theme=light])[data-accent=cyan]{--brand:#5fb4ce;--brand-2:#3f98b4;--on-brand:#08120f;--focus:#5fb4ce}:root:not([data-theme=light]){--bg:#0d110f;--bg-grain:#111614;--surface:#161b18;--surface-2:#1c2320;--surface-3:#232b27;--line:#2a332e;--line-strong:#3a453e;--text:#e9eeea;--text-2:#9ba69e;--text-3:#6f7a73;--brand:#59b096;--brand-2:#7acbb2;--brand-soft:#17302a;--on-brand:#08120f;--brass:#d6ab57;--brass-soft:#2e2716;--danger:#e37c61;--danger-soft:#361c16;--warn:#d6ab57;--ok:#5fbe8b;--focus:#7acbb2;--m-tasks:#7fa4ea;--m-boards:#a992d8;--m-calendar:#e08b62;--m-reminders:#e274a5;--m-notes:#5fbe99;--m-finance:#d6ab57;--m-life:#5fb4ce;--m-lists:#9cb868;--m-meals:#e5a25f;--m-exams:#9094e4}}:root[data-theme=dark]{--bg:#0d110f;--bg-grain:#111614;--surface:#161b18;--surface-2:#1c2320;--surface-3:#232b27;--line:#2a332e;--line-strong:#3a453e;--text:#e9eeea;--text-2:#9ba69e;--text-3:#6f7a73;--brand:#59b096;--brand-2:#7acbb2;--brand-soft:#17302a;--on-brand:#08120f;--brass:#d6ab57;--brass-soft:#2e2716;--danger:#e37c61;--danger-soft:#361c16;--warn:#d6ab57;--ok:#5fbe8b;--focus:#7acbb2;--m-tasks:#7fa4ea;--m-boards:#a992d8;--m-calendar:#e08b62;--m-reminders:#e274a5;--m-notes:#5fbe99;--m-finance:#d6ab57;--m-life:#5fb4ce;--m-lists:#9cb868;--m-meals:#e5a25f;--m-exams:#9094e4}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);font-size:10.5px}.ic{flex:none}.btn{min-height:var(--tap);border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface);color:var(--text);cursor:pointer;transition:background .16s var(--ease), border-color .16s var(--ease), transform .1s var(--ease), box-shadow .16s var(--ease);white-space:nowrap;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:13.5px;font-weight:500;display:inline-flex}.btn:hover{background:var(--surface-2);border-color:var(--line-strong)}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--on-brand);box-shadow:var(--shadow-1)}.btn.primary:hover{background:var(--brand-2);border-color:var(--brand-2)}.btn.ghost{background:0 0;border-color:transparent}.btn.ghost:hover{background:var(--surface-2);border-color:var(--line)}.btn.danger{color:var(--danger);border-color:var(--line)}.btn.danger:hover{background:var(--danger-soft);border-color:var(--danger)}.btn.sm{border-radius:var(--r-xs);min-height:30px;padding:0 10px;font-size:12.5px}.btn.icon{width:var(--tap);min-height:var(--tap);padding:0}.btn.icon.sm{width:30px}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-row{flex-wrap:wrap;gap:8px;display:flex}.chip{border-radius:var(--r-pill);letter-spacing:.01em;background:var(--surface-2);height:22px;color:var(--text-2);border:1px solid var(--line);align-items:center;gap:5px;padding:0 8px;font-size:11.5px;font-weight:500;display:inline-flex}.chip .dot{background:currentColor;border-radius:99px;flex:none;width:6px;height:6px}.chip[data-m]{color:var(--mc);border-color:color-mix(in srgb, var(--mc) 34%, transparent);background:color-mix(in srgb, var(--mc) 11%, transparent)}.chip.solid{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.chip.danger{color:var(--danger);background:var(--danger-soft);border-color:color-mix(in srgb, var(--danger) 30%, transparent)}.chip.warn{color:var(--warn);background:var(--brass-soft);border-color:color-mix(in srgb, var(--warn) 30%, transparent)}.chip.ok{color:var(--ok);background:color-mix(in srgb, var(--ok) 12%, transparent);border-color:color-mix(in srgb, var(--ok) 30%, transparent)}.thread{color:var(--text-2);border-radius:var(--r-pill);background:color-mix(in srgb, var(--mc,var(--brand)) 9%, transparent);border:1px dashed color-mix(in srgb, var(--mc,var(--brand)) 38%, transparent);align-items:center;gap:6px;padding:2px 8px 2px 6px;font-size:11.5px;display:inline-flex}.thread .ic{color:var(--mc,var(--brand))}.thread b{color:var(--text);font-weight:500}.av{width:26px;height:26px;font-size:10.5px;font-weight:600;font-family:var(--font-mono);color:#fff;background:var(--brand);border:1.5px solid var(--surface);text-transform:uppercase;border-radius:99px;flex:none;place-items:center;display:grid}.av.lg{width:40px;height:40px;font-size:14px}.av.xs{width:20px;height:20px;font-size:9px}.av.has-img{background:var(--surface-3);padding:0;overflow:hidden}.av.has-img img{object-fit:cover;border-radius:99px;width:100%;height:100%;display:block}.av-stack{display:flex}.av-stack .av+.av{margin-left:-7px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-1)}.card-pad{padding:26px}.card-h{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;display:flex}.card-h .t{align-items:center;gap:9px;min-width:0;display:flex}.card-b{padding:14px 16px}.card-b.flush{padding:0}.mdot{background:var(--mc);border-radius:3px;flex:none;width:8px;height:8px;transform:rotate(45deg)}.grid{gap:14px;display:grid}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>label,.lbl{color:var(--text-2);letter-spacing:.005em;font-size:12px;font-weight:600}.hint{color:var(--text-3);font-size:11.5px;line-height:1.4}.inp,.sel,.ta{width:100%;min-height:var(--tap);background:var(--surface-2);color:var(--text);border:1px solid var(--line);border-radius:var(--r-sm);transition:border-color .15s var(--ease), background .15s var(--ease), box-shadow .15s var(--ease);padding:8px 11px}.inp::placeholder,.ta::placeholder{color:var(--text-3)}.inp:focus,.sel:focus,.ta:focus{background:var(--surface);border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 18%, transparent);outline:none}.ta{resize:vertical;min-height:88px;line-height:1.55}.inp.err,.sel.err{border-color:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb, var(--danger) 16%, transparent)}.err-msg{color:var(--danger);align-items:center;gap:5px;font-size:11.5px;display:flex}.form-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.form-grid .full{grid-column:1/-1}.seg{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-sm);gap:2px;padding:3px;display:inline-flex}.seg button{border-radius:calc(var(--r-sm) - 2px);color:var(--text-2);cursor:pointer;transition:.15s var(--ease);background:0 0;border:0;align-items:center;gap:6px;padding:5px 11px;font-size:12.5px;font-weight:500;display:inline-flex}.seg button:hover{color:var(--text)}.seg button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-1)}.sw{cursor:pointer;user-select:none;align-items:center;gap:10px;display:inline-flex}.sw input{opacity:0;width:0;height:0;position:absolute}.sw .track{background:var(--line-strong);width:38px;height:22px;transition:.18s var(--ease);border-radius:99px;flex:none;position:relative}.sw .track:after{content:"";width:18px;height:18px;box-shadow:var(--shadow-1);transition:.18s var(--ease);background:#fff;border-radius:99px;position:absolute;top:2px;left:2px}.sw input:checked+.track{background:var(--brand)}.sw input:checked+.track:after{transform:translate(16px)}.sw .txt{font-size:13px}.cb{cursor:pointer;user-select:none;align-items:center;gap:9px;font-size:13.5px;display:inline-flex}.cb input{opacity:0;width:0;height:0;position:absolute}.cb .box{border:1.6px solid var(--line-strong);background:var(--surface);width:18px;height:18px;transition:.14s var(--ease);border-radius:5px;flex:none;place-items:center;display:grid}.cb .box svg{width:11px;height:11px;color:var(--on-brand);opacity:0;transition:.14s var(--ease);transform:scale(.6)}.cb input:checked+.box{background:var(--brand);border-color:var(--brand)}.cb input:checked+.box svg{opacity:1;transform:scale(1)}.veil{z-index:100;backdrop-filter:blur(3px);background:rgba(5,16,12,.52);place-items:center;padding:20px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.modal{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);width:100%;max-width:600px;max-height:88vh;box-shadow:var(--shadow-3);animation:modalIn .18s var(--ease);flex-direction:column;display:flex;overflow:hidden}@keyframes modalIn{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:none}}.modal.sm{max-width:440px}.modal-h{border-bottom:1px solid var(--line);align-items:center;gap:11px;padding:17px 20px;display:flex}.modal-h .ico{border-radius:var(--r-sm);background:color-mix(in srgb, var(--mc,var(--brand)) 14%, transparent);width:32px;height:32px;color:var(--mc,var(--brand));flex:none;place-items:center;display:grid}.modal-h .tt{flex:1;min-width:0}.modal-h .tt .st{color:var(--text-3);margin-top:1px;font-size:12px}.modal-b{flex-direction:column;gap:15px;padding:20px;display:flex;overflow-y:auto}.modal-f{border-top:1px solid var(--line);background:var(--surface-2);align-items:center;gap:9px;padding:14px 20px;display:flex}.modal-f .spacer{flex:1}.pop{position:relative}.menu{z-index:60;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);min-width:210px;box-shadow:var(--shadow-3);animation:modalIn .14s var(--ease);padding:5px;position:absolute;top:calc(100% + 6px);right:0}.menu button,.menu a{border-radius:var(--r-xs);cursor:pointer;text-align:left;width:100%;color:var(--text);background:0 0;border:0;align-items:center;gap:9px;padding:8px 10px;font-size:13px;display:flex}.menu button:hover,.menu a:hover{background:var(--surface-2)}.menu button.danger{color:var(--danger)}.menu .sep{background:var(--line);height:1px;margin:4px 0}.menu .lab{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);padding:7px 10px 4px;font-size:9.5px}.veil.top{place-items:start center}.palette{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);width:100%;max-width:600px;box-shadow:var(--shadow-3);animation:modalIn .16s var(--ease);margin-top:11vh;overflow:hidden}.palette .pin{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:14px 16px;display:flex}.palette .pin input{color:var(--text);background:0 0;border:0;outline:none;flex:1;font-size:15px}.palette-x{border-radius:var(--r-xs);width:28px;height:28px;color:var(--text-3);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:grid}.palette-x:hover{background:var(--surface-2);color:var(--text-1)}.plist{max-height:60vh;padding:6px;overflow-y:auto}.pgroup{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);padding:10px 10px 5px;font-size:10px}.pitem{border-radius:var(--r-sm);cursor:pointer;color:var(--text);align-items:center;gap:10px;padding:9px 10px;font-size:13.5px;display:flex}.pitem:hover,.pitem.sel{background:var(--surface-2)}.pitem .ic{color:var(--mc,var(--text-3))}.pitem .sub{color:var(--text-3);margin-left:auto;font-size:11.5px}.toaster{z-index:300;flex-direction:column;gap:10px;width:min(92vw,380px);display:flex;position:fixed;bottom:18px;right:18px}.toast{border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-2);animation:toastIn .2s var(--ease);align-items:flex-start;gap:10px;padding:12px 12px 12px 14px;display:flex;position:relative;overflow:hidden}.toast:before{content:"";background:var(--text-3);width:4px;position:absolute;top:0;bottom:0;left:0;right:auto}.toast.success:before{background:var(--ok)}.toast.error:before{background:var(--danger)}.toast.info:before{background:var(--brand)}.toast .ti{flex:none;margin-top:1px}.toast.success .ti{color:var(--ok)}.toast.error .ti{color:var(--danger)}.toast.info .ti{color:var(--brand)}.toast .tm{color:var(--text-1);word-break:break-word;flex:1;font-size:13.5px;line-height:1.45}.toast .tx{border-radius:var(--r-xs);width:24px;height:24px;color:var(--text-3);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:grid}.toast .tx:hover{background:var(--surface-2);color:var(--text-1)}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.confirm-msg{color:var(--text-2);margin:0;font-size:14px;line-height:1.55}.btn.danger-solid{background:var(--danger);border-color:var(--danger);color:#fff}.btn.danger-solid:hover{filter:brightness(1.06)}.req-star{color:var(--danger);margin-left:2px;font-weight:700}.share-list{flex-wrap:wrap;gap:7px;display:flex}.share-chip{border:1px solid var(--line);border-radius:var(--r-pill);cursor:pointer;user-select:none;transition:.12s var(--ease);align-items:center;gap:7px;padding:4px 10px 4px 5px;font-size:12.5px;display:inline-flex}.share-chip:hover{border-color:var(--line-strong);background:var(--surface-2)}.share-chip.on{border-color:var(--brand);background:color-mix(in srgb, var(--brand) 12%, transparent);color:var(--brand)}.share-chip input{opacity:0;width:0;height:0;position:absolute}.card{transition:border-color .16s var(--ease), box-shadow .16s var(--ease)}.card:hover{border-color:color-mix(in srgb, var(--line-strong) 70%, var(--line));box-shadow:var(--shadow-2)}.card-h h3{letter-spacing:-.01em;font-size:14px;font-weight:650}.card-h .btn.sm{transition:transform .12s var(--ease)}.card-h:hover .btn.sm{transform:none}.stat{transition:transform .14s var(--ease), border-color .14s var(--ease), box-shadow .14s var(--ease)}.stat[data-m]{background:linear-gradient(160deg, color-mix(in srgb, var(--mc) 10%, var(--surface)), var(--surface) 70%);border-color:color-mix(in srgb, var(--mc) 22%, var(--line))}a.stat:hover,.stat:hover{box-shadow:var(--shadow-2);border-color:color-mix(in srgb, var(--mc,var(--brand)) 40%, var(--line));transform:translateY(-2px)}.stat .n{font-size:24px}.card-h .mdot{box-shadow:0 0 0 4px color-mix(in srgb, var(--mc) 14%, transparent)}*,:before,:after{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:14.5px;line-height:1.5}html[data-density=compact] body{font-size:13.5px}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-weight:600}h1{letter-spacing:-.035em;font-size:max(22px,min(2.4vw,30px));font-weight:800}h2{font-size:18px}h3{font-size:15.5px}h4{font-size:13.5px}p{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}img,svg{max-width:100%;display:block}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--r-xs)}::selection{background:var(--brand);color:var(--on-brand)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line-strong);background-clip:content-box;border:3px solid transparent;border-radius:99px}::-webkit-scrollbar-track{background:0 0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
