:root{--imp-bar-h:0px;--sky:#b1e0fc;--sky-deep:#8ec7ed;--sky-tint:#e4f4ff;--coral:#ff7c60;--coral-600:#f2694b;--ink:#141414;--text:#282828;--muted:#6b6b6b;--line:#e7e7e7;--surface:#fff;--bg:#fff;--home-bg:#faf8f3;--home-line:#ece8de;--seg-bg:#f0ede4;--icon-tint:#ffe9e1;--surface-2:#f4f2ec;--line-strong:#d8d3c6;--input-bg:#fff;--overlay:rgba(20,20,30,.5);--danger:#c0392b;--danger-soft:#fdecea;--danger-ink:#8a2c1c;--ok:#1e8e5a;--ok-soft:#e3f5ec;--warn-soft:#fff4e0;--warn-line:#f0c674;--warn-ink:#7a5514;--empty-tint:#e3eef8;--empty-ink:#3b6f9a;--font-sans:"Onest",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;--font-display:"Unbounded",var(--font-sans);--radius:18px;--pill:999px;--maxw:1000px;--shadow-sm:0 3px 10px -6px rgba(20,30,55,.18);--shadow-md:0 12px 28px -14px rgba(20,30,55,.24);--shadow-lg:0 24px 48px -20px rgba(20,30,55,.32);--board-navy:#38487f;--board-line:var(--line-strong);--board-offsite:#7a6a4d;--ans-new:#f5963c;--ans-new-soft:#fff3e6;--ans-new-ink:#9a4d0a;--ans-fb:#8dc7ec;--ans-fb-soft:#eaf5fc;--ans-fb-ink:#1f5f86}:root[data-theme=dark]{--sky:#1e3350;--sky-deep:#16273d;--sky-tint:#1b2c40;--coral:#ff7a52;--coral-600:#ff9269;--ink:#f1f3f6;--text:#d6dae1;--muted:#9aa3b0;--line:#2c313b;--surface:#1f232b;--bg:#14171d;--home-bg:#14171d;--home-line:#2c313b;--seg-bg:#1a1d24;--icon-tint:rgba(255,122,82,.2);--surface-2:#262b34;--line-strong:#424856;--input-bg:#1a1d24;--overlay:rgba(8,10,14,.7);--danger:#ff7b6b;--danger-soft:rgba(255,105,90,.14);--danger-ink:#ffb0a6;--ok:#62d6a0;--ok-soft:#15302a;--warn-soft:hsla(40,81%,70%,.12);--warn-line:hsla(40,81%,70%,.35);--warn-ink:#f0d27a;--empty-tint:rgba(93,150,196,.2);--empty-ink:#8ec1ea;--shadow-sm:0 3px 10px -6px rgba(0,0,0,.5);--shadow-md:0 12px 28px -14px rgba(0,0,0,.55);--shadow-lg:0 24px 48px -20px rgba(0,0,0,.6);--board-navy:#5b6bb0;--board-line:var(--line-strong);--board-offsite:#8a7a5c;--ans-new:#f0a050;--ans-new-soft:#3a2a1a;--ans-new-ink:#ffc38a;--ans-fb:#6fb3de;--ans-fb-soft:#1d2d38;--ans-fb-ink:#9fd3f3}:root[data-theme=dark] .topbar{background:rgba(20,23,29,.88)}:root[data-theme=dark] .brand:not(.is-color):not(.is-white){filter:invert(1) brightness(1.15)}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:var(--font-display);color:var(--ink);line-height:1.08;letter-spacing:-.01em;margin:0}.btn,h1,h2,h3{font-weight:700}.btn{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1.5px solid transparent;border-radius:var(--pill);padding:15px 30px;font-family:var(--font-sans);font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:transform .12s ease,background .12s ease,color .12s ease}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--coral);color:#fff}.btn-primary:hover:not(:disabled){background:var(--coral-600)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-danger{background:#c0392b;color:#fff}.btn-danger:hover:not(:disabled){background:#a5311f}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-ghost:hover{background:var(--ink);color:#fff}.link-coral{background:none;border:0;padding:8px 4px;font-family:var(--font-sans);font-weight:700;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--coral-600);cursor:pointer}.link-coral:hover{color:var(--ink)}.brand{display:inline-block;height:24px;width:auto}.brand.is-white,:root[data-theme=dark] .brand.is-color{display:none}:root[data-theme=dark] .brand.is-white{display:inline-block}.auth{min-height:100dvh;display:grid;place-items:center;padding:24px 16px;background:linear-gradient(180deg,var(--sky) 0,var(--sky-deep) 100%)}.auth-card{width:100%;max-width:440px;background:var(--surface);border-radius:24px;padding:34px 30px 30px;box-shadow:0 30px 60px -20px rgba(20,40,70,.35)}.auth-card .brand{margin-bottom:26px}.auth-card h1{font-size:2rem;margin-bottom:32px}.lead{color:var(--muted);margin:0 0 24px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}label{font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}input[type=email],input[type=password]{width:100%;padding:14px 16px;border:1.5px solid var(--line);border-radius:12px;font-size:1rem;font-family:var(--font-sans);background:var(--input-bg);color:var(--text);outline:none;transition:border-color .12s ease,box-shadow .12s ease}input[type=email]:focus,input[type=password]:focus{border-color:var(--coral)}.field input[type=text],.field textarea{width:100%;padding:14px 16px;border:1.5px solid var(--line);border-radius:12px;font-size:1rem;font-family:var(--font-sans);background:var(--input-bg);color:var(--text);outline:none;resize:vertical;transition:border-color .12s ease,box-shadow .12s ease}.field input[type=text]:focus,.field textarea:focus{border-color:var(--coral);box-shadow:0 0 0 4px rgba(255,124,96,.16)}.topbar-actions{display:flex;align-items:center;gap:10px}.icon-btn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:999px;border:1.5px solid var(--line);background:transparent;color:var(--ink);font-family:var(--font-sans);font-size:.82rem;font-weight:600;text-decoration:none;white-space:nowrap;cursor:pointer}.icon-btn:hover{border-color:var(--ink)}.theme-toggle{width:36px;padding:0;justify-content:center}.brand-link{display:inline-flex;align-items:center}.topbar-avatar{display:grid;place-items:center;width:36px;height:36px;padding:0;overflow:hidden;border:0;border-radius:50%;background:var(--ink);color:var(--bg);font-family:var(--font-display);font-size:.95rem;font-weight:700;cursor:pointer}.topbar-avatar img{width:100%;height:100%;object-fit:cover}.menu-dropdown{position:relative}.menu-dropdown-panel{position:absolute;top:calc(100% + 10px);right:0;z-index:20;width:290px;max-width:calc(100vw - 40px);padding:8px;border:1.5px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:var(--shadow-lg);transform-origin:top right;animation:menu-pop .14s ease-out}@keyframes menu-pop{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:none}}.menu-user{padding:14px 14px 16px;margin-bottom:6px;border-radius:16px;background:var(--surface-2)}.menu-user-name{font-family:var(--font-sans);font-size:1.05rem;font-weight:800;line-height:1.25;color:var(--ink);overflow-wrap:anywhere}.menu-user-access{margin-top:10px}.menu-user-access-label{display:block;margin-bottom:6px;color:var(--muted);font-size:.78rem}.menu-user-tags{display:flex;flex-wrap:wrap;gap:5px}.menu-user-tag{padding:3px 10px;border-radius:var(--pill);background:var(--surface);color:var(--ink);font-size:.8rem;font-weight:600;line-height:1.35}.menu-item-text{display:flex;flex-direction:column;gap:1px;min-width:0}.menu-item-text small{color:var(--muted);font-size:.76rem;font-weight:500;line-height:1.3}.menu-dropdown-list{display:flex;flex-direction:column}.menu-dropdown-list a,.menu-dropdown-list button{display:flex;align-items:center;width:100%;padding:13px 14px;border:0;border-radius:14px;background:transparent;color:var(--text);font-family:var(--font-sans);font-size:.98rem;font-weight:600;text-align:left;cursor:pointer}.menu-dropdown-list a:focus-visible,.menu-dropdown-list a:hover,.menu-dropdown-list button:focus-visible,.menu-dropdown-list button:hover{background:var(--surface-2);color:var(--ink);outline:none}.menu-dropdown-foot{margin-top:6px;padding-top:8px;border-top:1px solid var(--line)}.menu-dropdown-foot .btn-logout{width:100%;padding:13px 14px;border:0;border-radius:var(--pill);background:var(--ink);color:var(--bg);font-family:var(--font-sans);font-size:.98rem;font-weight:700;cursor:pointer}.menu-dropdown-foot .btn-logout:hover{background:var(--coral-600);color:#fff}.fb-dot{display:inline-block;width:8px;height:8px;border-radius:var(--pill);background:var(--danger);flex:0 0 auto}.fb-dot-inline{margin-left:2px}.fb-thread{display:flex;flex-direction:column;gap:10px;max-height:420px;overflow-y:auto;padding:4px 2px}.fb-msg{max-width:82%;padding:9px 12px;border-radius:14px}.fb-msg-user{align-self:flex-end;background:var(--coral);color:#fff;border-bottom-right-radius:4px}.fb-msg-admin{align-self:flex-start;background:var(--surface-2);color:var(--ink);border-bottom-left-radius:4px}.fb-msg-text{margin:0;white-space:pre-wrap;font-size:.88rem;line-height:1.4}.fb-msg-meta{display:block;margin-top:4px;font-size:.68rem;opacity:.75}.fb-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.fb-thread-chip{display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--line);border-radius:var(--pill);padding:7px 14px;background:var(--surface);color:var(--ink);font-size:.85rem;font-weight:600;cursor:pointer}.fb-thread-chip:hover{border-color:var(--coral)}.fb-thread-chip.is-active{background:var(--ink);color:var(--bg);border-color:var(--ink)}.fb-new-badge{font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.02em;padding:2px 7px;border-radius:var(--pill);background:var(--danger);color:#fff}.fb-thread-panel{margin-top:14px;padding:14px;border-radius:14px;background:var(--surface-2);border:1.5px solid var(--line)}.auth .btn-primary{width:100%}.remember-me{display:flex;align-items:center;gap:8px;margin:-6px 0 18px;font-size:.85rem;font-weight:500;color:var(--text);text-transform:none;letter-spacing:normal;cursor:pointer}.remember-me input{width:16px;height:16px}.notice{margin:16px 0 0;padding:12px 14px;border-radius:12px;font-size:.92rem;font-weight:500}.notice.notfound{background:var(--sky-tint);color:var(--empty-ink)}.notice.error{background:var(--danger-soft);color:var(--danger-ink)}.hint{margin:20px 0 0;color:var(--muted);font-size:.76rem;text-align:left}.portal,.portal-shell{min-height:100dvh;background:var(--home-bg)}.portal-shell{display:flex;flex-direction:column}.portal-shell>.portal{flex:0 0 auto;min-height:0}.portal-footer{padding:8px 20px 28px;background:var(--home-bg)}.portal-footer-inner{max-width:var(--maxw);margin:0 auto;padding-top:24px;border-top:1px solid color-mix(in srgb,var(--line) 55%,transparent)}.portal-shell:has(.portal-ind) .portal-footer-inner{max-width:1240px}.portal-footer-logo{width:100%;height:auto}.portal-footer-logo.is-color{display:block}.portal-footer-logo.is-white,:root[data-theme=dark] .portal-footer-logo.is-color{display:none}:root[data-theme=dark] .portal-footer-logo.is-white{display:block}.portal-footer-row{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px;margin-top:14px;color:var(--muted);font-size:.8rem}.portal-footer-row p{margin:0}.portal-footer-row a{color:var(--muted);text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:3px}.portal-footer-row a:hover{color:var(--ink);-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.topbar{position:-webkit-sticky;position:sticky;top:var(--imp-bar-h);z-index:10;background:hsla(0,0%,100%,.9);-webkit-backdrop-filter:saturate(180%) blur(8px);backdrop-filter:saturate(180%) blur(8px);border-bottom:1px solid var(--line)}.menu-wrap,.stub-inner,.topbar-inner{max-width:var(--maxw);margin:0 auto}.topbar-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 20px}.menu-wrap{padding:34px 20px 32px}.menu-wrap h1{font-size:1.9rem;margin-bottom:22px}.stub{min-height:60dvh;background:linear-gradient(180deg,var(--sky) 0,var(--sky-deep) 100%);padding:40px 0}.stub-inner{padding:0 20px}.stub-card{background:var(--surface);border-radius:24px;padding:44px 34px;max-width:440px;box-shadow:0 30px 60px -20px rgba(20,40,70,.35)}.stub-tag{display:inline-block;margin-bottom:18px;padding:7px 18px;border-radius:var(--pill);background:var(--coral);color:#fff;font-size:.76rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.stub-card h1{font-size:1.7rem;margin-bottom:10px}.stub-card p{color:var(--muted);margin:0 0 26px}@media (min-width:768px){body{font-size:17px}.auth-card h1{font-size:2.3rem}.menu-wrap{padding:46px 20px 40px}.menu-wrap h1{font-size:2.4rem}}.lvl-default{--lvl-ac:#aab2c0;--lvl-tx:#3d4350}.lvl-gray{--lvl-ac:#9aa1ac;--lvl-tx:#40454e}.lvl-brown{--lvl-ac:#c39a72;--lvl-tx:#6e4a2c}.lvl-orange{--lvl-ac:#ef9f4a;--lvl-tx:#995f1d}.lvl-yellow{--lvl-ac:#e0bd4b;--lvl-tx:#85630f}.lvl-green{--lvl-ac:#82b85e;--lvl-tx:#3b6d11}.lvl-blue{--lvl-ac:#6aa4e2;--lvl-tx:#185fa5}.lvl-purple{--lvl-ac:#9d80dd;--lvl-tx:#4b3a8f}.lvl-pink{--lvl-ac:#e07db0;--lvl-tx:#993556}.lvl-red{--lvl-ac:#e5776c;--lvl-tx:#a32d2d}:root[data-theme=dark] .lvl-default{--lvl-tx:#c3cad6}:root[data-theme=dark] .lvl-gray{--lvl-tx:#c4c9d1}:root[data-theme=dark] .lvl-brown{--lvl-tx:#dcb996}:root[data-theme=dark] .lvl-orange{--lvl-tx:#f3b878}:root[data-theme=dark] .lvl-yellow{--lvl-tx:#ecd06e}:root[data-theme=dark] .lvl-green{--lvl-tx:#a6d68a}:root[data-theme=dark] .lvl-blue{--lvl-tx:#8fc0f0}:root[data-theme=dark] .lvl-purple{--lvl-tx:#c0aaf0}:root[data-theme=dark] .lvl-pink{--lvl-tx:#f0a3c9}:root[data-theme=dark] .lvl-red{--lvl-tx:#f39a90}[class*=lvl-]{--lvl-bg:color-mix(in srgb,var(--lvl-ac) 20%,var(--surface));--lvl-soft:color-mix(in srgb,var(--lvl-ac) 9%,var(--surface))}.rg-root.is-personal{padding:16px;border:1.5px solid var(--line);border-radius:28px;background:var(--surface)}.rg-bar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px}.rg-days{display:flex;gap:4px;flex:1 1 100%;min-width:0;padding:5px;overflow-x:auto;scrollbar-width:none;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--seg-bg)}.rg-days::-webkit-scrollbar{display:none}.rg-day{flex:1 1;min-width:max-content;display:inline-flex;align-items:baseline;justify-content:center;gap:8px;padding:10px 20px;border:0;border-radius:var(--pill);background:transparent;color:var(--muted);font-family:var(--font-sans);font-size:.95rem;font-weight:700;white-space:nowrap;cursor:pointer}.rg-day:hover{color:var(--ink)}@media (max-width:600px){.rg-day{gap:6px;padding:9px 14px;font-size:.9rem}}.rg-day.is-active{background:var(--ink);color:var(--bg)}.rg-day-n{font-size:.85rem;font-weight:600;opacity:.6}.rg-day-ok{font-size:.85rem;color:var(--ok)}.rg-day.is-active .rg-day-ok{color:inherit;opacity:.7}.rg-day-warn{display:inline-flex;align-items:center;gap:3px;font-size:.8rem;color:var(--coral-600)}.rg-day.is-active .rg-day-warn{color:inherit;opacity:.85}.cf-root{margin-top:18px}.cf-summary{margin:16px 2px 20px;color:var(--muted);font-size:.95rem;line-height:1.5}.cf-kid-search{max-width:420px;margin:0 0 18px}.cf-kid-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0 0 14px}.cf-list{display:flex;flex-direction:column;gap:16px}.cf-empty{padding:24px;border:1.5px dashed var(--line);border-radius:18px;color:var(--ok);font-weight:600;text-align:center}.rg-tools{gap:10px}.cyc-sw,.rg-tools{display:flex;flex-wrap:wrap;align-items:center}.cyc-sw{gap:10px 14px;margin:0 0 14px}.cyc-sw-note{color:var(--muted);font-size:.88rem;font-weight:600}.cyc-sw-link{padding:0;border:0;background:none;color:var(--coral-600);font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}.cyc-sw-confirm{flex-wrap:wrap;gap:8px 10px;color:var(--ink);font-size:.88rem;font-weight:600}.cyc-sw-confirm,.rg-field{display:inline-flex;align-items:center}.rg-field{gap:12px;color:var(--muted);font-size:.95rem;font-weight:500;letter-spacing:normal;text-transform:none}.pl-cycle,.rg-filters select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding:10px 40px 10px 18px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--input-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b6b6b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 9l5-5 5 5M7 15l5 5 5-5'/%3E%3C/svg%3E") no-repeat right 14px center;color:var(--ink);font-family:var(--font-sans);font-size:.95rem;font-weight:600;cursor:pointer}:root[data-theme=dark] .pl-cycle,:root[data-theme=dark] .rg-filters select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2393908a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 9l5-5 5 5M7 15l5 5 5-5'/%3E%3C/svg%3E")}.pl-cycle:focus,.rg-filters input:focus,.rg-filters select:focus{border-color:var(--ink);outline:none}.rg-btn{padding:9px 18px;border:1.5px solid var(--line);border-radius:var(--pill);background:transparent;color:var(--ink);font-family:var(--font-sans);font-size:.9rem;font-weight:700;cursor:pointer}.rg-btn.is-on,.rg-btn:hover{border-color:var(--ink)}.rg-zoom{display:inline-flex;padding:3px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--seg-bg)}.rg-zoom button{padding:6px 12px;border:0;border-radius:var(--pill);background:transparent;color:var(--muted);font-family:var(--font-sans);font-size:.85rem;font-weight:700;cursor:pointer}.rg-zoom button.is-active{background:var(--ink);color:var(--bg)}.rg-space-switch{display:inline-flex;gap:4px;width:max-content;max-width:100%;padding:4px;margin-bottom:14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--seg-bg);overflow-x:auto;scrollbar-width:none}.rg-space-switch::-webkit-scrollbar{display:none}.rg-space-opt{flex:0 0 auto;padding:8px 18px;border:0;border-radius:var(--pill);background:transparent;color:var(--muted);font-family:var(--font-sans);font-size:.9rem;font-weight:700;white-space:nowrap;cursor:pointer}.rg-space-opt:hover{color:var(--ink)}.rg-space-opt.is-active{background:var(--ink);color:var(--bg)}.rg-space-opt[class*=lvl-].is-active{background:var(--lvl-ac);color:#fff}.rg-root.is-weekview:-webkit-full-screen{background:var(--bg);padding:16px;overflow:auto}.rg-root.is-weekview:fullscreen{background:var(--bg);padding:16px;overflow:auto}.wk{display:flex;flex-direction:column;gap:16px}.wk-day{border-radius:14px;overflow:hidden;background:#fff}.wk-day-banner{font-family:var(--font-display,var(--font-sans));font-weight:700;font-size:.9rem;color:var(--ink);padding:8px 14px;background:var(--sky-tint);border-bottom:1.5px solid var(--line)}.wk-day-body{display:grid;grid-template-columns:44px 1fr 1fr;grid-gap:4px;gap:4px;padding:8px;overflow-x:auto}.wk-day-body>*{min-width:160px}.wk-ruler{position:relative;min-width:44px!important}.wk-tick{position:absolute;right:4px;transform:translateY(-50%);font-size:.62rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.wk-space{display:flex;flex-direction:column}.wk-space-head{text-align:center;font-size:.68rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:5px 0;border-radius:6px;color:#fff}.wk-space-head.school{background:var(--board-navy)}.wk-space-head.skvo{background:var(--coral-600)}.wk-lane-heads{display:grid;font-size:.6rem;font-weight:700;color:var(--muted);text-align:center;padding:3px 0;border-bottom:1px solid var(--line)}.wk-lane-heads .is-overflow{color:#c0392b}.wk-track{position:relative;border:1px dashed var(--line);border-radius:8px;margin-top:3px}.wk-track.is-over{border-color:var(--coral);background:#fff4f0}.wk-gridline{position:absolute;left:0;right:0;border-top:1px dashed var(--line)}.wk-untimed{display:flex;align-items:flex-start;gap:8px;padding:6px 8px 10px}.wk-untimed-cards{display:flex;flex-wrap:wrap;gap:6px;flex:1 1}.wk-card{border:1px solid var(--line);border-radius:6px;background:#fff;padding:4px 6px;font-size:.72rem;line-height:1.3;display:flex;flex-direction:column;gap:1px;overflow:hidden;z-index:1}.wk-card-body{flex:1 1;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:0}.wk-card.is-cancelled{opacity:.55;text-decoration:line-through}.wk-card.is-draggable{cursor:-webkit-grab;cursor:grab;border-color:var(--board-navy)}.wk-card.is-draggable:active{cursor:-webkit-grabbing;cursor:grabbing}.wk-card.is-moving{opacity:.5}.wk-card.is-hidden{opacity:.5;border-style:dashed;background:#f3f3f5}.wk-card-actions{position:absolute;top:2px;right:2px;display:flex;gap:2px;opacity:0;transition:opacity .1s;pointer-events:none}.wk-card:focus-within .wk-card-actions,.wk-card:hover .wk-card-actions{opacity:1;pointer-events:auto}.wk-card-btn{border:none;background:hsla(0,0%,100%,.85);border-radius:50%;width:16px;height:16px;line-height:1;font-size:.6rem;color:var(--muted);cursor:pointer;padding:0}.wk-card-btn:hover{background:#fff;color:var(--ink)}.wk-card-btn.is-active{background:#2f8f5c;color:#fff}.wk-card-btn.is-active:hover{background:#267a4d;color:#fff}.wk-card.is-confirmed{border-color:#2f8f5c;border-width:1.5px}.wk-card-check{display:inline-block;width:12px;height:12px;border-radius:50%;background:#2f8f5c;color:#fff;font-size:.56rem;line-height:12px;text-align:center;margin-right:3px}.wk-card-title{font-weight:700;color:var(--ink)}.wk-card-people,.wk-card-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.wk-card-people{font-size:.68rem;color:var(--text)}.wk-card-people u{-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted)}.wk-card-people i{font-style:italic}.wk-card-meta{font-size:.64rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.wk-card-where{display:flex;align-items:center;gap:3px;margin-top:1px;font-size:.62rem;min-width:0}.wk-card-where .wk-card-room{flex:1 1;min-width:0;margin-top:0;width:auto}.wk-card-where-label{color:var(--muted);font-weight:700;flex-shrink:0}.wk-card-room{display:block;width:100%;max-width:100%;margin-top:2px;padding:0 2px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);font-family:var(--font-sans);font-size:.62rem;cursor:pointer}.wk-card.is-violation{border-color:#c0392b;background:#fdecea}.wk-card-flag{font-size:.62rem;font-weight:700;color:#c0392b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.wk-card-tooltip{position:fixed;z-index:50;max-width:260px;background:var(--ink);color:#fff;border-radius:8px;padding:8px 10px;font-size:.72rem;line-height:1.35;box-shadow:0 6px 20px rgba(0,0,0,.25);pointer-events:none}.wk-card-tooltip-title{font-weight:700;margin-bottom:3px}.wk-card-tooltip-people{color:#e6e6ea;margin-bottom:3px}.wk-card-tooltip-people u{-webkit-text-decoration-color:#9a9aa5;text-decoration-color:#9a9aa5}.wk-card-tooltip-people i{font-style:italic}.wk-card-tooltip-meta{color:#b9b9c2;font-size:.66rem}.wk-card-tooltip-flags{margin-top:4px}.wk-card-tooltip-flags .wk-card-flag{color:#ff9f8f;white-space:normal;overflow:visible;text-overflow:clip;display:block}.wk-crit-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#e0bd4b;margin-right:3px}.wk-summary{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.wk-stat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:7px 12px;font-size:.78rem;font-weight:600;color:var(--text)}.wk-stat b{font-size:.95rem;color:var(--ink)}.wk-stat.is-warn{border-color:#c0392b;background:#fdecea;color:#c0392b}.wk-stat.is-warn b{color:#c0392b}.wk-stat.is-good{border-color:#2f8f5c;background:#eaf6ef;color:#2f8f5c}.wk-stat.is-good b{color:#2f8f5c}.wk-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:.74rem;color:var(--muted);margin-bottom:10px}.wk-legend span{display:inline-flex;align-items:center;gap:4px}.wk-legend u{-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted);color:var(--text)}.wk-legend i{font-style:italic;color:var(--text)}.wk-overflow-list{background:#fdecea;border:1px solid #c0392b;border-radius:12px;padding:10px 14px;font-size:.8rem;color:#c0392b;margin-bottom:12px}.wk-overflow-list p{margin:0 0 6px;font-weight:700}.wk-overflow-list ul{margin:0;padding-left:18px}.wk-overflow-list li{margin:2px 0}.rg-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;padding:16px;margin-bottom:14px;border:1.5px solid var(--line);border-radius:22px;background:var(--surface-2)}.rg-filters label{display:flex;flex-direction:column;gap:6px;min-width:0;color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.rg-filters input{width:100%;min-width:0;padding:10px 16px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--input-bg);color:var(--ink);font-family:var(--font-sans);font-size:.95rem}.rg-filters select{width:100%;min-width:0;text-transform:none;letter-spacing:normal}@media (max-width:480px){.rg-filters{grid-template-columns:1fr}}.wk-teacher-filter{display:flex;flex-direction:column;gap:4px;font-size:.66rem;position:relative}.wk-teacher-filter-label{color:var(--text)}.wk-multiselect{position:relative}.wk-multiselect summary{padding:8px 10px;border:1.5px solid var(--line);border-radius:10px;font-family:var(--font-sans);font-size:.88rem;background:#fff;color:var(--text);cursor:pointer;list-style:none}.wk-multiselect summary::-webkit-details-marker{display:none}.wk-multiselect summary:after{content:" ▾";color:var(--muted)}.wk-multiselect-panel{position:absolute;z-index:5;top:calc(100% + 4px);left:0;min-width:220px;max-height:260px;overflow-y:auto;background:#fff;border:1.5px solid var(--line);border-radius:10px;box-shadow:var(--shadow-md);padding:6px}.wk-multiselect-item{display:flex;align-items:center;gap:6px;padding:4px 6px;font-size:.8rem;color:var(--text);border-radius:6px;cursor:pointer}.wk-multiselect-item:hover{background:#f3f3f5}.wk-multiselect-clear{display:block;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);color:var(--coral-600);font-weight:700;font-size:.76rem;cursor:pointer;padding:4px 6px 6px;margin-bottom:4px}.pp{position:relative;display:flex;flex-direction:column;gap:6px;min-width:0}.pp-label{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.pp-field{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-width:0;padding:10px 14px 10px 18px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--input-bg);color:var(--muted);font-family:var(--font-sans);font-size:.95rem;font-weight:600;text-align:left;cursor:pointer}.pp-field>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pp-field.has-value{color:var(--ink)}.pp-field svg{flex:0 0 auto;color:var(--muted);transition:transform .15s}.pp-field.is-open{border-color:var(--ink)}.pp-field.is-open svg{transform:rotate(180deg)}.pp-panel{position:absolute;z-index:30;top:calc(100% + 6px);left:0;width:max(100%,280px);padding:8px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-lg)}.pp-panel.is-right{left:auto;right:0}.pp-search{width:100%;margin-bottom:6px;padding:9px 14px!important;border:1.5px solid var(--line);border-radius:12px!important;background:var(--input-bg);color:var(--ink);font-family:var(--font-sans);font-size:.9rem}.pp-list{display:flex;flex-direction:column;max-height:264px;overflow-y:auto;overscroll-behavior:contain}.pp-item{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:8px 10px;border:0;border-radius:12px;background:none;color:var(--text);font-family:var(--font-sans);font-size:.95rem;font-weight:500;text-align:left;cursor:pointer}.pp-item:hover{background:var(--surface-2)}.pp-item.is-on{color:var(--ink);font-weight:700}.pp-box{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:22px;height:22px;border:1.5px solid var(--line-strong);border-radius:7px;color:#fff}.pp-item.is-on .pp-box{border-color:var(--coral);background:var(--coral)}.pp-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pp-empty{margin:10px;color:var(--muted);font-size:.88rem}.pp-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:6px;padding:8px 4px 2px;border-top:1.5px solid var(--line)}.pp-clear{padding:6px 4px;background:none;color:var(--muted);text-decoration:underline;text-underline-offset:3px}.pp-clear,.pp-done{border:0;font-family:var(--font-sans);font-size:.88rem;font-weight:700;cursor:pointer}.pp-done{padding:8px 18px;border-radius:var(--pill);background:var(--ink);color:var(--bg)}.pp-chips{display:flex;flex-wrap:wrap;gap:6px}.pp-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:5px 8px 5px 12px;border:0;border-radius:var(--pill);background:var(--ink);color:var(--bg);font-family:var(--font-sans);font-size:.8rem;font-weight:700;cursor:pointer}.pp-chip span{opacity:.7;font-size:1rem;line-height:1}@media (max-width:600px){.pp-panel{position:static;width:100%;margin-top:2px;box-shadow:none}}.rg-filters .rg-filters-reset{grid-column:1/-1;justify-self:start;padding:2px;border:0;background:none;color:var(--muted);font-family:var(--font-sans);font-size:.85rem;font-weight:700;text-decoration:underline;cursor:pointer}.rg-state{padding:28px 8px;text-align:center;color:var(--muted)}.rg-state-err{color:var(--danger)}.rg-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:44px 12px 28px;text-align:center}.rg-empty-icon{display:grid;place-items:center;width:64px;height:64px;margin-bottom:10px;border-radius:20px;background:var(--empty-tint);color:var(--empty-ink)}.rg-empty-icon svg{width:28px;height:28px}.rg-empty h3{font-family:var(--font-sans);font-size:1.35rem;font-weight:800;line-height:1.2;color:var(--ink)}.rg-empty p{margin:0;color:var(--muted)}.rg-empty-cta{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:12px 24px;border:1.5px solid var(--line);border-radius:var(--pill);color:var(--ink);font-weight:700}.rg-empty-cta:hover{border-color:var(--ink)}.rg-empty-cta svg{width:18px;height:18px}.rg-empty-monday{gap:0}.rg-monday-toggle{display:flex;flex-direction:column;align-items:center;gap:6px;background:none;border:none;padding:0;cursor:pointer;color:inherit;font:inherit}.rg-monday-toggle h3{margin:0}.rg-monday-toggle p{margin:0;color:var(--muted)}.rg-monday-more{max-width:40ch;margin:14px 0 0;padding:14px 18px;border-radius:16px;background:var(--empty-tint);color:var(--empty-ink);font-size:.92rem;line-height:1.4}.pl-week{display:flex;flex-direction:column;gap:24px;margin-top:16px}.pl-week-day-head{margin:0 0 8px;font-family:var(--font-display);font-size:1.05rem;font-weight:700;color:var(--ink)}.pl-week-day .pl{margin-top:0}.wc-grid{display:grid;grid-template-columns:44px repeat(5,minmax(0,1fr));grid-column-gap:8px;column-gap:8px;margin-top:10px}.wc-head{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:6px;min-width:0}.wc-head .wc-where{flex:0 0 auto;padding:1px 6px;border-radius:var(--pill);font-size:.6rem;font-weight:700;line-height:1.4;white-space:nowrap}.wc-head .wc-where.is-none{background:var(--surface-2);color:var(--muted);font-weight:600}.wc-head h3{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-display);font-size:.92rem;font-weight:700;color:var(--ink)}.wc-sqs{position:absolute;left:8px;right:8px;bottom:6px;display:flex;flex-wrap:wrap;gap:3px}.wc-sq{width:14px;height:14px;border-radius:4px;flex:0 0 auto}.wc-sq.att-tone-good{background:var(--ok)}.wc-sq.att-tone-bad{background:var(--danger)}.wc-sq.att-tone-warn{background:#d99a1e}.wc-sq.att-tone-neutral{background:#9ca3af}.wc-sq.att-tone-purple{background:#8b5cf6}.wc-sq.att-tone-blue{background:#3b82f6}.wc-sq.att-tone-teal{background:#0d9488}.wc-sq.att-tone-empty{background:transparent;border:1.5px solid var(--line-strong)}.wc-axis{position:relative}.wc-axis span{position:absolute;right:6px;transform:translateY(-50%);color:var(--muted);font-size:.72rem;font-weight:700}.wc-col{position:relative;min-width:0;border-left:1px solid var(--line);background-image:linear-gradient(to bottom,var(--line) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in srgb,var(--line) 45%,transparent) 1px,transparent 1px);background-size:100% var(--wc-h),100% calc(var(--wc-h) / 2)}.wc-card.pl-row{position:absolute;box-sizing:border-box;flex-direction:column;gap:4px;overflow:hidden;padding:7px 8px 26px;border-radius:12px;background:var(--surface)}.wc-card .pl-time{flex-direction:row;align-self:flex-start;gap:3px;min-width:0;padding:2px 7px;border-radius:9px;font-size:.68rem;line-height:1.3;white-space:nowrap}.wc-card .pl-time span:last-child:before{content:"–";margin-right:3px}.wc-card .pl-body{gap:4px;min-height:0;overflow:hidden}.wc-card .pl-title{font-size:.78rem;line-height:1.2;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.wc-card .pl-tags{gap:3px;max-height:40px;overflow:hidden}.wc-card .pl-meta{font-size:.68rem;line-height:1.25;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.wc-card .pl-flag,.wc-card .pl-lvl,.wc-card .pl-room,.wc-card .pl-space{padding:1px 6px;font-size:.62rem;line-height:1.35;white-space:nowrap}.wc-card .zoom-badge{font-size:.6rem;padding:1px 6px}.wc-card.is-short{gap:3px;padding:6px 8px 24px}.wc-card.is-short .pl-title{-webkit-line-clamp:2}.wc-card.is-short .pl-meta{display:none}.wc-card.is-overlap{border-color:var(--coral)}.wc-card.is-choice{border-color:var(--sky);border-style:dashed}.wc-untimed{display:grid;grid-template-columns:44px repeat(5,minmax(0,1fr));grid-column-gap:8px;column-gap:8px;margin-top:10px}.wc-untimed-col{gap:8px;min-width:0}.pl,.wc-untimed-col{display:flex;flex-direction:column}.pl{gap:10px;margin-top:16px}.pl-row{display:flex;gap:16px;width:100%;padding:14px 16px;border:1.5px solid var(--line);border-radius:20px;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background .12s ease,border-color .12s ease}.pl-row:hover{background:var(--surface-2);border-color:var(--line-strong)}.pl-row:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.pl-row.is-cancelled{opacity:.65}.pl-row.is-cancelled .pl-title{text-decoration:line-through}.pl-time{flex:0 0 auto;align-self:flex-start;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:60px;padding:8px 10px;border-radius:14px;background:var(--lvl-bg);color:var(--lvl-tx);font-family:var(--font-sans);font-size:.85rem;font-weight:800;line-height:1.2}.pl-time span:last-child{font-weight:600;opacity:.65}.pl-body{display:flex;flex-direction:column;gap:6px;min-width:0}.pl-title{font-family:var(--font-sans);font-size:1.05rem;font-weight:700;line-height:1.25;color:var(--ink)}.pl-tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.pl-flag,.pl-lvl,.pl-room,.pl-space{padding:3px 10px;border-radius:var(--pill);font-size:.75rem;font-weight:700}.pl-where-label{color:var(--muted);font-size:.75rem;font-weight:700}.pl-lvl,.pl-room,.pl-space{background:var(--lvl-bg);color:var(--lvl-tx)}.pl-flag{background:var(--danger);color:#fff}.pl-meta{color:var(--muted);font-size:.9rem}.pl-conflict{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1.5px solid var(--coral);border-radius:20px;background:color-mix(in srgb,var(--coral) 12%,var(--surface))}.pl-conflict-head{justify-content:space-between}.pl-conflict-h,.pl-conflict-head{display:flex;align-items:center;gap:8px}.pl-conflict-h{margin:0;color:var(--coral-600);font-weight:700;font-size:.92rem}.pl-conflict-h svg{width:18px;height:18px;flex:0 0 auto}.pl-conflict-badge{padding:3px 10px;border-radius:var(--pill);background:var(--surface);color:var(--coral-600);font-size:.78rem;font-weight:700}.pl-conflict-sub{margin:0 0 10px;color:var(--muted);font-size:.85rem}.pl-conflict-list,.pl-conflict-row{display:flex;flex-direction:column}.pl-conflict-or{align-self:center;margin:8px 0;color:var(--muted);font-size:.78rem;font-weight:700}.pl-conflict-item{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:14px;background:var(--surface);border:1.5px solid var(--line)}.pl-conflict-item-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.pl-conflict-title{font-family:var(--font-sans);font-weight:700;font-size:.95rem;color:var(--ink)}.pl-conflict-teacher{flex:0 0 auto;color:var(--muted);font-size:.8rem;white-space:nowrap}.pl-conflict-desc{margin:0;color:var(--muted);font-size:.85rem;line-height:1.45}.pl-conflict-actions{display:flex;align-items:center;gap:8px}.pl-conflict-btn{flex:1 1;height:36px;padding:0 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:transparent;color:var(--ink);font-weight:700;font-size:.85rem;cursor:pointer}.pl-conflict-btn:hover{border-color:var(--line-strong)}.pl-conflict-btn.is-primary{flex:2 1;border-color:var(--coral);background:var(--coral);color:#fff}.pl-conflict-btn.is-primary:hover{background:var(--coral-600);border-color:var(--coral-600)}.pl-conflict-btn:disabled{opacity:.6;cursor:default}.pl-conflict-err{margin:0;color:var(--danger);font-size:.8rem}.pl-choice{border-color:var(--sky);background:color-mix(in srgb,var(--sky) 10%,var(--surface))}.pl-choice .pl-conflict-h{color:var(--ink)}.pl-choice .pl-conflict-badge{color:var(--ink);white-space:nowrap}.pl-choice-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:8px;gap:8px}.pl-choice-item{display:flex;flex-direction:column;gap:6px;min-height:44px;padding:12px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);color:inherit;font:inherit;text-align:left;cursor:pointer}.pl-choice-item:hover{border-color:var(--sky)}.pl-choice-item:focus-visible{outline:2px solid var(--sky-deep);outline-offset:2px}.pl-choice-tag{padding:1px 8px;border-radius:var(--pill);background:color-mix(in srgb,var(--sky) 18%,var(--surface));color:var(--sky-deep);font-size:.72rem;font-weight:700;white-space:nowrap}@media (max-width:480px){.pl-choice-list{grid-template-columns:1fr}}.pl-confirm-backdrop{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--overlay)}.pl-confirm{display:flex;flex-direction:column;gap:14px;width:100%;max-width:380px;padding:20px;border:1.5px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:var(--shadow-lg)}.pl-confirm-q{margin:0;color:var(--ink);font-size:1rem;font-weight:700;line-height:1.4}.pl-break{display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 16px;border-radius:14px;background:var(--surface-2);color:var(--muted);font-size:.82rem;font-weight:700}.pl-break.is-info{background:var(--empty-tint);color:var(--empty-ink)}.pl-break-time{font-weight:600;opacity:.75}.rg{--rg-timew:56px;--rg-col:132px;--rg-fs:0.9rem}.rg.zoom-sm{--rg-col:104px;--rg-fs:0.8rem}.rg.zoom-lg{--rg-col:172px;--rg-fs:0.98rem}.rg-scroll{overflow:auto;max-height:68dvh;min-height:260px;padding:14px 16px 16px;border:1.5px solid var(--line);border-radius:24px;background:var(--surface);-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.rgt{width:max-content;min-width:max(100%,var(--rgt-min,0px));font-size:var(--rg-fs)}.rgt-headrow{top:0;z-index:6;display:flex;gap:8px;padding-bottom:10px}.rgt-corner,.rgt-headrow{position:-webkit-sticky;position:sticky;background:var(--surface)}.rgt-corner{left:0;z-index:2;flex:none;width:var(--rg-timew)}.rgt-head{flex:none;width:var(--rg-col);display:flex;align-items:center;justify-content:center;min-height:36px;padding:8px;border-radius:12px;background:var(--surface-2);color:var(--ink);font-size:.78rem;font-weight:700;line-height:1.15;text-align:center}.rgt-space-group{display:flex;flex-direction:column;gap:4px}.rgt-space-band{text-align:center;padding:4px 6px;border-radius:5px;font-family:var(--font-display);font-weight:700;font-size:.7rem;letter-spacing:.04em;text-transform:uppercase;color:#fff}.rgt-space-band.school{background:var(--board-navy)}.rgt-space-band.skvo{background:var(--coral-600)}.rgt-space-band.offsite{background:var(--board-offsite)}.rgt-space-heads{display:flex}.rgt-space-lanes{display:flex;gap:6px}.rgt-space-group.offsite .rgt-head,.rgt-space-lanes.offsite .rgt-lane{width:calc(var(--rg-col) * .85)}.rgt-space-group.skvo,.rgt-space-lanes.skvo{border-left:2px solid var(--board-line);padding-left:10px;margin-left:4px}.rgt-body{position:relative;display:flex;gap:6px}.rgt-ruler{position:-webkit-sticky;position:sticky;left:0;z-index:5;flex:none;width:var(--rg-timew);background:var(--surface)}.rgt-tick{position:absolute;right:6px;transform:translateY(-50%);white-space:nowrap;color:var(--muted);font-size:.7rem;font-weight:700}.rgt-tick.is-half{font-size:.62rem;font-weight:500;opacity:.55}.rgt-lanes{position:relative;display:flex;gap:6px}.rgt-lane{position:relative;flex:none;width:var(--rg-col)}.rgt-lines{position:absolute;inset:0;z-index:0;pointer-events:none}.rgt-line{position:absolute;left:0;right:0;border-top:1px solid var(--line)}.rgt-line.is-half{opacity:.5}.rgt-bands{left:calc(var(--rg-timew) + 8px);top:0;bottom:0;z-index:1;pointer-events:none}.rgt-band,.rgt-bands{position:absolute;right:0}.rgt-band{left:0;border-radius:8px;background:var(--surface-2);color:var(--muted)}.rgt-band.is-info{background:var(--empty-tint);color:var(--empty-ink)}.rgt-band-inner{position:-webkit-sticky;position:sticky;left:calc(var(--rg-timew) + 8px);display:inline-flex;align-items:center;gap:8px;height:100%;padding:0 4px;white-space:nowrap}.rgt-band-label{font-size:.8rem;font-weight:700}.rgt-band-time{font-size:.68rem;font-weight:600;opacity:.75}.rgt-fw-area{position:absolute;left:calc(var(--rg-timew) + 6px);right:0;top:0;bottom:0;z-index:3}.rgt-fullwidth{position:absolute;padding:0 3px}.rgt-fullwidth .rg-card{height:100%;transform:none;border:1.5px solid var(--line);background:var(--surface-2);overflow:hidden}.rgt-fullwidth .rg-card-title{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.rgt-ev{position:absolute;z-index:2;padding:0 1px}.rgt-ev .rg-card{height:100%;gap:2px;padding:6px 8px;overflow:hidden}.rgt-ev .rg-card-title{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.rgt-untimed{margin-top:14px}.rgt-untimed-h{margin:0 0 8px;color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.rgt-untimed-list{display:flex;flex-wrap:wrap;gap:8px}.rgt-untimed-list .rg-card{width:min(260px,70vw)}.rg-card{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:3px;width:100%;padding:8px 10px;border:0;border-radius:12px;background:var(--surface-2);color:var(--ink);font-family:var(--font-sans);text-align:left;cursor:pointer;transition:background .12s ease}.rg-card:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.rg-card-title{font-size:.86em;font-weight:700;line-height:1.2}.rg-card.is-cancelled{opacity:.65}.rg-card.is-cancelled .rg-card-title{text-decoration:line-through}.rg-card.is-compact{padding:6px 8px;gap:2px}.rg-card.is-compact .rg-card-title{font-size:.8em}.rg-card-teacher{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.76em;font-weight:500;line-height:1.2}.rg-card-tags{display:flex;align-items:center;flex-wrap:wrap;gap:4px}.rg-card-where-label{color:var(--muted);font-size:.68em;font-weight:700}.rg-card-space{align-self:flex-start;padding:1px 7px;border-radius:var(--pill);background:var(--lvl-bg);color:var(--lvl-tx);font-size:.68em;font-weight:700}.rg-card.paper{background:color-mix(in srgb,var(--pc) 16%,var(--surface));box-shadow:inset 3px 0 0 var(--pc)}.rg-card.paper:hover{background:color-mix(in srgb,var(--pc) 26%,var(--surface));z-index:6}.paper-navy{--pc:#5b74c9}.paper-coral{--pc:#e27a5f}.paper-blue{--pc:#5aa0d6}.paper-rust{--pc:#c8734a}.paper-slate{--pc:#8b93a7}.rg-card-cover{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:center}.rg-card.has-cover{justify-content:flex-end}.rg-card.has-cover:after{content:"";position:absolute;inset:0;z-index:0;background:rgba(12,13,22,.28)}.rg-card.has-cover .rg-card-title{position:relative;z-index:1;align-self:flex-start;max-width:100%;padding:3px 7px;border-radius:6px;background:rgba(15,16,24,.55);color:#fff;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.rg-scroll{padding:0 16px 16px}.rgt-headrow{gap:10px;padding:14px 0 10px;border-bottom:1.5px solid var(--line);margin-bottom:4px}.rgt-space-group{gap:0}.rgt-space-band{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:12px;font-family:var(--font-sans);font-size:.86rem;letter-spacing:0;text-transform:none;text-align:left}.rgt-space-band.school{background:color-mix(in srgb,var(--board-navy) 12%,var(--surface));color:var(--board-navy)}.rgt-space-band.skvo{background:color-mix(in srgb,var(--coral-600) 12%,var(--surface));color:var(--coral-600)}.rgt-space-band.offsite{background:color-mix(in srgb,var(--board-offsite) 12%,var(--surface));color:var(--board-offsite)}.rgt-space-band:before{content:"";width:9px;height:9px;border-radius:50%;background:currentColor}.rgt-space-count{margin-left:auto;padding:1px 8px;border-radius:var(--pill);background:var(--surface);color:var(--muted);font-size:.72rem;font-weight:700}.rgt-head{min-height:0;height:0;padding:0;background:none}.rgt-space-heads{gap:8px}.rgt-space-lanes{gap:8px;padding:0 4px;border-radius:14px}.rgt-space-lanes.school{background:color-mix(in srgb,var(--board-navy) 4%,transparent)}.rgt-space-lanes.skvo{background:color-mix(in srgb,var(--coral-600) 4%,transparent)}.rgt-space-lanes.offsite{background:color-mix(in srgb,var(--board-offsite) 4%,transparent)}.rgt-space-group.skvo,.rgt-space-lanes.skvo{border-left:0;margin-left:10px;padding-left:4px}.rgt-space-group.skvo{padding-left:0}.rgt-body,.rgt-lanes{gap:10px}.rgt-line{border-top-color:var(--line)}.rgt-line.is-half{border-top-style:dashed;opacity:.6}.rgt-tick{color:var(--ink);font-size:.74rem}.rgt-tick.is-half{color:var(--muted)}.rgt-band{border:1.5px dashed var(--line-strong);background:color-mix(in srgb,var(--surface-2) 70%,transparent)}.rgt-band.is-info{border-color:color-mix(in srgb,var(--empty-ink) 35%,transparent)}.rgt-band-label{color:var(--ink)}.rgt-band.is-info .rgt-band-label{color:var(--empty-ink)}.rgt-ev{padding:2px 0}.rgt-ev .rg-card{justify-content:flex-start;gap:3px;padding:8px 10px 8px 13px;border:1.5px solid var(--line);background:var(--surface);box-shadow:none;transition:border-color .12s ease,box-shadow .12s ease}.rgt-ev .rg-card.paper{background:var(--surface);box-shadow:inset 4px 0 0 var(--pc)}.rgt-ev .rg-card.paper:hover,.rgt-ev .rg-card:hover{z-index:6;border-color:var(--line-strong);background:var(--surface);box-shadow:inset 4px 0 0 var(--pc,var(--line-strong)),var(--shadow-md,0 6px 18px rgba(0,0,0,.08))}.rgt-ev .rg-card-cover,.rgt-ev .rg-card.has-cover:after{display:none}.rgt-ev .rg-card.has-cover .rg-card-title{padding:0;background:none;color:var(--ink);backdrop-filter:none;-webkit-backdrop-filter:none}.rg-card-time{color:var(--muted);font-size:.7em;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rgt-ev .rg-card-title{font-size:.84em;-webkit-line-clamp:3}.rgt-ev .rg-card-teacher{font-size:.74em}.rgt-ev .rg-card-foot{margin-top:auto}.rgt-ev .rg-chip{padding:0;border:0;background:none;color:var(--muted);font-size:.7em;font-weight:700}.rgt-ev .rg-card[class*=lvl-]{box-shadow:inset 4px 0 0 var(--lvl-ac)}.rgt-ev .rg-card[class*=lvl-]:hover{box-shadow:inset 4px 0 0 var(--lvl-ac),var(--shadow-md)}.rg-card-time{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px}.rg-card-room{min-width:0;max-width:100%;overflow:hidden;color:var(--ink);font-weight:600;opacity:.7;text-overflow:ellipsis;white-space:nowrap}.rgt-ev .rg-card-where-label{display:none}.rg-tools .rg-space-switch{margin-bottom:0}.rg-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0 0 10px 4px;color:var(--muted);font-size:.8rem;font-weight:600}.rg-legend-h{color:var(--muted);font-weight:500}.rg-legend-item{display:inline-flex;align-items:center;gap:6px}.rg-legend-item i{width:22px;height:12px;border-radius:var(--pill);background:var(--lvl-bg);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--lvl-ac) 45%,transparent)}.rgt-now{position:absolute;left:0;right:0;z-index:4;height:0;border-top:2px solid var(--coral-600);pointer-events:none}.rgt-now:before{content:"";left:-5px;top:-6px;width:10px;height:10px;border-radius:50%}.rgt-now span,.rgt-now:before{position:absolute;background:var(--coral-600)}.rgt-now span{left:10px;top:-11px;padding:1px 6px;border-radius:6px;color:#fff;font-size:.66rem;font-weight:700}.sc-modal-backdrop{position:fixed;inset:0;z-index:50;display:flex;align-items:flex-end;justify-content:center;background:var(--overlay)}.sc-modal{position:relative;width:100%;max-width:560px;max-height:88vh;overflow-y:auto;padding:26px 22px 30px;border:1.5px solid var(--line);border-radius:24px 24px 0 0;background:var(--surface);color:var(--text);box-shadow:var(--shadow-lg)}.sc-modal-x{position:absolute;top:14px;right:14px;width:34px;height:34px;border:0;border-radius:50%;background:var(--surface-2);color:var(--ink);font-size:.9rem;cursor:pointer}.sc-modal-cover{display:block;width:100%;height:118px;margin:4px 0 14px;border-radius:14px;background:var(--surface-2);object-fit:cover;object-position:center}.sc-modal-title{margin:0 34px 6px 0;font-family:var(--font-display);font-size:1.3rem;color:var(--ink)}.sc-modal-checklist{max-height:180px;overflow-y:auto;border:1.5px solid var(--line);border-radius:10px;padding:6px;background:#fff}.sc-modal-flag{display:inline-block;margin:0 0 14px;padding:4px 12px;border-radius:var(--pill);background:var(--danger);color:#fff;font-size:.78rem;font-weight:700}.sc-modal-comment{margin-top:18px;padding:14px 16px;border-radius:14px;background:var(--danger-soft);color:var(--danger-ink);font-size:.9rem}.sc-modal-comment strong{display:block;margin-bottom:4px}@media (min-width:768px){.rg-root.is-personal{padding:24px}.rg-filters{grid-template-columns:repeat(4,1fr)}.sc-modal-backdrop{align-items:center;padding:24px}.sc-modal{border-radius:24px}}.les{margin-top:22px;border-top:1px solid var(--line);padding-top:18px}.les-title{display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:1.02rem;font-weight:700;color:var(--ink);margin:0 0 12px}.les-count{font-family:var(--font-sans);font-size:.72rem;font-weight:700;color:#fff;background:var(--coral);border-radius:999px;padding:1px 9px}.les-muted{color:var(--muted);font-size:.88rem;margin:6px 0}.les-list{display:flex;flex-direction:column;gap:8px}.les-row{border:1.5px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface)}.les-row.is-open{border-color:var(--coral)}.les-row-head{width:100%;display:flex;align-items:center;gap:10px;padding:11px 12px;border:0;background:var(--surface);cursor:pointer;text-align:left;font-family:var(--font-sans)}.les-row-num{flex:0 0 auto;font-family:var(--font-display);font-weight:700;font-size:.82rem;color:var(--coral)}.les-row-title{flex:1 1 auto;font-weight:600;font-size:.92rem;color:var(--ink);line-height:1.25}.les-row-date{font-size:.74rem;white-space:nowrap}.les-row-chev,.les-row-date{flex:0 0 auto;color:var(--muted)}.les-row-chev{transition:transform .16s ease}.les-row.is-open .les-row-chev{transform:rotate(180deg)}.les-row-body{padding:4px 12px 14px;border-top:1px dashed var(--line)}.les-teaser{max-width:680px;margin:10px 0 4px;font-size:.9rem;color:var(--muted)}.les-sec{margin-top:14px}.les-sec-h{margin:0 0 8px;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.les-mats{display:flex;flex-direction:column;gap:8px}.les-mat{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface-2);color:var(--ink);transition:border-color .12s ease,transform .12s ease}.les-mat:hover{border-color:var(--coral);transform:translateY(-1px)}.les-mat-ic{flex:0 0 34px;height:34px;display:grid;place-items:center;border-radius:9px;background:var(--primary-050);color:var(--primary);font-size:1rem}.les-mat-slides .les-mat-ic,.les-mat-video .les-mat-ic{background:var(--icon-tint);color:var(--coral-600)}.les-mat-pdf .les-mat-ic{background:var(--danger-soft);color:var(--danger)}.les-mat-body{display:flex;flex-direction:column;min-width:0}.les-mat-title{font-size:.9rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.les-mat-sub{font-size:.74rem;color:var(--muted)}.les-mat-wide{display:flex;flex-direction:column;gap:6px}.les-mat-cap{font-size:.82rem;color:var(--muted)}.les-mat-cap:hover{color:var(--coral-600)}.les-yt{position:relative;width:100%;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#000 50%/cover no-repeat;border:0}.les-yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.les-yt-facade{cursor:pointer;display:block;padding:0}.les-yt-facade:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.18)}.les-yt-play{position:absolute;z-index:1;top:50%;left:50%;transform:translate(-50%,-50%);width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:var(--coral);color:#fff;font-size:1.2rem;padding-left:4px;box-shadow:0 6px 18px rgba(0,0,0,.35)}.les-doc{font-size:.9rem;line-height:1.6;color:var(--text)}.les-bh{font-family:var(--font-display);font-weight:700;color:var(--ink);margin:14px 0 6px}.les-bh1{font-size:1.02rem}.les-bh2{font-size:.96rem}.les-bh3{font-size:.9rem}.les-bp{margin:7px 0}.les-bol,.les-bul{margin:7px 0;padding-left:20px}.les-bli{margin:3px 0}.les-btodo{list-style:none;margin-left:-20px;padding-left:22px;position:relative}.les-btodo:before{content:"☐";position:absolute;left:0}.les-btodo.is-done:before{content:"☑";color:var(--ok,#1e8e5a)}.les-btodo.is-done{color:var(--muted);text-decoration:line-through}.les-bcallout{display:flex;gap:8px;padding:10px 12px;margin:10px 0;background:var(--sky-tint,#e4f4ff);border-radius:10px}.les-bquote{margin:10px 0;padding:4px 0 4px 12px;border-left:3px solid var(--coral);color:var(--muted)}.les-btoggle{margin:8px 0}.les-btoggle summary{cursor:pointer;font-weight:600}.les-bcode{margin:10px 0;padding:10px 12px;background:var(--surface-2);border-radius:10px;font-size:.82rem;overflow-x:auto}.les-bhr{border:0;border-top:1px solid var(--line);margin:14px 0}.les-bfig{margin:12px 0}.les-bfig img{width:100%;border-radius:10px}.les-bfig figcaption{font-size:.76rem;color:var(--muted);margin-top:4px}.les-emptybox{margin:10px 0 0;padding:12px 14px;border:1px dashed var(--line);border-radius:10px;font-size:.86rem;color:var(--muted)}.les-emptybox a,.les-notion{color:var(--coral-600);font-weight:600}.les-notion{display:inline-block;margin-top:14px;font-size:.82rem}.sc-modal-lvl{display:inline-block;margin:2px 0 8px;font-size:.72rem;font-weight:700;padding:2px 10px;border-radius:999px;background:var(--lvl-ac,#aab2c0);color:#fff}.sc-modal-sub{margin:2px 34px 12px 0;font-size:.86rem;color:var(--muted)}.les-about{margin-top:14px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);overflow:hidden}.les-about>summary,.les-fold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:12px 14px;font-family:var(--font-display);font-weight:700;font-size:.95rem;color:var(--ink)}.les-about>summary::-webkit-details-marker,.les-fold>summary::-webkit-details-marker{display:none}.les-fold-chev{margin-left:auto;color:var(--muted);transition:transform .16s ease}.les-about[open] .les-fold-chev,.les-fold[open] .les-fold-chev{transform:rotate(180deg)}.les-about-grid{margin:0;padding:4px 14px 14px;display:grid;grid-gap:10px;gap:10px}.les-about-grid dt{font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}.les-about-grid dd{margin:0}.les-about-grid dd,.les-drill{font-size:.9rem;color:var(--ink)}.les-drill{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px;margin-top:8px;border:1.5px solid var(--line);border-radius:10px;background:var(--surface-2);font-family:var(--font-sans);font-weight:600;cursor:pointer;transition:border-color .12s ease,transform .12s ease}.les-drill:hover{border-color:var(--coral);transform:translateY(-1px)}.les-drill-chev{color:var(--coral-600);font-size:1.1rem}.les-sub{padding-top:2px}.les-back{display:inline-flex;align-items:center;gap:4px;border:0;background:none;padding:4px 2px;font-family:var(--font-sans);font-weight:700;font-size:.82rem;color:var(--coral-600);cursor:pointer;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.les-sub-h{margin:6px 0 12px;font-family:var(--font-display);font-size:1.1rem;font-weight:700;color:var(--ink)}.les-sub-body{display:flex;flex-direction:column;gap:8px}.les-fold{border:1.5px solid var(--line);border-radius:12px;background:var(--surface);overflow:hidden}.les-fold[open]{border-color:var(--coral)}.les-fold-t{font-family:var(--font-display)}.les-fold-n{font-family:var(--font-sans);font-size:.7rem;font-weight:700;color:#fff;background:var(--coral);border-radius:999px;padding:1px 8px}.les-fold-body{padding:6px 14px 14px;border-top:1px dashed var(--line)}.les-fold-body .les-mats{margin-bottom:10px}.pann{position:relative;max-width:760px;margin:0 0 28px;padding:16px 20px 18px 24px;overflow:hidden;border:1.5px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow-sm)}.pann:before{content:"";position:absolute;top:0;bottom:0;left:0;width:4px;background:var(--coral)}.pann-edit:before,.pann-empty:before{content:none}.pann-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.pann-label{display:inline-flex;align-items:center;gap:7px;color:var(--coral-600);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.pann-text{margin:0;color:var(--ink);font-family:var(--font-display);font-size:1.05rem;font-weight:500;line-height:1.55;white-space:pre-line}.pann-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin:-8px -10px -8px 0;padding:0;border:0;border-radius:50%;background:none;color:var(--muted);cursor:pointer}.pann-close:hover{background:var(--line);color:var(--ink)}.pann-edit-btn{padding:0;border:0;background:none;color:var(--muted);font-family:var(--font-sans);font-size:.8rem;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.pann-edit-btn:hover{color:var(--ink)}.pann-empty{display:block;width:100%;max-width:760px;margin:0 0 28px;padding:14px 18px;border:1.5px dashed var(--line);border-radius:18px;background:none;color:var(--muted);font-size:.92rem;font-weight:600;text-align:left;cursor:pointer}.pann-empty:hover{border-color:var(--line-strong);color:var(--ink)}.pann-edit{max-width:760px;margin:0 0 28px;padding:16px 18px;border-radius:18px;background:var(--surface);border:1.5px solid var(--line-strong)}.pann-field{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--input-bg);color:var(--text);font-family:var(--font-sans);font-size:.95rem;line-height:1.5;resize:vertical;outline:none}.pann-field:focus{border-color:var(--ink)}.pann-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px}.pann-actions .cp-btn{padding:9px 18px;font-size:.9rem}.pann-cancel{border:0;background:none;color:var(--muted);font-size:.88rem;font-weight:600;cursor:pointer}.pann-cancel:hover{color:var(--ink)}.imp-bar{position:-webkit-sticky;position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 16px;background:#8dc7ec;color:#000;font-size:.82rem}.imp-bar button{border:1px solid rgba(0,0,0,.55);background:transparent;color:#000;border-radius:999px;padding:4px 12px;font-weight:700;font-size:.78rem;cursor:pointer;white-space:nowrap}.imp-bar button:hover{background:rgba(0,0,0,.1)}.imp-bar{flex-wrap:wrap}.imp-roles{display:inline-flex;gap:2px;margin-left:auto;padding:2px;border-radius:999px;background:hsla(0,0%,100%,.45)}.imp-bar .imp-role{border:0;padding:4px 12px}.imp-bar .imp-role.is-active{background:#000;color:#fff}.imp-bar .imp-role:disabled{opacity:.6;cursor:default}.imp-bounced{display:flex;flex-basis:100%;align-items:center;gap:10px;margin:2px 0 0;padding:8px 12px;border-radius:10px;background:hsla(0,0%,100%,.7);font-weight:600;line-height:1.4}.imp-bar .imp-bounced-x{margin-left:auto;border:0;padding:2px 8px}.imp-kid{position:relative}.imp-bar .imp-kid-btn{font-weight:600;max-width:260px;overflow:hidden;text-overflow:ellipsis}.imp-kid-pop{position:absolute;top:calc(100% + 6px);right:0;z-index:40;display:flex;flex-direction:column;gap:8px;width:min(320px,calc(100vw - 32px));padding:10px;border-radius:14px;background:var(--surface);color:var(--ink);box-shadow:var(--shadow-lg)}.imp-kid-input{height:40px;padding:0 12px;border:1.5px solid var(--line);border-radius:10px;background:var(--input-bg,var(--surface));color:var(--ink);font:inherit;font-size:16px}.imp-kid-list{display:flex;flex-direction:column;max-height:280px;overflow:auto}.imp-bar .imp-kid-item,.imp-bar .imp-kid-reset{display:flex;justify-content:space-between;gap:8px;min-height:40px;align-items:center;border:0;border-radius:10px;padding:6px 10px;color:var(--ink);font-weight:600;text-align:left;white-space:normal}.imp-bar .imp-kid-item:hover,.imp-bar .imp-kid-reset:hover{background:var(--surface-2)}.imp-bar .imp-kid-reset{border-top:1px solid var(--line);border-radius:0 0 10px 10px;color:var(--muted)}.imp-kid-klass{color:var(--muted);font-weight:500;font-size:.78rem;white-space:nowrap}.imp-kid-hint{margin:4px 2px;color:var(--muted);font-size:.8rem;line-height:1.4}@media (max-width:480px){.imp-kid-pop{position:fixed;top:calc(var(--imp-bar-h, 0px) + 4px);left:16px;right:16px;width:auto}}.adm-tabs{display:flex;gap:4px;padding:4px;background:var(--seg-bg);border-radius:14px;margin-bottom:16px;overflow-x:auto}.adm-tab{flex:1 0 auto;white-space:nowrap;border:0;background:transparent;border-radius:10px;padding:9px 16px;font-family:var(--font-sans);font-size:.88rem;font-weight:600;color:var(--muted);cursor:pointer}.adm-tab.is-active{background:var(--surface);color:var(--ink);box-shadow:0 2px 8px hsla(0,0%,8%,.08)}.adm-msg{margin:0 0 12px;font-size:.86rem;font-weight:600;color:var(--ok)}.adm-msg-err{color:var(--danger)}.adm-sec-list{display:flex;flex-direction:column;gap:14px}.adm-card{border:1.5px solid var(--line);border-radius:16px;background:var(--surface);padding:16px}.adm-card h3{margin:0 0 8px;font-family:var(--font-display);font-size:1rem;font-weight:700;color:var(--ink)}.adm-hint{margin:0 0 10px;font-size:.8rem;color:var(--muted);line-height:1.5}.adm-card input[type=email],.adm-card input[type=search],.adm-card input[type=text],.adm-card select,.adm-card textarea{width:100%;padding:9px 11px;border:1.5px solid var(--line);border-radius:10px;font-family:var(--font-sans);font-size:.9rem;background:var(--surface);color:var(--text)}.adm-card textarea{resize:vertical;margin-top:8px}.sp-wrap{position:relative}.sp-dropdown{position:absolute;left:16px;right:16px;top:100%;margin-top:6px;max-height:320px;overflow-y:auto;background:#fff;border:1.5px solid var(--line);border-radius:12px;box-shadow:0 12px 28px -14px rgba(20,30,55,.28);z-index:20}.adm-cycle-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:8px}.adm-cycle-btns{display:flex;gap:6px;flex:0 0 auto}.adm-chips{display:flex;flex-wrap:wrap;gap:6px}.adm-chip{border:1.5px solid var(--line);background:var(--surface);border-radius:999px;padding:5px 12px;font-size:.8rem;font-weight:600;color:var(--muted);cursor:pointer}.adm-chip.is-on{border-color:var(--coral);background:var(--coral);color:#fff}.adm-rows{display:flex;flex-direction:column;gap:6px}.adm-row-toggle{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--ink)}.adm-row-toggle input{width:16px;height:16px}.adm-sec-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0;border-top:1px solid var(--line)}.adm-sec-row:first-child{border-top:0}.adm-sec-row-info{display:flex;flex-direction:column;gap:2px;min-width:0}.adm-sec-row-title{font-size:.9rem;color:var(--ink);font-weight:600}.adm-sec-row-vis{font-size:.76rem;color:var(--muted)}.adm-vis-modes{display:flex;flex-wrap:wrap;gap:14px}.adm-radio{display:flex;align-items:center;gap:6px;font-size:.86rem;color:var(--ink);cursor:pointer}.adm-radio input{width:15px;height:15px}.adm-detail-title{margin:0;font-family:var(--font-display);font-size:1.15rem;color:var(--ink)}.adm-save{padding:4px 0 8px}.adm-btns{display:flex;flex-wrap:wrap;gap:8px}.adm-table{display:flex;flex-direction:column}.adm-tr{display:flex;align-items:center;gap:10px;padding:8px 2px;border-top:1px solid var(--line);font-size:.84rem}.adm-tr:first-child{border-top:0}.adm-tr-pick{width:100%;background:none;border:0;border-top:1px solid var(--line);text-align:left;cursor:pointer;font-family:inherit;border-radius:8px}.adm-tr-pick:first-child{border-top:0}.adm-tr-pick:hover{background:rgba(255,124,96,.08)}.adm-td-name{font-weight:600;color:var(--ink);flex:0 0 auto}.adm-td-mail{color:var(--muted);flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adm-td-link{background:none;border:0;padding:0;text-align:left;color:var(--coral-600);cursor:pointer}.adm-td-klass{font-size:.78rem}.adm-badge,.adm-td-klass{color:var(--muted);flex:0 0 auto}.adm-badge{font-size:.7rem;padding:2px 8px;border-radius:999px;background:var(--surface-2)}.adm-badge.is-super{background:var(--coral);color:#fff}.adm-dot{flex:0 0 auto;font-size:.72rem;font-weight:700;color:var(--muted)}.adm-dot.ok{color:var(--ok)}.adm-dot.bad{color:var(--danger)}.adm-dot-btn{background:none;border:0;padding:0;font:inherit;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.adm-dot-btn:disabled{cursor:default;opacity:.7}.adm-imp{display:flex;gap:8px}.adm-imp input{flex:1 1 auto}.adm-brk-day{margin-top:10px}.adm-brk-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.adm-brk-row{display:flex;gap:6px;margin-bottom:5px}.adm-brk-row input{width:auto;flex:0 1 auto}.adm-brk-row input:first-child{flex:1 1 auto}.adm-brk-row select{width:auto;flex:0 0 auto}.adm-mini{border:1.5px solid var(--line);background:var(--surface);border-radius:8px;padding:3px 9px;font-size:.76rem;font-weight:700;color:var(--coral-600);cursor:pointer}.adm-mini-x{color:var(--danger)}.adm-gap{margin:6px 0}.adm-gap summary{cursor:pointer;font-size:.84rem;font-weight:600;color:var(--ink)}.adm-gap ul{margin:6px 0 0;padding-left:18px;font-size:.82rem;color:var(--muted)}.adm-ok-line{margin:6px 0;font-size:.82rem;color:var(--ok)}.adm-back{border:0;background:none;padding:0;margin:0 0 14px;font-family:var(--font-sans);font-size:.86rem;font-weight:700;color:var(--coral-600);cursor:pointer}.adm-hub{gap:10px}.adm-hub,.adm-hub-card{display:flex;flex-direction:column}.adm-hub-card{gap:2px;text-align:left;border:1.5px solid var(--line);border-radius:16px;background:var(--surface);padding:14px 16px;cursor:pointer}.adm-hub-card.is-alert,.adm-hub-card:hover{border-color:var(--coral)}.adm-hub-card.is-alert{background:color-mix(in srgb,var(--coral) 10%,var(--surface));box-shadow:0 0 0 3px color-mix(in srgb,var(--coral) 18%,transparent)}.adm-hub-title{display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:.98rem;font-weight:700;color:var(--ink)}.adm-hub-new{padding:2px 8px;border-radius:var(--pill);background:var(--coral);color:#fff;font-family:var(--font-sans);font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.adm-hub-hint{font-size:.8rem;color:var(--muted);line-height:1.4}.adm-field{display:flex;flex-direction:column;gap:5px;margin-top:12px}.adm-field>span{font-size:.8rem;font-weight:600;color:var(--ink)}.adm-tr-role{flex-wrap:wrap}.adm-tr-role .adm-td-mail{flex:1 1 140px}.adm-tr-role select{width:auto;flex:0 0 auto;max-width:200px;padding:6px 9px;font-size:.82rem}.adm-row-msg{flex:0 0 auto;font-size:.74rem;font-weight:600;color:var(--ok)}.adm-roles-link{display:flex;align-items:center;gap:8px;width:100%;padding:12px 16px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);font-weight:700;font-size:.88rem;cursor:pointer}.adm-roles-link:hover{border-color:var(--coral)}.adm-roles-arrow{margin-left:auto;color:var(--coral-600);font-weight:800}.adm-issued{border-color:var(--ok);background:var(--ok-soft)}.adm-issued-list{display:flex;flex-direction:column;gap:6px;margin-top:10px}.adm-issued-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:6px 0;border-top:1px dashed var(--line)}.adm-issued-row:first-child{border-top:0}.adm-issued-pass{margin-left:auto;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.9rem;font-weight:700;padding:3px 10px;border-radius:8px;background:#1e8e5a;color:#fff;letter-spacing:.04em}.adm-user-refresh{display:flex;justify-content:flex-end;margin-bottom:10px}.adm-user-tabs{display:flex;flex-wrap:wrap;gap:6px}.adm-user-tab{display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--line);border-radius:999px;padding:7px 13px;background:var(--surface);color:var(--ink);font-weight:700;font-size:.82rem;cursor:pointer}.adm-user-tab:hover{border-color:var(--coral)}.adm-user-tab.is-active{background:var(--ink);border-color:var(--ink);color:var(--bg)}.adm-user-tab-count{font-size:.7rem;font-weight:800;padding:1px 7px;border-radius:999px;background:var(--line)}.adm-user-tab.is-active .adm-user-tab-count{background:color-mix(in srgb,var(--bg) 25%,transparent)}.adm-filters{gap:6px}.adm-acc-form,.adm-filters{display:flex;flex-wrap:wrap;margin-top:8px}.adm-acc-form{gap:8px;align-items:center}.adm-acc-form input,.adm-acc-form select{flex:1 1 200px;min-width:0}.adm-acc-form .btn{flex:0 0 auto}@media (max-width:560px){.adm-acc-form .btn{flex:1 1 100%}}.adm-filters select{width:auto;flex:1 1 140px;padding:7px 9px;font-size:.8rem;border:1.5px solid var(--line);border-radius:9px;background:var(--surface)}.adm-role-list{display:flex;flex-direction:column}.adm-role-row{border-top:1px solid var(--line);padding:9px 0}.adm-role-row:first-child{border-top:0}.adm-role-head{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.adm-role-head .adm-td-mail{flex:1 1 120px}.adm-role-head select{width:auto;flex:0 0 auto;max-width:180px;padding:5px 8px;font-size:.8rem}.adm-role-sub{font-size:.76rem;color:var(--muted);margin-top:4px;line-height:1.45}.adm-role-edit{margin-top:8px;padding:10px;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;gap:10px}.adm-role-edit,.adm-role-field{display:flex;flex-direction:column}.adm-role-field{gap:5px}.adm-role-field>span{font-size:.75rem;font-weight:700;color:var(--ink)}.adm-block-order{display:flex;flex-direction:column;gap:4px;max-height:360px;overflow-y:auto;border:1.5px solid var(--line);border-radius:10px;padding:6px}.adm-block-row{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:8px}.adm-block-row:nth-child(odd){background:var(--surface-2)}.adm-block-n{flex:0 0 auto;font-size:.72rem;font-weight:700;color:var(--muted);width:18px}.adm-block-name{flex:1 1 auto;font-size:.83rem;color:var(--ink)}.adm-block-btns{flex:0 0 auto;display:flex;gap:4px}.adm-block-btns .adm-mini{padding:2px 8px}.adm-enr-list{display:flex;flex-direction:column}.adm-enr-row{border-top:1px solid var(--line);padding:9px 0}.adm-enr-row:first-child{border-top:0}.adm-enr-title{font-weight:600;color:var(--ink);font-size:.9rem;margin-bottom:6px}.adm-enr-tools{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.adm-enr-count{font-size:.78rem;font-weight:700;color:var(--muted)}.adm-enr-count.is-full{color:var(--danger)}.adm-enr-limit{width:64px!important;padding:5px 7px!important;font-size:.8rem;border:1.5px solid var(--line);border-radius:8px}.frm-root{display:flex;flex-direction:column;gap:18px}.frm-top{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:8px 16px}.frm-view-tabs{flex:1 1;margin-bottom:0}.frm-cycle-pick{display:inline-flex;align-items:center;gap:8px;padding-bottom:6px;letter-spacing:normal;text-transform:none;font-size:.82rem}.frm-cycle-pick .frm-cycle{padding-top:7px;padding-bottom:7px;font-size:.85rem}.frm-block{--lvl-ac:hsl(var(--lvl-h,210) 55% 45%);--lvl-bg:hsl(var(--lvl-h,210) 70% 93%);--lvl-tx:hsl(var(--lvl-h,210) 45% 28%)}:root[data-theme=dark] .frm-block{--lvl-ac:hsl(var(--lvl-h,210) 55% 62%);--lvl-bg:hsl(var(--lvl-h,210) 30% 20%);--lvl-tx:hsl(var(--lvl-h,210) 55% 78%)}.frm-cycle{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding:10px 40px 10px 18px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--input-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b6b6b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 9l5-5 5 5M7 15l5 5 5-5'/%3E%3C/svg%3E") no-repeat right 14px center;color:var(--ink);font-family:var(--font-sans);font-size:.95rem;font-weight:700}:root[data-theme=dark] .frm-cycle{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2393908a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 9l5-5 5 5M7 15l5 5 5-5'/%3E%3C/svg%3E")}.frm-filterbar-wrap{position:relative}.frm-filterbar{display:flex;flex-wrap:wrap;gap:4px;padding:5px;border:1.5px solid var(--line);border-radius:26px;background:var(--seg-bg)}.frm-chip{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border:0;border-radius:var(--pill);background:transparent;color:var(--muted);font-family:var(--font-sans);font-size:.92rem;font-weight:700;cursor:pointer}.frm-chip:hover{color:var(--ink)}.frm-chip.is-active{background:var(--ink);color:var(--bg)}.frm-chip.is-empty{opacity:.55}.frm-chip-count{font-size:.8rem;font-weight:600;opacity:.6}.frm-tab-count{margin-left:6px;color:var(--muted);font-size:.85em;font-weight:600}.frm-mine-line{margin:0;color:var(--muted);font-size:.92rem}.frm-mine-line b{color:var(--ink)}.frm-viewonly{margin:0;padding:12px 16px;border:1px solid var(--warn-line);border-radius:14px;background:var(--warn-soft);color:var(--warn-ink);font-size:.88rem;font-weight:500}.frm-block{display:flex;flex-direction:column;gap:14px}.frm-block-title{display:flex;align-items:center;gap:10px;margin:8px 0 0;font-family:var(--font-sans);font-size:1.15rem;font-weight:800;color:var(--ink)}.frm-block-title:before{content:"";flex:0 0 auto;width:10px;height:10px;border-radius:50%;background:var(--lvl-ac,var(--coral))}.frm-block-count{font-size:.95rem;font-weight:500;color:var(--muted)}.frm-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:16px;gap:16px}.frm-card{display:flex;flex-direction:column;overflow:hidden;padding:18px;border:1.5px solid var(--line);border-radius:22px;background:var(--surface);cursor:pointer;transition:border-color .12s ease}.frm-card:hover{border-color:var(--line-strong)}.frm-card.is-in{border-color:var(--lvl-ac,var(--coral));background:var(--lvl-soft,var(--surface))}.frm-card:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.frm-badges{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex:0 0 auto}.frm-level{background:var(--lvl-bg,var(--surface-2));color:var(--lvl-tx,var(--muted))}.frm-level,.frm-lineup-badge{flex:0 0 auto;padding:3px 10px;border-radius:var(--pill);font-size:.72rem;font-weight:700;white-space:nowrap}.frm-lineup-badge{background:var(--surface-2);color:var(--ink)}.frm-meta{margin:6px 0 0;font-size:.88rem;color:var(--muted)}.zoom-link{position:relative;flex:0 0 auto}.zoom-link-btn{display:inline-block;flex:0 0 auto;padding:3px 9px;border:none;border-radius:var(--pill);background:#3b82f6;color:#fff;font-size:.7rem;font-weight:700;line-height:1.4;white-space:nowrap;text-decoration:none;cursor:pointer}.zoom-link-btn:hover{background:#2f6fdb}.zoom-link-btn.is-empty,.zoom-link-btn.is-empty:hover{background:var(--surface-2);color:var(--muted);cursor:default}.zoom-link-editbtn{margin-left:4px;border:none;background:none;padding:0;color:var(--muted);font-size:.68rem;text-decoration:underline;cursor:pointer;vertical-align:middle}.zoom-link-editbtn:hover{color:var(--ink)}.zoom-link-pop{position:absolute;z-index:20;top:calc(100% + 6px);left:0;width:max-content;max-width:280px;padding:12px;border-radius:14px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-md)}.zoom-link-input{width:220px;max-width:100%;padding:7px 10px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface);color:var(--ink);font-size:.84rem}.zoom-link-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.zoom-link-actions .btn{padding:6px 14px;font-size:.78rem}.pmc{position:relative}.pmc-trigger{border:none;background:none;padding:0;margin:0;font:inherit;color:inherit;-webkit-text-decoration-line:underline;text-decoration-line:underline;-webkit-text-decoration-style:dotted;text-decoration-style:dotted;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:3px;cursor:pointer}.pmc-trigger:hover{-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.pmc-pop{position:fixed;z-index:60;display:block;width:max-content;max-width:220px;padding:12px 14px;border-radius:14px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-md);text-align:left}.pmc-name{display:block;margin-bottom:4px;font-weight:700;color:var(--ink)}.pmc-row{display:block;font-size:.86rem;color:var(--muted)}.pmc-row a{color:#3b82f6;font-weight:600}.pmc-profile{display:inline-block;margin-top:8px;padding:5px 12px;border:1.5px solid var(--line);border-radius:var(--pill);color:var(--ink);font-size:.82rem;font-weight:700;text-decoration:none}.pmc-profile:hover{border-color:var(--ink)}.frm-card-tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px}.frm-card-classes{color:var(--muted)}.frm-card-classes,.frm-card-in{font-size:.78rem;font-weight:700}.frm-card-in{color:var(--lvl-tx,var(--ok))}.frm-card-title{margin:0;font-family:var(--font-sans);font-size:1.08rem;font-weight:700;line-height:1.3;color:var(--ink)}.frm-card-teacher{display:flex;align-items:center;gap:8px;margin:8px 0 0;color:var(--muted);font-size:.86rem}.frm-faces{display:inline-flex;flex:none}.frm-face{width:28px;height:28px;border:2px solid var(--surface);font-size:.62rem}.frm-face+.frm-face{margin-left:-8px}.frm-card-closed{padding:3px 10px;border-radius:var(--pill);background:var(--surface-2);font-size:.72rem;font-weight:700;white-space:nowrap}.frm-card-closed,.frm-card.is-closed .frm-card-lead,.frm-card.is-closed .frm-card-title{color:var(--muted)}.frm-card-lead{display:-webkit-box;margin:12px 0 0;overflow:hidden;color:var(--text);font-size:.9rem;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:3}.frm-card-cond{margin:10px 0 0;color:var(--warn-ink);font-size:.82rem;line-height:1.45}.frm-card-cond span{font-weight:700}.frm-card-cond span:after{content:":"}.frm-card .frm-class-hint{padding:0;border:0;background:none;color:var(--muted);font-weight:600}.frm-class-hint,.frm-condition{margin:10px 0 0;padding:8px 12px;border-radius:12px;font-size:.82rem;font-weight:600}.frm-condition{background:var(--warn-soft);border:1px solid var(--warn-line);color:var(--warn-ink)}.frm-class-hint{background:var(--sky-tint);border:1px solid var(--line);color:var(--ink)}.frm-card-foot{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:14px}.frm-card>.frm-card-foot{justify-content:space-between;margin-top:auto;padding-top:16px}.frm-card>.frm-card-foot .btn{padding:10px 18px;font-size:.8rem}.frm-seats{font-size:.82rem;font-weight:700;color:var(--muted)}.frm-seats.is-full{color:var(--danger)}@media (max-width:640px){.frm-filterbar{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;border-radius:var(--pill);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 16px,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(90deg,transparent 0,#000 16px,#000 calc(100% - 24px),transparent)}.frm-filterbar.is-at-start{-webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 24px),transparent)}.frm-filterbar.is-at-end{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 16px,#000);mask-image:linear-gradient(90deg,transparent 0,#000 16px,#000)}.frm-filterbar.is-at-start.is-at-end{-webkit-mask-image:none;mask-image:none}.frm-filterbar::-webkit-scrollbar{display:none}.frm-chip{flex:0 0 auto;white-space:nowrap}}.frm-participants{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.frm-participants-head{display:flex;align-items:center;gap:8px;margin-bottom:0}.frm-participants-toggle{margin-left:auto}.frm-participants-grid{display:flex;flex-direction:column;gap:8px;margin-top:12px}.frm-participant{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}.frm-participant-av{display:grid;place-items:center;flex:0 0 auto;width:26px;height:26px;border-radius:50%;background:var(--surface-2);color:var(--ink);font-family:var(--font-sans);font-size:.72rem;font-weight:700}.frm-participant-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;color:var(--text)}.frm-participant-klass{flex:0 0 auto;padding:1px 7px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.68rem;font-weight:700;white-space:nowrap}.frm-stats{gap:28px}.frm-stats,.frm-stats-block{display:flex;flex-direction:column}.frm-stats-block{gap:12px}.frm-stats-list{display:flex;flex-direction:column;gap:10px}.frm-stat-row{display:block;width:100%;padding:12px 16px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface);text-align:left;cursor:pointer;transition:border-color .12s ease}.frm-stat-row:hover{border-color:var(--line-strong)}.frm-stat-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.frm-stat-title{font-family:var(--font-sans);font-size:.98rem;font-weight:700;color:var(--ink)}.frm-stat-nums{flex:0 0 auto;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.86rem;font-weight:700;color:var(--muted)}.frm-stat-nums.is-warn{color:var(--warn-ink)}.frm-stat-nums.is-full{color:var(--danger)}.frm-stat-meta{margin:3px 0 0;font-size:.82rem;color:var(--muted)}.frm-stat-title{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}.frm-stat-classes{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.frm-stat-class{padding:3px 10px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.76rem;font-weight:600}.frm-stat-class b{color:var(--ink);font-weight:800}.frm-stat-class.is-loading{opacity:.6}.lin-switch{display:inline-flex;align-items:center;margin-bottom:14px;padding:9px 18px;border:1.5px solid var(--line);border-radius:var(--pill);color:var(--ink);font-size:.9rem;font-weight:700}.lin-switch:hover{border-color:var(--ink)}.lin-root{display:flex;flex-direction:column;gap:20px}.lin-root>.notice{margin:0}.lin-root>.lin-switch{align-self:flex-start}.lin-scroller{position:relative;display:flex;flex-direction:row;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.lin-conn-svg{position:absolute;inset:0;z-index:2;width:100%;height:100%;overflow:visible;pointer-events:none}.lin-card{display:flex;flex-direction:column;flex:0 0 100%;width:100%;min-height:calc(100svh - 260px);padding:20px;border:1.5px solid var(--line);border-radius:24px;background:var(--surface);scroll-snap-align:start;scroll-snap-stop:always}.lin-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.lin-card-head h3{margin:0;font-family:var(--font-sans);font-size:1.4rem;font-weight:800;line-height:1.2;color:var(--ink)}.lin-card-teacher{display:flex;align-items:center;gap:8px;margin:4px 0 16px;color:var(--muted);font-size:.95rem;font-weight:500}.lin-card-teacher svg{width:18px;height:18px;flex:0 0 auto}.lin-avatar{flex:0 0 auto;width:22px;height:22px;border-radius:50%;background:var(--line);object-fit:cover}.lin-btn{flex:0 0 auto;padding:10px 22px;font-size:.95rem;letter-spacing:0;text-transform:none}.lin-cells{display:flex;flex-direction:column;flex:1 1;justify-content:flex-start;gap:10px}.lin-cell-group,.lin-cell-wrap{display:flex;flex-direction:column}.lin-cell-group{flex:1 1;gap:8px}.lin-arrow{align-self:center;padding:6px 0 0;color:var(--muted);font-size:1rem;line-height:1}.lin-cell{position:relative;display:flex;flex:1 1;flex-direction:column;justify-content:center;gap:6px;min-height:84px;padding:40px 18px 16px;border:1.5px solid color-mix(in srgb,var(--lvl-ac,var(--muted)) 32%,transparent);border-radius:20px;background:var(--lvl-bg,var(--surface-2));color:var(--ink);cursor:pointer;transition:border-color .12s ease}.lin-cell:hover{border-color:var(--lvl-ac,var(--muted))}.lin-cell:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.lin-jump{padding:0;border:0;background:none;color:var(--coral-600);font:inherit;font-weight:700;cursor:pointer}.lin-jump:hover{text-decoration:underline}.lin-cell-cycle{position:absolute;top:14px;left:18px;color:var(--lvl-tx,var(--muted));font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.85}.lin-cell-opens{letter-spacing:0;text-transform:none}.lin-cell-level{position:absolute;top:14px;right:18px;color:var(--lvl-tx,var(--muted));font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.85}.lin-cell-title{font-size:1.1rem;font-weight:800;line-height:1.25}.lin-cell-teacher{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:.85rem}.lin-cell-tags{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0}.lin-cell-tag{padding:3px 10px;border-radius:var(--pill);background:color-mix(in srgb,var(--lvl-ac,var(--muted)) 16%,transparent);color:var(--lvl-tx,var(--muted));font-size:.75rem;font-weight:700}.lin-cell-teacher .lin-avatar{width:16px;height:16px}.lin-cell.is-mine{border-color:var(--lvl-ac,var(--coral))}.lin-cell.is-mine .lin-cell-level{right:44px}.lin-cell-check{position:absolute;top:11px;right:16px;color:var(--lvl-ac,var(--coral));font-size:1rem;font-weight:800}.lin-cell.is-cancelled{opacity:.5;text-decoration:line-through}.lin-cell.is-empty{align-items:center;justify-content:center;padding:16px;border:1.5px dashed var(--line);background:transparent;color:var(--muted);text-align:center}.lin-cell.is-empty .lin-cell-cycle{position:static;opacity:.6;color:var(--muted)}.lin-cell.is-empty .lin-cell-title{font-size:.85rem;font-weight:500;color:var(--muted)}@media (min-width:720px){.lin-scroller{flex-wrap:wrap;overflow-x:visible;scroll-snap-type:none}.lin-card{flex:0 0 auto;width:320px;min-height:560px;scroll-snap-align:none}}.pep-wrap{margin:0 0 16px}.pep-toggle{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;border:1.5px solid var(--line);border-radius:var(--pill);background:none;color:var(--muted);font-family:var(--font-sans);font-size:.82rem;font-weight:600;cursor:pointer}.pep-toggle:hover{border-color:var(--ink);color:var(--ink)}.pep-panel{margin-top:10px;padding:16px;border:1.5px solid var(--line);border-radius:20px;background:var(--surface)}.pep-section{margin-bottom:16px}.pep-section:last-of-type{margin-bottom:0}.pep-section h4{margin:0 0 8px;font-family:var(--font-display);font-size:.95rem;color:var(--ink)}.pep-save{margin-top:14px;padding-top:14px;border-top:1px dashed var(--line)}.rbk-toggle .rbk-ico{font-size:1rem;line-height:1}.pep-toggle[aria-expanded=true],.rbk-toggle.is-open{border-color:var(--ink);color:var(--ink)}.rbk-panel{border-left:4px solid var(--danger)}.rbk-title{margin:0 0 6px;font-family:var(--font-display);font-size:1rem;color:var(--ink)}.rbk-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:12px 14px;gap:12px 14px;margin-top:14px}.rbk-panel .rbk-field{display:flex;flex-direction:column;align-items:stretch;gap:6px;min-width:0;margin:0;font-size:.9rem}.rbk-panel .rbk-field,.rbk-panel .rbk-field>span{font-weight:600;letter-spacing:0;text-transform:none}.rbk-panel .rbk-field>span{color:var(--muted);font-size:.8rem}.rbk-panel .rbk-field .pill-select{box-sizing:border-box;width:100%;max-width:100%}.rbk-panel .btn{padding:11px 22px}.pg-tools{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.pg-tools:empty{display:none}.pg-tools>.pep-wrap{display:contents}.pg-tools .pep-panel{order:10;flex-basis:100%;margin-top:2px}.rbk-preview{margin-top:14px;padding-top:14px;border-top:1px dashed var(--line)}.rbk-list{display:flex;flex-direction:column;gap:6px;margin:8px 0;padding:0;list-style:none}.rbk-list li{font-size:.82rem;line-height:1.4}.rbk-user-panel{flex-basis:100%;margin:8px 0 4px;padding:12px;border:1.5px solid var(--danger);border-radius:14px;background:var(--danger-soft)}.ind-wrap,.portal-ind .topbar-inner{max-width:1240px}.ind-wrap{margin:0 auto;padding:44px 20px 90px}.ind-lead{max-width:640px;margin:14px 0 30px;color:var(--muted);font-size:1.05rem}.ind-toolbar{position:relative;display:flex;gap:12px;margin-bottom:44px}.ind-filter-btn,.ind-search{height:52px;border:1.5px solid var(--line);border-radius:var(--pill);background:transparent;font-family:var(--font-sans);font-size:1rem;outline:none}.ind-filter-btn{display:inline-flex;align-items:center;gap:10px;flex:0 0 auto;padding:0 26px;color:var(--ink);font-weight:700;cursor:pointer}.ind-filter-btn:hover,.ind-filter-btn[aria-expanded=true]{border-color:var(--muted)}.ind-filter-badge{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:var(--pill);background:var(--coral);color:#fff;font-size:.75rem}.ind-search{flex:1 1;min-width:0;padding:0 24px;color:var(--text)}.ind-search::placeholder{color:var(--muted)}.ind-search:focus{border-color:var(--coral)}.ind-filters{position:absolute;top:calc(100% + 10px);left:0;z-index:15;width:min(380px,100%);display:flex;flex-direction:column;gap:22px;padding:26px;border:1.5px solid var(--line);border-radius:26px;background:var(--surface);box-shadow:var(--shadow-lg)}.ind-filter-label{margin:0 0 10px;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.ind-chips{display:flex;flex-wrap:wrap;gap:8px}.ind-chip{padding:9px 18px;border:1.5px solid var(--line);border-radius:var(--pill);background:transparent;color:var(--muted);font-family:var(--font-sans);font-size:.92rem;font-weight:700;cursor:pointer}.ind-chip:hover{border-color:var(--muted);color:var(--ink)}.ind-chip.is-active{border-color:var(--ink);background:var(--ink);color:var(--bg)}.ind-status{margin:0;color:var(--muted)}.ind-section{margin-bottom:48px}.ind-section h2{display:flex;align-items:baseline;gap:12px;margin-bottom:20px;font-size:1.15rem}.ind-count{font-family:var(--font-sans);font-size:.95rem;font-weight:500;color:var(--muted)}.ind-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:20px;gap:20px}.ind-card{display:flex;flex-direction:column;gap:14px;min-height:170px;padding:24px 26px;border:1.5px solid var(--line);border-radius:28px;background:var(--surface)}.ind-card:hover{border-color:var(--line-strong)}.ind-card.is-soon{opacity:.62}.ind-card.is-soon:hover{opacity:.85}.ind-tags{display:flex;flex-wrap:wrap;gap:8px}.ind-tag{padding:6px 14px;border:1.5px solid var(--line);border-radius:var(--pill);color:var(--text);font-size:.78rem;font-weight:700;line-height:1.2}.ind-card h3{font-size:1.2rem;line-height:1.25}.ind-meta{margin:0;color:var(--muted);font-size:.95rem}.ind-meta:has(.ind-avatars){display:flex;align-items:center;gap:10px}.ind-avatars{display:inline-flex;flex:0 0 auto}.ind-avatars img{width:32px;height:32px;border:2px solid var(--surface);border-radius:50%;object-fit:cover;background:var(--surface-2)}.ind-avatars img+img{margin-left:-10px}.page-head{margin-bottom:26px}.page-head h1{font-size:clamp(1.7rem,4vw,2.6rem);margin-bottom:0}.page-title-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px}.page-title-row h1{margin:0}.page-sub{margin:10px 0 0;color:var(--muted)}.crumbs ol{display:flex;flex-wrap:wrap;row-gap:2px;gap:4px 8px;margin:0 0 14px;padding:0;list-style:none;font-size:.85rem}.crumbs li{display:inline-flex;align-items:center;gap:8px;color:var(--muted)}.crumbs li+li:before{content:"/";color:var(--muted);opacity:.5}.crumbs a,.crumbs button{padding:0;border:0;background:none;color:var(--muted);font:inherit;cursor:pointer}.crumbs a:hover,.crumbs button:hover{color:var(--ink);text-decoration:underline}.crumbs [aria-current=page]{color:var(--ink);font-weight:600}.stub-card .crumbs ol{margin-bottom:22px}.narrow-col{max-width:440px}.home-hello{max-width:760px;margin:0 0 32px}.home-hello h1{font-family:var(--font-sans);font-size:clamp(1.4rem,4.2vw,2.1rem);font-weight:800;line-height:1.2;color:var(--ink)}.home-hello p{margin:10px 0 0;color:var(--muted);font-size:1.05rem;line-height:1.5}.home-hello-course{padding:0;border:0;background:none;color:var(--ink);font:inherit;font-weight:700;text-align:left;text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:3px;cursor:pointer}.home-hello-course:hover{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.home-hello-where{color:var(--muted)}.home-hello-zoom{color:var(--ink);font-weight:600;text-decoration:underline;-webkit-text-decoration-color:var(--coral);text-decoration-color:var(--coral);text-underline-offset:3px}.home-hello-zoom:hover{color:var(--coral)}.home-meta{display:block;margin-top:2px;color:var(--muted);font-size:.8rem;font-weight:500}.home-meta b{color:var(--coral-600)}.home-group{margin-bottom:28px}.home-group-label{margin:0 0 10px;font-family:var(--font-sans);font-size:.78rem;font-weight:700;line-height:1.2;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.home-item{display:flex;align-items:center;gap:16px}.home-icon{flex:0 0 auto;display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--icon-tint);color:var(--coral-600)}.home-icon svg{width:22px;height:22px}.home-title{font-family:var(--font-sans);font-size:1.05rem;font-weight:700;line-height:1.25;color:var(--ink)}.home-chev{display:grid;margin-left:auto;color:var(--muted)}.home-chev svg{width:18px;height:18px}.home-list{max-width:760px;overflow:hidden;border:1.5px solid var(--home-line);border-radius:24px;background:var(--surface)}.home-list .home-item{padding:14px 18px}.home-list .home-item+.home-item{border-top:1.5px solid var(--home-line)}.home-list .home-item:hover{background:var(--home-bg)}.home-list .home-row+.home-row{border-top:1.5px solid var(--home-line)}.home-row{position:relative}.home-fav{position:absolute;right:48px;top:50%;display:grid;place-items:center;width:30px;height:30px;padding:0;transform:translateY(-50%);border:0;border-radius:50%;background:none;color:var(--muted);opacity:0;cursor:pointer}.home-fav svg{width:18px;height:18px}.home-fav:focus-visible,.home-row:hover .home-fav{opacity:1}.home-fav:hover{background:var(--icon-tint)}.home-fav.is-on,.home-fav:hover{color:var(--coral-600);opacity:1}@media (hover:none){.home-fav:not(.is-on){opacity:.45}}.home-group.is-fav .home-group-label{display:flex;align-items:center;gap:8px;color:var(--coral-600)}.home-group.is-fav .home-group-label svg{width:14px;height:14px}.home-group-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:10px 2px;border:0;border-bottom:1.5px solid var(--home-line);background:none;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;text-align:left;cursor:pointer}.home-group-toggle:hover{color:var(--ink)}.home-group-toggle small{font-weight:600;letter-spacing:0;opacity:.7}.home-group-toggle svg{width:14px;height:14px;flex:0 0 auto}.home-group-toggle>svg:last-child{margin-left:auto;transition:transform .15s ease}.home-group.is-open .home-group-toggle>svg:last-child{transform:rotate(90deg)}.home-group.is-fav .home-group-toggle{color:var(--coral-600)}.home-group.is-open .home-fav-empty,.home-group.is-open .home-list{margin-top:10px}.home-fav-empty{margin:0;padding:14px 18px;border:1.5px dashed var(--home-line);border-radius:18px;color:var(--muted);font-size:.9rem}.home-fav-wrap{margin-bottom:8px}.rules{max-width:760px;color:var(--text)}.rules .les-bli,.rules .les-bp{font-size:1.02rem;line-height:1.7}.rules .les-bh{margin:30px 0 10px;line-height:1.3;color:var(--ink)}.rules .les-bh1{font-size:1.3rem}.rules .les-bh2{font-size:1.15rem}.rules .les-bh3{font-size:1.02rem}.rules-hint{margin:8px 0 0;font-size:.9rem}.cm-backdrop{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--overlay)}.cm{position:relative;display:flex;flex-direction:column;width:100%;max-width:520px;max-height:min(86dvh,720px);border:1.5px solid var(--line);border-radius:28px;background:var(--surface);color:var(--text);box-shadow:var(--shadow-lg)}.cm-x{position:absolute;top:12px;right:14px;z-index:1;width:36px;height:36px;border:0;border-radius:50%;background:var(--surface-2);color:var(--ink);font-size:.9rem;cursor:pointer}.cm-body{flex:1 1;overflow-y:auto;margin-top:56px;padding:0 24px 8px}.cm-tags{display:flex;flex-wrap:wrap;gap:6px 14px}.cm-tag{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:.82rem;font-weight:700;line-height:1.2}.cm-tag[class*=lvl-]{color:var(--lvl-tx)}.cm-tag[class*=lvl-]:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--lvl-ac)}.cm-title{margin:14px 0 0;font-size:1.45rem;line-height:1.2;color:var(--ink)}.cm-meta{margin:8px 0 0;color:var(--muted);font-size:.92rem}.cm-rows{display:grid;grid-gap:12px;gap:12px;margin:18px 0 0}.cm-label,.cm-rows dt{margin:0 0 3px;color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.cm-rows dd{margin:0;color:var(--ink);font-size:1rem;font-weight:600}.cm-rows dd.cm-curator-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.cm-rows dd.cm-curator-row+dd.cm-curator-row{margin-top:6px}.cm-curator-ask{flex:0 0 auto;padding:6px 14px;border:1.5px solid var(--ink);border-radius:var(--pill);background:transparent;color:var(--ink);font-size:.78rem;font-weight:700;text-decoration:none;white-space:nowrap}.cm-curator-ask:hover{background:var(--surface-2)}.cm-alert{margin-top:18px;padding:12px 16px;border-radius:16px;background:var(--danger-soft);color:var(--danger-ink);font-size:.9rem}.cm-alert strong{display:block}.cm-alert p{margin:4px 0 0}.cm-teaser{margin-top:18px;padding:14px 16px;border-radius:16px;background:var(--surface-2);font-size:.92rem;line-height:1.55}.cm-teaser p{margin:0 0 8px}.cm-teaser p:last-child,.cm-teaser ul:last-child{margin-bottom:0}.cm-teaser ul{margin:0 0 8px;padding-left:18px}.cm-lessons{margin-top:18px}.cm-label span{margin-left:6px;font-weight:600;opacity:.7}.cm-lessons ol{margin:6px 0 0;padding-left:22px;font-size:.95rem;line-height:1.5}.cm-lessons li{margin-bottom:4px}.cm-foot{display:flex;align-items:center;gap:10px;padding:16px 24px 24px}.cm-foot .btn{flex:1 1;text-align:center}.cm-enroll{display:grid;place-items:center;flex:0 0 auto;width:44px;height:44px;border:1.5px solid var(--coral);border-radius:50%;background:transparent;color:var(--coral-600);cursor:pointer;overflow:hidden;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .15s ease}.cm-enroll:hover:not(:disabled){background:color-mix(in srgb,var(--coral) 12%,transparent);transform:scale(1.06)}.cm-enroll:active:not(:disabled){transform:scale(.9)}.cm-enroll.is-on{border-color:var(--ok);background:var(--ok-soft);color:var(--ok)}.cm-enroll.is-on:hover:not(:disabled){background:color-mix(in srgb,var(--ok) 18%,transparent)}.cm-enroll:disabled{opacity:.6;cursor:default;transform:none}.cm-enroll.is-busy{animation:cm-pulse .9s ease-in-out infinite}.cm-enroll-icon{display:flex;animation:cm-pop .32s cubic-bezier(.34,1.56,.64,1)}@keyframes cm-pop{0%{transform:scale(.3) rotate(-25deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}@keyframes cm-pulse{0%,to{opacity:1}50%{opacity:.55}}.cm-opens{margin:18px 0 0;font-size:.95rem}.cm-opens .cm-label{display:inline;margin-right:4px}.cm .frm-card-foot{margin-top:18px}.cm .frm-participants{margin-bottom:8px}.cp .page-head{margin-bottom:0}.cp .page-head h1{font-size:clamp(2rem,6vw,3.2rem);line-height:1.1}.cp-tags{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0 0 16px}.cp-tag{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:.85rem;font-weight:700;line-height:1.2}.cp-tag[class*=lvl-]{color:var(--lvl-tx)}.cp-tag[class*=lvl-]:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--lvl-ac)}.cp-meta{margin:14px 0 0;color:var(--muted);font-size:1.05rem}.cp-meta+.cp-meta{margin-top:4px;font-size:.95rem}.cp-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:26px 0 0}.cp-btn{padding:14px 28px;border:1.5px solid var(--ink);border-radius:var(--pill);background:transparent;color:var(--ink);font-family:var(--font-sans);font-size:1rem;font-weight:700;cursor:pointer}.cp-btn:hover{background:var(--surface-2)}.cp-btn.is-primary{border-color:var(--coral);background:var(--coral);color:#fff}.cp-btn.is-primary:hover{background:var(--coral-600)}.cp-btn:disabled{opacity:.6;cursor:default}.cp-msg{color:var(--danger);font-size:.9rem}.cp .cm-alert{margin-top:24px;max-width:760px}.cp-lead{max-width:760px;margin:28px 0 0;color:var(--muted);font-size:1.2rem;line-height:1.6}.cp-about{max-width:760px;margin:16px 0 0;color:var(--text);line-height:1.65}.cp-about p,.cp-about ul{margin:0 0 10px}.cp-about ul{padding-left:20px}.cp-progress{display:flex;align-items:center;gap:22px;margin:28px 0 0;padding:22px 28px;border:1.5px solid var(--line);border-radius:28px;background:var(--surface)}.cp-progress-pct{font-family:var(--font-display);font-size:2.2rem;font-weight:800;line-height:1;color:var(--ink)}.cp-progress-bar{flex:1 1;height:6px;overflow:hidden;border-radius:6px;background:var(--line)}.cp-progress-bar>div{height:100%;border-radius:6px;background:var(--coral);transition:width .3s ease}.cp-progress-count{color:var(--muted);font-size:.95rem;white-space:nowrap}.cp-lessons-wrap{margin-top:28px}.cp-lessons-h{margin:0 0 10px;font-family:var(--font-sans);font-size:.78rem;font-weight:700;line-height:1.2;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.cp-lessons{margin:0;padding:0;list-style:none}.cp-lesson{border-bottom:1px solid var(--line)}.cp-lesson:last-child{border-bottom:none}.cp-lesson-head{display:flex;align-items:center;gap:16px;padding:22px 0}.cp-lesson-num{flex:0 0 22px;color:var(--muted);font-size:.95rem;font-weight:700}.cp-check{flex:0 0 auto;display:grid;place-items:center;width:44px;height:44px;border:2px solid var(--line-strong);border-radius:12px;color:#fff;font-weight:800}.cp-check.is-on{border-color:var(--coral);background:var(--coral)}.cp-check.is-sm{width:30px;height:30px;border-radius:9px;font-size:.85rem}.cp-lesson-main{flex:1 1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0;border:0;background:none;color:var(--ink);text-align:left;cursor:pointer}.cp-lesson-title{font-family:var(--font-display);font-size:1.2rem;font-weight:700;line-height:1.25}.cp-lesson-title small{display:block;margin-top:4px;color:var(--muted);font-family:var(--font-sans);font-size:.85rem;font-weight:500}.cp-lesson-toggle{color:var(--muted);font-size:.95rem;white-space:nowrap}.cp-lesson-main:hover .cp-lesson-toggle{color:var(--ink)}.cp-lesson-body{padding:0 0 26px 38px}.cp-lesson-body>*+*{margin-top:14px}.cp-tasks{display:flex;flex-direction:column}.cp-tasks>.les-doc{padding:12px 0}.cp-task{display:flex;align-items:flex-start;gap:14px;padding:10px 0}.cp-task-check{flex:0 0 auto;padding:0;border:0;background:none;cursor:pointer}.cp-task-text{flex:1 1;min-width:0}.cp-task.les-doc{display:block}.cp-task-text .les-bp,.cp-task.les-doc .les-bp{margin:0}.cp-manual{margin-top:10px;padding:10px 18px;border:1.5px solid var(--ink);border-radius:var(--pill);background:var(--ink);color:var(--bg);font-family:var(--font-sans);font-weight:700;cursor:pointer}.cp-manual.is-on{background:transparent;border-color:var(--ink);color:var(--ink)}.les-fold-head{display:flex;align-items:center;gap:8px;padding:12px 14px;font-family:var(--font-display);font-weight:700;font-size:.95rem;color:var(--ink)}.les-fold-head+.les-fold-body{border-top:1px dashed var(--line)}.les-fold.is-empty{background:transparent;border-style:dashed}.les-fold-empty,.les-fold.is-empty .les-fold-t{color:var(--muted)}.les-fold-empty{margin-left:auto;font-family:var(--font-sans);font-size:.8rem;font-weight:600}.les-embed{margin:14px 0;border:1.5px solid var(--line);border-radius:16px;background:var(--home-bg);overflow:hidden}.les-embed-head{padding:14px 16px 4px}.les-embed-t{color:var(--ink);font-family:var(--font-display);font-size:1rem;font-weight:600;text-decoration:none}.les-embed-t:hover{color:var(--coral)}.les-embed-t span{color:var(--muted);font-size:.85em}.les-embed-lead{margin:4px 0 0;color:var(--muted);font-size:.9rem;line-height:1.45}.les-embed.is-bare{border:0;background:none}.les-mat-desc{display:block;margin-top:2px;color:var(--text);font-size:.82rem;line-height:1.4}.les-embed.is-bare iframe{padding:0}.les-embed iframe{display:block;width:100%;border:0;padding:0 12px;background:transparent;color-scheme:light}:root[data-theme=dark] .les-embed iframe{color-scheme:dark}@media (max-width:640px){.les-embed iframe{padding:0 6px}}.hw-answer{margin-top:16px}.hw-answer-field{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--input-bg);color:var(--text);font-family:var(--font-sans);font-size:1rem;line-height:1.5;resize:vertical;outline:none}.hw-answer-field:focus{border-color:var(--ink)}.hw-answer .sp-sent-item{border-top:0;padding-top:0;margin-top:0}.hw-answer .cp-btn{margin-top:10px}.cp-fb-card{display:flex;align-items:center;gap:14px;width:100%;margin-top:28px;padding:16px 22px;border:0;border-radius:22px;background:var(--ans-fb);color:#0b3550;text-align:left;cursor:pointer;transition:filter .15s}.cp-fb-card:hover{filter:brightness(.95)}.cp-fb-card-icon{flex:0 0 auto;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:hsla(0,0%,100%,.45);color:#0b3550}.cp-fb-card-text{display:flex;flex-direction:column;gap:2px;min-width:0}.cp-fb-card-h{font-family:var(--font-display);font-size:1.05rem;font-weight:700;color:#0b3550}.cp-fb-card-sub{color:rgba(11,53,80,.75);font-size:.88rem}.cp-fb-modal{max-width:460px}.cp-fb-body{display:flex;flex-direction:column;gap:18px;align-items:center;text-align:center}.cp-fb-body>*{flex-shrink:0}.cp-fb-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:color-mix(in srgb,var(--coral) 14%,var(--surface));color:var(--coral-600)}.cp-fb-h{margin:0;font-family:var(--font-display);font-size:1.3rem;font-weight:700;color:var(--ink)}.cp-fb-course{margin:-12px 0 0;color:var(--muted);font-size:.92rem}.cp-fb-field{align-self:stretch;padding:16px;border-radius:16px;background:var(--surface-2);text-align:left}.cp-fb-label{display:flex;flex-direction:column;gap:10px;font-family:var(--font-sans);font-weight:700;font-size:.92rem;color:var(--ink);text-transform:none;letter-spacing:normal}.cp-fb-field .hw-answer-field{background:var(--surface)}.cp-fb-anon{display:flex;align-self:stretch;align-items:flex-start;gap:10px;padding:2px 4px;text-align:left;font-family:var(--font-sans);font-size:.92rem;font-weight:600;color:var(--ink);text-transform:none;letter-spacing:normal;cursor:pointer}.cp-fb-anon input{flex:0 0 auto;width:20px;height:20px;margin:1px 0 0;accent-color:var(--coral)}.cp-fb-anon span{display:flex;flex-direction:column;gap:2px}.cp-fb-anon small{color:var(--muted);font-size:.82rem;font-weight:500;text-transform:none;letter-spacing:normal}.cp-fb-next{margin-top:6px;text-decoration:none}.cp-fb-done .sp-link{margin-top:10px}.cp-fb-submit{align-self:stretch;height:48px;border:0;border-radius:var(--pill);background:var(--coral);color:#fff;font-family:var(--font-sans);font-weight:700;font-size:1rem;cursor:pointer}.cp-fb-submit:hover:not(:disabled){background:var(--coral-600)}.cp-fb-submit:disabled{opacity:.6;cursor:default}.cp-fb-done{display:flex;flex-direction:column;align-items:center;padding:10px 0}.cp-fb-done-icon{display:grid;place-items:center;width:56px;height:56px;margin-bottom:12px;border-radius:50%;background:var(--ok-soft);color:var(--ok)}.cp-fb-done-h{margin:0 0 4px;font-family:var(--font-display);font-size:1.2rem;font-weight:700;color:var(--ink)}.cp-fb-done .cp-btn{margin-top:16px}@media (max-width:640px){.cp-progress{flex-wrap:wrap;gap:12px 16px;padding:18px 20px}.cp-progress-bar{order:3;flex:1 0 100%}.cp-progress-count{margin-left:auto}.cp-lesson-head{gap:12px;padding:18px 0}.cp-lesson-num{flex-basis:16px}.cp-check{width:36px;height:36px}.cp-lesson-title{font-size:1.05rem}.cp-lesson-toggle{display:none}.cp-lesson-body{padding-left:0}}.ans-group{margin-bottom:32px;max-width:760px}.ans-title{display:flex;align-items:baseline;gap:10px;font-family:var(--font-sans);font-size:1.25rem;font-weight:800}.ans-title span{color:var(--muted);font-size:.95rem;font-weight:500}.ans-course{margin:2px 0 14px;color:var(--muted);font-size:.9rem}.ans-list{display:flex;flex-direction:column;gap:12px}.ans-card{padding:16px 18px;border:1.5px solid var(--line);border-radius:20px;background:var(--surface)}.ans-card header{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.ans-card header strong{color:var(--ink)}.ans-card footer,.ans-card header span,.ans-card header time{color:var(--muted);font-size:.85rem}.ans-card header time{margin-left:auto}.ans-card header .ans-anon{padding:1px 8px;border-radius:var(--pill);background:var(--surface-2);font-size:.78rem;font-weight:700}.ans-card p{margin:10px 0 0;white-space:pre-wrap;line-height:1.6}.ans-card footer{margin-top:10px}.sp{margin:36px 0 0}.sp-gate,.sp-intro{max-width:760px}.sp-intro{margin:0 0 22px;color:var(--text);font-size:1.05rem;line-height:1.6}.sp-filter{margin-bottom:26px;display:flex;flex-wrap:wrap;align-items:center;gap:10px}.sp-filter .frm-filterbar{flex:0 1 auto;min-width:0}.sp-klass.pill-select{flex:0 0 auto;margin-left:auto;padding:5px 32px 5px 14px;background-position:right 12px center;font-size:.86rem;line-height:1.3}.sp-task-body{padding:4px 0 0}.sp-task-body>*+*{margin-top:14px}.sp-sentence{margin:8px 0 6px;font-size:1.3rem;font-weight:700;line-height:1.5;color:var(--ink)}.sp-gap{display:inline-block;min-width:110px;margin:0 2px 0 6px;border-bottom:2px solid var(--ink);transform:translateY(3px)}.sp-variant{display:flex;gap:14px;padding:14px 0;border-top:1px solid var(--line)}.sp-variant-n{flex:0 0 20px;padding-top:12px;color:var(--muted);font-weight:700}.sp-variant-fields{flex:1 1;display:flex;flex-direction:column;gap:8px;min-width:0}.sp-answer textarea,.sp-variant input,.sp-variant textarea{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--input-bg);color:var(--text);font-family:var(--font-sans);font-size:1rem;line-height:1.5;resize:vertical;outline:none}.sp-answer textarea:focus,.sp-variant input:focus,.sp-variant textarea:focus{border-color:var(--ink)}.sp-variant input{font-weight:700}.sp-answer-label{margin:0;color:var(--ink);font-size:.95rem;font-weight:700}.sp-answer-hint{margin:2px 0 10px;color:var(--muted);font-size:.85rem}.sp-answer-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px}.sp-answer .cp-btn,.sp-sentences .cp-btn{padding:11px 22px;font-size:.95rem}.sp-answer-msg{color:var(--ok);font-size:.9rem;font-weight:600}.sp-answer-msg,.sp-sentences .cp-msg{margin:10px 0 0}.sp-sent{margin-top:18px}.sp-sent summary{color:var(--muted);font-size:.9rem;font-weight:700;cursor:pointer}.sp-sent-item{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.sp-sent-item time{color:var(--muted);font-size:.78rem}.sp-sent-item p{margin:4px 0 0;white-space:pre-wrap;font-size:.95rem;line-height:1.5}@media (max-width:640px){.sp-task-body{padding-left:0}}.ans-variant{margin:10px 0 0;line-height:1.55}.ans-variant strong{color:var(--ink)}.ans-card.is-new{border-color:var(--coral)}.ans-new{flex:none;white-space:nowrap;padding:2px 9px;border-radius:var(--pill);color:#fff;font-size:.72rem;font-weight:700}.ans-new,.avatar-dot{background:var(--coral)}.avatar-dot{position:absolute;top:-3px;right:-3px;width:13px;height:13px;border:2.5px solid var(--bg);border-radius:50%;pointer-events:none}.menu-count{margin-left:auto;padding:1px 9px;border-radius:var(--pill);background:var(--coral);color:#fff;font-size:.78rem;font-weight:700}.menu-dropdown-list a{gap:10px}.mp-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px;margin-bottom:36px}.mp-stat{padding:22px 24px;border:1.5px solid var(--line);border-radius:26px;background:var(--surface)}.mp-stat strong{display:block;font-family:var(--font-display);font-size:clamp(1.6rem,5vw,2.2rem);font-weight:800;line-height:1.1;color:var(--ink)}.mp-stat span{display:block;margin-top:8px;color:var(--muted);font-size:.95rem}.mp-group{margin-bottom:30px}.mp-list{display:flex;flex-direction:column;gap:14px}.mp-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,280px) 44px;align-items:center;grid-gap:18px;gap:18px;padding:22px 26px;border:1.5px solid var(--line);border-radius:26px;background:var(--surface);transition:border-color .12s ease}.mp-card:hover{border-color:var(--line-strong)}.mp-card-main h3{font-family:var(--font-sans);font-size:1.15rem;font-weight:800;line-height:1.25;color:var(--ink)}.mp-card-main p{margin:6px 0 0;color:var(--muted);font-size:.92rem}.mp-bar{height:6px;overflow:hidden;border-radius:6px;background:var(--line)}.mp-bar>div{height:100%;border-radius:6px;background:var(--coral);transition:width .3s ease}.mp-pct{color:var(--muted);font-size:.95rem;text-align:right}@media (min-width:720px){.mp-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:640px){.mp-card{grid-template-columns:minmax(0,1fr) auto;gap:14px 12px;padding:18px 20px}.mp-bar{grid-column:1/-1;grid-row:2}.mp-pct{grid-column:2;grid-row:1}}.sp textarea,.sp-field input:not([type=file]){width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--input-bg);color:var(--text);font-family:var(--font-sans);font-size:1rem;line-height:1.5;resize:vertical;outline:none}.sp textarea:focus,.sp-field input:focus{border-color:var(--ink)}.sp .cp-btn{padding:11px 22px;font-size:.95rem}.sp-link{padding:0;border:0;background:none;color:var(--muted);font-family:var(--font-sans);font-size:.9rem;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.sp-link:hover{color:var(--ink)}.sp-hint{font-size:.85rem;line-height:1.5}.sp-empty,.sp-hint{margin:8px 0 0;color:var(--muted)}.sp-gate{padding:28px;border:1.5px solid var(--line);border-radius:28px;background:var(--surface)}.sp-gate-q{margin:0 0 6px;font-family:var(--font-sans);font-size:1.5rem;font-weight:800;color:var(--ink);line-height:1.25}.sp-gate textarea,.sp-goals-form textarea{margin-top:14px}.sp-goals-form .sp-gate-q{font-size:1.05rem}.sp-profile{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px;margin-bottom:34px}.sp-panel{padding:22px 24px;border:1.5px solid var(--line);border-radius:24px;background:var(--surface);min-width:0}.sp-panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.sp-panel-head h3{margin:0;font-family:var(--font-sans);font-size:1.1rem;font-weight:800;color:var(--ink)}.sp-goals-text{margin:0;white-space:pre-wrap;line-height:1.6}.sp-tests{display:grid;grid-gap:16px;gap:16px}.sp-test h4{margin:0 0 6px;font-family:var(--font-sans);font-size:.95rem;font-weight:700;color:var(--ink)}.sp-test-saved{margin:0;display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline}.sp-test-saved a{color:var(--ink);font-size:.9rem;text-underline-offset:3px}.sp-field{display:block;margin-top:10px}.sp-field span{display:block;margin-bottom:4px;color:var(--muted);font-size:.82rem;font-weight:500;letter-spacing:0;text-transform:none}.sp-field input[type=file]{width:100%;font-size:.9rem;color:var(--text)}.sp-tabs{display:flex;gap:8px;margin-bottom:18px;padding-bottom:2px;overflow-x:auto;border-bottom:1.5px solid var(--line)}.sp-tab{display:inline-flex;align-items:center;gap:8px;margin-bottom:-1.5px;padding:12px 16px;border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);font-family:var(--font-sans);font-size:.98rem;font-weight:700;white-space:nowrap;cursor:pointer}.sp-tab:hover{color:var(--ink)}.sp-tab.is-active{border-bottom-color:var(--ink);color:var(--ink)}.sp-tab-n{padding:1px 8px;border-radius:var(--pill);background:var(--seg-bg);font-size:.78rem;font-weight:700}.sp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-gap:16px;gap:16px}.sp-card{display:flex;flex-direction:column;border:1.5px solid var(--line);border-radius:24px;background:var(--surface);overflow:hidden}.sp-card:hover{border-color:var(--line-strong)}.sp-card.is-done{border-color:var(--ok);background:var(--ok-soft)}.sp-card.is-done .sp-card-tag{background:var(--surface)}.sp-card-main{display:flex;flex:1 1;flex-direction:column;align-items:flex-start;gap:10px;padding:20px 22px 12px;border:0;background:none;color:var(--ink);text-align:left;cursor:pointer}.sp-card-main h3{margin:0;font-family:var(--font-sans);font-size:1.1rem;font-weight:800;line-height:1.3}.sp-card-tag{display:inline-block;padding:4px 12px;border-radius:var(--pill);background:var(--seg-bg);color:var(--text);font-size:.75rem;font-weight:700}.sp-card-kind{color:var(--muted);font-size:.85rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.sp-card-tags{display:flex;flex-wrap:wrap;gap:6px}.sp-card-meta{color:var(--ink);font-size:.82rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.frm-chip.is-fun,.sp-card-tag.is-fun,.sp-card.is-done .sp-card-tag.is-fun{background:linear-gradient(100deg,#ff7c60,#f5a524 50%,#b06ce8);border-color:transparent;color:#fff}.frm-chip.is-fun:before,.sp-card-tag.is-fun:before{content:"✦ "}.frm-chip.is-fun:not(.is-active){opacity:.72}.frm-chip.is-fun:not(.is-active):hover{opacity:1}.frm-chip.is-fun.is-active{border-color:transparent;box-shadow:0 2px 10px rgba(176,108,232,.35)}.sp-done-btn{border-color:var(--ok);background:var(--ok);color:#fff}.sp-done-btn .sp-done-again{display:none}.sp-done-btn:focus-visible,.sp-done-btn:hover{border-color:var(--ink);background:var(--surface);color:var(--ink)}.sp-done-btn:focus-visible .sp-done-lbl,.sp-done-btn:hover .sp-done-lbl{display:none}.sp-done-btn:focus-visible .sp-done-again,.sp-done-btn:hover .sp-done-again{display:inline}.sp-fbask{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin:0 0 16px;padding:14px 18px;border:1.5px solid var(--ok);border-radius:16px;background:var(--ok-soft)}.sp-fbask-ico{font-size:1.6rem}.sp-fbask-text{display:flex;flex:1 1 260px;flex-direction:column;gap:2px}.sp-fbask-text strong{color:var(--ink)}.sp-fbask-text span{color:var(--text);font-size:.9rem;line-height:1.45}.sp-fbask-btns{display:flex;align-items:center;gap:12px}.sp-card.is-soon{background:var(--surface-2);border-style:dashed}.sp-card.is-soon h3{color:var(--muted)}.sp-card.is-soon .sp-card-main{cursor:default}.sp-card-tag.is-soon{background:var(--surface);color:var(--muted)}.sp-badge.is-wait{color:var(--ink);font-size:.85rem;font-weight:700}.sp-card-tag.is-int,.sp-card.is-done .sp-card-tag.is-int{background:var(--icon-tint);color:var(--coral-600)}.sp-card-tag.is-int:before{content:"✦ "}.sp-card-topics{display:flex;flex-direction:column;gap:6px;width:100%;color:var(--muted);font-size:.8rem;font-weight:700}.sp-card-topics-bar{display:block;width:100%;height:6px;border-radius:3px;background:var(--seg-bg);overflow:hidden}.sp-card-topics-bar>span{display:block;height:100%;border-radius:3px;background:var(--ok)}.sp-card-foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:8px 22px 20px}.sp-badge{color:var(--muted);font-size:.85rem;font-weight:700}.sp-badge.is-done{padding:4px 10px;border-radius:var(--pill);background:var(--ok);color:#fff;font-size:.78rem}.sp-arrange-btn{display:inline-flex;align-items:center;gap:8px;margin-left:auto;flex:0 0 auto}.sp-arrange-btn svg{flex:0 0 auto}@media (max-width:860px){.sp-arrange-btn{justify-content:center;width:40px;height:40px;min-height:40px;padding:0;border-radius:50%}.sp-arrange-l{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}.sp-layout{gap:34px}.sp-layout,.sp-lgroup{display:flex;flex-direction:column}.sp-lgroup{gap:18px}.sp-lgroup-h{margin:0;font-family:var(--font-sans);font-size:1.35rem;font-weight:800;color:var(--ink)}.sp-lsec{display:flex;flex-direction:column;gap:12px}.sp-lsec-h{margin:6px 0 0;color:var(--muted);font-size:.8rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.sp-set{grid-column:1/-1;display:flex;flex-direction:column;gap:16px;padding:20px 22px;border:1.5px solid var(--line);border-radius:24px;background:var(--surface-2)}.sp-set.is-done{border-color:var(--ok);background:var(--ok-soft)}.sp-set-head{flex-wrap:wrap;justify-content:space-between;gap:12px 20px}.sp-set-head,.sp-set-title{display:flex;align-items:flex-start}.sp-set-title{flex-direction:column;gap:8px;min-width:0}.sp-set-title h3{margin:0;font-family:var(--font-sans);font-size:1.15rem;font-weight:800;color:var(--ink);line-height:1.3}.sp-card-tag.is-set{background:var(--ink);color:var(--surface)}.sp-set-steps{display:flex;gap:0;margin:0;padding:0;list-style:none;overflow-x:auto;scrollbar-width:thin}.sp-set-step{display:flex;flex:1 0 180px;align-items:stretch;min-width:0}.sp-set-step+.sp-set-step:before{content:"→";display:flex;align-items:center;padding:0 8px;color:var(--muted);font-size:1.2rem;font-weight:700}.sp-set-btn{display:flex;flex:1 1;flex-direction:column;align-items:flex-start;gap:6px;min-width:0;padding:14px 16px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;text-decoration:none;cursor:pointer}.sp-set-btn:hover{border-color:var(--line-strong)}.sp-set-n{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--seg-bg);color:var(--ink);font-size:.85rem;font-weight:800}.sp-set-t{font-size:.95rem;font-weight:700;line-height:1.35;overflow-wrap:anywhere}.sp-set-s{color:var(--muted);font-size:.78rem;font-weight:600}.sp-set-step.is-done .sp-set-btn{border-color:var(--ok)}.sp-set-step.is-done .sp-set-n{background:var(--ok);color:#fff}.sp-set-step.is-next .sp-set-btn{border-color:var(--ink)}.sp-set-step.is-next .sp-set-n{background:var(--ink);color:var(--surface)}.sp-arr{display:flex;flex-direction:column;gap:18px;padding:22px 24px;border:1.5px dashed var(--line-strong);border-radius:24px;background:var(--surface)}.sp-arr-h{margin:0;font-family:var(--font-sans);font-size:1.2rem;font-weight:800;color:var(--ink)}.sp-arr-lead{margin:6px 0 0;color:var(--muted);font-size:.9rem;line-height:1.5}.sp-arr-block{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.sp-arr-l{font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.sp-arr-l,.sp-arr-muted{margin:0;color:var(--muted)}.sp-arr-muted{font-size:.88rem}.sp-arr-list,.sp-arr-steps{display:flex;flex-direction:column;gap:6px;width:100%;margin:0;padding:0;list-style:none}.sp-arr-row{display:flex;align-items:center;gap:10px;min-height:44px}.sp-arr-n{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--seg-bg);color:var(--ink);font-size:.8rem;font-weight:800}.sp-arr-t{flex:1 1;min-width:0;color:var(--ink);font-size:.92rem;line-height:1.35;overflow-wrap:anywhere}.sp-arr-btns{display:flex;flex:0 0 auto;gap:4px}.sp-arr-ico{width:36px;height:36px;border:1.5px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink);font:inherit;font-weight:700;cursor:pointer}.sp-arr-ico:hover:not(:disabled){background:var(--surface-2)}.sp-arr-ico:disabled{opacity:.35;cursor:default}.sp-arr-ico.is-del:hover{border-color:var(--coral-600,#e5533d);color:var(--coral-600,#e5533d)}.sp-arr-input{flex:1 1;min-width:0;min-height:40px;padding:8px 14px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;font-size:.95rem}.sp-arr-input.is-title{font-weight:700}.sp-arr-add{display:flex;flex-wrap:wrap;gap:8px;width:100%;max-width:560px}.sp-arr-set{display:flex;flex-direction:column;gap:10px;width:100%;padding:14px 16px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface-2)}.sp-arr-set-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.sp-arr-pick{align-self:flex-start;max-width:100%}.sp-arr-warn{margin:0;color:var(--coral-600,#e5533d);font-size:.84rem}.sp-arr-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding-top:6px;border-top:1px solid var(--line)}@media (max-width:640px){.sp-set{padding:16px}.sp-set-act,.sp-set-act .cp-btn{width:100%}.sp-set-steps{flex-direction:column;overflow:visible}.sp-set-step{flex:0 0 auto;flex-direction:column}.sp-set-step+.sp-set-step:before{content:"↓";justify-content:center;padding:2px 0}.sp-arr{padding:16px}.sp-arr-row{flex-wrap:wrap}.sp-arr-list .sp-arr-row .pill-select{width:100%}}.sp-myans{display:flex;flex-direction:column;gap:14px;max-width:760px}.sp-myans-card{padding:20px 22px;border:1.5px solid var(--line);border-radius:22px;background:var(--surface)}.sp-myans-card header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 14px}.sp-myans-title{color:var(--ink);font-size:1.02rem;text-decoration:none}.sp-myans-title:hover{text-decoration:underline}.sp-myans-card time{color:var(--muted);font-size:.82rem}.sp-myans-text p{margin:8px 0 0;white-space:pre-wrap;line-height:1.55}.sp-feedback{margin-top:12px;padding:12px 14px;border-radius:14px;background:var(--ok-soft)}.sp-feedback-h{margin:0 0 4px;color:var(--ok);font-size:.82rem;font-weight:800}.sp-feedback-h time{margin-left:6px;color:var(--muted);font-weight:500}.sp-feedback p{margin:0;white-space:pre-wrap;line-height:1.5}.sp-feedback p+p{margin-top:0}.sp-sheet-back{position:fixed;inset:0;z-index:60;display:flex;align-items:flex-start;justify-content:center;padding:4vh 16px;overflow-y:auto;background:var(--overlay)}.sp-sheet{width:100%;max-width:760px;padding:28px 30px 32px;border-radius:28px;background:var(--surface);color:var(--text)}.sp-sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.sp-sheet-head h2{margin:8px 0 0;font-family:var(--font-sans);font-size:1.5rem;font-weight:800;color:var(--ink);line-height:1.25}.sp-sheet-x{flex:0 0 auto;width:36px;height:36px;border:1.5px solid var(--line);border-radius:50%;background:none;color:var(--ink);cursor:pointer}.sp-sheet-x:hover{background:var(--surface-2)}.sp-sheet-actions{display:flex;align-items:center;gap:12px;margin:16px 0 20px}@media (max-width:720px){.sp-profile{grid-template-columns:1fr}.sp-gate{padding:20px}.sp-sheet{padding:22px 20px 26px;border-radius:22px}.sp-sheet-back{padding:2vh 10px}}.ans-search{max-width:420px;margin-bottom:20px}.ans-students{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:16px;gap:16px}.ans-student{display:flex;flex-direction:column;gap:6px;padding:20px 22px;border:1.5px solid var(--line);border-radius:24px;background:var(--surface);color:var(--text);text-decoration:none}.ans-student:hover{border-color:var(--line-strong)}.ans-student-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.ans-student-top strong{font-family:var(--font-sans);font-size:1.1rem;color:var(--ink)}.ans-student-meta{margin:0;color:var(--muted);font-size:.85rem}.ans-student-goal{margin:6px 0 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5;font-size:.95rem}.ans-student-foot,.ans-student-goal em{color:var(--muted)}.ans-student-foot{margin:auto 0 0;padding-top:8px;font-size:.82rem}button.ans-student{width:100%;text-align:left;cursor:pointer;font:inherit}.ans-stugroup{margin-bottom:24px;max-width:760px}.ans-stugroup-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-bottom:10px}.ans-stugroup-head strong{font-family:var(--font-sans);font-size:1.05rem;color:var(--ink)}.ans-fb-card header{row-gap:2px}.ans-fb-shot{width:96px;height:96px;border-radius:12px;object-fit:cover;margin-top:10px}.ans-profile{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px;align-items:start}.ans-answers,.ans-note{grid-column:1/-1}.ans-note textarea{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--input-bg);color:var(--text);font-family:var(--font-sans);font-size:1rem;line-height:1.5;resize:vertical;outline:none}.ans-fb textarea:focus,.ans-note textarea:focus{border-color:var(--ink)}.ans-private{margin:0}.ans-answers{margin-top:12px;max-width:760px}.ans-body p{margin:10px 0 0;white-space:pre-wrap;line-height:1.6}.ans-fb textarea{width:100%;margin-top:14px;padding:10px 12px;border:1.5px solid var(--line);border-radius:14px;background:var(--input-bg);color:var(--text);font-family:var(--font-sans);font-size:.95rem;resize:vertical;outline:none}.ans-fb .cp-btn{padding:9px 18px;font-size:.9rem}.ans-edit{margin-top:8px}@media (max-width:720px){.ans-profile{grid-template-columns:1fr}}.fb-gate{max-width:620px}.fb-shot{margin-top:14px}.fb-shot-btn{display:inline-flex;align-items:center;padding:11px 20px;border:1.5px dashed var(--line-strong);border-radius:var(--pill);color:var(--text);font-family:var(--font-sans);font-size:.92rem;font-weight:600;text-transform:none;letter-spacing:normal;cursor:pointer}.fb-shot-btn:hover{border-color:var(--ink);color:var(--ink)}.fb-shot-btn input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.fb-shot-preview{display:flex;align-items:center;gap:14px;padding:10px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface-2)}.fb-shot-preview img{width:72px;height:72px;border-radius:12px;object-fit:cover;flex:0 0 auto}.fb-shot-info{min-width:0}.fb-shot-info p{margin:0 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;color:var(--text)}@media (max-width:720px){.fb-gate{padding:20px}}.pt-dots{display:flex;gap:6px;margin-bottom:18px}.pt-dot{width:8px;height:8px;border-radius:50%;background:var(--line-strong)}.pt-dot.is-active{background:var(--ink)}.pt-dot.is-done{background:var(--coral)}.pt-step-h{margin:0 0 10px;font-family:var(--font-sans);font-size:1.05rem;font-weight:800;color:var(--ink)}.pt-step>.sp-hint:first-of-type{margin-top:0 0 14px}.pt-sentence{margin:14px 0;font-size:1.05rem;line-height:1.7;color:var(--text)}.pt-word{padding:1px 2px;border:0;border-radius:4px;background:none;color:var(--text);font:inherit;cursor:pointer}.pt-word:hover{background:var(--surface-2)}.pt-word.is-marked{background:var(--coral);color:#fff;font-weight:700}.pt-words{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.pt-chip{padding:8px 16px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--text);font-family:var(--font-sans);font-size:.92rem;font-weight:600;cursor:pointer}.pt-chip:hover{border-color:var(--line-strong)}.pt-chip.is-picked{border-color:var(--coral);background:var(--coral);color:#fff}.pt-row{display:flex;gap:12px;margin-top:16px}.pt-row-n{flex:0 0 auto;display:grid;place-items:center;width:24px;height:24px;margin-top:2px;border-radius:50%;background:var(--surface-2);color:var(--ink);font-size:.8rem;font-weight:700}.pt-row-fields{flex:1 1;display:flex;flex-direction:column;gap:8px;min-width:0}.pt-row-sub{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.pt-row-sub input{width:100%;padding:10px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--input-bg);color:var(--text);font-family:var(--font-sans);font-size:.92rem;outline:none}.pt-row-sub input:focus{border-color:var(--ink)}.pt-answer p{margin:6px 0 0;line-height:1.6}.pt-answer-h{margin:14px 0 2px;color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.pt-answer-h:first-child{margin-top:0}@media (max-width:520px){.pt-row-sub{grid-template-columns:1fr}}.af{margin-top:24px;--af-ok:var(--ok);--af-terra:var(--coral);--af-gold:#a07a17;--af-lav:#6a5ea0;--af-navy:#3a5ea0}:root[data-theme=dark] .af{--af-gold:#d4ab3f;--af-lav:#9c92d6;--af-navy:#82a6de}.af-shell{max-width:760px;margin:0}.af-intro{margin-top:18px}.af-intro p{color:var(--muted);font-size:.98rem;line-height:1.6;margin:0 0 12px}.af-intro p:last-child{margin-bottom:0}.af-topics{display:flex;flex-direction:column;gap:12px;margin-top:24px}.af-topic-card{display:flex;align-items:flex-start;gap:16px;padding:20px 22px;border:1.5px solid var(--line);border-radius:20px;background:var(--surface);text-decoration:none;transition:border-color .12s ease,transform .12s ease}.af-topic-card:hover{border-color:var(--line-strong);transform:translateY(-1px)}.af-topic-card.is-done{border-color:var(--ok);background:var(--ok-soft)}.af-topics-item{display:flex;flex-direction:column;gap:10px}.af-topics-block{margin:14px 0 0;color:var(--muted);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.af-topics-item:first-child .af-topics-block{margin-top:0}.af-topic-card.is-soon{border-style:dashed;background:transparent;cursor:default;opacity:.55}.af-topic-card.is-soon:hover{border-color:var(--line);transform:none}.af-topic-soon{margin-left:auto;align-self:center;flex:0 0 auto;padding:4px 10px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.75rem;font-weight:700}.af-topic-num{flex:0 0 auto;font-family:var(--font-display);font-size:1.7rem;font-weight:800;color:var(--af-ok);opacity:.35;min-width:30px}.af-topic-card.is-done .af-topic-num{opacity:1}.af-topic-title{margin:0 0 3px;font-family:var(--font-display);font-size:1.08rem;font-weight:800;color:var(--ink)}.af-topic-sub{margin:0;color:var(--muted);font-size:.88rem;line-height:1.5}.af-topic-formula{margin-top:8px;font-family:var(--font-display);font-size:1rem;font-weight:800}.af-topic-check{margin-left:auto;align-self:center;color:var(--ok);font-size:1.3rem;flex:0 0 auto}.af-stepnav{margin:14px 0 0;color:var(--muted);font-size:.85rem;font-weight:600;text-align:center}.af-pips{display:flex;gap:5px}.af-pip{width:20px;height:5px;padding:0;border:0;border-radius:3px;background:var(--line-strong);cursor:default}.af-pip.is-done{background:var(--af-ok);cursor:pointer}.af-pip.is-active{background:var(--af-terra)}.af-card{padding:26px 26px 24px;border:1.5px solid var(--line);border-radius:22px;background:var(--surface);margin-bottom:16px}.af-card.is-hero{text-align:center;padding:40px 24px}.af-card.is-final{text-align:center;padding:32px 24px}.af-kicker{font-size:.8rem;font-weight:700;color:var(--muted);margin-bottom:16px}.af-card.is-hero h1{font-family:var(--font-display);font-size:clamp(1.8rem,6vw,2.5rem);font-weight:800;line-height:1.1;margin-bottom:20px}.af-card.is-hero h1 em{font-style:italic;color:var(--af-ok)}.af-card.is-hero p{color:var(--muted);font-size:1.02rem;line-height:1.6;max-width:420px;margin:0 auto 26px}.af-card h2{font-family:var(--font-display);font-size:clamp(1.15rem,4vw,1.5rem);font-weight:800;line-height:1.2;margin:0 0 14px}.af-lead{color:var(--muted);font-size:.98rem;line-height:1.6;margin:0 0 20px}.af-fold{margin:20px 0 0}.af-fold>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface-2);list-style:none;cursor:pointer;transition:border-color .15s ease}.af-fold>summary:hover{border-color:var(--coral)}.af-fold>summary::-webkit-details-marker{display:none}.af-fold-text{display:flex;flex-direction:column;gap:2px;text-align:left}.af-fold-title{color:var(--ink);font-family:var(--font-display);font-size:1.05rem;font-weight:700}.af-fold-sub{color:var(--muted);font-size:.82rem}.af-fold-open{display:inline-flex;flex:0 0 auto;align-items:center;gap:8px;color:var(--coral-600);font-size:.85rem;font-weight:700}.af-fold-label:after{content:"Відкрити"}.af-fold[open] .af-fold-label:after{content:"Сховати"}.af-fold-chev{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--surface);border:1.5px solid var(--line);transition:transform .16s ease}.af-fold[open] .af-fold-chev{transform:rotate(180deg)}.af-fold-body{margin-top:14px}.af-fold .af-lead:first-child{margin-top:0}.af-callout{border-radius:12px;padding:14px 18px;font-size:.94rem;line-height:1.6;margin:14px 0;border-left:4px solid var(--af-ok);background:var(--ok-soft)}.af-callout b{color:var(--af-ok)}.af-callout.is-gold{border-left-color:var(--af-gold);background:color-mix(in srgb,var(--af-gold) 12%,transparent)}.af-callout.is-gold b{color:var(--af-gold)}.af-callout.is-terra{border-left-color:var(--af-terra);background:color-mix(in srgb,var(--af-terra) 10%,transparent)}.af-callout.is-terra b{color:var(--af-terra)}.af-callout.is-lav{border-left-color:var(--af-lav);background:color-mix(in srgb,var(--af-lav) 10%,transparent)}.af-callout.is-lav b{color:var(--af-lav)}.af-obs{width:100%;padding:11px 14px;border:1.5px solid var(--line);border-radius:12px;background:var(--input-bg);color:var(--text);font-family:var(--font-sans);font-size:.95rem;resize:vertical;outline:none}.af-obs:focus{border-color:var(--ink)}.af-obs-lbl{font-size:.88rem;font-weight:700;color:var(--muted);margin-bottom:4px}.af-row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;align-items:center;margin-top:12px}.af-card>.af-row:last-child{margin-top:28px}.af-num{text-align:center;font-family:var(--font-display);font-size:1rem;font-weight:700;border:1.5px solid var(--line);border-radius:8px;padding:6px 4px;background:var(--input-bg);color:var(--text)}.af-num:focus{outline:none;border-color:var(--ink)}.af-num.is-ok{border-color:var(--ok);background:var(--ok-soft)}.af-num.is-err{border-color:var(--danger);background:var(--danger-soft)}.af-fb{font-size:.94rem;font-weight:700;text-align:center;margin:8px 0;min-height:20px}.af-fb.is-ok{color:var(--ok)}.af-fb.is-err{color:var(--danger)}.af-tilegrid-wrap{display:inline-flex;flex-direction:column;align-items:center;gap:8px}.af-tilegrid{display:inline-grid;gap:5px;border-radius:12px;padding:10px;background:var(--surface-2);border:1.5px solid var(--line)}.af-tile{position:relative;display:grid;place-items:center;border:0;border-radius:6px;padding:0;background:linear-gradient(160deg,color-mix(in srgb,var(--surface) 60%,#fff 40%) 0,var(--surface) 100%);box-shadow:inset 0 0 0 1.5px var(--line),0 1px 2px rgba(0,0,0,.05);cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .15s ease}.af-tile:hover:not(.is-frozen):not(.is-filled){transform:translateY(-1px);box-shadow:inset 0 0 0 1.5px var(--af-ok),0 3px 6px rgba(0,0,0,.12)}.af-tile.is-filled{background:linear-gradient(160deg,color-mix(in srgb,var(--af-ok) 78%,#fff 22%) 0,var(--af-ok) 100%);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--af-ok) 55%,#000 20%),0 2px 4px rgba(0,0,0,.15)}.af-tile.is-filled:not(.is-frozen){animation:af-tile-pop .22s ease}@keyframes af-tile-pop{0%{transform:scale(.7)}55%{transform:scale(1.12)}to{transform:scale(1)}}.af-tile.is-filled:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(160deg,hsla(0,0%,100%,.4),transparent 65%)}.af-tile-n{position:relative;font-family:var(--font-display);font-size:.7rem;font-weight:800;color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.25)}.af-tile:active:not(.is-frozen){transform:scale(.92)}.af-tile.is-frozen{cursor:default}.af-tilegrid-reset{padding:5px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:transparent;color:var(--muted);font-family:var(--font-sans);font-size:.78rem;font-weight:700;cursor:pointer}.af-tilegrid-reset:hover{border-color:var(--line-strong);color:var(--ink)}.af-gridwrap{display:flex;flex-direction:column;align-items:center;gap:8px;margin:14px 0}.af-gridwrap-lbl{font-family:var(--font-display);font-size:.85rem;font-weight:700;color:var(--muted)}.af-gridwrap-count{font-family:var(--font-display);font-size:1.1rem;font-weight:800;color:var(--af-ok)}.af-guess{display:flex;align-items:center;gap:8px;margin-top:4px;padding:8px 12px;border-radius:12px;background:var(--surface-2);font-size:.85rem;color:var(--muted)}.af-guess-sm{padding:6px 8px;font-size:.78rem}.af-guess .cp-btn{padding:6px 14px;font-size:.82rem}.af-guess-sm .cp-btn{padding:4px 10px;font-size:.78rem}.af-hint{max-width:320px;margin:6px auto 0;padding:8px 12px;border-radius:10px;background:var(--empty-tint);color:var(--empty-ink);font-size:.82rem;line-height:1.4;text-align:center}.af-hint-sm{max-width:140px;font-size:.72rem;padding:6px 8px}.af-explorer{display:flex;gap:20px;align-items:flex-start;flex-wrap:wrap;margin:14px 0}.af-explorer-controls{gap:12px;min-width:160px}.af-explorer-controls,.af-slider{display:flex;flex-direction:column}.af-slider{gap:4px;font-size:.88rem;color:var(--muted);font-weight:600}.af-slider b{color:var(--af-ok);font-family:var(--font-display)}.af-slider input[type=range]{width:100%;accent-color:var(--af-ok);cursor:pointer}.af-explorer-result{background:var(--surface-2);border-radius:12px;padding:12px;text-align:center}.af-explorer-big{font-family:var(--font-display);font-size:1.4rem;font-weight:800;color:var(--af-ok)}.af-explorer-sub{font-size:.82rem;color:var(--muted);margin-top:4px}.af-explorer-svg{flex:1 1;display:flex;justify-content:center;align-items:flex-start;min-width:200px}.af-formula-box{text-align:center;background:var(--surface-2);border-radius:14px;padding:20px;margin:14px 0}.af-formula-big{font-family:var(--font-display);font-size:clamp(1.3rem,5vw,1.9rem);font-weight:800;margin-bottom:8px}.af-formula-sub{text-align:left;font-size:.85rem;color:var(--muted);line-height:1.7}.af-pract-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));grid-gap:12px;gap:12px;margin:14px 0}.af-pract-card{background:var(--surface-2);border-radius:12px;padding:16px;text-align:center}.af-pract-svg{display:flex;justify-content:center;margin-bottom:8px}.af-pract-label{font-size:.8rem;color:var(--muted);margin-bottom:8px}.af-pract-answer{display:flex;align-items:center;justify-content:center;gap:6px;font-family:var(--font-display);font-size:.98rem;font-weight:700;flex-wrap:wrap}.af-word-card{background:var(--surface-2);border-radius:12px;padding:16px;margin-bottom:12px}.af-word-text{font-size:.95rem;margin-bottom:8px;line-height:1.5}.af-word-hint{font-size:.8rem;color:var(--muted);margin-bottom:8px}.af-hint-btn{display:inline-block;margin:0 0 8px;font-size:.82rem}.af-chain{display:flex;flex-direction:column;gap:8px;margin:14px 0;background:var(--surface-2);border-radius:12px;padding:16px}.af-chain-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-family:var(--font-display);font-size:.94rem;font-weight:700}.af-chain-note{font-size:.78rem;color:var(--muted);font-family:var(--font-sans);font-weight:600;min-width:90px}.af-strategy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:12px;gap:12px;margin:14px 0}.af-strategy-card{background:var(--surface-2);border-radius:14px;padding:16px;border:2px solid transparent;cursor:pointer;text-align:left;font-family:var(--font-sans)}.af-strategy-card:hover{border-color:var(--line-strong)}.af-strategy-card.is-chosen{border-color:var(--ok);background:var(--ok-soft);cursor:default}.af-strategy-card h4{font-family:var(--font-display);font-size:.95rem;font-weight:800;margin:0 0 8px}.af-strategy-card p{font-size:.82rem;color:var(--muted);line-height:1.5;margin:0}.af-choice-card{background:var(--surface-2);border-radius:12px;padding:14px;margin-bottom:12px}.af-choice-opts{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:10px}.af-choice-opt{min-width:170px;padding:10px 14px;border:1.5px solid var(--line);border-radius:10px;background:var(--surface);font-family:var(--font-display);font-weight:700;font-size:.88rem;text-align:left;cursor:pointer}.af-choice-opt:hover{border-color:var(--line-strong)}.af-choice-opt.is-correct{border-color:var(--ok);background:var(--ok-soft);color:var(--ok)}.af-choice-opt.is-wrong{border-color:var(--danger);background:var(--danger-soft);color:var(--danger)}.af-choice-opt:disabled{cursor:default}.af-quiz-q{margin-bottom:22px}.af-quiz-prompt{font-size:.98rem;font-weight:700;margin:0 0 10px;line-height:1.5;color:var(--ink)}.af-quiz-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));grid-gap:8px;gap:8px}.af-quiz-opt{background:var(--surface-2);border:1.5px solid var(--line);border-radius:10px;padding:10px 12px;font-family:var(--font-sans);font-size:.88rem;font-weight:700;cursor:pointer;text-align:center}.af-quiz-opt:hover:not(:disabled){border-color:var(--line-strong)}.af-quiz-opt.is-correct{background:var(--ok-soft);border-color:var(--ok);color:var(--ok)}.af-quiz-opt.is-wrong{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.af-quiz-opt:disabled{cursor:default}.af-quiz-explain{font-size:.85rem;color:var(--muted);margin-top:8px;padding:10px 14px;background:var(--surface-2);border-radius:8px;line-height:1.5}.af-openqs{text-align:left;margin-top:8px}.af-openqs-h{font-size:.78rem;font-weight:700;color:var(--muted);margin-bottom:12px}.af-openq{background:color-mix(in srgb,var(--af-lav) 7%,transparent);border-radius:14px;padding:16px 20px;border-left:4px solid var(--af-lav);margin-top:10px}.af-openq-n{font-size:.72rem;font-weight:700;color:var(--af-lav);margin:0 0 4px}.af-openq-t{font-family:var(--font-display);font-size:1rem;font-weight:700;line-height:1.5;margin:0}.af-final-check{width:54px;height:54px;background:var(--af-ok);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:22px;margin:0 auto 14px}.af-card.is-final p.af-lead{max-width:480px;margin:0 auto 20px}.af-fin-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:22px}.ph .ph-gap{margin-top:22px}.ph-center{text-align:center}.ph-muted{margin:0;color:var(--muted);font-size:.88rem}.ph-h3{margin:26px 0 10px;color:var(--ink);font-family:var(--font-display);font-size:1.05rem;font-weight:800}.ph-goals{margin:0;padding-left:20px;color:var(--text);font-size:.98rem;line-height:1.6}.ph-goals li+li{margin-top:4px}.ph-goals b{color:var(--ink)}.menu-wrap.ph-page{max-width:860px}.ph .ph-first-q{margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}.ph-quote{margin:14px 0 0;padding:16px 20px;border-left:4px solid var(--af-lav);border-radius:0 14px 14px 0;background:color-mix(in srgb,var(--af-lav) 8%,transparent);color:var(--text);font-family:var(--font-display);font-size:1rem;font-style:italic;line-height:1.6}.ph-quote cite{display:block;margin-top:8px;color:var(--muted);font-family:var(--font-sans);font-size:.78rem;font-style:normal;font-weight:700}.ph-story{margin:0 0 16px;padding:16px 18px;border-radius:16px;background:var(--surface-2);color:var(--text);font-size:.98rem;line-height:1.65}.ph-syms{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));grid-gap:8px;gap:8px;margin:16px 0 10px}.ph-sym{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 8px 12px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);cursor:pointer}.ph-sym:hover{border-color:var(--line-strong)}.ph-sym.is-seen{background:var(--surface-2)}.ph-sym.is-active{border-color:var(--coral);background:color-mix(in srgb,var(--coral) 8%,var(--surface))}.ph-sym-glyph{display:flex;align-items:center;min-height:40px;font-size:2rem;line-height:1}.ph-sym-name{color:var(--muted);font-size:.75rem;font-weight:700}.ph-sym-detail{display:flex;align-items:center;gap:18px;min-height:92px;padding:16px 18px;border-radius:16px;background:var(--surface-2)}.ph-sym-detail strong{color:var(--ink);font-family:var(--font-display)}.ph-sym-detail p{margin:4px 0;color:var(--text);font-size:.92rem;line-height:1.5}.ph-sym-big{flex:0 0 auto;min-width:56px;color:var(--coral-600);font-size:2.8rem;line-height:1;text-align:center}.ph-sym-hint{color:var(--muted);font-size:.78rem}.ph-twos{gap:22px;margin:6px 0 16px;font-family:var(--font-display);font-size:clamp(2.6rem,9vw,4rem);font-weight:800;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ph-mine,.ph-twos{display:flex;justify-content:center}.ph-mine{flex-wrap:wrap;align-items:center;gap:10px;font-weight:700}.ph-answers{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:8px;gap:8px}.ph-answer{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);color:var(--text);font-family:var(--font-sans);text-align:left;cursor:pointer}.ph-answer:hover{border-color:var(--line-strong)}.ph-answer.is-open{background:var(--surface-2)}.ph-answer.is-mine{border-color:var(--coral)}.ph-answer-n{color:var(--coral-600);font-family:var(--font-display);font-size:1.6rem;font-weight:800;line-height:1.1}.ph-answer-r{font-size:.85rem;line-height:1.45}.ph-answer-tap{color:var(--muted);font-size:.78rem;font-weight:600}.ph-qs{display:flex;flex-direction:column;gap:8px}.ph-q{border:1.5px solid var(--line);border-radius:16px;background:var(--surface)}.ph-q[open]{border-color:var(--af-lav)}.ph-q>summary{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;list-style:none;cursor:pointer}.ph-q>summary::-webkit-details-marker{display:none}.ph-q-mark{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:color-mix(in srgb,var(--af-lav) 16%,transparent);color:var(--af-lav);font-size:.8rem;font-weight:800}.ph-q-text{color:var(--ink);font-size:.95rem;font-weight:600;line-height:1.5}.ph-q-body{padding:0 16px 14px 52px;color:var(--text);font-size:.92rem;line-height:1.65}.ph-count{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0}.ph-count span{padding:5px 12px;border-radius:10px;font-family:var(--font-display);font-weight:800}.ph-count .is-known{background:var(--ok-soft);color:var(--ok)}.ph-count .is-lots{background:color-mix(in srgb,var(--coral) 14%,transparent);color:var(--coral-600);font-style:italic}.ph-count em,.ph-count i{color:var(--muted);font-style:normal}.ph-count em{font-size:.85rem}.ph-dino{margin-bottom:14px;padding:22px 18px;border-radius:16px;background:var(--surface-2);text-align:center}.ph-dino-emoji{display:block;margin-bottom:8px;font-size:2.6rem}.ph-dino-kicker{margin:0 0 6px;color:var(--muted);font-size:.8rem;font-weight:700}.ph-dino-q{max-width:520px;margin:0 auto;color:var(--ink);font-family:var(--font-display);font-size:1.1rem;font-weight:700;line-height:1.5}.ph-views{display:flex;flex-direction:column;gap:8px;margin-top:14px}.ph-views>div{padding:12px 16px;border-radius:14px;background:var(--surface-2);color:var(--text);font-size:.93rem;line-height:1.6}.ph-camps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;margin-bottom:8px}.ph-camp{padding:16px 18px;border:1.5px solid transparent;border-radius:16px;background:var(--surface-2)}.ph-camp h4{margin:0 0 8px;font-family:var(--font-display);font-size:1rem;font-weight:800}.ph-camp.is-realist h4{color:var(--ok)}.ph-camp.is-nominalist h4{color:var(--coral-600)}.ph-camp.is-agnostic h4{color:var(--af-lav)}.ph-camp ul{margin:0;padding-left:16px}.ph-camp li{margin-bottom:4px;color:var(--text);font-size:.88rem;line-height:1.5}.ph-camp.is-picked{border-color:var(--ink);background:var(--surface)}.ph-send{margin-top:16px}.ph-more{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;align-items:start}.ph-more-card{padding:14px 16px;border-radius:16px;background:var(--surface-2)}.ph-more-card.is-open{grid-column:1/-1}.ph-more-btn{margin-top:8px;font-size:.85rem}.ph-sym-detail.is-empty{min-height:0;padding:10px 16px;justify-content:center}.ph-ask{margin-top:4px}.ph-ask-q{margin:0 0 8px;color:var(--ink);font-weight:700;line-height:1.5}.ph-more-card>span{color:var(--coral-600);font-size:.75rem;font-weight:800}.ph-more-card>p{margin:4px 0 0;color:var(--text);font-size:.9rem;line-height:1.5}.ph-final-more{margin:4px 0 18px;text-align:left}.af-card.is-final .ph-final-more p.af-lead{max-width:none;margin:0 0 14px}.ph-final-more .ph-h3{margin-top:8px}.ph-src{margin:8px 0 0;color:var(--muted);font-size:.78rem;font-style:italic}@media (max-width:640px){.ph-camps,.ph-more{grid-template-columns:1fr}.ph-q-body{padding-left:16px}}.ph-sides{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin:4px 0 18px}.ph-side{padding:14px 16px;border-radius:16px;background:var(--surface-2)}.ph-side b{font-family:var(--font-display);font-size:1.05rem}.ph-side.is-found b{color:var(--af-navy)}.ph-side.is-made b{color:var(--coral-600)}.ph-side p{margin:6px 0 0;color:var(--text);font-size:.92rem;line-height:1.55}.ph-meter{margin:6px 0 10px}.ph-meter input[type=range]{width:100%;height:34px;margin:0;background:transparent;cursor:pointer;accent-color:var(--ink)}.ph-meter.is-untouched input[type=range]{opacity:.55}.ph-meter-ends{display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:.8rem;line-height:1.35}.ph-meter-ends span:last-child{text-align:right}.ph-meter-ends b,.ph-meter-val{color:var(--ink)}.ph-meter-val{margin:8px 0 0;font-family:var(--font-display);font-weight:800;text-align:center}.ph-check{margin-top:22px;padding:16px 18px;border:1.5px dashed var(--line-strong);border-radius:16px}.ph-check-q{margin:0 0 4px;color:var(--text);font-size:.93rem;line-height:1.55}.ph-check-tag{display:inline-block;margin-right:4px;padding:2px 8px;border-radius:999px;background:var(--ink);color:var(--surface);font-size:.72rem;font-weight:800;vertical-align:1px}.ph-think{margin:18px 0 0}.ph-think-q{margin:0 0 8px;color:var(--ink);font-weight:700;line-height:1.5}.ph-think-a{margin:10px 0 0;padding:12px 16px;border-radius:14px;background:var(--surface-2);color:var(--text);font-size:.93rem;line-height:1.6}.ph-center-row,.ph-dots-box{justify-content:center}.ph-dots-box{display:flex;margin:4px 0 12px}.ph-dots{width:100%;max-width:420px;height:auto;border-radius:16px;background:var(--surface-2)}.ph-dots circle{fill:var(--ink)}.ph-dots text{fill:var(--muted);font-family:var(--font-display);font-size:15px;font-weight:700}.ph-dots text.is-ok{fill:var(--ok)}.ph-dots text.is-miss{fill:var(--coral-600)}.ph-dot-btns{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:6px;gap:6px;max-width:420px;margin:0 auto}.ph-dot-btn{min-height:44px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font-family:var(--font-display);font-size:1.05rem;font-weight:800;cursor:pointer}.ph-dot-btn:hover{border-color:var(--ink)}.ph-dots-sum{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin-bottom:14px}.ph-dots-sum>div{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border-radius:16px;background:var(--surface-2);color:var(--muted);font-size:.85rem}.ph-dots-sum-n{color:var(--ink);font-family:var(--font-display);font-size:1.5rem;font-weight:800}.ph-maya-num{display:block;fill:var(--ink)}.ph-maya-ex{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:8px;gap:8px;margin:6px 0 16px}.ph-maya-card{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px;min-height:96px;padding:12px 6px 10px;border-radius:14px;background:var(--surface-2)}.ph-maya-card span{color:var(--coral-600);font-family:var(--font-display);font-weight:800}.ph-maya-build{padding:16px;border:1.5px solid var(--line);border-radius:16px}.ph-maya-task{margin:0 0 10px;color:var(--text);text-align:center}.ph-maya-task b{color:var(--ink);font-family:var(--font-display);font-size:1.3rem}.ph-maya-slate{align-items:center;min-height:92px;margin-bottom:12px;border-radius:12px;background:var(--surface-2)}.ph-maya-slate,.ph-maya-tools{display:flex;justify-content:center}.ph-maya-tools{flex-wrap:wrap;gap:8px}.ph-maya-msg{margin:10px 0 0;color:var(--coral-600);font-size:.9rem;font-weight:600;text-align:center}.ph-maya-msg.is-ok{color:var(--ok)}.ph-tens{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:6px;gap:6px;margin:4px 0}.ph-ten{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;padding:10px 4px 8px;border-radius:12px;background:var(--surface-2)}.ph-ten b{color:var(--ink);font-size:1.5rem;line-height:1}.ph-ten span{color:var(--muted);font-size:.7rem;font-weight:700}.ph-cic-pick{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 10px}.ph-cic-btn{padding:8px 14px;border:1.5px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-size:.88rem;font-weight:700;cursor:pointer}.ph-cic-btn.is-on{border-color:var(--ink);background:var(--ink);color:var(--surface)}.ph-cic{display:flex;flex-direction:column;gap:4px}.ph-cic-row{display:flex;justify-content:space-between;gap:12px;padding:8px 14px;border-radius:10px;background:var(--ok-soft);color:var(--text);font-size:.9rem}.ph-cic-row b{color:var(--ok)}.ph-cic-row.is-bad{background:color-mix(in srgb,var(--coral) 12%,transparent)}.ph-cic-row.is-bad b{color:var(--coral-600)}.ph-cic-total{margin:10px 0 0;color:var(--text);font-size:.95rem}.ph-human{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.ph-human-card{padding:14px 16px;border-radius:16px;background:var(--surface-2)}.ph-human-tag{color:var(--coral-600);font-size:.75rem;font-weight:800}.ph-human-card p{margin:6px 0 0;color:var(--text);font-size:.92rem;line-height:1.55}.ph-opp{margin:14px 0;padding:14px 18px;border-left:4px solid var(--af-lav);border-radius:0 14px 14px 0;background:color-mix(in srgb,var(--af-lav) 9%,transparent)}.ph-opp-who{color:var(--af-lav);font-size:.8rem;font-weight:800}.ph-opp p{margin:6px 0 0;color:var(--ink);font-size:.97rem;line-height:1.6}.ph-traj{margin:4px 0 16px;padding:14px 16px;border-radius:16px;background:var(--surface-2)}.ph-traj-ends{display:flex;justify-content:space-between;margin-left:128px;color:var(--muted);font-size:.75rem;font-weight:700}.ph-traj-row{display:flex;align-items:center;gap:12px;min-height:30px}.ph-traj-label{flex:0 0 116px;color:var(--text);font-size:.82rem}.ph-traj-track{position:relative;flex:1 1;height:4px;border-radius:2px;background:var(--line)}.ph-traj-track i{position:absolute;top:50%;width:14px;height:14px;border-radius:50%;background:var(--coral);transform:translate(-50%,-50%)}.ph-traj-row:last-child .ph-traj-track i{background:var(--ink);width:18px;height:18px}@media (max-width:640px){.ph-human,.ph-sides{grid-template-columns:1fr}.ph-maya-ex{grid-template-columns:repeat(3,minmax(0,1fr))}.ph-tens{grid-template-columns:repeat(4,minmax(0,1fr))}.ph-traj-ends{margin-left:0}.ph-traj-row{flex-wrap:wrap;gap:2px 12px}.ph-traj-label{flex-basis:100%}}.tb-picker{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0 14px}.tb-picker>span{margin-right:4px;color:var(--muted);font-size:.85rem;font-weight:700}.tb-chip{min-width:38px;padding:7px 10px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font-family:var(--font-display);font-weight:800;cursor:pointer}.tb-chip:hover{border-color:var(--line-strong)}.tb-chip.is-on{border-color:var(--ink);background:var(--ink);color:var(--bg)}.tb-boxes{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.tb-box{display:inline-flex;align-items:center;justify-content:center;width:58px;height:44px;border:1.5px solid var(--af-gold);border-radius:10px;background:color-mix(in srgb,var(--af-gold) 10%,var(--surface));color:var(--af-gold);font-family:var(--font-display);font-weight:800}.tb-stage{margin:0 0 18px}.tb-stage-h{display:flex;align-items:center;gap:10px;margin:0 0 8px;color:var(--ink);font-weight:800}.tb-stage-h>span{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--coral);color:#fff;font-size:.85rem}.tb-stage-hint{margin:-2px 0 10px 36px;color:var(--muted);font-size:.88rem;line-height:1.5}.tb-stage .tb-answer,.tb-stage .tb-boxes,.tb-stage .tb-picker,.tb-stage .tb-toggle{margin-left:36px}.tb-answer{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.tb-chip.is-table.is-known{border-color:var(--ok);background:var(--ok);color:#fff}.tb-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin:6px 0 0}.tb-compare>div{padding:14px 16px;border-radius:16px;background:var(--surface-2)}.tb-compare>div.is-memory{background:var(--ok-soft)}.tb-compare span{color:var(--muted);font-size:.78rem;font-weight:700}.tb-compare p{margin:6px 0 0;color:var(--text);font-family:var(--font-display);font-size:1rem;line-height:1.5;word-break:break-word}.tb-compare b{color:var(--ink);font-size:1.2rem}.tb-toggle{display:inline-flex;align-items:center;gap:10px;padding:9px 16px 9px 10px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font-family:var(--font-sans);font-size:.92rem;font-weight:700;cursor:pointer}.tb-toggle-dot{position:relative;width:34px;height:20px;border-radius:10px;background:var(--line-strong);transition:background .15s}.tb-toggle-dot:after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .15s}.tb-toggle.is-on{border-color:var(--ok)}.tb-toggle.is-on .tb-toggle-dot{background:var(--ok)}.tb-toggle.is-on .tb-toggle-dot:after{transform:translateX(14px)}.tb-counter{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:4px 0 14px;padding:14px 18px;border-radius:16px;background:color-mix(in srgb,var(--coral) 10%,var(--surface))}.tb-counter span{color:var(--muted);font-size:.85rem;font-weight:700}.tb-counter strong{color:var(--coral-600);font-family:var(--font-display);font-size:2rem;line-height:1}.tb-counter em{color:var(--text);font-size:.92rem;font-style:normal}.tb-facts{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}.tb-facts span{padding:8px 12px;border-radius:12px;background:color-mix(in srgb,var(--coral) 12%,var(--surface));color:var(--text);font-family:var(--font-display)}@media (max-width:560px){.tb-compare{grid-template-columns:1fr}.tb-stage .tb-answer,.tb-stage .tb-boxes,.tb-stage .tb-picker,.tb-stage .tb-toggle,.tb-stage-hint{margin-left:0}}.tb-grid-wrap{overflow-x:auto}.tb-grid{display:grid;grid-template-columns:repeat(11,minmax(28px,1fr));grid-gap:3px;gap:3px;min-width:330px}.tb-grid>span{display:flex;align-items:center;justify-content:center;height:30px;border-radius:6px;font-family:var(--font-display);font-size:.8rem}.tb-h{color:var(--muted);font-weight:800}.tb-cell{background:color-mix(in srgb,var(--coral) 14%,var(--surface));color:var(--ink);font-weight:700}.tb-cell.is-known{background:var(--ok-soft);color:var(--ok);font-weight:500}.tb-legend{display:flex;align-items:center;gap:6px;margin:10px 0 0;color:var(--muted);font-size:.8rem}.tb-legend i{display:inline-block;width:12px;height:12px;margin-left:8px;border-radius:3px;background:color-mix(in srgb,var(--coral) 14%,var(--surface))}.tb-legend i:first-child{margin-left:0}.tb-legend i.is-known{background:var(--ok-soft);border:1px solid var(--ok)}.tb-list{margin:0 0 14px;padding-left:20px;color:var(--text);line-height:1.7}.tb-cell.is-slow{background:color-mix(in srgb,var(--af-gold) 18%,var(--surface));color:var(--af-gold)}.tb-cell.is-none{background:var(--surface-2);color:var(--muted);font-weight:500}.tb-legend{flex-wrap:wrap;row-gap:6px}.tb-legend i.is-slow{background:color-mix(in srgb,var(--af-gold) 18%,var(--surface));border:1px solid var(--af-gold)}.tb-legend i.is-none{background:var(--surface-2);border:1px solid var(--line)}.tb-boxes.is-hidden{visibility:hidden}.tb-race{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.tb-race-lane{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border-radius:16px;background:var(--surface-2)}.tb-race-lane.is-knower.is-done{background:var(--ok-soft)}.tb-race-who{color:var(--muted);font-size:.78rem;font-weight:700}.tb-race-time{color:var(--ink);font-family:var(--font-display);font-size:1.6rem;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1}.tb-race-said{color:var(--ok);font-family:var(--font-display);font-size:1.3rem}.tb-race-res{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin-bottom:10px}.tb-race-res>div{display:flex;flex-direction:column;gap:2px;padding:12px 16px;border-radius:16px;background:var(--surface-2)}.tb-race-res>div.is-memory{background:var(--ok-soft)}.tb-race-res span{color:var(--muted);font-size:.78rem;font-weight:700}.tb-race-res b{color:var(--ink);font-family:var(--font-display);font-size:1.5rem}.tb-quiz{display:flex;flex-direction:column;align-items:center;padding:6px 0}.tb-quiz-n{margin:0 0 8px;color:var(--muted);font-size:.82rem;font-weight:700;text-align:center}.tb-quiz-q{display:flex;align-items:center;gap:12px;color:var(--ink);font-family:var(--font-display);font-size:clamp(2rem,8vw,2.8rem);font-weight:800}.tb-quiz-in.af-num{width:2.6em;font-size:inherit;padding:4px}.tb-quiz-fb{min-height:1.5em;margin:10px 0 0;color:var(--muted);font-weight:700;text-align:center}.tb-quiz-fb.is-ok{color:var(--ok)}.tb-quiz-fb.is-err{color:var(--coral-600)}.tb-quiz-stop{margin-top:12px;font-size:.85rem}.tb-trick{margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--line)}.tb-trick .ph-h3{margin-top:4px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.tb-cover{padding:2px 10px;border-radius:var(--pill);background:var(--ok-soft);color:var(--ok);font-family:var(--font-sans);font-size:.75rem;font-weight:700}.tb-chain{padding:12px 16px;border-radius:14px;background:var(--surface-2)}.tb-chain-t{margin:0 0 8px;color:var(--ink);font-family:var(--font-display);font-weight:800}.tb-chain-steps{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}.tb-chain-step{display:inline-flex;align-items:center;gap:8px;margin:0;color:var(--text);font-size:.9rem;font-weight:600;letter-spacing:normal;text-transform:none}.tb-chain-ok{color:var(--ok);font-size:1.3rem;font-weight:800}.tb-hands{padding:14px 12px;border-radius:14px;background:var(--surface-2)}.tb-fingers{gap:4px}.tb-finger,.tb-fingers{display:flex;justify-content:center;align-items:flex-end}.tb-finger{width:30px;height:74px;padding:0 0 6px;border:1.5px solid var(--line-strong);border-radius:15px 15px 8px 8px;background:var(--surface);color:var(--muted);font-size:.75rem;font-weight:800;cursor:pointer;transition:height .15s}.tb-finger:first-child,.tb-finger:nth-child(10){height:52px}.tb-finger:nth-child(2),.tb-finger:nth-child(9){height:66px}.tb-finger:nth-child(4),.tb-finger:nth-child(7){height:70px}.tb-finger.is-gap{margin-left:16px}.tb-finger.is-bent{height:28px;border-color:var(--ink);background:var(--ink);color:var(--surface)}.tb-finger.is-left{border-color:var(--af-navy);background:color-mix(in srgb,var(--af-navy) 16%,var(--surface));color:var(--af-navy)}.tb-finger.is-right{border-color:var(--coral);background:color-mix(in srgb,var(--coral) 14%,var(--surface));color:var(--coral-600)}.tb-hands-out{margin:12px 0 0;color:var(--text);text-align:center}.tb-hands-out b{color:var(--ink);font-family:var(--font-display);font-size:1.1rem}.tb-hands-out b.is-l{color:var(--af-navy)}.tb-hands-out b.is-r{color:var(--coral-600)}.tb-train-bar{height:8px;border-radius:4px;background:var(--surface-2);overflow:hidden}.tb-train-bar i{display:block;height:100%;border-radius:4px;background:var(--ok);transition:width .3s}.tb-train-bar+.tb-quiz-n{margin-top:6px}.tb-streak{display:flex;gap:6px;margin-top:10px}.tb-streak i{width:10px;height:10px;border-radius:50%;background:var(--line)}.tb-streak i.is-on{background:var(--ok)}@media (max-width:560px){.tb-race,.tb-race-res{grid-template-columns:1fr}.tb-finger{width:26px}.tb-finger.is-gap{margin-left:10px}}.af-intro p.af-intro-src{font-size:.82rem;font-style:italic}.fr-chip{display:inline-block;margin-bottom:12px;padding:4px 12px;border-radius:var(--pill);font-size:.75rem;font-weight:700;color:#fff;background:var(--af-terra)}.fr-chip.is-theory{background:var(--af-navy)}.fr-chip.is-practice{background:var(--af-ok)}.fr-chip.is-check{background:var(--af-lav)}.fr-hero-title{font-family:var(--font-display);font-size:clamp(1.7rem,6vw,2.4rem);font-weight:800;line-height:1.1;margin:0 0 18px}.fr-hero-title em{font-style:italic;color:inherit}.fr-hero-lead{max-width:560px}.fr-gap{margin-top:26px}.fr-accent{color:var(--af-terra);font-family:var(--font-display)}.fr-accent.is-b{color:var(--af-navy)}.fr-muted{color:var(--muted);font-weight:500;font-size:.85em}.fr-center{display:flex;flex-direction:column;align-items:center;gap:10px;margin:16px 0 6px}.fr-count{margin:0;text-align:center;color:var(--muted);font-size:.9rem}.fr-count b{color:var(--ink);font-family:var(--font-display)}.fr-help{margin:0;max-width:460px;text-align:center;color:var(--muted);font-size:.85rem;line-height:1.5}.fr-fb{min-height:0}.fr-reroll{padding:6px 12px;border:1.5px solid var(--line);border-radius:var(--pill);background:none;color:var(--muted);font-family:var(--font-sans);font-size:.82rem;font-weight:700;cursor:pointer}.fr-reroll:hover{border-color:var(--line-strong);color:var(--ink)}.fr-grid{display:grid;width:100%;grid-gap:3px;gap:3px;padding:3px;border-radius:12px;background:var(--line-strong);overflow:hidden}.fr-grid>*{display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;padding:0;border:0;border-radius:4px;background:var(--surface);transition:background .12s,transform .08s}.fr-grid.is-live>button{cursor:pointer}.fr-grid.is-live>button:hover{filter:brightness(.94)}.fr-grid.is-live>button:active{transform:scale(.94)}.fr-grid-mark{color:#fff;font-weight:800;font-size:1.1rem;text-shadow:0 1px 3px rgba(0,0,0,.35)}.fr-strip{display:grid;grid-gap:2px;gap:2px;padding:2px;border-radius:10px;background:var(--line-strong);overflow:hidden}.fr-strip>span{border-radius:3px;background:var(--surface)}.fr-pie{display:block;flex:0 0 auto}.fr-pizza{position:relative}.fr-frac,.fr-pizza{display:inline-flex}.fr-frac{flex-direction:column;align-items:center;font-family:var(--font-display);font-weight:800;line-height:1}.fr-frac-n{color:var(--af-terra);font-size:1.6rem}.fr-frac-d{color:var(--af-navy);font-size:1.6rem}.fr-frac-bar{width:38px;height:3px;margin:5px 0;border-radius:2px;background:var(--ink)}.fr-frac.is-lg .fr-frac-d,.fr-frac.is-lg .fr-frac-n{font-size:2.4rem}.fr-frac.is-lg .fr-frac-bar{width:52px;height:4px}.fr-frac-note{margin-top:8px;color:var(--muted);font-family:var(--font-sans);font-size:.82rem;font-weight:600}.fr-visual{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:18px 22px;margin:16px 0;padding:20px;border-radius:16px;background:var(--surface-2)}.fr-piefrac{display:inline-flex;flex-direction:column;align-items:center;gap:10px}.fr-piefrac,.fr-sign{font-family:var(--font-display)}.fr-sign{font-size:1.8rem;font-weight:800;color:var(--ink)}.fr-sign.is-sm{font-size:1.1rem;color:var(--muted)}.fr-shapes{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin:14px 0}.fr-shapes>div{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--muted);font-size:.82rem}.fr-shape{display:block;width:90px;height:90px;border:2.5px solid var(--ink);border-radius:10px;overflow:hidden}.fr-shape .fr-grid{height:100%;padding:0;gap:0;border-radius:0;background:var(--surface)}.fr-shape .fr-grid>span{border-radius:0}.fr-bridge{display:flex;flex-direction:column;align-items:center;margin:16px 0;padding:22px 20px 16px;border-radius:16px;background:var(--surface-2)}.fr-bridge-arrow{margin:12px 0 30px;color:var(--muted);font-size:.85rem;font-style:italic}.fr-bridge-line{position:relative;width:100%;max-width:320px;height:4px;margin:34px 0 42px;border-radius:2px;background:var(--ink)}.fr-bridge-cap{max-width:400px;margin:0;text-align:center;color:var(--muted);font-size:.9rem;line-height:1.6}.fr-pair{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:center;gap:22px 32px;margin:16px 0 8px}.fr-pair-item{display:flex;flex:0 1 220px;flex-direction:column;align-items:center;gap:10px;min-width:0}.fr-pan-label{font-family:var(--font-display);font-size:.9rem;font-weight:800;color:var(--muted)}.fr-legends{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 22px}.fr-legend{display:inline-flex;align-items:center;gap:6px;font-size:.92rem}.fr-legend b{font-family:var(--font-display)}.fr-legend i{display:inline-block;width:12px;height:12px;border-radius:3px}.fr-slider-frac{font-family:var(--font-display);font-size:1.3rem}.fr-slider{width:100%;max-width:180px;align-items:center}.fr-choice{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:12px 0 4px}.fr-choice-btn{min-width:60px;font-family:var(--font-display);font-size:1.2rem}.fr-choice-btn.is-wide{min-width:120px;font-family:var(--font-sans);font-size:.9rem}.fr-choice-btn:disabled:not(.is-correct):not(.is-wrong){opacity:.45}.fr-nv{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));grid-gap:10px;gap:10px;margin:16px 0}.fr-nv-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 6px;border:2px solid var(--line);border-radius:12px;background:var(--surface-2);color:var(--ink);cursor:pointer}.fr-nv-card:hover{border-color:var(--line-strong)}.fr-nv-num{font-family:var(--font-display);font-size:1.2rem;font-weight:800}.fr-nv-dots{display:flex;flex-wrap:wrap;justify-content:center;gap:3px;max-width:54px}.fr-nv-dots i{width:6px;height:6px;border-radius:50%;background:var(--muted)}.fr-nv-card.is-chosen{border-color:var(--af-navy);background:color-mix(in srgb,var(--af-navy) 12%,transparent)}.fr-nv-card.is-yes{border-color:var(--ok);background:var(--ok-soft)}.fr-nv-card.is-missed{border-color:var(--ok);border-style:dashed}.fr-nv-card.is-no{border-color:var(--danger);background:var(--danger-soft)}.fr-nl{margin:10px 0 4px}.fr-nl-row{display:flex;align-items:center;gap:12px}.fr-nl-label{flex:0 0 26px;font-family:var(--font-display);font-weight:800;color:var(--muted);text-align:right}.fr-nl-line{position:relative;flex:1 1;height:90px;margin:22px 14px 0;cursor:pointer}.fr-nl-axis{position:absolute;left:0;right:0;top:50%;height:4px;margin-top:-2px;border-radius:2px;background:var(--ink)}.fr-nl-line.is-target .fr-nl-axis{background:var(--af-terra);box-shadow:0 0 0 4px color-mix(in srgb,var(--af-terra) 20%,transparent)}.fr-nl-tick{position:absolute;top:50%;width:2px;height:14px;margin-top:-7px;transform:translateX(-50%);background:var(--muted);opacity:.6}.fr-nl-tick.is-major{height:20px;margin-top:-10px;background:var(--ink);opacity:1}.fr-nl-num{position:absolute;top:calc(50% + 14px);transform:translateX(-50%);font-family:var(--font-display);font-size:.9rem;font-weight:800}.fr-bridge-line .fr-nl-tick{top:2px}.fr-bridge-line .fr-nl-num{top:16px}.fr-nl-marker{bottom:calc(50% + 12px);padding:4px 8px;border-radius:10px;background:var(--af-navy);color:#fff;font-family:var(--font-display);font-size:.82rem;font-weight:800;white-space:nowrap;pointer-events:none}.fr-nl-marker,.fr-nl-marker:after{position:absolute;transform:translateX(-50%)}.fr-nl-marker:after{content:"";left:50%;top:100%;width:2px;height:calc(10px + var(--lift, 0px));background:inherit}.fr-bridge-line .fr-nl-marker{bottom:16px}.fr-nl-marker.is-ok{background:var(--af-ok)}.fr-nl-marker.is-fixed{background:var(--af-navy)}.fr-nl-marker.is-miss{background:var(--af-terra)}.fr-nl-tokens{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px}.fr-token{padding:9px 16px;border:2px solid var(--af-terra);border-radius:12px;background:var(--af-terra);color:#fff;font-family:var(--font-display);font-size:1rem;font-weight:800;cursor:-webkit-grab;cursor:grab}.fr-token.is-active{background:var(--surface);color:var(--af-terra);box-shadow:0 0 0 4px color-mix(in srgb,var(--af-terra) 22%,transparent)}.fr-token.is-placed{opacity:.3;cursor:default}.fr-nl-help{margin:10px 0 0;text-align:center;color:var(--muted);font-size:.82rem}.fr-answer{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin:14px 0 4px;font-weight:700}.fr-answer b{font-size:1.3rem}.fr-answer b,.fr-calc{font-family:var(--font-display)}.fr-calc{margin:10px 0 16px;text-align:center;font-size:clamp(1.5rem,6vw,2rem);font-weight:800}.fr-calc-opts{max-width:420px;margin:0 auto}@media (max-width:520px){.af-card{padding:20px 18px;border-radius:16px}.af-explorer{flex-direction:column}.af-topic-card{flex-wrap:wrap}.af-topic-check{margin-left:0}}.stp-root{margin-top:18px}.stp-view-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0 20px}.stp-count{margin-left:auto;color:var(--muted);font-size:.88rem}.stp-photo{display:flex;align-items:center;justify-content:center;border-radius:50%;object-fit:cover;flex:0 0 auto;background:var(--surface-2)}.stp-photo-fallback{font-family:var(--font-sans);font-weight:700;color:var(--muted);font-size:.9em}.stp-grid{display:grid;grid-gap:14px;gap:14px}.stp-grid-3{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.stp-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:18px 14px;border:1.5px solid var(--line);border-radius:20px;background:var(--surface);cursor:pointer;text-align:center}.stp-card:hover{border-color:var(--line-strong)}.stp-card-name{font-family:var(--font-sans);font-weight:700;color:var(--ink);font-size:.95rem}.stp-card-klass{color:var(--muted);font-size:.82rem}.crt-list{display:flex;flex-direction:column;gap:10px;padding:0;margin:0;list-style:none}.crt-row{display:flex;align-items:center;gap:14px;padding:12px 16px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface)}.crt-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}.crt-name{font-family:var(--font-sans);font-weight:700;color:var(--ink);font-size:.95rem}.stp-table-wrap{overflow-x:auto;border:1.5px solid var(--line);border-radius:18px}.stp-table{width:100%;border-collapse:collapse}.stp-table th{text-align:left;padding:10px 16px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-bottom:1.5px solid var(--line)}.stp-table td{padding:8px 16px;border-bottom:1px solid var(--line);vertical-align:middle}.stp-table tr:last-child td{border-bottom:0}.stp-table tr{cursor:pointer}.stp-table tr:hover td{background:var(--surface-2)}.att-table tr{cursor:default}.att-table tr:hover td{background:none}.att-table tbody tr:hover td{background:color-mix(in srgb,var(--ink) 3%,var(--surface))}.att-name{white-space:nowrap;font-weight:600}.att-table th{text-align:center;white-space:nowrap}.att-cell{padding:6px!important;min-width:96px;vertical-align:middle!important}.att-cell-inner{display:flex;flex-direction:column;align-items:stretch;gap:5px}.att-manual{border:none;border-radius:0;padding:3px 4px;font-family:var(--font-sans);font-size:.68rem;text-align:center;background:var(--surface);color:var(--ink);cursor:pointer}.att-manual:disabled{opacity:.5}.att-periods{display:flex;flex-direction:column;border-left:1px solid var(--line);height:100%}.att-period{flex:1 1;min-height:9px;display:flex;align-items:center;justify-content:center;font-size:.58rem;font-weight:700;line-height:1.1}.att-period+.att-period{border-top:1px solid var(--surface)}.att-periods-h{flex-direction:row;height:26px;min-width:90px;border-left:none}.att-periods-h .att-period+.att-period{border-top:none;border-left:1px solid var(--surface)}.att-tone-empty{color:var(--muted)}.att-tone-good{background:color-mix(in srgb,var(--ok) 24%,var(--surface));color:var(--ok)}.att-tone-bad{background:color-mix(in srgb,var(--danger) 22%,var(--surface));color:var(--danger)}.att-tone-warn{background:var(--warn-soft);color:var(--warn-ink)}.att-tone-neutral{background:color-mix(in srgb,#6b7280 26%,var(--surface));color:var(--muted)}.att-tone-purple{background:color-mix(in srgb,#8b5cf6 26%,var(--surface));color:#8b5cf6}.att-tone-blue{background:color-mix(in srgb,#3b82f6 26%,var(--surface));color:#3b82f6}.att-tone-teal{background:color-mix(in srgb,#14b8a6 24%,var(--surface));color:#0d9488}:root[data-theme=dark] .att-tone-teal{color:#5eead4}.att-auto{display:flex;align-items:center;justify-content:center;text-align:center;padding:3px 4px;font-size:.64rem;font-weight:700;line-height:1.15}.att-auto.att-tone-empty{background:transparent;color:var(--muted)}.att-leave-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--muted);font-family:var(--font-sans);font-size:.76rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:color .12s ease,border-color .12s ease,background .12s ease}.att-leave-btn:before{content:"×";font-size:1rem;line-height:1}.att-leave-btn:hover:not(:disabled){border-color:color-mix(in srgb,var(--danger) 45%,transparent);background:color-mix(in srgb,var(--danger) 8%,var(--surface));color:var(--danger)}.att-leave-btn:disabled{opacity:.5;cursor:default}.att-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.att-fb-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font-family:var(--font-sans);font-size:.76rem;font-weight:700;white-space:nowrap;cursor:pointer;transition:border-color .12s ease,background .12s ease}.att-fb-btn:hover{border-color:var(--ink)}.att-fb-btn.is-done{border-color:color-mix(in srgb,var(--ok,#2e9e5b) 45%,transparent);background:color-mix(in srgb,var(--ok,#2e9e5b) 10%,var(--surface))}.att-fb-n{min-width:18px;padding:1px 5px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.68rem;text-align:center}.att-fb-modal{max-width:560px}.att-fb-others{display:grid;grid-gap:8px;gap:8px;margin-bottom:4px}.att-fb-other{padding:10px 12px;border-radius:12px;background:var(--surface-2)}.att-fb-other small{color:var(--muted);font-size:.76rem;font-weight:700}.att-fb-other p{margin:4px 0 0;color:var(--ink);font-size:.9rem;line-height:1.45;white-space:pre-wrap}.lr-btn.att-fb-del{margin-right:auto;color:var(--danger)}.att-name{display:flex;align-items:center;flex-wrap:wrap;gap:4px 6px}td.att-name{display:table-cell}.att-name>span:first-child{white-space:nowrap}.att-klass{color:var(--muted);font-size:.72rem;font-weight:500}.att-badge-sm{padding:1px 6px!important;font-size:.58rem!important}.att-space{text-transform:lowercase;font-weight:700}.att-space.is-school{color:var(--ink);opacity:.6}.att-space.is-skvo{color:#7b4fd1;opacity:.7}.att-space.is-chosen{opacity:1}.att-space.is-unset{color:var(--danger)}.att-dot.is-clash{box-shadow:0 0 0 2px var(--danger)}.att-th-name{display:flex;align-items:center;gap:6px;text-transform:none}.att-sort{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding:5px 26px 5px 10px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23888' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 10px center;color:var(--ink);font-family:var(--font-sans);font-size:.74rem;font-weight:700;text-transform:none;letter-spacing:normal;cursor:pointer}.att-sort:hover{border-color:var(--line-strong)}.att-summary{padding:4px 10px!important;text-align:center}.att-th-date{display:flex;flex-direction:column;align-items:center;gap:3px;text-transform:none}.att-th-date-off{text-decoration:line-through;color:var(--muted)}.att-happened-toggle{display:inline-flex;align-items:center;gap:3px;border:1px solid var(--line);border-radius:6px;padding:1px 5px;font-size:.6rem;font-weight:500;background:var(--surface);color:var(--muted);cursor:pointer;white-space:nowrap}.att-happened-toggle input{margin:0;cursor:pointer}.att-happened-toggle.is-off{border-color:var(--danger);color:var(--danger)}.att-cell-off{background:repeating-linear-gradient(45deg,var(--surface-2),var(--surface-2) 4px,var(--surface) 4px,var(--surface) 8px)}.att-sum-chip{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;border-radius:6px;font-size:.66rem;font-weight:700;padding:0 4px}.att-legend{display:flex;flex-wrap:wrap;gap:10px 16px;margin-bottom:14px;padding:8px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.att-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:.76rem;color:var(--muted)}.att-legend-dot{flex:0 0 auto;width:12px;height:12px;border-radius:50%}.att-legend-dot.att-tone-empty{border:1px dashed var(--line)}.att-toolbar{justify-content:space-between;gap:12px 20px;margin-bottom:16px}.att-range,.att-toolbar{display:flex;flex-wrap:wrap;align-items:center}.att-range{gap:8px 12px}.att-seg{display:inline-flex;padding:4px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--seg-bg)}.att-seg button{padding:8px 16px;border:0;border-radius:var(--pill);background:none;color:var(--muted);font-family:var(--font-sans);font-size:.88rem;font-weight:700;cursor:pointer}.att-seg button.is-on{background:var(--ink);color:var(--bg)}.att-range-label{color:var(--muted);font-size:.88rem;font-weight:600}.att-legend{flex-direction:column;align-items:stretch;gap:6px;padding:10px 14px;border:0;border-radius:16px}.att-legend-items{display:flex;flex-wrap:wrap;gap:8px 16px}.att-legend-note{margin:0;color:var(--muted);font-size:.78rem;line-height:1.45}.att-table-wrap{background:var(--surface)}.att-table th{padding:10px 6px!important;vertical-align:bottom}.att-col-name{position:-webkit-sticky;position:sticky;left:0;z-index:1;background:var(--surface);box-shadow:1px 0 0 var(--line)}.att-table td.att-col-name{padding:8px 14px!important}.att-table th.att-col-name{padding-left:14px!important}.att-date{display:inline-flex;flex-direction:column;align-items:center;gap:1px;padding:4px 8px;border-radius:10px;text-transform:none;letter-spacing:0}.att-date span{font-size:.72rem;font-weight:700}.att-date b{color:var(--ink);font-size:.85rem}.att-date em{color:var(--ok);font-size:.65rem;font-style:normal;font-weight:700}.att-date.is-today{background:color-mix(in srgb,var(--ok) 14%,transparent)}.att-date.is-today em{color:var(--ok)}.att-date-pick{padding:0;border:1.5px solid transparent;border-radius:12px;background:none;color:inherit;font:inherit;cursor:pointer}.att-date-pick:hover{border-color:var(--line)}.att-date-pick.is-picked{border-color:var(--ink)}.att-spacebar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0 0 14px}.att-spacebar-day{color:var(--ink);font-size:.9rem;font-weight:700}.att-spacebar .ind-chip{padding:7px 14px;font-size:.86rem}.att-spacebar-hint{color:var(--muted);font-size:.8rem}.att-picker{position:relative}.att-pill{display:flex;align-items:center;justify-content:center;width:100%;min-height:30px;padding:4px 6px;border:1.5px solid transparent;border-radius:10px;font-family:var(--font-sans);font-size:.74rem;font-weight:700;line-height:1.15;text-align:center;white-space:nowrap}button.att-pill{cursor:pointer}button.att-pill:hover{filter:brightness(.96)}button.att-pill:focus-visible{outline:2px solid var(--ink);outline-offset:1px}.att-pill.att-tone-empty{background:var(--surface-2);color:var(--muted);font-size:.95rem;font-weight:600}button.att-pill.att-tone-empty:hover{border-color:var(--line-strong);color:var(--ink);filter:none}.att-pill.is-busy{opacity:.5}.att-menu{position:fixed;z-index:60;display:flex;flex-direction:column;width:220px;padding:6px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-lg)}.att-menu-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border:0;border-radius:10px;background:none;color:var(--text);font-family:var(--font-sans);font-size:.86rem;text-align:left;cursor:pointer;white-space:nowrap}.att-menu-item.is-on,.att-menu-item:hover{background:var(--surface-2)}.att-menu-item.is-on{font-weight:700}.att-menu-clear{margin-top:4px;padding:8px 10px 4px;border:0;border-top:1.5px solid var(--line);background:none;color:var(--muted);font-family:var(--font-sans);font-size:.82rem;font-weight:700;text-align:left;cursor:pointer}.att-menu-clear:hover{color:var(--danger)}.att-hint{display:block;min-height:14px;color:var(--muted);font-size:.66rem;font-weight:600;line-height:14px;text-align:center;white-space:nowrap}.att-hint.is-tone{background:none!important}.att-dots{display:flex;justify-content:center;gap:4px;min-height:14px;align-items:center}.att-dot{width:9px;height:9px;border-radius:50%}.att-dot.att-tone-good{background:var(--ok)}.att-dot.att-tone-bad{background:var(--danger)}.att-dot.att-tone-warn{background:#d99a1e}.att-dot.att-tone-neutral{background:#9ca3af}.att-dot.att-tone-purple{background:#8b5cf6}.att-dot.att-tone-blue{background:#3b82f6}.att-dot.att-tone-teal{background:#0d9488}.att-dot.att-tone-empty{border:1.5px solid var(--line-strong)}.att-legend-dot.att-tone-good,.att-sum-head i.att-tone-good{background:var(--ok)}.att-legend-dot.att-tone-bad,.att-sum-head i.att-tone-bad{background:var(--danger)}.att-legend-dot.att-tone-warn,.att-sum-head i.att-tone-warn{background:#d99a1e}.att-legend-dot.att-tone-neutral{background:#9ca3af}.att-legend-dot.att-tone-purple,.att-sum-head i.att-tone-purple{background:#8b5cf6}.att-legend-dot.att-tone-blue{background:#3b82f6}.att-legend-dot.att-tone-teal,.att-sum-head i.att-tone-teal{background:#0d9488}.att-legend-dot.att-tone-empty{background:transparent;border:1.5px solid var(--line-strong)}.att-summary{vertical-align:middle!important}.att-sum{display:inline-flex;gap:4px}.att-sum-chip{min-width:26px;height:26px;border-radius:8px;font-size:.78rem}.att-sum-head{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:.66rem;font-weight:700;text-transform:none;letter-spacing:0}.att-sum-head i{display:inline-block;width:8px;height:8px;margin-left:4px;border-radius:3px}.att-sum-head i:first-child{margin-left:0}.att-stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-gap:10px;gap:10px}.att-stat-card{border-radius:14px;padding:14px 12px;text-align:center}.att-stat-num{font-size:1.6rem;font-weight:800;line-height:1.1}.att-stat-label{margin-top:4px;font-size:.72rem;opacity:.85}.att-stat-subtitle{margin:20px 0 10px;font-size:.95rem;font-weight:700}.att-slot-table{display:flex;flex-direction:column;gap:10px}.att-slot-row{padding:12px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface)}.att-slot-time{font-weight:700;font-size:.88rem;margin-bottom:8px}.att-slot-buckets{display:flex;flex-wrap:wrap;gap:8px}.att-slot-bucket{display:flex;align-items:baseline;gap:6px;padding:6px 12px;border:none;border-radius:var(--pill);cursor:pointer;font-family:var(--font-sans)}.att-slot-bucket.is-open{outline:2px solid var(--ink);outline-offset:1px}.att-slot-num{font-weight:800;font-size:1rem}.att-slot-label{font-size:.72rem;opacity:.85}.att-slot-names{margin:10px 0 0;padding:10px 0 0;border-top:1px dashed var(--line);list-style:none;display:flex;flex-wrap:wrap;gap:6px 16px}.att-slot-empty{margin:10px 0 0}.att-slot-noLesson{margin-top:18px}.att-slot-noLesson .att-slot-names{border-top:none;padding-top:10px}.stp-col-photo{width:52px}.stp-tname{display:block}.stp-tklass{display:none}@media (max-width:640px){.stp-col-klass{display:none}.stp-tklass{display:block;margin-top:2px;color:var(--muted);font-size:.8rem;line-height:1.35}.stp-table td{padding:8px 12px}.stp-table td.stp-col-photo{padding-right:0}}.stp-modal-head{display:flex;align-items:center;gap:16px;margin-right:44px}.stp-field{margin-top:18px}.stp-field-l{margin:0 0 4px;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.stp-field-v{color:var(--text);font-size:.95rem;line-height:1.5}.stp-field-v em{color:var(--muted);font-style:normal}.stp-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.stp-list a{font-weight:600}.stp-list-sub{color:var(--muted)}.stp-comment{margin:6px 0 0;white-space:pre-wrap}.portal-sched-board .menu-wrap,.portal-sched-board .topbar-inner{max-width:1800px}.dm-list{display:flex;flex-direction:column;gap:14px}.dm-photo{display:inline-block;flex:0 0 auto;border-radius:50%;object-fit:cover;background:var(--surface-2)}.dm-err{margin:6px 0 0;font-size:.82rem}.dm-cand{padding:0;overflow:hidden}.dm-cand-head{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;border:0;background:none;color:var(--ink);text-align:left;cursor:pointer;font-family:var(--font-sans)}.dm-cand-head:hover{background:var(--surface-2)}.dm-cand-name{flex:1 1;font-family:var(--font-display);font-size:1rem;font-weight:700}.dm-chev{display:inline-flex;color:var(--muted);transition:transform .15s ease}.dm-cand.is-open .dm-chev{transform:rotate(90deg)}.dm-cand-body{border-top:1.5px solid var(--line);padding:14px 16px 16px}.dm-uploader{display:flex;align-items:center;gap:12px;margin-bottom:12px}.dm-toolbar{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.dm-select{padding:3px 9px;border:1.5px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font-family:var(--font-sans);font-size:.76rem;font-weight:700}.dm-editor{min-height:120px;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:var(--input-bg);outline:none}.dm-editor:focus{border-color:var(--coral)}.dm-program{color:var(--text);line-height:1.55;font-size:.95rem}.dm-program p{margin:0 0 8px}.dm-note{margin:0;padding:10px 14px;border-radius:12px;font-size:.85rem;font-weight:600}.dm-note.is-warn{background:var(--danger-soft);border:1px solid var(--danger);color:var(--danger-ink)}.dm-state{text-align:center;padding:28px 16px}.dm-state .adm-hint{margin:6px 0 0}.dm-state-h{margin:0;font-family:var(--font-display);font-size:1.1rem;font-weight:700;color:var(--ink)}.dm-state.is-ok{background:var(--ok-soft);border-color:var(--ok)}.dm-rules{gap:8px;margin:0;padding-left:20px;color:var(--text);font-size:.9rem;line-height:1.5}.dm-ballot,.dm-rules{display:flex;flex-direction:column}.dm-ballot{gap:6px}.dm-option{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1.5px solid var(--line);border-radius:12px;cursor:pointer;font-size:.95rem;font-weight:600;letter-spacing:normal;text-transform:none;color:var(--ink);transition:border-color .12s ease,background .12s ease}.dm-option:hover{border-color:var(--line-strong)}.dm-option.is-picked{border-color:var(--ok);background:var(--ok-soft)}.dm-option input{width:18px;height:18px;accent-color:var(--ok);flex:0 0 auto}.dm-option-klass{color:var(--muted);font-weight:500}.dm-password{margin:14px 0 0}.dm-submit{width:100%;margin-top:14px;padding-top:12px;padding-bottom:12px}.dm-results{border-style:dashed}.dm-results h4{margin:14px 0 6px;font-size:.88rem;color:var(--ink)}.dm-tally{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.dm-tally li{display:flex;justify-content:space-between;gap:10px;padding:6px 10px;border-radius:8px;background:var(--surface-2);font-size:.88rem;color:var(--text)}.dm-voters{margin:0;padding-left:20px;max-height:240px;overflow-y:auto;font-size:.86rem;color:var(--text)}.fb-msg-shot img{display:block;width:96px;height:96px;margin:6px 0 2px;border-radius:12px;object-fit:cover}.sp .fb-thread{margin-bottom:16px;max-width:620px}.zoom-badge{display:inline-flex;align-items:center;flex:0 0 auto;padding:2px 8px;border-radius:var(--pill);background:#2d8cff;color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.02em;line-height:1.4}.frm-participant .zoom-badge{margin-left:auto}.dubl-badge{display:inline-flex;align-items:center;flex:0 0 auto;padding:2px 8px;border-radius:var(--pill);background:var(--coral-600);color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.02em;line-height:1.4}.frm-participant .dubl-badge{margin-left:auto}.frm-participant .zoom-badge+.dubl-badge{margin-left:6px}.clash-badge{display:inline-flex;align-items:center;flex:0 0 auto;padding:2px 8px;border-radius:var(--pill);background:var(--danger-soft);color:var(--danger);font-size:.68rem;font-weight:800;letter-spacing:.02em;line-height:1.4}.frm-participant .clash-badge,.frm-participant .dubl-badge+.clash-badge,.frm-participant .zoom-badge+.clash-badge{margin-left:6px}.sb{margin-top:18px}.sb-cycle{margin:0 0 8px;color:var(--muted);font-size:.85rem}.sb-hint{margin:16px 2px;color:var(--muted);font-size:.95rem;line-height:1.5}.sb-hint.is-ok{color:var(--ok);font-weight:600}.sb-edit-resolved{margin-left:10px;padding:6px 14px;font-size:.8rem;vertical-align:middle}.sb-scroll{overflow-x:auto;margin:0 -2px;padding:2px}.sb-grid{display:grid;grid-template-columns:44px repeat(var(--sb-cols,2),minmax(140px,1fr));grid-gap:8px;gap:8px;min-width:calc(44px + var(--sb-cols, 2) * 148px)}.sb-corner{min-height:1px}.sb-head{display:flex;flex-direction:column;gap:4px;padding:12px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface)}.sb-head.is-mine{border-color:var(--lvl-ac);background:color-mix(in srgb,var(--lvl-ac) 12%,var(--surface))}.sb-space{display:inline-flex;align-items:center;gap:8px;color:var(--ink);font-family:var(--font-sans);font-size:1rem;font-weight:700}.sb-dot{width:10px;height:10px;border-radius:50%;background:var(--lvl-ac);flex:0 0 auto}.sb-status{color:var(--muted);font-size:.8rem;font-weight:600}.sb-head.is-mine .sb-status{color:var(--lvl-tx);font-weight:700}.sb-head.is-other .sb-status{color:#2d8cff}.sb-choose{align-self:flex-start;margin-top:6px;padding:7px 14px;font-size:.8rem}.sb-time{padding-top:10px;color:var(--muted);font-size:.78rem;font-weight:700;text-align:right}.sb-cell{display:flex;flex-direction:column;gap:6px;min-height:84px}.sb-cell:empty{border:1.5px dashed var(--line);border-radius:16px}.sb-card{display:flex;flex-direction:column;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);overflow:hidden;box-shadow:var(--shadow-sm)}.sb-card.is-zoom{border-style:dashed}.sb-card.is-conflict{border-color:var(--danger);background:var(--danger-soft)}.sb-card-main,.sb-option{display:flex;flex-direction:column;gap:3px;padding:8px 10px;border:0;background:none;color:var(--ink);font-family:var(--font-sans);text-align:left;cursor:pointer}.sb-card-time{display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:var(--muted);font-size:.72rem;font-weight:700}.sb-card-title{font-size:.86rem;font-weight:700;line-height:1.25}.sb-card-teacher{color:var(--muted);font-size:.74rem}.sb-card-keep{margin:0 8px 8px;padding:6px 8px;border:0;border-radius:var(--pill);background:var(--ink);color:var(--bg);font-family:var(--font-sans);font-size:.76rem;font-weight:700;cursor:pointer}.sb-card-keep:hover{background:var(--coral-600);color:#fff}.sb-add{display:flex;flex:1 1;align-items:center;justify-content:center;gap:6px;min-height:68px;border:1.5px dashed var(--line-strong);border-radius:12px;background:none;color:var(--muted);font-family:var(--font-sans);font-size:1.1rem;font-weight:700;cursor:pointer}.sb-add span{font-size:.8rem}.sb-add:hover{border-color:var(--coral);color:var(--coral-600)}.sb-sheet{max-width:460px;max-height:80vh;overflow-y:auto}.sb-options{display:flex;flex-direction:column;gap:8px}.sb-option{border:1.5px solid var(--line);border-radius:14px;background:var(--surface)}.sb-option:hover{border-color:var(--coral)}.sb-card-drop{margin:0 8px 8px;padding:5px 8px;border:1.5px solid var(--line-strong);border-radius:var(--pill);background:none;color:var(--muted);font-family:var(--font-sans);font-size:.76rem;font-weight:700;cursor:pointer}.sb-card-drop:hover{border-color:var(--danger);color:var(--danger)}.sb-next{margin-left:10px;padding:6px 14px;font-size:.8rem;vertical-align:middle}.sb-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:8px;gap:8px;margin:0 0 14px;padding:0;list-style:none}@media (max-width:720px){.sb-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}.sb-step{display:flex;align-items:center;gap:10px;width:100%;height:100%;padding:10px 12px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);font-family:var(--font-sans);text-align:left;cursor:pointer}.sb-step:hover:not(:disabled){border-color:var(--line-strong)}.sb-step:disabled{cursor:not-allowed;opacity:.55}.sb-step.is-active{border-color:var(--ink);box-shadow:var(--shadow-sm)}.sb-step-n{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--surface-2);font-size:.85rem;font-weight:800}.sb-step.is-active .sb-step-n{background:var(--ink);color:var(--bg)}.sb-step.is-todo .sb-step-n{background:var(--danger-soft);color:var(--danger)}.sb-step.is-done .sb-step-n{background:var(--ok-soft);color:var(--ok)}.sb-step-text{display:flex;flex-direction:column;gap:2px;min-width:0}.sb-step-title{font-size:.88rem;font-weight:700;line-height:1.2}.sb-step-sub{color:var(--muted);font-size:.74rem;font-weight:600}.sb-step.is-todo .sb-step-sub{color:var(--danger)}.sb-step.is-done .sb-step-sub{color:var(--ok)}.sb-done{background:var(--ok-soft);color:var(--ok)}.sb-closed,.sb-done{margin:0 0 14px;padding:12px 14px;border-radius:14px;font-weight:600;line-height:1.45}.sb-closed{background:var(--surface-2);color:var(--text)}.stp-table td.cf-stage-ok{color:var(--ok);font-weight:600}.sb-groups{display:grid;grid-gap:12px;gap:12px}.sb-group{padding:14px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface)}.sb-group-title{margin:0 0 10px;color:var(--ink);font-weight:700}.sb-group-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:8px;gap:8px}.tc-fab{position:fixed;right:20px;bottom:20px;z-index:80;display:flex;align-items:center;justify-content:center;width:54px;height:54px;border:0;border-radius:50%;background:var(--ink);color:var(--bg);box-shadow:var(--shadow-md);cursor:pointer;transition:transform .15s ease,background .15s ease}.tc-fab:hover{transform:translateY(-2px)}.tc-fab.is-open{background:var(--surface);color:var(--ink);border:1.5px solid var(--line)}.tc-fab-badge{position:absolute;top:-3px;right:-3px;min-width:20px;height:20px;padding:0 5px;border:2px solid var(--bg);border-radius:var(--pill);background:var(--coral);color:#fff;font-size:.7rem;font-weight:800;line-height:16px;text-align:center}.tc-panel{position:fixed;right:20px;bottom:86px;z-index:80;display:flex;flex-direction:column;width:min(380px,calc(100vw - 32px));height:min(520px,calc(100vh - 150px));overflow:hidden;border:1.5px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:var(--shadow-lg)}.tc-head{padding:16px 18px 12px;border-bottom:1.5px solid var(--line)}.tc-title{margin:0;color:var(--ink);font-family:var(--font-display);font-size:1.05rem;font-weight:700}.tc-sub{margin:2px 0 0;color:var(--muted);font-size:.8rem}.tc-list{display:flex;flex:1 1;flex-direction:column;gap:10px;padding:14px 16px;overflow-y:auto}.tc-empty{margin:auto;color:var(--muted);font-size:.88rem;text-align:center}.tc-deploy{align-self:center;padding:4px 12px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.74rem;font-weight:600}.tc-compose{display:flex;gap:8px;padding:12px;border-top:1.5px solid var(--line)}.tc-compose input{flex:1 1;min-width:0;padding:11px 16px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--input-bg);color:var(--text);font-family:var(--font-sans);font-size:.92rem;outline:none}.tc-compose input:focus{border-color:var(--coral)}.tc-send{display:flex;flex:0 0 auto;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:50%;background:var(--coral);color:#fff;cursor:pointer}.tc-send:hover{background:var(--coral-600)}.tc-send:disabled{opacity:.45;cursor:default}.cp-headwrap{display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-gap:32px;gap:32px;align-items:start}.cp-headwrap-main>:last-child{margin-bottom:0}.cp-headgrid-aside{display:flex;flex-direction:column;gap:14px}.cp-headgrid-aside .cp-progress{margin:0;padding:16px 20px;gap:14px;border-radius:22px}.cp-headgrid-aside .cp-progress-pct{font-size:1.6rem}.cp-headgrid-aside{gap:12px}.cp-teacher{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border:1.5px solid var(--line);border-radius:22px;background:var(--surface)}.cp-teacher-photo{flex:0 0 auto;width:56px;height:56px;border-radius:50%;object-fit:cover;background:var(--surface-2)}.cp-teacher-text{display:flex;flex-direction:column;min-width:0}.cp-teacher-role{color:var(--muted);font-size:.75rem;font-weight:700}.cp-teacher-name{margin-top:1px;color:var(--ink);font-family:var(--font-display);font-size:1.02rem;font-weight:800;line-height:1.25}.cp-teacher-bio{margin:6px 0 0;color:var(--muted);font-size:.84rem;line-height:1.5}.cp-teacher-ask{align-self:flex-start;margin-top:12px;padding:9px 18px;font-size:.88rem;text-decoration:none}.cw-profile{padding:18px 18px 14px;border:1.5px solid var(--line);border-radius:22px;background:var(--surface)}.cw-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 2px 12px}.cw-title{margin:0;color:var(--ink);font-family:var(--font-display);font-size:1.05rem;font-weight:700}.cw-note{color:var(--muted);font-size:.76rem}.cw-items{display:flex;flex-direction:column;gap:8px}.cw-item{display:flex;gap:12px;padding:12px;border-radius:16px;background:var(--surface-2)}.cw-item-icon{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--surface);color:var(--ink)}.cw-item.is-empty .cw-item-icon{color:var(--coral-600)}.cw-item-main{flex:1 1;min-width:0}.cw-item-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:22px;margin-bottom:2px}.cw-item-label{color:var(--ink);font-size:.88rem;font-weight:700}.cw-item-act{flex:0 0 auto;padding:0;border:0;background:none;color:var(--muted);font-family:var(--font-sans);font-size:.8rem;font-weight:700;cursor:pointer}.cw-item-act:hover{color:var(--ink)}.cw-item.is-empty .cw-item-act{color:var(--coral-600)}.cw-goal{display:-webkit-box;margin:0;overflow:hidden;color:var(--text);font-size:.86rem;line-height:1.45;white-space:pre-line;-webkit-box-orient:vertical;-webkit-line-clamp:3}.cw-empty{margin:0;color:var(--muted);font-size:.82rem;line-height:1.4}.cw-test{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:2px 0 0;font-size:.86rem;color:var(--text)}.cw-test>span:first-child{color:var(--muted)}.cw-test strong{font-family:var(--font-display)}.cw-test a{color:var(--coral-600);font-weight:600}.cw-mobile{display:none}.cw-skel{height:132px;border-radius:16px;background:var(--surface-2);opacity:.7}.cw-modal{max-width:520px}.cwf{padding:4px 4px 18px}.cwf-title{margin:0 48px 8px 0;color:var(--ink);font-family:var(--font-display);font-size:1.35rem;font-weight:800;line-height:1.2}.cwf-lead{margin:0 0 18px;color:var(--muted);font-size:.92rem;line-height:1.55}.cwf-input{display:block;width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--input-bg);color:var(--text);font-family:var(--font-sans);font-size:1rem;line-height:1.5;resize:vertical;outline:none}.cwf-input:focus{border-color:var(--ink)}.cwf-input::placeholder{color:var(--muted);opacity:.8}.cwf-test{margin:0;padding:0;border:0;min-width:0}.cwf-test+.cwf-test{margin-top:20px;padding-top:20px;border-top:1.5px solid var(--line)}.cwf-test legend{padding:0;margin-bottom:10px;color:var(--ink);font-size:1rem;font-weight:800}.cwf-field{display:block}.cwf-field+.cwf-field{margin-top:12px}.cwf-field>span{display:block;margin-bottom:6px;color:var(--muted);font-size:.82rem;font-weight:600}.cwf-file{display:flex;align-items:center;gap:12px;padding:8px;border:1.5px dashed var(--line-strong);border-radius:14px;cursor:pointer}.cwf-file:hover{border-color:var(--ink)}.cwf-file input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.cwf-file:focus-within{border-color:var(--ink)}.cwf-file-btn{flex:0 0 auto;padding:8px 14px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.85rem;font-weight:700}.cwf-file-name{min-width:0;overflow:hidden;color:var(--muted);font-size:.85rem;text-overflow:ellipsis;white-space:nowrap}.cwf-file-saved{margin:8px 0 0;color:var(--muted);font-size:.82rem}.cwf-file-saved a{color:var(--ink);font-weight:600;text-underline-offset:3px}.cwf .cwf-field>span,.cwf-file>span{text-transform:none;letter-spacing:0}.cwf-file-name{font-weight:500}.cwf-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:22px}.cwf-actions .cp-btn{padding:11px 22px;font-size:.95rem}@media (max-width:860px){.cp-headwrap{display:flex;flex-direction:column;gap:0}.cp-headwrap .cp-meta{margin-top:8px;font-size:1rem}.cp-headwrap .cp-headgrid-aside{width:100%;margin-top:28px;gap:10px}.cp-headwrap .cp-headgrid-aside .cp-progress{padding:14px 18px}.cp-headwrap .cp-lead{margin-top:28px;font-size:1.1rem}.cp-teacher{padding:14px 16px}.cp-headwrap-main{display:contents}.cp-headwrap-main>.cp-meta,.cp-headwrap-main>.page-head{order:1}.cp-headwrap-main>:not(.page-head):not(.cp-meta){order:2}.cp-headgrid-aside{order:3}.cw-profile{padding:0}.cw-desktop,.cw-head{display:none}.cw-mobile .cw-items{padding:0 12px 12px}.cw-mobile{display:block}.cw-mobile>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 18px;color:var(--ink);font-weight:700;list-style:none;cursor:pointer}.cw-mobile>summary::-webkit-details-marker{display:none}.cw-summary-state{color:var(--muted);font-size:.8rem;font-weight:600}}.cp-fb-subject{align-self:stretch;min-width:0;text-align:left}.cp-fb-subject select{width:100%;min-width:0;max-width:100%;overflow:hidden;font-size:.9rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.tm-toolbar{margin-top:14px}.tm-count{margin:14px 0 16px}.ans-mode{margin-bottom:20px}.as-avatar{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;border-radius:50%;object-fit:cover}.as-avatar-fallback{background:var(--surface-2);color:var(--muted);font-weight:800}.as-card{gap:10px}.as-card-top{display:flex;align-items:center;gap:12px}.as-card-id{display:flex;flex:1 1;min-width:0;flex-direction:column;gap:2px;text-align:left}.as-card-id strong{color:var(--ink);font-family:var(--font-sans);font-size:1.02rem}.as-card-id span{color:var(--muted);font-size:.82rem}.as-card-goal{display:-webkit-box;margin:0;overflow:hidden;color:var(--text);font-size:.88rem;line-height:1.45;text-align:left;-webkit-box-orient:vertical;-webkit-line-clamp:3}.as-card-goal span{margin-right:4px;color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.as-card-goal.is-empty{color:var(--muted);font-style:italic}.as{max-width:820px}.as-back{display:inline-block;margin-bottom:18px}.as-head{display:flex;align-items:center;gap:18px;margin-bottom:32px}.as-name{margin:0;color:var(--ink);font-family:var(--font-display);font-size:clamp(1.6rem,5vw,2.2rem);font-weight:800;line-height:1.15}.as-sub{margin:6px 0 0;color:var(--muted);font-size:.95rem}.as-course{margin-bottom:36px}.as-course-title{display:flex;align-items:baseline;gap:10px;margin:0 0 14px;color:var(--ink);font-family:var(--font-display);font-size:1.25rem;font-weight:700}.as-course-title span{color:var(--muted);font-size:.95rem;font-weight:500}.as-profile{display:grid;grid-template-columns:1.3fr 1fr 1.3fr;grid-gap:1px;gap:1px;margin-bottom:16px;overflow:hidden;border:1.5px solid var(--line);border-radius:18px;background:var(--line)}.as-profile-cell{padding:14px 16px;background:var(--surface);min-width:0}.as-label{margin:0 0 6px;color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.as-label span{font-weight:600;letter-spacing:normal;text-transform:none}.as-goal{margin:0;color:var(--text);font-size:.9rem;line-height:1.5;white-space:pre-line}.as-muted{margin:0;color:var(--muted);font-size:.88rem}.as-test{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 4px;font-size:.88rem;color:var(--text)}.as-test span{color:var(--muted)}.as-test a{color:var(--coral-600);font-weight:600}.as-note textarea{width:100%;padding:8px 10px;border:1.5px solid var(--line);border-radius:10px;background:var(--input-bg);color:var(--text);font-family:var(--font-sans);font-size:.88rem;line-height:1.45;resize:vertical;outline:none}.as-note textarea:focus{border-color:var(--coral)}.as-note-actions{display:flex;align-items:center;gap:10px;margin-top:8px}.as-note-actions .cp-btn{padding:6px 14px;font-size:.82rem}.as-answers{display:flex;flex-direction:column;gap:12px}.as-answer{border:1.5px solid var(--line);border-radius:18px;background:var(--surface)}.as-answer>summary{display:flex;align-items:center;gap:12px;padding:14px 16px;list-style:none;cursor:pointer}.as-answer>summary::-webkit-details-marker{display:none}.as-answer-main{display:flex;flex:1 1;min-width:0;flex-direction:column;gap:2px}.as-answer-main strong{color:var(--ink);font-size:.96rem}.as-answer-meta{color:var(--muted);font-size:.8rem}.as-answer-badges{display:inline-flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.as-fb-state{padding:2px 10px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.74rem;font-weight:700;white-space:nowrap}.as-fb-state.is-done{background:var(--ok-soft);color:var(--ok)}.as-answer-chev{display:inline-flex;color:var(--muted);transition:transform .15s ease}.as-answer[open] .as-answer-chev{transform:rotate(180deg)}.as-answer-body{padding:0 16px 16px;border-top:1.5px solid var(--line)}.as-filters{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 18px}.ans-kind{margin-bottom:10px}.as-filter{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--muted);font-family:var(--font-sans);font-size:.85rem;font-weight:700;cursor:pointer}.as-filter span{color:var(--muted);font-weight:600;opacity:.8}.as-filter:hover{color:var(--ink);border-color:var(--line-strong)}.as-filter.is-active{border-color:var(--ink);background:var(--ink);color:var(--bg)}.as-filter.is-active span{color:var(--bg)}.as-feed{max-width:820px}.as-avatars{display:flex;align-items:center;margin:4px 0 2px}.as-avatars .as-avatar{margin-right:-8px;border:2px solid var(--surface)}.as-avatars-more{margin-left:14px;color:var(--muted);font-size:.8rem;font-weight:700}.as-course-name{margin-bottom:24px}.as-group{margin-bottom:28px}.as-group-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.as-group-id{display:flex;flex:1 1;min-width:0;flex-direction:column;gap:2px}.as-group-id strong{color:var(--ink);font-size:1.02rem}.as-group-id>span{color:var(--muted);font-size:.82rem}.as-group-goal{margin:4px 0 0;color:var(--text);font-size:.86rem;line-height:1.45}@media (max-width:640px){.as-answer>summary{flex-wrap:wrap}.as-answer-badges{justify-content:flex-start;order:3;width:100%;padding-left:0}}@media (max-width:720px){.as-profile{grid-template-columns:1fr}.as-head{gap:14px}}.as-answer.is-fb{border-color:var(--ans-fb);overflow:hidden}.as-answer.is-fb>summary{background:var(--ans-fb)}.as-answer.is-fb>summary .as-answer-chev,.as-answer.is-fb>summary .as-answer-main strong{color:#0b3550}.as-answer.is-fb>summary .as-answer-meta{color:rgba(11,53,80,.75)}.as-answer.is-fb .as-answer-body{border-top-color:var(--ans-fb)}.as-answer.is-new{border-color:var(--coral);overflow:hidden}.as-answer.is-new>summary{background:var(--coral)}.as-answer.is-new>summary .as-answer-chev,.as-answer.is-new>summary .as-answer-main strong{color:#fff}.as-answer.is-new>summary .as-answer-meta{color:hsla(0,0%,100%,.85)}.as-answer.is-new .as-answer-body{border-top-color:var(--coral)}.as-answer.is-fb>summary .as-avatar-fallback,.as-answer.is-new>summary .as-avatar-fallback{background:hsla(0,0%,100%,.35);color:inherit}.as-answer.is-new>summary .as-avatar-fallback{color:#fff}.as-answer.is-new>summary .ans-new{background:#fff;color:var(--coral-600)}.as-answer.is-new>summary .as-fb-state{background:hsla(0,0%,100%,.25);color:#fff}.as-answer.is-fb>summary .as-fb-state.is-done{background:#fff;color:#1f5f86}.ans-students .ans-new,.as .ans-new{background:var(--coral);color:#fff}.as-fb-state.is-done{background:var(--ans-fb);color:#0b3550}.as-filter.is-unread.is-active{border-color:var(--coral);background:var(--coral);color:#fff}.as-filter.is-unread.is-active span{color:#fff}.as-filter.is-fb.is-active{border-color:var(--ans-fb);background:var(--ans-fb);color:#0b3550}.as-filter.is-fb.is-active span{color:#0b3550}.ans-student.is-new{border-color:var(--coral);background:var(--coral)}.ans-student.is-new .as-card-id strong,.ans-student.is-new strong{color:#fff}.ans-student.is-new .ans-student-foot,.ans-student.is-new .ans-student-meta,.ans-student.is-new .as-avatars-more,.ans-student.is-new .as-card-goal,.ans-student.is-new .as-card-goal span,.ans-student.is-new .as-card-id span{color:hsla(0,0%,100%,.9)}.ans-student.is-new .ans-new{background:#fff;color:var(--coral-600)}.ans-student.is-new .as-avatars .as-avatar{border-color:var(--coral)}@media (min-width:900px){.home-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:24px;gap:24px;align-items:start}.home-fav-wrap .home-list,.home-groups .home-list{max-width:none}}.rg-staff-as{margin-bottom:0}.rg-staff-n{margin-left:4px;opacity:.7;font-weight:600}.ps-trigger{display:inline-flex;align-items:center;gap:8px;height:36px;min-width:220px;padding:0 8px 0 12px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--muted);font-family:var(--font-sans);font-size:.86rem;font-weight:600;cursor:pointer;transition:border-color .12s ease,color .12s ease}.ps-trigger:hover{border-color:var(--line-strong);color:var(--ink)}.ps-trigger:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.ps-trigger-text{flex:1 1;text-align:left}.ps-kbd{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border:1.5px solid var(--line);border-radius:7px;background:var(--surface-2);color:var(--muted);font-family:var(--font-sans);font-size:.72rem;font-weight:700}@media (max-width:760px){.ps-trigger{min-width:0;width:36px;padding:0;justify-content:center}.ps-trigger .ps-kbd,.ps-trigger-text{display:none}}.ps-backdrop{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-start;justify-content:center;padding:10vh 16px 16px;background:var(--overlay)}.ps-dialog{display:flex;flex-direction:column;width:100%;max-width:620px;max-height:72vh;overflow:hidden;border:1.5px solid var(--line);border-radius:22px;background:var(--surface);color:var(--text);box-shadow:var(--shadow-lg)}.ps-field{display:flex;align-items:center;gap:10px;padding:14px 14px 14px 18px;border-bottom:1.5px solid var(--line);color:var(--muted)}.ps-input{flex:1 1;min-width:0;border:0;outline:0;background:none;color:var(--ink);font-family:var(--font-sans);font-size:1.05rem;font-weight:600}.ps-input::placeholder{color:var(--muted);font-weight:500}.ps-input::-webkit-search-cancel-button{display:none}.ps-close{padding:4px 10px;border:1.5px solid var(--line);border-radius:8px;background:var(--surface-2);color:var(--muted);font-family:var(--font-sans);font-size:.72rem;font-weight:700;cursor:pointer}.ps-body{overflow-y:auto;padding:8px}.ps-state{margin:0;padding:14px 12px;color:var(--muted);font-size:.88rem;line-height:1.45}.ps-list{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none}.ps-item{display:grid;grid-template-columns:1fr auto;grid-template-areas:"title kind" "meta kind";grid-gap:2px 12px;gap:2px 12px;align-items:center;width:100%;padding:10px 12px;border:0;border-radius:14px;background:none;color:var(--ink);font-family:var(--font-sans);text-align:left;cursor:pointer}.ps-item.is-active{background:var(--surface-2)}.ps-item-title{grid-area:title;font-size:.95rem;font-weight:700;line-height:1.25}.ps-item.is-cancelled .ps-item-title{color:var(--muted);text-decoration:line-through}.ps-item-meta{grid-area:meta;overflow:hidden;font-size:.8rem;text-overflow:ellipsis}.ps-item-kind,.ps-item-meta{color:var(--muted);white-space:nowrap}.ps-item-kind{grid-area:kind;padding:3px 9px;border-radius:var(--pill);background:var(--surface-2);font-size:.7rem;font-weight:700}.ps-item.is-active .ps-item-kind{background:var(--surface)}.ps-item-kind.is-independent{color:var(--ok)}@media (max-width:560px){.ps-backdrop{padding-top:12px}.ps-dialog{max-height:calc(100dvh - 24px)}.ps-item{grid-template-areas:"title" "meta" "kind";grid-template-columns:1fr}.ps-item-kind{justify-self:start;margin-top:4px}}.hw-attach{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:10px}.hw-attach-btn{padding:8px 14px;border:1.5px dashed var(--line-strong);border-radius:var(--pill);background:var(--surface);color:var(--ink);font-family:var(--font-sans);font-size:.86rem;font-weight:700;cursor:pointer}.hw-attach-btn:hover{border-style:solid;border-color:var(--ink)}.hw-attach-hint{color:var(--muted);font-size:.8rem}.hw-files{display:flex;flex-direction:column;gap:6px;flex-basis:100%;margin:8px 0 0;padding:0;list-style:none}.hw-files li{display:flex;align-items:center;gap:10px;min-width:0;padding:8px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);font-size:.86rem}.hw-files li>span{flex:0 0 auto;color:var(--muted);font-size:.78rem}.hw-files a{color:var(--ink);text-overflow:ellipsis;text-underline-offset:3px}.hw-file-name,.hw-files a{min-width:0;overflow:hidden;font-weight:600;white-space:nowrap}.hw-file-name{flex:1 1 auto!important;color:var(--ink)!important;font-size:.86rem!important;text-overflow:ellipsis}.hw-file-x{margin-left:auto;padding:2px 8px;border:0;border-radius:8px;background:var(--surface-2);color:var(--muted);cursor:pointer}.hw-file-x:hover{color:var(--danger)}.cpp-staff{display:flex;flex-wrap:wrap;gap:12px 28px;margin:18px 0 20px}.cpp-group{display:flex;flex-direction:column;gap:6px}.cpp-label{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.cpp-people{display:flex;flex-wrap:wrap;gap:8px 16px}.cpp-person{display:inline-flex;align-items:center;gap:8px;color:var(--ink);font-size:.92rem;font-weight:600}.cpp-avatar{display:inline-grid;flex:0 0 auto;place-items:center;overflow:hidden;border-radius:50%;background:var(--surface-2);color:var(--muted);font-size:.72rem;font-weight:700}.cpp-avatar.is-md{width:34px;height:34px}.cpp-avatar.is-lg{width:44px;height:44px;font-size:.82rem}.cpp-avatar img{width:100%;height:100%;object-fit:cover}.cpp-enrolled{margin-top:0}.cpp-count{margin-left:6px;padding:1px 8px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);letter-spacing:0}.cpp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none}.cpp-kid{align-items:center;gap:10px;padding:8px 12px 8px 8px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface)}.cpp-kid,.cpp-kid-text{display:flex;min-width:0}.cpp-kid-text{flex-direction:column}.cpp-kid-name{overflow:hidden;color:var(--ink);font-size:.9rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.cpp-kid-klass{color:var(--muted);font-size:.78rem}.cpp-kid-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.cpp-more{margin-top:10px}.cp-tabs-wrap{margin-top:28px}.cp-tabs-wrap .cp-lessons-wrap{margin-top:0}@media (max-width:560px){.cpp-grid{grid-template-columns:1fr 1fr;gap:6px}.cpp-kid{gap:8px;padding:6px 8px 6px 6px;border-radius:14px}.cpp-avatar.is-lg{width:36px;height:36px}.cpp-kid-name{font-size:.82rem;white-space:normal}}.rgt-ev .rg-card.rg-mcard,.rgt-ev .rg-card.rg-mcard:hover{justify-content:flex-start;gap:6px;padding:10px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:none}.rgt-ev .rg-card.rg-mcard:hover{z-index:6;border-color:var(--line-strong);background:var(--surface-2)}.rg-mcard-time{align-self:flex-start;padding:3px 9px;border-radius:var(--pill);background:var(--lvl-bg);color:var(--lvl-tx);font-size:.72em;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.rgt-ev .rg-mcard .rg-card-title{font-size:.88em;line-height:1.25;-webkit-line-clamp:3}.rg-mcard-tags{display:flex;flex-wrap:wrap;gap:4px;min-width:0}.rg-mcard-pill{max-width:100%;overflow:hidden;padding:2px 8px;border-radius:var(--pill);background:var(--lvl-bg);color:var(--lvl-tx);font-size:.66em;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.rg-mcard-pill.is-lvl{background:var(--surface-2);color:var(--muted)}.rg-mcard-pill.is-flag{background:var(--danger);color:#fff}.rgt-ev .rg-mcard .rg-card-teacher{font-size:.74em}.rg-mcard-count{margin-top:auto;color:var(--muted);font-size:.7em;font-weight:700}.cp-embed{margin-top:28px}.cp-embed-head{margin-bottom:12px}.cp-embed-title{display:inline-flex;align-items:center;gap:8px;margin:0 0 4px;color:var(--ink);font-family:var(--font-display);font-size:1.25rem;font-weight:700;text-decoration:none}.cp-embed-title span[aria-hidden]{display:inline-grid;place-items:center;width:30px;height:30px;border:1.5px solid var(--line);border-radius:50%;font-family:var(--font-sans);font-size:.95rem;transition:background .12s ease,border-color .12s ease}.cp-embed-title:hover span[aria-hidden]{border-color:var(--ink);background:var(--ink);color:var(--bg)}.cp-embed-lead{max-width:60ch;margin:0;color:var(--muted);font-size:.92rem;line-height:1.45}.cp-embed-frame{display:block;width:100%;border:1.5px solid var(--line);border-radius:20px;background:var(--surface)}@media (max-width:560px){.cp-embed-frame{height:520px!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cp-tasks>.les-doc{padding:2px 0}.cp-tasks .les-doc>.les-bp:first-child{margin-top:0}.cp-tasks .les-doc>.les-bp:last-child{margin-bottom:0}.cp-tasks .les-doc>.les-bp{margin:0 0 8px}.les-fold-body .les-mats{margin-bottom:12px}.cp-tasks+.hw-answer{margin-top:14px}@media (max-width:560px){.les-fold-body{padding:6px 12px 12px}.cp-tasks .les-doc>.les-bp{margin-bottom:6px}}.cp-lesson.is-open>.cp-lesson-head{padding-bottom:6px}.cp-lesson-body>.les-teaser:first-child{margin-top:0}.cp-lesson-body>.les-fold:first-child{margin-top:10px}.cp-lesson-new{background:var(--coral);color:#fff}.cp-lesson-new,.cp-lesson-part{display:inline-block;margin-left:10px;padding:2px 9px;border-radius:var(--pill);font-family:var(--font-sans);font-size:.7rem;font-weight:700;vertical-align:3px}.cp-lesson-part{background:var(--surface-2);color:var(--muted)}.les-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;margin:10px 0 14px}.les-gallery figure{margin:0}.les-gallery a{display:block;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);aspect-ratio:4/3}.les-gallery img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .2s}.les-gallery a:hover img{transform:scale(1.03)}.les-gallery figcaption{margin-top:6px;color:var(--muted);font-size:.8rem;line-height:1.35}@media (max-width:560px){.les-gallery{grid-template-columns:1fr 1fr}}.les-fold-done{margin-left:10px;padding:2px 9px;border-radius:var(--pill);background:var(--ok-soft);color:var(--ok);font-family:var(--font-sans);font-size:.72rem;font-weight:700;white-space:nowrap}.les-fold.is-done:not([open]){border-color:color-mix(in srgb,var(--ok) 35%,var(--line))}.les-watched{margin-top:10px}.cs-bar{display:flex;justify-content:flex-end;margin:-8px 0 16px}.cs-progress{flex:1 1;display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:.88rem}.cs-progress-track{height:6px;overflow:hidden;border-radius:var(--pill);background:var(--surface-2)}.cs-progress-track div{height:100%;border-radius:var(--pill);background:var(--coral);transition:width .4s ease}.cs-source{margin-bottom:14px}.cs-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:10px;gap:10px;margin-bottom:18px}.cs-tile{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:14px 16px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);font-family:var(--font-sans);text-align:left;cursor:pointer;transition:border-color .12s ease}.cs-tile:hover{border-color:var(--line-strong)}.cs-tile.is-on{box-shadow:inset 0 0 0 1px var(--ink)}.cs-tile-n{font-family:var(--font-display);font-size:1.6rem;font-weight:700;line-height:1.1}.cs-tile-l{font-size:.86rem;line-height:1.25}.cs-tile-of{color:var(--muted);font-size:.78rem}.cs-tile.is-warn .cs-tile-n{color:var(--danger)}.cs-table tr{cursor:default}.cs-table th{white-space:nowrap}.cs-table td{vertical-align:top}.cs-course{display:block;color:var(--ink);font-weight:700;text-decoration:none}.cs-course:hover{text-decoration:underline}.cs-meta{display:block;margin-top:2px;color:var(--muted);font-size:.8rem}.cs-num{font-weight:700}.cs-num,.cs-ratio{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cs-ratio{white-space:nowrap}.cs-ratio small{color:var(--muted);font-weight:500}.cs-tile-n{white-space:nowrap}.cs-ratio.is-na{color:var(--muted);font-weight:500}.cs-self{display:inline-block;padding:2px 9px;border-radius:var(--pill);background:var(--icon-tint);color:var(--coral-600);font-size:.78rem;font-weight:700;white-space:nowrap}.cs-bar{margin:-6px 0 18px;justify-content:stretch}.cs-tiles{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin-bottom:22px}.cs-tile{gap:4px;padding:16px 16px 14px;border-radius:20px;box-shadow:var(--shadow-sm)}.cs-tile.is-on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink),var(--shadow-sm)}.cs-tile-n{font-size:1.45rem;letter-spacing:-.01em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cs-tile-l{color:var(--muted);font-weight:600}.cs-tile.is-on .cs-tile-l{color:var(--ink)}.cs-bar-mini{width:100%;height:4px;margin-top:4px;overflow:hidden;background:var(--surface-2)}.cs-bar-mini,.cs-bar-mini i{display:block;border-radius:var(--pill)}.cs-bar-mini i{height:100%;background:var(--ink);opacity:.75}.cs-bar-mini.is-tile{margin-top:8px}.cs-table-wrap{border-radius:20px;background:var(--surface)}.cs-table th{padding:12px 14px;font-size:.7rem}.cs-table td{padding:12px 14px;vertical-align:middle}.cs-table tbody tr:hover td{background:color-mix(in srgb,var(--ink) 2.5%,var(--surface))}.cs-course{font-size:.95rem;line-height:1.3}.cs-ratio{display:inline-flex;flex-direction:column;gap:4px;min-width:52px;font-size:.9rem;font-weight:700;color:var(--ink)}.cs-ratio .cs-bar-mini{width:52px;margin-top:0}.cs-ratio.is-full{color:var(--ok)}.cs-ratio.is-full .cs-bar-mini i{background:var(--ok);opacity:1}.cs-ratio.is-zero{color:var(--muted);font-weight:600}.cs-num{font-size:.95rem}.cs-self{background:var(--surface-2);color:var(--ink)}.cs-tiles{grid-template-columns:repeat(6,minmax(0,1fr))}@media (max-width:900px){.cs-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:560px){.cs-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.as-sent{color:inherit;font-weight:700;white-space:nowrap}.ans-fb-kind{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0 0 8px;font-size:.86rem}.ans-fb-kind b{color:var(--ink)}.ans-kind-detail{color:var(--muted)}.ans-kind{padding:2px 10px;border-radius:var(--pill);font-size:.74rem;font-weight:700;white-space:nowrap}.ans-kind.is-portal{background:var(--surface-2);color:var(--ink)}.ans-kind.is-course{background:var(--ans-fb-soft);color:var(--ans-fb-ink)}.ans-kind.is-lesson{background:var(--ans-new-soft);color:var(--ans-new-ink)}.ans-kind.is-task{background:color-mix(in srgb,#8b5cf6 14%,var(--surface));color:#6d4fd6}.ans-fb-card header time{color:var(--ink);font-weight:600}.ans-kinds{display:flex;flex-wrap:wrap;width:max-content;max-width:100%;margin-bottom:18px}.ans-kinds button{display:inline-flex;align-items:center;gap:8px}.ans-kinds-s{display:none}@media (max-width:640px){.ans-kinds{display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;width:100%}.ans-kinds button{justify-content:center;gap:6px;padding-left:6px;padding-right:6px;white-space:nowrap}.ans-kinds-l{display:none}.ans-kinds-s{display:inline}.as-filters{flex-wrap:nowrap;overflow-x:auto;margin-left:-16px;margin-right:-16px;padding:0 16px 2px;scrollbar-width:none}.as-filters::-webkit-scrollbar{display:none}.as-filters>*{flex:none}}.ans-kinds-n{padding:0 7px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.75rem}.ans-kinds button.is-on .ans-kinds-n{background:hsla(0,0%,100%,.2);color:inherit}.sfc-task{display:block;margin-bottom:3px;font-size:.72rem;font-weight:700;opacity:.75}.sfc-reply{padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.fb-msg.is-target{box-shadow:0 0 0 2px var(--coral)}.sfc-to{display:flex;align-items:center;gap:8px;margin:0;padding:8px 14px 0;color:var(--muted);font-size:.78rem}.sfc-to .sfc-reply{text-decoration:none}.sfc-err{margin:0;padding:6px 14px 0;color:var(--danger);font-size:.8rem}.sfc-folders{gap:6px}.sfc-folder{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);font-family:var(--font-sans);text-align:left;cursor:pointer}.sfc-folder:hover{border-color:var(--line-strong)}.sfc-folder.is-new{border-color:var(--coral)}.sfc-folder-body{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.sfc-folder-body b{font-size:.92rem;line-height:1.25}.sfc-folder-body span{color:var(--muted);font-size:.78rem}.sfc-folder-body em{overflow:hidden;color:var(--text);font-size:.82rem;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.sfc-folder-n{flex:none;min-width:22px;height:22px;padding:0 6px;border-radius:var(--pill);background:var(--coral);color:#fff;font-size:.74rem;font-weight:800;line-height:22px;text-align:center}.sfc-head{display:flex;align-items:center;gap:10px}.sfc-back{display:grid;flex:none;place-items:center;width:34px;height:34px;border:1.5px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink);cursor:pointer}.sfc-back:hover{border-color:var(--ink)}.hw-stats .mp-stat{font:inherit;text-align:left;cursor:pointer}.hw-stats div.mp-stat{cursor:default}.hw-stats .mp-stat span{line-height:1.3}.hw-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:18px 0 14px}.hw-filters{margin:0}.hw-list{display:flex;flex-direction:column;gap:8px}.hw-item{display:flex;align-items:flex-start;gap:14px;padding:14px 16px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);text-decoration:none;transition:border-color .12s ease}.hw-item:hover{border-color:var(--line-strong)}.hw-item.has-own{flex-direction:column;align-items:stretch;gap:10px}.hw-item-link{display:flex;align-items:flex-start;gap:14px;color:inherit;text-decoration:none}.hw-own{display:flex;flex-wrap:wrap;gap:8px 12px;margin-left:66px;padding-top:10px;border-top:1px dashed var(--line);color:var(--muted)}.hw-own,.hw-own label{align-items:center;font-size:.85rem}.hw-own label{display:inline-flex;gap:8px;margin:0;color:var(--ink);font-weight:600;letter-spacing:normal;text-transform:none}.hw-own input[type=date]{padding:7px 10px;border:1.5px solid var(--line-strong);border-radius:10px;background:var(--input-bg);color:var(--ink);font:inherit}.hw-own-btn{padding:0;border:0;background:none;color:var(--coral-600);font:inherit;font-weight:700;cursor:pointer}.hw-own-btn:hover{text-decoration:underline}.hw-own-err{color:var(--danger);font-weight:600}.hw-own-note{margin:0 0 0 66px;color:var(--muted);font-size:.82rem}@media (max-width:560px){.hw-own,.hw-own-note{margin-left:0}}.hw-item.is-new{border-color:var(--coral)}.hw-item.is-done{opacity:.7}.hw-date{display:flex;flex:none;flex-direction:column;align-items:center;justify-content:center;width:52px;min-height:52px;border-radius:14px;background:var(--surface-2);color:var(--muted);font-size:.72rem;font-weight:700;line-height:1.1;text-align:center}.hw-date b{color:var(--ink);font-family:var(--font-display);font-size:1.2rem}.hw-item.is-new .hw-date{background:var(--icon-tint)}.hw-main{display:flex;flex:1 1;flex-direction:column;gap:3px;min-width:0}.hw-course{color:var(--muted);font-size:.78rem;font-weight:700}.hw-title{font-size:.98rem;font-weight:700;line-height:1.3}.hw-preview{overflow:hidden;font-size:.86rem;text-overflow:ellipsis;white-space:nowrap}.hw-deadline{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;color:var(--muted);font-size:.8rem;font-weight:600}.hw-when{padding:1px 8px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-style:normal;font-weight:700}.hw-when.is-soon{background:var(--warn-soft);color:var(--warn-ink)}.hw-when.is-late{background:var(--danger-soft);color:var(--danger)}.hw-status{flex:none;align-self:center;padding:3px 10px;border-radius:var(--pill);font-size:.74rem;font-weight:700;white-space:nowrap}.hw-status.is-new{background:var(--coral);color:#fff}.hw-status.is-todo{border:1.5px solid var(--line-strong);color:var(--ink)}.hw-status.is-done{background:var(--ok-soft);color:var(--ok)}.hw-list.is-compact .hw-item{padding:10px 12px;border-radius:14px}.hw-courses{display:flex;flex-direction:column;gap:14px}.hw-course-card{padding:14px;border:1.5px solid var(--line);border-radius:22px;background:var(--surface-2)}.hw-course-head{display:flex;flex-direction:column;gap:3px;margin:2px 4px 12px;color:var(--ink);text-decoration:none}.hw-course-head b{font-size:1.05rem}.hw-course-head span{color:var(--muted);font-size:.82rem}.hw-course-head .cs-bar-mini{max-width:220px}.hw-cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.hw-cal-head b{font-family:var(--font-display);font-size:1.1rem;text-transform:capitalize}.hw-cal-nav{width:36px;height:36px;border:1.5px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink);font-size:1.2rem;cursor:pointer}.hw-cal-nav:hover{border-color:var(--ink)}.hw-cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:6px;gap:6px}.hw-cal-wd{padding-bottom:2px;color:var(--muted);font-size:.72rem;font-weight:700;text-align:center}.hw-cal-day{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-height:76px;padding:6px 7px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer;overflow:hidden}.hw-cal-day:hover{border-color:var(--line-strong)}.hw-cal-day.is-today{border-color:var(--ink)}.hw-cal-day.is-picked{box-shadow:inset 0 0 0 1.5px var(--ink);background:var(--surface-2)}.hw-cal-n{font-size:.82rem;font-weight:700}.hw-cal-dots{display:flex;gap:3px}.hw-cal-dots i{width:8px;height:8px;border-radius:50%;background:var(--ink)}.hw-cal-dots i.is-new{background:var(--coral)}.hw-cal-dots i.is-done{background:var(--ok)}.hw-cal-chip{max-width:100%;overflow:hidden;color:var(--muted);font-size:.68rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.hw-cal-empty{min-height:76px}.hw-cal-day.is-past:not(.has-hw){background:transparent;color:var(--muted)}.hw-cal-jump{margin-left:4px;padding:0;border:0;background:none;color:var(--coral);font:inherit;font-weight:700;cursor:pointer}.hw-cal-jump:hover{text-decoration:underline}.hw-cal-list-h{margin:18px 0 8px;color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}@media (max-width:560px){.hw-cal-day{min-height:52px;padding:5px}.hw-cal-chip{display:none}.hw-cal-empty{min-height:52px}.hw-item{gap:10px;padding:12px}.hw-date{width:44px;min-height:46px}.hw-status{font-size:.68rem;padding:2px 8px}}.hw-push{margin-top:14px;border:1.5px solid var(--line);border-radius:20px;background:var(--surface);overflow:hidden}.hw-push.is-on{border-color:color-mix(in srgb,var(--ok) 35%,var(--line))}.hw-push-head{display:flex;gap:14px;align-items:center;width:100%;padding:14px 18px;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.hw-push-headtext{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.hw-push-icon{display:grid;flex:none;place-items:center;width:40px;height:40px;border-radius:14px;background:var(--icon-tint);color:var(--coral-600)}.hw-push.is-on .hw-push-icon{background:var(--ok-soft);color:var(--ok)}.hw-push-title{color:var(--ink);font-weight:700}.hw-push-sub{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:.86rem}.hw-push.is-on .hw-push-sub{color:var(--ok);font-weight:600}.hw-push-dot{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px var(--ok-soft)}.hw-push-chev{flex:none;color:var(--muted);font-size:1.1rem;line-height:1;transition:transform .2s}.hw-push-chev.is-open{transform:rotate(180deg)}.hw-push-body{padding:16px 18px 18px;border-top:1px solid var(--line)}.hw-push-label{margin:0 0 10px;color:var(--muted);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hw-push-opts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.hw-push-opt{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);color:var(--muted);font:inherit;font-size:.82rem;text-align:left;cursor:pointer;transition:border-color .15s,background .15s}.hw-push-opt:hover{border-color:var(--line-strong)}.hw-push-opt b{color:var(--ink);font-family:var(--font-display);font-size:1.15rem;font-weight:600}.hw-push-opt.is-on{border-color:var(--ink);background:var(--surface-2)}.hw-push-check{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:20px;height:20px;border:1.5px solid var(--line-strong);border-radius:50%;color:#fff;font-size:.7rem;font-weight:800}.hw-push-opt.is-on .hw-push-check{border-color:var(--ink);background:var(--ink);color:var(--bg)}.hw-push-extra{color:var(--muted);font-size:.85rem}.hw-push-alert,.hw-push-extra{margin:12px 0 0;line-height:1.45}.hw-push-alert{padding:10px 14px;border:1px solid var(--warn-line);border-radius:12px;background:var(--warn-soft);color:var(--text);font-size:.86rem}.hw-push-alert b{color:var(--warn-ink)}.hw-push-body>.hw-push-alert:first-child{margin-top:0}.hw-push-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:16px}.hw-push-msg{color:var(--muted);font-size:.84rem}.hw-push-msg.is-ok{color:var(--ok);font-weight:600}.hw-push-msg.is-err{color:var(--danger);font-weight:600}.hw-how{margin-top:16px;border-radius:14px;background:var(--surface-2)}.hw-how summary{display:flex;align-items:center;justify-content:space-between;padding:11px 14px;color:var(--ink);font-size:.9rem;font-weight:600;cursor:pointer;list-style:none}.hw-how summary::-webkit-details-marker{display:none}.hw-how-chev{color:var(--muted);transition:transform .2s}.hw-how[open] .hw-how-chev{transform:rotate(180deg)}.hw-how-body{padding:0 14px 14px}.hw-how-tabs{display:inline-flex;gap:2px;margin-bottom:12px;padding:3px;border-radius:var(--pill);background:var(--surface)}.hw-how-tabs button{padding:5px 14px;border:0;border-radius:var(--pill);background:none;color:var(--muted);font:inherit;font-size:.82rem;font-weight:600;cursor:pointer}.hw-how-tabs button.is-on{background:var(--ink);color:var(--bg)}.hw-how-steps{display:grid;grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none;font-size:.88rem;line-height:1.45}.hw-how-steps li{display:flex;gap:10px;align-items:flex-start}.hw-how-num{display:grid;flex:none;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--surface);color:var(--ink);font-size:.75rem;font-weight:700}.hw-how-note{margin:10px 0 0;color:var(--muted);font-size:.8rem;line-height:1.45}@media (max-width:560px){.hw-push-head{padding:12px 14px}.hw-push-body{padding:14px}.hw-push-opts{gap:6px}.hw-push-opt{padding:10px}.hw-push-check{top:8px;right:8px;width:18px;height:18px}}.hw-late{margin-top:16px;padding:14px 16px 16px;border:1.5px solid var(--warn-line);border-radius:18px;background:var(--warn-soft)}.hw-late-h{margin:0;color:var(--warn-ink);font-weight:700}.hw-late-sub{margin:2px 0 10px;color:var(--muted);font-size:.85rem}.chw-nav{align-items:center;margin:0 0 12px}.chw-nav,.chw-strip{display:flex;gap:8px}.chw-strip{flex:1 1;min-width:0;padding:2px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none}.chw-strip::-webkit-scrollbar{display:none}.chw-lcard{display:inline-flex;flex:none;align-items:center;gap:8px;max-width:240px;padding:6px 14px 6px 6px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--muted);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;scroll-snap-align:center;transition:border-color .15s,background .15s}.chw-lcard:hover{border-color:var(--line-strong);color:var(--ink)}.chw-lcard.is-on{max-width:none;border-color:var(--ink);background:var(--ink);color:var(--bg)}.chw-lcard-no{display:grid;flex:none;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--surface-2);color:var(--ink);font-size:.8rem;font-weight:700}.chw-lcard.is-on .chw-lcard-no{background:var(--bg);color:var(--ink)}.chw-lcard-t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:640px){.chw-strip{margin:0 -16px;padding:2px 16px}}.chw-summary{display:flex;margin-bottom:16px}.chw-stat{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:14px;background:var(--surface-2)}.chw-stat b{color:var(--ink);font-family:var(--font-display);font-size:1.35rem;font-weight:600;line-height:1.15}.chw-stat b.chw-stat-date{font-family:var(--font-sans);font-size:.95rem;font-weight:700}.chw-stat span{color:var(--muted);font-size:.8rem}.chw-show{margin-bottom:12px}.chw-show-n{margin-left:4px;opacity:.7;font-weight:600}.chw-list{display:grid;grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none}.chw-row{border:1.5px solid var(--line);border-radius:16px;background:var(--surface);overflow:hidden}.chw-row.is-done{border-color:color-mix(in srgb,var(--ok) 30%,var(--line))}.chw-row.is-open{border-color:var(--line-strong)}.chw-row-head{display:flex;align-items:center;gap:12px;width:100%;padding:10px 14px;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.chw-row-head:disabled{cursor:default}.chw-check{display:grid;flex:none;place-items:center;width:24px;height:24px;border:1.5px solid var(--line-strong);border-radius:50%;color:#fff;font-size:.8rem;font-weight:800}.chw-check.is-done{border-color:var(--ok);background:var(--ok)}.chw-check.is-late{border-color:var(--danger);color:var(--danger)}.chw-row-who{display:flex;flex:1 1;flex-direction:column;min-width:0}.chw-row-who b{color:var(--ink);font-weight:700}.chw-row-who small{color:var(--muted);font-size:.78rem}.chw-att.is-yes{color:var(--ok);font-weight:600}.chw-att.is-no{color:var(--danger);font-weight:600}.chw-row-state{flex:none;text-align:right}.chw-done{display:inline-flex;flex-direction:column;align-items:flex-end;color:var(--ok);font-size:.82rem;font-weight:700}.chw-done em{color:var(--ans-new-ink);font-size:.72rem;font-style:normal;font-weight:600}.chw-done em.is-fb,.chw-todo{color:var(--muted)}.chw-todo{font-size:.8rem;font-weight:600}.chw-todo.is-late{color:var(--danger)}.chw-row-chev{color:var(--muted)}.chw-answers{display:grid;grid-gap:8px;gap:8px;padding:0 14px 14px}@media (max-width:640px){.chw-row-head{gap:10px;padding:10px 12px}.chw-done,.chw-todo{font-size:.74rem}}.as-card-recent{display:grid;grid-gap:6px;gap:6px;margin:10px 0 0;padding:0;list-style:none}.as-card-recent li{display:flex;flex-direction:column;padding:7px 10px;border-radius:10px;background:var(--surface-2);font-size:.8rem;line-height:1.35;text-align:left}.as-card-recent b{color:var(--ink);font-weight:700}.as-card-recent span{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.as-card-recent li.is-new{box-shadow:inset 3px 0 0 var(--coral)}.ans-student.is-new .as-card-recent li{background:hsla(0,0%,100%,.18)}.ans-student.is-new .as-card-recent b,.ans-student.is-new .as-card-recent span{color:#fff}.ans-student.is-new .as-card-recent li.is-new{box-shadow:inset 3px 0 0 #fff}.cs-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:16px}.cs-filter{display:flex;flex-direction:column;gap:4px;min-width:180px}.cs-filter span{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.cs-filter select{padding:9px 34px 9px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--input-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23888' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 12px center;color:var(--ink);font:inherit;font-size:.88rem;font-weight:600;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer}.cs-filter.is-on select{border-color:var(--ink)}.cs-filter-reset{padding:9px 4px;border:0;background:none;color:var(--coral-600);font:inherit;font-size:.86rem;font-weight:700;cursor:pointer}.cs-view{margin-bottom:16px}.cs-sort{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:inherit;cursor:pointer;white-space:nowrap}.cs-sort span{color:var(--line-strong);font-size:.8em}.cs-sort.is-on{color:var(--ink)}.cs-sort.is-on span{color:var(--coral-600)}.cs-history-note{margin:0 0 14px;color:var(--muted);font-size:.84rem;line-height:1.45}.cs-history-day{margin-bottom:18px}.cs-history-day h3{margin:0 0 8px;color:var(--ink);font-family:var(--font-display);font-size:.95rem;font-weight:600}.cs-history-day h3:first-letter{text-transform:uppercase}.cs-history-day ul{display:grid;grid-gap:6px;gap:6px;margin:0;padding:0;list-style:none}.cs-history-day li{display:flex;align-items:baseline;gap:10px;padding:9px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);font-size:.88rem}.cs-history-day time{flex:none;width:42px;color:var(--muted);font-size:.8rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cs-what{flex:none;padding:2px 9px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.74rem;font-weight:700}.cs-what.is-lesson{background:var(--ok-soft);color:var(--ok)}.cs-what.is-homework{background:var(--ans-new-soft);color:var(--ans-new-ink)}.cs-what.is-konspekt{background:var(--ans-fb-soft);color:var(--ans-fb-ink)}.cs-history-t{min-width:0}.cs-history-t a{color:var(--ink);font-weight:700;text-decoration:none}.cs-history-t a:hover{text-decoration:underline}.cs-history-t small{color:var(--muted);font-size:.82rem}@media (max-width:640px){.cs-filter{flex:1 1 100%;min-width:0}.cs-history-day li{flex-wrap:wrap;row-gap:4px}}.cs-legend{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 10px;color:var(--muted);font-size:.82rem}.cs-t-wrap{overflow-x:auto;border:1.5px solid var(--line);border-radius:20px;background:var(--surface)}.cs-t{width:100%;border-collapse:separate;border-spacing:0}.cs-t th{height:44px;padding:0 12px;border-bottom:1px solid var(--line);background:var(--surface-2);color:var(--muted);font-size:.78rem;font-weight:700;text-align:center;vertical-align:middle;white-space:nowrap}.cs-t th:first-child{border-top-left-radius:18px}.cs-t th:last-child{border-top-right-radius:18px}.cs-t td{padding:14px 12px;border-bottom:1px solid var(--line);text-align:center;vertical-align:middle}.cs-t tbody tr:last-child td{border-bottom:0}.cs-t tbody tr:hover td{background:color-mix(in srgb,var(--ink) 2.5%,var(--surface))}.cs-t .cs-t-course{min-width:260px;text-align:left}.cs-t .cs-t-col{width:110px}.cs-t .cs-course{display:block;color:var(--ink);font-size:.95rem;font-weight:700;line-height:1.3;text-decoration:none}.cs-t .cs-course:hover{text-decoration:underline}.cs-t-who{display:block;margin-top:2px;color:var(--text);font-size:.8rem}.cs-t-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.cs-t-tags span{padding:1px 8px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.72rem;font-weight:600}.cs-t-tags span.is-accent{background:var(--icon-tint);color:var(--coral-600)}.cs-cov,.cs-t-num{display:inline-flex;align-items:center;justify-content:center;min-width:58px;height:30px;padding:0 10px;border-radius:var(--pill);font-size:.88rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cs-t-num{color:var(--ink)}.cs-t-num.is-none{color:var(--muted)}.cs-legend .cs-cov{min-width:0;height:auto;padding:1px 9px;font-size:.76rem}.cs-cov.is-full{background:var(--ok-soft);color:var(--ok)}.cs-cov.is-part{background:var(--warn-soft);color:var(--warn-ink)}.cs-cov.is-none{background:var(--surface-2);color:var(--muted)}.cs-dash{color:var(--line-strong)}.cs-t .cs-self{display:inline-flex;align-items:center;height:30px;padding:0 10px;border-radius:var(--pill);background:var(--icon-tint);color:var(--coral-600);font-size:.78rem;font-weight:700;white-space:nowrap}.cs-t .cs-sort{justify-content:center}.cs-t th.cs-t-course .cs-sort{justify-content:flex-start}@media (max-width:640px){.cs-t td.cs-t-course,.cs-t th.cs-t-course{position:-webkit-sticky;position:sticky;left:0;z-index:1;min-width:190px;background:var(--surface)}.cs-t th.cs-t-course{background:var(--surface-2)}}.mtr-summary{margin:0 0 12px;color:var(--muted);font-size:.9rem;font-weight:600}.mtr-summary .is-warn{color:var(--coral-600)}.mtr-summary .is-ok{color:var(--ok)}.mtr-list{display:flex;flex-direction:column;gap:10px}.mtr-card{border:1.5px solid var(--line);border-radius:18px;padding:14px 16px;background:var(--surface);transition:border-color .15s}.mtr-card.is-open{border-color:var(--line-strong,var(--muted))}.mtr-card.is-skel{height:84px;background:var(--surface-2);border-color:transparent;animation:mtr-pulse 1.2s ease-in-out infinite}@keyframes mtr-pulse{50%{opacity:.55}}.mtr-card-head{display:flex;align-items:center;gap:14px}.mtr-card-main{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:6px}.mtr-card-name{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;font-size:1.02rem}.mtr-klass{padding:2px 9px;border-radius:var(--pill);background:var(--sky-tint);color:var(--ink);font-size:.74rem;font-weight:700;white-space:nowrap}.mtr-status-lines{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px}.mtr-tag{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--pill);font-size:.8rem;font-weight:700;white-space:nowrap}.mtr-tag svg{width:14px;height:14px}.mtr-tag.is-ok{background:var(--ok-soft);color:var(--ok)}.mtr-tag.is-warn{background:var(--icon-tint);color:var(--coral-600)}.mtr-facts{display:inline-flex;flex-wrap:wrap;gap:2px 12px;color:var(--muted);font-size:.8rem}.mtr-facts span+span:before{content:"·";margin-right:12px}.mtr-card-acts{flex:none;display:flex;align-items:center;gap:8px}.mtr-plan-btn{display:inline-flex;align-items:center;gap:6px;padding-right:12px;white-space:nowrap}.mtr-chev{transition:transform .15s}.mtr-chev.is-open{transform:rotate(180deg)}.mtr-plan{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.mtr-plan-h{margin:0 0 8px;color:var(--muted);font-size:.74rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.mtr-note{margin:4px 0;color:var(--muted);font-size:.88rem}.mtr-note.is-err{color:var(--danger)}.mtr-note.is-ok{color:var(--ok);font-weight:600}.mtr-days{display:flex;flex-direction:column;gap:8px}.mtr-day{display:flex;align-items:baseline;gap:10px}.mtr-day-name{flex:0 0 130px;font-size:.86rem;font-weight:700}.mtr-day-slots{display:flex;flex-wrap:wrap;gap:6px}.mtr-slot{padding:6px 12px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.84rem;font-weight:600;white-space:nowrap;cursor:pointer}.mtr-slot.is-on,.mtr-slot:hover{border-color:var(--ink)}.mtr-slot.is-on{background:var(--ink);color:var(--surface)}.mtr-slot-sp{display:block;margin-top:1px;font-size:.7rem;font-weight:600;opacity:.7}.mm-slot.is-clash,.mtr-slot.is-clash{border-color:var(--warn-line);background:var(--warn-soft);color:var(--warn-ink)}.mm-slot.is-clash .mtr-slot-sp,.mtr-slot.is-clash .mtr-slot-sp{opacity:1}.mtr-slot.is-clash.is-on{border-color:var(--warn-ink);background:var(--warn-ink);color:var(--surface)}.mtr-clash-note{gap:6px}.mtr-clash-note,.pl-overlap{display:flex;align-items:center}.pl-overlap{gap:5px;margin-top:4px;font-size:.78rem;font-weight:600;color:var(--warn-ink)}.pl-overlap svg{width:13px;height:13px;flex:none}.mtr-clash-note i{flex:none;width:12px;height:12px;border-radius:4px;border:1.5px solid var(--warn-line);background:var(--warn-soft)}.mtr-form{display:grid;grid-template-columns:160px 110px 110px minmax(160px,1fr) auto;grid-gap:10px;gap:10px;align-items:end;margin-top:14px}.mtr-form .mtr-field input{min-width:0;width:100%}.mtr-submit{height:40px}.mtr-other{margin-top:22px;border:1.5px dashed var(--line);border-radius:18px}.mtr-other-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 16px;border:0;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.mtr-other-toggle b{display:block}.mtr-other-toggle small{color:var(--muted);font-size:.82rem}.mtr-other-body{display:flex;flex-direction:column;gap:12px;padding:0 16px 16px}.mtr-search,.sp-pill{position:relative;display:flex;align-items:center;max-width:420px}.mtr-search>svg,.sp-pill-ico{position:absolute;left:18px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.mtr-search input,.sp-pill input{width:100%;height:46px;padding:0 18px 0 44px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--text);font:inherit;font-size:.95rem;outline:none}.mtr-search input:focus,.sp-pill input:focus{border-color:var(--coral)}.mtr-search input::placeholder,.sp-pill input::placeholder{color:var(--muted)}.sp-pill .sp-dropdown{left:0;right:0;background:var(--surface)}.mtr-mentors{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-gap:8px;gap:8px;margin:14px 0 22px}.mtr-mentor{display:flex;align-items:center;gap:10px;padding:7px 12px 7px 7px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.9rem;font-weight:600;text-align:left;cursor:pointer}.mtr-mentor span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mtr-mentor:hover{border-color:var(--muted)}.mtr-mentor.is-on{border-color:var(--ink);background:var(--ink);color:var(--surface)}.mtr-h3{margin:0 0 10px;font-size:1.05rem}.mtr-push{display:flex;align-items:center;gap:12px;margin:0 0 16px;padding:10px 10px 10px 14px;border-radius:16px;background:var(--surface-2)}.mtr-push-ico{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--icon-tint);color:var(--coral-600)}.mtr-push-txt{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px}.mtr-push-txt b{font-size:.92rem}.mtr-push-txt span{color:var(--muted);font-size:.82rem}.mtr-push-x{flex:none;width:32px;height:32px;border:0;border-radius:50%;background:none;color:var(--muted);font-size:.9rem;cursor:pointer}.mtr-push-x:hover{background:var(--surface);color:var(--ink)}.mtr-tabsrow{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 18px}.mtr-tabsrow .mtr-tabs{flex:1 1;margin:0}.mtr-push-mini{flex:none}.mtr-viewas{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 14px;margin:-4px 0 16px;padding:10px 14px;border-radius:14px;background:var(--sky-tint);font-size:.9rem}@media (max-width:640px){.mtr-card{padding:12px 14px}.mtr-card-head{flex-wrap:wrap;align-items:flex-start;gap:12px}.mtr-card-head>.spf-ava{width:44px!important;height:44px!important}.mtr-card-main{flex-grow:1;flex-shrink:1;flex-basis:calc(100% - 56px)}.mtr-facts span+span:before{content:none}.mtr-facts{flex-direction:column}.mtr-card-acts{flex:1 1 100%}.mtr-card-acts .dm-btn{justify-content:center;min-height:42px}.mtr-fb-btn{flex:none;padding:0 18px}.mtr-plan-btn{flex:1 1}.mtr-day{flex-direction:column;gap:6px}.mtr-day-name{flex:none}.mtr-slot{padding:8px 14px}.mtr-form{grid-template-columns:1fr 1fr}.mtr-form .mtr-field:first-child,.mtr-form .mtr-field:nth-child(4){grid-column:1/-1}.mtr-form .mtr-field input{height:44px;font-size:16px}.mtr-submit{grid-column:1/-1;height:46px}.mtr-push{align-items:flex-start;flex-wrap:wrap;gap:10px;padding:12px}.mtr-push-txt{flex-grow:1;flex-shrink:1;flex-basis:calc(100% - 90px)}.mtr-push .push-mini{order:3;margin-left:46px}.mtr-tabsrow{flex-wrap:wrap;margin-bottom:16px}.mtr-tabsrow .mtr-tabs{flex:1 1 100%}.mtr-push-mini{margin-left:auto}.mtr-search,.sp-pill{max-width:none}.mtr-search input,.sp-pill input{font-size:16px}.mtr-mentors{grid-template-columns:1fr 1fr}.mtr-mentor{font-size:.84rem}.mtr-other-toggle{padding:14px}.mtr-other-body{padding:0 14px 14px}}.mtr-field{display:flex;flex-direction:column;gap:4px;font-size:.78rem;color:var(--muted);font-weight:600}.mtr-field input,.mtr-field select,.mtr-field textarea{padding:8px 10px;border:1.5px solid var(--line);border-radius:10px;font:inherit;font-size:.9rem;background:var(--surface);color:var(--text);min-width:150px}.mtr-status.is-planned{background:var(--icon-tint);color:var(--coral-600)}.mtr-status.is-done{background:var(--ok-soft);color:var(--ok)}.mtr-status.is-cancelled{background:var(--surface-2);color:var(--muted)}.mtr-meetings{display:flex;flex-direction:column;gap:8px;text-align:left}.mtr-meeting{display:flex;align-items:center;gap:14px;padding:12px 14px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface)}.mtr-meeting.is-cancelled{background:transparent;border-style:dashed}.mtr-meeting.is-cancelled .mtr-meeting-main{opacity:.6}.mtr-meeting.is-cancelled .mtr-meeting-main b{text-decoration:line-through;-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted)}.mtr-meeting-date{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;width:48px;height:52px;border-radius:12px;background:var(--surface-2);line-height:1}.mtr-meeting-date b{font-size:1.2rem;font-weight:800}.mtr-meeting-date small{margin-top:3px;color:var(--muted);font-size:.7rem;font-weight:700}.mtr-meeting.is-planned .mtr-meeting-date{background:var(--icon-tint);color:var(--coral-600)}.mtr-meeting.is-done .mtr-meeting-date{background:var(--ok-soft);color:var(--ok)}.mtr-meeting-main{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.mtr-meeting-main b{font-size:.98rem}.mtr-meeting-main span{color:var(--muted);font-size:.84rem}.mtr-meeting-acts{flex:none;display:flex;align-items:center;gap:12px}.mtr-status{padding:4px 11px;border-radius:var(--pill);font-size:.78rem;font-weight:700;white-space:nowrap}.mtr-mbtn{padding:6px 14px;white-space:nowrap}.mtr-mbtn,.mtr-mlink{font-size:.84rem}.mtr-mlink:hover{color:var(--danger)}.mtr-fb-bar{display:flex;align-items:center;flex-wrap:wrap;gap:10px 12px;margin-bottom:14px}.mtr-fb-seg button{white-space:nowrap}.mtr-fb-who{flex:none;display:inline-flex;align-items:center;gap:8px}.spf-fbr-h .mtr-fb-who .spf-chip{margin-top:0}@media (max-width:640px){.mtr-meeting{flex-wrap:wrap;gap:10px 12px;padding:12px}.mtr-meeting-main{flex-grow:1;flex-shrink:1;flex-basis:calc(100% - 64px)}.mtr-meeting-acts{flex:1 1 100%;padding-left:60px;gap:10px}.mtr-meeting-acts .mtr-status{margin-right:auto}.mtr-meeting.is-planned .mtr-status{display:none}.mtr-meeting.is-planned .mtr-mlink{margin-left:auto}.mtr-mbtn{min-height:38px}.mtr-fb-bar{align-items:stretch}.mtr-fb-seg{flex:1 1 100%}.dm-seg.mtr-fb-seg button{flex:1 1;justify-content:center;padding:8px 10px}.mtr-fb-bar>.dm-btn{flex:1 1 100%;min-height:42px}}.hw-cal-dots i.is-planned{background:var(--coral)}.hw-cal-dots i.is-cancelled{background:var(--muted)}.mtr-fb-item{border:1.5px solid var(--line);border-radius:14px;padding:12px 14px;margin-bottom:10px;background:var(--surface)}.mtr-fb-item p{margin:6px 0 8px;white-space:pre-wrap}.mtr-fb-item .spf-fb-text p{margin:0 0 8px;white-space:normal}.mtr-fb-head{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:.8rem}.les-link{color:inherit;font-weight:600;text-decoration:underline;-webkit-text-decoration-color:var(--coral,#ff7c60);text-decoration-color:var(--coral,#ff7c60);text-decoration-thickness:2px;text-underline-offset:3px}.les-link:hover{color:var(--coral,#ff7c60)}.act-bar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:10px 0 4px}.act-hint{color:var(--muted);font-size:.8rem}.pl-lvl.pl-custom{background:transparent;border:1.5px dashed var(--coral);color:var(--coral-600)}.act-form{display:flex;flex-direction:column;gap:12px;padding-bottom:22px}.act-form .cm-title{margin:0 0 4px;padding-right:40px}.act-form .mtr-field{width:100%}.act-form .mtr-field input,.act-form .mtr-field select{width:100%;min-width:0}.act-times{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.act-seg{display:inline-flex;align-self:flex-start;padding:3px;border-radius:var(--pill);background:var(--surface-2)}.act-seg button{padding:7px 16px;border:0;border-radius:var(--pill);background:none;color:var(--muted);font:inherit;font-size:.84rem;font-weight:700;cursor:pointer}.act-seg button.is-on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.act-actions{display:flex;gap:10px;margin-top:6px}.ce-toggle{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:14px 0 6px}.ce-toggle .cp-btn{padding:10px 18px;font-size:.92rem}.ce-card{margin:14px 0;padding:18px;border:1.5px dashed var(--coral);border-radius:18px;background:var(--surface)}.ce-card.is-lesson{margin:6px 0 14px}.ce-del{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}.ce-del-btn{color:var(--danger,#c0392b)}.ce-del.is-confirm{display:grid;grid-gap:8px;gap:8px;padding:14px 16px;border:1.5px solid var(--danger,#c0392b);border-radius:14px;background:var(--surface)}.ce-del.is-confirm b{color:var(--ink)}.ce-del.is-confirm p{margin:0;color:var(--text);font-size:.9rem;line-height:1.5}.ce-del-acts{gap:8px 14px}.ce-del-acts,.ce-deleted{display:flex;flex-wrap:wrap;align-items:center}.ce-deleted{gap:6px 14px;margin:0 0 12px;padding:10px 14px;border-radius:12px;background:var(--surface-2);color:var(--ink);font-size:.9rem}.ce-deleted>span:first-child{flex:1 1 220px}.adm-trash-h{margin:16px 0 6px;color:var(--muted);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.ce-card-h{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px;margin-bottom:10px}.ce-card-h h3{margin:0;font-family:var(--font-display);font-size:1.05rem;color:var(--ink)}.ce-note{color:var(--muted);font-size:.85rem}.ce-lock{margin:0 0 12px;padding:10px 12px;border-radius:12px;background:var(--surface-2);color:var(--ink);font-size:.9rem;line-height:1.45}.ce-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin:0;padding:0;border:0;min-width:0}.ce-grid:disabled{opacity:.6}.ce-field{display:flex;flex-direction:column;gap:5px;margin:0 0 10px;min-width:0}.ce-grid .ce-field{margin:0}.ce-field.is-wide{grid-column:1/-1}.ce-field>span{color:var(--muted);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.ce-field input,.ce-field select,.ce-field textarea,.ce-text{width:100%;padding:9px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--input-bg,var(--surface));color:var(--ink);font:inherit;font-size:.95rem;font-weight:400;line-height:1.5}.ce-text{resize:vertical;font-family:var(--font-sans)}.ce-field input:focus,.ce-field select:focus,.ce-field textarea:focus,.ce-text:focus{outline:none;border-color:var(--coral)}.ce-chips{display:flex;flex-wrap:wrap;gap:6px}.ce-chip{padding:6px 12px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--muted);font:inherit;font-size:.85rem;font-weight:700;cursor:pointer}.ce-chip.is-on{border-color:var(--ink);background:var(--ink);color:var(--bg)}.ce-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px}.ce-actions .cp-btn{padding:9px 18px;font-size:.9rem}.ce-msg{color:var(--ok);font-size:.88rem;font-weight:700}.ce-msg.is-err{color:var(--danger)}.ce-secs{display:grid;grid-gap:6px;gap:6px;margin-top:14px}.ce-sec{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.ce-sec>span{color:var(--ink);font-weight:700;font-size:.92rem}.ce-sec.is-open{display:block;background:var(--surface)}.ce-sec-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.ce-sec-h b{color:var(--ink)}.ce-link{border:0;background:none;color:var(--coral-600,var(--coral));font:inherit;font-size:.88rem;font-weight:700;cursor:pointer;padding:0}.ce-help{margin:6px 0 0;color:var(--muted);font-size:.8rem;line-height:1.6}.ce-help code{padding:1px 5px;border-radius:5px;background:var(--surface-2);font-size:.78rem}.ce-team{margin-top:8px}.ce-team-h{margin:20px 0 8px;font-family:var(--font-display);font-size:1rem;color:var(--ink)}.ce-team-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:6px;gap:6px}.ce-team-list>li{border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden}.ce-team-row{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:0;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.ce-team-n{flex:none;color:var(--muted);font-weight:700;min-width:18px}.ce-team-t{flex:1 1;font-weight:700}.ce-team-s{color:var(--muted);font-size:.82rem;white-space:nowrap}.ce-team-body{display:grid;grid-gap:14px;gap:14px;padding:4px 14px 16px}.ce-note-field{min-width:0}.ce-note-h{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 10px;margin-bottom:6px}.ce-note-h b{color:var(--ink)}.ce-note-h small{color:var(--muted);font-size:.78rem}.ce-readonly{margin:0;white-space:pre-wrap;color:var(--text);line-height:1.55}@media (max-width:640px){.ce-grid{grid-template-columns:1fr}.ce-card{padding:14px}}.ce-cond{display:inline-flex;align-items:center;gap:6px;max-width:100%;white-space:normal;text-align:left;cursor:default}.ce-cond button{border:0;background:none;color:inherit;font:inherit;font-size:1rem;line-height:1;cursor:pointer;opacity:.7;padding:0}.ce-cond-add{display:flex;align-items:center;gap:10px;margin-top:6px}.ce-cond-add input{flex:1 1}.ce-cond-hits{display:grid;grid-gap:4px;gap:4px;margin-top:4px}.ce-cond-hits button{padding:7px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--ink);font:inherit;font-size:.85rem;text-align:left;cursor:pointer}.ce-cond-hits button:hover{border-color:var(--coral)}.cp-headrow{position:relative}.cp-headrow.has-switch .crumbs{padding-right:150px}.ce-switch{position:absolute;top:-3px;right:0;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:4px 4px 4px 10px;border:0;border-radius:var(--pill);background:transparent;color:var(--muted);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer;transition:color .15s,background .15s}.ce-switch:hover{color:var(--ink);background:var(--surface-2)}.ce-switch:focus-visible{outline:2px solid var(--coral);outline-offset:2px}.ce-switch-track{position:relative;flex:none;width:30px;height:18px;border-radius:999px;background:var(--line-strong,var(--line));transition:background .2s}.ce-switch-knob{position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform .2s}.ce-switch.is-on{color:var(--ink)}.ce-switch.is-on .ce-switch-track{background:var(--coral)}.ce-switch.is-on .ce-switch-knob{transform:translateX(12px)}.ce-banner{display:flex;gap:8px;align-items:baseline;margin:14px 0 0;padding:10px 14px;border-radius:14px;background:color-mix(in srgb,var(--coral) 10%,var(--surface));color:var(--ink);font-size:.9rem;line-height:1.45}.ce-banner>span{color:var(--coral);font-weight:800}@media (max-width:560px){.cp-headrow.has-switch .crumbs{padding-right:76px}.ce-switch{top:-9px;min-height:40px;padding:4px 6px 4px 10px}.ce-switch-l{display:none}.ce-switch:before{content:"✎";font-size:.95rem}.ce-switch.is-on:before{color:var(--coral)}.ce-banner{font-size:.85rem;padding:9px 12px}}.ce-team-row{cursor:default}.ce-team-body{gap:8px;padding:0 14px 14px 44px}.ce-item{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;min-width:0}.ce-item-l{flex:none;width:104px;color:var(--muted);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.ce-item-v{display:flex;flex-wrap:wrap;gap:8px 12px;flex:1 1}.ce-attach,.ce-item-v{align-items:center;min-width:0}.ce-attach{display:inline-flex;gap:8px;max-width:100%;padding:7px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);color:var(--ink);text-decoration:none}.ce-attach:hover{border-color:var(--ink)}.ce-attach.is-empty{background:transparent;border-style:dashed;color:var(--muted)}.ce-attach-t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ce-attach small{flex:none;color:var(--muted);font-weight:400;font-size:.78rem}.ce-add{padding:6px 12px;border:1px dashed var(--line-strong,var(--line));border-radius:12px;background:transparent;color:var(--muted);font:inherit;font-size:.85rem;font-weight:700;cursor:pointer}.ce-add:hover{border-color:var(--ink);color:var(--ink)}.ce-link.is-muted{color:var(--muted);font-weight:400}.ce-url input{flex:1 1;min-width:180px;padding:7px 10px;border:1.5px solid var(--line);border-radius:10px;background:var(--input-bg,var(--surface));color:var(--ink);font:inherit;font-size:.9rem}.ce-url input:focus{outline:none;border-color:var(--coral)}.ce-sched{margin-top:26px;border-style:solid;border-color:var(--line)}@media (max-width:560px){.ce-team-body{padding:0 12px 12px}.ce-item-l{width:100%}}.ce-attach{font:inherit;font-size:.9rem;font-weight:700;cursor:pointer}.fu-backdrop{position:fixed;inset:0;z-index:10050;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--overlay,hsla(0,0%,8%,.45));animation:fu-fade .15s ease-out}.fu-modal{display:flex;flex-direction:column;width:100%;max-width:760px;height:min(780px,100%);border-radius:22px;background:var(--surface);color:var(--text);box-shadow:var(--shadow-lg,0 20px 60px rgba(0,0,0,.25));overflow:hidden;animation:fu-up .2s ease-out}@keyframes fu-fade{0%{opacity:0}}@keyframes fu-up{0%{opacity:0;transform:translateY(14px)}}.fu-head{display:flex;align-items:flex-start;gap:16px;padding:20px 22px 14px}.fu-head-t{flex:1 1;min-width:0}.fu-kicker{display:block;margin-bottom:4px;color:var(--coral);font-size:.75rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.fu-head h2{margin:0;color:var(--ink);font-family:var(--font-display);font-size:1.3rem;line-height:1.25}.fu-x{flex:none;width:36px;height:36px;border:0;border-radius:50%;background:var(--surface-2);color:var(--ink);font-size:.9rem;cursor:pointer}.fu-x:hover{background:var(--line)}.fu-toolbar{display:flex;flex-wrap:wrap;gap:6px;margin:0 22px;padding:5px;border-radius:14px;background:var(--surface-2)}.fu-group{display:flex;gap:1px}.fu-group+.fu-group{padding-left:6px;border-left:1px solid var(--line)}.fu-tool{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 7px;border:0;border-radius:9px;background:transparent;color:var(--ink);font:inherit;font-size:.9rem;font-weight:700;cursor:pointer;transition:background .12s}.fu-tool.is-on,.fu-tool:hover{background:var(--surface)}.fu-tool.is-on{color:var(--coral)}.fu-linkbar{display:flex;gap:8px;margin:8px 22px 0}.fu-linkbar input{flex:1 1;min-width:0;padding:8px 12px;border:1.5px solid var(--coral);border-radius:10px;background:var(--input-bg,var(--surface));color:var(--ink);font:inherit;font-size:.9rem;outline:none}.fu-scroll{flex:1 1;min-height:0;overflow-y:auto;padding:4px 0 8px}.fu-prompts{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:12px 22px 0}.fu-prompts span{color:var(--muted);font-size:.8rem;margin-right:2px}.fu-prompts button{padding:5px 11px;border:1px dashed var(--line-strong,var(--line));border-radius:var(--pill);background:transparent;color:var(--ink);font:inherit;font-size:.82rem;cursor:pointer}.fu-prompts button:hover{border-color:var(--coral);color:var(--coral)}.fu-doc{min-height:100%;padding:14px 24px 24px;outline:none;color:var(--text);font-size:1rem;line-height:1.65}.fu-doc:empty:before{content:attr(data-placeholder);color:var(--muted);pointer-events:none}.fu-doc h2{margin:18px 0 8px;font-family:var(--font-display);font-size:1.25rem;color:var(--ink)}.fu-doc h3{margin:16px 0 6px;font-size:1.05rem;color:var(--ink)}.fu-doc>:first-child{margin-top:0}.fu-doc p{margin:0 0 10px}.fu-doc ol,.fu-doc ul{margin:0 0 10px;padding-left:22px}.fu-doc blockquote{margin:0 0 10px;padding:6px 14px;border-left:3px solid var(--coral);color:var(--ink);background:var(--surface-2);border-radius:0 10px 10px 0}.fu-doc img{display:block;max-width:100%;height:auto;margin:10px 0;border-radius:12px}.fu-doc a{color:var(--coral-600,var(--coral))}.fu-doc hr{border:0;margin:16px 0}.fu-doc hr,.fu-foot{border-top:1px solid var(--line)}.fu-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;padding:12px 22px 16px}.fu-status{color:var(--muted);font-size:.82rem;min-width:0}.fu-status.is-ok{color:var(--ok);font-weight:700}.fu-status.is-err{color:var(--danger);font-weight:700}.fu-foot-b{display:flex;gap:8px;margin-left:auto}.fu-mini{padding:9px 18px;border:1.5px solid var(--line);border-radius:var(--pill);background:transparent;color:var(--ink);font:inherit;font-size:.9rem;font-weight:700;cursor:pointer}.fu-mini:hover{border-color:var(--ink)}.fu-mini.is-primary{border-color:var(--coral);background:var(--coral);color:#fff}.fu-mini.is-primary:hover{background:var(--coral-600,var(--coral))}.fu-mini:disabled{opacity:.5;cursor:default}@media (max-width:640px){.fu-backdrop{padding:0;align-items:flex-end}.fu-modal{max-width:none;height:calc(100% - 24px);border-radius:20px 20px 0 0}.fu-head{padding:16px 16px 10px}.fu-head h2{font-size:1.1rem}.fu-toolbar{margin:0 12px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.fu-toolbar::-webkit-scrollbar{display:none}.fu-linkbar{margin-left:16px;margin-right:16px}.fu-prompts{flex-wrap:nowrap;overflow-x:auto;margin:10px 0 0;padding:0 16px 2px;scrollbar-width:none}.fu-prompts::-webkit-scrollbar{display:none}.fu-prompts button,.fu-prompts span{flex:none;white-space:nowrap}.fu-doc{padding:12px 16px 20px}.fu-foot{padding:10px 16px calc(12px + env(safe-area-inset-bottom))}.fu-status{width:100%}}.fu-byline{margin:6px 0 0;color:var(--muted);font-size:.82rem}.fu-byline b{color:var(--ink);font-weight:700}.fu-outcomes{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin:6px 22px 0}.fu-out{display:flex;flex-direction:column;gap:2px;min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);font-size:inherit;font-weight:inherit;letter-spacing:normal;text-transform:none;color:var(--text);transition:border-color .15s,background .15s}.fu-out:focus-within{border-color:var(--ink);background:var(--surface)}.fu-out-l{display:flex;align-items:center;gap:6px;color:var(--ink);font-size:.92rem;font-weight:700}.fu-out-l i{margin-left:auto;padding:1px 8px;border-radius:var(--pill);background:var(--surface);color:var(--muted);font-size:.7rem;font-style:normal;font-weight:600}.fu-out:focus-within .fu-out-l i{background:var(--surface-2)}.fu-out small{color:var(--muted);font-size:.8rem;margin-bottom:6px}.fu-out textarea{width:100%;padding:0;border:0;border-radius:0;background:transparent;color:var(--ink);font:inherit;font-size:.95rem;line-height:1.5;resize:vertical;text-transform:none;letter-spacing:normal}.fu-out textarea:focus{outline:none}.fu-out textarea::placeholder{color:var(--muted);opacity:.8}.fu-out-v{margin:0;color:var(--text);font-size:.95rem;line-height:1.5;white-space:pre-wrap}.fu-notes-h{margin:18px 22px 8px;color:var(--ink);font-size:.88rem;font-weight:800}.fu-notes-h small{margin-left:6px;color:var(--muted);font-weight:400}.fu-scroll .fu-toolbar{position:-webkit-sticky;position:sticky;top:0;z-index:1}@media (max-width:640px){.fu-outcomes{grid-template-columns:1fr;margin:4px 16px 0}.fu-notes-h{margin-left:16px;margin-right:16px}}html{scroll-padding-top:84px}.lr-backdrop{position:fixed;inset:0;z-index:10060;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--overlay,hsla(0,0%,8%,.45));animation:fu-fade .15s ease-out}.lr-modal{width:100%;max-width:460px;max-height:100%;overflow-y:auto;padding:22px;border-radius:22px;background:var(--surface);color:var(--text);box-shadow:var(--shadow-lg,0 20px 60px rgba(0,0,0,.25));animation:fu-up .2s ease-out}.lr-modal h2{margin:0;color:var(--ink);font-family:var(--font-display);font-size:1.2rem}.lr-course{margin:4px 0 0;color:var(--ink);font-weight:700}.lr-hint{margin:6px 0 14px;color:var(--muted);font-size:.85rem;line-height:1.45}.lr-opts{display:grid;grid-gap:6px;gap:6px}.lr-opt{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;font-size:.92rem;text-align:left;cursor:pointer}.lr-opt.is-on,.lr-opt:hover{border-color:var(--ink)}.lr-opt.is-on{background:var(--surface-2);font-weight:700}.lr-dot{flex:none;width:16px;height:16px;border:1.5px solid var(--line-strong,var(--line));border-radius:50%}.lr-opt.is-on .lr-dot{border:5px solid var(--ink)}.lr-note{width:100%;margin-top:10px;padding:9px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;font-size:.92rem;resize:vertical}.lr-note:focus{outline:none;border-color:var(--ink)}.lr-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.lr-btn{padding:9px 18px;border:1.5px solid var(--line);border-radius:var(--pill);background:transparent;color:var(--ink);font:inherit;font-size:.9rem;font-weight:700;cursor:pointer}.lr-btn.is-primary,.lr-btn:hover{border-color:var(--ink)}.lr-btn.is-primary{background:var(--ink);color:var(--bg)}.lr-btn:disabled{opacity:.45;cursor:default}@media (max-width:560px){.lr-backdrop{align-items:flex-end;padding:0}.lr-modal{border-radius:20px 20px 0 0;padding-bottom:calc(18px + env(safe-area-inset-bottom))}}.cpp-left{margin-top:28px;padding-top:18px;border-top:1px solid var(--line)}.cpp-left-h{display:flex;align-items:center;gap:8px;margin:0;color:var(--ink);font-size:1rem}.cpp-left-h span{padding:1px 8px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.78rem}.cpp-left-note{margin:4px 0 12px;color:var(--muted);font-size:.8rem}.cpp-left-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:8px;gap:8px}.cpp-left-row{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.cpp-left-main{flex:1 1;min-width:0}.cpp-left-top{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.cpp-left-top b{color:var(--ink)}.cpp-left-top time{margin-left:auto;color:var(--muted);font-size:.8rem}.cpp-left-reason{margin:4px 0 0;color:var(--text);font-size:.92rem;line-height:1.45}.cpp-left-reason.is-empty{color:var(--muted);font-style:italic}.cpp-left-by{margin:2px 0 0;color:var(--muted);font-size:.8rem}.fu-mini.is-danger{margin-right:auto;border-color:transparent;color:var(--danger)}.fu-mini.is-danger:hover{border-color:var(--danger)}.ce-trash{margin-top:18px;border:1px dashed var(--line-strong,var(--line));border-radius:16px}.ce-trash-h{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;width:100%;padding:12px 14px;border:0;background:none;color:var(--ink);font:inherit;font-size:.92rem;font-weight:700;text-align:left;cursor:pointer}.ce-trash-h small{flex-basis:100%;font-weight:400}.ce-trash-h small,.ce-trash-n{color:var(--muted);font-size:.78rem}.ce-trash-n{padding:0 8px;border-radius:var(--pill);background:var(--surface-2)}.ce-trash-t{margin-left:auto;color:var(--muted)}.ce-trash-list{list-style:none;margin:0;padding:0 14px 12px;display:grid;grid-gap:8px;gap:8px}.ce-trash-list li{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:var(--surface-2)}.ce-trash-main{flex:1 1;min-width:0}.ce-trash-main b{color:var(--ink);font-size:.88rem}.ce-trash-main p{margin:2px 0;color:var(--text);font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ce-trash-main small{color:var(--muted);font-size:.76rem}.re{border:1.5px solid var(--line);border-radius:16px;background:var(--surface);overflow:hidden}.re:focus-within{border-color:var(--ink)}.re-toolbar{margin:0;border-radius:0;border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;z-index:1}.re-linkbar{margin:8px 12px 0}.re-doc{min-height:180px;max-height:70vh;overflow-y:auto;padding:14px 16px 18px}.re-media{position:relative;margin:10px 0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.re-img img{display:block;max-width:100%;max-height:360px;border-radius:12px}.re-img figcaption{margin-top:4px;color:var(--muted);font-size:.82rem}.re-card{display:flex;align-items:center;gap:10px;padding:10px 40px 10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.re-ico{flex:none;font-size:1.15rem}.re-card-t{display:flex;flex-direction:column;min-width:0}.re-card-t b{color:var(--ink);font-size:.92rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.re-card-t small{color:var(--muted);font-size:.78rem}.re-x{position:absolute;top:6px;right:6px;width:26px;height:26px;border:0;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-size:.75rem;cursor:pointer;opacity:0;transition:opacity .15s}.re-card .re-x{background:var(--line);color:var(--ink);top:50%;transform:translateY(-50%)}.re-media:hover .re-x,.re-x:focus{opacity:1}@media (hover:none){.re-x{opacity:1}}.re-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;padding:10px 12px;border-top:1px solid var(--line);background:var(--surface-2)}.re-status{color:var(--muted);font-size:.8rem}.re-status.is-err{color:var(--danger);font-weight:700}.re-foot-b{display:flex;gap:8px;margin-left:auto}.ce-newlesson{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:10px;padding:14px;border:1.5px dashed var(--line-strong,var(--line));border-radius:16px;background:transparent;color:var(--muted);font:inherit;font-size:.95rem;font-weight:700;cursor:pointer}.ce-newlesson:hover{border-color:var(--ink);color:var(--ink)}.ce-newlesson span{font-size:1.1rem}.ce-newlesson-form{margin-top:10px}.les-fold-meta{margin-left:10px;color:var(--muted);font-size:.82rem;font-weight:600;white-space:nowrap}.les-fold-meta.is-soon{color:var(--coral-600,var(--coral))}@media (max-width:560px){.les-fold-meta{white-space:normal}}.home-hello{margin-bottom:24px}.home-hello .home-date{margin:4px 0 0;color:var(--muted);font-size:1rem}.home-day{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);grid-gap:28px;gap:28px;align-items:start}.md{flex-direction:column;gap:26px;min-width:0}.md,.md-h{display:flex}.md-h{align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 10px;color:var(--muted);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}.md-h,.md-h a{font-weight:700}.md-h a{color:var(--coral-600,var(--coral));font-size:.92rem;letter-spacing:0;text-transform:none;white-space:nowrap}.md-now{display:flex;flex-direction:column;gap:4px;width:100%;padding:18px 20px;border:0;border-radius:20px;background:color-mix(in srgb,var(--coral) 13%,var(--surface));color:var(--ink);font:inherit;text-align:left;cursor:pointer}.md-now:hover{background:color-mix(in srgb,var(--coral) 18%,var(--surface))}.md-now small{color:var(--coral-600,var(--coral));font-size:.85rem;font-weight:700}.md-now b{font-family:var(--font-display);font-size:clamp(1.1rem,3.2vw,1.35rem);font-weight:700;line-height:1.25}.md-now span{color:var(--text);font-size:.95rem}.md-zoom{align-self:flex-start;margin-top:6px;color:var(--ink);font-weight:700;text-decoration:underline;-webkit-text-decoration-color:var(--coral);text-decoration-color:var(--coral);text-underline-offset:3px}.md-list{list-style:none;margin:6px 0 0;padding:0}.md-list li{display:grid;grid-template-columns:52px 1fr;grid-gap:10px;gap:10px;align-items:baseline;padding:11px 4px;border-bottom:1px solid var(--line)}.md-list li:last-child{border-bottom:0}.md-list b{color:var(--muted);font-size:.92rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.md-list button{padding:0;border:0;background:none;color:var(--ink);font:inherit;font-size:1rem;font-weight:700;text-align:left;cursor:pointer}.md-list button:hover{text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:3px}.md-list small{display:block;margin-top:2px;color:var(--muted);font-size:.85rem;font-weight:500}.md-list li.is-past{opacity:.5}.md-tasks{list-style:none;margin:0;padding:0;display:grid;grid-gap:8px;gap:8px}.md-tasks a{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface);color:var(--ink);text-decoration:none}.md-tasks a:hover{border-color:var(--ink)}.md-t{display:flex;flex-direction:column;min-width:0;font-weight:700;font-size:.98rem;line-height:1.3}.md-t small{color:var(--muted);font-size:.82rem;font-weight:500}.md-tasks em{margin-left:auto;flex:none;color:var(--muted);font-size:.85rem;font-style:normal;font-weight:700;white-space:nowrap}.md-tasks a.is-soon em{color:var(--coral-600,var(--coral))}.md-empty{margin:0;color:var(--muted)}@media (max-width:760px){.home-day{grid-template-columns:1fr;gap:26px}}.home-day.no-day{grid-template-columns:minmax(0,1fr);max-width:520px}.hf{min-width:0}.hf-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:8px;gap:8px}.hf-list li{gap:6px}.hf-item,.hf-list li{display:flex;align-items:center}.hf-item{flex:1 1;gap:12px;padding:10px 14px;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface);color:var(--ink);text-decoration:none;min-width:0}.hf-item:hover{border-color:var(--ink)}.hf-item .home-icon{width:36px;height:36px;border-radius:11px}.hf-item .home-icon svg{width:19px;height:19px}.hf-t{display:flex;flex-direction:column;font-weight:700;font-size:.98rem;line-height:1.25}.hf-x{flex:none;width:32px;height:32px;border:0;border-radius:50%;background:var(--surface-2);color:var(--ink);cursor:pointer}.hf-x:hover{background:var(--line)}.hf-empty{margin:0 0 8px;color:var(--muted);font-size:.92rem}.hf-edit{margin-top:10px;padding:6px 12px;border:0;border-radius:var(--pill);background:none;color:var(--muted);font:inherit;font-size:.88rem;font-weight:700;cursor:pointer}.hf-edit:hover{color:var(--ink);background:var(--surface-2)}.hf-edit.is-done{margin-top:12px;border:1.5px solid var(--ink);color:var(--ink)}.hf-add{margin-top:14px;padding-top:12px;border-top:1px dashed var(--line-strong,var(--line))}.hf-add-h{margin:0 0 8px;color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.hf-chips{display:flex;flex-wrap:wrap;gap:6px}.hf-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}.hf-chip:hover{border-color:var(--ink)}.hf-chip.is-often{border-color:color-mix(in srgb,var(--coral) 45%,var(--line))}.hf-chip small{padding:1px 7px;border-radius:var(--pill);background:color-mix(in srgb,var(--coral) 14%,var(--surface));color:var(--coral-600,var(--coral));font-size:.72rem;font-weight:700}.home-all{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:8px 28px;gap:8px 28px;margin-top:40px;padding-top:26px;border-top:1px solid var(--line)}.home-all .home-group{margin-bottom:14px}.home-all .home-group-label{margin-bottom:4px;font-size:.72rem}.home-all .home-list{border:0;border-radius:0;background:none}.home-all .home-list .home-item{gap:12px;padding:7px 4px;border-radius:10px}.home-all .home-list .home-item+.home-item{border-top:0}.home-all .home-icon{width:30px;height:30px;border-radius:9px}.home-all .home-icon svg{width:17px;height:17px}.home-all .home-title{font-size:.95rem;font-weight:600}.home-all .home-chev{display:none}.md-tasks a.is-new{border-color:color-mix(in srgb,var(--coral) 45%,var(--line))}.md-badge{display:inline-block;margin-right:8px;padding:1px 8px;border-radius:var(--pill);background:color-mix(in srgb,var(--coral) 14%,var(--surface));color:var(--coral-600,var(--coral));font-size:.72rem;font-weight:700}.md-badge.is-mute{background:var(--surface-2);color:var(--muted)}.tone-blue{--tone:#2f6fd6}.tone-violet{--tone:#7c5cd6}.tone-coral{--tone:var(--coral-600,#e2552f)}.tone-green{--tone:#1e8e5a}.tone-amber{--tone:#b8730d}.tone-gray{--tone:#6b6b6b}:root[data-theme=dark] .tone-blue{--tone:#7fb0ff}:root[data-theme=dark] .tone-violet{--tone:#b39dff}:root[data-theme=dark] .tone-green{--tone:#4cc78b}:root[data-theme=dark] .tone-amber{--tone:#f0b45a}:root[data-theme=dark] .tone-gray{--tone:#a3a19c}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .tone-blue{--tone:#7fb0ff}:root:not([data-theme=light]) .tone-violet{--tone:#b39dff}:root:not([data-theme=light]) .tone-green{--tone:#4cc78b}:root:not([data-theme=light]) .tone-amber{--tone:#f0b45a}:root:not([data-theme=light]) .tone-gray{--tone:#a3a19c}}.hf-item[class*=tone-] .home-icon,.tone-amber .home-icon,.tone-blue .home-icon,.tone-coral .home-icon,.tone-gray .home-icon,.tone-green .home-icon,.tone-violet .home-icon{background:color-mix(in srgb,var(--tone) 14%,var(--surface));color:var(--tone)}.md-h .md-link{padding:4px 12px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.85rem;font-weight:600;text-decoration:none}.md-h .md-link:hover{background:var(--line)}.md-ans{align-items:flex-start!important}.md-ans .cpp-avatar{flex:none;margin-top:2px}.md-course{margin-bottom:1px;color:var(--muted)!important;font-size:.74rem!important;font-weight:700!important;letter-spacing:.04em;text-transform:uppercase}.hf-edit{padding:6px 14px}.md-loading{min-height:220px;border-radius:20px;background:linear-gradient(90deg,var(--surface-2) 25%,color-mix(in srgb,var(--surface-2) 60%,var(--surface)) 50%,var(--surface-2) 75%);background-size:200% 100%;animation:md-shimmer 1.4s ease-in-out infinite}@keyframes md-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (max-width:760px){.md-loading{min-height:140px}}.md-now.is-live{background:color-mix(in srgb,var(--ok) 15%,var(--surface))}.md-now.is-live:hover{background:color-mix(in srgb,var(--ok) 20%,var(--surface))}.md-now.is-live small{color:var(--ok)}.md-tasks a.md-hw{align-items:center}.md-face{flex:none;overflow:hidden}.md-face img{width:100%;height:100%;object-fit:cover}.md-tasks em.md-due{padding:4px 10px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.8rem}.md-tasks a.is-soon em.md-due{background:color-mix(in srgb,var(--coral) 14%,var(--surface));color:var(--coral-600,var(--coral))}.md-h button.md-link{border:0;cursor:pointer;font-family:inherit;letter-spacing:0;text-transform:none}.md-now{background:color-mix(in srgb,var(--ok) 11%,var(--surface))}.md-now:hover{background:color-mix(in srgb,var(--ok) 16%,var(--surface))}.md-now small{color:var(--ok)}.md-now.is-live{background:color-mix(in srgb,var(--ok) 18%,var(--surface))}.md-now.is-live:hover{background:color-mix(in srgb,var(--ok) 23%,var(--surface))}.md-tasks a.md-hw{align-items:flex-start}.md-tasks a.md-hw em.md-due{align-self:flex-start;margin-top:2px}.md-school{list-style:none;margin:4px 0 0;padding:0}.md-school li{display:grid;grid-template-columns:52px 1fr;grid-gap:10px;gap:10px;padding:10px 4px;border-bottom:1px solid var(--line)}.md-school li:last-child{border-bottom:0}.md-school li>b{color:var(--muted);font-size:.92rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding-top:2px}.md-school li>b small{display:block;color:var(--ok);font-size:.75rem;font-weight:700}.md-school li>div{display:flex;flex-direction:column;gap:6px;min-width:0}.md-school button{padding:0;border:0;background:none;color:var(--ink);font:inherit;font-size:.97rem;font-weight:700;text-align:left;cursor:pointer}.md-school button:hover{text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:3px}.md-school button small{display:block;margin-top:1px;color:var(--muted);font-size:.83rem;font-weight:500}.md-school li.is-live{margin:0 -8px;padding-inline:12px;border-radius:14px;border-bottom-color:transparent;background:color-mix(in srgb,var(--ok) 12%,var(--surface))}.md-school li.is-live>b{color:var(--ok)}.md-school li.is-past{opacity:.5}.md-badge:not(.is-mute){background:var(--coral);color:#fff}.home-meta b{color:var(--coral-600,var(--coral));font-weight:700}.home-side{display:flex;flex-direction:column;gap:26px;min-width:0}.home-hello-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.hs-panel{margin:0 0 26px;padding:16px 18px;border:1.5px dashed var(--line-strong,var(--line));border-radius:18px}.hs-h{margin:0;font-weight:800;font-size:1rem;color:var(--ink)}.hs-sub{margin:4px 0 10px;color:var(--muted);font-size:.88rem}.hs-panel .hs-opts{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));column-gap:18px}.hs-opts{list-style:none;margin:0;padding:0;display:grid;grid-gap:4px;gap:4px}.hs-opts button{display:flex;align-items:center;gap:12px;width:100%;padding:8px 4px;border:0;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.hs-switch{flex:none;position:relative;width:34px;height:20px;border-radius:999px;background:var(--line);transition:background .15s}.hs-switch:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform .15s}.hs-opts button[aria-checked=true] .hs-switch{background:var(--coral)}.hs-opts button[aria-checked=true] .hs-switch:after{transform:translateX(14px)}.hw{min-width:0}.hw .md-h,.hw-acts{align-items:center}.hw-acts{display:inline-flex;gap:8px}.hw-t{display:flex;flex-direction:column;min-width:0;font-weight:700;font-size:.97rem;line-height:1.3}.hw-t small{margin-top:2px;color:var(--muted);font-size:.83rem;font-weight:500;line-height:1.35}.hw-loading{height:96px;border-radius:16px;background:linear-gradient(90deg,var(--surface-2) 25%,color-mix(in srgb,var(--surface-2) 60%,var(--surface)) 50%,var(--surface-2) 75%);background-size:200% 100%;animation:md-shimmer 1.4s ease-in-out infinite}.hw-note{margin:0 0 10px;color:var(--text);font-size:.92rem;line-height:1.4}.hw-sub{margin:14px 0 8px;color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.hw-seg{display:inline-flex;gap:2px;margin-bottom:12px;padding:3px;border-radius:var(--pill);background:var(--surface-2)}.hw-seg button{padding:5px 12px;border:0;border-radius:var(--pill);background:none;color:var(--muted);font:inherit;font-size:.85rem;font-weight:700;cursor:pointer}.hw-seg button.is-on{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.08)}.hw-big{display:flex;align-items:center;gap:12px;margin:0 0 8px}.hw-big b{font-family:var(--font-display);font-size:2.2rem;line-height:1;color:var(--ink)}.hw-big span{display:flex;flex-direction:column;font-weight:700}.hw-big small{color:var(--muted);font-size:.82rem;font-weight:500}.hw-people{list-style:none;margin:0;padding:0}.hw-people li{display:flex;align-items:flex-start;gap:12px;padding:10px 2px;border-bottom:1px solid var(--line)}.hw-people li:last-child{border-bottom:0}.hw-people .cpp-avatar{flex:none}.hw-people .md-due{margin-left:auto;flex:none}.hw-more{color:var(--muted);font-size:.88rem;justify-content:center}.hw-faces{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));grid-gap:12px 8px;gap:12px 8px}.hw-faces li{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;min-width:0}.hw-faces span{max-width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.84rem;font-weight:700;line-height:1.2;overflow-wrap:anywhere}.hw-faces small{color:var(--muted);font-size:.76rem}.hw-go{background:var(--coral)!important;color:#fff!important}.md-tasks a.md-ans.is-new{border-color:var(--home-line,var(--line))}.md-ans .md-t{font-weight:600;color:var(--text)}.md-ans.is-new .md-t{font-weight:800;color:var(--ink)}.md-ans em{display:inline-flex;align-items:center;gap:6px}.md-dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--coral)}.home .home-hello{max-width:none}.home .home-hello>p{max-width:760px}.hw-seg.is-mini{margin:0;padding:2px}.hw-seg.is-mini button{padding:3px 10px;font-size:.76rem;letter-spacing:0;text-transform:none}.hw-loading.is-short{height:64px}.hw-card{border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface)}.hw-sum{margin:0;padding:12px 14px 10px;font-size:.95rem;color:var(--text)}.hw-sum b{color:var(--ink);font-weight:800}.hw-sum small{display:block;margin-top:2px;color:var(--muted);font-size:.78rem}.hw-truants{list-style:none;margin:0;padding:0 6px}.hw-truants,.hw-truants>li+li{border-top:1px solid var(--line)}.hw-truant{display:flex;align-items:center;gap:10px;width:100%;padding:8px;border:0;border-radius:10px;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.hw-truant:hover{background:var(--surface-2)}.hw-truant-name{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.93rem;font-weight:700}.hw-truant-days-short{flex:none;color:var(--muted);font-size:.78rem;font-weight:600}.hw-truant b{flex:none;min-width:24px;padding:1px 7px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.8rem;font-weight:800;text-align:center}.is-open>.hw-truant b{background:var(--ink);color:var(--surface)}.hw-truant-days{list-style:none;margin:0 8px 8px;padding:8px 10px;border-radius:10px;background:var(--surface-2);display:grid;grid-gap:6px;gap:6px;font-size:.84rem;line-height:1.35}.hw-truant-days li{display:grid;grid-template-columns:76px 1fr;grid-gap:8px;gap:8px}.hw-truant-days li small{white-space:nowrap}.hw-truant-days small{color:var(--muted);font-size:.78rem;font-weight:700}.hw-card-foot{display:flex;justify-content:space-between;align-items:center;padding:8px 14px 10px;border-top:1px solid var(--line)}.hw-link{padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:.82rem;font-weight:700;text-decoration:none;cursor:pointer}.hw-link:hover{color:var(--ink)}.hw-faces small.is-meet{color:var(--ink);font-weight:700}.home-tabs{margin:-8px 0 24px}.home-all.is-tab{margin-top:0;padding-top:4px;border-top:0}.md-acourses{display:grid;grid-gap:12px;gap:12px}.md-acourse{border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface);overflow:hidden}.md-acourse-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:12px 16px 8px;color:var(--ink);text-decoration:none}.md-acourse-h b{font-size:.98rem;font-weight:800;line-height:1.3}.md-acourse-h small{flex:none;color:var(--muted);font-size:.82rem;font-weight:600}.md-acourse-h:hover b{text-decoration:underline;-webkit-text-decoration-color:var(--line-strong,var(--line));text-decoration-color:var(--line-strong,var(--line));text-underline-offset:3px}.md-acourse-new{color:var(--coral-600,var(--coral));font-weight:700}.md-acourse ul{list-style:none;margin:0;padding:0 8px 6px}.md-arow{display:flex;align-items:flex-start;gap:10px;padding:8px;border-top:1px solid var(--line);color:var(--ink);text-decoration:none}.md-acourse li:first-child .md-arow{border-top:0}.md-arow:hover{background:var(--surface-2);border-radius:10px}.md-arow .cpp-avatar{flex:none}.md-arow .md-t{display:flex;flex-direction:column;min-width:0;font-weight:600;font-size:.95rem;line-height:1.3;color:var(--text)}.md-arow.is-new .md-t{font-weight:800;color:var(--ink)}.md-arow .md-t small{margin-top:2px;font-weight:500}.md-arow .md-t small,.md-arow em{color:var(--muted);font-size:.82rem}.md-arow em{margin-left:auto;flex:none;display:inline-flex;align-items:center;gap:6px;font-style:normal;font-weight:700;white-space:nowrap}.md-acourse-more{display:block;padding:8px 16px 12px;color:var(--muted);font-size:.85rem;font-weight:700;text-decoration:none}.md-acourse-more:hover{color:var(--ink)}button.md-acourse-h{width:100%;align-items:center;padding:12px 14px;border:0;background:none;font:inherit;text-align:left;cursor:pointer}button.md-acourse-h:hover{background:var(--surface-2)}.md-acourse.is-open button.md-acourse-h{padding-bottom:8px}.md-acourse-t{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.md-acourse-t b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.md-acourse-t small{color:var(--muted);font-size:.82rem;font-weight:600}.md-faces{flex:none;display:inline-flex}.md-faces .cpp-avatar{width:28px;height:28px;font-size:.6rem;letter-spacing:0;overflow:hidden;border:2px solid var(--surface)}.md-faces .cpp-avatar+.cpp-avatar{margin-left:-9px}.md-chev{flex:none;color:var(--muted);font-size:1rem;line-height:1;transition:transform .15s}.md-acourse.is-open .md-chev{transform:rotate(180deg)}.md-acourse>.md-acourse-more{border-top:1px solid var(--line);padding-top:10px}.hw-preview{margin:0;padding:0 14px 10px;color:var(--text);font-size:.88rem;line-height:1.4;white-space:normal;overflow:visible;text-overflow:clip}.hw-link.is-strong{color:var(--ink)}.hw-foot-acts{display:inline-flex;gap:14px}.sd{display:grid;grid-gap:22px;gap:22px}.sd-tiles{display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr));grid-gap:10px;gap:10px}@media (max-width:640px){.sd-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.sd-tile{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;padding:12px 14px;border:1.5px solid transparent;border-radius:14px;background:var(--surface-2);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.sd-tile:hover{border-color:var(--line-strong,var(--line))}.sd-tile.is-open{border-color:var(--ink);background:var(--surface)}.sd-tile b{font-family:var(--font-display);font-size:1.6rem;font-weight:700;line-height:1.1}.sd-tile span{color:var(--text);font-size:.86rem;font-weight:600;line-height:1.3}.sd-tile small{color:var(--muted);font-size:.78rem}.sd-tile-skel{width:44px;height:26px;border-radius:8px;background:linear-gradient(90deg,var(--line) 25%,color-mix(in srgb,var(--line) 50%,var(--surface)) 50%,var(--line) 75%);background-size:200% 100%;animation:md-shimmer 1.4s ease-in-out infinite}.sd-panel{margin-top:-10px}.sd-panel .hw>.md-h:first-child{display:none}.sd-panel .hw-truancy>.md-h:first-child{display:flex}.sd-actions ul{list-style:none;margin:0;padding:0 6px;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface)}.sd-actions li+li{border-top:1px solid var(--line)}.sd-act{display:flex;align-items:center;gap:12px;width:100%;padding:10px 8px;border:0;background:none;color:var(--ink);font:inherit;text-align:left;text-decoration:none;cursor:pointer}.sd-act:hover{background:var(--surface-2);border-radius:10px}.sd-act .cpp-avatar{flex:none}.sd-ico svg{width:17px;height:17px}.sd-act-t{flex:1 1;min-width:0;display:flex;flex-direction:column;font-weight:700;font-size:.95rem;line-height:1.3}.sd-act-t small{margin-top:2px;color:var(--muted);font-size:.82rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sd-act em{flex:none;padding:2px 9px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.74rem;font-style:normal;font-weight:700}.sd-favs{display:flex;flex-wrap:wrap;gap:8px}.sd-fav{display:inline-flex;align-items:center;gap:7px;padding:6px 12px 6px 9px;border:1.5px solid var(--home-line,var(--line));border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.85rem;font-weight:700;text-decoration:none;cursor:pointer}.sd-fav svg{width:15px;height:15px}.sd-fav:hover{border-color:var(--ink)}.sd-fav.is-add{border-style:dashed;color:var(--muted);padding-left:12px}.sd .md{gap:18px}.home-edit-ico{display:none;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}@media (max-width:640px){.home-edit-btn{gap:8px;padding:5px 6px 5px 9px}.home-edit-l{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.home-edit-ico{display:block}}.sd{grid-template-columns:minmax(0,1fr)}.sd>*{min-width:0}@media (max-width:640px){.sd-act em{display:none}.sd-act-t small{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.hs-panel{padding:14px}.hs-panel .hs-opts{grid-template-columns:1fr}}.home-edit-btn{flex:none;display:inline-flex;align-items:center;gap:8px;padding:5px 6px 5px 10px;border:0;border-radius:var(--pill);background:transparent;color:var(--muted);font:inherit;font-size:.8rem;font-weight:600;cursor:pointer;transition:color .15s,background .15s}.home-edit-btn:hover{color:var(--ink);background:var(--surface-2)}.home-edit-btn:focus-visible{outline:2px solid var(--coral);outline-offset:2px}.home-edit-btn .ce-switch-track{width:26px;height:16px}.home-edit-btn .ce-switch-knob{top:2px;left:2px;width:12px;height:12px}.home-edit-btn.is-on{color:var(--ink)}.home-edit-btn.is-on .ce-switch-track{background:var(--coral)}.home-edit-btn.is-on .ce-switch-knob{transform:translateX(10px)}@media (max-width:640px){.home-edit-btn{gap:6px;padding:5px 5px 5px 7px}}.md-more-pairs{margin-top:6px;padding:6px 2px;border:0;background:none;color:var(--muted);font:inherit;font-size:.86rem;font-weight:700;cursor:pointer}.md-more-pairs:hover{color:var(--ink)}.sd-list ul{list-style:none;margin:0;padding:4px 6px}.sd-list li+li{border-top:1px solid var(--line)}.sd-act em.is-hot{background:color-mix(in srgb,var(--coral) 14%,var(--surface));color:var(--coral-600,var(--coral))}.sd-act .md-face{flex:none}.beta-btn{padding:7px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.86rem;font-weight:700;cursor:pointer;white-space:nowrap}.beta-btn.is-pri,.beta-btn:hover{border-color:var(--ink)}.beta-btn.is-pri{background:var(--ink);color:var(--surface)}.beta-btn.is-ghost{border-color:transparent;background:none;color:var(--muted)}.beta-btn.is-ghost:hover{color:var(--ink)}.beta-btn.is-on{border-color:var(--ink);background:var(--surface-2)}.beta-tag{padding:1px 8px;border-radius:var(--pill);background:color-mix(in srgb,var(--coral) 14%,var(--surface));color:var(--coral-600,var(--coral));font-weight:700}.beta-modal-bg{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:16px;background:rgba(0,0,0,.35)}.beta-modal{position:relative;width:min(460px,100%);padding:22px 20px 18px;border-radius:20px;background:var(--surface);box-shadow:0 20px 50px rgba(0,0,0,.2)}.beta-modal h3{margin:0 28px 6px 0;font-size:1.1rem;color:var(--ink)}.beta-sub{margin:0 0 12px;color:var(--muted);font-size:.9rem}.beta-reasons{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 12px}.beta-modal textarea{width:100%;padding:10px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;font-size:.92rem;resize:vertical}.beta-err{margin:6px 0 0;color:var(--coral-600,var(--coral));font-size:.84rem}.beta-modal-acts{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.beta-x{position:absolute;top:12px;right:12px;width:32px;height:32px;border:0;border-radius:50%;background:var(--surface-2);color:var(--ink);cursor:pointer}.beta-modal p.beta-err{margin:6px 0 0;color:var(--coral-600,var(--coral));font-size:.84rem;line-height:1.4}.beta-modal p.beta-sub{margin:0 0 12px;color:var(--muted);font-size:.9rem;line-height:1.4}.beta-modal{text-align:left}:root{--brand-blue:#3567ad}:root[data-theme=dark]{--brand-blue:#8ec7ed}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--brand-blue:#8ec7ed}}.beta-invite{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:4px 16px;gap:4px 16px;margin:0 0 22px;padding:16px 18px;border:0;border-radius:18px;background:var(--sky-tint)}.beta-ico{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--sky);color:var(--brand-blue)}.beta-ico svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round}.beta-t{display:flex;flex-direction:column;gap:3px;max-width:620px}.beta-t b{color:var(--ink);font-size:1rem;font-weight:800;line-height:1.25}.beta-t span{color:var(--text);font-size:.9rem;line-height:1.45;text-wrap:pretty}.beta-acts{display:flex;align-items:center;gap:4px}.beta-invite .beta-btn.is-pri{border-color:var(--brand-blue);background:var(--brand-blue);color:#fff}.beta-invite .beta-btn.is-pri:hover{filter:brightness(1.08)}:root[data-theme=dark] .beta-invite .beta-btn.is-pri{color:#0d1b2a}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .beta-invite .beta-btn.is-pri{color:#0d1b2a}}.beta-invite .beta-btn.is-ghost{color:var(--brand-blue)}@media (max-width:640px){.beta-invite{grid-template-columns:auto minmax(0,1fr);align-items:start;padding:14px}.beta-acts{grid-column:1/-1;justify-content:flex-end;margin-top:8px}}@keyframes beta-up{0%{transform:translateY(12px);opacity:0}to{transform:none;opacity:1}}.beta-rater{position:fixed;left:20px;bottom:20px;z-index:55;width:min(340px,calc(100vw - 104px));padding:12px 16px 14px;border-radius:18px;background:var(--surface);box-shadow:0 12px 36px rgba(0,0,0,.16);animation:beta-up .25s ease-out}.beta-rater-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.beta-kicker{color:var(--brand-blue);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.beta-rater .beta-x{position:static;width:26px;height:26px;font-size:.75rem}.beta-rater p.beta-rater-h{margin:0 0 10px;color:var(--ink);font-size:.98rem;font-weight:800;line-height:1.3}.beta-rates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:6px;gap:6px}.beta-chip{padding:8px 10px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.84rem;font-weight:700;cursor:pointer;transition:border-color .15s,background .15s}.beta-chip.is-on,.beta-chip:hover{border-color:var(--brand-blue)}.beta-chip.is-on{background:var(--sky-tint);color:var(--brand-blue)}.beta-rater .beta-reasons{display:flex;flex-wrap:wrap;gap:6px;margin:0}.beta-rater textarea{width:100%;margin-top:10px;padding:8px 10px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;font-size:.88rem;resize:vertical}.beta-rater p.beta-err{margin:6px 0 0;color:var(--coral-600,var(--coral));font-size:.82rem}.beta-rater-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px}.beta-link{padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:.82rem;font-weight:600;text-decoration:underline;-webkit-text-decoration-color:var(--line-strong,var(--line));text-decoration-color:var(--line-strong,var(--line));text-underline-offset:3px;cursor:pointer}.beta-link:hover{color:var(--ink)}.beta-rater .beta-btn.is-pri{border-color:var(--brand-blue);background:var(--brand-blue);color:#fff}.beta-rater-pill{position:fixed;left:20px;bottom:20px;z-index:55;display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:0;border-radius:var(--pill);background:var(--sky-tint);color:var(--brand-blue);font:inherit;font-size:.82rem;font-weight:800;box-shadow:0 6px 18px rgba(0,0,0,.1);cursor:pointer}.beta-rater-pill:hover{filter:brightness(.97)}.beta-dot{width:7px;height:7px;border-radius:50%;background:var(--brand-blue)}@media (max-width:640px){.beta-rater{left:12px;bottom:12px}.beta-rater-pill{left:12px;bottom:18px}}.beta-rater .beta-rates{display:flex;flex-wrap:wrap;gap:6px}.beta-rater .beta-chip{flex:1 1 auto;min-width:0;padding:7px 12px;font-size:.84rem;white-space:nowrap;text-align:center}.beta-rater .beta-reasons .beta-chip{flex:0 1 auto}.beta-rater{width:340px;padding:12px 14px 14px}.beta-kicker{font-size:.68rem;letter-spacing:.06em}@media (max-width:640px){.beta-rater{left:12px;right:12px;bottom:84px;width:auto}.beta-rater-pill{left:12px;bottom:22px}}.beta-rater .beta-rates{flex-wrap:nowrap}.beta-rater .beta-rates .beta-chip{flex:1 1 auto;padding:7px 8px;font-size:.82rem}@media (max-width:360px){.beta-rater .beta-rates .beta-chip{padding:6px;font-size:.78rem}}.home-tabs-row{display:flex;align-items:center;gap:12px;margin:-8px 0 24px;border-bottom:1.5px solid var(--line)}.home-tabs-row .home-tabs{flex:1 1;min-width:0;margin:0 0 -1.5px;border-bottom:0}.hw-truant b.is-unread{background:var(--brand-blue);color:#fff}.hw-fb-text{white-space:pre-line;color:var(--ink)}.hw-truant-days.is-stack li{display:block}.hw-truant-days.is-stack li small{display:block;margin-bottom:2px;white-space:normal}.hw-truant-days.is-stack li+li{padding-top:6px;border-top:1px solid var(--line)}.hw-truant b.is-done,.is-open>.hw-truant b.is-done{background:none;color:var(--muted)}.hw-truant.has-face{gap:10px}.hw-truant.has-face .cpp-avatar{flex:none;width:30px;height:30px;font-size:.68rem}.hw-truant-name small{display:block;color:var(--muted);font-size:.76rem;font-weight:500}.pf-photo{display:flex;align-items:center;gap:16px;margin:0 0 18px;padding:14px 16px;border:1.5px solid var(--home-line,var(--line));border-radius:18px;background:var(--surface)}.pf-photo-img{flex:none;display:grid;place-items:center;width:64px;height:64px;overflow:hidden;border-radius:50%;background:var(--surface-2);color:var(--muted);font-weight:800}.pf-photo-img img{width:100%;height:100%;object-fit:cover}.pf-photo-t{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.pf-photo-t b{color:var(--ink);font-size:.98rem}.pf-photo-t span{color:var(--muted);font-size:.86rem;line-height:1.4}.pf-photo-t small.is-ok{color:var(--ok);font-weight:700}.pf-photo-t small.is-err{color:var(--coral-600,var(--coral));font-weight:700}.pf-photo label.beta-btn{flex:none;cursor:pointer}.pf-photo label.is-busy{opacity:.6;cursor:progress}@media (max-width:640px){.pf-photo{flex-wrap:wrap}.pf-photo label.beta-btn{width:100%;text-align:center}}.pf-photo{max-width:640px}.pf-photo label.beta-btn{text-transform:none;letter-spacing:0;font-size:.86rem}.sd-favs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:2px 28px;gap:2px 28px}.sd-favs-grid .home-item{display:flex;align-items:center;gap:12px;padding:7px 4px;border:0;border-radius:10px;background:none;color:var(--ink);font:inherit;text-align:left;text-decoration:none;cursor:pointer}.sd-favs-grid .home-item:hover{background:var(--surface-2)}.sd-favs-grid .home-icon{width:30px;height:30px;border-radius:9px}.sd-favs-grid .home-icon svg{width:17px;height:17px}.sd-favs-grid .home-title{font-size:.95rem;font-weight:600}.sd-fav-add .home-icon{border:1.5px dashed var(--line-strong,var(--line));background:none;color:var(--muted);font-size:1rem}.sd-fav-add .home-title{color:var(--muted)}:root[data-theme=dark] .hw-card,:root[data-theme=dark] .md-acourse,:root[data-theme=dark] .md-tasks a,:root[data-theme=dark] .sd-actions ul,:root[data-theme=dark] .sd-tile{border-color:var(--line)}:root[data-theme=dark] .sd-tile{background:var(--surface);border:1.5px solid var(--line)}:root[data-theme=dark] .sd-tile.is-open{border-color:var(--ink)}:root[data-theme=dark] .hf-item[class*=tone-] .home-icon,:root[data-theme=dark] .tone-amber .home-icon,:root[data-theme=dark] .tone-blue .home-icon,:root[data-theme=dark] .tone-coral .home-icon,:root[data-theme=dark] .tone-gray .home-icon,:root[data-theme=dark] .tone-green .home-icon,:root[data-theme=dark] .tone-violet .home-icon{background:color-mix(in srgb,var(--tone) 24%,var(--surface))}:root[data-theme=dark] .tone-blue{--tone:#8cbcff}:root[data-theme=dark] .tone-green{--tone:#62d6a0}:root[data-theme=dark] .tone-gray{--tone:#9aa3b0}:root[data-theme=dark] .md-now{background:#1c2a3a}:root[data-theme=dark] .md-now.is-live{background:var(--ok-soft)}:root[data-theme=dark]{--brand-blue:#9fd2f5}:root[data-theme=dark] .beta-invite .beta-btn.is-pri,:root[data-theme=dark] .beta-rater .beta-btn.is-pri{color:#0d1b2a}:root[data-theme=dark] .imp-bar{background:#1b2c40;color:#dbeefc}:root[data-theme=dark] .imp-bar button:hover{background:hsla(0,0%,100%,.08)}.sd-actions ul,.sd-list ul{padding:0;overflow:hidden}.sd-act{padding:12px 16px}.sd-act,.sd-act:hover{border-radius:0}.adm-shell{display:grid;grid-template-columns:230px minmax(0,1fr);grid-gap:24px;gap:24px;align-items:start}.adm-nav{position:-webkit-sticky;position:sticky;top:76px;gap:14px}.adm-nav,.adm-nav-group{display:flex;flex-direction:column}.adm-nav-group{gap:2px}.adm-nav-label{margin:0 0 4px;padding:0 10px;font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.adm-nav-item{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;text-align:left;border:0;background:none;border-radius:10px;padding:8px 10px;font:inherit;font-size:.9rem;font-weight:600;color:var(--ink);cursor:pointer}.adm-nav-item:hover{background:var(--surface-2)}.adm-nav-item.is-active{background:color-mix(in srgb,var(--coral) 14%,var(--surface));color:var(--coral-600)}.adm-content{min-width:0}@media (max-width:820px){.adm-shell{grid-template-columns:1fr;gap:14px}.adm-nav{position:static;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;gap:8px;padding-bottom:4px}.adm-nav-group{flex-direction:row;gap:4px;flex:0 0 auto}.adm-nav-label{display:none}.adm-nav-item{width:auto;white-space:nowrap;border:1.5px solid var(--line);border-radius:var(--pill);padding:7px 12px;flex:0 0 auto}}.adm-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:10px;gap:10px}.adm-stat{display:flex;flex-direction:column;gap:2px;text-align:left;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);padding:12px 14px;cursor:pointer;font:inherit}.adm-stat:hover{border-color:var(--coral)}.adm-stat-v{font-family:var(--font-display);font-size:1.35rem;font-weight:700;color:var(--ink)}.adm-stat-l{font-size:.8rem;color:var(--muted)}.adm-stat-h{font-size:.72rem;color:var(--muted)}.adm-attn{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;margin-top:8px;border-radius:12px;border:1.5px solid var(--coral);background:color-mix(in srgb,var(--coral) 8%,var(--surface))}.adm-attn.is-soft{border-color:var(--line);background:var(--surface-2)}.adm-status{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:2px 4px 8px}.adm-badge{padding:2px 9px;border-radius:var(--pill);background:var(--icon-tint);color:var(--coral-600);font-size:.72rem;font-weight:700}.adm-status-panel{flex-basis:100%;display:flex;flex-direction:column;gap:6px;padding:10px 12px;border-radius:12px;background:var(--surface-2)}.frm-admin{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding-top:10px;border-top:1.5px dashed var(--line)}.frm-admin-l{font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.adm-cyc-group{margin-top:12px}.adm-cyc-group h4{margin:0 0 6px;font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.adm-cyc-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:7px 0;border-top:1.5px solid var(--line)}.adm-cyc-name{min-width:170px;font-size:.9rem}.adm-cyc-badges{display:inline-flex;gap:4px;min-width:150px}.adm-cyc-dates{display:inline-flex;align-items:center;gap:6px}.adm-cyc-dates input{width:auto!important;padding:5px 8px;font-size:.82rem}.adm-cyc-btns{display:inline-flex;gap:6px;margin-left:auto}.adm-cyc-archive{margin-top:14px}.adm-cyc-archive summary{cursor:pointer;font-weight:700;color:var(--ink)}.adm-badge.is-cur{background:var(--coral);color:#fff}.adm-badge.is-next{background:var(--sky-tint,#dbeafe);color:var(--sky-ink,#1e40af)}.adm-badge.is-now{background:var(--ok-soft,#dcfce7);color:var(--ok,#166534)}.adm-badge.is-soft{background:var(--surface-2);color:var(--muted)}.adm-side{position:-webkit-sticky;position:sticky;top:76px;display:flex;flex-direction:column;gap:14px;min-width:0}.adm-side .adm-nav{position:static}.adm-search{position:relative;z-index:40}.adm-search-field{display:flex;align-items:center;gap:8px;height:40px;padding:0 8px 0 12px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--input-bg);color:var(--muted);cursor:text;text-transform:none;letter-spacing:0;font-size:.9rem;transition:border-color .12s ease}.adm-search-field:hover{border-color:var(--line-strong)}.adm-search-field:focus-within{border-color:var(--ink)}.adm-search-field input{flex:1 1;min-width:0;height:100%;padding:0;border:0!important;outline:none;box-shadow:none!important;background:transparent!important;color:var(--ink);font:inherit;font-size:.9rem;font-weight:600}.adm-search-field input::placeholder{color:var(--muted);font-weight:600}.adm-search-field:focus-within .adm-search-kbd{visibility:hidden}.adm-search-clear{display:grid;place-items:center;width:26px;height:26px;border:0;border-radius:50%;background:var(--surface-2);color:var(--muted);font-size:.72rem;cursor:pointer}.adm-search-clear:hover{color:var(--ink)}.adm-search-res{position:absolute;left:0;top:calc(100% + 6px);width:min(440px,calc(100vw - 32px));border:1.5px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 14px 34px rgba(0,0,0,.14);overflow:hidden}.adm-search-res ul{list-style:none;margin:0;padding:0 6px 6px;max-height:min(420px,60vh);overflow-y:auto}.adm-search-cap{margin:0;padding:10px 16px 6px;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.adm-search-item{display:flex;flex-direction:column;gap:2px;padding:9px 10px;border-radius:10px;cursor:pointer}.adm-search-item.is-active{background:color-mix(in srgb,var(--coral) 10%,var(--surface))}.adm-search-item b{font-size:.9rem;font-weight:700;color:var(--ink)}.adm-search-item b mark{background:none;color:var(--coral-600)}.adm-search-item span{font-size:.76rem;color:var(--muted)}.adm-search-keys{display:flex;align-items:center;gap:4px;margin:0;padding:8px 16px;border-top:1px solid var(--line);background:var(--surface-2);font-size:.72rem;color:var(--muted)}.adm-search-keys kbd{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border:1px solid var(--line);border-radius:6px;background:var(--surface);font:inherit;font-weight:700}.adm-search-empty{padding:14px 16px}.adm-search-empty p{margin:0;font-size:.88rem;color:var(--ink)}.adm-search-try{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px!important;color:var(--muted)!important;font-size:.8rem!important}.adm-search-try button{border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);padding:4px 10px;font:inherit;font-weight:600;color:var(--ink);cursor:pointer}.adm-search-try button:hover{border-color:var(--ink)}@media (max-width:820px){.adm-side{position:static;gap:10px}.adm-search-res{width:100%}.adm-search-kbd,.adm-search-keys{display:none!important}.adm-search-item{padding:11px 10px}}.adm-flash{animation:adm-flash 2.4s ease;border-radius:14px}@keyframes adm-flash{0%,to{box-shadow:0 0 0 0 transparent}15%,70%{box-shadow:0 0 0 4px color-mix(in srgb,var(--coral) 55%,transparent);background-color:color-mix(in srgb,var(--coral) 8%,var(--surface))}}.adm-role-card{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:12px 0;border-top:1.5px solid var(--line)}.sv-form{display:flex;flex-direction:column;gap:16px}.sv-q-label{margin:0 0 6px;font-weight:700;color:var(--ink)}.sv-req{color:var(--coral-600)}.sv-who{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:4px 14px;gap:4px 14px;margin-bottom:12px}.sv-form input[type=text],.sv-form textarea,.sv-who input{width:100%}.dm-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 18px;border-bottom:1.5px solid var(--line)}.dm-tab{border:0;background:none;padding:10px 14px;font:inherit;font-weight:700;color:var(--muted);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-1.5px}.dm-tab.is-active{color:var(--ink);border-bottom-color:var(--coral)}.dm-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:12px;gap:12px}.dm-card{text-align:left;border:1.5px solid var(--line);border-radius:16px;background:var(--surface);padding:14px 16px;cursor:pointer;font:inherit;display:flex;flex-direction:column;gap:6px}.dm-card:hover{border-color:var(--coral)}.dm-card h3{margin:0;font-family:var(--font-display);font-size:1rem;color:var(--ink)}.dm-card p{margin:0;font-size:.86rem;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.dm-post{border-top:1.5px solid var(--line);padding:12px 0}.dm-post h4{margin:0 0 4px;font-size:.98rem}.dm-post-meta{font-size:.76rem;color:var(--muted);margin-bottom:6px}.dm-post-text{white-space:pre-wrap;margin:0}.sv-fieldrow{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px;padding:12px;border:1.5px solid var(--line);border-radius:14px;margin-bottom:10px;background:var(--surface-2)}.sv-table{width:100%;border-collapse:collapse;font-size:.82rem}.sv-table td,.sv-table th{text-align:left;padding:6px 8px;border-top:1px solid var(--line);vertical-align:top}.sv-table-wrap{overflow-x:auto}.home-sv{margin:14px 0;border:1.5px solid var(--line);border-radius:16px;background:var(--surface)}.home-sv-head{width:100%;display:flex;align-items:center;gap:8px;border:0;background:none;padding:12px 16px;font:inherit;font-weight:700;color:var(--ink);cursor:pointer}.home-sv-head small{margin-left:auto;color:var(--muted);font-weight:600}.home-sv-body{padding:0 16px 14px;display:flex;flex-direction:column;gap:8px}.home-sv-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid var(--line)}.sv-me{display:flex;flex-direction:column;gap:2px;padding:10px 14px;margin-bottom:14px;border-radius:12px;background:var(--surface-2);border:1.5px solid var(--line)}.sv-me-l{font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.rm-wrap{overflow-x:auto}.rm-table{border-collapse:separate;border-spacing:0;width:100%;font-size:.82rem}.rm-table td,.rm-table th{padding:7px 10px;border-top:1px solid var(--line);text-align:center;vertical-align:middle;min-width:108px}.rm-table .rm-first{text-align:left;min-width:260px;max-width:320px;position:-webkit-sticky;position:sticky;left:0;background:var(--surface);z-index:1}.rm-table .rm-first small{display:block;color:var(--muted);font-size:.72rem}.rm-table thead th{border-top:0;vertical-align:bottom;background:var(--surface)}.rm-table th.is-changed{background:color-mix(in srgb,var(--coral) 12%,var(--surface))}.rm-head{display:flex;flex-direction:column;align-items:center;gap:3px}.rm-head small{color:var(--muted);font-size:.7rem;font-weight:500}.rm-head-btns{display:inline-flex;gap:4px}.rm-group td{text-align:left;font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);background:var(--surface-2)}.rm-table td.has{background:color-mix(in srgb,var(--ok,#16a34a) 9%,var(--surface))}.rm-table select{max-width:130px;font-size:.78rem;padding:3px 6px}.kb-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;align-items:start}@media (max-width:760px){.kb-board{grid-template-columns:1fr}}.kb-col{border:1.5px solid var(--line);border-radius:16px;padding:10px;min-height:120px;display:flex;flex-direction:column;gap:8px}.kb-col.is-over{border-color:var(--coral);background:color-mix(in srgb,var(--coral) 8%,var(--surface-2))}.kb-col h4{margin:0 0 2px;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);justify-content:space-between}.kb-card{background:var(--surface);border:1.5px solid var(--line);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:6px;cursor:-webkit-grab;cursor:grab}.kb-card:active{cursor:-webkit-grabbing;cursor:grabbing}.kb-desc{margin:0;font-size:.82rem;color:var(--muted);white-space:pre-wrap}.kb-meta{display:flex;flex-wrap:wrap;gap:4px}.kb-actions{gap:4px}.kb-empty{margin:0;font-size:.8rem;color:var(--muted)}.dm-card-people{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.dm-person{display:inline-flex;align-items:baseline;gap:5px;padding:3px 10px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.82rem;font-weight:600}.dm-person.is-student{background:var(--sky-tint)}.dm-person small{color:var(--muted);font-size:.74rem;font-weight:600}.dm-switch{display:flex;align-items:flex-start;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);cursor:pointer;font-size:.9rem}.dm-switch input{margin-top:3px}.dm-switch small{display:block;font-size:.8rem}.dm-card .adm-badge{align-self:flex-start}.dm-cm-card{display:flex;flex-direction:column;gap:8px;text-align:left}.dm-faces{display:flex;align-items:center;flex-wrap:wrap;gap:0}.dm-faces>span{display:inline-flex}.dm-faces .cpp-avatar{width:30px;height:30px;font-size:.66rem;border:2px solid var(--surface);overflow:hidden}.dm-faces>span+span{margin-left:-8px}.dm-faces em{margin-left:4px;font-style:normal;font-weight:700}.dm-faces em,.dm-faces small{color:var(--muted);font-size:.8rem}.dm-faces small{flex-basis:100%;margin-top:4px}.dm-stats{color:var(--muted);font-size:.84rem}.dm-stats b{color:var(--brand-blue)}.dm-hint{color:var(--muted);font-size:.78rem;letter-spacing:0;text-transform:none;font-weight:600}.dm-people-acts{display:flex;gap:2px;opacity:0;transition:opacity .15s}.dm-people li:hover .dm-people-acts,.dm-people-acts:focus-within{opacity:1}@media (hover:none){.dm-people-acts{opacity:1}}.dm-people-acts button{width:26px;height:26px;border:0;border-radius:50%;background:var(--surface-2);color:var(--ink);font-size:.8rem;cursor:pointer}.dm-feed{display:flex;flex-direction:column;gap:10px}.dm-feed-h{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.dm-feed-h h3{margin:0}.dm-feed-acts{display:inline-flex;align-items:center;gap:8px}.dm-feed-list{display:flex;flex-direction:column;gap:10px}.dm-add-kinds{display:flex;gap:6px;margin-bottom:10px}.dm-status{padding:2px 10px;border:0;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font:inherit;font-size:.76rem;font-weight:700;cursor:pointer}.dm-status:disabled{cursor:default}.dm-status.is-doing{background:var(--sky-tint);color:var(--brand-blue)}.dm-status.is-done{background:var(--ok-soft);color:var(--ok)}.dm-task.is-done h4{color:var(--muted);text-decoration:line-through}.dm-switch,.dm-switch small,.dm-switch span{text-transform:none;letter-spacing:0;font-weight:600;color:var(--ink)}.dm-switch small{color:var(--muted);font-weight:500}.dm-cm{display:flex;flex-direction:column;gap:26px;max-width:860px}.dm-back{align-self:flex-start;padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:.88rem;font-weight:600;cursor:pointer}.dm-back:hover{color:var(--ink)}.dm-cm-head{display:flex;flex-direction:column;gap:8px;margin-top:-10px}.dm-cm-title{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.dm-cm-title h2{margin:0;font-size:clamp(1.35rem,3.4vw,1.8rem)}.dm-cm-desc{margin:0;max-width:680px;color:var(--text);font-size:1rem;line-height:1.55;white-space:pre-line}.dm-cm-edit{gap:12px;padding:16px;border:1.5px solid var(--home-line,var(--line));border-radius:18px;background:var(--surface)}.dm-cm-edit,.dm-field{display:flex;flex-direction:column}.dm-field{gap:4px}.dm-field span{color:var(--muted);font-size:.8rem;font-weight:700}.dm-field input,.dm-field textarea{width:100%;padding:9px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--input-bg,var(--surface));color:var(--ink);font:inherit;font-size:.95rem}.dm-cm-edit .dm-switch{margin-top:0;padding-top:10px}.dm-cm-edit-acts{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.dm-btns{display:inline-flex;gap:8px}.dm-btn{padding:7px 16px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.88rem;font-weight:700;text-transform:none;letter-spacing:0;cursor:pointer}.dm-btn.is-pri,.dm-btn:hover{border-color:var(--ink)}.dm-btn.is-pri{background:var(--ink);color:var(--surface)}.dm-btn:disabled{opacity:.5;cursor:default}.dm-link{padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:.86rem;font-weight:600;text-decoration:underline;-webkit-text-decoration-color:var(--line-strong,var(--line));text-decoration-color:var(--line-strong,var(--line));text-underline-offset:3px;cursor:pointer}.dm-link:hover{color:var(--ink)}.dm-link.is-danger{color:var(--coral-600,var(--coral))}.dm-people{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.dm-people li{display:inline-flex;align-items:center;padding:4px 10px 4px 4px;border-radius:var(--pill);background:var(--surface-2);min-width:0}.dm-people .cpp-avatar{flex:none;width:28px;height:28px;font-size:.64rem;overflow:hidden}.dm-people-t{display:inline-flex;align-items:baseline;gap:6px;color:var(--ink);font-size:.88rem;font-weight:700;white-space:nowrap}.dm-people-t small{color:var(--muted);font-size:.76rem;font-weight:600}.dm-people-acts button{width:22px;height:22px;font-size:.72rem;background:var(--surface)}.dm-add-person{padding:7px 12px;border:1.5px dashed var(--line-strong,var(--line));border-radius:var(--pill);background:none;color:var(--muted);font:inherit;font-size:.86rem;font-weight:700;cursor:pointer}.dm-add-person:hover{color:var(--ink);border-color:var(--ink)}.dm-people-search{display:flex;align-items:flex-start;gap:12px;margin-top:8px}.dm-people-search>div{margin-top:0!important}.dm-add{padding:14px 16px;border:1.5px solid var(--home-line,var(--line));border-radius:18px;background:var(--surface)}.dm-add input[type=text],.dm-add textarea{padding:9px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--input-bg,var(--surface));color:var(--ink);font:inherit}.dm-feed .dm-post{padding:14px 16px;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface)}.dm-feed .adm-mini{padding:0;border:0;background:none;color:var(--muted);font-size:.82rem;font-weight:600;text-decoration:underline;-webkit-text-decoration-color:var(--line-strong,var(--line));text-decoration-color:var(--line-strong,var(--line));text-underline-offset:3px;text-transform:none;letter-spacing:0}.dm-feed .adm-mini:hover{color:var(--ink)}.dm-feed .adm-mini-x{color:var(--coral-600,var(--coral))}.dm-feed h3{font-family:var(--font-sans);font-size:1.05rem}.dm-people .dm-people-acts{display:none;opacity:1}.dm-people .dm-people-acts:focus-within,.dm-people li:hover .dm-people-acts{display:inline-flex}@media (hover:none){.dm-people .dm-people-acts{display:inline-flex}}.dm-cm-title .md-link,.dm-feed-acts .md-link{padding:5px 13px;border:0;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font:inherit;font-size:.85rem;font-weight:600;letter-spacing:0;text-transform:none;cursor:pointer}.dm-cm-title .md-link:hover,.dm-feed-acts .md-link:hover{background:var(--line)}.ask-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:-6px 0 22px;padding:16px 18px;border-radius:18px;background:var(--sky-tint)}.ask-cta>div{display:flex;flex-direction:column;gap:2px;min-width:0}.ask-cta b{color:var(--ink);font-size:1rem}.ask-cta span{color:var(--text);font-size:.9rem}.ask-cta .dm-btn.is-pri{border-color:var(--brand-blue);background:var(--brand-blue);color:#fff}:root[data-theme=dark] .ask-cta .dm-btn.is-pri{color:#0d1b2a}.ask-modal{width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto}.ask{display:flex;flex-direction:column;gap:10px}.ask p.ask-from{margin:0;color:var(--muted);font-size:.86rem}.ask p.ask-from b{color:var(--ink)}.ask p.ask-step,.ask-done p.ask-h{margin:6px 0 4px;color:var(--ink);font-size:.95rem;font-weight:800}.ask p.ask-sub,.ask-done p.ask-sub{margin:0 0 8px;color:var(--muted);font-size:.9rem}.ask-targets{display:flex;flex-wrap:wrap;gap:6px}.ask-target{display:inline-flex;flex-direction:column;align-items:flex-start;padding:8px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);font:inherit;font-size:.88rem;font-weight:700;text-align:left;cursor:pointer}.ask-target small{color:var(--muted);font-size:.74rem;font-weight:500}.ask-target:hover{border-color:var(--ink)}.ask-target.is-on{border-color:var(--brand-blue);background:var(--sky-tint);color:var(--brand-blue)}.ask-text{width:100%;padding:10px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--input-bg,var(--surface));color:var(--ink);font:inherit;font-size:.95rem;resize:vertical}.ask p.ask-err{margin:6px 0 0;color:var(--coral-600,var(--coral));font-size:.85rem}.ask-done{gap:4px}.ask-done,.sv{display:flex;flex-direction:column}.sv{gap:14px}.sv-list{list-style:none;margin:0;padding:0 6px;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface)}.sv-list>li{display:flex;align-items:center;gap:10px;padding:12px 10px}.sv-list>li+li{border-top:1px solid var(--line)}.sv-list-t{flex:1 1;min-width:0;display:flex;flex-direction:column;color:var(--ink);font-size:.97rem;font-weight:700;line-height:1.3}.sv-list-t small{margin-top:2px;color:var(--muted);font-size:.82rem;font-weight:500}.sv-list .dm-btn{flex:none;text-decoration:none}.sv-icon{flex:none;width:34px;height:34px;border:0;border-radius:50%;background:var(--surface-2);cursor:pointer;font-size:.9rem}.sv-icon:hover{background:var(--line)}p.sv-msg{margin:0;color:var(--ok);font-size:.86rem;font-weight:700}.sv-manage>li{flex-direction:column;align-items:stretch;gap:6px}.sv-manage-row{display:flex;align-items:center;gap:10px}.sv-state{flex:none;padding:2px 10px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.76rem;font-weight:700}.sv-state.is-open{background:var(--ok-soft);color:var(--ok)}.sv-manage-acts{display:flex;flex-wrap:wrap;gap:14px}.sv .adm-card{border:1.5px solid var(--home-line,var(--line));border-radius:18px;box-shadow:none}.sv .btn-primary{border-radius:var(--pill)}.sv .adm-mini,.sv .btn-primary{text-transform:none;letter-spacing:0}.push-mini{display:inline-flex;align-items:center;gap:6px}.push-mini .home-edit-btn:disabled{opacity:.55;cursor:default}.push-mini-why{padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:.74rem;white-space:nowrap;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-underline-offset:3px;cursor:pointer}.push-mini-why:hover,.push-mini-why[aria-expanded=true]{color:var(--ink)}.push-help-wrap{position:relative;display:inline-flex}.push-help{position:absolute;top:calc(100% + 8px);right:0;z-index:40;width:320px;max-width:calc(100vw - 32px);padding:14px 16px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 14px 34px -14px rgba(20,30,55,.35);color:var(--text);font-size:.86rem;line-height:1.45;text-align:left;white-space:normal}.push-help-x{position:absolute;top:8px;right:8px;width:28px;height:28px;border:0;border-radius:50%;background:none;color:var(--muted);cursor:pointer}.push-help-x:hover{background:var(--surface-2);color:var(--ink)}.push-help-h{margin:0 0 8px;padding-right:24px;color:var(--ink);font-weight:800}.push-help-p{margin:0}.push-help-steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:5px}.push-help-reload{margin-top:12px;font-size:.82rem}@media (max-width:640px){.push-help{position:fixed;top:auto;left:12px;right:12px;bottom:12px;z-index:10050;width:auto;max-width:none;padding:18px 18px 16px}.push-help-reload{width:100%;min-height:42px}}.dm-empty{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:16px 18px;border:1.5px dashed var(--line-strong,var(--line));border-radius:16px}.dm-empty p{margin:0;max-width:560px;color:var(--muted);font-size:.92rem;line-height:1.45}.dm-empty b{color:var(--ink)}p.dm-empty-line{margin:0;color:var(--muted);font-size:.9rem}.home-sv2{margin:0 0 22px}p.home-ask{margin:-6px 0 18px;color:var(--muted);font-size:.9rem}p.home-ask a{color:var(--brand-blue);font-weight:700}.sv .adm-field label,.sv .adm-field>span,.sv .adm-hint,.sv label{text-transform:none;letter-spacing:0}.sv .adm-field label,.sv .adm-field>span{color:var(--muted);font-size:.82rem;font-weight:700}.sv .adm-hint{font-size:.8rem}.sv .adm-field input,.sv .adm-field select,.sv .adm-field textarea,.sv .sv-fieldrow input,.sv .sv-fieldrow select{border-radius:12px}.sv .btn{border-radius:var(--pill);text-transform:none;letter-spacing:0}.sv .dm-feed-acts{flex-wrap:wrap;justify-content:flex-end}.dm-cm{max-width:none;gap:28px}.dm-cm-head{margin-top:6px}.dm-cm-desc{max-width:720px}.dm-people-acts button.dm-people-txt{width:auto;padding:0 8px;border-radius:var(--pill);font-size:.72rem;font-weight:700}.dm-compose{border:1.5px solid var(--home-line,var(--line));border-radius:18px;background:var(--surface)}.dm-compose-pick{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px}.dm-compose-pick>span{margin-right:4px;color:var(--muted);font-size:.86rem;font-weight:700}.dm-compose-kind{display:inline-flex;flex-direction:column;align-items:flex-start;gap:1px;padding:8px 14px;border:0;border-radius:14px;background:var(--surface-2);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.dm-compose-kind b{font-size:.9rem}.dm-compose-kind small{color:var(--muted);font-size:.74rem}.dm-compose-kind:hover{background:var(--line)}.dm-compose-form{display:flex;flex-direction:column;gap:10px;padding:14px 16px 16px}.dm-compose-tabs{display:inline-flex;align-self:flex-start;gap:2px;padding:3px;border-radius:var(--pill);background:var(--surface-2)}.dm-compose-tabs button{padding:5px 14px;border:0;border-radius:var(--pill);background:none;color:var(--muted);font:inherit;font-size:.85rem;font-weight:700;cursor:pointer}.dm-compose-tabs button.is-on{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.08)}.dm-compose-form input[type=date],.dm-compose-form input[type=text],.dm-compose-form select,.dm-compose-form textarea{width:100%;padding:9px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--input-bg,var(--surface));color:var(--ink);font:inherit;font-size:.95rem}.dm-compose-form textarea{resize:vertical}.dm-compose-row{display:grid;grid-template-columns:1fr 180px;grid-gap:10px;gap:10px}.dm-compose-row label{display:flex;flex-direction:column;gap:4px;text-transform:none;letter-spacing:0}.dm-compose-row label>span{color:var(--muted);font-size:.8rem;font-weight:700}.dm-compose-extras{display:flex;flex-direction:column;gap:8px}.dm-compose-links{display:flex;gap:16px;flex-wrap:wrap}.dm-files{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.dm-files li{display:inline-flex;align-items:center;gap:6px;padding:4px 6px 4px 10px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.82rem}.dm-files button{width:20px;height:20px;border:0;border-radius:50%;background:var(--surface);color:var(--muted);font-size:.68rem;cursor:pointer}.dm-compose-acts{display:flex;align-items:center;justify-content:flex-end;gap:8px}.dm-compose-acts small{margin-right:auto;color:var(--muted);font-size:.76rem}@media (max-width:640px){.dm-compose-row{grid-template-columns:1fr}.dm-compose-acts small{display:none}}.dm-uo-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-gap:28px;gap:28px;align-items:start}@media (max-width:900px){.dm-uo-grid{grid-template-columns:1fr}.dm-uo-aside{order:-1}}.dm-uo-aside{gap:22px}.dm-uo-aside,.dm-uo-box{display:flex;flex-direction:column}.dm-uo-box{gap:8px}.dm-uo-cms,.dm-uo-rq{list-style:none;margin:0;padding:0 4px;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface)}.dm-uo-cms li,.dm-uo-rq li{padding:10px}.dm-uo-cms li+li,.dm-uo-rq li+li{border-top:1px solid var(--line)}p.dm-uo-rq-meta{margin:0;color:var(--muted);font-size:.8rem}p.dm-uo-rq-meta b,p.dm-uo-rq-text{color:var(--ink)}p.dm-uo-rq-text{margin:3px 0 0;font-size:.9rem;line-height:1.45;white-space:pre-line}.dm-uo-rq small{color:var(--muted);font-size:.76rem}.dm-uo-cms button{display:flex;align-items:center;gap:8px;width:100%;padding:0;border:0;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.dm-uo-cm-t{flex:1 1;min-width:0;display:flex;flex-direction:column;font-size:.92rem;font-weight:700}.dm-uo-cm-t small{color:var(--muted);font-size:.76rem;font-weight:500}.dm-uo-cms button:hover .dm-uo-cm-t{text-decoration:underline;text-underline-offset:3px}.dm-uo-new{flex:none;padding:2px 8px;border-radius:var(--pill);background:var(--ok-soft);color:var(--ok);font-size:.72rem;font-style:normal;font-weight:700}.dm-uo-cms .dm-faces{flex:none;flex-wrap:nowrap}.dm-uo-cms .dm-faces .cpp-avatar{width:24px;height:24px;font-size:.56rem}.dm-compose-kind{flex-direction:row;padding:7px 14px;border-radius:var(--pill);font-size:.88rem;font-weight:700}.dm-compose-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dm-compose-hint{color:var(--muted);font-size:.8rem}.dm-compose-form input.dm-compose-title{font-weight:700}.dm-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:12px;gap:12px}.dm-tile{display:flex;flex-direction:column;min-height:188px;border:1.5px solid var(--home-line,var(--line));border-radius:18px;background:var(--surface);transition:border-color .15s,box-shadow .15s}.dm-tile:hover{border-color:var(--line-strong,var(--line));box-shadow:0 4px 14px rgba(20,30,50,.06)}.dm-tile.is-open{grid-column:1/-1;min-height:0}.dm-tile-hit{flex:1 1;display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:14px 16px 6px;border:0;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.dm-tile-top{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:2px}.dm-tile-kind{padding:2px 9px;border-radius:var(--pill);font-size:.72rem;font-weight:800;letter-spacing:.02em}.dm-tile-kind.k-followup{background:var(--sky-tint);color:var(--brand-blue)}.dm-tile-kind.k-report{background:var(--ok-soft);color:var(--ok)}.dm-tile-kind.k-task{background:color-mix(in srgb,var(--coral) 16%,transparent);color:var(--coral-600,var(--coral))}.dm-tile-tag{padding:2px 8px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.72rem;font-weight:700}.dm-tile-tag.is-late{background:color-mix(in srgb,var(--coral) 16%,transparent);color:var(--coral-600,var(--coral))}.dm-tile-title{font-size:1rem;font-weight:800;line-height:1.3;-webkit-line-clamp:2}.dm-tile-text,.dm-tile-title{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.dm-tile-text{color:var(--text);font-size:.88rem;line-height:1.45;white-space:pre-line;-webkit-line-clamp:3}.dm-tile.is-open .dm-tile-text,.dm-tile.is-open .dm-tile-title{display:block;-webkit-line-clamp:unset;overflow:visible}.dm-tile-more{display:flex;flex-direction:column;gap:8px;padding:2px 16px 6px}.dm-tile-more .dm-files a{color:var(--ink);text-decoration:none}.dm-tile-more .dm-files li{padding-right:10px}.dm-tile-more .dm-files small,p.dm-tile-note{color:var(--muted)}p.dm-tile-note{margin:0;font-size:.8rem}.dm-tile-acts{display:flex;gap:16px;flex-wrap:wrap}.dm-tile-share{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.dm-tile-foot{display:flex;justify-content:space-between;padding:10px 16px 12px;border-top:1px solid var(--line)}.dm-tile-foot,.dm-who{align-items:center;gap:8px}.dm-who{display:inline-flex;min-width:0}.dm-who .cpp-avatar{flex:none;width:30px;height:30px;font-size:.66rem;overflow:hidden}.dm-who>span{display:flex;flex-direction:column;min-width:0;line-height:1.2}.dm-who b{overflow:hidden;color:var(--ink);font-size:.84rem;text-overflow:ellipsis;white-space:nowrap}.dm-who small{color:var(--muted);font-size:.74rem}.dm-who.is-none{color:var(--muted);font-size:.8rem}.dm-tile-foot .dm-status{flex:none}.dm-people{display:grid;grid-template-columns:repeat(auto-fill,minmax(124px,1fr));grid-gap:10px;gap:10px}.dm-people li{position:relative;flex-direction:column;justify-content:flex-start;gap:8px;padding:14px 8px 12px;border:1.5px solid var(--home-line,var(--line));border-radius:18px;background:var(--surface);text-align:center}.dm-people .cpp-avatar{width:56px;height:56px;font-size:.95rem}.dm-people-t{flex-direction:column;align-items:center;gap:2px;white-space:normal;font-size:.86rem;line-height:1.25}.dm-people-t small{padding:1px 8px;border-radius:var(--pill);background:var(--surface-2);font-size:.72rem}.dm-people li.is-head{border-color:var(--sky)}.dm-people li.is-head .dm-people-t small{background:var(--sky-tint);color:var(--brand-blue)}.dm-people .dm-people-acts{position:absolute;top:6px;right:6px;flex-direction:column;align-items:flex-end;gap:4px}.dm-people .dm-people-acts button{background:var(--surface-2)}.dm-people li.dm-people-add{padding:0;border:0;background:none}.dm-people li.dm-people-add .dm-add-person{width:100%;height:100%;min-height:124px;border-radius:18px}@media (max-width:520px){.dm-people{grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}.dm-people .cpp-avatar{width:46px;height:46px}}.dm-uo-grid{margin-top:6px}.dm-uo-main{min-width:0}.dm-uo-main .dm-cm-head{margin-top:0}.dm-uo-aside{position:-webkit-sticky;position:sticky;top:84px}@media (max-width:900px){.dm-uo-aside{position:static;order:1}}.dm-seg{display:inline-flex;align-self:flex-start;flex-wrap:wrap;gap:2px;padding:3px;border-radius:var(--pill);background:var(--surface-2)}.dm-seg button{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:0;border-radius:var(--pill);background:none;color:var(--muted);font:inherit;font-size:.86rem;font-weight:700;cursor:pointer}.dm-seg button span{color:var(--muted);font-size:.76rem;font-weight:600;opacity:.8}.dm-seg button.is-on{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.08)}.dm-seg button:hover:not(.is-on){color:var(--ink)}.dm-seg.is-small button{padding:4px 12px;font-size:.8rem}.dm-tile{position:relative}.dm-tile-del{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:50%;background:var(--surface-2);color:var(--muted);cursor:pointer;opacity:0;transition:opacity .15s,color .15s}.dm-tile-del:focus-visible,.dm-tile.is-open .dm-tile-del,.dm-tile:hover .dm-tile-del{opacity:1}@media (hover:none){.dm-tile-del{opacity:1}}.dm-tile-del:hover{color:var(--coral-600,var(--coral));background:color-mix(in srgb,var(--coral) 14%,transparent)}.dm-tile-confirm{position:absolute;top:8px;right:8px;z-index:1;display:inline-flex;align-items:center;gap:6px;padding:4px 4px 4px 12px;border-radius:var(--pill);background:var(--surface);box-shadow:0 4px 14px rgba(20,30,50,.14);color:var(--ink);font-size:.8rem;font-weight:700}.dm-tile-confirm button{padding:4px 10px;border:0;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font:inherit;cursor:pointer}.dm-tile-confirm button.is-yes{background:var(--coral-600,var(--coral));color:#fff}.dm-tile-hit{padding-right:46px}.dm-link:focus-visible,.dm-tile-hit:focus-visible{outline:2px solid var(--sky);outline-offset:2px;border-radius:8px}.dm-tile-confirm{left:8px;justify-content:flex-end;white-space:nowrap}.dm-tile-confirm>:first-child{margin-right:auto}.ask-cta{background:#16181d}.ask-cta b{color:#fff}.ask-cta span{color:hsla(0,0%,100%,.72)}.ask-cta .dm-btn.is-pri{border-color:#fff;background:#fff;color:#16181d}.ask-cta .dm-btn.is-pri:hover{background:hsla(0,0%,100%,.88)}:root[data-theme=dark] .ask-cta{background:#fff}:root[data-theme=dark] .ask-cta b{color:#16181d}:root[data-theme=dark] .ask-cta span{color:rgba(22,24,29,.68)}:root[data-theme=dark] .ask-cta .dm-btn.is-pri{border-color:#16181d;background:#16181d;color:#fff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .ask-cta{background:#fff}:root:not([data-theme=light]):not([data-theme=dark]) .ask-cta b{color:#16181d}:root:not([data-theme=light]):not([data-theme=dark]) .ask-cta span{color:rgba(22,24,29,.68)}:root:not([data-theme=light]):not([data-theme=dark]) .ask-cta .dm-btn.is-pri{border-color:#16181d;background:#16181d;color:#fff}}.rq-list{list-style:none;margin:0;padding:0 4px;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface)}.rq-item{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:12px 10px}.rq-item+.rq-item{border-top:1px solid var(--line)}.rq-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;width:100%}p.rq-meta{margin:0;color:var(--muted);font-size:.8rem}p.rq-meta b,p.rq-text{color:var(--ink)}p.rq-text{margin:0;font-size:.92rem;line-height:1.45;white-space:pre-line}.rq-status{flex:none;padding:2px 9px;border-radius:var(--pill);background:color-mix(in srgb,var(--coral) 16%,transparent);color:var(--coral-600,var(--coral));font-size:.72rem;font-weight:800}.rq-status.is-accepted{background:var(--surface-2);color:var(--ink)}.rq-status.is-doing{background:var(--sky-tint);color:var(--brand-blue)}.rq-status.is-resolved{background:var(--ok-soft);color:var(--ok)}.rq-item.is-resolved p.rq-text{color:var(--muted)}.rq-thread{list-style:none;margin:2px 0 0;padding:0 0 0 12px;border-left:2px solid var(--sky);display:flex;flex-direction:column;gap:6px;width:100%}p.rq-thread-meta{margin:0;color:var(--muted);font-size:.76rem}p.rq-thread-meta b{color:var(--ink)}p.rq-thread-text{margin:1px 0 0;color:var(--ink);font-size:.88rem;line-height:1.45;white-space:pre-line}.rq-reply{display:flex;flex-direction:column;gap:8px;width:100%}.rq-reply textarea{width:100%;padding:9px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--input-bg,var(--surface));color:var(--ink);font:inherit;font-size:.9rem;resize:vertical}.rq-reply-acts{display:flex;align-items:center;justify-content:flex-end;gap:8px}.rq-reply-acts small{margin-right:auto;overflow:hidden;color:var(--muted);font-size:.74rem;text-overflow:ellipsis;white-space:nowrap}p.rq-wait{margin:0;color:var(--muted);font-size:.8rem}.rq-mine{display:flex;flex-direction:column;gap:8px;margin:-10px 0 22px}.rq-mine-h{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;border:1.5px solid var(--home-line,var(--line));border-radius:14px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.rq-mine-h>span:first-child{display:flex;flex-direction:column}.rq-mine-h b{font-size:.92rem}.rq-mine-h small{color:var(--muted);font-size:.78rem}.cs-list li{display:flex;align-items:center;gap:10px}.cs-list li.is-closed{opacity:.7}.cs-t{flex:1 1;min-width:0;display:flex;flex-direction:column;color:var(--ink);font-size:.9rem;font-weight:700}.cs-t small{color:var(--muted);font-size:.76rem;font-weight:500}.cs-list .dm-btn{flex:none;padding:5px 12px;font-size:.8rem;text-decoration:none}.cs-new{align-self:flex-start}p.sv-q-hint{margin:-2px 0 6px;color:var(--muted);font-size:.84rem;line-height:1.45;white-space:pre-line}.sv .sv-hint-input{font-size:.86rem}.sv-form .adm-row-toggle{display:flex;align-items:center;gap:10px;margin:0 0 6px;padding:9px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font-size:.92rem;font-weight:600;letter-spacing:0;text-transform:none;cursor:pointer}.sv-form .adm-row-toggle:hover{border-color:var(--line-strong,var(--ink))}.sv-form .adm-row-toggle:has(input:checked){border-color:var(--brand-blue);background:var(--sky-tint)}.sv-form .adm-row-toggle input{accent-color:var(--brand-blue)}.sv-form input[type=text],.sv-form textarea{width:100%;padding:10px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--input-bg,var(--surface));color:var(--ink);font:inherit}.sv-form .btn-primary{border-radius:var(--pill);text-transform:none;letter-spacing:0}.sv-page .page-head,.sv-page>.adm-card,.sv-page>.rg-state{max-width:720px}.sv-page>.rg-state{text-align:left}.sv-page>.adm-card{border-radius:20px}p.sv-page-from{margin:0 0 4px;color:var(--brand-blue);font-size:.8rem;font-weight:800}p.sv-page-desc{margin:0 0 12px;color:var(--text);font-size:.95rem;line-height:1.5}.dm-addp{display:flex;flex-direction:column;gap:10px;max-width:520px;margin-top:12px;padding:14px;border:1.5px solid var(--home-line,var(--line));border-radius:18px;background:var(--surface);box-shadow:0 6px 22px rgba(20,30,50,.07)}.dm-addp-h{display:flex;align-items:center;justify-content:space-between}.dm-addp-h b{color:var(--ink);font-size:.95rem}.dm-addp-x{width:28px;height:28px;border:0;border-radius:50%;background:var(--surface-2);color:var(--muted);cursor:pointer}.dm-addp-search{display:flex;align-items:center;gap:8px;padding:0 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--input-bg,var(--surface));color:var(--muted);text-transform:none;letter-spacing:0}.dm-addp-search:focus-within{border-color:var(--brand-blue)}.dm-addp-search input{flex:1 1;min-width:0;padding:10px 0;border:0;background:none;color:var(--ink);font:inherit;font-size:.95rem;outline:none}p.dm-addp-hint{margin:0;color:var(--muted);font-size:.82rem}.dm-addp-res{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:300px;overflow:auto}.dm-addp-res button{display:flex;align-items:center;gap:10px;width:100%;padding:7px 8px;border:0;border-radius:12px;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.dm-addp-res button:hover:not(:disabled){background:var(--surface-2)}.dm-addp-res button:disabled{cursor:default;opacity:.6}.dm-addp-res .cpp-avatar{flex:none;width:34px;height:34px;font-size:.72rem}.dm-addp-t{flex:1 1;min-width:0;display:flex;flex-direction:column;font-size:.92rem;font-weight:700}.dm-addp-t small{color:var(--muted);font-size:.76rem;font-weight:500}.dm-addp-act{flex:none;padding:4px 11px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.78rem;font-weight:700}.dm-addp-res button:hover:not(:disabled) .dm-addp-act{background:var(--ink);color:var(--surface)}.dm-addp-act.is-done{background:var(--ok-soft);color:var(--ok)}p.dm-addp-ok{margin:0;color:var(--ok);font-size:.84rem;font-weight:700}.dm-people-search{display:block}.kb-board{gap:14px}.kb-col{gap:10px;padding:12px;border:0;border-radius:18px;background:var(--surface-2);min-height:140px}.kb-col.is-over{outline:2px dashed var(--brand-blue);outline-offset:-2px;background:var(--sky-tint)}.kb-col h4{display:flex;align-items:center;gap:8px;margin:2px 4px 4px;color:var(--ink);font-size:.9rem;font-weight:800;letter-spacing:0;text-transform:none}.kb-col h4 span{margin-left:auto;padding:1px 9px;border-radius:var(--pill);background:var(--surface);color:var(--muted);font-size:.76rem}.kb-dot{width:9px;height:9px;border-radius:50%;background:var(--coral)}.kb-dot.is-doing{background:var(--brand-blue)}.kb-dot.is-done{background:var(--ok)}.kb-card{position:relative;gap:8px;padding:12px 14px;border:1.5px solid transparent;border-radius:14px;box-shadow:0 1px 3px rgba(20,30,50,.06)}.kb-card:hover{border-color:var(--line)}.kb-card.is-done .kb-title{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:var(--line-strong,var(--muted));text-decoration-color:var(--line-strong,var(--muted))}.kb-title{color:var(--ink);font-size:.95rem;line-height:1.3}.kb-desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line}.kb-foot{display:flex;justify-content:space-between;gap:8px}.kb-foot,.kb-who{align-items:center}.kb-who{display:inline-flex;gap:6px;min-width:0;color:var(--ink);font-size:.8rem;font-weight:700}.kb-who .cpp-avatar{flex:none;width:24px;height:24px;font-size:.56rem;overflow:hidden}.kb-who.is-none{color:var(--muted);font-weight:500}.kb-due{flex:none;padding:2px 8px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.74rem;font-weight:700}.kb-due.is-late{background:color-mix(in srgb,var(--coral) 16%,transparent);color:var(--coral-600,var(--coral))}.kb-actions{position:absolute;top:8px;right:8px;display:flex;gap:2px;padding:2px;border-radius:var(--pill);background:var(--surface);box-shadow:0 2px 8px rgba(20,30,50,.1);opacity:0;transition:opacity .15s}.kb-actions:focus-within,.kb-card:hover .kb-actions{opacity:1}@media (hover:none){.kb-actions{position:static;align-self:flex-end;opacity:1;box-shadow:none}}.kb-actions button{display:grid;place-items:center;width:26px;height:26px;border:0;border-radius:50%;background:none;color:var(--ink);font:inherit;font-size:.95rem;cursor:pointer}.kb-actions button:hover:not(:disabled){background:var(--surface-2)}.kb-actions button:disabled{opacity:.3;cursor:default}.kb-actions button.is-del:hover{color:var(--coral-600,var(--coral))}.kb-confirm{display:flex;align-items:center;gap:6px;font-size:.8rem;font-weight:700}.kb-confirm span{margin-right:auto}.kb-confirm button{padding:4px 10px;border:0;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font:inherit;cursor:pointer}.kb-confirm button.is-yes{background:var(--coral-600,var(--coral));color:#fff}.kb-empty{padding:14px 6px;border:1.5px dashed var(--line);border-radius:12px;text-align:center}.ask-cta-acts{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ask-cta-mine{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border:1.5px solid hsla(0,0%,100%,.3);border-radius:var(--pill);background:none;color:#fff;font:inherit;font-size:.86rem;font-weight:700;cursor:pointer}.ask-cta-mine:hover{border-color:#fff}.ask-cta-mine i{padding:1px 7px;border-radius:var(--pill);background:#4cc78b;color:#0d1b12;font-size:.72rem;font-style:normal}:root[data-theme=dark] .ask-cta-mine{border-color:rgba(22,24,29,.25);color:#16181d}:root[data-theme=dark] .ask-cta-mine:hover{border-color:#16181d}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .ask-cta-mine{border-color:rgba(22,24,29,.25);color:#16181d}}.rq-mine-list{border:0;padding:0}.rq-mine-list .rq-item{padding:12px 0}@media (max-width:640px){.ask-cta{padding:14px}.ask-cta-acts{width:100%}.ask-cta-acts .dm-btn.is-pri{flex:1 1;text-align:center}}.ask-cta>div:first-child{flex:1 1 280px}@media (min-width:641px){.ask-cta-acts{flex:none;flex-wrap:nowrap}}.kb-board{grid-template-columns:repeat(3,minmax(180px,1fr));overflow-x:auto;padding-bottom:2px}@media (max-width:760px){.kb-board{grid-template-columns:repeat(3,minmax(220px,78vw));scroll-snap-type:x mandatory}.kb-col{scroll-snap-align:start}}.kb-foot{flex-wrap:wrap}.kb-who{flex:1 1 auto}@media (max-width:640px){.dm-tabs{flex-wrap:wrap;gap:6px;margin:4px 0 16px;padding:0;border-bottom:0}.dm-tab{flex:none;margin:0;padding:7px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);font-size:.88rem}.dm-tab.is-active{border-color:var(--ink);background:var(--ink);color:var(--surface)}.dm-seg{max-width:100%;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.dm-seg button{flex:none}.dm-feed-h{align-items:flex-start}.dm-tiles{grid-template-columns:1fr}.dm-tile{min-height:0}.dm-addp{max-width:none}.rq-reply-acts{flex-wrap:wrap}}@media (hover:none){.dm-people .dm-people-acts{display:none}.dm-people li:focus-within .dm-people-acts{display:inline-flex}}.dm-people li:focus{outline:2px solid var(--sky);outline-offset:1px}@media (max-width:640px){.ask-cta-acts{flex-direction:column-reverse;align-items:stretch}.ask-cta-mine{justify-content:center}.sv .dm-feed-h{flex-direction:column;align-items:stretch;gap:8px}.sv .dm-feed-acts{justify-content:space-between;flex-wrap:nowrap}.sv .push-mini{min-width:0;flex-wrap:wrap}.sv-list>li{flex-wrap:wrap}.sv-list>li>.sv-list-t{flex:1 1 100%}.sv-list>li>.sv-icon{margin-left:auto}.sv-list>li>.dm-btn{flex:1 1;text-align:center}.sv-manage>li{flex-wrap:nowrap}.sv-manage-acts{gap:6px 14px}}.rq-head{align-items:center}.rq-head>.cpp-avatar{flex:none;width:32px;height:32px;font-size:.68rem;overflow:hidden}.rq-head p.rq-meta{flex:1 1;min-width:0;display:flex;flex-direction:column;line-height:1.25}.rq-head p.rq-meta b{color:var(--ink);font-size:.88rem}.rq-head p.rq-meta small{color:var(--muted);font-size:.76rem}.rq-details{display:flex;flex-direction:column;gap:6px;width:100%}p.rq-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0}.rq-topic{padding:2px 9px;border-radius:var(--pill);background:var(--sky-tint);color:var(--brand-blue);font-size:.74rem;font-weight:700}.rq-contact{color:var(--muted);font-size:.78rem}.rq-slot{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border-radius:12px;background:var(--surface-2)}.rq-slot b{color:var(--ink);font-size:.9rem}.rq-slot small{color:var(--muted);font-size:.78rem}.rq-slot p{margin:0;color:var(--text);font-size:.86rem;line-height:1.4}.rq-slot p.rq-slot-when{color:var(--muted);font-size:.78rem}.rq-slot-state{align-self:flex-start;margin-top:4px;padding:2px 9px;border-radius:var(--pill);background:var(--surface);color:var(--muted);font-size:.74rem;font-weight:700}.rq-slot-state.is-on{background:var(--ok-soft);color:var(--ok)}.rq-thread{border-left:0;padding:0;gap:8px}.rq-thread li{display:flex;gap:8px}.rq-thread li>.cpp-avatar{flex:none;width:24px;height:24px;font-size:.56rem;overflow:hidden}.rq-thread li>div{flex:1 1;min-width:0;padding:7px 10px;border-radius:4px 12px 12px 12px;background:var(--sky-tint)}.rq-thread li.is-note>div{background:var(--surface-2);border:1px dashed var(--line-strong,var(--line))}.rq-note-tag{margin-left:6px;color:var(--muted);font-size:.7rem;font-weight:700}.rq-acts{display:flex;gap:16px}.rq-status-pick{display:flex;align-items:center;flex-wrap:wrap;gap:4px}.rq-status-pick>span{margin-right:4px;color:var(--muted);font-size:.78rem;font-weight:700}.rq-status-pick button{border:1.5px solid transparent;font:inherit;font-size:.72rem;font-weight:800;cursor:pointer;opacity:.55}.rq-status-pick button.is-cur{border-color:currentColor;opacity:1}.rq-status-pick button:hover{opacity:1}.ask-mine-link{align-self:flex-start;margin-top:8px}.ask-edu,.ask-slot{display:flex;flex-direction:column;gap:12px}.ask-slot{padding:14px;border-radius:16px;background:var(--surface-2)}.ask-field{display:flex;flex-direction:column;gap:6px;text-transform:none;letter-spacing:0}.ask-field>span{color:var(--ink);font-size:.86rem;font-weight:800}.ask-field input,.ask-field textarea{width:100%;padding:9px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--input-bg,var(--surface));color:var(--ink);font:inherit;font-size:.93rem}.ask-field textarea{resize:vertical}.ask-chips{display:flex;flex-wrap:wrap;gap:6px}.ask-chips .ask-target{padding:6px 12px;font-size:.84rem}.mb{gap:22px}.mb,.mb-bank{display:flex;flex-direction:column}.mb-bank{gap:10px}.mb-days{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:10px;gap:10px}.mb-day{padding:12px 14px;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface)}p.mb-day-h{margin:0 0 8px;color:var(--ink);font-size:.86rem;font-weight:800;text-transform:capitalize}.mb-day ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.mb-day li{display:flex;gap:8px;align-items:flex-start}.mb-time{flex:none;padding:2px 8px;border-radius:var(--pill);background:var(--ok-soft);color:var(--ok);font-size:.72rem;font-weight:800}.mb-t{display:flex;flex-direction:column;color:var(--ink);font-size:.86rem;font-weight:700;line-height:1.3}.mb-t small{color:var(--muted);font-size:.74rem;font-weight:500}.mb-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:12px;gap:12px}.mb-card{display:flex;flex-direction:column;padding:14px 16px;border:1.5px solid var(--home-line,var(--line));border-radius:18px;background:var(--surface)}.mb-card:has(.mb-pick){grid-column:1/-1}.mb-card.is-declined{opacity:.7}.mb-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.mb-card-title{color:var(--ink);font-size:1rem;font-weight:800;line-height:1.3}.mb-badge{flex:none;padding:2px 8px;border-radius:var(--pill);background:var(--ok-soft);color:var(--ok);font-size:.72rem;font-weight:800}p.mb-card-teacher{margin:0;color:var(--muted);font-size:.8rem;font-weight:700}p.mb-card-teaser{margin:0;color:var(--text);font-size:.88rem;line-height:1.45}p.mb-card-when{margin:0;color:var(--brand-blue);font-size:.78rem;font-weight:700}p.mb-card-note{margin:0;color:var(--muted);font-size:.8rem;font-style:italic}.mb-card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:10px;border-top:1px solid var(--line)}.mb-card-acts{display:inline-flex;align-items:center;gap:12px}.mb-pick{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:14px;background:var(--surface-2)}p.mb-pick-l{margin:4px 0 0;color:var(--muted);font-size:.78rem;font-weight:800}.sv-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:12px;gap:12px}.sv-tile{display:flex;flex-direction:column;gap:8px;min-height:200px;padding:16px;border-radius:20px;background:var(--surface);border:1.5px solid var(--home-line,var(--line));border-top:5px solid var(--tone,var(--line))}p.sv-tile-from{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0;color:var(--tone,var(--muted));font-size:.78rem;font-weight:800}p.sv-tile-from span{padding:1px 8px;border-radius:var(--pill);background:color-mix(in srgb,var(--tone,var(--muted)) 14%,transparent);font-size:.7rem}.sv-tile h4{margin:0;color:var(--ink);font-size:1.05rem;line-height:1.3}p.sv-tile-desc{margin:0;color:var(--muted);font-size:.86rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.sv-tile footer{display:flex;align-items:center;gap:8px;margin-top:auto}.sv-tile footer small{margin-right:auto;color:var(--muted);font-size:.78rem}.sv-tile .dm-btn{text-decoration:none}@media (max-width:640px){.mb-cards,.sv-tiles{grid-template-columns:1fr}.sv-tile{min-height:0}}p.mb-day-h{text-transform:none}p.mb-day-h:first-letter{text-transform:uppercase}.mb-card-acts{margin-left:auto}.mb-card-acts .dm-btn{white-space:nowrap}.rq-mini{padding:0}.rq-mini-hit{display:flex;flex-direction:column;gap:4px;width:100%;padding:10px;border:0;border-radius:12px;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.rq-mini-hit:hover{background:var(--surface-2)}.rq-mini-top{display:flex;align-items:center;gap:8px;min-width:0}.rq-mini-top .cpp-avatar{flex:none;width:24px;height:24px;font-size:.56rem;overflow:hidden}.rq-mini-top b{overflow:hidden;font-size:.86rem;text-overflow:ellipsis;white-space:nowrap}.rq-mini-top small{flex:none;color:var(--muted);font-size:.74rem}.rq-dot{flex:none;width:8px;height:8px;margin-left:auto;border-radius:50%;background:var(--coral)}.rq-dot.is-accepted{background:var(--muted)}.rq-dot.is-doing{background:var(--brand-blue)}.rq-dot.is-resolved{background:var(--ok)}.rq-mini-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--text);font-size:.88rem;line-height:1.4}.rq-mini-meta{display:flex;gap:10px;color:var(--muted);font-size:.74rem;font-weight:700}.rq-item.is-open{gap:10px}.rq-collapse{flex:none;width:26px;height:26px;border:0;border-radius:50%;background:var(--surface-2);color:var(--muted);cursor:pointer}.rq-acts{align-items:center;flex-wrap:wrap}.rq-acts .dm-btn{padding:5px 14px;font-size:.82rem}.rq-status-pick button{padding:2px 9px}.mb-card{min-width:0}.mb-card-foot{flex-direction:column;align-items:stretch}.mb-card-acts{margin-left:0;justify-content:flex-end;flex-wrap:wrap}.mb-count{margin-left:8px;padding:2px 9px;border-radius:var(--pill);background:color-mix(in srgb,var(--coral) 16%,transparent);color:var(--coral-600,var(--coral));font-family:var(--font-sans);font-size:.74rem;font-weight:800;vertical-align:middle}.mb-bank .dm-feed-acts .md-link{text-decoration:none}.mb-cards{grid-template-columns:1fr;gap:8px}.mb-card{gap:6px;padding:12px 14px;border-radius:16px}.mb-card:hover{border-color:var(--line-strong,var(--line))}.mb-row{display:flex;align-items:flex-start;gap:14px}.mb-date{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;width:58px;padding:6px 0;border-radius:12px;background:var(--sky-tint);color:var(--brand-blue);line-height:1.1}.mb-date b{font-size:1.35rem;font-weight:800}.mb-date small{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.mb-date.is-on{background:var(--ok-soft);color:var(--ok)}.mb-date.is-any{background:var(--surface-2);color:var(--muted)}.mb-date.is-any small{text-transform:none;letter-spacing:0;text-align:center;font-weight:600}.mb-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:3px}.mb-body .mb-card-title{font-size:.98rem}.mb-sub{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px;color:var(--muted);font-size:.78rem}.mb-sub .cpp-avatar{width:18px;height:18px;font-size:.48rem;overflow:hidden}.mb-body .mb-card-teaser{margin-top:2px;font-size:.86rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.mb-more{color:var(--muted);font-size:.74rem}.mb-body .mb-badge{align-self:flex-start;margin-top:4px}.mb-row .mb-card-acts{flex:none;display:flex;align-items:center;gap:6px;margin:0}.mb-row .mb-card-acts .dm-btn{padding:6px 14px;font-size:.82rem}.mb-x{width:30px;height:30px;border:0;border-radius:50%;background:var(--surface-2);color:var(--muted);cursor:pointer}.mb-x:hover{background:color-mix(in srgb,var(--coral) 14%,transparent);color:var(--coral-600,var(--coral))}.mb-contact{color:var(--muted);font-size:.76rem}.mb-card .mb-card-note,.mb-contact{padding-left:72px}.mb-card .mb-pick{margin-left:72px}.mb-bank .dm-feed-h h3{display:flex;align-items:center;gap:4px}@media (max-width:640px){.mb-row{flex-wrap:wrap}.mb-row .mb-card-acts{width:100%;justify-content:flex-end}.mb-card .mb-card-note,.mb-contact{padding-left:0}.mb-card .mb-pick{margin-left:0}}.an{gap:18px}.an,.an-bar{display:flex;flex-direction:column}.an-bar{gap:10px}.an-bodies{display:flex;flex-wrap:wrap;gap:6px}.an-bodies .ask-target{padding:6px 12px;font-size:.84rem}.an-bar-r{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.an-group{display:flex;flex-direction:column;gap:8px}.an-group-h{justify-content:space-between}.an-group-h,.an-group-h h4{display:flex;align-items:center}.an-group-h h4{gap:8px;margin:0;color:var(--ink);font-size:1rem}.an-group-h h4 span{padding:1px 8px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.76rem}.an-list{list-style:none;margin:0;padding:0 4px;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface)}.an-row+.an-row{border-top:1px solid var(--line)}.an-hit{display:flex;align-items:center;gap:10px;width:100%;padding:10px;border:0;border-radius:12px;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.an-hit:hover{background:var(--surface-2)}.an-hit>.cpp-avatar{flex:none;width:32px;height:32px;font-size:.66rem;overflow:hidden}.an-who{flex:0 0 200px;min-width:0;display:flex;flex-direction:column;line-height:1.25}.an-who b{overflow:hidden;font-size:.9rem;text-overflow:ellipsis;white-space:nowrap}.an-who small{color:var(--muted);font-size:.74rem}.an-what{flex:1 1;min-width:0;display:flex;align-items:center;gap:8px}.an-kind{flex:none;padding:2px 8px;border-radius:var(--pill);font-size:.7rem;font-weight:800}.an-kind.is-request{background:color-mix(in srgb,var(--coral) 14%,transparent);color:var(--coral-600,var(--coral))}.an-kind.is-survey{background:var(--sky-tint);color:var(--brand-blue)}.an-what-t{overflow:hidden;color:var(--text);font-size:.88rem;text-overflow:ellipsis;white-space:nowrap}.an-chev{flex:none;color:var(--muted);font-size:.8rem}.an-body{display:flex;flex-direction:column;gap:8px;padding:0 12px 14px 52px}p.an-msg{margin:0;color:var(--ink);font-size:.92rem;line-height:1.5;white-space:pre-line}p.an-foot{margin:0;color:var(--muted);font-size:.78rem}.an-answers{display:flex;flex-direction:column;gap:8px;margin:0}.an-answers dt{color:var(--muted);font-size:.78rem;font-weight:700}.an-answers dd{margin:1px 0 0;color:var(--ink);font-size:.9rem;line-height:1.45;white-space:pre-line}@media (max-width:640px){.an-hit{flex-wrap:wrap}.an-who{flex:1 1 auto}.an-what{flex:1 1 100%;padding-left:42px}.an-body{padding-left:12px}}.an-bar{flex-direction:row;align-items:center;gap:18px;flex-wrap:wrap;padding-bottom:10px;border-bottom:1px solid var(--line)}.an-select{display:inline-flex;align-items:center;gap:8px;text-transform:none;letter-spacing:0}.an-select span{color:var(--muted);font-size:.82rem;font-weight:700}.an-select select{padding:7px 34px 7px 12px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='3'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center;color:var(--ink);font:inherit;font-size:.86rem;font-weight:700;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.an-kinds{display:flex;gap:16px}.an-kinds button{padding:4px 0;border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);font:inherit;font-size:.88rem;font-weight:700;cursor:pointer}.an-kinds button span{color:var(--muted);font-weight:500;opacity:.8}.an-kinds button.is-on{border-bottom-color:var(--ink);color:var(--ink)}.an-csv{margin-left:auto;padding:6px 12px;border:0;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}.an-csv:hover{background:var(--line)}.an-csv:disabled{opacity:.4;cursor:default}.cm-hero{display:flex;flex-direction:column;gap:12px;padding:18px 20px;border:1.5px solid var(--home-line,var(--line));border-radius:22px;background:var(--surface)}.cm-hero-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cm-hero-top h2{margin:0;font-size:clamp(1.3rem,3.2vw,1.7rem)}.cm-role{padding:3px 10px;border-radius:var(--pill);background:var(--sky-tint);color:var(--brand-blue);font-size:.76rem;font-weight:800}.cm-role.is-head{background:var(--ok-soft);color:var(--ok)}.cm-hero-acts{display:inline-flex;align-items:center;gap:8px;margin-left:auto}.cm-hero-acts .md-link{padding:5px 13px;border:0;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}.cm-desc{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.cm-desc .dm-cm-desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.cm-desc.is-open .dm-cm-desc{display:block}.cm-desc-empty{color:var(--muted)}.cm-crew{display:flex;align-items:center;gap:12px;align-self:flex-start;padding:6px 12px 6px 6px;border:0;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.cm-crew:hover{background:var(--line)}.cm-crew .dm-faces{flex-wrap:nowrap}.cm-crew .dm-faces .cpp-avatar{width:30px;height:30px;border-color:var(--surface-2)}.cm-crew-t{display:flex;flex-direction:column;font-size:.88rem;font-weight:800;line-height:1.2}.cm-crew-t small{color:var(--muted);font-size:.74rem;font-weight:600}.cm-crew-chev{color:var(--muted);font-size:.8rem}.dm-cm-head:has(.cm-hero){margin-top:6px}.dm-cm-people{margin-top:-12px}@media (max-width:640px){.cm-hero{padding:14px}.cm-hero-acts{margin-left:0;width:100%}.cm-hero-acts .dm-btn{flex:1 1}}.home-sv2-acts{display:inline-flex;gap:6px}.home-sv2-x{flex:none;width:30px;height:30px;border:0;border-radius:50%;background:none;color:var(--muted);cursor:pointer}.home-sv2-x:hover{background:var(--surface-2);color:var(--ink)}p.home-sv2-undo{margin:8px 0 0;color:var(--muted);font-size:.84rem}.cws-tabs{margin-top:8px}.cws{display:grid;grid-gap:14px;gap:14px;margin-top:14px}.cws-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.cws-search{flex:1 1 180px;max-width:280px;padding:8px 14px;border:1px solid var(--line);border-radius:var(--pill);background:var(--input-bg);color:var(--text);font:inherit;font-size:.9rem}.cws-add{margin-left:auto}.cws-adding{display:grid;grid-gap:8px;gap:8px}.cws-hint{margin:0;color:var(--muted);font-size:.88rem}.cws-list{display:grid;grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none}.cws-row{border:1px solid var(--line);border-radius:16px;background:var(--surface)}.cws-row-head{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1.3fr) auto auto;align-items:center;grid-gap:12px;gap:12px;width:100%;padding:10px 14px;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.cws-ava{flex:none;width:36px;height:36px;border-radius:50%;object-fit:cover}.cws-ava.is-text{display:inline-grid;place-items:center;background:var(--icon-tint);color:var(--coral-600);font-size:.72rem;font-weight:800}.cws-who{display:flex;flex-direction:column;min-width:0}.cws-who strong{color:var(--ink);font-size:.95rem}.cws-who span{color:var(--muted);font-size:.8rem}.cws-new{color:var(--coral-600);font-style:normal;font-weight:700}.cws-chips{display:flex;flex-wrap:wrap;gap:4px;min-width:0}.cws-chip{overflow:hidden;max-width:220px;padding:3px 10px;border-radius:var(--pill);background:var(--surface-2);color:var(--text);font-size:.78rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.cws-chip.is-assigned{background:var(--empty-tint);color:var(--empty-ink)}.cws-chip.is-more,.cws-none{color:var(--muted)}.cws-none{font-size:.8rem}.cws-caret{color:var(--muted);transition:transform .15s}.cws-detail{display:grid;grid-gap:12px;gap:12px;padding:4px 14px 14px;border-top:1px solid var(--line)}.cws-group{display:grid;grid-gap:4px;gap:4px}.cws-group-h{margin:8px 0 2px;color:var(--muted);font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.cws-task{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;grid-gap:10px;gap:10px;padding:6px 0;border-bottom:1px dashed var(--line)}.cws-task:last-child{border-bottom:0}.cws-task-t{color:var(--ink);font-size:.9rem}.cws-task-sub{color:var(--muted);font-size:.8rem}.cws-state{color:var(--muted);font-size:.78rem;font-weight:700;white-space:nowrap}.cws-state.is-done{color:var(--ok)}.cws-state.is-assigned{color:var(--empty-ink)}.cws-state.is-active{color:var(--coral-600)}.cws-state.is-wait{color:var(--af-lav,#6a5ea0)}.cws-person.is-wait{background:color-mix(in srgb,#8a5cf6 10%,var(--surface))}.cws-tcard.is-soon{border-style:dashed}.cws-assign{min-width:112px;padding:5px 12px;border:1.5px solid var(--line-strong);border-radius:var(--pill);background:none;color:var(--ink);font:inherit;font-size:.8rem;font-weight:700;cursor:pointer}.cws-assign:hover{border-color:var(--ink)}.cws-assign.is-on{border-color:transparent;background:var(--surface-2);color:var(--muted)}.cws-link{justify-self:start;padding:5px 12px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.82rem;font-weight:700;text-decoration:none}.cws-tasks{display:grid;grid-gap:6px;gap:6px}.cws-tcard{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:8px 12px;gap:8px 12px;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.cws-tcard header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px}.cws-tcard header strong{color:var(--ink);font-size:.95rem}.cws-tcard header span{color:var(--muted);font-size:.8rem}.cws-people{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px}.cws-person{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 3px;border-radius:var(--pill);background:var(--surface-2);color:var(--text);font-size:.8rem;font-weight:600}.cws-person .cws-ava{width:22px;height:22px;font-size:.6rem}.cws-person.is-done{background:var(--ok-soft);color:var(--ok)}.cws-person.is-assigned{background:var(--empty-tint);color:var(--empty-ink)}.cws-x{padding:0 0 0 2px;border:0;background:none;color:inherit;font-size:.72rem;opacity:.6;cursor:pointer}.cws-x:hover{opacity:1}@media (max-width:640px){.cws-row-head{grid-template-columns:auto minmax(0,1fr) auto}.cws-chips{grid-column:2/-1;grid-row:2}.cws-task{grid-template-columns:minmax(0,1fr) auto}.cws-task .cws-state{grid-column:1;grid-row:2}.cws-add{margin-left:0}.cws-tcard{grid-template-columns:minmax(0,1fr)}}.sp-card-assigned{align-self:flex-start;padding:2px 9px;border-radius:var(--pill);background:var(--empty-tint);color:var(--empty-ink);font-size:.74rem;font-weight:700}.sp-task-embed{display:block;width:100%;border:0;background:transparent}.sd-list.home-sv2 .sv-list{border:0;border-radius:0;background:none}.sv-new{display:inline-block;margin-left:8px;padding:1px 8px;vertical-align:2px;border-radius:var(--pill);background:var(--icon-tint);color:var(--coral-600);font-size:.7rem;font-style:normal;font-weight:800}.sv-empty{margin:0;padding:14px;color:var(--muted);font-size:.9rem}.sd-list.home-sv2 .home-sv2-undo{margin:0;padding:0 14px 10px}.home .home-hello-top{justify-content:flex-start;align-items:center;gap:14px;margin-bottom:14px}.home .home-hello-top h1{margin:0}.home-hello-ava{flex:none;display:grid;place-items:center;width:52px;height:52px;overflow:hidden;border-radius:50%;background:var(--icon-tint);color:var(--coral-600);font-size:1.1rem;font-weight:800;text-decoration:none}.home-hello-ava img{width:100%;height:100%;object-fit:cover}.home-hello-ava:hover{box-shadow:0 0 0 3px var(--line)}.hs-tabs-order{margin-top:4px}.hs-panel+.hs-panel{margin-top:-8px}@media (max-width:640px){.home-hello-ava{width:44px;height:44px;font-size:.95rem}}.sd-cm .md-h,.sd-tile-top{display:flex;justify-content:space-between;align-items:center}.sd-tile-top{align-self:stretch;gap:8px}.sd-tile-emo{font-size:1.25rem;font-style:normal;line-height:1}.mda-list{list-style:none;margin:0;padding:0;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface);overflow:hidden}.mda-list>li{position:relative;border-top:1px solid var(--line)}.mda-list>li:first-child{border-top:0}.mda-row{display:grid;grid-template-columns:58px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:start;width:100%;padding:12px 16px;border:0;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.mda-row:hover{background:var(--surface-2)}.mda-time{display:flex;flex-direction:column;color:var(--ink);font-size:.95rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.3}.mda-time small{color:var(--muted);font-size:.78rem;font-weight:500}.mda-main{display:flex;flex-direction:column;gap:3px;min-width:0}.mda-main b{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:1rem;font-weight:700;line-height:1.3}.mda-where{color:var(--muted);font-size:.84rem}.mda-live,.mda-next{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;font-weight:700}.mda-live{color:var(--ok)}.mda-next{color:var(--coral-600)}.mda-bar{display:inline-block;width:96px;height:5px;overflow:hidden;border-radius:3px;background:var(--ok-soft)}.mda-bar>span{display:block;height:100%;border-radius:3px;background:var(--ok)}.mda-list>li.is-now{background:color-mix(in srgb,var(--ok) 7%,var(--surface))}.mda-list>li.is-now:before{content:"";position:absolute;top:0;bottom:0;left:0;width:4px;background:var(--ok)}.mda-list>li.is-now .mda-time{color:var(--ok)}.mda-list>li.is-past .mda-main b,.mda-list>li.is-past .mda-time{color:var(--muted);font-weight:600}.mda-zoom{display:inline-block;margin:-4px 0 12px 86px}@media (max-width:640px){.mda-row{grid-template-columns:48px minmax(0,1fr);gap:10px;padding:11px 12px}.mda-zoom{margin-left:70px}}.hc .md-h{display:flex;justify-content:space-between;align-items:center}.hc-none{margin:0;padding:14px 16px;border:1.5px dashed var(--line-strong,var(--line));border-radius:16px;color:var(--muted);font-size:.9rem}.hc-pick{display:grid;grid-gap:12px;gap:12px;padding:16px 18px;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface);text-transform:none;letter-spacing:normal}.hc-pick-top{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 12px}.hc-pick-h{margin:0;color:var(--ink);font-size:1rem;font-weight:700}.hc-count{color:var(--muted);font-size:.85rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hc-count.is-full{color:var(--ok)}.hc-search{max-width:320px;padding:8px 14px;border:1px solid var(--line);border-radius:var(--pill);background:var(--input-bg);color:var(--text);font:inherit;font-size:.9rem}.hc-chips{display:flex;flex-wrap:wrap;gap:8px}.hc-chip{display:inline-flex;align-items:center;gap:8px;max-width:100%;padding:7px 14px 7px 8px;border:1.5px solid var(--line-strong,var(--line));border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.9rem;font-weight:600;text-align:left;cursor:pointer}.hc-chip.is-on,.hc-chip:hover{border-color:var(--ink)}.hc-chip.is-on{background:var(--ink);color:var(--surface)}.hc-check{flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--surface-2);color:var(--muted);font-size:.8rem;font-weight:800}.hc-chip.is-on .hc-check{background:var(--ok);color:#fff}.hc-chip-t{display:flex;flex-direction:column;min-width:0;line-height:1.3}.hc-chip-t small{color:var(--muted);font-size:.75rem;font-weight:500}.hc-chip.is-on .hc-chip-t small{color:color-mix(in srgb,var(--surface) 70%,transparent)}.hc-empty{margin:0;color:var(--muted);font-size:.88rem}.hc-msg{margin:0;color:var(--coral-600);font-size:.85rem}.hc-pick-acts{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.hc-auto{margin-left:auto}@media (max-width:640px){.hc-auto{margin-left:0}}.hu-pop{width:min(380px,calc(100vw - 104px))}.hu-text{margin:0 0 10px;color:var(--text);font-size:.86rem;line-height:1.45}@media (max-width:640px){.hu-pop{left:12px;right:84px;width:auto;bottom:16px;max-height:70vh;overflow-y:auto}}.hc-hint{margin:0;color:var(--muted);font-size:.88rem}.is-ini{display:inline-grid;place-items:center;overflow:hidden;border-radius:50%;line-height:1;letter-spacing:0;white-space:nowrap;text-align:center;font-weight:800}.is-ini.is-ini{background:color-mix(in srgb,var(--ink) 9%,var(--surface));color:var(--muted)}.cpp-avatar.is-ini{font-size:.68rem}.cpp-avatar.is-lg.is-ini{font-size:.82rem}.dm-faces .cpp-avatar.is-ini{font-size:.6rem}.cm-crew{max-width:100%;flex-wrap:wrap}.cm-crew .dm-faces{flex:none}.cm-crew .dm-faces em{margin-left:6px}@media (max-width:640px){.cm-crew{align-self:stretch;border-radius:16px;padding:8px 12px}.cm-crew-chev{margin-left:auto}}.rq-mini-meta .rq-to{color:var(--ink);font-weight:700}.is-ini{position:relative}.is-ini>img.av-photo{position:absolute;inset:0;width:100%;height:100%;border-radius:50%;object-fit:cover}.hu-acts{display:inline-flex;gap:6px}.mb-mini{list-style:none;margin:0;padding:0;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface);overflow:hidden}.mb-mini li+li{border-top:1px solid var(--line)}.mb-row-mini{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px;padding:11px 14px;color:var(--ink);text-decoration:none}.mb-row-mini:hover{background:var(--surface-2)}.mb-row-t{flex:1 1 220px;min-width:0;font-weight:700}.mb-row-who{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:.85rem}.mb-row-who .cpp-avatar{width:22px;height:22px;font-size:.55rem}.mb-monday+.mb-monday{margin-top:18px}.mb-monday-h{margin:14px 0 8px;color:var(--ink);font-size:1rem;font-weight:800}.mb-monday-h:first-letter{text-transform:uppercase}.hu-pop .beta-rates{display:flex;flex-wrap:wrap;gap:6px}.hu-pop .beta-chip{flex:1 1 auto;padding:8px 12px;white-space:nowrap}.dm-seg.hs-tabs-order,.hc-pick .dm-seg{display:flex;align-self:stretch;width:100%;max-width:420px}.hc-pick .dm-seg button,.hs-tabs-order button{flex:1 1;justify-content:center;padding:7px 8px;white-space:normal;text-align:center;line-height:1.25}.hc-chip{border-radius:18px}.mb-count{white-space:nowrap}@media (max-width:640px){.mb-bank .dm-feed-h{flex-direction:column;align-items:stretch;gap:10px}.mb-bank .dm-feed-acts{display:flex;gap:8px}.mb-bank .dm-feed-acts>*{flex:1 1 auto;display:inline-flex;align-items:center;justify-content:center;padding:8px 10px;font-size:.84rem;text-align:center;white-space:nowrap}.dm-seg button{padding:6px 10px}}.mb-card>.mb-card-note,.mb-card>.mb-contact{margin-left:72px}@media (max-width:640px){.mb-pick .rq-reply-acts{display:flex;flex-direction:column-reverse;align-items:stretch;gap:8px}.mb-pick .rq-reply-acts .dm-btn{width:100%;text-align:center}.ans-kinds{grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;border-radius:18px}}.rq-mini-meta{flex-wrap:wrap;row-gap:2px}.rq-mini-meta .rq-to{white-space:nowrap}@media (max-width:640px){.cws-search{max-width:none}.cws-add,.cws-search{flex:1 1 100%}}.lin-tabs,.myc-tabs{margin:0 0 16px}.myc-lead{margin:0 0 12px;color:var(--muted);font-size:.9rem;font-weight:600}.myc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:12px;gap:12px}.myc-card{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border:1.5px solid var(--home-line,var(--line));border-radius:18px;background:var(--surface);color:var(--ink);text-decoration:none}.myc-card:hover{border-color:var(--ink)}.myc-tags{display:flex;flex-wrap:wrap;gap:6px;min-height:0}.myc-tags:empty{display:none}.myc-tag{padding:2px 9px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.74rem;font-weight:700}.myc-tag.is-self{background:var(--empty-tint);color:var(--empty-ink)}.myc-title{font-size:1.02rem;font-weight:800;line-height:1.3}.myc-when{color:var(--muted);font-size:.86rem}.myc-foot{display:flex;justify-content:space-between;margin-top:auto;padding-top:8px;color:var(--muted);font-size:.84rem;font-weight:600}@media (max-width:640px){.myc-grid{grid-template-columns:1fr}}.as-task-link{display:inline-flex;align-self:flex-start;margin-bottom:8px;padding:5px 12px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.82rem;font-weight:700;text-decoration:none}.as-task-link:hover{background:var(--line)}.ans-fb-files{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0;padding:0;list-style:none}.ans-fb-files li{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:5px 6px 5px 12px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.84rem;font-weight:600}.ans-fb-files small{color:var(--muted);font-weight:500}.ans-fb-files button{width:24px;height:24px;border:0;border-radius:50%;background:none;color:var(--muted);cursor:pointer}.ans-fb-files button:hover{background:var(--line);color:var(--ink)}.ans-fb-hint{color:var(--muted);font-size:.8rem}.ans-fb-hint,.sp-feedback-files{margin:6px 0 0}.fb-msg .sp-feedback-files a{color:inherit}@media (max-width:640px){.ans-fb .sp-answer-actions{flex-wrap:wrap}}.mm{display:grid;grid-gap:18px;gap:18px;max-width:760px}.mm-kicker{color:var(--muted);font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.mm-hero{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:16px 18px;border:1.5px solid var(--home-line,var(--line));border-radius:20px;background:var(--surface)}.mm-hero .cpp-avatar{width:64px;height:64px;font-size:1.1rem}.mm-hero-t{display:flex;flex:1 1 160px;flex-direction:column;gap:2px;min-width:0}.mm-name{color:var(--ink);font-size:1.2rem;font-weight:800}.mm-write{white-space:nowrap}.mm-next{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border-radius:20px;background:color-mix(in srgb,var(--ok) 9%,var(--surface))}.mm-next-when{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;color:var(--ink);font-size:1.15rem;font-weight:800}.mm-next-when:first-letter{text-transform:uppercase}.mm-next-when em{color:var(--ok);font-size:.86rem;font-style:normal;font-weight:700}.mm-next-where{color:var(--text);font-size:.95rem}.mm-next-none{color:var(--muted);font-size:.95rem}.mm-hint{margin:-4px 0 10px;color:var(--muted);font-size:.88rem}.mm-days{grid-gap:10px}.mm-day,.mm-days{display:grid;gap:10px}.mm-day{grid-template-columns:110px minmax(0,1fr);align-items:start;grid-gap:10px}.mm-day-h{padding-top:7px;color:var(--ink);font-size:.9rem;font-weight:700}.mm-day-slots{display:flex;flex-wrap:wrap;gap:6px}.mm-slot{padding:7px 14px;border:1.5px solid var(--line-strong,var(--line));border-radius:var(--pill);background:var(--surface);color:var(--ink);font-size:.88rem;font-weight:700;text-decoration:none}a.mm-slot:hover{border-color:var(--ink)}.mm-slot{text-align:center}.mm-history{border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface)}.mm-history summary{padding:12px 16px;color:var(--ink);font-weight:700;cursor:pointer}.mm-history ul{margin:0;padding:0 16px 8px;list-style:none}.mm-history li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid var(--line)}.mm-history li>span:first-child{display:flex;flex-direction:column}.mm-history small{color:var(--muted)}@media (max-width:640px){.mm-write{flex:1 1 100%;text-align:center}.mm-day{grid-template-columns:1fr;gap:4px}.mm-day-h{padding-top:0}}.faq-lead{margin:-6px 0 14px;max-width:640px;color:var(--muted);font-size:.95rem}.faq-search{width:100%;max-width:420px;margin:0 0 14px;padding:10px 16px;border:1px solid var(--line);border-radius:var(--pill);background:var(--input-bg);color:var(--text);font:inherit}.faq-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 16px}.faq-tab{padding:7px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--muted);font:inherit;font-size:.88rem;font-weight:700;cursor:pointer}.faq-tab:hover{color:var(--ink)}.faq-tab.is-on{border-color:var(--ink);background:var(--ink);color:var(--surface)}.faq-list{display:grid;grid-gap:8px;gap:8px;max-width:820px}.faq-layout{display:grid;grid-template-columns:210px minmax(0,1fr);grid-gap:32px;gap:32px;align-items:start}.faq-side{position:-webkit-sticky;position:sticky;top:84px;display:grid;grid-gap:20px;gap:20px;margin-left:-12px}.faq-side-g{display:grid;grid-gap:2px;gap:2px}.faq-side-h{margin:0 0 4px 12px;color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.faq-side-i{padding:8px 12px;border:0;border-radius:10px;background:none;color:var(--text);font:inherit;font-size:.92rem;font-weight:600;text-align:left;cursor:pointer}.faq-side-i:hover{background:var(--surface-2);color:var(--ink)}.faq-side-i.is-on{background:var(--ink);color:var(--surface)}.faq-main{min-width:0}.faq-ai-go{justify-self:start}.faq-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px;margin-bottom:40px}.faq-head .page-head{margin-bottom:0}.faq-head .faq-search{flex:0 1 340px;margin:0}.faq-fb{color:var(--muted);font-size:.86rem;line-height:1.45;text-decoration:none}.faq-fb b{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.faq-fb.is-side{display:block;padding:0 12px}.faq-fb.is-foot{display:none;margin-top:22px}.pb-step>.pb-seg button{white-space:normal}.pb-step>.pb-seg{justify-self:start}.pb-acc{display:grid;grid-gap:4px;gap:4px;padding:12px 16px;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface);color:var(--text);font-size:.9rem;line-height:1.5}.pb-acc p{margin:0}.pb-acc-h{margin-top:6px!important;color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.pb-acc ul{display:grid;grid-gap:2px;gap:2px;margin:0;padding-left:18px}.pb-acc-foot{margin-top:8px!important;padding-top:8px;border-top:1px solid var(--line);color:var(--muted);font-size:.84rem}.pb-design{display:grid;grid-gap:8px;gap:8px;margin-top:4px;padding:12px 16px;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface)}.pb-design .pb-seg{justify-self:start}.pb-design-note{margin:0;color:var(--text);font-size:.88rem;line-height:1.5}.st-src{display:grid;grid-gap:8px;gap:8px}.st-paste{width:100%;padding:10px 12px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;line-height:1.5;resize:vertical}.st-paste:focus{outline:none;border-color:var(--ink)}.st-src-acts{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}.st-file{position:relative;display:inline-flex;align-items:center;cursor:pointer}.st-file input{position:absolute;inset:0;opacity:0;cursor:pointer}.st-note{margin:0;color:var(--muted);font-size:.84rem;line-height:1.45}.st-err{color:var(--danger,#c0392b);font-size:.86rem;font-weight:600}.st-prev{display:grid;grid-gap:10px;gap:10px}.st-prev-bar{display:flex;flex-wrap:wrap;gap:8px}.st-frame-box{position:relative;overflow:hidden;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface-2)}.st-frame-box.is-phone{display:flex;justify-content:center;padding:14px 0}.st-frame-box.is-phone .st-frame{max-width:calc(100% - 16px);border-radius:22px;box-shadow:0 0 0 6px var(--ink)}.st-frame{display:block;border:0;background:var(--surface);transform-origin:0 0}.st-check-frame{position:absolute;left:-10000px;top:0;width:375px;height:800px;border:0;visibility:hidden}.st-checks{display:grid;grid-gap:10px;gap:10px}.st-sum{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px}.st-sum-t{color:var(--ink);font-size:.95rem}.st-sum-t .is-err,.st-sum-t b.is-err{color:var(--coral)}.st-sum-t.is-ok{color:var(--ok,#1e8e5a);font-weight:700}.st-list{display:grid;grid-gap:6px;gap:6px;margin:0;padding:0;list-style:none}.st-i{display:grid;grid-gap:2px;gap:2px;padding:10px 14px;border:1.5px solid var(--home-line,var(--line));border-left-width:4px;border-radius:12px;background:var(--surface)}.st-i.is-err{border-left-color:var(--coral)}.st-i.is-warn{border-left-color:var(--line-strong,var(--muted))}.st-i.is-info{border-left-color:var(--sky,var(--line))}.st-i-l{color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.st-i b{color:var(--ink);font-size:.93rem}.st-i>span:last-child{color:var(--text);font-size:.86rem;line-height:1.45;overflow-wrap:anywhere}.st-send-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}.st-sent{display:grid;grid-gap:4px;gap:4px;justify-items:start;padding:14px 16px;border-radius:14px;background:var(--surface-2);color:var(--text);font-size:.9rem}.st-sent b{color:var(--ink)}.st-drafts{display:grid;grid-gap:0;gap:0;margin:0;padding:0;list-style:none;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface);overflow:hidden}.st-drafts li{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:6px 12px;gap:6px 12px;padding:12px 14px}.st-drafts li+li{border-top:1px solid var(--line)}.st-d-main{display:grid;grid-gap:2px;gap:2px;min-width:0}.st-d-main b{color:var(--ink);font-size:.93rem}.st-d-main small{color:var(--muted);font-size:.82rem;line-height:1.4}.st-d-note{color:var(--text)!important}.st-d-st{align-self:start;padding:3px 10px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.78rem;font-weight:700;white-space:nowrap}.st-d-st.is-done{color:var(--ok,#1e8e5a)}.st-d-acts{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px 14px}.st-d-st.is-pending{background:var(--coral-soft,var(--surface-2));color:var(--coral)}.st-d-st.is-published{color:var(--ok,#1e8e5a)}.st-d-st.is-rejected{color:var(--ink)}.st-d-reason{color:var(--ink)!important;font-weight:600}.st-d-rej{grid-column:1/-1;display:grid;grid-gap:8px;gap:8px}.st-d-rej textarea{width:100%;padding:9px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;font-size:.9rem;resize:vertical}.st-d-err{grid-column:1/-1}.pb-reset.is-pri{color:var(--coral)}.pb-reset:disabled{opacity:.5;cursor:default}.pb-fields select{width:100%}.st-check{flex-direction:row!important;align-items:flex-start;gap:10px!important}.st-check input{flex:none;width:18px!important;height:18px;margin:2px 0 0;padding:0;accent-color:var(--ink)}.st-check>span{color:var(--text)!important;font-size:.9rem!important;font-weight:500!important}.pb-fields label,.pb-fields label>span,.st-check>span{text-transform:none;letter-spacing:0}.st-field{display:flex;flex-direction:column;gap:4px;min-width:0}.st-field>span{color:var(--muted);font-size:.82rem;font-weight:600}.st-field .pb-seg{align-self:start}.st-drop{display:grid;justify-items:center;grid-gap:8px;gap:8px;padding:28px 16px;border:2px dashed var(--line);border-radius:18px;background:var(--surface);color:var(--muted);font-size:.9rem;text-align:center;transition:border-color .15s,background .15s}.st-drop b{color:var(--ink);font-size:1rem}.st-drop.is-drag,.st-loaded.is-drag{border-color:var(--ink);background:var(--surface-2)}.st-drop-acts{justify-content:center;gap:8px}.st-drop-acts,.st-loaded{display:flex;flex-wrap:wrap}.st-loaded{align-items:center;gap:10px 14px;padding:12px 14px;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface)}.st-loaded-ico{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--surface-2);color:var(--ok,#1e8e5a);font-weight:800}.st-loaded-t{flex:1 1 200px;display:grid;grid-gap:2px;gap:2px;min-width:0}.st-loaded-t b{color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.st-loaded-t small{color:var(--muted);font-size:.82rem}.st-loaded-acts{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}.st-more{display:grid;grid-gap:8px;gap:8px;margin-top:10px;padding:12px 14px;border-radius:16px;border-left:4px solid var(--coral);background:var(--coral-soft,var(--surface-2))}.st-more>b{color:var(--ink)}.st-more>span{color:var(--muted);font-size:.86rem;line-height:1.45}.st-more .st-paste{background:var(--surface)}.st-more-acts{display:flex;flex-wrap:wrap;gap:8px}.st-sum{padding:12px 14px;border-radius:14px;background:var(--surface-2)}.st-sum.is-ok .st-sum-t{color:var(--ok,#1e8e5a)}.st-sum.is-err .st-sum-t b{color:var(--coral)}.st-warn{margin:0;padding:10px 12px;border-radius:12px;background:var(--coral-soft,var(--surface-2));color:var(--ink);font-size:.86rem;line-height:1.45}.st-imgs{display:flex;flex-wrap:wrap;gap:6px}.st-img,.st-imgs{align-items:center}.st-img{display:inline-flex;gap:4px;padding:4px 4px 4px 12px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.84rem;max-width:100%;overflow-wrap:anywhere}.st-img button{display:grid;place-items:center;width:24px;height:24px;border:0;border-radius:50%;background:none;color:var(--muted);font:inherit;font-size:.8rem;cursor:pointer}.st-img button:hover{background:var(--surface);color:var(--ink)}.st-need{color:var(--ink);overflow-wrap:anywhere}.st-slots{display:grid;grid-gap:8px;gap:8px}.st-slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:10px;gap:10px;margin:0;padding:0;list-style:none}.st-slot{display:flex;align-items:flex-start;gap:12px;padding:10px;border:1.5px dashed var(--line-strong);border-radius:16px;background:var(--surface);min-width:0;outline:none;transition:border-color .15s,background .15s}.st-slot.is-full{border-style:solid;border-color:var(--home-line,var(--line))}.st-slot.is-drag,.st-slot:focus-visible{border-color:var(--ink);background:var(--surface-2)}.st-slot-pic{flex:none;display:grid;place-items:center;width:96px;height:72px;border-radius:10px;background:var(--surface-2);color:var(--muted);font-size:1.4rem;overflow:hidden}.st-slot-pic img{width:100%;height:100%;object-fit:cover}.st-slot-t{flex:1 1;display:grid;grid-gap:2px;gap:2px;min-width:0}.st-slot-t b{color:var(--ink);font-size:.92rem}.st-slot-d{color:var(--text);font-size:.85rem;line-height:1.35;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.st-slot-t small{color:var(--muted);font-size:.8rem}.st-slot-acts{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:4px}.st-slot-acts .pb-reset{min-height:32px;text-transform:none;letter-spacing:0;font-size:.86rem}@media (max-width:520px){.st-slot-grid{grid-template-columns:1fr}.st-slot-pic{width:84px;height:64px}}.st-review{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;padding:14px 16px;border-radius:16px;background:var(--ink);color:var(--surface)}.st-review-t{display:grid;grid-gap:2px;gap:2px;min-width:0}.st-review-t b{font-size:1rem}.st-review-t small{opacity:.75;font-size:.82rem}.st-review-acts{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}.st-review .dm-btn{border-color:var(--surface);background:transparent;color:var(--surface)}.st-review .dm-btn.is-pri{background:var(--surface);color:var(--ink)}.st-review .pb-reset{color:var(--surface)}.st-review .st-d-rej{display:grid;grid-gap:8px;gap:8px;flex:1 1 100%}.st-review-acts:has(.st-d-rej){flex:1 1 100%}.st-review .st-note{color:var(--surface);opacity:.85}.st-mod{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px 14px}.st-drafts li.is-current{background:var(--surface-2)}.st-cats{display:flex;flex-wrap:wrap;gap:6px}.st-cat{min-height:36px;padding:6px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.88rem;font-weight:600;cursor:pointer}.st-cat.is-on,.st-cat:hover{border-color:var(--ink)}.st-cat.is-on{background:var(--ink);color:var(--surface)}.st-cat.is-new{border-style:dashed;color:var(--muted)}.st-cat.is-new.is-on{border-style:solid;color:var(--surface)}.st-input{width:100%;padding:9px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;font-size:.92rem}.st-input:focus{outline:none;border-color:var(--ink)}textarea.st-input{resize:vertical;line-height:1.5;font-weight:400}.st-count{color:var(--muted);font-size:.78rem;text-align:right}.st-cw-note{align-self:end;padding-bottom:10px}.st-search{position:relative;max-width:420px}.pb-fields.st-form{grid-template-columns:repeat(2,minmax(0,1fr))}.st-form .pill-select{width:100%;max-width:none}@media (max-width:640px){.pb-fields.st-form{grid-template-columns:1fr}.st-review-acts{width:100%}}.st-search input{width:100%;padding:9px 12px;color:var(--ink);font:inherit;font-size:.9rem}.st-search input,.st-search ul{border:1.5px solid var(--line);border-radius:12px;background:var(--surface)}.st-search ul{position:absolute;z-index:5;left:0;right:0;top:calc(100% + 4px);margin:0;padding:4px;list-style:none;box-shadow:0 8px 24px rgba(0,0,0,.12)}.st-search button{display:grid;grid-gap:1px;gap:1px;width:100%;padding:8px 10px;border:0;border-radius:8px;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.st-search button:hover{background:var(--surface-2)}.st-search small{color:var(--muted);font-size:.8rem}@media (max-width:860px){.faq-layout{grid-template-columns:1fr;gap:14px}.faq-fb.is-side{display:none}.faq-fb.is-foot{display:block}.faq-head{margin-bottom:20px}.faq-head .faq-search{flex:1 1 100%;margin:0}.faq-side{margin-left:-16px;position:static;display:flex;gap:6px;margin:0 -16px;padding:0 16px 4px;overflow-x:auto;scrollbar-width:none}.faq-side::-webkit-scrollbar{display:none}.faq-side-g{display:contents}.faq-side-h{display:none}.faq-side-i{flex:none;padding:7px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--muted);font-size:.88rem;font-weight:700;white-space:nowrap}.faq-side-i.is-on{border-color:var(--ink);background:var(--ink);color:var(--surface)}}.faq-item{border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface)}.faq-item[open]{border-color:var(--line-strong,var(--line))}.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 16px;color:var(--ink);font-weight:700;line-height:1.35;cursor:pointer;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";flex:none;color:var(--muted);font-size:1.2rem;font-weight:500}.faq-item[open] summary:after{content:"–"}.faq-item summary em{flex:none;margin-left:auto;padding:2px 9px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.72rem;font-style:normal}.faq-a{padding:0 16px 14px}.faq-a p{margin:0 0 8px;color:var(--text);line-height:1.55}.faq-go{display:inline-flex;padding:5px 12px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.84rem;font-weight:700;text-decoration:none}.faq-go:hover{background:var(--line)}@media (max-width:640px){.faq-search{max-width:none}.faq-item summary em,.frm-tab-more{display:none}}.frm-more{font-size:.86rem}.frm-closed,.frm-more{color:var(--muted);font-weight:700}.frm-closed{padding:6px 12px;border-radius:var(--pill);background:var(--surface-2);font-size:.82rem;white-space:nowrap}@media (max-width:640px){.frm-view-tabs .sp-tab{padding-left:10px;padding-right:10px}}@media (max-width:420px){.frm-view-tabs .sp-tab{padding-left:6px;padding-right:6px;font-size:.9rem}.frm-tab-count{margin-left:3px}}.hc-sub{margin:4px 0 -4px;color:var(--muted);font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.hc-invite{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px}.hc-invite p{flex:1 1 260px;margin:0}.cdb-toolbar{flex-wrap:wrap;margin-bottom:14px}.cdb-sort{display:inline-flex;align-items:center;gap:8px;height:52px;padding:0 8px 0 18px;border:1.5px solid var(--line);border-radius:var(--pill);color:var(--muted);font-size:.86rem;font-weight:700}.cdb-sort select{height:40px;border:0;background:none;color:var(--ink);font:inherit;font-weight:700;cursor:pointer}.cdb-filters{width:min(620px,100%);max-height:min(70vh,720px);overflow-y:auto;gap:18px}.cdb-filters .ind-chip{padding:7px 14px;font-size:.86rem}.cdb-n{margin-left:6px;color:var(--muted);font-size:.74rem;font-weight:600}.ind-chip.is-active .cdb-n{color:inherit;opacity:.7}.cdb-more{align-self:center;font-size:.84rem}.cdb-psearch{width:100%;max-width:320px;margin:0 0 8px;padding:8px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:transparent;color:var(--text);font:inherit;font-size:.9rem}.ind-filter-label .ind-filter-badge{min-width:18px;height:18px;margin-left:8px;font-size:.68rem;letter-spacing:0;vertical-align:1px}.cdb-filters-acts{position:-webkit-sticky;position:sticky;bottom:-26px;gap:14px;margin:0 -26px -26px;padding:14px 26px;border-top:1px solid var(--line);background:var(--surface)}.cdb-active,.cdb-filters-acts{display:flex;flex-wrap:wrap;align-items:center}.cdb-active{gap:6px;margin:0 0 12px}.cdb-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border:0;border-radius:var(--pill);background:var(--ink);color:var(--surface);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}.cdb-pill span{opacity:.7;font-size:.72rem}.cdb-count{margin:0 0 14px;color:var(--muted);font-size:.9rem;font-weight:600}.cdb-card{min-height:0;gap:10px;padding:20px 22px;border-radius:22px;color:var(--ink);text-decoration:none}.cdb-card h3{margin:0;font-size:1.08rem}.cdb-foot{display:flex;justify-content:space-between;gap:10px;margin:auto 0 0;color:var(--muted);font-size:.82rem;font-weight:600}.cdb-cycles{min-width:0}.cdb-tag-off{border-color:transparent!important;background:var(--danger-soft);color:var(--danger-ink)!important}.cdb-showmore{display:flex;margin:22px auto 0}@media (max-width:640px){.cdb-toolbar{gap:8px}.cdb-sort,.cdb-toolbar .ind-filter-btn,.cdb-toolbar .ind-search{height:46px}.cdb-toolbar .ind-search{flex:1 1 100%;order:-1}.cdb-sort{flex:1 1;justify-content:space-between}.cdb-filters{position:fixed;top:auto;right:0;bottom:0;left:0;z-index:60;width:100%;max-height:82vh;padding:20px 16px 0;border-radius:22px 22px 0 0}.cdb-filters-acts{bottom:0;margin:0 -16px;padding:12px 16px calc(12px + env(safe-area-inset-bottom))}.cdb-filters-acts .btn{flex:1 1}.ind-grid{grid-template-columns:1fr;gap:12px}}.myc-role{margin:0 0 14px}.myc-cycles{margin:0 0 12px}.myc-cycles .ind-chip{padding:7px 14px;font-size:.86rem}@media (max-width:640px){.myc-cycles{flex-wrap:nowrap;overflow-x:auto;margin-right:-16px;padding-right:16px;scrollbar-width:none}.myc-cycles .ind-chip{flex:none}}.cpl-wrap{max-width:1400px}.cpl-lead{margin:-6px 0 14px;max-width:760px;color:var(--muted);font-size:.92rem}.cpl-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 16px}.cpl-search{flex:1 1 220px;max-width:380px;height:44px}.cpl-table{--tw:180px;overflow-x:auto;border:1.5px solid var(--home-line,var(--line));border-radius:18px;background:var(--surface)}.cpl-row{display:grid;grid-template-columns:var(--tw) repeat(var(--cols),minmax(170px,1fr));min-width:calc(var(--tw) + var(--cols) * 170px)}.cpl-row+.cpl-row{border-top:1px solid var(--line)}.cpl-head{position:-webkit-sticky;position:sticky;top:0;z-index:3;background:var(--surface);border-bottom:1.5px solid var(--line)}.cpl-colh{display:flex;flex-direction:column;padding:10px 12px;color:var(--ink);font-weight:800}.cpl-colh small{color:var(--muted);font-size:.76rem;font-weight:600}.cpl-teacher{position:-webkit-sticky;position:sticky;left:0;z-index:2;display:flex;align-items:flex-start;padding:10px 12px;background:var(--surface);border-right:1px solid var(--line);color:var(--ink);font-size:.9rem;font-weight:700}.cpl-head .cpl-teacher{color:var(--muted);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}.cpl-group{border-top:1.5px solid var(--line)}.cpl-gh{position:-webkit-sticky;position:sticky;left:0;display:flex;align-items:baseline;gap:8px;width:100%;max-width:100vw;padding:10px 12px;border:0;background:var(--surface-2);color:var(--ink);font:inherit;font-size:.95rem;font-weight:800;text-align:left;cursor:pointer}.cpl-gh small{color:var(--muted);font-size:.78rem;font-weight:600}.cpl-td{border-left:1px solid var(--line)}.cpl-cell{display:flex;flex-direction:column;gap:6px;min-height:100%;padding:8px}.cpl-cell.is-over{background:color-mix(in srgb,var(--ok) 10%,var(--surface));outline:2px dashed var(--ok);outline-offset:-4px;border-radius:10px}.cpl-chip{position:relative;display:flex;align-items:flex-start;gap:6px;padding:7px 6px 7px 10px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);cursor:-webkit-grab;cursor:grab}.cpl-chip:hover{border-color:var(--line-strong,var(--line))}.cpl-chip.is-busy{opacity:.5;cursor:progress}.cpl-chip.is-off{background:var(--danger-soft)}.cpl-chip-t{flex:1 1;min-width:0;color:var(--ink);font-size:.84rem;font-weight:700;line-height:1.3;text-decoration:none}.cpl-chip-t:hover{text-decoration:underline}.cpl-chip-n{font-size:.72rem;font-weight:700}.cpl-chip-n,.cpl-dots{flex:none;color:var(--muted)}.cpl-dots{width:24px;height:22px;border:0;border-radius:6px;background:none;font-size:1rem;line-height:1;cursor:pointer}.cpl-dots:hover,.cpl-dots[aria-expanded=true]{background:var(--surface-2);color:var(--ink)}.cpl-chip-menu{position:relative}.cpl-menu{position:absolute;top:100%;right:0;z-index:20;display:flex;flex-direction:column;min-width:190px;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-lg)}.cpl-menu-h{margin:4px 8px;color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.cpl-menu button{padding:8px 10px;border:0;border-radius:8px;background:none;color:var(--ink);font:inherit;font-size:.88rem;text-align:left;cursor:pointer}.cpl-menu button:hover{background:var(--surface-2)}.cpl-menu button.is-danger{color:var(--danger)}.cpl-add{align-self:flex-start;width:28px;height:28px;border:1.5px dashed var(--line-strong,var(--line));border-radius:8px;background:none;color:var(--muted);font-size:.9rem;cursor:pointer;opacity:0;transition:opacity .15s}.cpl-add:focus-visible,.cpl-cell:hover .cpl-add{opacity:1}@media (hover:none){.cpl-add{opacity:1}}.cpl-toast{position:fixed;left:50%;bottom:24px;z-index:70;transform:translateX(-50%);max-width:calc(100vw - 32px);margin:0;padding:10px 16px;border-radius:var(--pill);background:var(--ink);color:var(--surface);font-size:.9rem;font-weight:700;box-shadow:var(--shadow-lg)}.cpl-dialog{max-width:560px}.cpl-ctx{margin:-4px 0 12px;color:var(--muted);font-size:.9rem}.cpl-field{display:grid;grid-gap:4px;gap:4px;margin:0 0 12px;color:var(--muted);font-size:.82rem;font-weight:700}.cpl-field input,.cpl-field select{padding:9px 12px;border:1px solid var(--line);border-radius:12px;background:var(--input-bg);color:var(--text);font:inherit;font-size:.95rem;font-weight:500}.cpl-modes{margin:0 0 12px}.cpl-q{max-width:none}.cpl-hint{margin:0 0 8px;color:var(--muted);font-size:.84rem}.cpl-found{display:grid;grid-gap:2px;gap:2px;max-height:46vh;overflow-y:auto;margin:0;padding:0;list-style:none}.cpl-found li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 4px;border-top:1px solid var(--line)}.cpl-found li>span{display:flex;flex-direction:column;min-width:0}.cpl-found b{color:var(--ink);font-size:.92rem}.cpl-found small{overflow:hidden;color:var(--muted);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.cpl-new .dm-btn{margin-top:4px}.cpl-mtabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:4px;gap:4px;margin:0 0 14px;padding:4px;border-radius:16px;background:var(--surface-2)}.cpl-mtab{display:flex;flex-direction:column;align-items:center;padding:6px 2px;border:0;border-radius:12px;background:none;color:var(--muted);font:inherit;font-size:.78rem;font-weight:800;line-height:1.2;cursor:pointer}.cpl-mtab span{font-size:.7rem;font-weight:600}.cpl-mtab.is-on{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.08)}.cpl-mgroup{margin:0 0 16px;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface)}.cpl-mgroup .cpl-gh{position:static;cursor:default;border-radius:14px 14px 0 0}.cpl-mrow{display:grid;grid-template-columns:110px minmax(0,1fr);border-top:1px solid var(--line)}.cpl-mrow .cpl-teacher{position:static;font-size:.84rem;border-right:1px solid var(--line)}@media (max-width:760px){.cpl-search{max-width:none;flex-basis:100%;order:-1}.cpl-bar .dm-seg{flex:1 1}}.cdb-sort span{letter-spacing:normal;text-transform:none}.cdb-check{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:.9rem;font-weight:600;cursor:pointer}.cdb-check input{width:18px;height:18px;accent-color:var(--ink)}.cpl-chip-t small{display:block;margin-top:2px;color:var(--muted);font-size:.72rem;font-weight:600}.cpl-found{grid-template-columns:minmax(0,1fr)}.cpl-found li>span{flex:1 1 auto}.cpl-mrow{grid-template-columns:minmax(0,1fr)}.cpl-mrow .cpl-teacher{padding:10px 12px 0;border-right:0;color:var(--muted);font-size:.8rem}.cpl-year{display:inline-flex;flex:1 1;align-items:center;gap:8px;height:44px;padding:0 6px 0 16px;border:1.5px solid var(--line);border-radius:var(--pill);color:var(--muted);font-size:.84rem;font-weight:700}.cpl-year select{flex:1 1;height:38px;border:0;background:none;color:var(--ink);font:inherit;font-weight:800}.cpl-teacher{overflow-wrap:anywhere}.cdb-backdrop,.cdb-sheet-h{display:none}@media (max-width:640px){.cdb-backdrop{position:fixed;inset:0;z-index:89;display:block;background:var(--overlay)}.cdb-filters{z-index:90}.cdb-sheet-h{position:-webkit-sticky;position:sticky;top:-20px;z-index:2;display:flex;align-items:center;justify-content:space-between;margin:-20px -16px 0;padding:14px 16px 10px;border-bottom:1px solid var(--line);background:var(--surface)}.cdb-sheet-h b{color:var(--ink);font-size:1.05rem}.cdb-sheet-h .cm-x{position:static}}.cdb-ppl{flex:none;white-space:nowrap}.faq-ai{display:grid;grid-gap:18px;gap:18px;max-width:820px}.faq-ai-lead{margin:0;color:var(--text);line-height:1.55}.faq-steps{display:grid;grid-gap:10px;gap:10px;margin:0;padding:0;list-style:none}.faq-steps li{display:flex;gap:12px;padding:12px 14px;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface)}.faq-step-n{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--ink);color:var(--surface);font-size:.85rem;font-weight:800}.faq-steps li>span:last-child{display:flex;flex-direction:column;gap:2px;min-width:0}.faq-steps b{color:var(--ink)}.faq-steps small{color:var(--text);font-size:.9rem;line-height:1.5}.faq-prompt{border:1.5px solid var(--home-line,var(--line));border-radius:18px;background:var(--surface);overflow:hidden}.faq-prompt-h{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;border-bottom:1px solid var(--line)}.faq-prompt-h b{color:var(--ink)}.faq-prompt pre{max-height:380px;margin:0;padding:14px;overflow:auto;background:var(--surface-2);color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;line-height:1.55;white-space:pre-wrap;word-break:break-word;max-height:260px;overflow:hidden;position:relative}.faq-prompt pre.is-full{max-height:none;overflow:auto}.faq-prompt-acts{display:inline-flex;flex-wrap:wrap;gap:6px}.faq-prompt-acts>*{white-space:nowrap}.faq-prompt-acts a.dm-btn{text-decoration:none}.faq-prompt-more{display:block;width:100%;padding:10px 14px;border:0;border-top:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;font-size:.86rem;font-weight:700;cursor:pointer}.faq-prompt-more:hover{background:var(--surface-2)}.faq-prompt-err{margin:0;padding:14px;color:var(--muted);font-size:.88rem}.pb{display:grid;grid-gap:22px;gap:22px}.pb-step{display:grid;grid-gap:10px;gap:10px;min-width:0}.pb-h{display:flex;align-items:center;gap:10px;margin:0;color:var(--ink);font-size:1.05rem;font-family:var(--font-sans)}.pb-h small{color:var(--muted);font-size:.82rem;font-weight:500}.pb-sub{margin:-4px 0 0;color:var(--muted);font-size:.9rem;line-height:1.5}.pb-presets{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:8px;gap:8px}.pb-preset{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer}.pb-preset:hover{border-color:var(--ink)}.pb-preset b{color:var(--ink);font-size:.95rem}.pb-preset span{font-size:.86rem;line-height:1.4}.pb-preset small{color:var(--muted);font-size:.78rem}.pb-preset.is-on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.pb-rows{display:grid;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface);overflow:hidden}.pb-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:10px 14px}.pb-row+.pb-row{border-top:1px solid var(--line)}.pb-l{display:flex;flex-direction:column;gap:1px;min-width:0}.pb-l b{color:var(--ink);font-size:.93rem}.pb-l small{color:var(--muted);font-size:.8rem;line-height:1.35}.pb-seg{display:inline-flex;flex-wrap:wrap;gap:4px;padding:3px;border-radius:var(--pill);background:var(--surface-2)}.pb-seg button{min-height:34px;padding:6px 13px;border:0;border-radius:var(--pill);background:transparent;color:var(--muted);font:inherit;font-size:.85rem;font-weight:700;cursor:pointer;white-space:nowrap}.pb-seg button:hover{color:var(--ink)}.pb-seg button.is-on{background:var(--ink);color:var(--surface)}.pb-always{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;color:var(--muted);font-size:.84rem}.pb-always em{padding:3px 10px;border-radius:var(--pill);background:var(--surface-2);color:var(--text);font-style:normal;font-weight:600}.pb-reset{justify-self:start;padding:0;border:0;background:none;color:var(--ink);font:inherit;font-size:.86rem;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.pb-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.pb-fields label{display:flex;flex-direction:column;gap:4px;min-width:0}.pb-fields label>span{color:var(--muted);font-size:.82rem;font-weight:600}.pb-fields input,.pb-fields textarea{width:100%;padding:9px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;font-size:.92rem;resize:vertical}.pb-fields input:focus,.pb-fields textarea:focus{outline:none;border-color:var(--ink)}.pb-fields .pb-wide{grid-column:1/-1}.pb-len{color:var(--muted);font-weight:500}.pb-len,.pb-upd{font-size:.82rem}.pb-upd{color:var(--ok,#1e8e5a);font-weight:700}.faq-prompt pre.pb-pre:not(.is-full){overflow:auto}.pb-ln{display:inline;transition:background .6s;border-radius:3px}.pb-ln.is-new{background:var(--ok-soft,rgba(30,142,90,.16));box-shadow:0 0 0 2px var(--ok-soft,rgba(30,142,90,.16))}.pb-ln.is-tpl{color:var(--muted);font-style:italic}.pb-next{display:grid;grid-gap:4px;gap:4px;margin:0;padding-left:20px;color:var(--text);font-size:.9rem;line-height:1.5}@media (max-width:640px){.pb-fields,.pb-presets{grid-template-columns:1fr}.pb-row{flex-direction:column;align-items:stretch}.pb-seg{display:flex}.pb-seg button{flex:1 1;min-height:40px;padding:6px 8px}.pb-row.is-yn{flex-direction:row;flex-wrap:nowrap;align-items:center}.pb-row.is-yn .pb-seg{display:inline-flex;flex:none}.pb-row.is-yn .pb-seg button{flex:none;padding:6px 14px}}.faq-day+.faq-day{margin-top:22px}.faq-day-h{margin:0 0 8px;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-family:var(--font-sans)}@media (max-width:640px){.faq-prompt-acts{width:100%}.faq-prompt-acts>*{flex:1 1;text-align:center;justify-content:center}}.adm .btn{padding:9px 18px;font-size:.86rem}.adm .adm-row-toggle,.adm .btn{letter-spacing:0;text-transform:none}.adm .adm-row-toggle{font-size:.9rem;font-weight:600;line-height:1.4;align-items:flex-start}.adm .adm-row-toggle input{flex:none;margin-top:2px}@media (max-width:820px){.adm-nav{scrollbar-width:none}.adm-nav::-webkit-scrollbar{display:none}}.chat-files{display:flex;flex-direction:column;gap:3px;margin:6px 0 0;padding:0;list-style:none}.chat-files a{display:inline-block;max-width:100%;overflow:hidden;color:inherit;font-size:.8rem;font-weight:600;text-decoration:underline;text-underline-offset:2px;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}.chat-attach{display:grid;flex:none;place-items:center;width:44px;height:44px;border:1.5px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink);cursor:pointer}.chat-attach:hover:not(:disabled){border-color:var(--ink)}.chat-attach:disabled{opacity:.4;cursor:default}.chat-pills{display:flex;flex-wrap:wrap;gap:6px;padding:8px 12px 0}.chat-pill{display:inline-flex;align-items:center;gap:4px;max-width:100%;padding:4px 6px 4px 10px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.78rem;font-weight:600}.chat-pill span{overflow:hidden;max-width:200px;text-overflow:ellipsis;white-space:nowrap}.chat-pill button{display:grid;place-items:center;width:22px;height:22px;border:0;border-radius:50%;background:none;color:var(--muted);cursor:pointer}.chat-pill button:hover{color:var(--ink);background:var(--surface)}.stc-panel{width:min(420px,calc(100vw - 32px));height:min(620px,calc(100vh - 120px))}.stc-head{display:flex;flex-direction:column;gap:10px}.stc-head-main{min-width:0}.stc-head-main .tc-sub,.stc-head-main .tc-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stc-tabs{display:flex;gap:4px;padding:3px;border-radius:var(--pill);background:var(--surface-2)}.stc-tabs button{display:inline-flex;flex:1 1;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:6px 10px;border:0;border-radius:var(--pill);background:none;color:var(--muted);font-family:var(--font-sans);font-size:.84rem;font-weight:700;cursor:pointer}.stc-tabs button.is-on{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.08)}.stc-tab-n{min-width:18px;height:18px;padding:0 5px;border-radius:var(--pill);background:var(--coral);color:#fff;font-size:.68rem;line-height:18px}.stc-search{padding:10px 16px 0}.stc-search input{width:100%;padding:9px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--input-bg);color:var(--text);font:inherit;font-size:.88rem;outline:none}.stc-search input:focus{border-color:var(--ink)}.stc-ava{display:grid;flex:none;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--surface-2);color:var(--muted);font-size:.8rem;font-weight:800}.stc-open{color:inherit;font-weight:700}.stc-clamp{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:8}.stc-more{display:inline-block;margin-top:4px;font-size:.76rem}.stc-target{display:flex;align-items:center;gap:8px;margin:0;padding:8px 12px 0;color:var(--muted);font-size:.78rem;font-weight:600;text-transform:none;letter-spacing:0}.stc-target select{flex:1 1;min-width:0;padding:6px 10px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--input-bg);color:var(--ink);font:inherit;font-size:.8rem}@media (max-width:560px){.tc-panel,.tc-panel.stc-panel{right:8px;left:8px;bottom:82px;width:auto;height:calc(100dvh - 160px)}.chat-pill span{max-width:150px}}.cdb-card-wrap{position:relative;display:flex}.cdb-card-wrap>.ind-card{flex:1 1}.cdb-card-wrap>.ind-card .ind-tags{padding-right:34px}.cdb-del{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:50%;background:transparent;color:var(--muted);cursor:pointer;opacity:0;transition:opacity .12s ease,background .12s ease,color .12s ease}.cdb-card-wrap:hover .cdb-del,.cdb-del:focus-visible{opacity:1}.cdb-del:hover{background:color-mix(in srgb,var(--danger,#c0392b) 12%,var(--surface));color:var(--danger,#c0392b)}@media (hover:none){.cdb-del{opacity:1}}.cdb-del-dialog{max-width:440px}.cdb-del-name{margin:6px 0 2px;color:var(--ink);font-weight:700}.cdb-del-meta{margin:0 0 12px;color:var(--muted);font-size:.86rem}.cdb-del-warn{margin:0 0 10px;padding:10px 12px;border-radius:12px;background:color-mix(in srgb,var(--coral) 12%,var(--surface));color:var(--ink);font-size:.88rem}.cdb-del-hint{margin:0 0 16px;color:var(--text);font-size:.88rem;line-height:1.5}.cdb-del-acts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.dm-btn.is-danger{border-color:var(--danger,#c0392b);background:var(--danger,#c0392b)}.dm-btn.is-danger:hover:not(:disabled){filter:brightness(.92)}.cdb-toast{display:flex;align-items:center;gap:12px;border-radius:16px}.cdb-toast button{flex:none;padding:4px 10px;border:1.5px solid;border-radius:var(--pill);background:none;color:inherit;font:inherit;font-size:.82rem;cursor:pointer}@media (max-width:560px){.cdb-del-acts>*{flex:1 1}}.adm-trash{display:flex;flex-direction:column;margin:12px 0 0;padding:0;list-style:none}.adm-trash li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;padding:12px 0;border-top:1.5px solid var(--line)}.adm-trash-main{display:flex;flex:1 1 260px;flex-direction:column;gap:2px;min-width:0}.adm-trash-main b{color:var(--ink)}.adm-trash-main span{color:var(--muted);font-size:.82rem}.adm-trash-main em{color:var(--coral-600);font-style:normal;font-weight:700}.rq-box-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:4px}.rq-box-foot:empty{display:none}.rq-view{display:flex;flex-direction:column;gap:12px}.rq-view-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}.rq-view-target{max-width:100%;padding-top:8px;padding-bottom:8px;font-size:.88rem}.rq-view-st{margin:0}.rq-view-n{margin-left:4px;color:var(--muted);font-weight:600}.pill-select{min-width:0;padding:10px 42px 10px 16px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--input-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 16px center;color:var(--ink);font:inherit;font-weight:600;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer}.pill-select:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.tct-tabs{margin-bottom:18px}.ctc{display:flex;flex-direction:column;gap:14px}.ctc-count{margin:0;color:var(--muted);font-size:.88rem}.ctc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:14px;gap:14px;margin:0;padding:0;list-style:none}.ctc-card{display:flex;flex-direction:column;gap:12px;padding:18px;border:1.5px solid var(--line);border-radius:20px;background:var(--surface)}.ctc-top{display:flex;align-items:center;gap:14px;min-width:0}.ctc-ava{position:relative;display:grid;flex:none;place-items:center;width:64px;height:64px;overflow:hidden;border-radius:50%;background:var(--surface-2);color:var(--muted);font-size:1.05rem;font-weight:800}.ctc-ava img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ctc-who{display:flex;flex-direction:column;gap:3px;min-width:0}.ctc-badge{align-self:flex-start;padding:2px 10px;border-radius:var(--pill);background:var(--sky-tint,#e6f2fb);color:var(--brand-blue,#2d5f99);font-size:.74rem;font-weight:700}.ctc-name{color:var(--ink);font-size:1.08rem;line-height:1.25}.ctc-sub{color:var(--muted);font-size:.86rem;line-height:1.35}.ctc-lines{gap:3px;margin:0;padding:0;list-style:none;color:var(--text);font-size:.86rem;line-height:1.4}.ctc-contacts,.ctc-lines{display:flex;flex-direction:column}.ctc-contacts{gap:4px;font-size:.92rem}.ctc-contacts a{color:var(--ink);font-weight:600;text-decoration:none;overflow-wrap:anywhere}.ctc-contacts a:hover{text-decoration:underline;text-underline-offset:2px}.ctc-none{color:var(--muted)}.ctc-acts{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:auto}.ctc-acts:empty{display:none}.ctc-wa{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:var(--pill);background:var(--ink);color:var(--bg);font-size:.9rem;font-weight:700;text-decoration:none}.ctc-wa:hover{opacity:.9}.ctc-edit{font-size:.86rem}.tct-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.tct-scope{flex:none;margin:0}.tct-n{margin-left:4px;opacity:.6;font-weight:600}.tct-search{flex:1 1 240px;min-width:0;padding:10px 16px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--input-bg);color:var(--text);font:inherit;outline:none}.tct-search:focus{border-color:var(--ink)}.tct-product{flex:0 1 240px}.tct-groups{margin:0}.tct-edit{display:flex;flex-direction:column;gap:8px}.tct-edit-l{color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:0;text-transform:none}.tct-edit input{width:100%;padding:10px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--input-bg);color:var(--text);font:inherit;outline:none}.tct-edit input:focus{border-color:var(--ink)}.tct-edit-acts{display:flex;flex-wrap:wrap;gap:8px}.tct-err,.tct-hint{margin:0;font-size:.76rem}.tct-hint{color:var(--muted)}@media (max-width:560px){.ctc-grid{grid-template-columns:1fr}.ctc-card{padding:16px}.ctc-wa{flex:1 1}.tct-scope{width:100%}.tct-scope button{flex:1 1}.tct-product,.tct-search{flex-basis:100%}.tct-edit-acts>*{flex:1 1}}.ctc-badge{border-radius:8px;line-height:1.35}.ctc-who{flex:1 1}.ctc-role{color:var(--ink);font-size:.88rem;font-weight:600;line-height:1.35}.ctc-klass{display:flex;flex:none;flex-direction:column;align-items:center;min-width:52px;padding-left:14px;border-left:1.5px solid var(--line);color:var(--ink)}.ctc-klass b{font-family:var(--font-display);font-size:2rem;font-weight:700;line-height:1;letter-spacing:-.02em}.ctc-klass small{margin-top:4px;color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}@media (max-width:640px){.edge-scroll{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 20px,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(90deg,transparent 0,#000 20px,#000 calc(100% - 36px),transparent)}.edge-scroll::-webkit-scrollbar{display:none}.edge-scroll>*{flex:none;white-space:nowrap}.edge-scroll.is-at-start{-webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 36px),transparent)}.edge-scroll.is-at-end{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 20px,#000);mask-image:linear-gradient(90deg,transparent 0,#000 20px,#000)}.edge-scroll.is-at-start.is-at-end{-webkit-mask-image:none;mask-image:none}.tct-tabs .sp-tab{padding:12px}}.cs-filters{align-items:center}.cs-search{flex:1 1 240px;min-width:0;padding:10px 16px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--input-bg);color:var(--text);font:inherit;outline:none}.cs-search:focus{border-color:var(--ink)}.cs-filter{min-width:0;flex:0 1 220px}.cs-filter .pill-select{width:100%;padding:10px 42px 10px 16px;border-radius:var(--pill);background-position:right 16px center;font-size:.88rem}.cs-filter.is-on .pill-select{border-color:var(--ink)}.cs-what-chips{margin:0 0 10px}.cs-what.is-interactive{background:var(--sky-tint,#e6f2fb);color:var(--brand-blue,#2d5f99)}@media (max-width:560px){.cs-filter,.cs-search{flex:1 1 100%}}.cs-mine{margin:-4px 0 14px}.cs-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;margin:4px 0 28px}.cs-kpi{display:flex;flex-direction:column;gap:6px;padding:18px;border:1.5px solid var(--line);border-radius:20px;background:var(--surface)}.cs-kpi p{margin:0}.cs-kpi-l{color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.cs-kpi-v{color:var(--ink);font-family:var(--font-display);font-size:2rem;font-weight:700;line-height:1.1}.cs-kpi-v small{font-family:var(--font-sans);font-size:.95rem;font-weight:700;color:var(--muted)}.cs-kpi-s{color:var(--text);font-size:.84rem;line-height:1.4}.cs-kpi .cs-bar-mini{display:block;height:6px;border-radius:99px;background:var(--surface-2);overflow:hidden}.cs-kpi .cs-bar-mini i,.cs-mx-pct .cs-bar-mini i{display:block;height:100%;border-radius:inherit;background:var(--ok,#1e8e5a)}.cs-bars{display:flex;align-items:flex-end;gap:3px;height:34px}.cs-bars.is-tall{height:80px}.cs-bars span{display:flex;flex:1 1;align-items:flex-end;height:100%}.cs-bars i{display:block;width:100%;border-radius:3px;background:var(--coral)}.cs-bars i.is-zero{background:var(--line)}.cs-hist-chart{margin:0 0 16px;padding:16px 18px;border:1.5px solid var(--line);border-radius:20px;background:var(--surface)}.cs-hist-chart .cs-kpi-l{margin:0 0 10px}.cs-sec{margin:0 0 30px}.cs-sec-h{margin:0 0 12px}.cs-sec-h h2{display:flex;align-items:center;gap:8px;margin:0 0 4px;color:var(--ink);font-family:var(--font-display);font-size:1.25rem}.cs-sec-h h2 span{padding:1px 10px;border-radius:var(--pill);background:color-mix(in srgb,var(--coral) 14%,var(--surface));color:var(--coral-600);font-family:var(--font-sans);font-size:.84rem}.cs-sec-h p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.5}.cs-attn-g{margin:0 0 14px}.cs-attn-gh{margin:0 0 6px;color:var(--ink);font-size:.84rem;font-weight:800}.cs-attn-gh span{color:var(--muted);font-weight:600}.cs-attn{display:flex;flex-direction:column;margin:0;padding:0;list-style:none;border:1.5px solid var(--line);border-radius:18px;background:var(--surface);overflow:hidden}.cs-attn li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;padding:12px 16px}.cs-attn li+li{border-top:1px solid var(--line)}.cs-attn-main{display:flex;flex:1 1 280px;flex-direction:column;gap:2px;min-width:0}.cs-attn-what{color:var(--coral-600);font-size:.86rem;font-weight:700}.cs-attn-acts{display:flex;flex-wrap:wrap;gap:8px}.cs-attn-acts a{text-decoration:none}.cs-more{margin-top:4px}.cs-ok{margin:0;padding:14px 16px;border-radius:16px;background:var(--ok-soft,#e3f5ec);color:var(--ok,#1e8e5a);font-weight:700}.cs-mx-legend{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.cs-mx-g{margin:0 0 10px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface);overflow:hidden}.cs-mx-g summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;cursor:pointer;list-style:none}.cs-mx-g summary::-webkit-details-marker{display:none}.cs-mx-g summary:before{content:"›";flex:none;color:var(--muted);font-size:1.2rem;transition:transform .15s ease}.cs-mx-g[open] summary:before{transform:rotate(90deg)}.cs-mx-gt{display:flex;flex:1 1;flex-direction:column;gap:1px;min-width:0}.cs-mx-gt b{color:var(--ink);font-size:.95rem}.cs-mx-gt small{color:var(--muted);font-size:.8rem}.cs-mx-pct{display:inline-flex;flex:none;align-items:center;gap:8px;color:var(--ink);font-size:.88rem;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cs-mx-pct .cs-bar-mini{display:block;width:80px;height:6px;border-radius:99px;overflow:hidden}.cs-mx-g.is-idle,.cs-mx-pct .cs-bar-mini{background:var(--surface-2)}.cs-mx{margin:0;padding:0 16px 8px;list-style:none}.cs-mx li{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);align-items:center;grid-gap:6px 18px;gap:6px 18px;padding:10px 0;border-top:1px solid var(--line)}.cs-mx-c{display:flex;flex-direction:column;gap:1px;min-width:0}.cs-sqs{display:flex;flex-wrap:wrap;gap:4px}.cs-sq{display:inline-grid;flex:none;place-items:center;width:22px;height:22px;border-radius:6px;font-size:.7rem;font-weight:800;line-height:1}.cs-sq.l0{border:1.5px dashed var(--line-strong);background:transparent}.cs-sq.l1{background:color-mix(in srgb,var(--ok,#1e8e5a) 26%,var(--surface))}.cs-sq.l2{background:var(--ok,#1e8e5a);color:#fff}.cs-sq.l1.is-i{color:var(--ok,#1e8e5a)}.cs-mx-legend .cs-sq{width:16px;height:16px;border-radius:4px;font-size:.6rem;vertical-align:middle}.cs-sq-empty{color:var(--muted);font-size:.84rem}@media (max-width:760px){.cs-kpis{grid-template-columns:1fr;gap:10px}.cs-kpi-v{font-size:1.7rem}.cs-mx li{grid-template-columns:1fr}.cs-attn-acts{width:100%}.cs-attn-acts>*{flex:1 1;justify-content:center;text-align:center}.cs-mx-pct .cs-bar-mini{width:48px}}.cs-f-more{display:contents}.cs-f-toggle{display:none}@media (max-width:560px){.cs-search{flex:1 1}.cs-f-toggle{display:inline-flex;flex:none;align-items:center;padding:10px 16px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.88rem;font-weight:700;cursor:pointer}.cs-f-toggle.is-on,.cs-f-toggle[aria-expanded=true]{border-color:var(--ink)}.cs-f-more{display:none;flex-basis:100%;flex-direction:column;gap:8px}.cs-f-more.is-open{display:flex}}.cs-act{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font-size:.82rem;font-weight:700;text-decoration:none;white-space:nowrap}.cs-act:hover{border-color:var(--ink)}.cs-act.is-open{border-color:transparent;background:none;padding:0 6px}.cs-act.is-open:hover{text-decoration:underline;text-underline-offset:2px}.cs-attn.is-compact li{padding:9px 16px}.cs-empty-list{margin-top:12px}.cs-empty-list>summary{display:flex;flex-direction:column;gap:2px;padding:12px 16px;border:1.5px dashed var(--line-strong);border-radius:16px;cursor:pointer;list-style:none}.cs-empty-list>summary::-webkit-details-marker{display:none}.cs-empty-list>summary b{color:var(--ink);font-size:.92rem}.cs-empty-list>summary b:after{content:" ›";color:var(--muted)}.cs-empty-list[open]>summary b:after{content:" ⌄"}.cs-empty-list>summary small{color:var(--muted);font-size:.8rem}.cs-empty-list[open]>summary{margin-bottom:8px}@media (max-width:760px){.cs-attn-acts{width:auto}.cs-attn-acts>*{flex:none}}.cs-sqs-wrap{display:flex;flex-direction:column;gap:6px;min-width:0}button.cs-sq{padding:0;border:0;cursor:pointer;font:inherit;font-size:.7rem;font-weight:800}button.cs-sq.l0{border:1.5px dashed var(--line-strong)}button.cs-sq:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.cs-sq.is-sel{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--ink)}.cs-sq-tip{color:var(--text);font-size:.82rem;line-height:1.4}@media (max-width:760px){.cs-sq{width:26px;height:26px}}.cs-sq.is-future{opacity:.4}.cs-sq.l0.is-future{opacity:.5}.cs-sq.is-missing,button.cs-sq.is-missing{border:1.5px dashed var(--coral)!important;color:var(--coral-600);background:color-mix(in srgb,var(--coral) 8%,var(--surface))}.home-hello-ava,.topbar-avatar{position:relative;overflow:hidden}.home-hello-ava img.av-over,.topbar-avatar img.av-over{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}.menu-wrap.tk-wrap{max-width:1240px}.tk{--tk-high:#e0533d;--tk-mid:#e2a33b;--tk-low:#9aa3b0}.tk-muted{color:var(--muted);font-size:.85rem}.tk-pad{padding:10px 12px}.tk-n{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.75rem;font-weight:700}.tk-groups{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 12px}.tk-group{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 16px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-weight:600;cursor:pointer}.tk-group:hover{border-color:var(--line-strong)}.tk-group.is-on{background:var(--ink);border-color:var(--ink);color:var(--bg)}.tk-group.is-on .tk-n{background:color-mix(in srgb,var(--bg) 22%,transparent);color:var(--bg)}.tk-group.is-add{border-style:dashed;color:var(--muted)}.tk-group.is-add:hover{color:var(--ink)}.tk-ghead{margin:-2px 0 12px}.tk-members-btn{display:inline-flex;align-items:center;gap:10px;padding:4px 12px 4px 4px;border:0;border-radius:var(--pill);background:none;color:var(--ink);font:inherit;font-weight:600;cursor:pointer}.tk-members-btn:hover{background:var(--surface-2)}.tk-face{flex:none}.tk-face.is-none{background:var(--surface-2);color:var(--muted);font-weight:700}.tk-faces{display:inline-flex;align-items:center}.tk-faces .tk-face{box-shadow:0 0 0 2px var(--surface)}.tk-faces .tk-face+.tk-face{margin-left:-7px}.tk-more{margin-left:4px;color:var(--muted);font-size:.75rem;font-weight:700}.tk-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px}.tk-seg{display:inline-flex;gap:2px;padding:3px;border-radius:var(--pill);background:var(--seg-bg)}.tk-seg button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:6px 14px;border:0;border-radius:var(--pill);background:none;color:var(--muted);font:inherit;font-size:.92rem;font-weight:600;cursor:pointer;white-space:nowrap}.tk-seg button:hover{color:var(--ink)}.tk-seg button.is-on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.tk-dot{width:9px;height:9px;border-radius:50%;background:var(--tk-mid)}.tk-dot.is-high{background:var(--tk-high)}.tk-dot.is-low{background:var(--tk-low)}.tk-filter{position:relative}.tk-filter-btn{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:6px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-weight:600;cursor:pointer}.tk-filter-btn.is-on{border-color:var(--ink)}.tk-filter-btn span[aria-hidden]{color:var(--muted);font-size:.75rem}.tk-pop{position:absolute;z-index:30;top:calc(100% + 6px);left:0;width:300px;max-width:calc(100vw - 32px);padding:6px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-lg)}.tk-pop-list{max-height:340px;overflow-y:auto}.tk-pop-h{display:none;margin:6px 10px 8px;color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.tk-pop-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:4px}.tk-pop-backdrop,.tk-pop-done{display:none}.tk-new{margin-left:auto}.tk-alert{margin:-4px 0 14px;padding:10px 14px;border-radius:12px;background:var(--danger-soft);color:var(--danger-ink);font-size:.92rem}.tk-alert button{padding:0;background:none;color:inherit;text-decoration:underline}.tk-alert button,.tk-btn{border:0;font:inherit;font-weight:700;cursor:pointer}.tk-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:8px 18px;border-radius:var(--pill);background:var(--ink);color:var(--bg);white-space:nowrap}.tk-btn:disabled{opacity:.4;cursor:not-allowed}.tk-btn.is-ghost{background:none;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line-strong)}.tk-btn.is-quiet{min-height:36px;padding:6px 10px;background:none;color:var(--muted);font-weight:600}.tk-btn.is-quiet:hover{color:var(--ink)}.tk-btn.is-danger{background:var(--danger);color:#fff}.tk-del:hover{color:var(--danger)}.tk-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px;align-items:start}.tk-board.is-one{grid-template-columns:1fr}.tk-col{display:flex;flex-direction:column;gap:8px;min-height:160px;padding:12px;border-radius:18px;background:var(--surface-2);transition:box-shadow .15s}.tk-col.is-over{box-shadow:inset 0 0 0 2px var(--ink)}.tk-col-h{display:flex;align-items:center;gap:8px;margin:2px 4px 4px;color:var(--ink);font-family:var(--font-sans);font-size:.95rem;font-weight:700}.tk-col-dot{width:9px;height:9px;border-radius:50%;background:var(--sky-deep)}.tk-col-dot.is-doing{background:var(--coral)}.tk-col-dot.is-done{background:var(--ok)}.tk-list{display:flex;flex-direction:column;gap:8px}.tk-col-empty{margin:10px 4px;color:var(--muted);font-size:.88rem}.tk-card{position:relative;display:flex;flex-direction:column;gap:8px;width:100%;padding:12px 14px 12px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer;box-shadow:var(--shadow-sm);transition:box-shadow .15s,transform .15s}.tk-card:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:0 3px 3px 0;background:transparent}.tk-card.is-p-high:before{background:var(--tk-high)}.tk-card:hover{box-shadow:var(--shadow-md)}.tk-card[draggable=true]{cursor:-webkit-grab;cursor:grab}.tk-card.is-done .tk-card-t{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong)}.tk-card-group{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.tk-card-t{font-weight:600;line-height:1.35;overflow-wrap:anywhere}.tk-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:.8rem}.tk-card-meta .tk-faces{margin-left:auto}.tk-due{padding:2px 8px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-weight:600}.tk-due.is-soon{background:var(--warn-soft);color:var(--warn-ink)}.tk-due.is-over{background:var(--danger-soft);color:var(--danger-ink)}.tk-has-desc{color:var(--muted);font-weight:700}.tk-add{min-height:40px;padding:8px 10px;border:0;border-radius:12px;background:none;color:var(--muted);font:inherit;font-weight:600;text-align:left;cursor:pointer}.tk-add:hover{background:color-mix(in srgb,var(--ink) 5%,transparent);color:var(--ink)}.tk-quick{display:flex;flex-direction:column;gap:6px}.tk-quick-hint{padding:0 4px;font-size:.78rem}.tk-more-btn{align-self:flex-start}.tk-empty{padding:32px 20px;border-radius:18px;background:var(--surface-2);text-align:center}.tk-empty p{margin:0 0 12px;color:var(--muted)}.tk-input{width:100%;min-height:44px;padding:10px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--input-bg);color:var(--ink);font:inherit;font-size:1rem}.tk-input:focus{border-color:var(--ink);outline:none}textarea.tk-input{resize:vertical;line-height:1.45}.tk-title-in{font-size:1.1rem;font-weight:600}.tk-date{width:auto;min-width:170px}.tk-date-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px}select.tk-input.pill-select{border-radius:12px}.tk-overlay{position:fixed;z-index:200;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--overlay)}.tk-sheet{display:flex;flex-direction:column;width:560px;max-width:100%;max-height:min(90vh,860px);border-radius:20px;background:var(--surface);box-shadow:var(--shadow-lg)}.tk-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 16px 8px 22px}.tk-sheet-head h2{margin:0;color:var(--ink);font-family:var(--font-display);font-size:1.1rem;font-weight:600}.tk-x{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:none;color:var(--muted);font-size:1rem;cursor:pointer}.tk-x:hover{background:var(--surface-2);color:var(--ink)}.tk-sheet-body{flex:1 1;min-height:0;overflow-y:auto;padding:6px 22px 16px;overscroll-behavior:contain}.tk-sheet-foot{padding:12px 16px 16px 22px;border-top:1px solid var(--line)}.tk-foot-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.tk-confirm,.tk-foot-main{display:inline-flex;gap:8px}.tk-confirm{flex-wrap:wrap;align-items:center;color:var(--ink);font-weight:600}.tk-err{margin:0 0 10px;color:var(--danger);font-size:.9rem}.tk-form{gap:18px}.tk-field,.tk-form{display:flex;flex-direction:column}.tk-field{gap:8px}.tk-label{color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.tk-label-sub{margin-top:6px}.tk-field .tk-seg{align-self:flex-start}.tk-chips{display:flex;flex-wrap:wrap;gap:6px}.tk-add-chip,.tk-chip{min-height:36px;padding:6px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.9rem;font-weight:600;cursor:pointer}.tk-chip.is-on{background:var(--ink);border-color:var(--ink);color:var(--bg)}.tk-add-chip{border-style:dashed;color:var(--muted)}.tk-person{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:3px 4px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.9rem;font-weight:600}.tk-person button{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:50%;background:none;color:var(--muted);font-size:.75rem;cursor:pointer}.tk-person button:hover{background:var(--surface);color:var(--ink)}.tk-meta{margin:0;color:var(--muted);font-size:.82rem}.tk-picker{display:flex;flex-direction:column;gap:6px}.tk-members,.tk-picker-list{margin:0;padding:0;list-style:none}.tk-picker-list{max-height:260px;overflow-y:auto;border:1px solid var(--line);border-radius:12px}.tk-pick{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:6px 10px;border:0;border-radius:10px;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.tk-pick:hover{background:var(--surface-2)}.tk-pick.is-on{font-weight:600}.tk-pick-n{display:flex;flex:1 1;flex-direction:column;min-width:0;line-height:1.25}.tk-pick-n small{color:var(--muted);font-size:.75rem;font-weight:500}.tk-check{flex:none;width:22px;color:var(--ok);font-weight:800;text-align:center}.tk-pick:not(.is-on) .tk-check{color:var(--muted)}.tk-members li{display:flex;align-items:center;gap:10px;min-height:44px;padding:4px 0;border-bottom:1px solid var(--line)}.tk-members li:last-child{border-bottom:0}.tk-toast{position:fixed;z-index:210;left:50%;bottom:24px;max-width:calc(100vw - 32px);padding:12px 18px;border-radius:14px;background:var(--ink);color:var(--bg);font-weight:600;transform:translateX(-50%);box-shadow:var(--shadow-lg)}@media (max-width:760px){.tk-groups{flex-wrap:nowrap;overflow-x:auto;margin-left:-16px;margin-right:-16px;padding:0 16px}.tk-group{flex:none}.tk-toolbar{gap:8px}.tk-toolbar>.tk-seg{flex:1 1 100%}.tk-filter,.tk-toolbar>.tk-seg button{flex:1 1}.tk-filter-btn{width:100%;justify-content:space-between}.tk-new{margin-left:0}.tk-coltabs{display:flex;width:100%;margin-bottom:10px}.tk-coltabs button{flex:1 1;padding:6px 8px}.tk-col{padding:8px;background:none;min-height:0}.tk-overlay{align-items:flex-end;padding:0}.tk-sheet{width:100%;max-height:92dvh;border-radius:20px 20px 0 0}.tk-sheet-head{padding:14px 10px 6px 18px}.tk-sheet-body{padding:4px 18px 16px}.tk-sheet-foot{padding:10px 16px calc(12px + env(safe-area-inset-bottom, 0px))}.tk-foot-row{gap:6px}.tk-foot-main{justify-content:flex-end;gap:6px}.tk-sheet-foot .tk-btn{padding:8px 14px}.tk-sheet-foot .tk-del{padding:6px 4px}.tk-confirm{font-size:.9rem}.tk-field .tk-seg{align-self:stretch}.tk-field .tk-seg button{flex:1 1;padding:6px 8px}.tk-pop-backdrop{display:block;position:fixed;z-index:190;inset:0;background:var(--overlay)}.tk-pop{position:fixed;z-index:200;left:0;right:0;top:auto;bottom:0;width:auto;max-width:none;padding:12px 12px calc(12px + env(safe-area-inset-bottom, 0px));border:0;border-radius:20px 20px 0 0}.tk-pop-h{display:block}.tk-pop-list{max-height:55vh}.tk-pop-done{display:inline-flex}.tk-toast{bottom:calc(16px + env(safe-area-inset-bottom, 0px))}}.tk-mbar{margin:2px 0 10px}.tk-mbar,.tk-mgroup{display:flex;gap:8px}.tk-mgroup{flex:1 1;min-width:0;align-items:center;min-height:48px;padding:6px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.tk-mgroup-l{color:var(--muted);font-size:.8rem}.tk-mgroup-n{flex:1 1;min-width:0;overflow:hidden;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.tk-chev{color:var(--muted);font-size:.75rem}.tk-mfilter{display:inline-flex;flex:none;align-items:center;gap:6px;min-height:48px;padding:6px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);font:inherit;font-weight:600;cursor:pointer}.tk-mfilter.is-on{border-color:var(--ink)}.tk-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:var(--pill);background:var(--coral);color:#fff;font-size:.72rem;font-weight:800}.tk-mshown{margin:-2px 0 10px;color:var(--muted);font-size:.88rem}.tk-mshown button{padding:0;border:0;background:none;color:var(--ink);font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.tk-mtabs{display:flex;margin:0 0 12px;border-bottom:1px solid var(--line)}.tk-mtabs button{flex:1 1;min-height:44px;margin-bottom:-1px;padding:8px 4px;border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);font:inherit;font-weight:600;cursor:pointer}.tk-mtabs button span{color:var(--muted);font-weight:500}.tk-mtabs button.is-on{border-bottom-color:var(--ink);color:var(--ink)}.tk-rows{display:flex;flex-direction:column;margin:4px 0 8px}.tk-rows-actions{margin-top:10px;padding-top:8px;border-top:1px solid var(--line)}.tk-row{display:flex;align-items:center;gap:10px;width:100%;min-height:50px;padding:8px 4px;border:0;border-bottom:1px solid var(--line);background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.tk-rows>.tk-row:last-child{border-bottom:0}.tk-row-n{flex:1 1;min-width:0;font-weight:600}.tk-row-sub{color:var(--muted);font-size:.82rem}.tk-row.is-on .tk-row-n{font-weight:800}@media (max-width:760px){.tk-add{width:100%;min-height:48px;border:1.5px dashed var(--line-strong);text-align:center;color:var(--ink)}.tk-col{padding:0}}:root[data-theme=dark] .tk-card{box-shadow:none}:root[data-theme=dark] .tk-seg button.is-on{background:var(--surface-2)}.pf-photo button.beta-btn{flex:none}@media (max-width:640px){.pf-photo button.beta-btn{width:100%;text-align:center}}.pf-photo-t span.is-err{color:var(--danger)}.sp-pending{display:inline-flex;align-items:center;gap:8px;margin-top:4px}.sp-pending img{width:32px;height:32px;border-radius:50%;object-fit:cover;opacity:.8}.sp-del button,.sp-link{align-self:flex-start;padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:.84rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.sp-del{color:var(--ink)!important;font-size:.84rem}.sp-del button{color:var(--ink);font-weight:700}@media (min-width:761px){.sp-sheet{width:520px}.sp-sheet.is-wide{width:100%;max-width:960px}}@media (max-width:640px){.sp-sheet.is-wide{padding:18px 10px 20px;border-radius:20px}.sp-sheet.is-wide .sp-sheet-actions,.sp-sheet.is-wide .sp-sheet-head{padding:0 8px}.sp-sheet-back:has(.sp-sheet.is-wide){padding:2vh 6px}}.sp-pick .tk-btn,.sp-pick label.tk-btn{text-transform:none;letter-spacing:0;font-size:1rem}.sp-sheet .tk-sheet-foot .sp-agree{margin-bottom:10px}.sp-sheet .tk-sheet-body{flex:0 1 auto}.sp-lead{margin:0 0 12px;color:var(--text);line-height:1.5}.sp-rules{margin:0 0 14px;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.sp-rules li{position:relative;padding-left:30px;color:var(--text);line-height:1.45}.sp-rules li:before{position:absolute;left:0;top:1px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;font-size:.72rem;font-weight:800}.sp-rules li.is-yes:before{content:"✓";background:var(--ok-soft);color:var(--ok)}.sp-rules li.is-no:before{content:"✕";background:var(--danger-soft);color:var(--danger)}.sp-note{margin:0 0 12px;padding:10px 12px;border-radius:12px;background:var(--surface-2);color:var(--muted);font-size:.88rem;line-height:1.45}.sp-agree{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1.5px solid var(--line);border-radius:12px;color:var(--ink);font-size:.95rem;font-weight:600;text-transform:none;letter-spacing:0;cursor:pointer}.sp-agree.is-on{border-color:var(--ok);background:var(--ok-soft)}.sp-agree input{flex:none;width:20px;height:20px;margin:1px 0 0;accent-color:var(--ink)}.sp-pick{display:flex;flex-wrap:wrap;gap:8px}.sp-pick>*{flex:1 1 180px;cursor:pointer}.tk-btn.is-disabled{opacity:.4;cursor:not-allowed}.sp-checking{display:flex;align-items:center;justify-content:center;gap:10px;min-height:160px;margin:0;color:var(--muted);font-weight:600}.sp-spin{width:22px;height:22px;border:3px solid var(--line);border-top-color:var(--ink);border-radius:50%;animation:sp-spin .8s linear infinite}@keyframes sp-spin{to{transform:rotate(1turn)}}.sp-result{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:12px}.sp-preview{flex:none;width:128px;height:128px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 4px var(--surface-2)}.sp-checks{flex:1 1 200px;margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.sp-checks li{position:relative;padding-left:26px;color:var(--text);line-height:1.4}.sp-checks li:before{position:absolute;left:0;top:0;font-weight:800}.sp-checks li.is-ok:before{content:"✓";color:var(--ok)}.sp-checks li.is-warn:before{content:"!";left:6px;color:var(--danger)}@media (max-width:760px){.sp-result{flex-direction:column;text-align:left}.sp-checks{flex:none;align-self:stretch}.sp-preview{width:140px;height:140px}.sp-pick>*{flex-basis:100%}}.pm-lead{max-width:680px;margin:0 0 14px;color:var(--muted);line-height:1.5}.pm-tabs{max-width:420px}.pm-empty{color:var(--muted)}.pm-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:12px;gap:12px;margin:0;padding:0;list-style:none}.pm-card{display:flex;gap:14px;padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.pm-photo{flex:none;width:120px;height:120px;border-radius:14px;object-fit:cover;background:var(--surface-2)}.pm-list.is-approved .pm-photo{width:72px;height:72px;border-radius:50%}.pm-body{display:flex;flex:1 1;min-width:0;flex-direction:column;gap:4px}.pm-name{color:var(--ink)}.pm-meta{color:var(--muted);font-size:.85rem}.pm-why{color:var(--danger-ink);font-size:.85rem}.pm-cur{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:.8rem}.pm-cur img{width:24px;height:24px;border-radius:50%;object-fit:cover}.pm-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:8px}.pm-reject{display:flex;flex-direction:column;gap:8px;margin-top:8px}.pm-label{color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}@media (max-width:760px){.pm-list{grid-template-columns:1fr}.pm-list.is-pending .pm-card{flex-direction:column;align-items:flex-start}.pm-list.is-pending .pm-photo{width:200px;height:200px}.pm-actions .tk-btn{flex:1 1}}.ftt{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px}.ftt-btn{min-height:32px;padding:4px 12px;border:1.5px solid var(--line-strong);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}.ftt-btn:hover{border-color:var(--ink)}.ftt-btn:disabled{opacity:.5;cursor:progress}.ftt-done{color:var(--ok);font-size:.82rem;font-weight:700;text-decoration:none}.ftt-done:hover{text-decoration:underline}.ftt-err{color:var(--danger);font-size:.8rem}.tk-prio{display:inline-flex;align-items:center;gap:5px;padding:2px 9px 2px 7px;border-radius:var(--pill);font-size:.78rem;font-weight:700;line-height:1.5}.tk-prio.is-high{background:color-mix(in srgb,var(--tk-high) 13%,var(--surface));color:var(--tk-high)}.tk-prio.is-mid{background:color-mix(in srgb,var(--tk-mid) 16%,var(--surface));color:color-mix(in srgb,var(--tk-mid) 70%,var(--ink))}.tk-prio.is-low{background:var(--surface-2);color:var(--muted)}.tk-fire{font-size:.78rem;letter-spacing:-.12em}.tk-fire.is-low,.tk-prio.is-low .tk-fire{filter:grayscale(1);opacity:.6}.tk-prio-seg button{gap:6px}.tk-card-tags{display:flex;flex-wrap:wrap;gap:6px}.tk-tag{display:inline-flex;align-items:center;padding:2px 9px;border-radius:var(--pill);font-size:.74rem;font-weight:700}.tk-tag.is-approve{background:var(--warn-soft);color:var(--warn-ink);box-shadow:inset 0 0 0 1px var(--warn-line)}.tk-tag.is-fb{background:var(--sky-tint);color:var(--empty-ink)}.tk-card-who{display:flex;align-items:center;gap:7px;margin-top:2px;color:var(--ink);font-size:.85rem;font-weight:600}.tk-card-who.is-none{color:var(--muted);font-size:.78rem;font-weight:500}.tk-approve{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1.5px solid var(--line);border-radius:12px;cursor:pointer}.tk-approve.is-on{border-color:var(--warn-line);background:var(--warn-soft)}.tk-approve input{flex:none;width:20px;height:20px;margin:1px 0 0;accent-color:var(--ink)}.tk-approve span{display:flex;flex-direction:column;gap:2px}.tk-approve b{color:var(--ink)}.tk-approve small{color:var(--muted);font-size:.82rem;line-height:1.4}.tk-approve-btn{align-self:flex-start}.tk-approve-filter{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:6px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-weight:600;cursor:pointer}.tk-approve-filter.is-on{border-color:var(--warn-line);background:var(--warn-soft);color:var(--warn-ink)}:root[data-theme=dark] .tk-tag.is-approve{color:#f0c674;background:hsla(40,81%,70%,.12)}.pn-acts{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}.pn-acts .tk-btn{min-height:40px;text-decoration:none}.pm-pair{display:flex;flex:none;gap:8px}.pm-ref{display:flex;flex-direction:column;align-items:center;gap:4px}.pm-ref img{width:120px;height:120px;border-radius:14px;object-fit:cover;background:var(--surface-2)}.pm-ref small{color:var(--muted);font-size:.74rem}.pm-ref-none{display:grid;place-items:center;width:120px;height:120px;padding:8px;border:1.5px dashed var(--line-strong);border-radius:14px;color:var(--muted);font-size:.78rem;text-align:center}@media (max-width:760px){.pm-list.is-pending .pm-pair .pm-photo,.pm-ref img,.pm-ref-none{width:140px;height:140px}}.portal-tasks .topbar-inner{max-width:1240px}.tk-card:before{display:none}.tk-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:4px 0 10px}.tk-top .tk-groups{flex:1 1;min-width:0;margin:0}.tk-top .tk-members-btn{flex:none;min-height:40px}.tk-secgroup{display:flex;flex-direction:column;gap:10px}.tk-secgroup+.tk-secgroup{margin-top:6px}.tk-sec-h{margin:2px 2px 0;color:var(--muted);font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.tk-sec-h span{margin-left:4px;font-weight:600;letter-spacing:0}.tk-toolbar-gap{flex:1 1}.tk-archive-btn{display:inline-flex;align-items:center;gap:6px;min-height:42px;padding:6px 14px;border:0;border-radius:var(--pill);background:none;color:var(--muted);font:inherit;font-weight:600;cursor:pointer}.tk-archive-btn:hover{background:var(--surface-2);color:var(--ink)}.tk-pop-sub{margin:10px 10px 4px;padding-top:10px;border-top:1px solid var(--line);color:var(--muted);font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.tk-to-archive{margin-left:auto;min-height:30px;padding:4px 10px;border:0;border-radius:var(--pill);background:none;color:var(--muted);font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.tk-to-archive:hover{background:color-mix(in srgb,var(--ink) 6%,transparent);color:var(--ink)}.tk-lanes{display:flex;flex-direction:column;gap:10px}.tk-lanes-head{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px;padding:0 12px}.tk-lanes-head .tk-col-h{margin:0 4px;min-height:30px}.tk-lane{padding:8px 12px 12px;border-radius:18px;background:var(--surface-2)}.tk-lane.is-closed{padding-bottom:8px}.tk-lane-h{display:flex;align-items:center;gap:8px}.tk-lane-toggle{display:inline-flex;align-items:baseline;gap:10px;min-height:38px;padding:6px 8px 6px 4px;border:0;border-radius:10px;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.tk-lane-toggle:hover .tk-lane-n{text-decoration:underline;text-underline-offset:3px}.tk-lane-chev{display:inline-block;width:14px;color:var(--muted);font-size:.8rem;transition:transform .15s}.tk-lane.is-closed .tk-lane-chev{transform:rotate(-90deg)}.tk-lane-n{font-family:var(--font-display,inherit);font-size:1rem;font-weight:700}.tk-lane.is-none .tk-lane-n{color:var(--muted)}.tk-lane-meta{color:var(--muted);font-size:.82rem;font-weight:500}.tk-lane-edit{margin-left:auto;min-height:32px;padding:4px 10px;border:0;border-radius:var(--pill);background:none;color:var(--muted);font:inherit;font-size:.82rem;font-weight:600;cursor:pointer;opacity:0;transition:opacity .15s}.tk-lane-edit:focus-visible,.tk-lane:hover .tk-lane-edit{opacity:1}.tk-lane-edit:hover{background:color-mix(in srgb,var(--ink) 6%,transparent);color:var(--ink)}@media (hover:none){.tk-lane-edit{opacity:1}}.tk-lane-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px;margin-top:6px}.tk-cell{display:flex;flex-direction:column;gap:8px;min-height:54px;padding:6px;border-radius:14px;background:color-mix(in srgb,var(--surface) 45%,transparent);transition:box-shadow .15s,background .15s}.tk-cell.is-over{box-shadow:inset 0 0 0 2px var(--ink)}.tk-cell .tk-add{min-height:36px}.tk-lane-add{min-height:48px;padding:10px 16px;border:1.5px dashed var(--line);border-radius:18px;background:none;color:var(--muted);font:inherit;font-weight:600;text-align:left;cursor:pointer}.tk-lane-add:hover{border-color:var(--line-strong);color:var(--ink)}.tk-lane-add.is-input{padding:6px;border-style:solid}.tk-lane-add.is-input .tk-input{width:100%}.tk-lane-add.is-quiet{margin-top:12px;min-height:40px;padding:8px 12px;border:0;border-radius:var(--pill)}.tk-lane-add.is-quiet:hover{background:var(--surface-2)}.tk-lane-add.is-quiet.is-input{display:block;max-width:420px;padding:0}.tk-mfoot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px}.tk-arch-q{width:100%;margin-bottom:8px}.tk-arch-empty{margin:8px 2px 4px}.tk-arch{margin:0;padding:0;list-style:none}.tk-arch li{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line)}.tk-arch li:last-child{border-bottom:0}.tk-arch-open{display:flex;flex:1 1;min-width:0;flex-direction:column;gap:2px;min-height:52px;padding:10px 4px;border:0;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.tk-arch-open:hover .tk-arch-t{text-decoration:underline;text-underline-offset:3px}.tk-arch-t{font-weight:600;overflow-wrap:anywhere}.tk-arch-sub{color:var(--muted);font-size:.8rem}.tk-arch-back{flex:none}.tk-prio{padding:0;background:none!important;font-size:.82rem;letter-spacing:-.12em}.tk-secs{display:flex;flex-direction:column;gap:6px;margin:6px 0 8px;padding:0;list-style:none}.tk-secs li{display:flex;align-items:center;gap:8px}.tk-secs .tk-input{flex:1 1;min-width:0}.tk-sec-add{display:flex;align-items:center;gap:8px}.tk-sec-add .tk-input{flex:1 1;min-width:0}@media (max-width:760px){.tk-mtabs button{font-size:.86rem;padding:8px 2px}}.tk-top{align-items:flex-end;margin:4px 0 14px;border-bottom:1px solid var(--line)}.tk-top .tk-groups{flex-wrap:nowrap;gap:4px;overflow-x:auto;scrollbar-width:none}.tk-top .tk-groups::-webkit-scrollbar{display:none}.tk-top .tk-group{flex:none;min-height:44px;margin-bottom:-1px;padding:8px 12px;border:0;border-bottom:2px solid transparent;border-radius:0;background:none;color:var(--muted)}.tk-top .tk-group:hover{color:var(--ink)}.tk-top .tk-group.is-on{border-bottom-color:var(--ink);background:none;color:var(--ink)}.tk-top .tk-group.is-on .tk-n{background:var(--surface-2);color:var(--ink)}.tk-top .tk-group.is-add{border-style:solid;border-color:transparent;color:var(--muted);font-weight:500}.tk-top .tk-members-btn{margin-bottom:4px}.tk-mfoot{justify-content:flex-start;flex-wrap:wrap}.tk-mfoot .tk-archive-btn{margin-left:-14px}.as-kicker{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;min-width:0;margin-bottom:1px}.as-kind{flex:none;padding:1px 8px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.72rem;font-weight:700;line-height:1.6}.as-kind.is-homework{background:var(--sky);color:var(--sky-ink,#0b3550)}.as-kind.is-task{background:var(--ok-soft);color:var(--ok)}.as-kind.is-self{background:color-mix(in srgb,#14b8a6 20%,var(--surface));color:#0f766e}:root[data-theme=dark] .as-kind.is-self{color:#5eead4}.as-kicker-lesson{min-width:0;overflow:hidden;color:var(--muted);font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.as-answer.is-fb>summary .as-kind,.as-answer.is-new>summary .as-kind{background:hsla(0,0%,100%,.9);color:#23262d}.as-answer.is-new>summary .as-kicker-lesson{color:hsla(0,0%,100%,.88)}.as-answer.is-fb>summary .as-kicker-lesson{color:rgba(11,53,80,.75)}.as-prompt{margin:14px 0 4px;padding:12px 14px;border-radius:14px;background:var(--surface-2)}.as-prompt-h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.as-prompt-l{margin:0;color:var(--muted);font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.as-answer-l{margin:16px 0 6px}.tr-ans .as-group-part+.as-group-part{margin-top:14px}.tr-ans .as-group-part>.as-prompt-l{margin-bottom:6px}.as-prompt .as-task-link{margin:0;background:var(--surface);font-size:.82rem}.as-prompt-text{margin:0;color:var(--text);font-size:.9rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.as-prompt-text.is-clamped{display:-webkit-box;overflow:hidden;-webkit-line-clamp:5;-webkit-box-orient:vertical}.as-prompt-more{margin-top:6px;padding:4px 0;border:0;background:none;color:var(--ink);font:inherit;font-size:.84rem;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.as-prompt-int{margin:0 0 6px;color:var(--text);font-size:.88rem}.as-prompt-muted{margin:0;color:var(--muted);font-size:.86rem}:root[data-theme=dark] .as-kind.is-homework{color:var(--brand-blue)}.as-answer.is-fb{border-color:var(--line)}.as-answer.is-fb>summary{background:none}.as-answer.is-fb>summary .as-answer-chev,.as-answer.is-fb>summary .as-answer-main strong{color:var(--ink)}.as-answer.is-fb>summary .as-answer-meta,.as-answer.is-fb>summary .as-kicker-lesson{color:var(--muted)}.as-answer.is-fb>summary .as-kind{background:var(--surface-2);color:var(--ink)}.as-answer.is-fb>summary .as-fb-state.is-done{background:var(--ok-soft);color:var(--ok)}.as-answer.is-fb>summary .as-avatar-fallback{background:var(--surface-2)}.as-answer.is-fb .as-answer-body{border-top-color:var(--line)}.as-answer.is-new.is-fb{border-color:var(--coral)}.as-answer.is-new.is-fb>summary{background:var(--coral)}.as-answer.is-new.is-fb>summary .as-answer-chev,.as-answer.is-new.is-fb>summary .as-answer-main strong{color:#fff}.les-bh{margin:20px 0 6px;line-height:1.3}.les-bh1{font-size:1.2rem}.les-bh2{font-size:1.08rem}.les-bh3{font-size:.98rem}.les-doc>.les-bh:first-child{margin-top:4px}.les-doc strong{color:var(--ink);font-weight:700}.les-icode{padding:1px 5px;border-radius:6px;background:var(--surface-2);font-size:.86em}.les-bquote{color:var(--text);background:color-mix(in srgb,var(--coral) 6%,transparent);border-radius:0 10px 10px 0;padding:8px 12px}.spf-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px}.spf-grow{flex:1 1;min-width:0}.spf-cnt{color:var(--muted);font-size:.86rem;font-weight:400}.spf-loading{margin:18px 0;color:var(--muted);font-size:.92rem}.spf-note{margin:14px 0 0;color:var(--muted);font-size:.82rem}.spf-note a{color:var(--ink)}.spf-err{margin:8px 0 0;color:var(--danger);font-size:.84rem}.spf-more{margin:18px 0 0;text-align:center}.spf-fld{width:100%;padding:9px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--input-bg);color:var(--ink);font:inherit;font-size:.92rem}.spf-fld:focus{outline:none;border-color:var(--ink)}textarea.spf-fld{display:block;resize:vertical}input[type=date].spf-fld{width:auto}.spf-search{width:220px;border-radius:var(--pill)}.spf-chips{display:flex;flex-wrap:wrap;gap:6px}.spf-chip{display:inline-flex;align-items:center;padding:2px 10px;border-radius:var(--pill);background:var(--surface-2);color:var(--text);font-size:.78rem;font-weight:700;white-space:nowrap;text-decoration:none}.spf-chip.is-sky{background:var(--sky-tint);color:var(--empty-ink)}.spf-chip.is-coral{background:var(--icon-tint);color:var(--coral-600)}.spf-chip.is-ok{background:var(--ok-soft);color:var(--ok)}.spf-chip.is-bad{background:var(--danger-soft);color:var(--danger-ink)}a.spf-chip:hover{box-shadow:0 0 0 1.5px currentColor}.spf-ava{position:relative;flex:none;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border:1.5px solid var(--line);border-radius:50%;background:var(--surface-2);color:var(--muted);font-weight:800}.spf-ava img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.spf-gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));grid-gap:14px}.spf-tile{display:flex;flex-direction:column;align-items:center;gap:8px;padding:18px 12px 14px;border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);font:inherit;text-align:center;cursor:pointer;transition:transform .15s,border-color .15s}.spf-tile:hover{border-color:var(--ink);transform:translateY(-2px)}.spf-tile b{color:var(--ink);font-size:.95rem;line-height:1.25}.spf-grp{display:flex;align-items:baseline;gap:8px;margin:20px 0 8px}.spf-grp h2{margin:0;color:var(--ink);font-family:var(--font-sans);font-size:1rem;font-weight:800}.spf-grp span{color:var(--muted);font-size:.84rem}.cfb-course{display:grid;grid-gap:10px;gap:10px}.cfb-item{padding:10px 12px;border:1px solid var(--line);border-radius:12px}.cfb-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px}.cfb-meta b{color:var(--ink);font-size:.88rem}.cfb-meta .spf-chip{margin-top:0}.cfb-meta small{margin-left:auto;color:var(--muted);font-size:.78rem}.cfb-item p{margin:6px 0 0;color:var(--ink);font-size:.92rem;line-height:1.5;white-space:pre-wrap}.spf-pills{gap:8px}.spf-pill{display:inline-flex;align-items:center;gap:8px;padding:5px 14px 5px 6px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;font-size:.88rem;cursor:pointer}.spf-pill:hover{border-color:var(--ink)}.spf-tbl{overflow:hidden;border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface)}.spf-tr{display:grid;grid-template-columns:minmax(0,2.4fr) 1fr .8fr;grid-gap:10px;gap:10px;align-items:center;width:100%;padding:10px 16px;border:0;border-top:1px solid var(--line);background:none;color:var(--text);font:inherit;font-size:.9rem;text-align:left;cursor:pointer}.spf-tr:first-child{border-top:0}.spf-tr.is-head{color:var(--muted);font-size:.78rem;font-weight:800;cursor:default}.spf-tr.is-head,.spf-tr:not(.is-head):hover{background:var(--surface-2)}.spf-nm{gap:10px;min-width:0;color:var(--ink);font-weight:700}.spf-head,.spf-nm{display:flex;align-items:center}.spf-head{gap:16px;margin-bottom:14px}.spf-head h1{margin:0 0 6px;color:var(--ink);font-family:var(--font-display);font-size:1.6rem;font-weight:600;letter-spacing:0}.spf-head-t{flex:1 1;min-width:0}.spf-nav{display:flex;gap:6px;margin-left:auto}.spf-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:26px 40px;gap:26px 40px}.spf-sec h3{margin:0 0 10px;color:var(--muted);font-family:var(--font-sans);font-size:.78rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.spf-kv{display:grid;grid-template-columns:130px minmax(0,1fr);grid-gap:8px 14px;gap:8px 14px;margin:0;font-size:.92rem}.spf-kv dt{color:var(--muted)}.spf-kv dd{margin:0;color:var(--ink);font-weight:600;overflow-wrap:anywhere}.spf-kv a{color:inherit}.spf-lock{margin:14px 0 0;padding:6px 10px;border:1px solid var(--warn-line);border-radius:12px;background:var(--warn-soft);color:var(--warn-ink);font-size:.8rem}.spf-big{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;margin-bottom:20px}.spf-big div{padding:14px 16px;border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface)}.spf-big b{display:block;color:var(--ink);font-family:var(--font-display);font-size:1.5rem;font-weight:600}.spf-big span,.spf-wk{color:var(--muted);font-size:.8rem}.spf-wk{display:grid;grid-template-columns:130px repeat(5,1fr);grid-gap:6px;gap:6px;align-items:center;margin-bottom:6px}.spf-wk .spf-d{display:flex;align-items:center;justify-content:center;height:34px;border-radius:10px;font-size:.78rem;font-weight:800}.spf-d.is-ok{background:var(--ok-soft);color:var(--ok)}.spf-d.is-late{background:var(--warn-soft);color:var(--warn-ink)}.spf-d.is-abs{background:var(--danger-soft);color:var(--danger-ink)}.spf-d.is-exc{background:var(--sky-tint);color:var(--empty-ink)}.spf-d.is-no{background:var(--surface-2);color:var(--muted)}.spf-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:14px;color:var(--muted);font-size:.78rem}.spf-legend i{display:inline-block;width:12px;height:12px;margin-right:5px;border-radius:4px;vertical-align:-2px}.spf-row{display:grid;grid-template-columns:minmax(0,1fr) 150px 52px;grid-gap:6px 14px;gap:6px 14px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}.spf-row b,.spf-row-t{display:block;color:var(--ink);font-weight:700;text-decoration:none}a.spf-row-t:hover{text-decoration:underline}.spf-row small{color:var(--muted);font-size:.82rem}.spf-pct{text-align:right}.spf-prog{height:7px;overflow:hidden;border-radius:4px;background:var(--surface-2)}.spf-prog i{display:block;height:100%;background:var(--ok)}.spf-sq{display:flex;flex-wrap:wrap;gap:3px;margin-top:6px}.spf-sq i{width:14px;height:14px;border-radius:4px}.spf-fbr{margin-bottom:10px;border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface)}.spf-fbr.is-open{border-color:var(--line-strong);box-shadow:var(--shadow-sm)}.spf-fbr-h{display:flex;align-items:flex-start;gap:12px;width:100%;padding:14px 18px;border:0;background:none;font:inherit;text-align:left;cursor:pointer}.spf-fbr-h .spf-chip{margin-top:2px}.spf-fbr-k{flex:1 1;min-width:0}.spf-fbr-k b{display:block;color:var(--ink);font-size:.97rem;line-height:1.35}.spf-fbr-k small{color:var(--muted);font-size:.8rem}.spf-chev{flex:none;display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--surface-2);color:var(--muted);font-weight:800}.spf-fbr-h:hover .spf-chev{color:var(--ink)}.spf-fb-body{position:relative;margin:0 18px;padding:14px 52px 6px 0;border-top:1px solid var(--line)}.spf-fb-text{color:var(--text);font-size:.97rem;line-height:1.7;overflow-wrap:anywhere}.spf-ed-body h4,.spf-fb-text h4{margin:12px 0 2px;color:var(--ink);font-family:var(--font-sans);font-size:.98rem;font-weight:700}.spf-ed-body h2,.spf-fb-text h2{font-size:1.14rem}.spf-ed-body h2,.spf-ed-body h3,.spf-fb-text h2,.spf-fb-text h3{margin:18px 0 6px;color:var(--ink);font-family:var(--font-sans);font-weight:800}.spf-ed-body h3,.spf-fb-text h3{padding:6px 12px;border-radius:10px;background:var(--sky-tint);font-size:1.04rem;line-height:1.4}.spf-ed-body>h2:first-child,.spf-ed-body>h3:first-child,.spf-fb-text>h2:first-child,.spf-fb-text>h3:first-child{margin-top:2px}.spf-ed-body p>i:only-child,.spf-fb-text p>i:only-child{color:var(--muted);font-size:.92em}.spf-ed-body blockquote,.spf-fb-text blockquote{margin:8px 0;padding:8px 12px;border-left:3px solid var(--line-strong);border-radius:0 10px 10px 0;background:var(--surface-2)}.spf-ed-body img,.spf-fb-text img{display:block;max-width:100%;height:auto;margin:8px 0;border-radius:10px}.spf-ed-body hr,.spf-fb-text hr{margin:12px 0;border:0;border-top:1px solid var(--line)}.spf-ed-body a,.spf-fb-text a{color:var(--link,var(--ink));text-decoration:underline}.spf-ed-body ul,.spf-fb-text ol,.spf-fb-text ul{margin:4px 0;padding-left:20px}.spf-ed-body p,.spf-fb-text p{margin:0 0 8px}.spf-fb-text mark{padding:1px 0;border-radius:4px;background:var(--warn-soft);box-shadow:0 0 0 2px var(--warn-soft),0 2px 0 0 var(--warn-line);color:inherit;cursor:pointer}.spf-fb-text mark.is-act{background:var(--coral);box-shadow:0 0 0 2px var(--coral);color:#fff}.spf-fbr-f{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:10px 18px 14px}.spf-fbr-f>.spf-hint{flex:1 1 260px}.spf-fbr-acts{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;flex:0 1 auto}.spf-fbr-acts>.spf-grow{display:none}@media (max-width:640px){.spf-fbr-f{flex-direction:column;align-items:stretch;gap:10px;padding:10px 14px 14px}.spf-fbr-f>.spf-hint{flex:none}.spf-fbr-acts{padding-top:10px;border-top:1px solid var(--line)}.spf-fbr-acts>.spf-grow{display:block}}.spf-hint{color:var(--muted);font-size:.78rem}.spf-cico{position:absolute;right:0;width:32px;height:28px;border:1.5px solid var(--line-strong);border-radius:10px 10px 10px 2px;background:var(--surface);color:var(--ink);font:inherit;font-size:.76rem;font-weight:800;cursor:pointer}.spf-cico.is-act,.spf-cico:hover{border-color:var(--coral);background:var(--coral);color:#fff}.spf-selpop{z-index:20;padding:6px 14px;border:0;border-radius:var(--pill);background:var(--ink);color:var(--surface);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}.spf-cpop,.spf-selpop{position:absolute;box-shadow:var(--shadow-md)}.spf-cpop{right:0;z-index:15;width:320px;max-width:100%;padding:14px;border:1.5px solid var(--line-strong);border-radius:16px;background:var(--surface);font-size:.86rem}.spf-cpop q{display:block;margin:0 22px 10px 0;padding-left:8px;border-left:3px solid var(--coral);color:var(--muted);font-size:.78rem;quotes:"«" "»"}.spf-cpop-x{position:absolute;top:8px;right:10px;border:0;background:none;color:var(--muted);font-size:1.1rem;cursor:pointer}.spf-cm{display:flex;gap:8px;margin-bottom:10px}.spf-cm b{color:var(--ink);font-size:.82rem}.spf-cm small{color:var(--muted);font-size:.74rem}.spf-cm p{margin:2px 0;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere}.spf-cpop-r{display:flex;gap:6px;margin-top:4px}.spf-cpop-r .spf-fld{flex:1 1;padding:6px 12px;border-radius:var(--pill)}.spf-cpop-r .dm-btn{padding:6px 12px}.spf-compose{margin-bottom:14px;padding:18px;border:1.5px solid var(--ink);border-radius:var(--radius);background:var(--surface)}.spf-draft{margin:0 0 10px;padding:8px 12px;border-radius:10px;background:var(--sky-soft,rgba(80,140,220,.1));color:var(--ink);font-size:.85rem}.spf-fb-meta{display:grid;grid-template-columns:minmax(0,1fr) 170px;grid-gap:12px;gap:12px;align-items:end}.spf-fb-meta>label{display:flex;flex-direction:column;min-width:0}.spf-fb-meta select.spf-fld{width:100%}@media (max-width:560px){.spf-fb-meta{grid-template-columns:1fr}}.spf-fbr-title{display:block;color:var(--muted);font-size:.74rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;margin-bottom:2px}.fbatt{margin:12px 0 4px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.fbatt-wrap{margin:0 18px;padding-top:2px;border-top:1px solid var(--line)}.fbatt-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-bottom:10px}.fbatt-head b{color:var(--ink);font-size:.9rem}.fbatt-head small{color:var(--muted);font-size:.78rem}.fbatt-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);grid-gap:12px;gap:12px}.fbatt-box{min-width:0;padding:10px 12px;border-radius:12px;background:var(--surface)}.fbatt-t{margin:0 0 8px;color:var(--ink);font-size:.82rem;font-weight:700}.fbatt-t span{color:var(--muted);font-weight:600}.fbatt-pct.is-low,.fbatt-t span.is-low{color:var(--coral,#d85a30)}.fbatt-row{display:grid;grid-template-columns:minmax(0,1fr) auto 40px;align-items:center;grid-gap:10px;gap:10px;padding:3px 0}.fbatt-row.is-week{grid-template-columns:112px auto;justify-content:start}.fbatt-name{overflow:hidden;color:var(--ink);font-size:.82rem;white-space:nowrap;text-overflow:ellipsis}.fbatt-row.is-week .fbatt-name{color:var(--muted);font-size:.78rem}.fbatt-sqs{display:flex;flex-wrap:wrap;gap:3px}.fbatt-pct{color:var(--ink);font-size:.8rem;text-align:right}.fbatt-empty{margin:0;color:var(--muted);font-size:.8rem}.fbatt-sq{display:inline-block;width:14px;height:14px;border-radius:4px;background:var(--line);cursor:default}.fbatt-sq.is-ok,.fbatt-sq.is-school{background:#2f9e6b}.fbatt-sq.is-skvo{background:#8a6bd6}.fbatt-sq.is-late{background:#e0a43a}.fbatt-sq.is-abs{background:var(--danger)}.fbatt-sq.is-exc{background:var(--line-strong,#c9c4b8)}.fbatt-sq.is-no{background:none;box-shadow:inset 0 0 0 1.5px var(--line-strong,#c9c4b8)}.fbatt-sq.is-future{background:none;box-shadow:inset 0 0 0 1px var(--line);opacity:.6}.fbatt-legend{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:10px;color:var(--muted);font-size:.74rem}.fbatt-legend span{display:inline-flex;align-items:center;gap:5px}.fbatt-legend .fbatt-sq{width:10px;height:10px;border-radius:3px}.fbatt-add{margin-top:12px}@media (max-width:700px){.fbatt-grid{grid-template-columns:1fr}.fbatt-wrap{margin:0 14px}}.spf-lbl{margin:14px 0 6px;color:var(--ink);font-size:.82rem;font-weight:700}.spf-compose>.spf-lbl:first-child{margin-top:0}.spf-acts{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px}.spf-tpl{margin-top:16px;padding-top:4px;border-top:1px solid var(--line)}.spf-ed{overflow:hidden;border:1.5px solid var(--line);border-radius:14px;background:var(--input-bg)}.spf-ed:focus-within{border-color:var(--ink)}.spf-ed-bar{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:6px;border-bottom:1px solid var(--line);background:var(--surface-2)}.spf-ed-bar button{padding:4px 10px;border:0;border-radius:8px;background:none;color:var(--ink);font:inherit;font-size:.84rem;font-weight:600;cursor:pointer}.spf-ed-bar button:hover{background:var(--surface)}.spf-ed-body{min-height:130px;padding:12px 14px;color:var(--ink);font-size:.95rem;line-height:1.6;outline:none}.spf-ed-body:empty:before{content:attr(data-ph);color:var(--muted)}.spf-lins{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:12px;gap:12px;align-items:start}.spf-lin{border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface)}.spf-lin.is-open,.spf-lin:hover{border-color:var(--ink)}.spf-lin-h{display:flex;flex-direction:column;gap:4px;width:100%;padding:16px;border:0;background:none;font:inherit;text-align:left;cursor:pointer}.spf-lin-h b{color:var(--ink)}.spf-lin-h small{color:var(--muted);font-size:.82rem}.spf-lin-h span{margin-top:6px;color:var(--ink);font-size:.82rem;font-weight:700;text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:3px}.spf-lin ul{margin:0;padding:0 16px 14px 34px;font-size:.9rem}.spf-lin li{margin-bottom:4px}.spf-lin a{color:var(--ink)}.spf-ev{display:grid;grid-template-columns:110px minmax(0,1fr) auto;grid-gap:14px;gap:14px;align-items:start;padding:12px 0;border-top:1px solid var(--line)}.spf-ev-d{padding-top:3px;color:var(--muted);font-size:.82rem}.spf-ev p{margin:0;color:var(--ink);font-size:.93rem;white-space:pre-wrap}.spf-ev small{color:var(--muted)}@media (hover:none){.spf-tile:hover{transform:none}}@media (max-width:640px){.spf-gal{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.spf-search{flex:1 1;width:auto;min-width:0}.spf-tr{grid-template-columns:minmax(0,1fr) auto}.spf-tr.is-head,.spf-tr>:nth-child(3){display:none}.spf-head{flex-wrap:nowrap}.spf-head h1{font-size:1.25rem}.spf-nav{margin-left:0}.spf-cols{grid-template-columns:1fr}.spf-kv{grid-template-columns:104px minmax(0,1fr)}.spf-big b{font-size:1.15rem}.spf-wk{grid-template-columns:1fr repeat(5,40px)}.spf-row{grid-template-columns:minmax(0,1fr) 46px}.spf-row .spf-prog{grid-column:1/-1;grid-row:2}.spf-fb-body{margin:0 14px}.spf-fbr-h{padding:14px;flex-wrap:wrap;gap:8px}.spf-fbr-h .spf-chev{order:1;margin-left:auto}.spf-fbr-k{order:2;flex:1 1 100%}.spf-cpop{left:0;width:auto}.spf-ev{grid-template-columns:minmax(0,1fr) auto}.spf-ev-d{grid-column:1/-1}.spf-fld{font-size:16px}}.spf-form-h{margin:0 0 14px;color:var(--ink);font-family:var(--font-sans);font-size:1.05rem;font-weight:800}.spf-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:12px 14px;gap:12px 14px}.spf-field{display:flex;flex-direction:column;gap:5px}.spf-field>span{color:var(--muted);font-size:.8rem;font-weight:600}.spf-field i,.spf-req{color:var(--coral-600);font-style:normal}select.spf-fld{-webkit-appearance:none;-moz-appearance:none;appearance:none}.spf-prod{grid-column:1/-1;padding-top:22px;border-top:1px solid var(--line)}.spf-prod-f{margin-top:12px;max-width:640px}.spf{padding-bottom:84px}.spf-head-sub{margin:0;color:var(--muted);font-size:.95rem}.spf-head-acts{flex:none;margin-left:auto}.spf-menu-wrap{position:relative}.spf-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:30;display:flex;flex-direction:column;min-width:240px;padding:6px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-lg)}.spf-menu button{padding:9px 12px;border:0;border-radius:10px;background:none;color:var(--ink);font:inherit;font-size:.9rem;font-weight:600;text-align:left;cursor:pointer}.spf-menu button:hover{background:var(--surface-2)}.spf-menu button.is-danger{color:var(--danger)}.spf-menu-sep{height:1px;margin:4px 6px;background:var(--line)}.spf-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px;align-items:start}.spf-card{padding:16px 18px;border:1.5px solid var(--line);border-radius:20px;background:var(--surface)}.spf-card>h3{margin:0 0 6px;color:var(--muted);font-family:var(--font-sans);font-size:.86rem;font-weight:600;letter-spacing:0;text-transform:none}.spf-actcard{max-width:640px;margin-bottom:14px}.spf-actcard>h3{color:var(--ink);font-size:1rem}.spf-crow{display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 0;border-top:1px solid var(--line)}.spf-card>h3+.spf-crow{border-top:0}.spf-crow-t{display:flex;flex-direction:column;gap:2px;min-width:0}.spf-crow-t b{color:var(--ink);font-size:.95rem;font-weight:700;overflow-wrap:anywhere}.spf-crow-t small{color:var(--muted);font-size:.82rem}.spf-crow-t a{color:var(--ink);font-size:.88rem;overflow-wrap:anywhere;text-decoration:none}.spf-crow-t a:hover{text-decoration:underline;text-underline-offset:3px}.spf-crow-empty{margin:0;color:var(--muted);font-size:.88rem}.spf-crow-act{flex:none;margin-left:auto;padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:.84rem;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.spf-crow-act:hover{color:var(--ink)}.spf-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.spf-pill{text-decoration:none;padding:3px 10px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.8rem;font-weight:600}.spf-more{margin-top:6px;padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:.82rem;font-weight:600;cursor:pointer}.spf-more:hover{color:var(--ink)}.spf-card .spf-hist{margin-top:8px}.spf-show{width:100%;margin-top:10px;justify-content:center}.spf-src{display:block;margin-top:14px}.spf-acts-end{margin-left:auto}.spf-sum{margin-bottom:14px}.spf-sum.is-two{grid-template-columns:repeat(2,minmax(0,1fr))}.spf-sum.is-loading .spf-card{min-height:120px;background:var(--surface-2);border-color:transparent}.spf-sum-card{display:block;width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:border-color .12s ease}.spf-sum-card:hover{border-color:var(--line-strong)}.spf-sum-card .sch-bar{margin:10px 0 8px}.spf-sum-card .sch-legend{font-size:.8rem}.spf-sum-big{margin:4px 0 0;color:var(--muted);font-size:.88rem}.spf-sum-big b{margin-right:6px;color:var(--ink);font-family:var(--font-display);font-size:1.5rem}.spf-sum-warn{margin:10px 0 0;color:var(--warn-ink);font-size:.84rem;font-weight:600}.spf-sum-key{display:-webkit-box;margin:6px 0 0;overflow:hidden;color:var(--ink);font-size:1rem;font-weight:700;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:3}.spf-sum-meta{margin:8px 0 0;color:var(--muted);font-size:.84rem}.spf-sum-viol{display:-webkit-box;margin:6px 0 0;overflow:hidden;font-size:.88rem;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.spf-sum-viol span{font-size:.8rem}.spf-card-sub,.spf-sum-viol span{color:var(--muted);font-weight:600}.spf-card-sub{margin:10px 0 0;padding-top:10px;border-top:1px solid var(--line);font-size:.82rem}.spf-card-sub+.spf-crow{border-top:0}@media (max-width:900px){.spf-sum.is-two{grid-template-columns:minmax(0,1fr)}}.sch-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:4px}.sch-sum{margin:0;color:var(--muted);font-size:1rem}.sch-sum b{color:var(--ink);font-weight:700}.crs-switches,.sch-head>.dm-seg,.sch-period{margin-left:auto}.sch-bar{display:flex;gap:2px;height:10px;margin:14px 0 10px;overflow:hidden;border-radius:6px}.sch-bar span{min-width:4px}.sch-legend{display:flex;flex-wrap:wrap;gap:6px 16px;color:var(--muted);font-size:.86rem}.sch-legend b{color:var(--ink)}.sch-legend i{display:inline-block;width:10px;height:10px;margin-right:6px;border-radius:3px;vertical-align:-1px}.sch-bar .is-school,.sch-legend i.is-school{background:var(--ok,#2f9e6b)}.sch-bar .is-skvo,.sch-legend i.is-skvo{background:#8a6bd6}.sch-bar .is-late,.sch-legend i.is-late{background:#e0a43a}.sch-bar .is-abs,.sch-legend i.is-abs{background:var(--danger)}.sch-bar .is-exc,.sch-legend i.is-exc{background:var(--line-strong,#c9c4b8)}.sch-bar .is-no,.sch-legend i.is-no{background:repeating-linear-gradient(45deg,var(--line),var(--line) 3px,transparent 3px,transparent 6px)}.sch-patterns{margin:14px 0 0;padding:10px 14px;list-style:none;border:1.5px solid var(--warn-line);border-radius:14px;background:var(--warn-soft);color:var(--warn-ink);font-size:.88rem}.sch-patterns li+li{margin-top:4px}.sch-cal{margin-top:16px}.sch-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:6px;gap:6px}.sch-dows span{font-weight:600;text-align:center}.sch-dows span,.sch-wk{color:var(--muted);font-size:.8rem}.sch-wk{margin:12px 0 5px}.sch-d{display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-height:52px;padding:7px 10px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.sch-d b{font-size:.95rem;font-weight:700}.sch-d small{max-width:100%;overflow:hidden;font-size:.74rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.sch-d.is-school{border-color:transparent;background:color-mix(in srgb,#2f9e6b 16%,var(--surface))}.sch-d.is-school small{color:#23774f}.sch-d.is-skvo{border-color:transparent;background:color-mix(in srgb,#8a6bd6 16%,var(--surface))}.sch-d.is-skvo small{color:#5e45a8}.sch-d.is-late{border-color:transparent;background:color-mix(in srgb,#e0a43a 20%,var(--surface))}.sch-d.is-late small{color:#8a5a0b}.sch-d.is-abs{border-color:transparent;background:color-mix(in srgb,var(--danger) 15%,var(--surface))}.sch-d.is-abs small{color:var(--danger)}.sch-d.is-exc{border-color:transparent;background:var(--surface-2)}.sch-d.is-exc small,.sch-d.is-no small{color:var(--muted)}.sch-d.is-future,.sch-d.is-no{border-style:dashed;background:none}.sch-d.is-future{opacity:.45;cursor:default}.sch-d.is-today{outline:2px solid var(--ink);outline-offset:1px}.sch-d.is-picked{box-shadow:0 0 0 2px var(--ink) inset}.sch-detail{min-height:1.4em;margin:14px 0 0;color:var(--muted);font-size:.88rem}.sch-detail:first-letter{text-transform:uppercase}.sch-year{display:flex;flex-direction:column;margin-top:10px}.sch-year-row{display:grid;grid-template-columns:200px minmax(0,1fr) 52px;align-items:center;grid-gap:16px;gap:16px;padding:12px 0;border:0;border-top:1px solid var(--line);background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.sch-year-row:first-child{border-top:0}.sch-year-row:disabled{opacity:.5;cursor:default}.sch-year-l{display:flex;flex-direction:column;gap:2px}.sch-year-l small{color:var(--muted);font-size:.82rem}.sch-year-bar .sch-bar{margin:0}.sch-year-bar .sch-legend{display:none}.sch-year-pct{text-align:right}:root[data-theme=dark] .sch-d.is-school small{color:#7fd1a8}:root[data-theme=dark] .sch-d.is-skvo small{color:#b9a6f0}:root[data-theme=dark] .sch-d.is-late small{color:#f0c46e}@media (max-width:640px){.sch-period{width:100%;margin-left:0}.sch-d{min-height:48px;padding:6px 7px}.sch-d small{display:-webkit-box;font-size:.66rem;line-height:1.2;white-space:normal;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.sch-d.is-no small{display:none}.sch-year-row{grid-template-columns:minmax(0,1fr) 48px}.sch-year-bar{grid-column:1/-1;grid-row:2}}.crs-cycle+.crs-cycle{margin-top:18px}.crs-list{display:flex;flex-direction:column;gap:10px;margin-top:14px}.crs-row{padding:14px 16px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface)}.crs-top{display:flex;align-items:flex-start;gap:16px}.crs-t{display:flex;flex-direction:column;gap:3px;min-width:0}.crs-t a{color:var(--ink);font-weight:700;text-decoration:none}.crs-t a:hover{text-decoration:underline;text-underline-offset:3px}.crs-t small{color:var(--muted);font-size:.84rem}.crs-pct{display:flex;flex:none;flex-direction:column;align-items:flex-end;margin-left:auto}.crs-pct b{color:var(--ink);font-family:var(--font-display);font-size:1.25rem;line-height:1.1}.crs-pct small{color:var(--muted);font-size:.78rem}.crs-pct.is-low b{color:var(--danger)}.crs-lessons{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.crs-l{display:flex;flex-direction:column;min-width:72px;padding:5px 9px;border:1.5px solid var(--line);border-radius:10px;background:var(--surface)}.crs-l b{color:var(--ink);font-size:.82rem;font-weight:700}.crs-l small{font-size:.72rem;font-weight:600;white-space:nowrap}.crs-l.is-ok{border-color:transparent;background:color-mix(in srgb,#2f9e6b 16%,var(--surface))}.crs-l.is-ok small{color:#23774f}.crs-l.is-late{border-color:transparent;background:color-mix(in srgb,#e0a43a 20%,var(--surface))}.crs-l.is-late small{color:#8a5a0b}.crs-l.is-abs{border-color:transparent;background:color-mix(in srgb,var(--danger) 15%,var(--surface))}.crs-l.is-abs small{color:var(--danger)}.crs-l.is-exc{border-color:transparent;background:var(--surface-2)}.crs-l.is-exc small,.crs-l.is-no small{color:var(--muted)}.crs-l.is-future,.crs-l.is-no{border-style:dashed;background:none}.crs-l.is-future{opacity:.45}.crs-l.is-today{outline:2px solid var(--ink);outline-offset:1px}:root[data-theme=dark] .crs-l.is-ok small{color:#7fd1a8}:root[data-theme=dark] .crs-l.is-late small{color:#f0c46e}@media (max-width:640px){.crs-row{padding:12px}.crs-l{min-width:0;flex-grow:1;flex-shrink:1;flex-basis:calc(33% - 6px)}}.crs-switches{display:flex;flex-wrap:wrap;gap:8px}.wkb{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:14px}.wkb-col{display:flex;flex-direction:column;gap:8px;min-width:0}.wkb-col h3{margin:0 0 2px;color:var(--muted);font-family:var(--font-sans);font-size:.86rem;font-weight:700;text-align:center}.wkb-short{display:none}.wkb-card{display:flex;flex-direction:column;gap:4px;padding:10px 11px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);text-decoration:none;transition:border-color .12s ease}.wkb-card:hover{border-color:var(--line-strong)}.wkb-top{display:flex;align-items:baseline;justify-content:space-between;gap:6px}.wkb-top small{color:var(--muted);font-size:.74rem;font-weight:600}.wkb-pct{font-family:var(--font-display);font-size:1rem}.wkb-card.is-low .wkb-pct{color:var(--danger)}.wkb-title{display:-webkit-box;overflow:hidden;font-size:.88rem;font-weight:700;line-height:1.3;-webkit-box-orient:vertical;-webkit-line-clamp:3}.wkb-meta{overflow:hidden;color:var(--muted);font-size:.74rem;text-overflow:ellipsis;white-space:nowrap}.wkb-dots{display:flex;flex-wrap:wrap;gap:3px;margin-top:4px}.wkb-dots i{display:inline-grid;place-items:center;width:22px;height:22px;border:1.5px solid var(--line);border-radius:6px;font-size:.66rem;font-style:normal;font-weight:700}.wkb-dots i.is-ok{border-color:transparent;background:color-mix(in srgb,#2f9e6b 22%,var(--surface));color:#23774f}.wkb-dots i.is-late{border-color:transparent;background:color-mix(in srgb,#e0a43a 28%,var(--surface));color:#8a5a0b}.wkb-dots i.is-abs{border-color:transparent;background:color-mix(in srgb,var(--danger) 20%,var(--surface));color:var(--danger)}.wkb-dots i.is-exc{border-color:transparent;background:var(--surface-2);color:var(--muted)}.wkb-dots i.is-future,.wkb-dots i.is-no{border-style:dashed;color:var(--muted)}.wkb-dots i.is-future{opacity:.5}.wkb-dots i.is-today{outline:2px solid var(--ink);outline-offset:1px}.wkb-sum{color:var(--muted);font-size:.74rem}.wkb-none{margin:0;padding:14px 6px;border:1.5px dashed var(--line);border-radius:14px;color:var(--muted);font-size:.8rem;text-align:center}:root[data-theme=dark] .wkb-dots i.is-ok{color:#7fd1a8}:root[data-theme=dark] .wkb-dots i.is-late{color:#f0c46e}@media (max-width:900px){.wkb{grid-template-columns:minmax(0,1fr);gap:14px}.wkb-col.is-empty{display:none}.wkb-col h3{text-align:left}.wkb-title{-webkit-line-clamp:2}}.spf-stepbar{position:fixed;z-index:40;left:50%;bottom:16px;display:flex;align-items:center;gap:4px;max-width:calc(100vw - 32px);padding:5px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);box-shadow:var(--shadow-lg);transform:translateX(-50%)}.spf-stepbar button{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border:0;border-radius:var(--pill);background:none;color:var(--ink);font:inherit;font-size:.88rem;font-weight:600;cursor:pointer}.spf-stepbar button:hover{background:var(--surface-2)}.spf-stepbar-n{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spf-stepbar-i{padding:0 6px;color:var(--muted);font-size:.82rem;font-weight:600;white-space:nowrap}@media (max-width:900px){.spf-cards{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.spf-stepbar{left:16px;right:88px;justify-content:space-between;transform:none;max-width:none}.spf-stepbar-n{display:none}.spf-head{gap:12px;align-items:flex-start}.spf-head h1{font-size:1.3rem}.spf-head-sub{font-size:.86rem}}.spf-stop{margin:0 0 18px;padding:10px 14px;border-radius:14px;background:var(--danger-soft);color:var(--danger-ink);font-size:.9rem}.spf-hist{margin:0;padding:0;list-style:none}.spf-hist li{display:grid;grid-template-columns:150px minmax(0,1fr);grid-gap:12px;gap:12px;padding:8px 0;border-top:1px solid var(--line);font-size:.88rem}.spf-hist li>span{color:var(--muted)}.spf-hist b{display:block;color:var(--ink)}.spf-hist small{color:var(--muted)}@media (max-width:640px){.spf-hist li{grid-template-columns:1fr;gap:2px}}.mtr-fb-pick{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin-bottom:4px}.mtr-fb-pick .mtr-search{flex:1 1 220px;max-width:320px}.mtr-fb-pick .mtr-search input{height:38px}.mtr-kids{margin:10px 0 14px}.mtr-kid-n{order:3;flex:none;min-width:22px;margin-left:auto;padding:1px 7px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.76rem;font-style:normal;font-weight:800;text-align:center}.mtr-mentor.is-on .mtr-kid-n{background:var(--surface);color:var(--ink)}.mtr-kids .mtr-mentor span:last-child{order:2;flex:1 1;min-width:0;text-align:left}.mtr-kid-more{justify-content:center;color:var(--muted)}.rx-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.rx-wrap{overflow-x:auto;border:1.5px solid var(--line);border-radius:14px}.rx-table{border-collapse:separate;border-spacing:0;font-size:.82rem}.rx-table td,.rx-table th{padding:8px 10px;border-top:1px solid var(--line);background:var(--surface);text-align:center;vertical-align:middle}.rx-table thead tr:first-child th{border-top:0}.rx-table .rx-role{position:-webkit-sticky;position:sticky;left:0;z-index:2;width:180px;min-width:180px;max-width:180px;border-right:1.5px solid var(--line);text-align:left}.rx-role b{display:block;color:var(--ink);font-size:.9rem}.rx-role small{display:block;color:var(--muted);font-size:.72rem}.rx-acts{display:flex;gap:10px;margin-top:2px}.rx-acts .dm-link{font-size:.74rem}.rx-g{padding:0!important;border-left:1.5px solid var(--line)}.rx-g button{display:flex;align-items:center;gap:6px;width:100%;padding:9px 12px;border:0;background:var(--surface-2);color:var(--ink);font:inherit;font-size:.8rem;font-weight:800;white-space:nowrap;cursor:pointer}.rx-g button:hover{background:var(--seg-bg)}.rx-g.is-open button{background:var(--ink);color:var(--surface)}.rx-g small{margin-left:auto;padding:0 7px;border-radius:var(--pill);background:var(--surface);font-size:.7rem}.rx-f,.rx-g small{color:var(--muted)}.rx-f{min-width:92px;max-width:120px;font-size:.74rem;font-weight:700;line-height:1.25;vertical-align:bottom!important}.rx-f.is-sum{color:var(--muted);font-weight:600}.rx-table .is-first{border-left:1.5px solid var(--line)}.rx-table td.has{background:color-mix(in srgb,var(--ok) 9%,var(--surface))}.rx-table tr.is-changed .rx-role{box-shadow:inset 3px 0 0 var(--coral)}.rx-table select{max-width:104px;padding:3px 4px;border:1.5px solid var(--line);border-radius:8px;background:var(--input-bg);color:var(--ink);font:inherit;font-size:.76rem}.rx-table input[type=checkbox]{width:18px;height:18px;accent-color:var(--ink);cursor:pointer}.rx-sec td{padding:6px 10px;background:var(--surface-2);color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;text-align:left}.rx-sec span{position:-webkit-sticky;position:sticky;left:10px;white-space:nowrap}.rx-pill{min-width:46px;padding:3px 10px;border:0;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font:inherit;font-size:.78rem;font-weight:800;cursor:pointer}.rx-pill.is-some{background:var(--warn-soft);color:var(--warn-ink)}.rx-pill.is-all{background:var(--ok-soft);color:var(--ok)}@media (max-width:640px){.rx-table .rx-role{min-width:132px;max-width:150px}.rx-table td,.rx-table th{padding:8px 6px}}.rx-g:not(.is-open) button{align-items:flex-start;min-width:104px;max-width:136px;white-space:normal;text-align:left;line-height:1.2}.mtr-mt-dots{display:inline-flex;align-items:center;gap:4px;margin-top:8px;padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.mtr-mt-dots:hover span{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.mtr-mt-dots span{margin-left:4px}.mtr-mt-dots i,.mtr-mt-legend i,.mtr-mt-list li>i{flex:none;display:inline-block;width:12px;height:12px;border-radius:50%;background:var(--mt-c,var(--line-strong))}:is(.mtr-mt-dots,.mtr-mt-list,.mtr-mt-legend,.mtr-yr,.mtr-cal) .is-planned{--mt-c:#8b5cf6}:is(.mtr-mt-dots,.mtr-mt-list,.mtr-mt-legend,.mtr-yr,.mtr-cal) .is-nofb{--mt-c:#e8a91c}:is(.mtr-mt-dots,.mtr-mt-list,.mtr-mt-legend,.mtr-yr,.mtr-cal) .is-done{--mt-c:var(--ok)}:is(.mtr-mt-dots,.mtr-mt-list,.mtr-mt-legend,.mtr-yr,.mtr-cal) .is-cancelled{--mt-c:var(--danger)}.mtr-mt-list{margin:0;padding:0;list-style:none}.mtr-mt-list li{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:9px 12px;margin-bottom:6px;border-left:4px solid var(--mt-c);border-radius:0 12px 12px 0;background:color-mix(in srgb,var(--mt-c) 9%,var(--surface));font-size:.9rem}.mtr-mt-list b{color:var(--ink)}.mtr-mt-list span{color:var(--text)}.mtr-mt-loc{color:var(--muted)!important}.mtr-mt-list em{margin-left:auto;color:var(--mt-c);font-size:.8rem;font-style:normal;font-weight:800}.mtr-mt-list li.is-cancelled b,.mtr-mt-list li.is-cancelled span{text-decoration:line-through;color:var(--muted)}.mtr-mt-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:10px 0 0;color:var(--muted);font-size:.78rem}.mtr-mt-legend span{display:inline-flex;align-items:center;gap:6px}@media (max-width:640px){.mtr-mt-list em{margin-left:0;flex-basis:100%}}.mtr-cal-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.mtr-yr{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px;margin-bottom:18px}.mtr-yr-m{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:92px;padding:12px 14px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface);color:var(--muted);font:inherit;font-size:.8rem;text-align:left;cursor:pointer}.mtr-yr-m:hover{border-color:var(--ink)}.mtr-yr-m b{color:var(--ink);font-size:.95rem;text-transform:capitalize}.mtr-yr-m.is-now{border-color:var(--coral)}.mtr-yr-m.has span:first-of-type{color:var(--text);font-weight:600}.mtr-yr-dots{display:flex;flex-wrap:wrap;gap:3px;margin-top:auto}.mtr-yr-dots i{width:9px;height:9px;border-radius:50%;background:var(--mt-c,var(--line-strong))}@media (max-width:640px){.mtr-yr{grid-template-columns:repeat(2,minmax(0,1fr))}}.mtr-cal .hw-cal-dots i{background:var(--mt-c,var(--ink))}.mtr-cal .mtr-status{color:var(--mt-c,var(--muted))}.mtr-cal .mtr-meeting .mtr-meeting-date,.mtr-cal .mtr-status{background:color-mix(in srgb,var(--mt-c,var(--muted)) 14%,var(--surface))}.mtr-cal .mtr-meeting .mtr-meeting-date{color:var(--mt-c,var(--ink))}.mtr-cal .mtr-meeting-date small{color:inherit;opacity:.8}.mtr-cal-only-dots{display:none}.mtr-cal-name{display:flex;align-items:center;gap:4px;color:var(--text)}.mtr-cal-name i{flex:none;width:7px;height:7px;border-radius:50%;background:var(--mt-c,var(--muted))}.mtr-cal-name.is-cancelled{color:var(--muted);text-decoration:line-through}.mtr-cal-legend{margin:12px 0 4px}@media (max-width:640px){.mtr-cal-only-dots{display:flex;flex-wrap:wrap}.mtr-cal-name{display:none}}.spf-lead{margin:0 0 10px;color:var(--muted);font-size:.95rem}.spf-lead b{color:var(--ink)}.spf-mention{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 10px;border-top:1px solid var(--line);background:var(--surface-2);font-size:.8rem;color:var(--muted)}.spf-cpop .spf-mention{margin-top:8px;border:0;border-radius:12px}.spf-mention button{padding:3px 10px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.spf-mention button.is-first,.spf-mention button:hover{border-color:var(--ink)}.cst-label{display:block;margin:12px 0 0;color:var(--ink);font-size:.85rem;font-weight:700;text-transform:none;letter-spacing:0}.lr-modal .cst-field{margin-top:6px}.lr-modal input.cst-field,.lr-modal select.cst-field{height:42px}.cst-check{display:flex;align-items:center;gap:10px;margin-top:12px;color:var(--ink);font-size:.92rem;font-weight:600;text-transform:none;letter-spacing:0;cursor:pointer}.cst-check input{flex:none;width:18px;height:18px;accent-color:var(--ink)}.cst-err{margin:10px 0 0;color:var(--danger);font-size:.85rem}.cst-row{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px 14px}.cst-q{color:var(--ink);font-size:.88rem;font-weight:600}.cst-cancel{color:var(--danger)}.cm-foot .cst-cancel,.cm-foot .cst-row{margin-right:auto}.cst-page-row{margin:12px 0 0}.cst-lesson-row{margin:0 0 10px 30px}.cpl-draft{margin:0 0 12px;padding:10px 12px;border-radius:12px;background:var(--surface-2);color:var(--text);font-size:.88rem}.ce-course-st{display:grid;grid-gap:8px;gap:8px;padding:14px 16px;border:1.5px solid var(--home-line,var(--line));border-radius:16px;background:var(--surface)}.ce-course-st .ce-team-h,.ce-course-st .cm-alert{margin:0}.ce-course-st-t{display:flex;align-items:center;gap:8px;margin:0;color:var(--ink);font-weight:600}.ce-course-st-dot{width:8px;height:8px;border-radius:50%;background:var(--ok,#1e8e5a)}.ce-course-st-acts{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0}.ce-team-row .cst-badge{flex:none}.cst-badge{display:inline-block;margin-left:8px;padding:2px 9px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.72rem;font-weight:700;vertical-align:middle;white-space:nowrap}.cst-badge.is-off{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}.wk-day{border:1.5px solid var(--line);border-radius:18px;background:var(--surface)}.wk-day-banner{padding:12px 16px 10px;border-bottom:1px solid var(--line);background:transparent;font-size:1.05rem}.wk-day-body{gap:10px;padding:10px 12px 12px}.wk-space-head{display:flex;align-items:center;gap:8px;padding:7px 12px;border-radius:10px;color:var(--ink);font-size:.78rem;letter-spacing:0;text-align:left;text-transform:none}.wk-space-head:before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:currentColor}.wk-space-head.school{background:color-mix(in srgb,var(--board-navy) 12%,var(--surface))}.wk-space-head.school:before{background:var(--board-navy)}.wk-space-head.skvo{background:color-mix(in srgb,var(--coral-600) 14%,var(--surface))}.wk-space-head.skvo:before{background:var(--coral-600)}.wk-lane-heads{padding:5px 0;border-bottom:0;font-weight:600}.wk-track{border:0;border-radius:12px}.wk-track.is-over{background:color-mix(in srgb,var(--coral) 10%,transparent);outline:1.5px dashed var(--coral)}.wk-card{gap:3px;padding:6px 8px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer}.wk-card:hover{z-index:3;border-color:var(--line-strong,var(--muted));background:var(--surface-2)}.wk-card:focus-visible{outline:2px solid var(--ink);outline-offset:1px}.wk-card-body{gap:3px}.wk-card.is-view .wk-card-body{overflow:hidden}.wk-card-time{flex:none;font-size:.64rem;padding:2px 8px}.wk-card-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;line-height:1.25}.wk-card-people{color:var(--muted)}.wk-card .rg-mcard-tags{flex:none}.wk-card .rg-mcard-pill{font-size:.62rem}.wk-card-meta{margin-top:auto;font-weight:700}.wk-card.is-hidden{background:var(--surface-2)}.wk-card.is-draggable{border-color:var(--line)}.wk-card.is-draggable:hover{border-color:var(--board-navy)}.wk-card.is-violation{border-color:var(--danger);background:color-mix(in srgb,var(--danger) 9%,var(--surface))}.wk-untimed-cards .wk-card{width:180px}.portal.mc-app{height:100dvh;min-height:0;display:flex;flex-direction:column}.portal-shell:has(>.mc-app)>.portal-footer{display:none}html:has(.mc-app),html:has(.mc-app) body{overflow:hidden}.mc-app-crumbs{flex:none;width:100%;max-width:var(--maxw);margin:0 auto;padding:12px 20px}.mc-app-crumbs ol{margin:0}.mc-app-frame{flex:1 1;min-height:0;width:100%;border:0;border-top:1px solid var(--line);display:block;background:var(--home-bg)}@media (max-width:760px){.mc-app-crumbs{padding:10px 16px}.mc-app-crumbs li:nth-child(-n+2){display:none}.mc-app-crumbs li:nth-child(3):before{content:none}.mc-app-crumbs ol{flex-wrap:nowrap}.mc-app-crumbs li{white-space:nowrap}.mc-app-crumbs li:last-child{min-width:0}.mc-app-crumbs li:last-child span{overflow:hidden;text-overflow:ellipsis}}.as-scope{display:inline-flex;flex-wrap:wrap;gap:4px;margin:0 0 12px;padding:4px;border-radius:var(--pill);background:var(--surface-2)}.as-scope button{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:0;border-radius:var(--pill);background:none;color:var(--muted);font:inherit;font-size:.86rem;font-weight:600;cursor:pointer}.as-scope button span{color:var(--muted);font-size:.78rem;font-weight:600;opacity:.8}.as-scope button.is-on{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.08)}.as-scope.is-compact{display:flex;margin:8px 12px 4px}.as-scope.is-compact button{flex:1 1;justify-content:center;padding:5px 8px;font-size:.8rem}.cpl-dialog{max-width:600px}.cpl-top{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:6px 0 16px}.cpl-top .cpl-modes{margin:0}.cpl-cycle{display:inline-flex;align-items:center;gap:8px;margin-left:auto;color:var(--muted);font-size:.9rem;font-weight:600;letter-spacing:0;text-transform:none}.cpl-cycle .pill-select{padding-top:8px;padding-bottom:8px;font-size:.9rem}.cpl-new{display:flex;flex-direction:column;gap:16px}.cpl-f{flex-direction:column;gap:6px;margin:0}.cpl-f,.cpl-l{display:flex;letter-spacing:0;text-transform:none}.cpl-l{justify-content:space-between;gap:8px;color:var(--ink);font-size:.9rem;font-weight:700}.cpl-l i{color:var(--muted);font-size:.8rem;font-style:normal;font-weight:500}.cpl-input{width:100%;box-sizing:border-box;padding:11px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--input-bg);color:var(--text);font:inherit;font-size:.95rem}.cpl-input:focus{border-color:var(--ink);outline:none}.cpl-input[aria-invalid=true]{border-color:var(--danger)}textarea.cpl-input{resize:vertical;min-height:76px;line-height:1.45}.cpl-err{color:var(--danger);font-size:.82rem}.cpl-select{align-self:flex-start;min-width:240px}.cpl-people{display:flex;flex-wrap:wrap;gap:6px}.cpl-person{display:inline-flex;align-items:center;gap:8px;padding:4px 6px 4px 4px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.88rem;font-weight:600}.cpl-person em{padding:1px 7px;border-radius:var(--pill);background:var(--surface);color:var(--muted);font-size:.72rem;font-style:normal}.cpl-person button{width:22px;height:22px;border:0;border-radius:50%;background:none;color:var(--muted);font:inherit;font-size:1rem;line-height:1;cursor:pointer}.cpl-person button:hover{background:var(--surface);color:var(--ink)}.cpl-face{position:relative;flex:none;width:26px;height:26px;font-size:.6rem}.cpl-face.is-plus{display:inline-grid;place-items:center;border-radius:50%;background:var(--surface-2);color:var(--ink);font-size:.9rem}.cpl-hits{display:flex;flex-direction:column;gap:2px;padding:4px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface)}.cpl-hits button{display:flex;align-items:center;gap:10px;padding:7px 8px;border:0;border-radius:10px;background:none;color:var(--ink);font:inherit;font-size:.9rem;text-align:left;cursor:pointer}.cpl-hits button:focus-visible,.cpl-hits button:hover{background:var(--surface-2)}.cpl-hits button small{margin-left:auto;color:var(--muted);font-size:.76rem}.cpl-hits button.is-add span:last-child{display:flex;flex-direction:column;font-weight:700}.cpl-hits button.is-add small{margin:0;font-weight:500}.cpl-hits .cpl-hint{margin:6px 8px}.cpl-newmail{display:flex;flex-direction:column;gap:4px;margin:0;color:var(--muted);font-size:.82rem;font-weight:500;letter-spacing:0;text-transform:none}.cpl-newmail input{padding:9px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--input-bg);color:var(--text);font:inherit;font-size:.9rem}.cpl-cond .ce-field>span{color:var(--ink);font-size:.9rem;font-weight:700;letter-spacing:0;text-transform:none}.cpl-cond .ce-cond-add input{padding:11px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--input-bg);color:var(--text);font:inherit;font-size:.95rem}.cpl-foot{position:-webkit-sticky;position:sticky;bottom:-8px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:4px -24px -8px;padding:14px 24px;border-top:1px solid var(--line);background:var(--surface)}.cpl-foot .cpl-hint{flex:1 1 260px;margin:0}.cpl-levels{display:flex;flex-wrap:wrap;gap:6px}.cpl-levels button{padding:7px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.88rem;font-weight:600;cursor:pointer}.cpl-levels button:hover{border-color:var(--ink)}.cpl-levels button.is-on{border-color:var(--ink);background:var(--ink);color:var(--surface)}.cpl-limit{display:flex;align-items:center;gap:12px}.cpl-limit .cpl-input{width:110px}.cpl-limit small{color:var(--muted);font-size:.84rem;font-weight:500}@media (max-width:640px){.cpl-cycle{margin-left:0}.cpl-select{min-width:0;align-self:stretch}.cpl-foot .dm-btn{width:100%}}.bdg-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:12px 0}.bdg-month{height:40px;padding:0 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit}.bdg-wrap{overflow-x:auto;margin:10px 0}.bdg-table{width:100%;border-collapse:collapse;font-size:.9rem}.bdg-table th{padding:8px 10px;border-bottom:1.5px solid var(--line);color:var(--muted);font-size:.76rem;font-weight:700;text-align:left;white-space:nowrap}.bdg-table td{padding:8px 10px;border-bottom:1px solid var(--line);color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bdg-row{cursor:pointer}.bdg-row:hover td{background:var(--surface-2)}.bdg-name{padding:0;border:0;background:none;color:var(--ink);font:inherit;font-weight:700;text-align:left;cursor:pointer}.bdg-sub td{color:var(--muted);font-size:.84rem}.bdg-sub td:first-child{padding-left:24px}.bdg-dur{font-size:.82rem;color:var(--muted);white-space:nowrap}.bdg-dur select{font:inherit;color:var(--text);background:var(--input-bg);border:1px solid var(--line);border-radius:8px;padding:2px 6px}.cff{gap:22px}.cff,.cff-sec{display:flex;flex-direction:column}.cff-sec{gap:14px}.cff-sec+.cff-sec{padding-top:18px;border-top:1px solid var(--line)}.cff-sec>h4{margin:0;color:var(--muted);font-family:var(--font-sans);font-size:.8rem;font-weight:700;letter-spacing:0;text-transform:none}.cff-req{margin-left:3px;color:var(--coral);font-weight:700}.cpl-l .cff-need,.cpl-l.is-missing{color:var(--danger)}.cpl-l .cff-need{font-weight:600}.cpl-l.is-missing+.cpl-input,.cpl-l.is-missing+.cpl-select,.cpl-l.is-missing~.cpl-input{border-color:var(--danger)}.cff-pills{display:flex;flex-wrap:wrap;gap:6px}.cff-pills button{padding:7px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.86rem;font-weight:600;cursor:pointer}.cff-pills button:hover{border-color:var(--ink)}.cff-pills button.is-on{border-color:var(--ink);background:var(--ink);color:var(--surface)}.cff-left{color:var(--danger);font-weight:600}.cpl-cond .ce-field{margin:0}.ce-fields{min-width:0;margin:0;padding:0;border:0}.ce-fields:disabled{opacity:.6}.cpl-chip-main{display:flex;flex:1 1;flex-direction:column;align-items:flex-start;min-width:0}.cpl-miss{align-self:flex-start;margin:5px 0 0;padding:1px 8px;border:0;border-radius:var(--pill);background:color-mix(in srgb,var(--coral) 18%,var(--surface));color:var(--coral-600,var(--coral));font:inherit;font-size:.72rem;font-weight:700;white-space:nowrap;cursor:pointer}.cpl-miss:hover{background:var(--coral);color:#fff}.cpl-missbtn{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.86rem;font-weight:600;cursor:pointer}.cpl-missbtn span{padding:0 7px;border-radius:var(--pill);background:color-mix(in srgb,var(--coral) 18%,var(--surface));color:var(--coral-600,var(--coral));font-size:.78rem;font-weight:700}.cpl-missbtn.is-on{border-color:var(--ink)}.mtr-fb-picker{display:flex;flex-direction:column;gap:14px;margin-bottom:18px;padding:18px;border:1.5px solid var(--line);border-radius:20px;background:var(--surface)}.mtr-fb-picker .mtr-fb-pick{margin:0}.mtr-fb-picker .mtr-fb-pick .mtr-search{flex:1 1 260px;max-width:none}.mtr-fb-picker .mtr-fb-pick .mtr-search input{height:44px}.mtr-fb-group{display:flex;flex-direction:column;gap:8px}.mtr-fb-group .mtr-kids{margin:0}.mtr-fb-group-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px}.mtr-fb-group-h{margin:0;color:var(--muted);font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.mtr-fb-kid{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-bottom:18px;padding:16px 18px;border:1.5px solid var(--line);border-radius:20px;background:var(--surface)}.mtr-fb-kid-main{flex:1 1 220px;min-width:0;display:flex;flex-direction:column;gap:2px}.mtr-fb-kid-main b{color:var(--ink);font-size:1.2rem;font-weight:800;line-height:1.2}.mtr-fb-about,.mtr-fb-kid-main span{color:var(--muted);font-size:.88rem}.mtr-fb-about{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:0 0 12px}.mtr-fb-about-kid{display:inline-flex;align-items:center;gap:8px;padding:4px 12px 4px 5px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-weight:700}.mtr-fb-about-note{flex:1 1 240px;text-align:right}.mtr-fb-summary-note{color:var(--muted);font-weight:400}@media (max-width:640px){.mtr-fb-kid,.mtr-fb-picker{padding:14px;border-radius:16px}.mtr-fb-kid>.dm-btn{flex:1 1 100%;min-height:44px}.mtr-fb-about-note{flex-basis:100%;text-align:left}.mtr-fb-summary-note{display:none}}:is(.mtr-mt-dots,.mtr-mt-list,.mtr-mt-legend,.mtr-yr,.mtr-cal) .is-ask{--mt-c:var(--muted)}:is(.mtr-mt-dots,.mtr-mt-list,.mtr-mt-legend,.mtr-yr,.mtr-cal) .is-missed{--mt-c:var(--danger)}.mtr-status.is-ask{background:var(--surface-2);color:var(--ink)}.mtr-status.is-missed{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}.mtr-meeting.is-missed .mtr-meeting-main{opacity:.7}.hw-cal-dots i.is-ask{background:var(--muted)}.hw-cal-dots i.is-missed{background:var(--danger)}.mtr-move{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 12px;flex-basis:100%;margin-top:10px;padding-top:12px;border-top:1px solid var(--line)}.mtr-move label{display:flex;flex-direction:column;gap:4px;color:var(--muted);font-size:.78rem;font-weight:700}.mtr-move input{height:40px;padding:0 10px;border:1.5px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font:inherit;font-size:.9rem}.mtr-move-loc{flex:1 1 180px}.mtr-move-acts{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;flex-basis:100%;justify-content:flex-end}.mtr-move-hint{margin-right:auto;color:var(--muted);font-size:.82rem}@media (max-width:640px){.mtr-move label:not(.mtr-move-loc){flex:1 1 30%}.mtr-move input{width:100%;box-sizing:border-box}}.mtr-meeting:has(.mtr-move){flex-wrap:wrap}.cl-box{margin-top:18px;padding:16px 18px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface)}.cl-h{margin:0;color:var(--ink);font-size:1rem;font-weight:800}.cl-hint{margin:6px 0 12px;color:var(--muted);font-size:.86rem;line-height:1.45;max-width:680px}.cl-found,.cl-list{display:flex;flex-direction:column;gap:6px;margin:0 0 12px;padding:0;list-style:none}.cl-found li,.cl-list li{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:8px 12px;border-radius:12px;background:var(--surface-2)}.cl-list a{color:var(--ink);font-weight:700;text-decoration:none}.cl-list a:hover{text-decoration:underline}.cl-list li>span:not(.cst-row){flex:1 1;color:var(--muted);font-size:.85rem}.cl-found li{background:transparent;border:1px solid var(--line)}.cl-found-h{padding:0 2px!important;border:0!important;color:var(--muted);font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.cl-found-t{flex:1 1 240px;min-width:0;display:flex;flex-direction:column}.cl-found-t b{color:var(--ink);font-size:.92rem}.cl-found-t span,.cl-no{color:var(--muted);font-size:.82rem}.cl-empty{margin:0 0 12px;color:var(--muted);font-size:.88rem}.cl-search{width:100%;box-sizing:border-box;height:42px;margin-bottom:10px;padding:0 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.92rem}.cl-search:focus{outline:none;border-color:var(--ink)}.cp-linked-note{margin:0 0 10px;color:var(--muted);font-size:.86rem}.cl-lessons{margin:0 0 12px}.cl-lessons>.dm-link{margin-bottom:8px}.cl-list li.is-off{opacity:.55}.cl-list li.is-off .cl-l-t{text-decoration:line-through}.cl-l-t{color:var(--ink);font-size:.9rem}.rx-note{color:var(--muted);font-size:.74rem}.hwd-edit{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:0 0 12px;padding:10px 12px;border:1px dashed var(--line);border-radius:12px}.hwd-l{color:var(--muted);font-size:.84rem;font-weight:600}.hwd-edit input{height:38px;padding:0 10px;border:1.5px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font:inherit;font-size:.88rem}.les-self-note{margin:0 0 10px;color:var(--muted);font-size:.88rem}.att-self{display:block;margin-top:3px;font-size:.7rem;line-height:1.2;color:var(--muted);white-space:nowrap;text-align:center}.att-self.is-done{color:var(--ok);font-weight:700}.att-self.is-todo{color:var(--danger)}.chw-kind{margin-bottom:14px}.chw-kind .sp-tab{padding:8px 12px;font-size:.9rem}.ce-share{margin:4px 0 12px}.ce-share-row{margin:0 0 10px 30px}.ce-share small,.ce-share-row small{color:var(--muted);font-weight:500}.cl-join{margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid var(--line)}.cl-join small{color:var(--muted);font-weight:500}.new-bubble{display:inline-block;margin-left:4px;padding:0 6px;border-radius:var(--pill);background:var(--coral);color:#fff;font-size:.62rem;font-weight:800;font-style:normal;line-height:1.5;letter-spacing:.02em;vertical-align:.12em;text-decoration:none;white-space:nowrap}.adm-chip.is-off{border-style:dashed;color:var(--muted)}.fc-slots{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.fc-input{flex:1 1 200px;min-width:0;height:40px;padding:0 12px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--input-bg,var(--surface));color:var(--ink);font:inherit}.fc-list{margin:10px 0 0;display:flex;flex-direction:column}.fc-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;padding:10px 0;border-top:1px solid var(--line)}.fc-row:first-child{border-top:0}.fc-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 260px}.fc-seg .adm-chip{min-height:36px}.frm-card-note{padding:3px 10px;border-radius:var(--pill);background:var(--sky-tint,var(--surface-2));color:var(--ink);font-size:.72rem;font-weight:700;white-space:nowrap}.adm-enr-note{width:170px;height:30px;padding:0 10px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.8rem}.rs{display:flex;flex-direction:column;gap:14px}.rs-bar-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.rs-search{flex:1 1 200px;max-width:320px;padding:8px 14px;border:1px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.9rem}.rs-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:10px;gap:10px}.rs-tile{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.rs-tile b{font-size:1.7rem;line-height:1.1;color:var(--ink)}.rs-tile span{color:var(--muted);font-size:.82rem}.rs-tile.is-warn b{color:var(--coral-600)}.rs-h{margin:8px 0 0;font-size:.95rem}.rs-list{display:flex;flex-direction:column;gap:6px}.rs-group{overflow:hidden}.rs-group,.rs-row{border:1px solid var(--line);border-radius:12px;background:var(--surface)}.rs-row{display:grid;grid-template-columns:minmax(0,1fr) 90px auto;align-items:center;grid-gap:12px;gap:12px;width:100%;padding:10px 14px;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.rs-group .rs-row{border:0;border-radius:0}.rs-row.is-static{cursor:default}.rs-row:hover:not(.is-static){background:var(--surface-2)}.rs-name{display:flex;flex-direction:column;min-width:0;font-weight:700;font-size:.92rem}.rs-name small{color:var(--muted);font-weight:500;font-size:.78rem}.rs-num{color:var(--muted);font-size:.82rem;white-space:nowrap}.rs-num b{color:var(--ink);font-size:1rem}.rs-bar{height:6px;border-radius:6px;background:var(--surface-2);overflow:hidden}.rs-bar-fill{display:block;height:100%;border-radius:6px;background:var(--sky-deep)}.rs-bar-fill.is-warn{background:var(--coral)}.rs-sub{display:flex;flex-direction:column;gap:6px;padding:4px 14px 12px;border-top:1px solid var(--line)}.rs-subrow{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border:0;background:none;color:var(--ink);font:inherit;font-size:.88rem;text-align:left;cursor:pointer}.rs-subrow:hover{text-decoration:underline}.rs-row-pupil{grid-template-columns:minmax(0,1fr) auto}.rs-subcourse{flex-direction:column;justify-content:flex-start;gap:2px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}.rs-subcourse:hover{text-decoration:none;border-color:var(--muted)}.rs-subtitle{font-weight:600}.rs-subcourse small{color:var(--muted);font-size:.78rem}.rs-students{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:2px 16px;gap:2px 16px;margin:8px 0 4px;padding:0;list-style:none;font-size:.88rem}.rs-students li{display:flex;justify-content:space-between;gap:8px;padding:3px 0;border-bottom:1px dashed var(--line)}.rs-students li span{color:var(--muted);font-size:.78rem}.rs-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0}.rs-chips span{padding:4px 10px;border-radius:var(--pill);background:var(--surface-2);font-size:.8rem}.rs-empty{color:var(--muted);font-size:.88rem;margin:4px 0}@media (max-width:600px){.rs-row{grid-template-columns:minmax(0,1fr) auto}.rs-row .rs-bar{display:none}}.av{flex-direction:column}.av,.av-bar{display:flex;gap:10px}.av-bar{flex-wrap:wrap;align-items:center}.av-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.av-table{width:100%;border-collapse:collapse;font-size:.86rem}.av-table td,.av-table th{padding:8px 6px;border-bottom:1px solid var(--line);text-align:center;vertical-align:middle}.av-table tbody tr{cursor:pointer}.av-table tbody tr:hover{background:var(--surface-2)}.av-table tbody tr:last-child td{border-bottom:0}.av-name,.av-name-h{text-align:left!important;min-width:170px;max-width:240px;position:-webkit-sticky;position:sticky;left:0;background:var(--surface);z-index:1}.av-table tbody tr:hover .av-name{background:var(--surface-2)}.av-name small{display:block;color:var(--muted);font-size:.74rem;font-weight:500}.av-comment{white-space:normal;max-width:240px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.av-bar .pill-select{width:auto;max-width:220px}.av-bar .ind-search{flex:1 1 180px;max-width:260px}.av-name-btn{padding:0;font:inherit;font-weight:700;color:var(--ink);text-align:left}.av-name-btn,.av-sort{border:0;background:none;cursor:pointer}.av-sort{font:inherit;font-weight:800;color:var(--muted);padding:2px 6px;border-radius:var(--pill)}.av-sort.is-on,.av-sort:hover{color:var(--ink);background:var(--surface-2)}.av-cell{display:inline-block;min-width:68px;padding:4px 6px;border-radius:8px;font-size:.78rem;font-weight:700;white-space:nowrap}.av-cell.is-all{background:var(--ok-soft);color:var(--ok)}.av-cell.is-part{background:var(--warn-soft);color:var(--warn-ink)}.av-cell.is-no{background:var(--danger-soft);color:var(--danger-ink)}.av-cell.is-empty{background:var(--surface-2);color:var(--muted);font-weight:500}.av-upd{color:var(--muted);font-size:.78rem;white-space:nowrap}.av-upd.is-stale{color:var(--coral-600);font-weight:700}.av-modal{max-width:560px}.av-edit-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 0;border-bottom:1px dashed var(--line)}.av-edit-day{width:92px}.av-wins{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:.84rem}.av-bad{font-size:.82rem;color:var(--warn-ink)}.pe-modal{max-width:680px;max-height:min(90dvh,860px)}.pe-body{margin-top:0;padding:22px 24px 16px}.pe-head{display:flex;gap:16px;align-items:flex-start;padding-right:40px}.pe-ava{flex:0 0 auto;width:72px;height:72px;border-radius:50%;object-fit:cover;background:var(--surface-2)}.pe-ava.is-initials{display:inline-flex;align-items:center;justify-content:center;color:var(--muted);font-size:1.4rem;font-weight:800}.pe-who{min-width:0}.pe-name{margin:2px 0 4px;font-family:var(--font-display);font-size:1.5rem;line-height:1.15}.pe-roles{margin:0 0 8px;color:var(--muted);font-size:.92rem;line-height:1.4}.pe-tags{display:flex;flex-wrap:wrap;gap:6px}.pe-tag{padding:3px 10px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.82rem;font-weight:600}.pe-tag small{color:var(--muted);font-size:.78rem;font-weight:500}.pe-tag.is-school{background:color-mix(in srgb,var(--sky-deep,#386ba6) 14%,transparent)}.pe-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.pe-link{padding:6px 14px;border:1.5px solid var(--line);border-radius:var(--pill);color:var(--ink);font-size:.86rem;font-weight:700;text-decoration:none}.pe-link:hover{border-color:var(--muted)}.pe-sec{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.pe-sec-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-bottom:10px}.pe-sec-head h3{margin:0;font-size:1.05rem}.pe-n{margin-left:8px;padding:1px 8px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.78rem;font-weight:700;vertical-align:2px}.pe-sec-hint{color:var(--muted);font-size:.82rem}.pe-edit{margin-left:auto;padding:4px 10px;border:0;border-radius:var(--pill);background:none;color:var(--muted);font:inherit;font-size:.86rem;font-weight:700;cursor:pointer}.pe-edit:hover{background:var(--surface-2)}.pe-edit:hover,.pe-sec.is-editing .pe-edit{color:var(--ink)}.pe-field{margin-top:10px}.pe-field:first-child{margin-top:0}.pe-flabel{margin:12px 0 6px;color:var(--muted);font-size:.82rem;font-weight:700}.pe-field .pe-flabel{margin-top:0}.pe-none,.pe-note{margin:0;color:var(--muted);font-size:.9rem}.pe-note{margin-top:10px;color:var(--ink)}.pe-hint{margin:8px 0 0;color:var(--muted);font-size:.82rem;line-height:1.45}.pe-dl{display:grid;grid-template-columns:auto 1fr;grid-gap:6px 16px;gap:6px 16px;margin:0;font-size:.92rem}.pe-dl dt{color:var(--muted)}.pe-dl dd{margin:0;overflow-wrap:anywhere}.pe-chips{gap:6px}.pe-chips .ind-chip{padding:6px 12px;font-size:.86rem}.pe-chips .ind-chip.is-active{border-color:var(--ink);background:var(--surface-2);color:var(--ink)}.pe-chips .ind-chip.is-active:before{content:"✓ "}.pe-check{display:inline-flex;align-items:center;gap:8px;color:var(--ink);font-size:.92rem;font-weight:500;letter-spacing:normal;text-transform:none}.pe-input{width:100%;max-width:360px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font:inherit}textarea.pe-input{max-width:none;resize:vertical}.pe-search{margin-top:6px;max-width:280px}.pe-input:disabled{background:var(--surface-2);color:var(--muted)}.pe-mentee{display:inline-flex;align-items:center;gap:6px;padding:4px 6px 4px 12px;border-radius:var(--pill);background:var(--surface-2);font-size:.84rem}.pe-mentee small,.pe-x{color:var(--muted)}.pe-x{border:0;background:none;cursor:pointer;font:inherit;padding:2px 6px;border-radius:50%}.pe-x:hover{color:var(--ink);background:var(--surface)}.pe-seg{margin-bottom:4px}.pe-courses{gap:6px;margin:0;padding:0;list-style:none}.pe-course,.pe-courses{display:flex;flex-direction:column}.pe-course{gap:2px;padding:9px 12px;border:1px solid var(--line);border-radius:12px;color:var(--ink);text-decoration:none}.pe-course:hover{border-color:var(--muted)}.pe-course.is-off{opacity:.6}.pe-course-t{font-size:.94rem;font-weight:700;line-height:1.3}.pe-course-m{color:var(--muted);font-size:.82rem;line-height:1.35}.pe-role,.pe-school{display:inline-block;margin-left:6px;padding:0 7px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.72rem;font-weight:700;line-height:1.6;vertical-align:1px}.pe-school{background:color-mix(in srgb,var(--sky-deep,#386ba6) 16%,transparent);color:var(--ink)}.pe-week{display:grid;grid-template-columns:minmax(84px,auto) repeat(3,minmax(0,1fr)) 40px;grid-gap:4px;gap:4px;align-items:stretch}.pe-wh{padding-bottom:2px;color:var(--muted);font-size:.8rem;font-weight:700;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pe-wh small{font-weight:500}.pe-wd{display:flex;align-items:center;padding:0 4px;border:0;background:none;color:var(--ink);font:inherit;font-size:.9rem;font-weight:700;text-align:left}.pe-wd-short{display:none}.pe-week.is-edit .pe-wd{border-radius:8px;cursor:pointer}.pe-week.is-edit .pe-wd:hover{background:var(--surface-2)}.pe-wb,.pe-wc{display:flex;align-items:center;justify-content:center;min-height:36px;border:0;border-radius:10px;font:inherit;font-size:.95rem;font-weight:800}.pe-wc.is-yes{background:var(--ok-soft);color:var(--ok)}.pe-wc.is-no{background:var(--danger-soft);color:var(--danger-ink,var(--danger))}.pe-wc.is-empty{background:var(--surface-2);color:var(--muted);font-weight:500}.pe-wb{background:none;color:var(--line-strong,var(--line))}.pe-wb.is-on{background:var(--warn-soft);color:var(--warn-ink)}.pe-week.is-edit .pe-wb:not(:disabled),.pe-week.is-edit .pe-wc{cursor:pointer}.pe-week.is-edit .pe-wb:not(:disabled):hover,.pe-week.is-edit .pe-wc:hover{box-shadow:inset 0 0 0 1.5px var(--muted)}.pe-week.is-edit .pe-wb{border:1.5px dashed var(--line)}.pe-week.is-edit .pe-wb.is-on{border-style:solid;border-color:transparent}.pe-wb:disabled{opacity:.35}.pe-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:12px 24px;border-top:1px solid var(--line);border-radius:0 0 28px 28px;background:var(--surface)}.pe-bar-acts{display:flex;gap:8px;margin-left:auto}.pe-bar .btn{padding:10px 20px;letter-spacing:normal;text-transform:none}.pe-bar .pe-hint{margin:0}.pe-ok{color:var(--ok)}.pe-err,.pe-ok{font-size:.88rem;font-weight:700}.pe-err{color:var(--danger-ink,var(--danger))}@media (max-width:560px){.pe-body{padding:18px 16px 12px}.pe-head{gap:12px}.pe-ava{width:56px;height:56px}.pe-name{font-size:1.25rem}.pe-week{grid-template-columns:34px repeat(3,minmax(0,1fr)) 34px}.pe-wd-long,.pe-wh small{display:none}.pe-wd-short{display:inline}.pe-bar{padding:10px 16px}.pe-bar-acts{width:100%}.pe-bar-acts .btn{flex:1 1}}.mp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:14px;gap:14px}.mp-slot{display:flex;flex-direction:column;gap:8px;padding:16px}.mp-h{margin:0;font-size:1.05rem}.mp-h span{color:var(--muted);font-weight:500;font-size:.86rem}.mp-opt{display:grid;grid-gap:8px;gap:8px}.mp-foot{gap:10px;margin-top:4px}.cp-cycles,.mp-foot{display:flex;flex-wrap:wrap;align-items:center}.cp-cycles{gap:8px 12px;margin-bottom:12px}.cp-cycles-l{font-size:.78rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}.cp-cycles-note{font-size:.8rem;color:var(--muted)}.frm-cont-badge{display:inline-block;padding:2px 8px;border-radius:var(--pill);background:var(--sky-tint);color:var(--ink);font-size:.72rem;font-weight:700}.cp-lesson-cycle{margin:6px 0;font-size:.84rem;color:var(--muted)}.cp-lesson-cycle select{margin-left:6px}.frm-enroll-wrap{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px}.frm-cycle-hint{color:var(--muted);font-size:.74rem;font-weight:600;line-height:1.25}.fc{display:flex;flex-direction:column;gap:12px}.fc-total{margin:0;font-size:.95rem}.fc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:10px;gap:10px}.fc-card{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.fc-card:hover{border-color:var(--ink)}.fc-num{color:var(--muted);font-size:.82rem}.fc-bar{height:6px;background:var(--surface-2);overflow:hidden}.fc-bar,.fc-bar>span{display:block;border-radius:6px}.fc-bar>span{height:100%;background:var(--ok)}.fc-head{display:flex;flex-direction:column;gap:8px}.fc-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:18px;gap:18px}.fc-h{margin:0 0 6px;font-size:.95rem}.fc-list{margin:0 0 6px;padding:0;list-style:none;font-size:.88rem}.fc-list li{padding:5px 0;border-bottom:1px dashed var(--line)}.fc-list small{color:var(--muted)}.fc-list.is-done li:before{content:"✓ ";color:var(--ok);font-weight:800}.cf-stage-name{padding:0;border:0;background:none;color:var(--ink);font:inherit;font-weight:600;text-align:left;cursor:pointer}.cf-stage-name:hover{text-decoration:underline}.fc-since{font-size:.84rem;color:var(--muted)}.fc-since input{margin-left:6px;padding:4px 8px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit}.cpp-add{margin:0 0 14px}.cpp-add-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px}.menu-wrap.mt-page,.portal:has(.mt-page) .topbar-inner{max-width:1180px}.portal-shell:has(.mt-page) .portal-footer-inner{max-width:1180px}.mt{display:grid;grid-template-columns:268px minmax(0,1fr);grid-gap:44px;gap:44px;margin-top:18px}.mt-nav{position:-webkit-sticky;position:sticky;top:calc(var(--imp-bar-h, 0px) + 84px);align-self:start;max-height:calc(100vh - 104px);overflow:auto;padding-right:4px}.mt-brand{margin:0;font-family:var(--font-display);font-size:1.2rem;font-weight:800;line-height:1.15;color:var(--ink)}.mt-brand-sub{margin:4px 0 0;color:var(--muted);font-size:.94rem;font-weight:700;line-height:1.2}.mt-prog{margin:14px 0}.mt-prog-txt{margin:0 0 6px;color:var(--muted);font-size:.82rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mt-bar{height:6px;border-radius:99px;background:var(--line);overflow:hidden}.mt-bar>span{display:block;height:100%;border-radius:99px;background:var(--ink);transition:width .3s}.mt-list{display:grid;grid-gap:2px;gap:2px;margin:0;padding:0;list-style:none}.mt-list button{display:grid;grid-template-columns:26px minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:center;width:100%;padding:7px 8px;border:0;border-radius:8px;background:transparent;color:var(--ink);font:inherit;font-size:.9rem;line-height:1.3;text-align:left;cursor:pointer}.mt-list button.is-on,.mt-list button:hover:not(:disabled){background:var(--surface-2)}.mt-list button:focus-visible,.mt-route button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.mt-list button.is-soon{opacity:.5;cursor:default}.mt-nn{font-family:var(--font-display);font-size:.75rem;font-weight:800;text-align:center}.mt-nl small{display:block;color:var(--muted);font-size:.75rem}.mt-nc{font-size:.8rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mt-nc.is-full{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--coral);color:#fff;font-size:.68rem;font-weight:800;line-height:1}.mt-ns{display:none}.mt-sheet{min-width:0;max-width:820px;padding-left:36px;border-left:1.5px solid var(--ink)}.mt-sheet>.af:first-child{margin-top:0}.mt-eyebrow{margin:0;color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.mt-title{margin:8px 0 16px;font-family:var(--font-display);font-size:clamp(2rem,5vw,2.9rem);font-weight:800;line-height:1.08;letter-spacing:-.01em;text-wrap:balance;color:var(--ink)}.mt-lead{max-width:60ch;margin:0 0 14px;color:var(--ink);font-size:1.1rem;line-height:1.55}.mt-intro p{max-width:66ch;margin:0 0 12px;color:var(--muted);font-size:.98rem;line-height:1.6}.mt-intro .af-intro-src{font-size:.85rem;font-style:italic}.mt-h2{margin:30px 0 12px;font-family:var(--font-display);font-size:1.3rem;font-weight:800;color:var(--ink)}.mt-route{display:grid;grid-gap:6px;gap:6px;margin:0 0 18px;padding:0;list-style:none}.mt-route-block{margin:14px 0 8px;color:var(--muted);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.mt-route li:first-child .mt-route-block{margin-top:0}.mt-route button{display:grid;grid-template-columns:2em minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center;width:100%;padding:10px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.mt-route button:hover:not(:disabled){border-color:var(--ink)}.mt-route button.is-done{border-color:var(--ok)}.mt-route button.is-soon{border-style:dashed;background:transparent;opacity:.55;cursor:default}.mt-rn{font-family:var(--font-display);font-size:.82rem;font-weight:800}.mt-rt{font-weight:600;line-height:1.35}.mt-rt small{display:block;margin-top:2px;color:var(--muted);font-size:.82rem;font-weight:400;line-height:1.45}.mt-rm{color:var(--muted);font-size:.8rem;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mt-route button.is-done .mt-rm{color:var(--ok);font-weight:700}.mt-hint{margin:0 0 16px;color:var(--muted);font-size:.88rem}@media (max-width:860px){.mt{display:block;margin-top:10px}.mt-nav{position:static;max-height:none;overflow:visible;margin:0 -20px 18px;padding:0 20px 12px;border-bottom:1px solid var(--line)}.mt-brand,.mt-brand-sub{display:none}.mt-prog{margin:0 0 10px}.mt-list{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.mt-list::-webkit-scrollbar{display:none}.mt-list li{flex:0 0 auto}.mt-list button{display:flex;gap:6px;padding:7px 13px;border:1px solid var(--line);border-radius:var(--pill);background:var(--surface);font-size:.86rem;white-space:nowrap}.mt-list button.is-on{border-color:var(--ink);background:var(--surface)}.mt-nl{display:none}.mt-ns{display:inline}.mt-sheet{padding-left:0;border-left:0}.mt-route button{grid-template-columns:1.6em minmax(0,1fr)}.mt-rm{grid-column:2;white-space:normal}}.cp-promo{display:flex;align-items:center;gap:16px;max-width:760px;margin:18px 0 4px;padding:16px 18px;border:1.5px solid var(--line);border-radius:22px;background:var(--surface);color:var(--ink)}.cp-promo-ico{flex:0 0 auto;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--coral);color:#fff;font-size:1.15rem}.cp-promo-text{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1 1 auto}.cp-promo-text strong{font-family:var(--font-display);font-size:1.02rem;font-weight:800;line-height:1.3}.cp-promo-text span{color:var(--muted);font-size:.88rem;line-height:1.45}.cp-promo-go{flex:0 0 auto;white-space:nowrap;text-decoration:none}@media (max-width:600px){.cp-promo{flex-wrap:wrap;align-items:flex-start}.cp-promo-text{flex-grow:1;flex-shrink:1;flex-basis:calc(100% - 60px)}.cp-promo-go{width:100%;justify-content:center;text-align:center}}.spc-switch{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;font-weight:700;color:var(--muted)}.spc-switch .pill-select{width:auto}.frm-top-side{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-left:auto}.frm-done-btn{padding:8px 16px;border:1.5px solid var(--ink);border-radius:var(--pill);background:transparent;color:var(--ink);font:inherit;font-size:.85rem;font-weight:700;cursor:pointer}.frm-done-btn:hover:not(:disabled){background:var(--ink);color:var(--surface)}.frm-done-btn.is-done{border-color:var(--ok);background:var(--ok-soft);color:var(--ok)}.frm-done-btn:disabled{opacity:.6;cursor:default}@media (max-width:560px){.frm-top-side{margin-left:0;width:100%}.frm-done-btn{flex:1 1}}.frm-toast{position:fixed;left:50%;bottom:84px;z-index:60;transform:translateX(-50%);width:min(92vw,460px);margin:0;padding:12px 16px;border:1px solid var(--danger);border-radius:14px;background:var(--surface);box-shadow:0 8px 24px rgba(0,0,0,.15);font-size:.9rem;text-align:center;cursor:pointer}.frm-limit-note{margin:0 0 12px}@media (max-width:560px){.frm-view-tabs{flex:1 1 100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:6px;gap:6px;padding-bottom:0;overflow:visible;border-bottom:0}.frm-view-tabs .sp-tab:last-child:nth-child(odd){grid-column:1/-1}.frm-view-tabs .sp-tab{justify-content:center;margin:0;padding:9px 12px;border:1.5px solid var(--line);border-radius:var(--pill);font-size:.92rem}.frm-view-tabs .sp-tab.is-active{border-color:var(--ink);background:var(--ink);color:var(--bg)}.frm-view-tabs .sp-tab.is-active .frm-tab-count{color:inherit}.frm-tab-long{display:none}}@media (min-width:561px){.frm-tab-short{display:none}}.frm-bar,.frm-bar-ctx{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.frm-bar-ctx{margin-right:auto}.frm-bar-ctx:empty{display:none}.frm-bar .spc-switch .pill-select,.frm-bar-select{width:auto;padding-top:8px;padding-bottom:8px;font-size:.9rem;font-weight:700}.frm-bar>.pg-tools{display:contents}.frm-bar .pep-wrap{margin:0}.frm-bar .pep-panel{order:10;flex-basis:100%;margin-top:4px}.frm-tools-hint{font-size:.8rem}.frm-root>.frm-view-tabs{flex:none;margin-bottom:-4px}.frm-filterbar{gap:6px;padding:0;border:0;border-radius:0;background:none}.frm-chip{padding:6px 13px;border:1.5px solid var(--line);font-size:.85rem;font-weight:600}.frm-chip:hover{border-color:var(--line-strong)}.frm-chip.is-active{border-color:var(--ink)}.frm-chip-count{font-size:.78rem}@media (max-width:640px){.frm-filterbar{border-radius:0}}.frm-viewonly.is-quiet{padding:0;border:0;background:none;color:var(--muted);font-size:.84rem}@media (max-width:560px){.frm-bar-ctx{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);width:100%;margin-right:0}.frm-bar-ctx .spc-switch{display:block;min-width:0}.frm-bar-ctx .pill-select{padding-left:14px;padding-right:32px;font-size:.86rem}.frm-bar .pep-toggle{padding:6px 11px;font-size:.78rem}.frm-bar-ctx .pill-select{width:100%}.frm-bar .frm-done-btn{flex:1 1 100%}}:root{--space-senior:#ff7c60;--space-online:#3567ad;--space-middle:#1e8e5a;--space-junior:#8a4fd1;--space-comms:#d4498a}:root[data-theme=dark]{--space-senior:#ff7a52;--space-online:#8ec7ed;--space-middle:#62d6a0;--space-junior:#c4a3f2;--space-comms:#f293c0}.spx{position:relative;margin-right:auto;margin-left:14px;padding-left:14px;border-left:1px solid var(--line)}.spx-btn{display:inline-flex;align-items:center;gap:7px;padding:6px 10px 6px 12px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.88rem;font-weight:700;cursor:pointer}.spx-btn:hover,.spx-btn[aria-expanded=true]{border-color:var(--ink)}.spx-btn svg{color:var(--muted)}.spx-short{display:none}.spx-dot{flex:none;width:9px;height:9px;border-radius:50%;background:var(--space-senior)}.spx-dot.is-online{background:var(--space-online)}.spx-dot.is-middle{background:var(--space-middle)}.spx-dot.is-junior{background:var(--space-junior)}.spx-dot.is-comms{background:var(--space-comms)}.spx-menu{position:absolute;top:calc(100% + 8px);left:14px;z-index:40;width:250px;padding:6px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 12px 32px rgba(0,0,0,.12)}.spx-opt{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;border-radius:12px;background:none;color:var(--ink);font:inherit;font-size:.95rem;font-weight:700;text-align:left;cursor:pointer}.spx-opt.is-on,.spx-opt:hover{background:var(--surface-2)}.spx-opt.is-on{cursor:default}.spx-opt-text{display:flex;flex:1 1;flex-direction:column;gap:1px;min-width:0}.spx-opt-text small{color:var(--muted);font-size:.76rem;font-weight:500}@media (max-width:560px){.spx{margin-left:8px;padding-left:0;border-left:0}.spx-btn{gap:5px;padding:5px 8px 5px 10px;font-size:.8rem}.spx-name{display:none}.spx-short{display:inline}.spx-menu{left:0}.topbar-inner{gap:10px;padding:12px 14px}.topbar .brand{height:20px}.topbar-actions{flex:none;gap:6px}.topbar-actions .icon-btn,.topbar-actions .ps-trigger,.topbar-avatar{width:34px;height:34px}.spx{flex:0 1 auto;min-width:0;margin-left:0}.spx-btn{gap:4px;height:34px;padding:0 7px 0 9px}.spx-menu{position:fixed;top:calc(100% + 6px);left:12px;right:12px;width:auto;max-width:none}.spx-opt{padding:12px}}.mdp-root{display:flex;flex-direction:column;gap:14px}.mdp-hint,.mdp-lead{margin:0;color:var(--muted);font-size:.9rem}.mdp-kids{display:flex;flex-wrap:wrap;gap:6px}.mdp-kid{padding:8px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.9rem;font-weight:600;cursor:pointer}.mdp-kid:hover{border-color:var(--line-strong)}.mdp-kid.is-active{border-color:var(--ink);background:var(--ink);color:var(--bg)}.mdp-card{padding:18px;border:1.5px solid var(--line);border-radius:22px;background:var(--surface)}.mdp-card-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 12px;margin-bottom:10px}.mdp-card-head h3{margin:0;font-family:var(--font-display);font-size:1.1rem}.mdp-count{color:var(--muted);font-size:.85rem;font-weight:600}.mdp-list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.mdp-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.mdp-row:first-child{border-top:0}.mdp-row-text{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.mdp-row-text b{font-size:.95rem}.mdp-row-text small{color:var(--muted);font-size:.8rem}.mdp-btn{flex:none;min-width:112px;padding:8px 14px;border:1.5px solid var(--ink);border-radius:var(--pill);background:transparent;color:var(--ink);font:inherit;font-size:.85rem;font-weight:700;cursor:pointer}.mdp-btn:hover:not(:disabled){background:var(--ink);color:var(--bg)}.mdp-btn.is-on{border-color:var(--ok);background:var(--ok-soft);color:var(--ok)}.mdp-btn:disabled{opacity:.55;cursor:default}@media (max-width:560px){.mdp-card{padding:14px;border-radius:18px}.mdp-row{flex-wrap:wrap}.mdp-btn{width:100%}}.myc-search{display:flex;flex-direction:column;gap:12px}.myc-search .ind-search{box-sizing:border-box;width:100%;min-height:44px;padding:10px 18px}.cm.mdp-modal{width:min(880px,calc(100vw - 32px));max-width:none}.mdp-profile{gap:14px}.mdp-ava{width:64px;height:64px}.mdp-tabs{margin-bottom:0}.mdp-sections{display:flex;flex-direction:column;gap:12px}.mdp-sum{margin:0;color:var(--muted);font-size:.9rem}.mdp-days{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));grid-gap:6px;gap:6px}.mdp-day{display:flex;flex-direction:column;gap:1px;padding:7px 9px;border:1px solid var(--line);border-radius:12px;font-size:.8rem;font-weight:600}.mdp-day.att-tone-empty{border-style:dashed}.mdp-day small{overflow:hidden;font-size:.72rem;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.mdp-h{margin:6px 0 0;font-family:var(--font-display);font-size:.95rem}.mdp-row-col{flex-direction:column;align-items:stretch;gap:6px}.mdp-lessons{display:flex;flex-wrap:wrap;gap:4px}.mdp-lesson{padding:2px 8px;border-radius:var(--pill);font-size:.74rem;font-weight:600}.mdp-lesson.att-tone-empty{border:1px dashed var(--line-strong)}.mdp-fb-text{margin:0;font-size:.92rem;line-height:1.5;white-space:pre-wrap}@media (max-width:560px){.mdp-days{grid-template-columns:repeat(auto-fill,minmax(78px,1fr))}}.mpw-print-btns{display:flex;flex-wrap:wrap;gap:6px;margin-left:auto}.mpw-layout{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:18px;gap:18px}@media (min-width:1100px){.mpw-layout{grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);align-items:start}.mpw-main{position:-webkit-sticky;position:sticky;top:76px}.mpw-side{max-height:calc(100vh - 110px);overflow-y:auto;padding-right:4px}}.mpw-main{display:flex;flex-direction:column;gap:8px;min-width:0}.mdp-row.is-clash .mdp-row-text b{color:var(--danger-ink,var(--danger))}.mpw-opt-clash{color:var(--danger-ink,var(--danger))!important;font-weight:600}.mpw-sheet-back{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--overlay,rgba(0,0,0,.35))}.mpw-sheet{display:flex;flex-direction:column;gap:10px;width:min(520px,100%);max-height:min(80vh,640px);overflow-y:auto;box-sizing:border-box;padding:16px 18px 18px;border-radius:20px;background:var(--surface);box-shadow:var(--shadow-lg)}.mpw-sheet>*{flex-shrink:0}.mpw-sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.mpw-sheet-head>div{display:flex;flex-direction:column}.mpw-sheet-head b{font-family:var(--font-display);font-size:1.1rem}.mpw-sheet-head small{color:var(--muted);font-size:.82rem}.mpw-x{flex:none;width:36px;height:36px;border:0;border-radius:50%;background:var(--surface-2);color:var(--ink);font-size:1.3rem;line-height:1;cursor:pointer}.mpw-empty{margin:0;color:var(--muted);font-size:.9rem}.mpw-opts{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.mpw-opt{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line)}.mpw-opt:first-child{border-top:0}.mpw-opt-text{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.mpw-opt-text b{font-size:.92rem}.mpw-opt-text small{color:var(--muted);font-size:.78rem}.mpw-opts.is-muted{margin-top:6px;opacity:.75}.mpw-others{padding-top:4px;border-top:1px solid var(--line)}.mpw-alt{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:12px;background:var(--sky-tint);cursor:pointer}.mpw-alt input{margin-top:3px}.mpw-alt span{display:flex;flex-direction:column;gap:2px}.mpw-alt small{color:var(--muted);font-size:.78rem}.mpw-own{display:flex;flex-direction:column;gap:8px;padding-top:8px;border-top:1px solid var(--line)}.mpw-own-h{font-size:.9rem}.mpw-own-row{display:flex;gap:8px}.mpw-own-row .tk-input{flex:1 1;min-width:0;font-size:16px}.mpw-cell{display:flex;flex-direction:column;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--line)}.mpw-cell-acts{display:flex;flex:none;gap:6px}.mpw-cell-acts .mdp-btn{min-width:0;padding:6px 12px}.mpw-alt,.mpw-done,.mpw-edit label,.msh-photo-toggle{color:var(--ink);font-size:inherit;font-weight:inherit;letter-spacing:normal;text-transform:none}.mpw-done{font-size:.9rem;font-weight:600}.mpw-lvl{display:flex;flex-direction:column;gap:6px}.mpw-edit small,.mpw-lvl small,.mpw-step small{color:var(--muted);font-size:.78rem}.mpw-span{display:flex;flex-wrap:wrap;gap:12px 20px}.mpw-step{display:flex;flex-direction:column;gap:4px}.mpw-step>span{display:flex;align-items:center;gap:8px}.mpw-step b{min-width:1.5em;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mpw-step .mdp-btn{min-width:40px}.mpw-edit{display:grid;flex:1 1;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;min-width:0}.mpw-edit label{display:flex;flex-direction:column;gap:2px;min-width:0}.mpw-edit .tk-input{font-size:16px}.mpw-edit-acts{display:flex;flex-wrap:wrap;grid-column:1/-1;gap:6px}.mpw-search{font-size:16px}.mpw-clear{align-self:flex-start;padding:8px 0;border:0;background:none;color:var(--danger-ink,var(--danger));font:inherit;font-size:.9rem;font-weight:600;cursor:pointer}.mpw-modes{display:flex;flex-wrap:wrap;gap:8px}.mpw-mode{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:8px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);font:inherit;font-weight:700;cursor:pointer}.mpw-mode small{color:var(--muted);font-size:.75rem;font-weight:500}.mpw-mode.is-active{border-color:var(--ink)}.mpw-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px}.mpw-copy{width:auto;max-width:100%;font-size:.9rem}.mpw-done{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.mpw-fill{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:12px}.mpw-fill small{color:var(--muted);font-size:.8rem}.mdp-done{color:var(--ok)}@media (max-width:700px){.mpw-daytabs{flex-wrap:nowrap}.mpw-daytabs .ind-chip{flex:1 1;padding:8px 0;text-align:center}.mpw-print-btns{width:100%;margin-left:0}.mpw-print-btns .pep-toggle{flex:1 1;justify-content:center}.mpw-sheet-back{align-items:flex-end;padding:0}.mpw-sheet{width:100%;max-height:85vh;border-radius:20px 20px 0 0}.mpw-opt{flex-wrap:wrap;gap:8px}.mpw-edit{grid-template-columns:1fr}.mpw-cell-acts .mdp-btn,.mpw-own-row .mdp-btn,.mpw-step .mdp-btn{width:auto}.mpw-opt>.mdp-btn{width:100%}.mpw-copy{flex:1 1 100%}}.mpw-print{position:fixed;top:0;left:-400mm;visibility:hidden;pointer-events:none}@media print{body.mpw-printing>:not(.mpw-print){display:none!important}body.mpw-printing{background:#fff!important}body.mpw-printing>.mpw-print{position:static;display:block;visibility:visible;color:#000}}.msh{min-width:0}.msh-grid{display:grid;grid-template-columns:52px repeat(5,minmax(0,1fr));grid-gap:4px;gap:4px}.msh-dh{align-items:flex-end;padding:0 10px 6px;font-size:.8rem}.msh-dh,.msh-time{display:flex;color:var(--muted);font-weight:700}.msh-time{flex-direction:column;justify-content:flex-start;padding-top:8px;font-size:.78rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.25}.msh-time small{font-size:.7rem;font-weight:500;opacity:.8}.msh-time.is-anchor{justify-content:center;padding-top:0}.msh-time.is-anchor small{display:none}.msh-band{display:flex;align-items:center;padding:6px 10px;border-radius:10px;background:color-mix(in srgb,var(--coral) 14%,transparent);color:var(--ink);font-size:.78rem;font-weight:700;line-height:1.25}.msh-empty{min-height:56px;border:1.5px dashed var(--line);border-radius:12px}.msh-fill{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid color-mix(in srgb,var(--sky-deep) 70%,transparent);border-radius:12px;background:var(--sky-tint)}.msh-fill.on-anchor{border-color:color-mix(in srgb,var(--coral) 40%,transparent);background:color-mix(in srgb,var(--coral) 12%,transparent)}.is-click{cursor:pointer}.msh-empty.is-click:hover{border-color:var(--muted)}.msh-fill.is-click:hover{border-color:var(--sky-deep);box-shadow:var(--shadow-sm)}.is-click:focus-visible{outline:2px solid var(--coral);outline-offset:1px}.msh-card{display:flex;flex:1 1;flex-direction:column;justify-content:flex-start;gap:3px;min-width:0;padding:8px 10px}.msh-card+.msh-card{border-top:1px solid color-mix(in srgb,var(--sky-deep) 60%,transparent)}.msh-fill:has(.msh-card.is-own:only-child){border-style:dashed;border-color:var(--line-strong);background:var(--surface-2,var(--seg-bg))}.msh-card.is-own .msh-name{font-style:italic}.msh-name{font-size:.82rem;font-weight:700;line-height:1.25;overflow-wrap:anywhere}.msh-room,.msh-sub{color:var(--muted);font-size:.72rem;line-height:1.3}.msh-alt{align-self:flex-start;padding:1px 7px;border-radius:var(--pill);background:color-mix(in srgb,var(--board-navy) 12%,transparent);color:var(--board-navy);font-size:.66rem;font-weight:700;line-height:1.5;white-space:nowrap}:root[data-theme=dark] .msh-fill{border-color:var(--line-strong)}:root[data-theme=dark] .msh-card+.msh-card{border-top-color:var(--line-strong)}:root[data-theme=dark] .msh-alt{background:color-mix(in srgb,var(--sky-deep) 22%,transparent);color:var(--ink)}.msh-chip{display:inline-block;margin-right:5px;padding:0 6px;border-radius:6px;background:var(--board-navy);color:#fff;font-size:.66rem;font-weight:800;line-height:1.55;white-space:nowrap;vertical-align:1px}.msh-fill.is-split .msh-name{font-size:.78rem}.msh-mobile{display:none}.msh-free{color:var(--muted);font-size:.74rem}.msh-grid .msh-empty{display:flex;align-items:center;justify-content:center}.msh-fill.is-clash{border-color:var(--danger);background:var(--danger-soft)}.msh-clash{padding:4px 7px 0;color:var(--danger-ink,var(--danger));font-size:.68rem;font-weight:800}@media (max-width:700px){.msh-grid:not(.is-print){display:none}.msh-mobile{gap:10px}.msh-daylist,.msh-mobile{display:flex;flex-direction:column}.msh-daylist{gap:4px}.msh-drow{display:grid;grid-template-columns:48px minmax(0,1fr);grid-gap:6px;gap:6px}.msh-dtime{display:flex;flex-direction:column;justify-content:center;color:var(--muted);font-size:.78rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.msh-dtime small{font-size:.7rem;font-weight:500;opacity:.8}.msh-drow .msh-empty{display:flex;align-items:center;min-height:48px;padding:0 10px}.msh-drow .msh-band{justify-content:flex-start}.msh-name{font-size:.88rem}.msh-room,.msh-sub{font-size:.78rem}}.msh-wrap{display:flex;flex-direction:column;gap:10px}.msh-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.msh-photo-toggle{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:.85rem}.msh-page{--k:1;--pt:calc(1pt * var(--k));display:flex;flex-direction:column;box-sizing:border-box;width:297mm;height:210mm;padding:9mm 10mm;overflow:hidden;background:#fff;color:#000;break-after:page;page-break-after:always;-webkit-print-color-adjust:exact;print-color-adjust:exact}.msh-page:last-child{break-after:auto;page-break-after:auto}.msh-head{display:grid;grid-template-columns:21mm 1fr auto 20mm;grid-gap:4mm;gap:4mm;align-items:center;padding-bottom:2.5mm;border-bottom:1mm solid #000}.msh-logo{display:block;width:21mm;height:16mm;object-fit:contain;object-position:left center}.msh-cyc{color:#386ba6;font-size:9.5pt}.msh-cyc,.msh-title{display:block;font-weight:800}.msh-title{margin-top:1mm;font-family:var(--font-display);font-size:18pt;line-height:1.05}.msh-who{text-align:right}.msh-kid{display:block;font-family:var(--font-display);font-size:15pt;font-weight:800;line-height:1.1}.msh-grp{display:block;margin-top:.8mm;color:#386ba6;font-size:10pt}.msh-photo img{display:block;width:20mm;height:20mm;object-fit:cover}.msh-page .msh{display:flex;flex:1 1;min-height:0;padding-top:3mm}.msh-page .msh-grid{flex:1 1;grid-template-columns:24mm repeat(5,minmax(0,1fr));gap:1mm}.msh-page .msh-time>span{white-space:nowrap}.msh-page .msh-dh{align-items:center;justify-content:center;padding:0;border-radius:0;background:#386ba6!important;color:#fff;font-size:calc(10 * var(--pt))}.msh-page .msh-dh-t{font-size:calc(9 * var(--pt))}.msh-page .msh-time{align-items:center;justify-content:center;padding:0;border-radius:0;background:#8ec7ed!important;color:#000;font-size:calc(8.5 * var(--pt));text-align:center}.msh-page .msh-time.is-anchor small{display:block}.msh-page .msh-time small{color:#000;font-size:calc(7 * var(--pt))}.msh-page .msh-band,.msh-page .msh-fill.on-anchor,.msh-page .msh-time.is-anchor{justify-content:center;border:0;border-radius:0;background:#f7775e!important;color:#000;font-size:calc(10 * var(--pt))}.msh-page .msh-empty{min-height:0;border:0;border-radius:0;outline:.25mm solid #c6e3f6;outline-offset:-.25mm}.msh-page .msh-fill,.msh-page .msh-fill:has(.msh-card.is-own:only-child){border:0;border-radius:0;background:#c6e3f6!important}.msh-page .msh-card{justify-content:center;padding:1.5mm 2mm;gap:.7mm}.msh-page .msh-card+.msh-card{border-top:.35mm dashed #386ba6}.msh-page .msh-name{font-size:calc(10 * var(--pt));font-weight:800;line-height:1.12}.msh-page .msh-sub{color:#000;font-size:calc(8.5 * var(--pt))}.msh-page .msh-room{color:#000;font-size:calc(8 * var(--pt))}.msh-page .msh-alt{padding:0;background:none;color:#386ba6;font-size:calc(6.5 * var(--pt));font-weight:800;letter-spacing:.04em;text-transform:uppercase}.msh-page .msh-chip{border-radius:0;background:#386ba6!important;color:#fff;font-size:calc(7.5 * var(--pt))}.msh-page .is-split .msh-name{font-size:calc(8.5 * var(--pt))}.msh-page .is-split .msh-sub{font-size:calc(7.5 * var(--pt))}.msh-foot{padding-top:3mm;color:#386ba6;font-size:9pt;text-align:right}.msh-page .msh-fill.is-split .msh-card{flex:1 0 auto;padding:1mm 2mm;gap:.4mm}.msh-page .msh-empty.is-blank{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;padding:1.5mm 2mm;outline:0;background:#c6e3f6!important}.msh-page .msh-empty.is-twin{gap:1mm;padding:0;background:none!important}.msh-page .msh-empty.is-twin>span{display:flex;flex:1 1;flex-direction:column;justify-content:flex-end;padding:0 2mm 1mm;background:#c6e3f6}.msh-rule{display:block;flex:0 0 auto;height:5mm;border-bottom:.25mm solid #386ba6}.msh-empty.is-twin .msh-rule{height:4mm}.msh-page .msh-chip.is-blank{border:.25mm solid #386ba6;background:transparent!important;color:#386ba6}.msh-chip.is-blank i{display:inline-block;width:9mm;margin-left:1mm;border-bottom:.25mm solid #386ba6;vertical-align:-.2mm}.msh-who.is-blank .msh-kid i{display:inline-block;width:70mm;height:8mm;border-bottom:.35mm solid #000;vertical-align:bottom}.msh-who.is-blank .msh-cap{display:block;margin-top:.6mm;color:#386ba6;font-size:8pt}.msh-who.is-blank .msh-grp{margin-top:1.2mm;color:#000;font-size:13pt;font-weight:800}.msh-page.is-blank .msh-foot,.msh-page.is-blank .msh-foot span{max-width:200mm;margin-left:auto}.mfb-root{display:flex;flex-direction:column;gap:14px}.mfb-bar{align-items:center;gap:10px}.mfb-bar,.mfb-head{display:flex;flex-wrap:wrap}.mfb-head{align-items:flex-end;justify-content:space-between;gap:12px 20px;margin-bottom:12px}.mfb-head .page-head{margin-bottom:0}.mfb-actions{display:flex;gap:8px}.mfb-note{margin:0}.mfb-menu{position:relative}.mfb-menu>.pep-toggle span{font-size:.7em;opacity:.6}.mfb-menu-panel{position:absolute;top:calc(100% + 6px);right:0;z-index:40;width:min(340px,calc(100vw - 32px));box-sizing:border-box;padding:6px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 14px 36px rgba(0,0,0,.14)}.mfb-menu-item,.mfb-menu-panel{display:flex;flex-direction:column;gap:2px}.mfb-menu-item{padding:10px 12px;border:0;border-radius:10px;background:none;color:var(--ink);font:inherit;font-size:.9rem;font-weight:700;text-align:left;text-decoration:none;cursor:pointer}.mfb-menu-item small{color:var(--muted);font-size:.78rem;font-weight:500}.mfb-menu-item:hover:not(:disabled){background:var(--surface-2)}.mfb-menu-item:disabled{opacity:.5;cursor:default}.mfb-menu-sep{height:1px;margin:4px 8px;background:var(--line)}.mfb-menu-url{display:flex;flex-direction:column;gap:6px;padding:6px 12px 8px}.mfb-menu-url label{margin:0;color:var(--ink);font-size:.9rem;font-weight:700;letter-spacing:0;text-transform:none}.mfb-more{align-self:center}.mfb-menu-url div{display:flex;gap:6px}.mfb-menu-url .ind-search{flex:1 1;min-width:0;min-height:38px;padding:6px 14px}.mfb-kidstrip{position:relative;display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.mfb-kidchip{display:inline-flex;align-items:center;gap:7px;padding:3px 12px 3px 3px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.86rem;font-weight:700;white-space:nowrap;cursor:pointer}.mfb-kidchip:hover{border-color:var(--muted)}.mfb-kidchip.is-all{padding:7px 14px}.mfb-kidchip .cpp-avatar{width:28px;height:28px;font-size:.6rem}.mfb-kidchip.is-active{border-color:var(--ink);background:var(--ink);color:var(--bg)}.mfb-kidchip-n{color:var(--muted);font-size:.76rem;font-weight:600}.mfb-kidchip-n.is-full{color:var(--ok)}.mfb-kidchip.is-active .mfb-kidchip-n{color:inherit;opacity:.7}.mfb-kidhead{display:flex;align-items:center;gap:12px}.mfb-kidhead>div:not(.mfb-kidnav){display:flex;flex-direction:column;min-width:0}.mfb-kidhead b{font-family:var(--font-display);font-size:1.15rem}.mfb-kidhead small{color:var(--muted);font-size:.85rem}.mfb-kidnav{display:flex;gap:6px;margin-left:auto}.mfb-kidnav .pep-toggle{justify-content:center;min-width:40px;font-size:1.1rem}.mfb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:12px;gap:12px;margin:0;padding:0;list-style:none}.mfb-card{display:flex;flex-direction:column;gap:12px;min-width:0;padding:14px 16px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface)}.mfb-card.is-curator{border-color:var(--line-strong);background:var(--surface-2,color-mix(in srgb,var(--ink) 4%,transparent))}.mfb-card.is-empty{border-style:dashed;background:transparent}.mfb-card-head{display:flex;align-items:center;gap:10px;min-width:0}.mfb-card-head>div{display:flex;flex-direction:column;min-width:0}.mfb-card-head b{font-size:.95rem;overflow-wrap:anywhere}.mfb-card-head small{color:var(--muted);font-size:.8rem;overflow-wrap:anywhere}.mfb-body{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.mfb-text{margin:0;font-size:.92rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.mfb-text.is-clamped{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:8}.mfb-write{align-self:flex-start;padding:8px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.88rem;font-weight:700;cursor:pointer}.mfb-write:hover{border-color:var(--ink)}.mfb-card-foot{display:flex;align-items:center;gap:8px;margin-top:auto;padding-top:10px;border-top:1px solid var(--line)}.mfb-card-foot .cpp-avatar{width:28px;height:28px;font-size:.6rem}.mfb-card-foot>div{display:flex;flex-direction:column;flex:1 1;min-width:0}.mfb-card-foot b{font-size:.82rem}.mfb-card-foot small{color:var(--muted);font-size:.76rem}.mfb-card-acts{display:flex;flex:none;gap:10px;align-self:flex-start;font-size:.82rem}.mdp-fb-curator{border-left:3px solid var(--line-strong);padding-left:10px}.mfb-edit{display:flex;flex-direction:column;gap:8px}.mfb-edit textarea{box-sizing:border-box;width:100%;padding:10px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--input-bg,var(--surface));color:var(--ink);font:inherit;font-size:.92rem;resize:vertical}.mfb-edit-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.mfb-del{margin-left:auto;color:var(--danger)}.mfb-unmatched{padding:14px 16px;border:1.5px dashed var(--line-strong);border-radius:18px}.mfb-unmatched h3{margin:0 0 4px;font-family:var(--font-display);font-size:1rem}.mfb-unmatched ul{display:flex;flex-direction:column;gap:10px;margin:10px 0 0;padding:0;list-style:none}.mfb-unmatched p{margin:2px 0 6px;font-size:.9rem}@media (max-width:640px){.mfb-bar>.pill-select{flex:1 1 100%}.mfb-head{margin-bottom:4px}.mfb-actions{width:100%}.mfb-actions .mfb-menu{flex:1 1}.mfb-actions .mfb-menu>.pep-toggle{justify-content:center;width:100%}.mfb-actions .mfb-menu:first-child .mfb-menu-panel{right:auto;left:0}.mfb-bar .ind-chips{flex-wrap:nowrap;order:3;width:100%;overflow-x:auto;scrollbar-width:none}.mfb-bar .ind-chips::-webkit-scrollbar,.mfb-kidstrip::-webkit-scrollbar{display:none}.mfb-bar .ind-chip{flex:none;padding:7px 14px;font-size:.86rem}.mfb-kidstrip{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.mfb-kidstrip>li{flex:none}.mfb-grid{grid-template-columns:1fr}}.stp-groups{margin:4px 0 0}.stp-group-n{margin-left:6px;font-size:.78em;font-weight:600;opacity:.6}.stp-section{margin-top:18px}.stp-section-h{display:flex;align-items:baseline;gap:8px;margin:0 0 10px;font-family:var(--font-display);font-size:1.05rem}.stp-section-h span{color:var(--muted);font-size:.85rem;font-weight:600}@media (max-width:560px){.stp-groups{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-right:-16px;padding-right:16px}.stp-groups::-webkit-scrollbar{display:none}.stp-groups .ind-chip{flex:none}}.mpl-root{display:grid;grid-template-columns:minmax(0,1fr) 400px;grid-gap:18px;gap:18px;align-items:start}.mpl-main{display:flex;flex-direction:column;gap:10px;min-width:0}.mpl-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.mpl-search{flex:1 1 200px;min-width:0;min-height:40px;padding:8px 16px}.mpl-attn.is-on{border-color:#ef9f27;background-color:color-mix(in srgb,#ef9f27 14%,var(--surface))}.mpl-chips{margin:0}.mpl-n{margin-left:6px;font-size:.78em;font-weight:600;opacity:.6}.ind-chip.mpl-warn:not(.is-active){border-color:color-mix(in srgb,#ef9f27 55%,var(--line));background:color-mix(in srgb,#ef9f27 10%,var(--surface))}.ind-chip.mpl-warn:disabled{opacity:.45;cursor:default}.mpl-count{margin:4px 0 0;color:var(--muted);font-size:.85rem;font-weight:600}.mpl-section{margin-top:8px}.mpl-list{display:flex;flex-direction:column;overflow:hidden;border:1.5px solid var(--line);border-radius:18px;background:var(--surface)}.mpl-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;grid-gap:12px;gap:12px;width:100%;padding:10px 14px;border:0;border-top:1px solid var(--line);background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.mpl-row:first-child{border-top:0}.mpl-row.is-sel,.mpl-row:hover{background:var(--surface-2)}.mpl-row.is-sel{box-shadow:inset 3px 0 0 var(--ink)}.mpl-row-text{display:flex;flex-direction:column;gap:1px;min-width:0}.mpl-row-text b{overflow:hidden;font-size:.95rem;text-overflow:ellipsis;white-space:nowrap}.mpl-row-text small{color:var(--muted);font-size:.8rem}.mpl-sig{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.mpl-b{padding:2px 8px;border-radius:var(--pill);font-size:.74rem;font-weight:700;white-space:nowrap}.mpl-b.is-ok{background:var(--ok-soft);color:var(--ok)}.mpl-b.is-bad{background:color-mix(in srgb,var(--danger) 14%,var(--surface));color:var(--danger)}.mpl-b.is-mid,.mpl-b.is-warn{background:color-mix(in srgb,#ef9f27 18%,var(--surface));color:#8a5208}.mpl-b.is-gray{background:var(--surface-2);color:var(--muted)}:root[data-theme=dark] .mpl-b.is-mid,:root[data-theme=dark] .mpl-b.is-warn{color:#f2b45a}.mpl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:10px;gap:10px}.mpl-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 10px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);font:inherit;text-align:center;cursor:pointer}.mpl-card:hover{border-color:var(--line-strong)}.mpl-card.is-sel{border-color:var(--ink)}.mpl-card b{font-size:.9rem;line-height:1.25}.mpl-card small{color:var(--muted);font-size:.78rem}.mpl-card .mpl-sig{justify-content:center;margin-top:4px}.mpl-skel{display:flex;flex-direction:column;gap:8px}.mdp-skel span,.mpl-skel span{display:block;height:52px;border-radius:14px;background:linear-gradient(90deg,var(--surface-2),var(--surface),var(--surface-2));background-size:200% 100%;animation:mpl-shine 1.2s linear infinite}.mdp-skel{display:flex;flex-direction:column;gap:8px}.mdp-skel span{height:34px}@keyframes mpl-shine{0%{background-position:200% 0}to{background-position:-200% 0}}.mpl-panel{position:-webkit-sticky;position:sticky;top:84px;max-height:calc(100vh - 100px);overflow-y:auto;border:1.5px solid var(--line);border-radius:22px;background:var(--surface);overscroll-behavior:contain}.mpl-panel-empty{margin:0;padding:40px 24px;color:var(--muted);font-size:.92rem;text-align:center}.mdp-ava{position:relative;display:grid;flex:none;place-items:center;overflow:hidden;border-radius:50%;background:var(--surface-2);color:var(--muted);font-size:.8rem;font-weight:700}.mdp-ava img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.mdp-profile{display:flex;flex-direction:column;min-height:100%}.mdp-sticky{position:-webkit-sticky;position:sticky;top:0;z-index:2;padding:16px 16px 0;background:var(--surface)}.mdp-head{display:flex;align-items:center;gap:12px}.mdp-head-text{min-width:0}.mdp-head-text h2{margin:0;font-family:var(--font-display);font-size:1.15rem;line-height:1.2}.mdp-head-text p{margin:2px 0 0;color:var(--muted);font-size:.82rem}.mdp-back{flex:none;padding:6px 10px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}.mdp-back span{display:none}@media (min-width:1081px){.mdp-back{display:none}}.mdp-tabs{margin:12px 0 0}.mdp-body{flex:1 1;padding:14px 16px}.mdp-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.mdp-tile{padding:10px 8px;border-radius:14px;background:var(--surface-2);text-align:center}.mdp-tile b{display:block;font-size:1.15rem}.mdp-tile span{color:var(--muted);font-size:.74rem}.mdp-tile.is-bad b{color:var(--danger)}.mdp-actions{display:flex;flex-wrap:wrap;gap:8px}.mdp-act{display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border:1.5px solid var(--ink);border-radius:var(--pill);color:var(--ink);font-size:.85rem;font-weight:700;text-decoration:none}.mdp-act:hover{background:var(--ink);color:var(--bg)}.mdp-block{gap:4px}.mdp-block,.mdp-mini{display:flex;flex-direction:column}.mdp-mini{gap:5px;margin:0;padding:0;list-style:none;font-size:.88rem}.mdp-muted{color:var(--muted);font-size:.8rem;font-weight:500}.mdp-clamp{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4}.mdp-nav{position:-webkit-sticky;position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 16px;border-top:1px solid var(--line);background:var(--surface)}.mdp-nav-btn{display:inline-flex;align-items:center;gap:6px;max-width:42%;padding:6px 10px;border:1.5px solid var(--line);border-radius:var(--pill);background:none;color:var(--ink);font:inherit;font-size:.8rem;font-weight:700;cursor:pointer}.mdp-nav-btn span{overflow:hidden;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.mdp-nav-btn:disabled{opacity:.35;cursor:default}.mdp-nav-pos{color:var(--muted);font-size:.8rem;font-weight:600;white-space:nowrap}@media (max-width:1080px){.mpl-root{grid-template-columns:minmax(0,1fr)}.mpl-panel{position:fixed;inset:0;z-index:60;display:none;max-height:none;border:0;border-radius:0}.mpl-panel.is-open{display:block}.mdp-back span{display:inline}}@media (max-width:560px){.mpl-attn{flex:1 1 100%}.mpl-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-right:-16px;padding-right:16px}.mpl-chips::-webkit-scrollbar{display:none}.mpl-chips .ind-chip{flex:none}.mpl-row{grid-template-columns:40px minmax(0,1fr)}.mpl-row .mpl-sig{grid-column:2;justify-content:flex-start}.mdp-sticky{padding:12px 14px 0}.mdp-body{padding:12px 14px}.mdp-head-text h2{font-size:1.05rem}.mdp-nav{padding:10px 14px calc(10px + env(safe-area-inset-bottom))}}.mdp-tabs{gap:2px}.mdp-tabs .sp-tab{flex:1 1 auto;justify-content:center;padding:10px 8px;font-size:.88rem}body.mpl-sheet-open .tc-fab{display:none}.frm-bulk{display:flex;gap:8px 12px;margin:0 0 12px;padding:10px 14px;border:1px dashed var(--line-strong);border-radius:14px;background:var(--surface);font-size:.88rem}.frm-bulk,.frm-bulk-ask{flex-wrap:wrap;align-items:center}.frm-bulk-ask{display:inline-flex;gap:8px;color:var(--ink)}.pl-school{padding:1px 8px;border-radius:var(--pill);background:var(--sky,#e3f1fb);color:var(--brand-blue,#1f6fa8);font-size:.72rem;font-weight:700}.ob{flex-direction:column;gap:12px}.ob,.ob-top{display:flex}.ob-top{flex-wrap:wrap;align-items:center;gap:8px 16px}.ob-layout{display:grid;grid-template-columns:260px 1fr;grid-gap:14px;gap:14px;align-items:start}.ob-pool{position:-webkit-sticky;position:sticky;top:76px;display:flex;flex-direction:column;gap:6px;max-height:calc(100vh - 100px);overflow-y:auto;padding:12px;border:1.5px dashed var(--line-strong);border-radius:16px;background:var(--surface)}.ob-pool.is-over{border-color:var(--coral)}.ob-h{margin:0 0 4px;font-size:.9rem}.ob-nf{margin-top:8px;color:var(--muted);font-size:.82rem}.ob-nf summary{cursor:pointer;margin-bottom:6px}.ob-grid-wrap{overflow-x:auto}.ob-grid{display:grid;grid-template-columns:92px repeat(5,minmax(150px,1fr));grid-gap:6px;gap:6px;min-width:860px}.ob-row{display:contents}.ob-dayh{padding:6px 8px;font-weight:700;font-size:.86rem}.ob-timeh{padding:10px 6px;color:var(--muted);font-size:.8rem;font-weight:700}.ob-cell{display:flex;flex-direction:column;gap:6px;min-height:96px;padding:8px;border:1px solid var(--line);border-radius:14px;background:var(--bg-soft,var(--surface))}.ob-cell.is-target{cursor:pointer;border-style:dashed}.ob-cell.is-over{border-color:var(--coral);background:var(--surface)}.ob-cell-l{display:none}.ob-cell-l,.ob-count{color:var(--muted);font-size:.72rem}.ob-chip{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);cursor:-webkit-grab;cursor:grab}.ob-chip:hover{border-color:var(--line-strong)}.ob-chip.is-picked{border-color:var(--ink);box-shadow:0 0 0 2px var(--ink) inset}.ob-chip.is-busy{opacity:.5}.ob-chip-body{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.ob-chip-body b{font-size:.84rem;line-height:1.25}.ob-chip-body small{color:var(--muted);font-size:.74rem}.ob-chip-acts{display:flex;flex-basis:100%;gap:12px;font-size:.78rem}.ob-dot{flex:none;width:8px;height:8px;margin-top:6px;border-radius:50%;background:var(--lvl-ac,var(--line-strong))}@media (max-width:760px){.ob-layout{grid-template-columns:1fr}.ob-pool{position:static;max-height:none}.ob-grid{grid-template-columns:1fr;min-width:0}.ob-corner,.ob-dayh,.ob-timeh{display:none}.ob-cell-l{display:block}.ob-cell{min-height:0}}.oc{display:flex;flex-direction:column;gap:14px;max-width:900px}.oc-slot{padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.oc-h{margin:0 0 10px;font-size:.95rem}.oc-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:10px;gap:10px}.oc-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:12px;border:1px solid var(--line);border-radius:14px}.oc-card.is-ask{border-color:var(--ink)}.oc-card small{color:var(--muted)}.oc-ask{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.86rem}.sp-people{display:flex;flex-direction:column;margin:10px 0 0;padding:0;list-style:none}.sp-person{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 12px;padding:10px 0;border-bottom:1px solid var(--line)}.sp-person.is-blocked .sp-person-main b{color:var(--muted);text-decoration:line-through}.sp-person-main{display:flex;flex-direction:column;gap:2px;min-width:0}.sp-person-main small{color:var(--muted)}.sp-person-acts{font-size:.86rem}.sp-bar,.sp-person-acts{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.sp-bar{margin-top:10px}.sp-bar input{flex:1 1 220px;min-width:0}.sp-person.is-editing{display:block}.sp-form{display:flex;flex-direction:column;gap:10px;padding:12px;margin:8px 0;border:1.5px solid var(--line);border-radius:14px;background:var(--surface-2,var(--surface))}.sp-form-row{display:flex;flex-wrap:wrap;gap:10px}.sp-form-row label{flex:1 1 220px;min-width:0;display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:var(--muted)}.sp-form-row input{width:100%;box-sizing:border-box}.sp-form .adm-hint{margin:0}.sp-access{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.9rem}.sp-access label{display:inline-flex;align-items:center;gap:6px;min-height:32px;cursor:pointer}.ti-plan{display:flex;flex-direction:column;gap:10px}.ti-plan h4{margin:6px 0 0}.ti-pairs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.ti-pairs li{padding:8px 10px;border:1.5px solid var(--line);border-radius:12px;font-size:.88rem;overflow-wrap:anywhere}.ti-pairs li.is-warn{border-color:#e0a23a}.ti-pairs label{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.ti-pairs input{margin-top:3px}.sp-roles{gap:8px}.sp-roles,.sp-roles>label{display:flex;flex-direction:column}.sp-roles>label{gap:4px;font-size:.85rem;color:var(--muted);max-width:260px}.sp-roles-set{border:0;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px;min-width:0}.sp-roles-set legend{font-size:.85rem;color:var(--muted);padding:0;margin-bottom:4px}.sp-role-chip{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 10px;border:1.5px solid var(--line);border-radius:999px;font-size:.85rem;cursor:pointer}.sp-role-chip:has(input:checked){border-color:var(--accent,currentColor);background:var(--surface);font-weight:600}.sp-roles-set:disabled .sp-role-chip{opacity:.6;cursor:default}.sp-form-acts{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}.sp-remove{margin-left:auto;color:var(--danger,#c0392b)}@media (max-width:560px){.sp-bar .btn{flex:1 1 100%}.sp-remove{margin-left:0}}.wk-card.is-ik-teacher{border-color:var(--danger);background:var(--danger-soft)}.wk-card.is-ik-curator{border-color:var(--warn-line);background:var(--warn-soft)}.wk-card.is-ik-curator .wk-card-flag{color:var(--warn-ink)}.wk-card.is-ik-avail{border-color:#e6a05a;background:color-mix(in srgb,#e6a05a 14%,var(--surface))}.wk-card.is-ik-avail .wk-card-flag{color:#9a5b1c}.wk-card.is-dim{opacity:.22;filter:grayscale(.5)}.bld-person-link{cursor:pointer}.bld-person-link:hover{color:var(--coral)}.bld-group{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px}.bld-chip{padding:5px 12px;border:1.5px solid var(--line-strong);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.78rem;font-weight:700;cursor:pointer}.bld-chip.is-teacher{border-color:var(--danger);color:var(--danger-ink);background:var(--danger-soft)}.bld-chip.is-curator{border-color:var(--warn-line);color:var(--warn-ink);background:var(--warn-soft)}.bld-chip.is-avail{border-color:#e6a05a;color:#9a5b1c;background:color-mix(in srgb,#e6a05a 14%,var(--surface))}.bld-chip.is-on{box-shadow:0 0 0 2px var(--ink) inset}.bld-ok{color:var(--ok);font-size:.8rem;font-weight:700}.bld-band{position:absolute;left:0;right:0;z-index:3;display:flex;align-items:flex-end;justify-content:flex-end;padding:4px 8px;border:2px dashed transparent;border-radius:10px;pointer-events:none;font-size:.7rem;font-weight:700;line-height:1.2}.bld-band span{background:color-mix(in srgb,var(--surface) 80%,transparent);padding:1px 6px;border-radius:6px}.bld-band.is-ok{background:color-mix(in srgb,var(--ok) 16%,transparent);border-color:var(--ok);color:var(--ok)}.bld-band.is-warn{background:color-mix(in srgb,#e6a05a 18%,transparent);border-color:#e6a05a;color:#9a5b1c}.bld-band.is-cbad{background:color-mix(in srgb,#f0c674 24%,transparent);border-color:var(--warn-line);color:var(--warn-ink)}.bld-band.is-bad{background:color-mix(in srgb,var(--danger) 14%,transparent);border-color:var(--danger);color:var(--danger-ink)}.wk-card{z-index:2}.wk.is-fit{display:grid;grid-template-columns:repeat(var(--wk-days,5),minmax(0,1fr));grid-gap:8px;gap:8px;align-items:start}.wk.is-fit .wk-day-body{grid-template-columns:26px 1fr 1fr;gap:2px;padding:4px;overflow:visible}.wk.is-fit .wk-day-body>*{min-width:0}.wk.is-fit .wk-ruler{min-width:26px!important}.wk.is-fit .wk-tick{right:2px;font-size:.56rem}.wk.is-fit .wk-day-banner{padding:5px 8px;font-size:.8rem}.wk.is-fit .wk-space-head{padding:4px 0;font-size:.6rem;line-height:1.3;letter-spacing:0}.wk.is-fit .wk-space-head.is-overflow{box-shadow:inset 0 0 0 2px #fff,0 0 0 2px #c0392b}.wk.is-fit .wk-lane-heads{display:none}.wk.is-fit .wk-track{margin-top:0}.wk.is-fit .wk-card{padding:2px 3px;font-size:.6rem;line-height:1.15;border-radius:4px}.wk.is-fit .rg-mcard-tags,.wk.is-fit .wk-card-time,.wk.is-fit .wk-card-where{display:none}.wk.is-fit .wk-card-title{-webkit-line-clamp:3;font-size:.62rem}.wk.is-fit .wk-card-people{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.54rem}.wk.is-fit .wk-card-meta{font-size:.56rem}.wk.is-fit .wk-card.is-short .wk-card-flag,.wk.is-fit .wk-card.is-short .wk-card-meta{display:block}.wk.is-fit .wk-card-flag{font-size:.54rem}.bld-layout{display:flex;gap:14px;align-items:flex-start}.bld-layout>.wk{flex:1 1;min-width:0}.bld-pool{position:-webkit-sticky;position:sticky;top:76px;display:flex;flex:none;flex-direction:column;gap:8px;width:250px;max-height:calc(100vh - 100px);padding:12px;border:1.5px dashed var(--line-strong);border-radius:16px;background:var(--surface)}.bld-pool-head{display:flex;align-items:center;justify-content:space-between}.bld-pool-list{gap:6px;overflow-y:auto}.bld-pool-card,.bld-pool-list{display:flex;flex-direction:column}.bld-pool-card{gap:3px;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--surface);cursor:-webkit-grab;cursor:grab}.bld-pool-card:hover{border-color:var(--line-strong)}.bld-pool-card b{font-size:.82rem;line-height:1.25}.bld-pool-card small{color:var(--muted);font-size:.72rem}.bld-pool-acts{display:flex;align-items:center;justify-content:space-between;gap:8px}.bld-pool-block{font-style:italic}@media (max-width:900px){.bld-layout{flex-direction:column}.bld-pool{position:static;width:100%;max-height:none}}.bld-drawer{position:fixed;top:64px;right:0;bottom:0;z-index:70;display:flex;flex-direction:column;gap:10px;width:min(380px,100vw);padding:16px;overflow-y:auto;border-left:1px solid var(--line-strong);background:var(--surface);box-shadow:-8px 0 24px rgba(0,0,0,.12)}.bld-drawer-head{display:flex;align-items:center;justify-content:space-between}.bld-suggest{display:flex;flex-wrap:wrap;gap:6px}.bld-sug{padding:4px 10px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.8rem;cursor:pointer}.bld-sug.is-on{border-color:var(--ink);background:var(--ink);color:var(--surface)}.bld-person{margin:4px 0 0;font-size:1.05rem}.bld-free{gap:10px}.bld-free,.bld-free-day{display:flex;flex-direction:column}.bld-free-day{gap:4px}.bld-free-cell{display:flex;gap:10px;align-items:flex-start;padding:7px 10px;border:1px solid var(--line);border-radius:10px;font-size:.8rem}.bld-free-t{flex:none;width:92px;color:var(--muted);font-weight:700}.bld-free-s{display:flex;flex-direction:column;gap:2px;min-width:0}.bld-free-cell.is-free{background:color-mix(in srgb,var(--ok) 12%,var(--surface));border-color:var(--ok);color:var(--ok);font-weight:700}.bld-free-cell.is-inconv{background:var(--warn-soft);border-color:var(--warn-line);color:var(--warn-ink);font-weight:700}.bld-free-cell.is-na{background:repeating-linear-gradient(135deg,var(--surface),var(--surface) 6px,color-mix(in srgb,var(--line) 60%,var(--surface)) 6px,color-mix(in srgb,var(--line) 60%,var(--surface)) 12px);color:var(--muted)}.bld-free-cell.is-busy{background:var(--danger-soft);border-color:var(--danger);color:var(--danger-ink)}.bld-free-b.is-curator{color:var(--warn-ink)}.bld-hist{margin:0;padding:0;list-style:none}.bld-hist,.bld-hist li{display:flex;flex-direction:column}.bld-hist li{gap:2px;padding:9px 0;border-bottom:1px solid var(--line);font-size:.82rem}.bld-hist li.is-undone{opacity:.6}.bld-hist-t{color:var(--muted);font-size:.72rem}.bld-views{position:relative;display:inline-block}.bld-pop{position:absolute;top:calc(100% + 6px);left:0;z-index:60;display:flex;flex-direction:column;gap:8px;width:300px;padding:12px;border:1px solid var(--line-strong);border-radius:14px;background:var(--surface);box-shadow:0 8px 24px rgba(0,0,0,.15)}.bld-pop-h{margin:0;font-weight:700;font-size:.85rem}.bld-view{display:flex;align-items:center;justify-content:space-between;gap:8px}.bld-view-name{display:flex;flex-direction:column;flex:1 1;padding:6px 8px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.bld-view-name small{color:var(--muted)}.bld-view-new{display:flex;gap:6px}.bld-view-new input{flex:1 1;min-width:0}.bld-dialog-bg{position:fixed;inset:0;z-index:90;display:grid;place-items:center;background:rgba(0,0,0,.4)}.bld-dialog{width:min(420px,92vw);padding:20px;border-radius:18px;background:var(--surface)}.bld-dialog h3{margin:0 0 8px}.bld-dialog-btns{display:flex;align-items:center;gap:14px;margin-top:14px}.portal-sched-board .rg-bar{position:-webkit-sticky;position:sticky;top:calc(var(--imp-bar-h, 0px) + 53px);z-index:20;gap:8px 10px;margin:0 -8px 12px;padding:10px 8px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg,#faf8f4) 94%,transparent);-webkit-backdrop-filter:saturate(160%) blur(8px);backdrop-filter:saturate(160%) blur(8px)}.portal-sched-board .rg-bar .rg-btn{padding:7px 13px;font-size:.82rem}.portal-sched-board .rg-bar .bld-group{padding-right:4px;border-right:1px solid var(--line);margin-right:2px}.portal-sched-board .rg-tools{margin-left:auto}.bld-pool{top:calc(var(--imp-bar-h, 0px) + 120px);max-height:calc(100vh - 150px)}.portal-sched-board .wk-day{border-radius:18px}.portal-sched-board .wk-day-banner{font-weight:800;letter-spacing:.01em}.wk-card.is-ik-avail .wk-card-flag,.wk-card.is-ik-curator .wk-card-flag,.wk-card.is-ik-teacher .wk-card-flag{font-size:.66rem}@media (max-width:760px){.portal-sched-board .rg-bar{position:static;margin:0 0 12px;padding:0;border:0;-webkit-backdrop-filter:none;backdrop-filter:none;background:none}}.pub-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0 0 12px;padding:10px 14px;border:1.5px dashed var(--line-strong);border-radius:14px;background:var(--surface);font-size:.88rem}.pub-bar.is-live{border-style:solid;border-color:var(--ok);background:var(--ok-soft)}.pub-state small{color:var(--muted)}.pub-btn{padding:8px 16px}.pub-ask{flex-wrap:wrap;gap:8px 12px}.bld-cycle,.pub-ask{display:inline-flex;align-items:center}.bld-cycle{gap:8px;padding:4px 6px 4px 14px;border:1.5px solid var(--ink);border-radius:var(--pill);background:var(--surface);font-size:.82rem;font-weight:800}.bld-cycle select{padding:4px 8px;border:0;background:transparent;color:var(--ink);font:inherit;font-weight:700;cursor:pointer}.spf-wa-wrap{position:relative;display:inline-flex;flex-direction:column;align-items:flex-start}.spf-wa{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;border:1.5px solid #1fa855;border-radius:var(--pill);background:var(--surface);color:#1fa855;font:inherit;font-size:.85rem;font-weight:700;cursor:pointer;transition:background .15s,color .15s}.spf-wa:hover{background:#1fa855;color:#fff}.spf-wa-msg{top:calc(100% + 4px);padding:3px 8px;border-radius:var(--pill);box-shadow:var(--shadow-sm);color:var(--danger);font-size:.74rem;white-space:nowrap}.spf-wa-menu,.spf-wa-msg{position:absolute;right:0;z-index:30;background:var(--surface)}.spf-wa-menu{top:calc(100% + 6px);display:flex;flex-direction:column;gap:6px;min-width:190px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.15);font-size:.84rem}.spf-wa-menu a{color:var(--ink);font-weight:700}.spf-wa-link{color:#1fa855;font-weight:700}.spf-via{display:block;margin-top:2px;color:var(--muted);font-size:.72rem}.spf-head-acts{display:flex;flex-wrap:wrap;align-items:center;gap:8px}:root[data-theme=dark] .spf-wa{background:transparent}@media (max-width:760px){.spf-wa-wrap.is-tile{top:6px;right:6px}}.bld-hist-acts{display:flex;flex-wrap:wrap;gap:4px 12px}.wk-card.is-short .wk-card-flag,.wk-card.is-short .wk-card-meta,.wk-card.is-short .wk-card-where+.wk-card-where{display:none}.spf-top{gap:10px;margin-bottom:16px}.spf-q,.spf-top{display:flex;align-items:center}.spf-q{margin:0;text-transform:none;letter-spacing:0;flex:1 1 220px;gap:8px;min-width:0;padding:0 16px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--input-bg);color:var(--muted);cursor:text}.spf-q:focus-within{border-color:var(--ink)}.spf-q input{flex:1 1;min-width:0;padding:10px 0;border:0;background:none;color:var(--ink);font:inherit;font-size:.92rem;outline:none}.spf-seg{display:inline-flex;flex:none;align-items:center;gap:2px;padding:3px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface)}.spf-seg button,.spf-seg-other{position:relative;display:inline-flex;align-items:center;gap:5px;min-height:34px;padding:0 12px;border:0;border-radius:var(--pill);background:none;color:var(--muted);font:inherit;font-size:.88rem;font-weight:700;white-space:nowrap;cursor:pointer}.spf-seg button:hover,.spf-seg-other:hover{color:var(--ink)}.spf-seg .is-on,.spf-seg .is-on:hover{background:var(--ink);color:var(--surface)}.spf-seg-n{font-size:.78rem;font-weight:600;opacity:.7}.spf-seg-other{margin:0;padding-right:26px;text-transform:none;letter-spacing:0}.spf-seg-other>span:first-child{max-width:150px;overflow:hidden;text-overflow:ellipsis}.spf-seg-other:after{content:"";position:absolute;right:11px;top:50%;width:6px;height:6px;margin-top:-5px;border-right:2px solid;border-bottom:2px solid;transform:rotate(45deg);opacity:.7}.spf-seg-other select{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer;font-size:16px}.spf-seg-other:focus-within{box-shadow:0 0 0 2px var(--ink)}.spf-viewsw{display:inline-flex;flex:none;padding:3px;border-radius:12px;background:var(--surface-2)}.spf-viewsw button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:34px;border:0;border-radius:9px;background:none;color:var(--muted);cursor:pointer}.spf-viewsw button.is-on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.spf-add{flex:none;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border-radius:50%;font-size:1.1rem}.spf-found{margin:-6px 0 12px;color:var(--muted);font-size:.84rem}.spf-gsec+.spf-gsec{margin-top:8px}.spf-gsec:first-of-type .spf-grp{margin-top:0}.spf-gal{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px}.spf .spf-tile{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;overflow:hidden;text-align:left}.spf-tile-ph{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:4/5;background:var(--surface-2)}.spf-tile-ph.is-sky{background:var(--sky-tint);color:var(--empty-ink)}.spf-tile-ph.is-coral{background:var(--icon-tint);color:var(--coral-600)}.spf-tile-ph.is-ok{background:var(--ok-soft);color:var(--ok)}.spf-tile-ph.is-gray{background:var(--surface-2);color:var(--muted)}.spf-tile-ini{font-family:var(--font-display);font-size:2.2rem;font-weight:600;letter-spacing:.02em}.spf-tile-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 25%;transition:transform .25s}.spf .spf-tile:hover img{transform:scale(1.03)}.spf-tile-t{display:flex;flex-direction:column;gap:2px;min-width:0;padding:10px 12px 12px}.spf-tile-t b{overflow:hidden;color:var(--ink);font-size:.93rem;line-height:1.25;text-overflow:ellipsis}.spf-tile-t small{color:var(--muted);font-size:.8rem;font-weight:600}@media (max-width:900px){.spf-top{flex-wrap:wrap}.spf-seg{order:3;flex:1 1 100%;justify-content:space-between}.spf-seg-other{margin-left:auto}}@media (max-width:640px){.spf-q{flex:1 1}.spf-q input{font-size:16px}.spf-viewsw{display:none}.spf-seg button{padding:0 10px}.spf-seg-other>span:first-child{max-width:96px}.spf-gal{grid-template-columns:minmax(0,1fr);gap:6px}.spf .spf-tile{flex-direction:row;align-items:center;gap:12px;padding:8px 12px}.spf-tile-ph{flex:none;width:48px;aspect-ratio:1;border-radius:50%;overflow:hidden}.spf-tile-ini{font-family:var(--font-sans);font-size:.95rem;font-weight:800}.spf-tile-t{padding:0}.spf .spf-tile:hover img{transform:none}.spf-head{flex-wrap:wrap}.spf-head-acts{order:3;flex:1 1 100%;flex-wrap:nowrap;margin-left:0}.spf-head-acts>.spf-wa-wrap{flex:1 1}.spf-head-acts .spf-wa{width:100%;min-height:40px}}.pep-field{align-items:flex-start;margin:14px 0 0}.pep-field,.pep-field>span{text-transform:none;letter-spacing:0}.pep-field>span{color:var(--muted);font-size:.82rem;font-weight:700}.pep-field .pill-select{width:auto;min-width:220px;max-width:100%}.cm-foot-sec{display:contents}.cm-more{display:none}@media (max-width:560px){.cm-foot-sec{display:none}.cm-more{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.cm-more .btn{flex:1 1 auto;text-align:center}}.as-switches{display:flex;flex-wrap:wrap;align-items:flex-start;gap:0 10px}.as-switches:empty{display:none}.cp-par-head{align-items:stretch}.cp-par-head>.cp-lesson-num{padding-top:18px}.cp-par-cards{flex:1 1;min-width:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:12px;gap:12px}.cp-par-card{display:flex;border:1px solid var(--line);border-radius:18px;background:var(--surface);transition:border-color .15s,box-shadow .15s}.cp-par-card:hover{border-color:var(--line-strong)}.cp-par-card.is-open{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.cp-par-card .cp-lesson-main{align-items:flex-start;padding:16px 18px}.cp-par-card .cp-lesson-title{font-size:1.08rem}.cp-par-klass{display:table;margin-bottom:8px;padding:3px 10px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-family:var(--font-sans);font-size:.75rem;font-weight:700}.cp-par.is-open>.cp-par-head{padding-bottom:14px}@media (max-width:640px){.cp-par-cards{grid-template-columns:1fr;gap:8px}.cp-par-head>.cp-lesson-num{padding-top:16px}.cp-par-card .cp-lesson-main{padding:14px}}.cp-headwrap.is-cw{grid-template-columns:minmax(0,1fr) 320px;gap:40px}.cp-headwrap.is-cw .page-head h1{font-size:clamp(2rem,4.2vw,2.9rem);line-height:1.05}.cp-headwrap.is-cw .cp-lead{margin:14px 0 0;max-width:640px}.cp-headwrap.is-cw .cp-about{margin-top:18px;max-width:680px}.cwh-card{padding:18px 20px;border:1.5px solid var(--line);border-radius:22px;background:var(--surface)}.cwh-card-h{margin:0;color:var(--ink);font-family:var(--font-display);font-size:1rem;font-weight:800}.cwh-card-sub{margin:4px 0 0;color:var(--muted);font-size:.86rem;line-height:1.45}.cwh-progress{display:flex;flex-direction:column;gap:8px}.cwh-progress-top{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.cwh-pct{color:var(--ink);font-family:var(--font-display);font-size:1.6rem;font-weight:800;line-height:1}.cwh-count{color:var(--muted);font-size:.82rem;font-weight:600}.cwh-go{display:flex;flex-direction:column;align-items:center;gap:1px;width:100%;margin-top:6px;text-align:center;text-decoration:none}.cwh-go-l{font-size:.95rem}.cwh-go-t{max-width:100%;overflow:hidden;font-size:.78rem;font-weight:600;opacity:.9;text-overflow:ellipsis;white-space:nowrap}.cwh-start .cwh-go{margin-top:14px}.cwh-help{display:flex;flex-direction:column;gap:12px}.cwh-person{display:flex;gap:12px;align-items:flex-start}.cwh-ava{flex:0 0 auto;width:42px;height:42px;border-radius:50%;object-fit:cover;background:var(--surface-2)}.cwh-person-text{display:flex;flex-direction:column;gap:2px;min-width:0}.cwh-person-name{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px}.cwh-name-link,.cwh-person-name b{color:var(--ink);font-size:.95rem;font-weight:700}.cwh-name-link{text-decoration:underline;-webkit-text-decoration-color:var(--coral);text-decoration-color:var(--coral);text-decoration-thickness:1.5px;text-underline-offset:3px}.cwh-name-link:hover{color:var(--coral-600)}.cwh-person-name em{color:var(--muted);font-size:.78rem;font-style:normal;font-weight:700}.cwh-bio{display:-webkit-box;padding:0;overflow:hidden;border:0;background:none;cursor:pointer;text-align:left;color:var(--muted);font-family:var(--font-sans);font-size:.82rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.cwh-bio.is-full{display:block}.cwh-ask{align-self:flex-start;margin-top:2px;color:var(--ink);font-size:.85rem;font-weight:700;text-decoration:underline;-webkit-text-decoration-color:var(--coral);text-decoration-color:var(--coral);text-underline-offset:3px}@media (max-width:860px){.cp-headwrap.is-cw{gap:0}.cp-headwrap.is-cw .cp-headwrap-main>.cp-headrow,.cp-headwrap.is-cw .cp-headwrap-main>.cp-lead{order:1}.cp-headwrap.is-cw .cp-headgrid-aside{order:2;margin-top:18px}.cp-headwrap.is-cw .cp-headwrap-main>.cp-about{order:3;margin-top:20px}.cp-headwrap.is-cw .cp-lead{margin-top:10px;font-size:1.02rem}}.cwh-progress .cp-progress-bar{flex:none;order:0;width:100%;margin:4px 0 0}.cm.sp-ans-modal{width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow-y:auto}.sp-ans-modal .cp-fb-h{margin:0 0 14px;text-align:left}.cw-profile.is-embedded{margin-top:10px;padding:14px 0 0;border:0;border-top:1px solid var(--line);border-radius:0;background:none}.cw-profile.is-embedded .cw-head{margin:0 0 10px}.cw-profile.is-embedded .cw-title{font-size:.95rem}.cwh-help.is-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px 20px;gap:12px 20px;margin-top:18px}.cwh-help.is-row>.cwh-card-h{grid-column:1/-1}.cwh-help.is-row.no-bio{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 20px}.cwh-help.is-row.no-bio .cwh-person{flex-direction:column;gap:10px}.cwh-help.is-row.no-bio .cwh-ask{margin-top:6px}.cwh-help.no-bio .cwh-person{align-items:flex-start}.cwh-help.no-bio .cwh-person-name{flex-direction:column;gap:0}.cwh-ask{white-space:nowrap}.cp-headwrap.is-cw .cp-headwrap-main>.cwh-help{margin-top:18px}@media (max-width:860px){.cw-profile.is-embedded{padding-top:12px}.cw-profile.is-embedded .cw-mobile>summary{padding-left:0;padding-right:0}}.cwh-roster{display:flex;flex-direction:column;gap:10px}.cwh-new{padding:3px 10px;border-radius:var(--pill);background:color-mix(in srgb,var(--coral) 14%,var(--surface));color:var(--coral-600);font-size:.78rem;font-weight:800;white-space:nowrap}.cwh-stats{display:flex;flex-direction:column;gap:6px;margin:2px 0 0;padding:0;list-style:none}.cwh-stats li{display:flex;align-items:baseline;gap:8px;color:var(--text);font-size:.88rem}.cwh-stats b{min-width:28px;color:var(--ink);font-family:var(--font-display);font-size:1.1rem}.cwh-faces{display:flex;align-items:center;padding-left:6px}.cwh-faces em,.cwh-faces i,.cwh-faces img{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;margin-left:-6px;border:2px solid var(--surface);border-radius:50%;background:var(--surface-2);color:var(--muted);font-size:.72rem;font-style:normal;font-weight:800;object-fit:cover}.cwh-full{position:fixed;inset:0;z-index:200;display:flex;flex-direction:column;background:var(--bg)}.cwh-full-head{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1180px;width:100%;margin:0 auto;padding:18px 24px 12px}.cwh-full-head h2{margin:0;color:var(--ink);font-family:var(--font-display);font-size:1.4rem;font-weight:800}.cwh-full-x{position:static}.cwh-full-body{flex:1 1;overflow-y:auto;max-width:1180px;width:100%;margin:0 auto;padding:0 24px 32px}.cwh-inline-link{padding:0;border:0;background:none;color:var(--ink);font:inherit;font-weight:700;text-decoration:underline;-webkit-text-decoration-color:var(--coral);text-decoration-color:var(--coral);text-underline-offset:3px;cursor:pointer}.cwh-inline-link:hover{color:var(--coral-600)}.cp-headwrap.is-cw{margin-bottom:36px}.cp-headwrap.is-cw .cp-about p:last-child{margin-bottom:0}.cp-headwrap.is-cw .cp-headwrap-main>.cwh-help{margin-top:22px}.cp-headwrap.is-cw+.sp,.cp-headwrap.is-cw~.sp,.cp-headwrap.is-cw~.sp .sp-tabs,.cp-headwrap.is-cw~.sp>.sp-tabs:first-child{margin-top:0}@media (max-width:860px){.cp-headwrap.is-cw{margin-bottom:28px}.cp-headwrap.is-cw .cp-headgrid-aside,.cp-headwrap.is-cw .cp-headwrap-main>.cp-about{margin-top:20px}.cwh-full-head{padding:14px 16px 10px}.cwh-full-head h2{font-size:1.15rem}.cwh-full-body{padding:0 16px 24px}.cp-headwrap.is-cw .cp-headwrap-main>.cwh-help{order:4;width:100%;margin-top:20px}.cwh-help.is-row{grid-template-columns:1fr;padding:14px 16px;gap:12px}.cwh-help .cwh-bio{display:none}.cwh-help .cwh-person{align-items:center}.cwh-help .cwh-ava{width:40px;height:40px}.cwh-help .cwh-person-text{flex:1 1;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:2px 10px}.cwh-help .cwh-person-name{flex-direction:column;flex-wrap:nowrap;gap:0}.cwh-help .cwh-name-link,.cwh-help .cwh-person-name b{white-space:nowrap}.cwh-help .cwh-ask{align-self:center;margin:0;font-size:.82rem;white-space:nowrap}.cwh-help.is-row.no-bio{grid-template-columns:1fr;gap:16px}.cwh-help.is-row.no-bio .cwh-person{flex-direction:row;align-items:flex-start;gap:12px}.cwh-help.is-row.no-bio .cwh-person-text{flex-direction:column;flex-wrap:nowrap;align-items:flex-start;gap:2px}.cwh-help.is-row.no-bio .cwh-ask{align-self:flex-start;margin-top:4px}.sp-filter{flex-wrap:nowrap;gap:8px}.sp-filter .frm-filterbar{flex:1 1 auto}.sp-klass.pill-select{padding:5px 28px 5px 12px;background-position:right 10px center;font-size:.8rem}}.cwhub-tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px;margin:4px 0 22px}.cwhub-tile{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:14px 16px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface);color:var(--muted);font-family:var(--font-sans);font-size:.84rem;text-align:left;cursor:pointer}.cwhub-tile:hover{border-color:var(--line-strong)}.cwhub-tile b{color:var(--ink);font-family:var(--font-display);font-size:1.6rem;line-height:1.1}.cwhub-tile.is-hot{border-color:var(--coral);background:color-mix(in srgb,var(--coral) 8%,var(--surface))}.cwhub-tile.is-hot b{color:var(--coral-600)}.cwhub-tabs{margin-bottom:18px}.cwhub-seg{margin-bottom:14px}.cwhub-sec .as-answers,.cwhub-st-ans{display:flex;flex-direction:column;gap:8px}.cwhub-st-ans{margin-top:12px}.cwhub-fb{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:10px;gap:10px}.cwhub-fb-card{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface)}.cwhub-fb-card.is-request{border-color:color-mix(in srgb,var(--coral) 45%,var(--line))}.cwhub-fb-card header{display:flex;align-items:center;gap:10px}.cwhub-fb-who{display:flex;flex:1 1;flex-direction:column;min-width:0}.cwhub-fb-who strong{color:var(--ink);font-size:.92rem}.cwhub-fb-who span{color:var(--muted);font-size:.78rem}.cwhub-kind{padding:3px 10px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.75rem;font-weight:800;white-space:nowrap}.cwhub-kind.is-request{background:color-mix(in srgb,var(--coral) 14%,var(--surface));color:var(--coral-600)}.cwhub-fb-detail{margin:0;color:var(--ink);font-size:.85rem;font-weight:700}.cwhub-fb-body{margin:0;color:var(--text);font-size:.92rem;line-height:1.55;white-space:pre-wrap}@media (max-width:760px){.cwhub-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:18px}.cwhub-tile{padding:10px 12px;font-size:.76rem;line-height:1.3}.cwhub-tile b{font-size:1.35rem}.cwhub-fb{grid-template-columns:1fr}}.af-card.af-joined-intro{margin-bottom:0;padding-bottom:6px;border-bottom:0;border-radius:22px 22px 0 0}.af-card.af-joined-intro .af-lead:last-child,.af-card.af-joined-intro .fr-hero-lead{margin-bottom:18px}.af-joined-intro+.af-card{position:relative;border-top:0;border-radius:0 0 22px 22px}.af-joined-intro+.af-card:before{content:"";position:absolute;top:0;left:26px;right:26px;border-top:1px solid var(--line)}.af .af-row .sp-link{display:inline-flex;align-items:center;padding:6px 12px;border:1.5px solid var(--line);border-radius:var(--pill);color:var(--muted);font-family:var(--font-sans);font-size:.82rem;font-weight:700;line-height:1.4;text-decoration:none}.af .af-row .sp-link:hover{border-color:var(--line-strong);color:var(--ink)}.af .af-row .fr-reroll{line-height:1.4}.af .af-card>.af-row:last-child{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.bld-pool-card.is-fill-low,.wk-card.is-fill-low:not(.is-violation){background:#fde4e4!important}.bld-pool-card.is-fill-few,.wk-card.is-fill-few:not(.is-violation){background:#fdf3cf!important}:root[data-theme=dark] .bld-pool-card.is-fill-low,:root[data-theme=dark] .wk-card.is-fill-low:not(.is-violation){background:#3a2226!important}:root[data-theme=dark] .bld-pool-card.is-fill-few,:root[data-theme=dark] .wk-card.is-fill-few:not(.is-violation){background:#39331c!important}.ob-auto{padding:8px;margin-bottom:10px;border:1px dashed var(--line);border-radius:10px}.ob-auto-note{margin:2px 0 6px;font-size:.75rem;color:var(--muted)}.ob-auto-badge{display:inline-block;margin-left:4px;padding:0 6px;border-radius:999px;background:var(--sky,#e4f1fb);font-size:.65rem;font-weight:700}.cws-task-open{padding:6px 0;border:0;background:none;font:inherit;font-size:.9rem;text-align:left;text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:3px;cursor:pointer}.cws-task-open:hover{-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.cws-person-open{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}.cws-person-open:hover{text-decoration:underline;text-underline-offset:3px}.as-prompt-acts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.as-prompt .as-task-link.is-strong{border:0;background:var(--ink);color:var(--surface);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}.as-prompt .as-task-link.is-strong:hover{opacity:.88}.tr-back{position:fixed;inset:0;z-index:220;display:flex;align-items:stretch;justify-content:center;padding:3vh 2vw;background:var(--overlay)}.tr{display:flex;flex-direction:column;width:100%;max-width:1440px;min-height:0;border-radius:26px;background:var(--surface);color:var(--text);overflow:hidden}.tr-head{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line)}.tr-head-main{flex:1 1;min-width:0}.tr-head-main h2{margin:0;font-family:var(--font-sans);font-size:1.2rem;font-weight:800;color:var(--ink);line-height:1.25;overflow-wrap:anywhere}.tr-head-main p{margin:2px 0 0;color:var(--muted);font-size:.85rem}.tr-open{margin:0;white-space:nowrap}.tr-switch{display:none}.tr-cols{display:grid;flex:1 1;grid-template-columns:minmax(0,3fr) minmax(320px,2fr);min-height:0}.tr-col{display:flex;flex-direction:column;gap:10px;min-height:0;padding:16px 20px 24px;overflow-y:auto;overscroll-behavior:contain}.tr-task{border-right:1px solid var(--line)}.tr-ans{background:var(--surface-2)}.tr-ans .as-answer{background:var(--surface)}.tr-note{margin:0;color:var(--muted);font-size:.82rem}.tr-frame{display:block;flex:0 0 auto;width:100%;border:1.5px solid var(--line);border-radius:16px;background:var(--surface)}.tr-frame.is-app{flex:1 1;min-height:70vh}@media (max-width:860px){.tr-back{padding:0}.tr{border-radius:0}.tr-head{padding:12px 16px;flex-wrap:wrap}.tr-head-main{flex-basis:calc(100% - 100px)}.tr-open{order:3}.tr-switch{display:inline-flex;margin:10px 16px 0}.tr-cols{display:block;overflow-y:auto}.tr-col{display:none;padding:12px 16px 24px;overflow:visible}.tr-col.is-on{display:flex}.tr-task{border-right:0}}.bn-hook{margin:18px 0 4px;padding:20px 20px 18px;border-radius:18px;background:var(--surface-2)}.bn-hook-q{max-width:560px;margin:0 auto 22px;color:var(--ink);font-family:var(--font-display);font-size:1.1rem;font-weight:700;line-height:1.45;text-align:center}.bn-scale{position:relative;margin:0 6px 30px}.bn-scale input[type=range]{width:100%;accent-color:var(--coral)}.bn-scale-ticks{position:absolute;inset:100% 0 auto;height:18px}.bn-scale-ticks span{position:absolute;top:4px;color:var(--muted);font-size:.72rem;font-weight:600;white-space:nowrap;transform:translateX(-50%)}.bn-scale-ticks span:first-child{transform:none}.bn-scale-ticks span:last-child{transform:translateX(-100%)}.bn-truth{top:-6px;width:4px;height:34px;border-radius:2px;background:var(--ok)}.bn-truth,.bn-truth:after{position:absolute;transform:translateX(-50%)}.bn-truth:after{content:"насправді";bottom:100%;left:50%;margin-bottom:2px;color:var(--ok);font-size:.72rem;font-weight:800;white-space:nowrap}.bn-scale.is-locked{margin-top:18px}.bn-guess{margin:0;color:var(--text);text-align:center}.bn-guess b{color:var(--ink);font-family:var(--font-display);font-size:1.2rem}.bn-reveal{margin-top:14px;text-align:center}.bn-big{margin:0;color:var(--ok);font-family:var(--font-display);font-size:clamp(1.6rem,6vw,2.2rem);font-weight:800;line-height:1.1}.bn-reveal-t{max-width:560px;margin:8px auto 0;color:var(--text);font-size:.95rem;line-height:1.55}.bn-ladder{margin-top:22px}.bn-ladder-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 14px;margin-bottom:8px}.bn-ladder-head .ph-h3{margin:0}.bn-rung{display:grid;grid-template-columns:150px minmax(0,1fr) 110px;align-items:center;grid-gap:12px;gap:12px;padding:8px 0;border-bottom:1px dashed var(--line)}.bn-rung-n{color:var(--ink);font-weight:800}.bn-rung-n i{display:block;color:var(--muted);font-size:.75rem;font-style:normal;font-weight:600}.bn-rung-bar{height:14px;border-radius:7px;background:var(--seg-bg);overflow:hidden}.bn-rung-bar i{display:block;height:100%;border-radius:7px;background:var(--coral);transition:width .6s ease}.bn-rung-t{color:var(--ink);font-family:var(--font-display);font-size:1rem;text-align:right}.bn-note{margin:8px 0 0;color:var(--muted);font-size:.86rem;line-height:1.5}.bn-date{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:6px;color:var(--ink);font-weight:700}.bn-date input{min-height:44px;padding:8px 14px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit}.bn-life{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:16px}.bn-life-cell{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border-radius:16px;background:var(--surface-2)}.bn-life-cell.is-bday{background:color-mix(in srgb,var(--coral) 10%,var(--surface))}.bn-life-cell span{color:var(--muted);font-size:.8rem;font-weight:700}.bn-life-cell b{color:var(--ink);font-family:var(--font-display);font-size:1.5rem;line-height:1.2;overflow-wrap:anywhere}.bn-life-cell.is-bday b{color:var(--coral-600)}.bn-life-cell em{color:var(--text);font-size:.85rem;font-style:normal;line-height:1.45}.bn-ticker{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bn-life-bar{grid-column:1/-1;height:10px;margin-top:6px;border-radius:5px;background:var(--seg-bg);overflow:hidden}.bn-life-bar i{display:block;height:100%;background:var(--coral)}.bn-life .bn-note{grid-column:1/-1;margin:0}.bn-tower-wrap{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);grid-gap:20px;gap:20px;align-items:stretch;margin-top:14px}.bn-tower{position:relative;min-height:380px;margin:10px 0;border-left:2px solid var(--line-strong)}.bn-tower-col{position:absolute;bottom:0;left:6px;width:30px;border-radius:6px 6px 0 0;background:repeating-linear-gradient(to top,var(--coral) 0 3px,color-mix(in srgb,var(--coral) 70%,var(--surface)) 3px 5px);transition:height .3s ease}.bn-mark{position:absolute;left:46px;display:flex;align-items:center;gap:6px;color:var(--muted);font-size:.8rem;font-weight:600;white-space:nowrap;transform:translateY(50%)}.bn-mark em,.bn-mark i{font-style:normal}.bn-mark em{color:var(--muted);font-size:.72rem;opacity:.8}.bn-mark.is-reached{color:var(--ink);font-weight:800}.bn-tower-ctl{display:flex;flex-direction:column;justify-content:center;gap:4px;padding:18px;border-radius:18px;background:var(--surface-2)}.bn-tower-n{margin:0;color:var(--text);font-size:.95rem}.bn-tower-n b{color:var(--ink);font-size:1.15rem;overflow-wrap:anywhere}.bn-tower-h,.bn-tower-n b{font-family:var(--font-display)}.bn-tower-h{margin:0;color:var(--coral-600);font-size:2rem;font-weight:800;line-height:1.1}.bn-tower-ctl input[type=range]{width:100%;margin-top:10px;accent-color:var(--coral)}.bn-jumps{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.bn-sort{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:8px}.bn-fact{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface)}.bn-fact.is-ok{border-color:var(--ok);background:var(--ok-soft)}.bn-fact.is-err{border-color:color-mix(in srgb,var(--coral) 55%,var(--line))}.bn-fact-q{margin:0;color:var(--ink);font-weight:800;line-height:1.35}.bn-bins{display:flex;flex-wrap:wrap;gap:6px}.bn-bin{min-height:36px;padding:6px 12px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.85rem;font-weight:700;cursor:pointer}.bn-bin:hover:not(:disabled){border-color:var(--ink)}.bn-bin:disabled{cursor:default;opacity:.55}.bn-bin.is-picked{opacity:1;border-color:var(--coral);background:color-mix(in srgb,var(--coral) 14%,var(--surface))}.bn-bin.is-right{opacity:1;border-color:var(--ok);background:var(--ok);color:#fff}.bn-fact-a{margin:0;color:var(--text);font-size:.86rem;line-height:1.5}.bn-plus{margin-bottom:18px;padding:18px;border-radius:18px;background:var(--surface-2)}.bn-plus .ph-h3{margin-top:0}.bn-plus-row{display:flex;flex-wrap:wrap;gap:8px}.bn-plus-in{flex:1 1 220px;min-width:0;min-height:44px;padding:8px 14px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font-family:var(--font-display);font-size:1.05rem}.bn-plus-out{display:flex;flex-direction:column;gap:4px;margin-top:12px}.bn-plus-out span{color:var(--muted);font-size:.8rem;font-weight:700}.bn-plus-out b{color:var(--coral-600);font-family:var(--font-display);font-size:1.3rem;line-height:1.3;overflow-wrap:anywhere}.bn-plus-out em{color:var(--text);font-size:.88rem;font-style:normal}@media (max-width:640px){.bn-hook{padding:16px 14px}.bn-rung{grid-template-columns:minmax(0,1fr) auto;gap:4px 10px}.bn-rung-bar{grid-column:1/-1;grid-row:2}.bn-life,.bn-sort,.bn-tower-wrap{grid-template-columns:1fr}.bn-tower{min-height:340px}.bn-tower-ctl{order:-1}}.bn-restart{padding:0;border:0;background:none;color:var(--ink);font:inherit;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.bn-mt .mt-list button:disabled{opacity:.45;cursor:default}.bn-mt .mt-sheet>.af{margin-top:0}.bn label{color:var(--text);font-size:.95rem;font-weight:400;letter-spacing:normal;text-transform:none}.bn .bn-date>span{color:var(--ink);font-weight:700}.bn-scale-note{margin:6px 0 0;color:var(--muted);font-size:.8rem;font-style:italic}.bld-pair-opt{margin:8px 0;line-height:1.4}.bld-pair-check,.bld-pair-opt{display:flex;gap:8px;align-items:flex-start;font-size:.85rem;cursor:pointer}.bld-pair-check{margin:10px 0 4px}.bld-pool.is-over{outline:2px dashed var(--coral);outline-offset:-4px;background:color-mix(in srgb,var(--coral) 6%,var(--surface,#fff))}.bld-check{width:min(420px,100vw)}.bld-check-tabs{margin:6px 0}.bld-check-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.bld-check-slot{border-radius:10px;border:1px solid var(--line);border-left-width:4px}.bld-check-slot.is-ok{border-left-color:#2f8f5c}.bld-check-slot.is-warn{border-left-color:#e0a92e}.bld-check-slot.is-bad{border-left-color:#c0392b}.bld-check-slot.is-fill-low{border-left-color:#e57373}.bld-check-slot.is-fill-few{border-left-color:#e0a92e}.bld-check-row{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;background:none;border:0;padding:8px 10px;cursor:pointer;font:inherit;color:inherit}.bld-check-sub{color:var(--muted);font-size:.78rem}.bld-check-more{padding:0 10px 8px;font-size:.8rem}.bld-check-more ul{margin:6px 0 0;padding-left:18px}.bld-check-blocks{overflow-x:auto}.bld-check-blocks table{border-collapse:collapse;font-size:.72rem}.bld-check-blocks td,.bld-check-blocks th{border:1px solid var(--line);padding:3px 5px;text-align:center;white-space:nowrap}.bld-check-blocks tbody th{text-align:left;font-weight:600;max-width:140px;overflow:hidden;text-overflow:ellipsis}.bld-check-blocks td.is-one{background:color-mix(in srgb,#2f8f5c 14%,transparent)}.bld-check-blocks td.is-many{background:color-mix(in srgb,#c0392b 22%,transparent);font-weight:700}.bld-more{position:relative;display:inline-block}.bld-more-menu{position:absolute;z-index:30;top:calc(100% + 4px);right:0;display:flex;flex-direction:column;min-width:240px;padding:6px;background:var(--surface,#fff);border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.12)}.bld-more-menu button{text-align:left;background:none;border:0;padding:8px 10px;border-radius:8px;font:inherit;color:inherit;cursor:pointer}.bld-more-menu button:hover{background:var(--hover,#f2f2f4)}.wk-card-actions.is-open{opacity:1;pointer-events:auto;z-index:40}.wk-card-menu{top:20px;right:0;min-width:210px;font-size:.8rem}.wk-card-menu a{text-align:left;padding:8px 10px;border-radius:8px;color:inherit;text-decoration:none}.wk-card-menu a:hover{background:var(--hover,#f2f2f4)}.wk-card-check{background:transparent!important;width:auto!important;font-size:.6rem}.wk-card.is-menu{overflow:visible;z-index:50}.ob-tools{display:inline-flex;gap:6px;margin-left:auto}.bld-basket{display:flex;flex-direction:column;gap:6px;margin-top:10px;padding:10px;border:1.5px dashed var(--line-strong);border-radius:14px;background:var(--bg)}.bld-basket.is-over{outline:2px dashed var(--coral);outline-offset:-4px;background:color-mix(in srgb,var(--coral) 8%,var(--surface))}.bld-basket .bld-pool-list{max-height:220px}.bld-pool-card.is-basket{opacity:.75}.bld-pool-card.is-basket b{text-decoration:line-through;-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted)}.bld-basket-ask{display:flex;flex-direction:column;gap:6px;padding:8px;border-radius:10px;background:var(--surface);font-size:.8rem}.bld-basket-btns{display:flex;align-items:center;gap:10px}.bld-pool .bld-basket{flex:none}.bld-basket .bld-pool-head{flex-wrap:wrap;gap:4px 8px}.bld-basket .bld-pool-head b{white-space:nowrap}.bld-basket .bld-pool-head .dm-link{font-size:.78rem}.bld-pool-headacts{display:inline-flex;align-items:center;gap:10px}.bld-pool-wide{font-size:.78rem;white-space:nowrap}.bld-pool.is-wide{width:min(780px,62vw)}.bld-pool.is-wide .bld-pool-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));align-content:start}.bld-pool.is-wide .bld-basket .bld-pool-list{max-height:180px}.ob-layout.is-wide{grid-template-columns:min(780px,62vw) 1fr}.ob-pool-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.ob-pool-list{display:flex;flex-direction:column;gap:6px}.ob-layout.is-wide .ob-pool-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.bld-basket-toggle{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:none;color:var(--ink);font:inherit;font-weight:700;cursor:pointer;white-space:nowrap}@media (max-width:900px){.bld-pool.is-wide{width:100%}.ob-layout.is-wide{grid-template-columns:1fr}}.bld-more-menu.is-left{left:0;right:auto;max-width:calc(100vw - 32px)}.bld-person-clear{margin-left:8px;font-size:.78rem;font-weight:400}.cws-sort{flex:0 0 auto;min-height:38px;padding-top:6px;padding-bottom:6px;font-size:.88rem}.cws-filters{margin:2px 0 4px}.cws-fn{margin-left:2px;color:var(--muted);font-weight:600}.frm-chip.is-active .cws-fn{color:inherit;opacity:.75}.cws-row.has-new{border-color:color-mix(in srgb,var(--coral) 45%,var(--line))}.cws-metrics{display:flex;align-items:center;gap:6px;white-space:nowrap}.cws-metric{padding:3px 9px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.76rem;font-weight:600}.cws-metric b{color:var(--ink);font-weight:800}.cws-metric.is-done b{color:var(--ok)}.cws-metric.is-new{background:var(--coral);color:#fff}.cws-metric.is-new b{color:#fff}.cws-more{border-top:1px dashed var(--line);padding-top:8px}.cws-more>summary{padding:6px 0;color:var(--ink);font-size:.88rem;font-weight:700;cursor:pointer}@media (max-width:760px){.cws-row-head{grid-template-columns:auto minmax(0,1fr) auto;row-gap:6px}.cws-chips{display:none}.cws-metrics{grid-column:2/4;grid-row:2;flex-wrap:wrap}.cws-caret{grid-column:3;grid-row:1}.cws-filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.cws-search{max-width:none}}.cwt{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px;align-items:start}.cwt-card{display:flex;flex-direction:column;gap:10px;padding:18px;border:1.5px solid var(--line);border-radius:20px;background:var(--surface)}.cwt-card.is-check:not(.is-clear){border-color:var(--coral)}.cwt-card header{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.cwt-card h3{margin:0;font-family:var(--font-sans);font-size:1.1rem}.cwt-card h3,.cwt-n{color:var(--ink);font-weight:800}.cwt-n{font-family:var(--font-display);font-size:1.6rem;line-height:1}.cwt-card.is-check:not(.is-clear) .cwt-n{color:var(--coral-600)}.cwt-card.is-stuck .cwt-n{color:#b7791f}.cwt-lead{margin:0;color:var(--text);font-size:.88rem;line-height:1.5}.cwt-go{align-self:stretch}.cwt-list{display:flex;flex-direction:column;gap:2px;max-height:420px;margin:0;padding:0;overflow-y:auto;list-style:none}.cwt-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:10px;gap:10px;width:100%;padding:7px 8px;border:0;border-radius:12px;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.cwt-item:hover{background:var(--surface-2)}.cwt-item-main{display:flex;flex-direction:column;min-width:0}.cwt-item-main b{color:var(--ink);font-size:.88rem}.cwt-item-main b,.cwt-item-main span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cwt-item-main span{color:var(--muted);font-size:.78rem}.cwt-item em{color:var(--muted);font-size:.74rem;font-style:normal;font-weight:600;white-space:nowrap}.cwt-item em.is-late{color:#b7791f}.cwt-sub{flex-direction:column}.cwt-faces,.cwt-sub{display:flex;gap:6px}.cwt-faces{flex-wrap:wrap}.cwt-face{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 3px;border:1px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.cwt-face:hover{border-color:var(--ink)}.cwt-face .cws-ava{width:26px;height:26px;font-size:.6rem}.cws-act{display:inline-flex;align-items:center;gap:5px}.cws-act i{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--line-strong)}.cws-act.is-fresh i{background:var(--ok)}.cws-act.is-mid i{background:#e0a92e}.cws-act.is-none i{background:transparent;box-shadow:inset 0 0 0 1.5px var(--line-strong)}.cws-ava-wrap{position:relative;display:inline-flex}.cws-ava-wrap .cws-act{position:absolute;right:-1px;bottom:-1px}.cws-ava-wrap .cws-act i{width:12px;height:12px;border:2px solid var(--surface);box-sizing:content-box}.cws-klasses{gap:16px}.cws-klass,.cws-klasses{display:flex;flex-direction:column}.cws-klass{gap:8px}.cws-klass-h{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:2px 0;border:0;background:none;color:var(--ink);font:inherit;font-size:.95rem;font-weight:800;cursor:pointer}.cws-klass-caret{display:inline-block;color:var(--muted);transition:transform .15s}.cws-klass-caret.is-closed{transform:rotate(-90deg)}.cws-caret{font-size:1.2rem}.cws-chip.is-stuck,.cws-metric.is-warn{background:color-mix(in srgb,#e0a92e 20%,var(--surface));color:#8a5a12}.cws-metric.is-warn b{color:#8a5a12}:root[data-theme=dark] .cws-chip.is-stuck,:root[data-theme=dark] .cws-metric.is-warn,:root[data-theme=dark] .cws-metric.is-warn b{color:#f0c674}.cws-panel-back{position:fixed;inset:0;z-index:210;display:flex;justify-content:flex-end;background:var(--overlay)}.cws-panel{display:flex;flex-direction:column;width:min(640px,100vw);height:100%;background:var(--bg);box-shadow:-8px 0 30px rgba(0,0,0,.12)}.cws-panel-head{display:flex;align-items:flex-start;gap:14px;padding:18px 20px 14px;border-bottom:1px solid var(--line);background:var(--surface)}.cws-panel-who{flex:1 1;min-width:0}.cws-panel-who h2{margin:0;color:var(--ink);font-family:var(--font-sans);font-size:1.25rem;font-weight:800}.cws-panel-who p{margin:3px 0 0;color:var(--muted);font-size:.85rem}.cws-panel-stats b{color:var(--coral-600)}.cws-panel-body{flex:1 1;display:flex;flex-direction:column;gap:14px;padding:16px 20px 32px;overflow-y:auto;overscroll-behavior:contain}.cws-panel-body .as-profile{margin:0}.cws-task-main{display:flex;flex-direction:column;min-width:0}.cws-task.is-stuck .cws-task-sub{color:#8a5a12}.cwhub-st-review{margin-left:10px;font-size:.8rem;letter-spacing:0;text-transform:none}.cws-tcard.is-attn{border-color:color-mix(in srgb,#e0a92e 55%,var(--line))}.cws-tstats{display:flex;flex-wrap:wrap;gap:6px}.cws-tcard>header{flex-direction:column;align-items:flex-start;gap:8px}.cws-stops{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:flex-end;gap:4px}.cws-stop{display:inline-flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:2px;width:26px;height:46px}.cws-stop i{display:block;width:14px;min-height:2px;border-radius:3px 3px 0 0;background:var(--line-strong)}.cws-stop.is-max i{background:#e0a92e}.cws-stop em{color:var(--muted);font-size:.68rem;font-style:normal;font-weight:700}.cws-stops-l{margin-left:8px;align-self:center;color:var(--muted);font-size:.78rem}.cws-person.is-stuck{background:color-mix(in srgb,#e0a92e 20%,var(--surface));color:#8a5a12}.tr-count{margin:0 0 2px!important;color:var(--coral-600)!important;font-size:.78rem!important;font-weight:800}.tr-progress{height:4px;background:var(--line)}.tr-progress i{display:block;height:100%;background:var(--coral);transition:width .3s}.tr-answer{padding:14px 16px;border-radius:14px;background:var(--surface)}.tr-answer p{margin:0 0 6px;white-space:pre-wrap;line-height:1.55}.tr-ans .ans-fb{margin-top:4px}.tr-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px;padding-top:12px;border-top:1px solid var(--line)}.tr-nav .is-primary{margin-left:auto}.tr-keys{margin:0;color:var(--muted);font-size:.76rem}.tr-done{display:flex;flex:1 1;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:30px;text-align:center}.tr-done-big{margin:0;color:var(--ok);font-size:3rem;font-weight:800}.cwhub-ans-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.cwhub-ans-bar .cwhub-seg{margin-bottom:0}@media (max-width:960px){.cwt{grid-template-columns:1fr}.cwt-list{max-height:none}}@media (max-width:640px){.cws-panel-head{padding:14px 16px 12px}.cws-panel-body{padding:12px 16px 28px}.cws-panel .cws-task{grid-template-columns:minmax(0,1fr) auto}.cws-panel .cws-task .cws-state{grid-column:1;grid-row:2}.cws-panel .cws-task .cws-assign{grid-column:2;grid-row:1/span 2;min-width:0}.tr-nav .cp-btn{flex:1 1 auto}.tr-nav .is-primary{margin-left:0;flex-basis:100%}}.trc{flex:1 1;gap:12px;min-height:0}.trc,.trc-list{display:flex;flex-direction:column}.trc-list{gap:10px}.trc-msg{display:flex;flex-direction:column;gap:3px;max-width:92%}.trc-msg.is-student{align-self:flex-start}.trc-msg.is-staff{align-self:flex-end;align-items:flex-end}.trc-bubble{padding:10px 14px;border-radius:16px;background:var(--surface);color:var(--text);font-size:.92rem;line-height:1.5;overflow-wrap:anywhere}.trc-msg.is-student .trc-bubble{border-bottom-left-radius:4px}.trc-msg.is-staff .trc-bubble{border-bottom-right-radius:4px;background:var(--ok-soft)}.trc-bubble p{margin:0 0 6px;white-space:pre-wrap}.trc-bubble p:last-child{margin-bottom:0}.trc-bubble.is-clamped{max-height:260px;overflow:hidden;-webkit-mask-image:linear-gradient(#000 75%,transparent);mask-image:linear-gradient(#000 75%,transparent)}.trc-who{margin:0 0 2px!important;color:var(--ok);font-size:.78rem;font-weight:800}.trc-msg time{color:var(--muted);font-size:.72rem}.trc-compose{position:-webkit-sticky;position:sticky;bottom:-24px;display:flex;flex-direction:column;gap:6px;margin-top:auto;padding:12px 0 4px;background:var(--surface-2)}.trc-compose textarea{width:100%;min-height:76px;padding:10px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);font:inherit;font-size:.92rem;resize:vertical}.trc-compose-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px 12px}.trc-hint{margin-right:auto;color:var(--muted);font-size:.74rem}.cws-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:12px;gap:12px;margin:0;padding:0;list-style:none}.cws-card{display:flex;flex-direction:column;gap:10px;width:100%;height:100%;padding:14px 16px;border:1.5px solid var(--line);border-radius:20px;background:var(--surface);color:inherit;font:inherit;text-align:left;cursor:pointer}.cws-card:hover{border-color:var(--line-strong)}.cws-card.has-new{border-color:color-mix(in srgb,var(--coral) 55%,var(--line))}.cws-card.has-stuck:not(.has-new){border-color:color-mix(in srgb,#e0a92e 55%,var(--line))}.cws-card-top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:10px;gap:10px}.cws-card .cws-ava-wrap .cws-ava{width:48px;height:48px;font-size:.85rem}.cws-card .cws-who strong{font-size:1rem}.cws-card .cws-metrics{flex-wrap:wrap}.cws-card-tasks{display:flex;flex-wrap:wrap;gap:4px}.cws-card-tasks .cws-chip{max-width:100%}.cws-card-field{display:-webkit-box;overflow:hidden;color:var(--text);font-size:.84rem;line-height:1.45;-webkit-line-clamp:3;-webkit-box-orient:vertical}.cws-card-field em{display:block;color:var(--muted);font-size:.7rem;font-style:normal;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.cws-card-field.is-empty{color:var(--muted)}.cws-card-field.is-note{padding:8px 10px;border-radius:12px;background:color-mix(in srgb,#f0c674 22%,var(--surface));-webkit-line-clamp:4}.cws-who-extra{display:block;overflow:hidden;color:var(--text)!important;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.cws-who-extra.is-note{color:#8a5a12!important}.cws-look{position:relative}.cws-look-btn{display:inline-flex;align-items:center;gap:6px}.cws-look-pop,.cws-pick-pop{position:absolute;z-index:30;top:calc(100% + 6px);right:0;display:flex;flex-direction:column;gap:8px;min-width:260px;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 12px 32px rgba(0,0,0,.14)}.cws-look-pop .cws-group-h{margin:4px 0 0}.cws-look-opt{display:flex;align-items:center;gap:8px;min-height:32px;color:var(--ink);font-size:.9rem;font-weight:600;letter-spacing:normal;text-transform:none;cursor:pointer}.cws-look-opt input{width:18px;height:18px;accent-color:var(--coral)}.cws-tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:12px;gap:12px;align-items:start}.cws-tgrid .cws-tcard{display:flex;flex-direction:column;align-items:stretch;gap:10px;height:100%;padding:14px 16px;border-radius:20px}.cws-tgrid .cws-tcard>header strong{font-size:1rem;line-height:1.3}.cws-tgrid .cws-pick{margin-top:auto}.cws-person.is-more{border:0;color:var(--muted);font:inherit;font-size:.8rem;font-weight:700;cursor:pointer}.cws-pick{position:relative}.cws-pick-btn{width:100%;min-height:40px;padding:8px 14px;border:1.5px dashed var(--line-strong);border-radius:var(--pill);background:none;color:var(--ink);font:inherit;font-size:.88rem;font-weight:700;cursor:pointer}.cws-pick-btn:hover,.cws-pick.is-open .cws-pick-btn{border-style:solid;border-color:var(--ink)}.cws-pick-pop{left:0;right:auto;width:min(340px,100%);min-width:260px}.cws-pick-search{width:100%;min-height:38px;padding:7px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.88rem}.cws-pick-list{display:flex;flex-direction:column;gap:2px;max-height:280px;margin:0;padding:0;overflow-y:auto;list-style:none}.cws-pick-list button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:10px;gap:10px;width:100%;padding:6px 8px;border:0;border-radius:12px;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.cws-pick-list button:hover{background:var(--surface-2)}.cws-pick-list button .cws-ava{width:28px;height:28px;font-size:.62rem}.cws-pick-list b{display:block;overflow:hidden;color:var(--ink);font-size:.88rem;text-overflow:ellipsis;white-space:nowrap}.cws-pick-list em{color:var(--muted);font-size:.76rem;font-style:normal}.cws-pick-list i{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--surface-2);color:var(--ink);font-style:normal;font-weight:800}.cws-pick-list button:hover i{background:var(--coral);color:#fff}.cws-pick-empty{padding:8px;color:var(--muted);font-size:.85rem}@media (max-width:640px){.cws-cards,.cws-tgrid{grid-template-columns:1fr}.cws-look-btn span{display:none}.cws-look-pop{right:auto;left:0}}.rv-banner{position:-webkit-sticky;position:sticky;top:0;z-index:50;margin:0 0 12px;padding:7px 12px;border-radius:10px;background:#fff4e0;color:#7a5514;font-size:.85rem;font-weight:600;text-align:center}.ask-files{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}.ask-file{display:inline-flex;align-items:center;gap:6px;font-size:.9rem}p.rq-files{gap:4px 12px;margin:0 0 6px;font-size:.9rem}.as-course-bar,p.rq-files{display:flex;flex-wrap:wrap}.as-course-bar{align-items:center;justify-content:space-between;gap:10px 16px;margin-bottom:24px}.as-course-bar .as-course-name{margin-bottom:0}.as-course-bar.as-st-review{margin-bottom:12px}.as-course-bar.as-st-review:not(:has(button)){display:none}.as-feed>.as-review-btn{align-self:flex-start;margin-bottom:6px}.as-st-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px}.as-st-bar .ans-search{flex:1 1 260px;margin-bottom:0}.as-st-sort.pill-select{flex:0 0 auto}.as-klass-n{color:var(--muted);font-weight:600}.as-today-course{grid-template-columns:minmax(0,1fr) auto}@media (max-width:760px){.as-st-sort.pill-select{flex:1 1 100%}.as-course-bar .as-review-btn{width:100%}}.mm-chips{margin:0 0 10px}.mm-n{color:var(--muted);font-weight:600;margin-left:2px}.mm-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0 0 8px}.mm-bar>:first-child{flex:1 1 220px;max-width:320px}.mm-bar .mtr-search input{height:38px;padding-left:40px;font-size:.9rem}.mm-bar .mtr-search>svg{left:15px}.mmg-name{margin-right:6px;color:var(--ink);font-size:.9rem;font-weight:700;text-decoration:none}.mmg-name:hover{text-decoration:underline}.mm-prod{color:var(--muted);white-space:nowrap}.mm-sel{width:100%;min-width:150px;max-width:210px;height:38px;padding:0 34px 0 14px;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;text-overflow:ellipsis;border:1.5px solid var(--line);border-radius:var(--pill);background-color:var(--surface);color:var(--ink);font:inherit;font-size:.86rem;outline:none;cursor:pointer}.mm-cmt:focus,.mm-sel:focus{border-color:var(--coral)}.mm-sel:disabled{opacity:.6;cursor:progress}.mm-sel.is-empty,.mm-st.is-none{border-style:dashed;color:var(--muted)}.mm-sort{padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:inherit;cursor:pointer;white-space:nowrap}.mm-sort span{opacity:.35}.mm-sort.is-on span,.mm-sort:hover span{opacity:1}.mm-pill.is-ok,.mm-st.is-ok{border-color:var(--ok);background-color:var(--ok-soft);color:var(--ok)}.mm-pill.is-pending,.mm-st.is-pending{border-color:#4a9ad8;background-color:var(--sky-tint);color:var(--ink)}.mm-pill.is-question,.mm-st.is-question{border-color:var(--coral-600);background-color:var(--icon-tint);color:var(--coral-600)}.mm-pill{display:inline-block;padding:3px 10px;border:1.5px solid var(--line);border-radius:var(--pill);font-size:.8rem;font-weight:700;white-space:nowrap}.mm-cm{min-width:170px}.mm-cmt{display:block;width:100%;min-height:38px;padding:8px 14px;border:1.5px solid var(--line);border-radius:19px;outline:none;background:var(--surface);color:var(--ink);font:inherit;font-size:.86rem;resize:vertical;field-sizing:content}@supports (field-sizing:content){.mm-cmt{resize:none}}.mm-by,.mm-err,.mm-ok{display:block;margin-top:3px;font-size:.74rem}.mm-by,.mm-muted{color:var(--muted)}.mm-ok{color:var(--ok)}.mm-err{color:var(--danger)}.mm-warn{color:var(--coral-600);font-weight:700}.mtm-groups{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:14px;gap:14px}.mtm-group{display:flex;flex-direction:column;gap:10px;min-width:0;padding:14px 16px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface)}.mtm-group h3{margin:0;font-size:1.05rem}.mtm-person{display:flex;align-items:center;gap:12px;min-width:0;padding:6px;margin:0 -6px;border:0;border-radius:12px;background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.mtm-person:hover:not(:disabled){background:var(--surface-2,color-mix(in srgb,var(--ink) 5%,transparent))}.mtm-person:disabled{cursor:default}.mtm-person>span{display:flex;flex-direction:column;min-width:0}.mtm-person b,.mtm-person small{overflow-wrap:anywhere}.mtm-person small{color:var(--muted);font-size:.82rem}.mtm-none{margin:0;color:var(--muted);font-size:.88rem}.fub-toolbar .fub-new{flex:0 0 auto;white-space:nowrap}.fub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:14px;gap:14px}.fub-card{display:flex;flex-direction:column;gap:8px;min-width:0;padding:14px 16px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface)}.fub-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:var(--muted);font-size:.8rem}.fub-badge{padding:2px 8px;border-radius:var(--pill);background:var(--sky-tint);color:var(--ink);font-weight:700}.fub-course{color:var(--muted);font-size:.86rem;font-weight:700;text-decoration:none;overflow-wrap:anywhere}.fub-course:hover{color:var(--ink);text-decoration:underline}.fub-open{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:0;border:0;background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.fub-open:hover .fub-lesson{text-decoration:underline}.fub-lesson{font-size:1rem;line-height:1.3;overflow-wrap:anywhere}.fub-out,.fub-snip{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;font-size:.88rem;line-height:1.45;overflow-wrap:anywhere;white-space:pre-line}.fub-out{-webkit-line-clamp:3}.fub-out i{color:var(--muted);font-style:normal;font-weight:700}.fub-snip{-webkit-line-clamp:4;color:var(--muted)}.fub-more{font-size:.84rem;font-weight:700}.fub-foot{display:flex;flex-direction:column;gap:2px;margin-top:auto;padding-top:8px;border-top:1px solid var(--line);font-size:.82rem;color:var(--muted);overflow-wrap:anywhere}.fub-foot b{color:var(--ink)}.fub-import{margin:0 0 14px;padding:10px 14px;border:1.5px dashed var(--line);border-radius:14px}.fub-import summary{font-weight:700;cursor:pointer}.fub-import[open]{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.fbb-sub{width:100%}.fbb-sub summary{font-weight:600;cursor:pointer}.fbb-sub ul{margin:6px 0 0;padding-left:18px;font-size:.88rem;line-height:1.5}.fbb-klass{color:var(--muted);font-weight:500}.fbb-period{padding:2px 8px;font-weight:600}.fbb-period,.fbb-period-sel{margin-left:auto;border-radius:var(--pill);border:1px solid var(--line);color:var(--ink)}.fbb-period-sel{padding:2px 6px;background:var(--surface);font:inherit;font-weight:600;cursor:pointer}.fbb-period-sel.is-empty{border-style:dashed;color:var(--muted);font-weight:500}.fbb-modal{max-width:760px}.fbb-title{margin:-4px 0 12px;color:var(--muted);font-size:.9rem}.fbb-text{padding:4px 0 8px}.fbb-comments{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.fbb-comment{margin:0 0 10px;padding:10px 12px;border-radius:12px;background:var(--surface-2);font-size:.9rem;line-height:1.5}.fbb-comment q{display:block;margin:0 0 6px;color:var(--muted);font-style:italic}.fbb-comment p{margin:0;white-space:pre-line}.fbb-reply{margin-top:8px!important;padding-left:12px;border-left:2px solid var(--line)}.fbb-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin:14px 0 0;font-weight:600}.fub-hint{margin:0;color:var(--muted);font-size:.86rem}.fub-pick{max-width:560px}.fub-pick-search{width:100%;margin:6px 0 10px}.fub-opts{gap:6px;max-height:min(55vh,460px);margin:0;padding:0;overflow-y:auto;list-style:none}.fub-opts,.fub-opts button{display:flex;flex-direction:column}.fub-opts button{gap:2px;width:100%;padding:10px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.fub-opts button:hover{border-color:var(--ink)}.fub-opts small{color:var(--muted);font-size:.8rem}@media (max-width:640px){.fub-grid{grid-template-columns:1fr}.fub-toolbar{flex-wrap:wrap}.fub-toolbar .fub-new{flex:1 1 auto}}.cdb-teachers{display:flex;align-items:center;gap:10px;min-width:0}.cdb-faces{display:inline-flex;flex:none}.cdb-face{position:relative;display:inline-grid;place-items:center;width:32px;height:32px;overflow:hidden;border:2px solid var(--surface);border-radius:50%;background:var(--sky-tint);color:var(--ink);font-size:.66rem;font-weight:800}.cdb-face+.cdb-face{margin-left:-10px}.cdb-face img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.cdb-face.is-more{background:var(--surface-2)}.cdb-tnames{min-width:0;color:var(--muted);font-size:.9rem;line-height:1.35;overflow-wrap:anywhere}.cdb-card .cdb-cur{margin:0;font-size:.84rem}.fu-links{display:flex;flex-wrap:wrap;gap:6px 8px;margin-top:8px}.fu-links a{padding:4px 10px;border:1.5px solid var(--line);border-radius:var(--pill);color:var(--ink);font-size:.82rem;font-weight:700;text-decoration:none}.fu-links a:hover{border-color:var(--ink)}.fub-tabs{margin-bottom:14px}.fub-foot{flex-direction:row;justify-content:space-between}.fub-author,.fub-foot{align-items:center;gap:10px}.fub-author{display:flex;min-width:0}.fub-author>span:not(.fub-face){display:flex;flex-direction:column;min-width:0}.fub-author small{font-size:.8rem}.fub-face{position:relative;display:inline-grid;flex:none;place-items:center;width:36px;height:36px;overflow:hidden;border-radius:50%;font-size:.74rem;font-weight:800;line-height:1;letter-spacing:0;text-align:center}.fub-face img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.fub-links{display:flex;flex:none;flex-direction:column;align-items:flex-end;gap:4px}.fub-links a{color:var(--ink);font-size:.82rem;font-weight:700;text-decoration:none;white-space:nowrap}.fub-links a:hover{text-decoration:underline}@media (max-width:640px){.fub-tabs .sp-tab{flex:1 1;min-width:0;padding-left:4px;padding-right:4px;white-space:normal;text-align:center;font-size:.88rem}}.ctc-card.is-open{cursor:pointer;transition:border-color .15s}.ctc-card.is-open:focus-visible,.ctc-card.is-open:hover{border-color:var(--ink);outline:none}.ce-closing{padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.fub-stats{margin:-4px 0 12px}.mtr-fb-meet{max-width:420px}.mtr-notes-btn{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.mtr-notes-btn.is-on{border-color:var(--ink)}.mtr-notes-n{min-width:18px;padding:0 5px;border-radius:var(--pill);background:var(--sky-tint);color:var(--ink);font-size:.72rem;font-style:normal;font-weight:800;line-height:18px;text-align:center}.mtn-ta{width:100%;resize:vertical}.mtn-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:8px 0 0}.mtn-group{margin-top:16px}.mtn-h{margin:0 0 6px;font-size:.9rem}.mtn-h span{margin-left:4px;color:var(--muted);font-weight:600}.mtn-note{margin:0 0 8px;padding:10px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface)}.mtn-note p{margin:0;white-space:pre-wrap;font-size:.92rem}.mtn-note small{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:6px;color:var(--muted)}.mtn-note.is-edit{border-color:var(--ink)}.mtr-fb-when{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end;margin:8px 0 12px}.mtr-fb-when label{display:flex;flex-direction:column;gap:4px;font-size:.82rem;color:var(--ink-soft,var(--ink))}.mtr-fb-time{display:flex;align-items:center;gap:6px}.mtr-fb-time .spf-fld,.mtr-fb-when>label>.spf-fld{width:auto}.mtr-fb-when-note{flex-basis:100%;color:var(--ink-soft,var(--ink));opacity:.75}.mm-export{display:inline-flex;gap:14px;margin-left:auto}.lb-tabs{scrollbar-width:thin}.lb-list{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}.lb-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;align-items:center;grid-gap:6px 16px;gap:6px 16px;width:100%;min-height:44px;padding:12px 16px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.lb-row:focus-visible,.lb-row:hover{border-color:var(--ink);outline:none}.lb-main,.lb-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.lb-title{font-size:.98rem;line-height:1.3;overflow-wrap:anywhere}.lb-course,.lb-meta{color:var(--muted);font-size:.84rem;overflow-wrap:anywhere}.lb-course{font-weight:700}.lb-people{color:var(--text)}.lb-fu{padding:2px 10px;border-radius:var(--pill);background:var(--seg-bg);font-size:.82rem;font-weight:700;white-space:nowrap}@media (max-width:640px){.lb-row{grid-template-columns:minmax(0,1fr) auto}.lb-meta{grid-column:1/-1;grid-row:2}.lb-fu{grid-column:2;grid-row:1;align-self:start}}.lb-modal{max-width:620px}.lb-teaser{margin:10px 0 0;line-height:1.5}.lb-info{display:grid;grid-gap:8px;gap:8px;margin:16px 0 0}.lb-info-row{display:grid;grid-template-columns:110px minmax(0,1fr);grid-gap:12px;gap:12px;font-size:.92rem}.lb-info-row dt{color:var(--muted);font-weight:700}.lb-info-row dd{margin:0;overflow-wrap:anywhere}.lb-info-row a{color:var(--ink);font-weight:700}@media (max-width:480px){.lb-info-row{grid-template-columns:1fr;gap:2px}}.lb-acts{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0 6px}.lb-acts .dm-btn{text-decoration:none}.lb-fus{margin:18px 0 12px;padding-top:14px;border-top:1px solid var(--line)}.lb-fus-h{display:flex;align-items:center;justify-content:space-between;gap:10px}.lb-fus-h h3{margin:0;font-size:1.02rem;color:var(--ink)}.lb-fu-list{gap:8px;margin:12px 0 0;padding:0;list-style:none}.lb-fu-list,.lb-fu-list button{display:flex;flex-direction:column}.lb-fu-list button{align-items:flex-start;gap:4px;width:100%;padding:10px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.lb-fu-list button:hover{border-color:var(--ink)}.lb-fu-list small{color:var(--muted);font-size:.8rem}.lb-form{gap:14px;margin:14px 0 8px}.lb-field,.lb-form{display:flex;flex-direction:column}.lb-field{gap:6px;min-width:0;text-transform:none;letter-spacing:0}.lb-label{color:var(--muted);font-size:.82rem;font-weight:700}.lb-input{width:100%;min-height:44px;padding:10px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;font-size:16px;box-sizing:border-box}.lb-input:focus{border-color:var(--ink);outline:none}textarea.lb-input{resize:vertical;line-height:1.45}.lb-date{max-width:220px}.lb-cur{margin:0;font-size:.92rem;overflow-wrap:anywhere}.lb-cur small{color:var(--muted)}.lb-opts{margin:0;padding:4px;border:1.5px solid var(--line);border-radius:12px;list-style:none;max-height:240px;overflow-y:auto}.lb-opts,.lb-opts button{display:flex;flex-direction:column}.lb-opts button{width:100%;min-height:40px;padding:8px 10px;border:0;border-radius:8px;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.lb-opts button:hover{background:var(--surface-2)}.lb-opts small{color:var(--muted);font-size:.8rem}.lb-copy{margin:14px 0 0;padding:10px 14px;border:1.5px solid var(--line);border-radius:14px}.lb-copy summary{color:var(--ink);font-weight:700;cursor:pointer}.lb-copy summary,.lb-html{font-size:.92rem;overflow-wrap:anywhere}.lb-html{margin-top:10px;line-height:1.5}.lb-html img{display:block;max-width:100%;height:auto;margin:8px 0;border-radius:10px}.lb-html a{color:var(--ink)}.lb-html blockquote{margin:8px 0;padding:4px 12px;border-left:3px solid var(--line)}.lb-html h2,.lb-html h3{margin:14px 0 6px;color:var(--ink);font-size:1rem}.lb-html h2{font-size:1.06rem}.ob-chip.is-kids-few{background:#fdf3cf}.ob-chip.is-kids-many{background:#fde0dc}.ob-chip.is-clash{border-color:var(--danger);box-shadow:0 0 0 1px var(--danger) inset}.ob-chip.is-cur-clash{border-color:#e0a92e;box-shadow:inset 0 0 0 1px #e0a92e}.ob-chip.is-dim{opacity:.3}.ob-n{border-radius:6px;padding:0 4px}.ob-n.is-fill-low{background:#fde4e4;color:#a33}.ob-n.is-fill-few{background:#fdf3cf;color:#85600a}.ob-chip-warn{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.ob-warn{margin:0;border-radius:6px;padding:1px 6px;font-size:.72rem;font-weight:600}p.ob-warn{padding:4px 8px;margin:0 0 4px;font-size:.82rem}.ob-warn.is-t{background:#fde4e4;color:#a33}.ob-warn.is-c,.ob-warn.is-k1{background:#fdf3cf;color:#85600a}.ob-warn.is-k2{background:#f8c9c2;color:#8f2318}.ob-prev{border-radius:8px;padding:4px 8px;font-size:.74rem;font-weight:600}.ob-prev.is-ok{background:#e3f4ea;color:#24734a}.ob-prev.is-warn{background:#fdf3cf;color:#85600a}.ob-prev.is-bad{background:#fde0dc;color:#8f2318}.ob-conf{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0 12px;font-size:.84rem}.ob-conf-l{color:var(--muted)}.ob-conf-btn{border:1px solid var(--line);border-radius:999px;padding:3px 10px;background:var(--surface);color:var(--ink);cursor:pointer;font:inherit;font-weight:600}.ob-conf-btn.is-teacher:not(.is-zero){border-color:var(--danger);color:var(--danger)}.ob-conf-btn.is-curator:not(.is-zero){border-color:#e0a92e;color:#85600a}.ob-conf-btn.is-kids:not(.is-zero){border-color:#e57373;color:#8f2318}.ob-conf-btn.is-zero{color:var(--muted)}.ob-conf-btn.is-on{background:var(--ink);border-color:var(--ink);color:var(--surface)}.ob-conf-legend{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:.76rem;margin-left:auto}.ob-sw{display:inline-block;width:12px;height:12px;border-radius:3px;margin-left:6px}.ob-sw.is-k1{background:#fdf3cf}.ob-sw.is-k2{background:#fde0dc;border:1px solid #e57373}.ob-pair{max-width:620px}.ob-pair-title{margin:0 28px 4px 0;font-size:1.1rem}.ob-pair-conf{margin:0 0 12px}.ob-pair-sub{color:var(--danger);font-weight:600}.ob-pair-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.ob-pair .frm-participants-grid{max-height:300px;overflow:auto}.pc-field{margin-bottom:10px}.pc-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px}.pc-label{color:var(--muted);font-size:.8rem;min-width:92px}.pc-names{flex:1 1;min-width:0;font-weight:600}.pc-names i{color:var(--muted);font-weight:400}.pc-body{display:flex;flex-direction:column;gap:6px;margin-top:6px}.pc-body .sc-modal-checklist{max-height:200px;overflow:auto}:root[data-theme=dark] .ob-chip.is-kids-few,:root[data-theme=dark] .ob-n.is-fill-few,:root[data-theme=dark] .ob-prev.is-warn,:root[data-theme=dark] .ob-sw.is-k1,:root[data-theme=dark] .ob-warn.is-c,:root[data-theme=dark] .ob-warn.is-k1{background:#39331c;color:#f0d58a}:root[data-theme=dark] .ob-chip.is-kids-many,:root[data-theme=dark] .ob-n.is-fill-low,:root[data-theme=dark] .ob-prev.is-bad,:root[data-theme=dark] .ob-sw.is-k2,:root[data-theme=dark] .ob-warn.is-k2,:root[data-theme=dark] .ob-warn.is-t{background:#4a2420;color:#ffb4a8}:root[data-theme=dark] .ob-prev.is-ok{background:#163025;color:#6fcb98}:root[data-theme=dark] .ob-chip.is-kids-few,:root[data-theme=dark] .ob-chip.is-kids-many{color:var(--ink)}.ob-sug{max-width:680px}.ob-sug-opts{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:12px;font-size:.86rem}.ob-sug-opts label{display:inline-flex;align-items:center;gap:6px}.ob-sug-n{width:56px}.ob-sug-m{width:100%;border-collapse:collapse;margin:6px 0 10px;font-size:.86rem}.ob-sug-m td,.ob-sug-m th{padding:4px 8px;border-bottom:1px solid var(--line);text-align:right}.ob-sug-m td:first-child,.ob-sug-m th:first-child{text-align:left}.ob-sug-m td.is-better{color:#24734a;font-weight:700}.ob-sug-m td.is-worse{color:var(--danger);font-weight:700}.ob-sug-head{display:flex;justify-content:space-between;align-items:baseline;margin:8px 0 4px}.ob-sug-list{list-style:none;margin:0;padding:0;max-height:320px;overflow:auto;border:1px solid var(--line);border-radius:10px}.ob-sug-list li{border-bottom:1px solid var(--line)}.ob-sug-list li:last-child{border-bottom:0}.ob-sug-list label{display:flex;align-items:center;gap:8px;padding:6px 10px;cursor:pointer;font-size:.86rem}.ob-sug-t{flex:1 1;min-width:0}.ob-sug-mv{color:var(--muted);white-space:nowrap}.ob-sug-mv b{color:var(--ink)}:root[data-theme=dark] .ob-sug-m td.is-better{color:#6fcb98}.jp-ava{background:color-mix(in srgb,var(--space-junior) 16%,var(--surface));color:color-mix(in srgb,var(--space-junior) 70%,var(--ink))}.jp-tools .mpl-search{flex:1 1 240px}.jp-import-row{margin:4px 0 0;text-align:right}.jp-empty .dm-btn{margin-top:12px}.jp-add{display:flex;gap:8px}.jp-add .spf-fld{flex:1 1;min-width:0}.jp-notice{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0;padding:10px 14px;border-radius:14px;background:var(--surface-2);font-size:.88rem}.jp-empty{padding:28px 20px;border:1.5px dashed var(--line-strong);border-radius:18px;text-align:center}.jp-empty p{margin:6px 0 0;color:var(--muted);font-size:.9rem}.jp-block{display:flex;flex-direction:column;gap:6px;padding-bottom:14px;border-bottom:1px solid var(--line)}.jp-block:last-of-type{border-bottom:0}.jp-block-h{display:flex;align-items:center;justify-content:space-between;gap:8px}.jp-block-h .mdp-h{margin:0}.jp-edit,.jp-x{padding:4px 2px;border:0;background:none;color:var(--muted);font:inherit;font-size:.82rem;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.jp-edit:hover,.jp-x:hover{color:var(--ink)}.jp-text{margin:0;font-size:.9rem;line-height:1.5;white-space:pre-line;overflow-wrap:anywhere}.jp-alert{padding:10px 12px;border-left:3px solid var(--danger);border-radius:10px;background:color-mix(in srgb,var(--danger) 9%,var(--surface))}.jp-alert b{display:block;margin-bottom:2px;color:var(--danger);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.jp-review{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 12px;border:1.5px dashed color-mix(in srgb,#ef9f27 60%,var(--line));border-radius:14px;font-size:.85rem}.jp-review span{flex:1 1 220px}.jp-bday{margin:0;padding:8px 12px;border-radius:12px;background:var(--ok-soft);color:var(--ok);font-size:.88rem;font-weight:700}.jp-form{display:flex;flex-direction:column;gap:10px}.jp-form-actions{display:flex;gap:8px}.jp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.jp-fld{display:flex;flex-direction:column;gap:4px;min-width:0}.jp-fld>span{font-size:.78rem;font-weight:700}.jp-fld.is-wide{grid-column:1/-1}.jp-fld textarea{resize:vertical}.jp-fam{gap:10px;margin:0;padding:0;list-style:none}.jp-fam,.jp-fam li{display:flex;flex-direction:column}.jp-fam li{gap:3px}.jp-fam-who{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;font-size:.92rem}.jp-fam-who small{color:var(--muted);font-size:.78rem}.jp-fam-who .jp-wa{color:var(--ok);font-weight:700}.jp-fam-links{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:.86rem}.jp-fam-links a{color:var(--ink);overflow-wrap:anywhere}.jp-phone{display:inline-flex;align-items:baseline;gap:6px}.jp-phone .jp-wa-link{color:var(--muted);font-size:.78rem}.jp-fam-edit{display:grid;grid-template-columns:110px minmax(0,1fr);grid-gap:6px;gap:6px;padding:10px;border-radius:14px;background:var(--surface-2)}.jp-fam-edit .jp-check{justify-self:start}.jp-fam-edit .jp-x{justify-self:end}.jp-fam-edit>input[type=email],.jp-fam-edit>input[type=tel]{grid-column:1/-1}.jp-check{display:inline-flex;align-items:center;gap:6px;font-size:.84rem;font-weight:500;white-space:nowrap}.jp-check,.jp-fld{color:var(--ink);letter-spacing:0;text-transform:none}.jp-fld{font-size:inherit}.jp-dl{display:grid;grid-template-columns:max-content minmax(0,1fr);grid-gap:4px 14px;gap:4px 14px;margin:0;font-size:.9rem}.jp-dl dt{color:var(--muted);font-size:.82rem}.jp-att,.jp-dl dd{margin:0}.jp-att{display:flex;flex-direction:column;gap:6px;padding:0;list-style:none}.jp-att li{display:grid;grid-template-columns:116px minmax(0,1fr) 76px;align-items:center;grid-gap:10px;gap:10px;font-size:.86rem}.jp-att-m{text-transform:capitalize}.jp-att-bar{height:8px;overflow:hidden;border-radius:99px;background:var(--surface-2)}.jp-att-bar i{display:block;height:100%;border-radius:inherit;background:var(--ok)}.jp-att-n{text-align:right;font-weight:700;white-space:nowrap}.jp-att-n.is-low{color:var(--danger)}.jp-note-form{display:flex;align-items:flex-end;gap:8px}.jp-note-form textarea{flex:1 1;min-width:0;resize:vertical}.jp-notes{gap:10px;margin:0;padding:0;list-style:none}.jp-notes,.jp-notes li{display:flex;flex-direction:column}.jp-notes li{align-items:flex-start;gap:2px;padding:10px 12px;border-radius:14px;background:var(--surface-2)}.jp-notes .jp-text{font-size:.88rem}.jp-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin:0}@media (max-width:560px){.jp-grid{grid-template-columns:minmax(0,1fr)}.jp-att li{grid-template-columns:96px minmax(0,1fr) 70px;gap:8px}.jp-note-form{flex-direction:column;align-items:stretch}.mpl-tools .dm-btn{flex:1 1 auto}}.ja{display:flex;flex-direction:column;gap:12px;max-width:720px}.ja-day{gap:10px}.ja-day,.ja-day-text{display:flex;align-items:center}.ja-day-text{flex:1 1;flex-direction:column;text-align:center}.ja-day-text b{display:block;font-family:var(--font-display);font-size:1.15rem}.ja-day-text span{color:var(--muted);font-size:.82rem}.ja-arrow{display:grid;flex:none;place-items:center;width:44px;height:44px;border:1.5px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink);font:inherit;font-size:1.4rem;line-height:1;cursor:pointer}.ja-arrow:hover:not(:disabled){border-color:var(--ink)}.ja-arrow:disabled{opacity:.3;cursor:default}.ja-sum{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.ja-count{padding:6px 12px;border-radius:var(--pill);background:var(--surface-2);font-size:.86rem}.ja-count b{margin-left:4px}.ja-count.is-p{background:var(--ok-soft);color:var(--ok)}.ja-count.is-a{background:color-mix(in srgb,var(--danger) 12%,var(--surface));color:var(--danger)}.ja-rest{margin-left:auto}.ja-list{display:flex;flex-direction:column;margin:0;padding:0;overflow:hidden;border:1.5px solid var(--line);border-radius:18px;background:var(--surface);list-style:none}.ja-row{display:flex;align-items:center;gap:12px;padding:8px 10px 8px 14px;border-top:1px solid var(--line)}.ja-row:first-child{border-top:0}.ja-row.is-p{box-shadow:inset 3px 0 0 var(--ok)}.ja-row.is-a{box-shadow:inset 3px 0 0 var(--danger)}.ja-kid{flex:1 1;align-items:center;gap:12px;color:var(--ink);text-decoration:none}.ja-kid,.ja-kid-text{display:flex;min-width:0}.ja-kid-text{flex-direction:column}.ja-kid-text b{overflow:hidden;font-size:.95rem;text-overflow:ellipsis;white-space:nowrap}.ja-kid-text small{color:var(--muted);font-size:.78rem}.ja-btns{display:flex;flex:none;gap:6px}.ja-btn{min-width:76px;min-height:44px;padding:0 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);font:inherit;font-size:.92rem;font-weight:700;cursor:pointer}.ja-btn:hover:not(:disabled){border-color:var(--ink)}.ja-btn:disabled{cursor:progress}.ja-btn.is-p.is-on{border-color:var(--ok);background:var(--ok);color:#fff}.ja-btn.is-a.is-on{border-color:var(--danger);background:var(--danger);color:#fff}@media (max-width:560px){.ja-row{gap:8px;padding:8px 8px 8px 12px}.ja-btn{min-width:62px;padding:0 10px}.ja-kid-text b{display:-webkit-box;overflow:hidden;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.25}.ja-rest{flex:1 1 100%;margin-left:0}}.ja-views{display:inline-flex;align-self:flex-start;gap:4px;margin-bottom:14px;padding:4px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface)}.ja-view{min-height:38px;padding:0 16px;border:0;border-radius:var(--pill);background:none;color:var(--muted);font:inherit;font-size:.9rem;font-weight:700;cursor:pointer}.ja-view.is-on{background:var(--ink);color:var(--bg)}.ja.ja-month{max-width:none}.jam-wrap{overflow-x:auto;border:1.5px solid var(--line);border-radius:18px;background:var(--surface)}.jam{min-width:100%;border-collapse:separate;border-spacing:0;font-size:.86rem}.jam td,.jam th{padding:0;border-top:1px solid var(--line);text-align:center}.jam thead th{border-top:0}.jam .jam-kid{position:-webkit-sticky;position:sticky;left:0;z-index:1;min-width:170px;max-width:220px;padding:6px 10px;border-right:1px solid var(--line);background:var(--surface);font-weight:700;text-align:left}.jam tfoot .jam-kid,.jam thead .jam-kid{color:var(--muted);font-size:.8rem}.jam-kid a{display:flex;align-items:center;gap:8px;min-width:0;color:var(--ink);text-decoration:none}.jam-kid a span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jam-kid a:hover span{text-decoration:underline}.jam-d button{display:flex;flex-direction:column;align-items:center;width:100%;min-width:34px;padding:6px 2px;border:0;background:none;color:var(--ink);font:inherit;cursor:pointer}.jam-d button:hover{background:var(--surface-2)}.jam-d small{color:var(--muted);font-size:.7rem}.jam-d.is-empty button{opacity:.5}.jam-d.is-today b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--ink);color:var(--bg)}.jam td{min-width:34px;height:40px;font-weight:700}.jam td.is-p{background:var(--ok-soft);color:var(--ok)}.jam td.is-a{background:color-mix(in srgb,var(--danger) 12%,var(--surface));color:var(--danger)}.jam .jam-tot{min-width:56px;padding:0 10px;border-left:1px solid var(--line);color:var(--ink);font-weight:700;white-space:nowrap}.jam .jam-tot.is-low{color:var(--danger)}.jam tfoot td{color:var(--muted);font-size:.8rem;font-weight:600}@media (max-width:560px){.ja-views{display:flex;align-self:stretch}.ja-view{flex:1 1;padding:0 8px}.jam .jam-kid{min-width:0;max-width:128px;padding:6px 8px}.jam-kid .jp-ava{display:none}}.jkf-period{display:flex;flex-direction:column;gap:8px;margin-top:10px}.jkf-h{margin:0;color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.jkf-list{gap:10px;margin:0;padding:0;list-style:none}.jkf-list,.jkf-list li{display:flex;flex-direction:column}.jkf-list li{gap:4px;padding-left:10px;border-left:3px solid var(--line)}.jkf-list li.is-team{border-left-color:var(--space-junior)}.jkf-list b{font-size:.9rem}.jkf-list small{font-size:.76rem}.jfd-acts{display:flex;flex-wrap:wrap;gap:4px 14px;justify-content:flex-end}.jfd{display:flex;flex-direction:column;gap:14px;margin-top:10px;padding:14px;border-radius:14px;background:var(--surface-2,var(--surface))}.jfd-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.jfd-head .jkf-h{margin:0}.jfd-periods{display:flex;flex-wrap:wrap;gap:6px}.jfd-chip{padding:6px 12px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.84rem;font-weight:700;cursor:pointer;min-height:36px}.jfd-chip.is-on{border-color:var(--ink);background:var(--ink);color:var(--bg)}.jfd-one{margin:0}.jfd .jp-form-actions{flex-wrap:wrap;align-items:center}.jfd-sec{display:flex;flex-direction:column;gap:8px}.jfd-sec-h{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 10px}.jfd-sec-h .mdp-muted{font-size:.8rem}.jfd-all{max-height:320px;margin:0;padding:12px;overflow:auto;border-radius:10px;background:var(--surface);font:inherit;font-size:.9rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:text;-moz-user-select:text;user-select:text}.jfd-edit{width:100%;min-height:240px;font-size:.92rem;line-height:1.5;resize:vertical}@media (max-width:600px){.jfd{padding:12px;margin-inline:-4px}.jfd .jp-form-actions .dm-btn{flex:1 1 auto;min-height:42px}}.jfb-who{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);grid-gap:8px;gap:8px}.jfb-who label{display:flex;flex-direction:column;gap:4px;min-width:0;margin:0}.jfb-who label span{color:var(--muted);font-size:.78rem;font-weight:700}.jfb-who .spf-fld{box-sizing:border-box;width:100%}@media (max-width:640px){.jfb-strip{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.jfb-who{grid-template-columns:1fr}.mfb-grid{grid-template-columns:minmax(0,1fr)}}.jp-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-bottom:1px solid var(--line)}.jp-big{display:grid;place-items:center;width:100%;aspect-ratio:3/4;padding:0;overflow:hidden;border:0;border-radius:0;background:color-mix(in srgb,var(--space-junior) 14%,var(--surface));color:color-mix(in srgb,var(--space-junior) 70%,var(--ink));font:inherit;font-size:2.6rem;font-weight:700;cursor:zoom-in}.jp-big.is-empty{cursor:default}button.jp-big.is-empty{cursor:pointer}.jp-big img{width:100%;height:100%;object-fit:cover}.jp-big:focus-visible{outline:2px solid var(--ink);outline-offset:-4px}.jp-hero-side{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0;padding:16px}.jp-hero-side .mdp-back{margin-bottom:4px}.jp-hero-side h2{margin:0;font-family:var(--font-display);font-size:1.3rem;line-height:1.2;overflow-wrap:anywhere}.jp-hero-side p{margin:0;color:var(--muted);font-size:.88rem}.jp-photo-acts{display:flex;flex-wrap:wrap;gap:6px;padding-top:8px}.jp-photo-acts .dm-btn{padding:6px 12px;font-size:.82rem}.jp-photo-err{margin:0;color:var(--danger);font-size:.8rem}.jp-zoom{position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;background:rgba(0,0,0,.82);cursor:zoom-out}.jp-zoom img{max-width:min(480px,100%);max-height:calc(100vh - 100px);border-radius:20px;object-fit:contain}.jp-zoom-name{color:#fff;font-weight:700}@media (max-width:560px){.jp-hero-side{padding:12px}.jp-hero-side h2{font-size:1.12rem}.jp-photo-acts{flex-direction:column;align-items:stretch;width:100%}}.fba{display:flex;align-items:flex-start;gap:14px;max-width:760px;margin:0 0 28px;padding:18px 20px;border-radius:20px;background:var(--ans-fb);color:#0b3550}.fba-icon{flex:0 0 auto;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:hsla(0,0%,100%,.5)}.fba-main{flex:1 1;min-width:0}.fba-kicker{margin:0 0 4px;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgba(11,53,80,.75)}.fba-slide{animation:fba-in .22s ease-out}@keyframes fba-in{0%{opacity:0;transform:translateX(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.fba-slide{animation:none}}.fba-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:36px;margin-top:10px}.fba-pager{display:inline-flex;align-items:center;gap:2px;margin-left:auto;margin-right:-8px}.fba-pager button{display:grid;place-items:center;width:32px;height:36px;padding:0;border:0;border-radius:8px;background:none;color:rgba(11,53,80,.55);cursor:pointer;transition:color .15s}.fba-pager button:hover{color:#0b3550}.fba-pager button:focus-visible{outline:2px solid #0b3550;outline-offset:1px}.fba-count{font-size:.85rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fba-h{margin:0;font-family:var(--font-display);font-size:1.2rem;font-weight:700;color:#0b3550}.fba-sub{margin:6px 0 0;font-size:.92rem;line-height:1.5;color:rgba(11,53,80,.8)}.fba-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin-top:14px}.fba .cp-btn{padding:10px 20px;font-size:.95rem;text-decoration:none}.fba .cp-btn:not(.is-primary){border-color:#0b3550;color:#0b3550}.fba .cp-btn:not(.is-primary):hover{background:hsla(0,0%,100%,.4)}.fba .fba-never{color:rgba(11,53,80,.7);font-size:.85rem}.fba.is-strip{align-items:center;max-width:none;margin:0 0 18px;padding:12px 16px}.fba-strip-text{flex:1 1;min-width:0;margin:0;display:flex;flex-direction:column;gap:2px;font-size:.92rem}.fba-strip-text span{color:rgba(11,53,80,.75);font-size:.85rem}.fba.is-strip .fba-actions{margin-top:0}@media (max-width:640px){.fba{padding:16px;gap:12px}.fba-icon{width:36px;height:36px}.fba:not(.is-strip) .fba-icon{display:none}.fba-actions .cp-btn{flex:1 1 auto;text-align:center;min-height:44px}.fba.is-strip{flex-wrap:wrap}.fba.is-strip .fba-actions{flex-basis:100%}}.ei-pick{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:10px}.ei-file{cursor:pointer}.ei-fname{font-size:.85rem;color:var(--muted);overflow-wrap:anywhere;min-width:0}.ei-filter{margin-top:10px}.ei-apply{margin-top:12px}.ei-list{list-style:none;margin:12px 0 0;padding:0}.ei-kid{padding:10px 0;border-top:1px solid var(--line)}.ei-kid>ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.ei-row{display:flex;align-items:flex-start;gap:8px;font-size:.88rem}.ei-text{min-width:0;overflow-wrap:anywhere}.ei-note,.ei-why{color:var(--muted)}.ei-note{display:block;font-size:.8rem}.ei-badge{flex:none;padding:2px 8px;border-radius:var(--pill);font-size:.72rem;font-weight:700;white-space:nowrap;background:var(--surface-2);color:var(--ink)}.ei-join{background:#2e9e5b;color:#fff}.ei-leave{background:var(--coral);color:#fff}.ei-error{background:var(--danger);color:#fff}.ei-notion{background:var(--sky-tint,var(--surface-2))}.mb{--mb-lane:104px}.mb-bar{display:flex;flex-wrap:wrap;gap:8px 14px}.mb-seg{display:inline-flex;flex-wrap:wrap;gap:4px}.mb-seg-b{border:1px solid var(--line);border-radius:999px;padding:4px 10px;background:var(--surface);color:var(--ink);font:inherit;font-size:.8rem;font-weight:600;cursor:pointer;min-height:32px}.mb-seg-b.is-on{background:var(--ink);border-color:var(--ink);color:var(--surface)}.mb-seg-b:disabled{cursor:default;opacity:.8}.mb-grid-wrap{overflow-x:auto;padding-bottom:6px}.mb-grid{display:grid;grid-gap:0;gap:0;width:max-content;min-width:100%}.mb-grid:not(.is-week){width:100%}.mb-row{display:contents}.mb-corner{position:-webkit-sticky;position:sticky;left:0;z-index:2;background:var(--home-bg,var(--bg))}.mb-dayh{padding:6px 8px;border:0;border-left:2px solid var(--line-strong);background:none;color:var(--ink);font:inherit;font-weight:700;font-size:.86rem;text-align:left;cursor:pointer}.mb-dayh:hover{text-decoration:underline}.mb-laneh{padding:2px 6px 4px;color:var(--muted);font-size:.7rem;font-weight:700;border-bottom:1px solid var(--line)}.mb-laneh.is-first{border-left:2px solid var(--line-strong)}.mb-timeh{position:-webkit-sticky;position:sticky;left:0;z-index:2;display:flex;flex-direction:column;padding:8px 6px 8px 0;background:var(--home-bg,var(--bg));color:var(--ink);font-size:.78rem;font-weight:700;border-bottom:1px solid var(--line)}.mb-timeh small{color:var(--muted);font-weight:500}.mb-timeh.is-anchor{padding-top:3px;padding-bottom:3px;color:var(--muted);font-size:.7rem}.mb-anchor{padding:3px 8px;background:var(--surface-2);color:var(--muted);font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mb-anchor,.mb-cell{border-left:2px solid var(--line-strong);border-bottom:1px solid var(--line)}.mb-cell{display:grid;grid-auto-flow:row dense;align-content:start;grid-gap:4px;gap:4px;min-height:84px;padding:4px;background-image:linear-gradient(to right,var(--line) 1px,transparent 1px);background-repeat:repeat-x}.mb-cell.is-target{cursor:pointer;background-color:var(--surface)}.mb-cell.is-over{background-color:var(--sky-tint);box-shadow:inset 0 0 0 2px var(--coral)}.mb-cell-prev{grid-column:1/-1}.mb-prev{display:block;font-size:.68rem;line-height:1.25;padding:2px 6px}.mb-chip{gap:4px;padding:5px 7px;border-radius:10px;min-width:0}.mb-chip .ob-chip-body b{font-size:.76rem}.mb-chip-t{-webkit-line-clamp:3;overflow:hidden;overflow-wrap:anywhere}.mb-chip .ob-chip-body small,.mb-chip-t{display:-webkit-box;-webkit-box-orient:vertical}.mb-chip .ob-chip-body small{font-size:.68rem;-webkit-line-clamp:2;overflow:hidden}.mb-chip-g{color:var(--muted);font-size:.68rem;font-weight:600}.mb-chip .ob-warn{font-size:.64rem;padding:0 4px}.ob-pool .mb-chip .ob-chip-body b{font-size:.84rem}.ob-warn.is-r{background:#fde9d4;color:#8a4a0c}.ob-chip.is-room-clash{border-color:#e88a2e;box-shadow:inset 0 0 0 1px #e88a2e}:root[data-theme=dark] .ob-warn.is-r{background:#3d2a16;color:#f5b77a}.mb-dlg-slot{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:8px;margin-bottom:12px;text-align:left}.mb-dlg-slot input,.mb-dlg-slot select{min-height:36px;max-width:100%}.mb-dlg-slot input{flex:1 1;min-width:160px}.mb-imp{max-width:640px}.mb-imp-paste{width:100%;margin-top:10px;font:inherit;font-size:.85rem;resize:vertical;box-sizing:border-box}.mb-imp-list{max-height:42vh;overflow:auto}.mb-imp-list .ei-row{padding:6px 0;border-top:1px solid var(--line)}@media (max-width:720px){.mb-layout{grid-template-columns:1fr}.mb-grid:not(.is-week){width:max-content;min-width:100%}.mb-cell{min-height:64px}}.jl-wrap{padding-top:20px}.jl-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:4px 0 10px}.jl-search{flex:1 1 240px;min-width:0}.jl-bar .dm-btn{text-decoration:none;white-space:nowrap}.jl-chips{margin-bottom:12px}.jl-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:10px;gap:10px}.jl-card{width:100%;height:100%;display:flex;flex-direction:column;gap:6px;text-align:left;padding:14px 16px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);font:inherit;cursor:pointer}.jl-card:focus-visible,.jl-card:hover{border-color:var(--ink)}.jl-card b{font-size:1rem}.jl-card b,.jl-sub{overflow-wrap:anywhere}.jl-sub{font-size:.88rem;color:var(--ink);opacity:.8}.jl-card small{color:var(--muted);font-size:.8rem}.jl-view{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;background:var(--bg,var(--surface))}.jl-view-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 16px;border-bottom:1.5px solid var(--line);background:var(--surface)}.jl-view-bar b{flex:1 1 200px;min-width:0;overflow-wrap:anywhere}.jl-view-bar .dm-btn{text-decoration:none}.jl-frame{flex:1 1;width:100%;border:0;background:#fff}.jl-day{margin-bottom:18px}.jl-day-h{margin:0 0 8px;font-size:1rem}.jl-day .hs-sub{margin:-4px 0 8px}.jl-date{max-width:220px}@media (max-width:560px){.jl-list{grid-template-columns:1fr}.jl-date{max-width:none}}.su{display:grid;grid-gap:10px;gap:10px;margin-top:22px}.su .md-h{margin-bottom:0}.su-seg{max-width:100%}.su-ico{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:var(--surface-2);font-size:1.05rem}.su-kind{font-weight:600;color:var(--muted)}.su-more{justify-self:start}.su .hc-none .md-link,.su .su-more{margin-left:4px;padding:5px 13px;border:0;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}.su .su-more{margin-left:0}.su .hc-none .md-link:hover,.su .su-more:hover{background:var(--line)}.su-chips{max-height:320px;overflow-y:auto}.jl-li{position:relative}.jl-li .jl-card{padding-right:48px}.jl-edit-btn{position:absolute;top:8px;right:8px;display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;background:var(--surface-2);color:var(--ink);font:inherit;font-size:1rem;cursor:pointer}.jl-edit-btn:focus-visible,.jl-edit-btn:hover{background:var(--ink);color:var(--surface)}.jl-pending{align-self:flex-start;padding:2px 9px;border-radius:var(--pill);background:color-mix(in srgb,var(--coral) 14%,var(--surface));color:var(--coral-600,var(--coral));font-size:.74rem;font-style:normal;font-weight:700}.jl-form{display:grid;grid-gap:12px;gap:12px;margin-top:12px}.jl-file,.jl-form label{display:grid;grid-gap:4px;gap:4px;min-width:0}.jl-file>span,.jl-form label>span{color:var(--muted);font-size:.8rem;font-weight:700}.jl-form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.jl-form-acts{display:flex;flex-wrap:wrap;gap:8px}.jl-code,.jl-del{display:grid;grid-gap:10px;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.jl-code h3{margin:0;font-size:1rem}.jl-code .hs-sub,.jl-del p{margin:0}.jl-code .dm-btn{justify-self:start}.jl-file input{max-width:100%;color:var(--ink);font:inherit;font-size:.86rem}.jl-del .dm-link{justify-self:start}.dm-btn.is-danger{border-color:var(--coral-600,var(--coral));background:var(--coral-600,var(--coral));color:#fff}.jl-ok{margin:10px 0 0;color:var(--ok);font-size:.9rem}@media (max-width:560px){.jl-form-row{grid-template-columns:1fr}}.ib-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin:0 0 14px}.ib-bar>.as-scope{margin:0}.ib-streams{display:flex;gap:4px;margin:0 0 12px;border-bottom:1.5px solid var(--line);overflow-x:auto;scrollbar-width:none}.ib-streams::-webkit-scrollbar{display:none}.ib-stream{display:inline-flex;flex:none;align-items:center;gap:7px;margin-bottom:-1.5px;padding:10px 14px;border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);font:inherit;font-size:.95rem;font-weight:700;white-space:nowrap;cursor:pointer}.ib-stream:hover{color:var(--ink)}.ib-stream.is-on{border-bottom-color:var(--ink);color:var(--ink)}.ib-stream-n{min-width:20px;padding:1px 7px;border-radius:var(--pill);background:var(--seg-bg);color:var(--ink);font-size:.74rem;text-align:center}.ib-stream-n.is-hot{background:var(--coral);color:#fff}.ib-tab-s{display:none}.ib-status{margin:0 0 12px}.ib-fb{max-width:860px}.ib-st{display:inline-block;padding:2px 9px;border-radius:var(--pill);font-size:.74rem;font-weight:700;white-space:nowrap}.ib-st.is-wait{background:var(--warn-soft);color:var(--warn-ink)}.ib-st.is-ok{background:var(--ok-soft);color:var(--ok)}.ib-st.is-fb{background:var(--ans-fb-soft);color:var(--ans-fb-ink)}.ib-link{position:absolute;top:12px;right:12px;padding:3px 10px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.78rem;font-weight:700;text-decoration:none}.ib-link:hover{background:var(--seg-bg)}.ibc{scroll-margin-top:76px;display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);height:max(460px,calc(100dvh - 96px));border:1.5px solid var(--line);border-radius:22px;background:var(--surface);overflow:hidden}.ibc-list{min-height:0;overflow-y:auto;overscroll-behavior:contain;border-right:1.5px solid var(--line)}.ibc-search{position:-webkit-sticky;position:sticky;top:0;z-index:1;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--surface)}.ibc-search input{box-sizing:border-box;width:100%;height:38px;padding:0 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font:inherit;font-size:.9rem}.ibc-search input:focus{outline:none;border-color:var(--ink);background:var(--surface)}.ibc-row{display:flex;align-items:center;gap:12px;box-sizing:border-box;width:100%;padding:12px 14px;border:0;border-bottom:1px solid var(--line);background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.ibc-row:hover{background:var(--surface-2)}.ibc-row.is-on{background:var(--seg-bg)}.ibc-row>.as-avatar{flex:none}.ibc-row-main{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.ibc-row-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.ibc-row-top b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800}.ibc-row-top time{flex:none;color:var(--muted);font-size:.74rem}.ibc-row-last,.ibc-row-task{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.84rem}.ibc-row-task{font-weight:700}.ibc-row-task span{color:var(--muted);font-weight:600}.ibc-row-last{color:var(--muted)}.ibc-row-last i{font-style:normal;color:var(--ok)}.ibc-row.is-new .ibc-row-last,.ibc-row.is-new .ibc-row-top b{color:var(--ink)}.ibc-dot{min-width:22px;padding:2px 7px;border-radius:var(--pill);background:var(--coral);color:#fff;font-size:.74rem;font-weight:800;text-align:center;box-sizing:border-box}.ibc-dot,.ibc-row>.ib-st{flex:none}.ibc-empty{margin:0;padding:40px 20px;color:var(--muted);text-align:center}.ibc-pane{display:flex;min-width:0;min-height:0;background:var(--surface-2)}.ibc-placeholder{display:flex;flex:1 1;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:24px;color:var(--muted);text-align:center}.ibc-placeholder p{margin:0;color:var(--ink);font-weight:800;font-size:1.05rem}.ibc-thread{display:flex;flex:1 1;flex-direction:column;min-width:0;min-height:0}.ibc-head{display:flex;align-items:center;gap:12px;min-height:64px;box-sizing:border-box;padding:10px 16px;border-bottom:1px solid var(--line);background:var(--surface)}.ibc-head>.as-avatar{flex:none}.ibc-back{display:none;flex:none;place-items:center;width:36px;height:36px;margin-left:-4px;border:0;border-radius:50%;background:none;color:var(--ink);cursor:pointer}.ibc-back:hover{background:var(--surface-2)}.ibc-head-main{flex:1 1;min-width:0}.ibc-head-main p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibc-head-name{font-weight:800}.ibc-head-name span{color:var(--muted);font-weight:600;font-size:.84rem}.ibc-head-task{color:var(--ink);font-size:.84rem;font-weight:600}.ibc-head-task span{color:var(--muted)}.ibc-open{flex:none;padding:6px 12px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.8rem;font-weight:700;text-decoration:none;white-space:nowrap}.ibc-open:hover{background:var(--seg-bg)}.ibc-body{display:flex;flex:1 1;flex-direction:column;gap:12px;min-height:0;padding:14px 16px 0;overflow-y:auto;overscroll-behavior:contain}.ibc-body .trc{flex:1 0 auto}.ibc-body .trc-compose{bottom:0;padding-bottom:14px}.trc-about{display:flex;align-items:center;gap:6px;margin:0 0 2px 4px;color:var(--muted);font-size:.74rem;font-weight:700}.trc-about a{color:var(--ink);text-decoration:none}.trc-start{margin:auto 0;padding:24px 12px;color:var(--muted);font-size:.88rem;text-align:center}.trc-compose .chat-pills{margin:0}.tr-peek{display:none}.tr-peek.is-always{display:block;flex:none;border:1px solid var(--line);border-radius:14px;padding:10px 14px;background:var(--surface)}.tr-peek summary{display:flex;flex-direction:column;gap:2px;cursor:pointer;list-style:none}.tr-peek summary::-webkit-details-marker{display:none}.tr-peek-k{color:var(--muted);font-size:.76rem;font-weight:700}.tr-peek-more{color:var(--coral-600);font-size:.8rem;font-weight:700}.tr-peek[open] summary{margin-bottom:8px}.tr-peek .tr-frame{width:100%;border:0;border-radius:10px}.tr-earlier{border:1px solid var(--line);border-radius:12px;padding:8px 12px;background:var(--surface)}.tr-earlier summary{cursor:pointer;color:var(--muted);font-size:.84rem;font-weight:700}.tr-earlier-item{margin-top:10px}.tr-earlier-fb{margin:6px 0 0 16px;padding:6px 10px;border-left:3px solid var(--ans-fb);border-radius:0;font-size:.9rem}.tr-earlier-fb p{margin:0}.ibc.is-compact{display:flex;flex:1 1;min-height:0;height:auto;border:0;border-radius:0}.ibc.is-compact .ibc-list{flex:1 1;border-right:0}.ibc.is-compact .ibc-pane,.ibc.is-compact.has-sel .ibc-list{display:none}.ibc.is-compact.has-sel .ibc-pane{display:flex;flex:1 1}.ibc.is-compact .ibc-back{display:grid}.ibc.is-compact .ibc-head{padding:8px 12px;gap:10px}.ibc.is-compact .ibc-body{padding:12px 12px 0}.ibc.is-compact .trc-compose textarea{min-height:56px}.ibc.is-compact .trc-hint{display:none}.ibp{display:flex;flex-direction:column;overflow:hidden}.ibp-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px 10px}.ibp-expand{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:var(--pill);background:var(--surface-2);color:var(--ink);font-size:.78rem;font-weight:700;text-decoration:none}.ibp-expand:hover{background:var(--seg-bg)}.ibp .as-scope.is-compact{margin:0 12px 8px}.ibp-tabs{display:flex;flex:none;gap:2px;padding:0 8px;border-bottom:1.5px solid var(--line);overflow-x:auto;scrollbar-width:none}.ibp-tabs::-webkit-scrollbar{display:none}.ibp-tabs button{display:inline-flex;flex:none;align-items:center;gap:6px;margin-bottom:-1.5px;padding:9px 8px;border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);font:inherit;font-size:.84rem;font-weight:700;white-space:nowrap;cursor:pointer}.ibp-tabs button.is-on{border-bottom-color:var(--ink);color:var(--ink)}.ibp-tabs button span{min-width:18px;padding:0 6px;border-radius:var(--pill);background:var(--seg-bg);color:var(--ink);font-size:.7rem;text-align:center}.ibp-tabs button span.is-hot{background:var(--coral);color:#fff}.ibp-note{display:flex;justify-content:space-between;margin:0;padding:8px 14px;border-bottom:1px solid var(--line);color:var(--muted);font-size:.78rem;font-weight:700}.ibp-note a{color:var(--ink);text-decoration:none}.ibp .sfc-folders,.ibp>.tc-list{flex:1 1;min-height:0}.ibp-convo-head{min-height:0}.ibp-convo-head .ibc-back{display:grid}.ibp.is-convo .as-scope.is-compact{display:none}.stc-inbox-h{margin:12px 14px 0;color:var(--muted);font-size:.76rem;font-weight:700}.sfc-sec+.sfc-sec{margin-top:6px}.sfc-task-row{position:relative;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);margin:6px 0 0}.sfc-task-main{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;padding:10px 92px 10px 12px;border:0;background:none;color:var(--ink);font:inherit;text-align:left;border-radius:14px;cursor:pointer}.sfc-task-main:disabled{cursor:default;color:var(--ink);opacity:1}.sfc-task-k{color:var(--muted);font-size:.74rem;font-weight:700}.sfc-task-main b{font-size:.9rem;line-height:1.3;overflow-wrap:anywhere}.sfc-task-link{top:10px;right:10px}.sfc-more{display:block;margin:12px 0 4px;color:var(--coral-600);font-size:.84rem;font-weight:700;text-decoration:none}a.sfc-folder{text-decoration:none;color:inherit}.stc-tabs button{white-space:nowrap}@media (max-width:420px){.stc-tabs button{padding:6px;font-size:.8rem}}@media (max-width:760px){.ib-bar{flex-wrap:nowrap;gap:8px}.ib-bar>.as-scope{display:flex;flex:1 1;flex-wrap:nowrap;min-width:0}.ib-bar>.as-scope button{flex:1 1;justify-content:center;min-width:0;padding:7px 6px;font-size:.82rem;white-space:nowrap}.ib-streams{gap:0;margin:0 -16px 10px;padding:0 10px}.ib-stream{padding:10px 8px;gap:5px;font-size:.9rem}.ib-tab-l{display:none}.ib-tab-s{display:inline}.ib-status{margin:0 0 10px}.ibc{grid-template-columns:minmax(0,1fr);height:auto;margin:0 -16px;border-width:1.5px 0 0;border-radius:0}.ibc-list{border-right:0}.ibc-search{padding:10px 16px}.ibc-row{padding:12px 16px}.ibc-pane,.ibc.has-sel .ibc-list{display:none}.ibc.has-sel .ibc-pane{display:flex;height:calc(100dvh - 64px)}.ibc-back{display:grid}.ibc-head{gap:10px;padding:8px 12px;min-height:60px}.ibc-body{padding:12px 12px 0}.ibc .trc-hint{display:none}.ib:has(.ibc.has-sel){padding-top:0!important}.ib:has(.ibc.has-sel)>:not(.ibc){display:none}.ib .ibc.has-sel{margin-top:0;border-top:0}body:has(.ib .ibc.has-sel) .tc-fab{display:none}.ibc.is-compact{margin:0;border:0}.ibc.is-compact.has-sel .ibc-pane{height:auto}.ibc.is-compact .ibc-row,.ibc.is-compact .ibc-search{padding-left:14px;padding-right:14px}.tr.is-review .tr-switch,.tr.is-review .tr-task{display:none}.tr.is-review .tr-ans{display:flex}.tr-peek{display:block;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--surface)}.tr-peek .as-task-link{display:inline-block;margin-top:8px}}.ibp-tabs i{font-style:normal}.ibp-tab-s{display:none}@media (max-width:480px){.ibp-tabs{justify-content:space-between;padding:0 4px}.ibp-tabs button{padding:9px 5px;gap:4px;font-size:.8rem}.ibp-tab-l{display:none}.ibp-tab-s{display:inline}}.ib-bar,.ib-fwrap{position:relative}.ib-fwrap{margin-left:auto}.ib-filter-btn{display:inline-flex;align-items:center;gap:8px;height:40px;box-sizing:border-box;padding:0 16px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.88rem;font-weight:700;cursor:pointer}.ib-filter-btn:hover,.ib-filter-btn[aria-expanded=true]{border-color:var(--ink)}.ib-filter-n{min-width:20px;padding:1px 6px;box-sizing:border-box;border-radius:var(--pill);background:var(--ink);color:var(--bg);font-size:.72rem;text-align:center}.ib-sheet-back{position:fixed;inset:0;z-index:229;background:transparent}.ib-filters{position:absolute;top:calc(100% + 8px);right:0;z-index:230;display:flex;flex-direction:column;gap:14px;width:340px;box-sizing:border-box;padding:16px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 12px 32px rgba(20,30,50,.16)}.ib-filters-head{display:flex;align-items:center;justify-content:space-between}.ib-filters-head p{margin:0;font-weight:800;font-size:1.02rem}.ib-reset{padding:0;border:0;background:none;color:var(--coral-600);font:inherit;font-size:.84rem;font-weight:700;cursor:pointer}.ib-fsec{display:flex;flex-direction:column;gap:6px}.ib-lab{color:var(--muted);font-size:.78rem;font-weight:700}.ib-filters .as-scope{display:flex;margin:0}.ib-filters .as-scope button{flex:1 1;justify-content:center;white-space:nowrap}.ib-course{box-sizing:border-box;width:100%;max-width:none}.ib-sheet-ok{width:100%}.ib-bar>.as-scope,.ibp .as-scope.is-compact{flex-wrap:nowrap}.ib-bar>.as-scope button,.ibp .as-scope.is-compact button{white-space:nowrap}@media (max-width:760px){.ib-fwrap{position:static;flex:none}.ib-filter-btn{padding:0 12px}.ib-sheet-back{background:var(--overlay)}.ib-filters{position:fixed;top:auto;left:0;right:0;bottom:0;width:auto;max-height:80vh;overflow-y:auto;padding:18px 16px calc(16px + env(safe-area-inset-bottom));border:0;border-radius:22px 22px 0 0;box-shadow:0 -8px 30px rgba(0,0,0,.18)}}.ibp .as-scope.is-compact button span{display:none}.ibp .as-scope.is-compact button{padding:6px 4px}.ibp-tabs{justify-content:space-between;padding:0 6px}.ibp-tabs button{padding:10px 5px;font-size:.82rem}.ibp-tabs button:focus{outline:none}.ibp-tabs button:focus-visible{outline:2px solid var(--ink);outline-offset:-2px;border-radius:6px}@media (max-width:760px){.ib-bar>.as-scope button span{display:none}.ib-bar>.as-scope button{padding:7px 4px;font-size:.8rem}.ib-filter-btn{position:relative;justify-content:center;width:40px;padding:0}.ib-filter-l{display:none}.ib-filter-n{position:absolute;top:-5px;right:-5px;min-width:18px;padding:1px 5px;font-size:.68rem}.ib-streams{justify-content:space-between;padding:0 8px}.ib-stream{padding:10px 5px;gap:4px;font-size:.86rem}.ib-stream-n{min-width:18px;padding:1px 5px;font-size:.7rem}.ib-status{flex-wrap:nowrap;gap:6px}.ib-status .as-filter{padding:6px 11px;font-size:.82rem}}.ccf-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0 0 14px}.ccf-count{margin:0;color:var(--muted);font-size:.9rem}.ccf-count b,.ccf-only{color:var(--ink)}.ccf-only{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:.88rem;font-weight:600;letter-spacing:normal;text-transform:none;cursor:pointer}.ccf-all{margin-left:auto;font-size:.86rem}.ccf-list{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}.ccf-row{display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr);grid-gap:16px;gap:16px;padding:14px 16px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface)}.ccf-row.is-done{background:var(--surface-2)}.ccf-row.is-left{opacity:.75}.ccf-kid{align-items:flex-start;gap:10px}.ccf-kid,.ccf-kid>div{display:flex;min-width:0}.ccf-kid>div{flex-direction:column}.ccf-kid b{font-weight:800;overflow-wrap:anywhere}.ccf-kid span{color:var(--muted);font-size:.8rem}.ccf-main{display:flex;flex-direction:column;gap:10px;min-width:0}.ccf-fb{padding:10px 12px;border-radius:12px;background:var(--surface);border:1px solid var(--line)}.ccf-text{margin:0 0 6px;white-space:pre-wrap;line-height:1.5;overflow-wrap:anywhere}.ccf-fb-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 12px}.ccf-meta{display:inline-flex;align-items:center;gap:6px;margin:0;color:var(--muted);font-size:.78rem}.ccf-ava{position:relative;display:inline-grid;place-items:center;flex:none;width:20px;height:20px;border-radius:50%;background:var(--seg-bg);color:var(--ink);font-size:.6rem;font-weight:800;overflow:hidden}.ccf-ava img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ccf-edit textarea{box-sizing:border-box;width:100%;min-height:56px;padding:10px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;font-size:.92rem;line-height:1.5;resize:none}.ccf-edit textarea:focus{outline:none;border-color:var(--ink)}.ccf-edit-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:8px}.ccf-hint{margin-left:auto;color:var(--muted);font-size:.74rem}.ccf-add{align-self:flex-start;font-size:.84rem}@media (max-width:760px){.ccf-row{grid-template-columns:minmax(0,1fr);gap:10px;padding:12px}.ccf-all{margin-left:0}.ccf-hint{display:none}}.ccf-note{margin:-4px 0 12px}.les-fold-link{margin-left:6px;display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;padding:0 6px;border:0;border-radius:8px;background:none;color:var(--muted);opacity:.55;font-family:var(--font-sans);font-size:.74rem;font-weight:600;white-space:nowrap;cursor:pointer;transition:opacity .12s ease,background .12s ease}.les-fold-link:focus-visible,.les-fold-link:hover{opacity:1;background:var(--surface-2);color:var(--ink)}.les-fold-link.is-ok{opacity:1;color:var(--ok)}@supports (-webkit-touch-callout:none){input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),select,textarea{font-size:max(16px,1em)}}.kv-wrap{--cm-idea:var(--muted);--cm-progress:#3567ad;--cm-review:#c98a12;--cm-ready:#1e8e5a;--cm-published:var(--space-comms);max-width:1180px}.portal:has(.kv-wrap) .topbar-inner{max-width:1180px}.portal-shell:has(.kv-wrap) .portal-footer-inner{max-width:1180px}:root[data-theme=dark] .kv-wrap{--cm-progress:#8ec7ed;--cm-review:#f0c674;--cm-ready:#62d6a0}.kvst-idea{--st:var(--cm-idea)}.kvst-progress{--st:var(--cm-progress)}.kvst-review{--st:var(--cm-review)}.kvst-concept{--st:#c0563b}.kvst-archive{--st:var(--line-strong)}.kvst-ready{--st:var(--cm-ready)}.kvst-published{--st:var(--cm-published)}.kv-dot{flex:none;display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--st,var(--muted))}.kv-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:8px 0 18px}.kv-h1{margin:0;font-family:var(--font-display);font-size:1.7rem;font-weight:700;color:var(--ink)}.kv-sub{margin:6px 0 0;color:var(--muted);font-size:.95rem}.kv-new{flex:none}.kv-error{margin:0 0 12px;padding:10px 14px;border-radius:12px;background:var(--danger-soft);color:var(--danger-ink);font-size:.92rem}.kv-bar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;margin-bottom:10px}.kv-bar,.kv-month{align-items:center}.kv-month{display:inline-flex;gap:2px}.kv-month-l{min-width:8.5em;text-align:center;font-weight:800;font-size:1rem;color:var(--ink)}.kv-nav{width:30px;height:30px;border:0;border-radius:8px;background:none;color:var(--muted);font:inherit;font-size:1.25rem;line-height:1;cursor:pointer}.kv-nav:hover{background:var(--surface-2);color:var(--ink)}.kv-today{margin-left:4px;padding:5px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}.kv-tools{display:flex;flex-wrap:wrap}.kv-f,.kv-tools{align-items:center;gap:4px}.kv-f{position:relative;display:inline-flex;height:30px;padding:0 9px;border-radius:8px;color:var(--muted)!important;font-size:.85rem!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important;cursor:pointer;white-space:nowrap}.kv-f span{max-width:11em;overflow:hidden;text-overflow:ellipsis}.kv-f:hover{background:var(--surface-2)}.kv-f.is-on,.kv-f:hover{color:var(--ink)!important}.kv-f.is-on{background:color-mix(in srgb,var(--space-comms) 12%,var(--surface))}.kv-f select{position:absolute;inset:0;width:100%;opacity:0;font-size:16px;cursor:pointer}.kv-f:focus-within{outline:2px solid var(--ink);outline-offset:1px}.kv-views{margin-left:6px}.kv-views button{padding:4px 11px;font-size:.82rem}.kv-skeleton{height:520px;border-radius:var(--radius);background:var(--surface-2)}.kv-cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--line);grid-gap:1px;gap:1px}.kv-wd{padding:8px 10px;background:var(--surface-2);color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.kv-day{position:relative;min-height:116px;padding:6px 6px 8px;background:var(--surface);cursor:pointer;min-width:0}.kv-day.is-weekend{background:color-mix(in srgb,var(--surface-2) 45%,var(--surface))}.kv-day.is-out{background:var(--surface-2)}.kv-day.is-out .kv-day-n{color:var(--muted);opacity:.6}.kv-day.is-drop:hover{background:color-mix(in srgb,var(--space-comms) 10%,var(--surface))}.kv-day-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.kv-day-n{display:inline-grid;place-items:center;min-width:26px;height:26px;padding:0 4px;border-radius:13px;font-size:.86rem;font-weight:700;color:var(--ink)}.kv-day.is-today .kv-day-n{background:var(--space-comms);color:#fff}.kv-day-add{width:24px;height:24px;border:0;border-radius:50%;background:var(--surface-2);color:var(--muted);font:inherit;font-size:.85rem;line-height:1;cursor:pointer;opacity:0;transition:opacity .12s}.kv-day-add:focus-visible,.kv-day:hover .kv-day-add{opacity:1}.kv-day-add:hover{color:var(--ink);background:var(--line)}.kv-chips{display:flex;flex-direction:column;gap:3px}.kv-chip{display:grid;grid-gap:5px;gap:5px;width:100%;min-width:0;padding:6px 8px 7px;border:0;border-radius:6px;background:var(--surface);box-shadow:0 0 0 1px hsla(0,0%,6%,.08),0 2px 4px hsla(0,0%,6%,.08);color:var(--ink);font:inherit;text-align:left;cursor:pointer}:root[data-theme=dark] .kv-chip{background:var(--surface-2);box-shadow:0 0 0 1px hsla(0,0%,100%,.08)}.kv-chip:hover{box-shadow:0 0 0 1px hsla(0,0%,6%,.12),0 4px 10px hsla(0,0%,6%,.12)}.kv-chip[draggable=true]{cursor:-webkit-grab;cursor:grab}.kv-chip-l{display:flex;align-items:baseline;gap:6px;min-width:0;font-size:.8rem;font-weight:600;line-height:1.3}.kv-chip-l .kv-dot{flex:none;width:7px;height:7px;transform:translateY(-1px)}.kv-chip-l>span:last-child{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.kv-chip-t{color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kv-chip-tags{display:flex;flex-wrap:wrap;gap:3px}.kv-chip-tags span{padding:0 6px;border-radius:3px;background:hsla(40,5%,88%,.7);color:#32302c;font-size:.7rem;font-weight:500;line-height:1.55;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.kv-chip-tags.is-role span{background:rgba(211,229,239,.8);color:#183347}:root[data-theme=dark] .kv-chip-tags span{background:hsla(0,0%,100%,.1);color:var(--text)}.kv-chip-who{display:flex;padding-left:2px}.kv-chip-who .kv-ava+.kv-ava{margin-left:-4px}.kv-ava{position:relative;flex:none;display:inline-grid;place-items:center;overflow:hidden;border-radius:50%;background:color-mix(in srgb,var(--space-comms) 18%,var(--surface));color:color-mix(in srgb,var(--space-comms) 70%,var(--ink));box-shadow:0 0 0 1.5px var(--surface);font-weight:800;line-height:1}.kv-ava img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.kv-person{display:inline-flex;align-items:center;gap:8px}.kvst-archive.kv-chip,.kvst-published.kv-chip{opacity:.7}.kv-count{display:none}.kv-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:10px 2px 0;padding:0;list-style:none;color:var(--muted);font-size:.82rem}.kv-legend li{display:inline-flex;align-items:center;gap:6px}.kv-picked{display:none}.kv-picked,.kv-undated{margin-top:26px}.kv-sec-h{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.kv-sec-h h2{margin:0;font-size:1.05rem;font-weight:800;color:var(--ink)}.kv-n{margin-left:4px;color:var(--muted);font-weight:700}.kv-link{white-space:nowrap;padding:6px 2px;border:0;background:none;color:var(--ink);font:inherit;font-size:.9rem;font-weight:700;text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:3px;cursor:pointer}.kv-link:hover{-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.kv-empty{margin:0;color:var(--muted);font-size:.92rem}.kv-empty-box{display:grid;justify-items:center;grid-gap:12px;gap:12px;padding:40px 16px;border:1.5px dashed var(--line-strong);border-radius:var(--radius);color:var(--muted);text-align:center}.kv-empty-box p,.kv-nl{margin:0}.kv-nl{padding:0;list-style:none;border-top:1px solid var(--line)}.kv-nl>li{border-bottom:1px solid var(--line)}.kv-nr{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;width:100%;min-height:40px;padding:6px;border:0;border-radius:4px;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.kv-nr:hover{background:var(--surface-2)}.kv-nl-li{display:flex;align-items:flex-start;gap:2px}.kv-nl-li>.kv-emo{margin-top:6px}.kv-nl-li>.kv-nr{flex:1 1;min-width:0}.kv-emo{position:relative;flex:none;display:inline-flex}.kv-emo-btn{display:inline-grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:6px;background:none;color:var(--muted);font:inherit;font-size:1.05rem;line-height:1;cursor:pointer}.kv-emo-btn svg{opacity:.8}.kv-emo-btn:hover{background:var(--surface-2);color:var(--ink)}.kv-emo.is-big .kv-emo-btn{width:40px;height:40px;font-size:1.6rem;border-radius:8px}.kv-emo-pop{position:absolute;top:calc(100% + 4px);left:0;z-index:30;width:272px;padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-lg)}.kv-emo-grid{display:grid;grid-template-columns:repeat(8,1fr);grid-gap:2px;gap:2px}.kv-emo-grid button{aspect-ratio:1;padding:0;border:0;border-radius:6px;background:none;font-size:1.15rem;line-height:1;cursor:pointer}.kv-emo-grid button.is-on,.kv-emo-grid button:hover{background:var(--surface-2)}.kv-emo-foot{display:flex;align-items:center;gap:8px;margin-top:8px;padding-top:8px;border-top:1px solid var(--line)}.kv-emo-foot input{flex:1 1;min-width:0;padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit;font-size:16px}.kv-title-row{display:flex;align-items:flex-start;gap:8px}.kv-title-row>.kv-title-in,.kv-title-row>.kv-v-title{flex:1 1;min-width:0;padding-top:4px}.kv-nr-t{display:flex;align-items:center;gap:7px;flex:1 1 16em;min-width:0;font-size:.94rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kv-nr-t .kv-dot{width:7px;height:7px}.kv-nr-props{display:flex;flex:0 1 auto;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:4px 14px;max-width:100%;margin-left:auto;color:var(--muted);font-size:.84rem;white-space:nowrap}.kv-nr-date{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kv-nr-date.is-today{color:var(--ink);font-weight:700}.kv-nr-person{gap:6px;color:var(--ink)}.kv-nr-people,.kv-nr-person{display:inline-flex;align-items:center}.kv-nr-people{gap:14px}.kv-nr-people:empty{display:none}.kv-nr-props.is-avas .kv-nr-people{gap:0}.kv-nr-props.is-avas .kv-nr-person+.kv-nr-person{margin-left:-4px}.kv-week+.kv-week{margin-top:26px}.kv-week-h{display:flex;align-items:baseline;gap:10px;margin:0 0 6px}.kv-week-t{font-family:var(--font-display);font-size:1.15rem;font-weight:700;color:var(--ink);white-space:nowrap}.kv-week-d{color:var(--muted);font-size:.86rem;white-space:nowrap}.kv-week .kv-nl{border-top:0}.kv-week.is-later .kv-week-t{font-family:inherit;font-size:.9rem;color:var(--muted)}.kv-week.is-later .kv-nr{min-height:34px;padding-top:4px;padding-bottom:4px}.kv-week.is-later .kv-nr-t{font-size:.88rem;font-weight:500;color:var(--muted)}.kv-week.is-later .kv-nr-props{font-size:.8rem}.kv-week.is-later .kv-nl-li>.kv-emo{margin-top:3px}.kv-week-empty{padding:6px 6px 8px}.kv-nr-tag{padding:0 6px;border-radius:3px;background:rgba(211,229,239,.8);color:#183347;font-size:.8rem;line-height:1.55}:root[data-theme=dark] .kv-nr-tag{background:hsla(0,0%,100%,.1);color:var(--text)}.kv-nr.is-past .kv-nr-t,.kvst-archive.kv-nr .kv-nr-t,.kvst-published.kv-nr .kv-nr-t{color:var(--muted)}.kv-head-acts{display:flex;gap:8px;flex:none}.kv-boards{margin:-4px 0 20px}.kv-boards button{padding:6px 16px;font-size:.92rem}.kv-intake-left.is-soon{color:var(--coral-ink,var(--danger-ink));font-weight:700}.kv-back{display:inline-block;margin-bottom:4px;color:var(--muted);font-size:.88rem;font-weight:600;text-decoration:none}.kv-back:hover{color:var(--ink)}.kv-home{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(260px,1fr);grid-gap:28px;gap:28px;align-items:start}@media (max-width:980px){.kv-home{grid-template-columns:minmax(0,1fr)}}.kv-block{min-width:0}.kv-skeleton.is-short{height:220px}.kv-more{display:inline-block;margin-top:10px;color:var(--muted);font-size:.88rem;font-weight:600}.kv-intakes{display:grid;grid-gap:10px;gap:10px;margin:0;padding:0;list-style:none}.kv-intake{padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.kv-intake-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.kv-intake-name{font-weight:700;color:var(--ink);overflow-wrap:anywhere}.kv-intake-edit{flex:none;width:30px;height:30px;margin:-6px -8px 0 0;border:0;border-radius:50%;background:none;color:var(--muted);font:inherit;cursor:pointer}.kv-intake-edit:hover{background:var(--surface-2);color:var(--ink)}.kv-intake-num{margin-top:6px;color:var(--muted);font-size:.95rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kv-intake-num b{color:var(--ink);font-size:1.5rem;font-weight:800}.kv-intake-num span{font-size:.88rem}.kv-meter{height:6px;margin-top:8px;border-radius:3px;background:var(--surface-2);overflow:hidden}.kv-meter span{display:block;height:100%;border-radius:3px;background:var(--coral)}.kv-intake-err{margin:8px 0 0;color:var(--danger-ink);font-size:.86rem}.kv-intake-meta{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:10px;color:var(--muted);font-size:.84rem}.kv-intake-meta a{color:var(--muted);font-weight:600}.kv-intake-meta a:hover{color:var(--ink)}.kv-in-form{display:grid;grid-gap:12px;gap:12px;margin-bottom:12px;padding:14px 16px;border:1px solid var(--line-strong);border-radius:14px;background:var(--surface)}.kv-in-f{display:grid;grid-gap:4px;gap:4px;min-width:0;font-size:.86rem!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important;color:var(--muted)!important}.kv-in-f input{width:100%;min-width:0;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font:inherit;font-size:16px;font-weight:400}.kv-in-f small{font-weight:400;font-size:.8rem;line-height:1.35}.kv-in-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:10px;gap:10px}.kv-in-more summary{cursor:pointer;color:var(--muted);font-size:.86rem;font-weight:700}.kv-in-more[open]{display:grid;grid-gap:12px;gap:12px}.kv-in-check{font-size:.88rem!important;text-transform:none!important;letter-spacing:0!important;font-weight:500!important;color:var(--ink)!important}.kv-in-acts,.kv-in-check{display:flex;align-items:center;gap:8px}.kv-in-acts{flex-wrap:wrap}.kv-in-acts .kv-del{margin-left:auto}.kv-badge{display:inline-flex;align-items:center;gap:6px;padding:2px 9px;border-radius:var(--pill);background:color-mix(in srgb,var(--st) 14%,var(--surface));color:var(--ink);font-size:.78rem;font-weight:700}body.kv-lock{overflow:hidden}.kv-overlay{position:fixed;inset:0;z-index:200;display:flex;justify-content:flex-end;background:var(--overlay)}.kv-panel{display:flex;flex-direction:column;width:min(600px,100%);height:100%;background:var(--surface);box-shadow:var(--shadow-lg)}.kv-panel label{font-size:inherit;letter-spacing:0;text-transform:none;color:inherit;font-weight:inherit}.kv-panel-h{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px 12px 20px}.kv-panel-t{color:var(--muted);font-size:.9rem;font-weight:700}.kv-panel-acts{display:flex;align-items:center;gap:6px}.kv-x{flex:none;width:36px;height:36px;border:0;border-radius:50%;background:none;color:var(--muted);font:inherit;font-size:1rem;cursor:pointer}.kv-x:hover{background:var(--surface-2);color:var(--ink)}.kv-edit{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.88rem;font-weight:700;cursor:pointer}.kv-edit:hover{border-color:var(--ink)}.kv-status-pick{position:relative;display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:var(--pill);background:color-mix(in srgb,var(--st) 14%,var(--surface));color:var(--ink)!important;font-size:.86rem!important;font-weight:700!important;cursor:pointer}.kv-status-pick svg{color:var(--muted)}.kv-status-pick select{position:absolute;inset:0;width:100%;opacity:0;font-size:16px;cursor:pointer}.kv-status-pick:focus-within{outline:2px solid var(--ink);outline-offset:2px}.kv-panel-body{flex:1 1;overflow-y:auto;display:grid;align-content:start;grid-gap:18px;gap:18px;padding:4px 20px 24px}.kv-v-head{display:grid;grid-gap:8px;gap:8px}.kv-v-title{margin:0;font-family:var(--font-display);font-size:1.45rem;line-height:1.25;font-weight:700;color:var(--ink);overflow-wrap:anywhere}.kv-v-when{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0;color:var(--muted);font-size:.92rem}.kv-v-when>span:first-child{color:var(--text);font-weight:600;margin-right:4px}.kv-v-net{padding:2px 9px;border-radius:var(--pill);font-size:.8rem;font-weight:700}.kv-v-net,.kv-v-text{background:var(--surface-2);color:var(--text)}.kv-v-text{padding:16px 18px;border-radius:14px;font-size:.98rem;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.kv-v-empty{justify-self:start;padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:.92rem;text-align:left;cursor:pointer}.kv-v-empty u{color:var(--ink);text-underline-offset:3px}.kv-v-sec{display:grid;grid-gap:10px;gap:10px}.kv-v-links{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0;padding:0;list-style:none}.kv-v-links a{color:var(--ink);font-size:.9rem;font-weight:600;overflow-wrap:anywhere}.kv-props{display:grid;grid-gap:0;gap:0;margin:0;border-top:1px solid var(--line)}.kv-props>div{display:grid;grid-template-columns:130px 1fr;grid-gap:12px;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:.92rem}.kv-props dt{color:var(--muted)}.kv-props dd{margin:0;font-weight:600;min-width:0;overflow-wrap:anywhere}.kv-props a,.kv-props dd,.kv-title-in{color:var(--ink)}.kv-title-in{width:100%;padding:4px 0;border:0;background:none;font:inherit;font-family:var(--font-display);font-size:1.45rem;line-height:1.25;font-weight:700;outline:none;resize:none;overflow:hidden;min-height:calc(1.25em + 8px);box-sizing:border-box}.kv-title-in::placeholder{color:var(--muted);opacity:.6}.kv-text{width:100%;min-height:200px;padding:14px 16px;border:1.5px solid transparent;border-radius:14px;background:var(--surface-2);color:var(--text);font:inherit;font-size:16px;line-height:1.55;resize:vertical;outline:none}.kv-text:focus{border-color:var(--line-strong);background:var(--input-bg)}.kv-count-l{margin:-12px 0 0;color:var(--muted);font-size:.78rem;text-align:right}.kv-props-edit{display:grid;border-top:1px solid var(--line)}.kv-prop{display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;grid-gap:12px;gap:12px;min-height:46px;padding:5px 0;border-bottom:1px solid var(--line)}.kv-panel .kv-prop,.kv-prop{font-size:.92rem}.kv-prop>span{color:var(--muted)}.kv-prop input,.kv-prop select{width:100%;min-width:0;padding:7px 10px;border:1px solid transparent;border-radius:10px;background:none;color:var(--ink);font:inherit;font-size:16px;font-weight:600}.kv-prop input:hover,.kv-prop select:hover{background:var(--surface-2)}.kv-prop input:focus,.kv-prop select:focus{border-color:var(--line-strong);background:var(--input-bg);outline:none}.kv-prop input::placeholder{color:var(--muted);font-weight:500}.kv-prop-when{display:grid;grid-template-columns:minmax(0,1fr) 7.5em;grid-gap:6px;gap:6px}.kv-multi{display:flex;flex-wrap:wrap;padding:4px 0;min-width:0}.kv-multi,.kv-tag{align-items:center;gap:5px}.kv-tag{display:inline-flex;padding:3px 8px 3px 10px;border:0;border-radius:6px;background:var(--surface-2);color:var(--ink);font:inherit;font-size:.84rem;font-weight:600;cursor:pointer}.kv-tag span{color:var(--muted);font-size:.7rem}.kv-tag:hover span{color:var(--ink)}.kv-add select{width:auto!important;max-width:7.5em;min-width:0;padding:4px 8px!important;border:1px dashed var(--line-strong)!important;border-radius:6px!important;background:none;color:var(--muted)!important;font-size:14px!important;font-weight:600!important;cursor:pointer}.kv-nets{display:flex;flex-wrap:wrap;gap:5px;padding:4px 0}.kv-nets button{padding:4px 10px;border:1px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--muted);font:inherit;font-size:.8rem;font-weight:700;cursor:pointer}.kv-nets button:hover{color:var(--ink);border-color:var(--line-strong)}.kv-nets button.is-on{border-color:var(--ink);background:var(--ink);color:var(--surface)}.kv-files{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none}.kv-files li{position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden;background:var(--surface-2)}.kv-file-img{padding:0;border:0;background:none;cursor:zoom-in}.kv-file-img,.kv-file-img img{display:block;width:100%;height:100%}.kv-file-img img{object-fit:cover}.kv-file-doc{display:grid;place-content:center;justify-items:center;grid-gap:6px;gap:6px;width:100%;height:100%;padding:10px;color:var(--ink);font-size:1.6rem;text-decoration:none;text-align:center}.kv-file-doc span{font-size:.76rem;font-weight:600;overflow-wrap:anywhere}.kv-file-acts{position:absolute;top:6px;right:6px;display:flex;gap:4px;opacity:0;transition:opacity .12s}.kv-file-acts:focus-within,.kv-files li:hover .kv-file-acts{opacity:1}@media (hover:none){.kv-file-acts{opacity:1}}.kv-file-acts a,.kv-file-acts button{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:50%;background:hsla(0,0%,8%,.62);color:#fff;font:inherit;font-size:.8rem;text-decoration:none;cursor:pointer}.kv-file-add{background:none!important}.kv-file-add label{display:grid;place-items:center;width:100%;height:100%;border:1.5px dashed var(--line-strong);border-radius:12px;color:var(--muted)!important;font-size:1.4rem!important;cursor:pointer}.kv-file-add label:hover{border-color:var(--ink);color:var(--ink)!important}.kv-drop input,.kv-file-add input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.kv-drop{display:grid;place-items:center;min-height:64px;padding:12px;border:1.5px dashed var(--line-strong);border-radius:12px;color:var(--muted)!important;font-size:.9rem!important;text-align:center;cursor:pointer}.kv-drop:hover{border-color:var(--ink);color:var(--ink)!important}.kv-drop.is-busy,.kv-file-add .is-busy{opacity:.7;cursor:progress}.kv-links{display:grid;grid-gap:6px;gap:6px;justify-items:start}.kv-link-row{display:flex;align-items:center;gap:6px;width:100%}.kv-link-row input{flex:1 1;min-width:0;padding:8px 12px;border:1.5px solid var(--line);border-radius:10px;background:var(--input-bg);color:var(--ink);font:inherit;font-size:16px}.kv-link-x{flex:none;display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:50%;background:none;color:var(--muted);font:inherit;cursor:pointer}.kv-link-x:hover{background:var(--surface-2);color:var(--ink)}.kv-panel-f{display:flex;align-items:center;gap:8px;padding:12px 20px;border-top:1px solid var(--line);background:var(--surface)}.kv-cancel{padding:8px 12px;border:0;border-radius:var(--pill);background:none;color:var(--ink);font:inherit;font-size:.92rem;font-weight:700;cursor:pointer}.kv-cancel:hover{background:var(--surface-2)}.kv-meta{margin:0;color:var(--muted);font-size:.8rem}.kv-del{white-space:nowrap;margin-left:auto;padding:8px 4px;border:0;background:none;color:var(--danger);font:inherit;font-size:.88rem;font-weight:700;cursor:pointer}.kv-zoom{position:fixed;inset:0;z-index:210;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.85);cursor:zoom-out}.kv-zoom img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}@media (max-width:720px){.kv-head{align-items:flex-start;flex-direction:column;gap:12px}.kv-h1{font-size:1.4rem}.kv-head-acts,.kv-new{width:100%}.kv-boards{display:flex;width:100%;margin-bottom:16px}.kv-boards button{flex:1 1 auto;padding:6px 10px;white-space:nowrap}.kv-head-acts>*{flex:1 1;white-space:nowrap;padding-left:10px;padding-right:10px}.kv-home{grid-template-columns:minmax(0,1fr);gap:26px}.kv-nr{flex-wrap:wrap;align-items:flex-start;gap:2px 8px;padding:8px 4px}.kv-nr-t{flex:1 1 100%;white-space:normal;overflow-wrap:anywhere}.kv-nr-props{justify-content:flex-start;gap:4px 12px;width:100%;margin-left:0;padding-left:0;font-size:.8rem;white-space:normal}.kv-bar{gap:10px}.kv-month{width:100%}.kv-month-l{flex:1 1;min-width:0}.kv-tools{width:100%;flex-wrap:nowrap;gap:0}.kv-tools .kv-f:first-child{padding-left:0}.kv-f{padding:0 5px;gap:2px;font-size:.8rem!important}.kv-f span{max-width:5.5em}.kv-views{margin-left:auto;flex:none;padding:2px}.kv-views button{padding:4px 7px;font-size:.76rem}.kv-wd{padding:6px 0;text-align:center;font-size:.7rem}.kv-day{min-height:54px;padding:4px 2px}.kv-day-top{justify-content:center;margin-bottom:2px}.kv-day-add{display:none}.kv-day.is-picked{box-shadow:inset 0 0 0 2px var(--ink)}.kv-chips{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:3px}.kv-chip{width:auto;padding:0;border:0;background:none;pointer-events:none}.kv-chip .kv-dot{display:inline-block;width:7px;height:7px}.kv-chip-l>span:last-child,.kv-chip-tags,.kv-chip-who{display:none}.kv-chip,.kv-chip:hover{box-shadow:none}.kv-picked{display:block;margin-top:18px}.kv-panel-body{padding:4px 16px 20px}.kv-panel-h{padding:10px 12px 10px 16px}.kv-panel-f{padding:10px 16px calc(10px + env(safe-area-inset-bottom))}.kv-prop,.kv-props>div{grid-template-columns:104px minmax(0,1fr);gap:8px}.kv-title-in,.kv-v-title{font-size:1.25rem}.kv-prop-when{grid-template-columns:minmax(0,1fr);gap:2px}}.ip-box{display:flex;flex-direction:column;gap:8px;margin:4px 0 8px}.ip-box>.dm-btn{align-self:flex-start}.ip-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.ip-pass{font-size:1.05rem;padding:6px 12px;border-radius:8px;background:var(--surface-2,hsla(0,0%,50%,.12));border:1px solid var(--line,hsla(0,0%,50%,.25));-webkit-user-select:all;-moz-user-select:all;user-select:all;letter-spacing:.03em}.ip-note{margin:0;font-size:.86rem;color:var(--muted)}.ip-note b{color:var(--ink,inherit)}.ip-err{margin:0;font-size:.84rem;color:var(--danger,#c0392b)}.ip-fresh{display:flex;flex-direction:column;gap:6px;padding:12px 14px;margin:8px 0 12px;border-radius:12px;border:1px dashed var(--line,hsla(0,0%,50%,.35))}.ip-fresh>.dm-link{align-self:flex-start}:root{--jsc-morning:#e9b949;--jsc-day:#e07a5f;--jsc-evening:#4f8fc0;--jsc-aside:#fff3e4;--jsc-aside-line:#f08a3c}:root[data-theme=dark]{--jsc-morning:#e3c06a;--jsc-day:#e8957d;--jsc-evening:#7fb2da;--jsc-aside:#3a2c1e;--jsc-aside-line:#e0894a}.jsc-wrap{padding-bottom:40px}.jsc-bar{display:flex;gap:8px;margin:4px 0 14px}.jsc{display:flex;flex-direction:column;gap:16px;max-width:820px}.jsc-days{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:4px;gap:4px;padding:4px;border-radius:16px;background:var(--surface-2)}.jsc-daytab{position:relative;display:flex;flex-direction:column;align-items:center;gap:0;min-height:48px;padding:6px 4px;border:0;border-radius:12px;background:none;color:var(--muted);font:inherit;cursor:pointer}.jsc-daytab b{color:var(--ink);font-size:.92rem}.jsc-daytab span{font-size:.76rem}.jsc-daytab:hover{color:var(--ink)}.jsc-daytab.is-on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm,0 1px 3px rgba(0,0,0,.08))}.jsc-daytab .jsc-daytab-today{color:var(--ok);font-weight:700}.jsc-daytab .jsc-daytab-n{margin-top:2px;color:var(--coral-600,var(--coral));font-size:.68rem;font-weight:700;line-height:1.2;white-space:nowrap}.jsc-daycard{display:flex;flex-direction:column;gap:18px}.jsc-day-head{justify-content:space-between;gap:6px 14px}.jsc-day-head,.jsc-day-title{display:flex;flex-wrap:wrap;align-items:baseline}.jsc-day-title{gap:4px 10px;margin:0;font-family:var(--font-display);font-size:clamp(1.3rem,4vw,1.6rem)}.jsc-date{color:var(--muted);font-family:var(--font-sans);font-size:.95rem;font-weight:600}.jsc-today{align-self:center;padding:1px 8px;background:var(--ok);color:var(--surface);font-family:var(--font-sans);font-size:.72rem}.jsc-aside,.jsc-today{border-radius:var(--pill);font-weight:700}.jsc-aside{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;background:var(--jsc-aside);color:var(--ink);font-size:.84rem}.jsc-aside:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--jsc-aside-line)}.jsc-aside span{color:var(--muted);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.jsc-card{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border-radius:18px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line)}.jsc-card-h{color:var(--muted);font-size:.85rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.jsc-glabel{color:var(--muted);font-size:.74rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.jsc-subj{display:inline-flex;align-items:baseline;max-width:100%;margin-left:-6px;padding:2px 6px;border:0;border-radius:8px;background:none;color:var(--ink);font:inherit;font-size:1.08rem;font-weight:700;text-align:left;overflow-wrap:break-word;cursor:pointer}.jsc-subj:focus-visible,.jsc-subj:hover{background:var(--surface-2)}.jsc-subj-t{font-size:1.08rem;overflow-wrap:break-word}.jsc-icon{margin-right:7px}.jsc-nolesson,.jsc-who{color:var(--muted);font-size:.82rem}.jsc-nolesson{font-style:italic}.jcg{display:flex;flex-direction:column;gap:4px}.jcg-row{display:grid;grid-template-columns:104px minmax(0,1fr) minmax(0,1fr);grid-gap:4px 12px;gap:4px 12px;align-items:start}.jcg-row.is-head,.jcg-row.is-routine{padding:2px 0}.jcg-t{display:flex;flex-direction:column;padding-top:9px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.15;white-space:nowrap}.jcg-t b{color:var(--ink);font-size:.92rem;font-weight:700}.jcg-t small{font-size:.72rem;font-weight:600}.jcg-row.is-now .jcg-t b{color:var(--ok)}.jcg-row.is-routine .jcg-t{padding-top:5px}.jcg-span{grid-column:2/4}.jcg-routine{padding:6px 12px;border-radius:10px;background:var(--surface-2);color:var(--muted);font-size:.92rem}.jcg-routine,.jcg-row.is-head .jsc-glabel{text-align:center}.jcg-hint,.jcg-then{color:var(--muted);font-size:.8rem}.jcg-then{padding-left:12px;font-weight:600}.jcg-row.is-now .jcg-t{color:var(--ok);font-weight:800}.jcg-row.is-now .jcg-routine{color:var(--ok);font-weight:700;background:color-mix(in srgb,var(--ok) 12%,var(--surface))}.jpar .jcg-row.is-now .jcg-routine{padding:6px 12px;border-radius:10px;background:color-mix(in srgb,var(--ok) 12%,var(--surface))}.jcg-row.is-now .jcg-cell{background:color-mix(in srgb,var(--ok) 10%,var(--surface));box-shadow:inset 0 0 0 1.5px var(--ok)}.jcg-span.jcg-hint{text-align:center}.jcg-cell{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0;padding:10px 12px;border-radius:14px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line)}.jcg-cell.is-wide{grid-column:2/4}.jcg-cell .jsc-subj,.jcg-cell .jsc-subj-t{font-size:1rem}.jsc-lesson{display:flex;flex-direction:column;gap:1px;max-width:100%;padding:2px 0;color:var(--ink);text-decoration:none}.jsc-lesson-t{color:var(--ok);font-size:.86rem;font-weight:700;overflow-wrap:anywhere}.jsc-lesson-t:after{content:" ›"}.jsc-lesson:hover .jsc-lesson-t{text-decoration:underline;text-underline-offset:3px}.jsc-lesson-m{display:inline-flex;align-items:center;gap:5px;margin-top:2px;color:var(--muted);font-size:.74rem}.jsc-ava{flex:none;display:inline-grid;place-items:center;border-radius:50%;background:var(--surface-2);color:var(--muted);font-weight:700;object-fit:cover}.jsc-rest{display:flex;flex-direction:column;gap:2px}.jsc-foot{margin:0;color:var(--muted);font-size:.88rem;white-space:pre-wrap}.jsc-link{display:flex;flex-direction:column;gap:6px;margin-top:28px;padding:14px;border-radius:16px;background:var(--surface-2)}.jsc-link .hs-sub{margin:0}.jsc-link-row{display:flex;flex-wrap:wrap;gap:8px}.jsc-link-row .st-input{flex:1 1 260px;min-width:0}.jsc-link .dm-link{align-self:flex-start}@media (max-width:560px){.jcg-row{grid-template-columns:46px minmax(0,1fr) minmax(0,1fr);gap:4px 6px}.jcg-t b{font-size:.86rem}.jcg-cell{padding:8px 9px;border-radius:12px}.jcg-cell .jsc-subj,.jcg-cell .jsc-subj-t{font-size:.9rem}.jsc-card{padding:12px 14px;border-radius:16px}.jsc-subj,.jsc-subj-t{font-size:.98rem}.jsc-icon{margin-right:5px}}.jse{display:flex;flex-direction:column;gap:14px;max-width:900px}.jse-hint{margin:0}.jse-cycle{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px}.jse-cycle label,.jse-notelbl{display:grid;grid-gap:4px;gap:4px}.jse-cycle label:first-child{flex:1 1 200px;max-width:280px}.jse-cycle label>span,.jse-notelbl>span{color:var(--muted);font-size:.8rem;font-weight:700}.jse-daybar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.jse-copy{width:auto}.jse-rows{gap:8px;margin:0;padding:0;list-style:none}.jse-row,.jse-rows{display:flex;flex-direction:column}.jse-row{gap:6px;padding:10px;border-radius:14px;background:var(--surface-2)}.jse-row .st-input{min-width:0;background:var(--surface)}.jse-row-top{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.jse-t{width:104px}.jse-band{width:auto}.jse-move{display:flex;gap:2px;margin-left:auto}.jse-item{display:grid;grid-template-columns:52px minmax(0,2fr) minmax(0,1.3fr) 36px;grid-gap:6px;gap:6px;align-items:center}.jse-icon{text-align:center}.jse-row-acts{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}.jse-row-acts .jse-note{flex:1 1 200px}.jse-check{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600}.jse-x{width:36px;height:36px;border:0;border-radius:10px;background:none;color:var(--ink);font:inherit;cursor:pointer}.jse-x:hover:not(:disabled){background:var(--surface)}.jse-x:disabled{opacity:.3;cursor:default}.jse-add{align-self:flex-start}.jse-asides{display:flex;flex-direction:column;gap:6px;margin:0;padding:12px;border:0;border-radius:14px;background:var(--jsc-aside)}.jse-asides legend{float:left;width:100%;padding:0;font-size:.85rem;font-weight:700}.jse-aside{display:grid;grid-template-columns:minmax(0,1fr) 104px 104px 36px;grid-gap:6px;gap:6px}.jse-aside .st-input{background:var(--surface)}.jse-asides .jp-x{align-self:flex-start}.jse-acts{position:-webkit-sticky;position:sticky;bottom:0;display:flex;gap:8px;padding:10px 0;background:var(--bg)}@media (max-width:700px){.jse-item{grid-template-columns:52px minmax(0,1fr) 36px}.jse-item .jse-who{grid-column:2;grid-row:2}.jse-t{width:96px}.jse-aside{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px}.jse-aside>.st-input:first-child{grid-column:1/3}.jse-aside>.jse-x{grid-column:3;grid-row:1}.jse-aside .jse-t{width:auto}.jse-acts .dm-btn{flex:1 1 auto;min-height:44px}}.jpar{min-height:100vh;background:var(--bg)}.jpar-wrap{padding-top:24px;padding-bottom:40px}.jpar-head{display:flex;flex-direction:column;align-items:flex-start;gap:0;margin-bottom:20px}.jpar-onegroup{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:-4px 0 12px;color:var(--muted);font-size:.88rem}.jpar-onegroup b{color:var(--ink)}.jpar-title{margin:0;font-family:var(--font-display);font-size:clamp(1.45rem,4.6vw,2rem);line-height:1.2}.jpar-topbar{gap:10px}.jpar-brand{display:inline-flex;align-items:center;gap:10px;min-width:0}.jpar-school{padding-left:10px;border-left:1.5px solid var(--line);font-size:.95rem;font-weight:700;line-height:1.2}.jpar-install,.jpar-school{color:var(--ink);white-space:nowrap}.jpar-install{display:inline-flex;align-items:center;min-height:36px;padding:6px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);font:inherit;font-size:.88rem;font-weight:700;cursor:pointer}.jpar-install:focus-visible,.jpar-install:hover{border-color:var(--ink)}.jpar{display:flex;flex-direction:column}.jpar>main{flex:1 0 auto;width:100%}.jpar-installbar{position:-webkit-sticky;position:sticky;bottom:0;z-index:9;display:flex;align-items:center;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom)) 20px;background:var(--surface);box-shadow:0 -4px 18px rgba(0,0,0,.08)}.jpar-installbar-t{flex:1 1;min-width:0;color:var(--ink);font-size:.88rem;font-weight:600;line-height:1.3}.jpar-installbar .jpar-install{flex:none;border-color:var(--ink);background:var(--ink);color:var(--surface)}.jpar-installbar-x{flex:none;display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;background:none;color:var(--muted);font:inherit;font-size:.95rem;cursor:pointer}.jpar-installbar-x:hover{background:var(--surface-2);color:var(--ink)}.jpar-title-dates{display:block;margin-top:4px;color:var(--muted);font-family:var(--font-sans);font-size:.55em;font-weight:600;letter-spacing:0}.jpar-today{display:flex;flex-direction:column;gap:10px;max-width:820px;margin-bottom:36px}.jpar-today-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px}.jpar-today-l{color:var(--muted);font-size:.85rem;font-weight:700}.jpar-gseg{display:inline-flex;gap:2px;padding:3px;border-radius:var(--pill);background:var(--surface-2)}.jpar-gseg button{min-height:34px;padding:4px 14px;border:0;border-radius:var(--pill);background:none;color:var(--muted);font:inherit;font-size:.86rem;font-weight:700;white-space:nowrap;cursor:pointer}.jpar-gseg button:hover{color:var(--ink)}.jpar-gseg button.is-on{background:var(--ink);color:var(--surface)}.jnow{display:flex;flex-direction:column;gap:2px;padding:16px 18px;border-radius:20px;background:color-mix(in srgb,var(--ok) 12%,var(--surface))}.jnow.is-calm{background:var(--surface);box-shadow:inset 0 0 0 1px var(--line)}.jnow-k{display:flex;justify-content:space-between;gap:10px;color:var(--ok);font-size:.82rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.jnow.is-calm .jnow-k{color:var(--muted)}.jnow-t{margin-top:2px;font-family:var(--font-display);font-size:1.35rem;line-height:1.25}.jnow-l,.jnow-t{overflow-wrap:anywhere}.jnow-l{color:var(--ink);font-size:.9rem;text-decoration:none}a.jnow-l{display:inline-flex;align-items:center;gap:7px;margin-top:2px;font-weight:600}a.jnow-l:hover{text-decoration:underline}.jnow-bar{height:5px;margin:10px 0 2px;border-radius:3px;background:color-mix(in srgb,var(--ok) 20%,var(--surface));overflow:hidden}.jnow-bar i{display:block;height:100%;border-radius:3px;background:var(--ok)}.jnow-next{margin:8px 0 0;color:var(--ink);font-size:.92rem}.jnow-later{display:flex;flex-direction:column;gap:6px;margin-top:12px;padding:10px 14px;border-radius:14px;background:color-mix(in srgb,var(--ok) 20%,var(--surface))}.jnow-later-h{color:var(--ok);font-size:.76rem;font-weight:700}.jnow-later ul{display:grid;grid-gap:6px;gap:6px;margin:0;padding:0;list-style:none}.jnow-later li{display:grid;grid-template-columns:46px minmax(0,1fr);grid-gap:8px;gap:8px;font-size:.92rem;line-height:1.3}.jnow-later li b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.jnow-facts{display:flex;flex-wrap:wrap;gap:6px 28px;margin:14px 0 0}.jnow-facts div{display:flex;flex-direction:column}.jnow-facts dt{color:var(--muted);font-size:.76rem;font-weight:700}.jnow-facts dd{margin:0;font-size:1.02rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.jpar-tabs{display:flex;gap:22px;max-width:820px;margin-bottom:16px;box-shadow:inset 0 -1.5px 0 var(--line)}.jpar-tabs button{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 0 4px;border:0;border-bottom:3px solid transparent;background:none;color:var(--muted);font:inherit;font-family:var(--font-display);font-size:1.2rem;font-weight:700;cursor:pointer}.jpar-tabs button:hover{color:var(--ink)}.jpar-tabs button.is-on{color:var(--ink);border-bottom-color:var(--ink)}.jpar-tabs-n{min-width:22px;padding:1px 7px;border-radius:var(--pill);background:var(--coral);color:#fff;font-family:var(--font-sans);font-size:.74rem;line-height:1.5;text-align:center}.jpar .jsc-day-head{display:none}.jpar .jsc-daycard{gap:10px}.jpar .jcg-routine{padding:6px 0;background:none;text-align:center}.jpar .jcg.is-one .jcg-routine,.jpar .jcg.is-one .jcg-span.jcg-hint{text-align:left}.jpar .jcg-aside{padding-top:4px;text-align:center}.jpar .jcg.is-one .jcg-aside{text-align:left}.jpar .jsc-nolesson{display:none}.jpar-sheet-bg{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(0,0,0,.4)}.jpar-sheet{width:100%;max-width:420px;padding:20px;border-radius:22px;background:var(--surface);color:var(--ink)}.jpar-sheet h2{margin:0;font-family:var(--font-display);font-size:1.25rem}.jpar-sheet-lead{margin:6px 0 14px;color:var(--muted);font-size:.92rem}.jpar-steps{display:grid;grid-gap:12px;gap:12px;margin:0;padding:0;list-style:none}.jpar-steps li{display:flex;align-items:flex-start;gap:12px;font-size:.95rem;line-height:1.4}.jpar-step-n{flex:none;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;font-weight:700}.jpar-sheet-note,.jpar-step-n{background:var(--surface-2);font-size:.85rem}.jpar-sheet-note{margin:14px 0 0;padding:10px 12px;border-radius:12px;color:var(--muted)}.jpar-sheet-ok{width:100%;min-height:44px;margin-top:16px}@media (max-width:640px){.jpar-sheet-bg{align-items:flex-end;padding:0}.jpar-sheet{max-width:none;padding:20px 20px calc(20px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0}.jpar-school{padding-left:8px;font-size:.8rem;overflow:hidden;text-overflow:ellipsis}.jpar-brand{gap:7px}.jpar-topbar{gap:8px}.jpar-school{padding-left:7px}}.jpar-foot{margin-top:18px;color:var(--muted);font-size:.82rem}a.jl-card{text-decoration:none}.jpar-lead{max-width:520px;margin:4px 0 0;color:var(--ink);font-size:1.02rem;line-height:1.5}.jpar-hint{margin:14px 0 0;color:var(--muted);font-size:.85rem}.jpar-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.jpar-chip{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:6px 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--ink);font:inherit;font-size:.92rem;font-weight:600;white-space:nowrap;cursor:pointer}.jpar-chip.is-on,.jpar-chip:hover{border-color:var(--ink)}.jpar-chip.is-on{background:var(--ink);color:var(--surface)}.jpar-chip-n{color:var(--muted);font-size:.8rem;font-weight:700}.jpar-chip.is-on .jpar-chip-n{color:inherit;opacity:.7}.jpar-count{margin:-6px 0 14px;color:var(--muted);font-size:.88rem}.jpar-day{margin-bottom:22px}.jpar-day-h{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin:0 0 10px;font-size:1.02rem}.jpar-day-rel{color:var(--muted);font-size:.85rem;font-weight:600}.jpar-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:10px;gap:10px;margin:0;padding:0}.jpar-card{height:100%;display:flex;flex-direction:column;gap:6px;padding:14px 16px;border-radius:18px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);color:var(--ink);text-decoration:none}.jpar-card:focus-visible,.jpar-card:hover{box-shadow:inset 0 0 0 1.5px var(--ink)}.jpar-card-subj{color:var(--muted);font-size:.82rem;font-weight:700}.jpar-card-t{font-size:1.05rem;line-height:1.3;overflow-wrap:anywhere}.jpar-card-sub{color:var(--ink);font-size:.9rem;opacity:.8;overflow-wrap:anywhere}.jpar-card-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px;margin-top:auto;padding-top:4px;color:var(--muted);font-size:.82rem}.jpar-card-open{color:var(--coral-600,var(--coral));font-weight:700}.jpar-card-who{display:inline-flex;align-items:center;gap:7px}.jpar-empty{display:flex;flex-direction:column;align-items:flex-start;gap:6px;max-width:520px;padding:18px 20px;border-radius:18px;background:var(--surface-2);color:var(--muted)}.jpar-empty b{color:var(--ink);font-size:1.02rem}.jpar-empty .dm-btn{margin-top:6px}@media (max-width:640px){.jpar-wrap{padding-top:16px}.jpar-filter{flex-wrap:nowrap;margin-right:-20px;padding-right:20px;overflow-x:auto;scrollbar-width:none}.jpar-filter::-webkit-scrollbar{display:none}.jpar-list{grid-template-columns:minmax(0,1fr)}}.jt-wrap{padding-bottom:48px}.jt-bar{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.jt-search{flex:1 1 260px;min-width:0}.jt-filters{margin:10px 0 0}.jt-bdays{margin:12px 0 0;font-size:.9rem}.jt-bday-link{padding:0;border:0;background:none;color:var(--ink);font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.jt-sec{margin-top:22px}.jt-sec-h{margin:0 0 10px;font-size:1.05rem}.jt-sec-h .mdp-muted{font-size:.9rem;font-weight:600}.jt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:10px;gap:10px;margin:0;padding:0;list-style:none}.jt-card{display:flex;align-items:center;gap:6px;min-width:0;padding:6px 8px 6px 6px;border-radius:18px;background:var(--surface-2)}.jt-card:hover{background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--line)}.jt-open{display:flex;flex:1 1;align-items:center;gap:12px;min-width:0;padding:6px;border:0;border-radius:14px;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.jt-open:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.jt-ava{display:grid;flex:none;place-items:center;width:64px;height:64px;overflow:hidden;border-radius:50%;background:var(--surface);color:var(--muted);font-weight:700;font-size:1.1rem}.jt-ava img{width:100%;height:100%;object-fit:cover}.jt-ava.is-big{width:120px;height:120px;border-radius:24px;background:var(--surface-2);font-size:2rem}.jt-who{display:flex;flex-direction:column;gap:3px;min-width:0}.jt-who b{font-size:1rem}.jt-role,.jt-who b{overflow-wrap:anywhere}.jt-role{margin:0;color:var(--muted);font-size:.85rem;line-height:1.35;white-space:pre-line}.jt-role.is-clamp{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal}.jt-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}.jt-tag{padding:2px 8px;border-radius:var(--pill);background:var(--surface);font-size:.74rem;font-weight:700}.jt-tag.is-today{background:var(--ok);color:var(--surface)}.jt-quick{display:flex;flex:none;gap:4px}.jt-qbtn{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--surface);color:var(--ink)}.jt-qbtn:focus-visible,.jt-qbtn:hover{background:var(--ink);color:var(--surface)}.jt-qbtn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.jt-dialog{max-width:560px}.jt-hero{display:flex;align-items:center;gap:16px;margin-bottom:14px}.jt-hero-text{display:flex;flex-direction:column;gap:4px;min-width:0}.jt-name{margin:0;font-size:1.3rem;overflow-wrap:anywhere}.jt-photo-acts{display:flex;flex-wrap:wrap;gap:2px 14px;margin-top:4px}.jt-photo-acts label{cursor:pointer}.jt-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.jt-actions .dm-btn{text-decoration:none}.jt-info{display:flex;flex-direction:column;gap:12px;margin:0 0 16px}.jt-info>div{display:grid;grid-template-columns:150px 1fr;grid-gap:12px;gap:12px}.jt-info dt{color:var(--muted);font-size:.82rem;font-weight:700;padding-top:2px}.jt-info dd{margin:0;min-width:0;font-size:.94rem;overflow-wrap:anywhere}.jt-copy{margin-left:6px;padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:.8rem;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.jt-copy:hover{color:var(--ink)}.jt-week{display:flex;gap:4px;margin-bottom:6px}.jt-week span{display:grid;place-items:center;min-width:32px;height:26px;padding:0 4px;border-radius:8px;background:var(--surface-2);color:var(--muted);font-size:.76rem;font-weight:700}.jt-week span.is-on{background:var(--ok);color:var(--surface)}.jt-week span.is-today{box-shadow:inset 0 0 0 2px var(--ink)}.jt-pre{display:block;white-space:pre-line}.jt-soon{color:var(--muted)}.jt-num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.jt-edit-btn{margin-bottom:8px}.jt-data{margin-top:32px;padding:14px 16px;border-radius:16px;background:var(--surface-2)}.jt-data .jt-sec-h{font-size:.95rem}.jt-data .hs-sub{margin:0 0 10px}.jt-data-acts{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px}@media (max-width:560px){.jt-grid{grid-template-columns:1fr}.jt-ava{width:52px;height:52px;font-size:1rem}.jt-open{gap:10px;padding:4px}.jt-hero{flex-direction:column;align-items:flex-start}.jt-ava.is-big{width:104px;height:104px}.jt-info>div{grid-template-columns:1fr;gap:2px}.jt-actions .dm-btn{flex:1 1 auto;min-height:44px;display:inline-flex;align-items:center;justify-content:center}}.mtr-role-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin-top:18px}.mtr-role-head .mtr-h3{margin:0}.mtr-role-n{margin-left:4px;padding:1px 8px;border-radius:var(--pill);background:var(--surface-2);color:var(--muted);font-size:.8rem;font-weight:800;vertical-align:middle}.mtr-role-msg{flex-basis:100%;margin:0}.mtr-role-add{padding:6px 14px;font-size:.86rem}.mtr-role-chip{position:relative;display:flex;min-width:0}.mtr-role-chip>.mtr-mentor{flex:1 1;min-width:0}.mtr-mentor.is-static{cursor:default}.mtr-mentor.is-static:hover{border-color:var(--line)}.mtr-role-chip:has(.mtr-role-x)>.mtr-mentor{padding-right:34px}.mtr-role-x{position:absolute;top:50%;right:6px;transform:translateY(-50%);display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--muted);font:inherit;font-size:1.05rem;line-height:1;cursor:pointer;opacity:.55}.mtr-role-chip:hover .mtr-role-x,.mtr-role-x:focus-visible{opacity:1}.mtr-role-x:hover{background:var(--danger-soft);color:var(--danger)}.mtr-mentor.is-on+.mtr-role-x{color:var(--surface)}.mtr-role-klass{color:var(--muted);font-weight:500}.mtr-mentor.is-on .mtr-role-klass{color:inherit}.mtr-role-adder{margin:10px 0 4px;max-width:460px}.mtr-role-results{display:flex;flex-direction:column;margin-top:6px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden}.mtr-role-result{display:flex;align-items:center;gap:10px;padding:8px 12px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;font-size:.9rem;text-align:left;cursor:pointer}.mtr-role-result:first-child{border-top:0}.mtr-role-result:hover{background:var(--surface-2)}.mtr-role-result .mtr-role-name{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.mtr-role-result small{color:var(--muted)}.mtr-role-result b{color:var(--coral-600);font-size:.82rem}.mtr-role-results .mtr-note{padding:8px 12px}@media (hover:none){.mtr-role-x{opacity:1}}.mtr-space{margin:-4px 0 14px}.cws-person.is-checked{background:var(--ans-fb);color:#0b3550}.cws-person.has-check{box-shadow:inset 0 0 0 2px var(--ans-fb)}.cws-metric.is-checked{background:var(--ans-fb-soft)}.cws-metric.is-checked,.cws-metric.is-checked b{color:var(--ans-fb-ink)}.cws-pending{width:7px;height:7px;margin-left:2px;border-radius:50%;background:var(--ans-new);flex:none}.cws-legend{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:4px 12px;margin:0;color:var(--muted);font-size:.74rem}.cws-legend span{display:inline-flex;align-items:center;gap:5px}.cws-legend i{width:10px;height:10px;border-radius:50%;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line-strong)}.cws-legend i.is-stuck{background:color-mix(in srgb,#e0a92e 45%,var(--surface));box-shadow:none}.cws-legend i.is-assigned{background:var(--empty-tint);box-shadow:inset 0 0 0 1px var(--empty-ink)}.cws-legend i.is-done{background:var(--ok-soft);box-shadow:inset 0 0 0 1px var(--ok)}.cws-legend i.is-checked{background:var(--ans-fb);box-shadow:none}.cws-legend i.is-pending{width:7px;height:7px;background:var(--ans-new);box-shadow:none}.mpw-days{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:4px}.mpw-days small{margin-left:4px;color:var(--muted);font-size:.74rem}.mpw-day{min-width:34px;padding:3px 8px;border:1.5px solid var(--line-strong);border-radius:var(--pill);background:none;color:var(--muted);font:inherit;font-size:.76rem;font-weight:700;cursor:pointer}.mpw-day:hover:not(:disabled){border-color:var(--ink);color:var(--ink)}.mpw-day.is-on{border-color:var(--ink);background:var(--ink);color:var(--surface)}.mpw-day:disabled{opacity:.45;cursor:default}@media (max-width:640px){.mpw-opt>.mpw-cell-acts{width:100%}.mpw-opt>.mpw-cell-acts .mdp-btn{flex:1 1}}.kv-head-acts>.btn:not(.btn-primary){border-color:var(--line-strong)}.kv-head-acts>.btn:not(.btn-primary):hover{border-color:var(--ink)}@media (max-width:720px){.kv-head-acts>.btn{min-height:44px;padding-top:10px;padding-bottom:10px}.kv-nr-props{padding-left:14px}}.mpw-days small.mpw-days-l{margin:0 2px 0 0}.ps-sec+.ps-sec{margin-top:6px}.ps-sec-h{margin:6px 12px 4px;color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.ps-item.is-person{grid-template-columns:34px minmax(0,1fr) auto;grid-template-areas:"ava title kind" "ava meta kind"}.ps-ava{grid-area:ava;display:grid;place-items:center;width:34px;height:34px;overflow:hidden;border-radius:50%;background:var(--surface-2);color:var(--muted);font-size:.72rem;font-weight:800}.ps-item.is-active .ps-ava{background:var(--surface)}.ps-ava img{width:100%;height:100%;object-fit:cover}.ps-item-kind.is-person{color:var(--board-navy)}.ps-item-kind.is-student{color:var(--coral-600,var(--coral))}@media (max-width:560px){.ps-item.is-person{grid-template-columns:34px minmax(0,1fr);grid-template-areas:"ava title" "ava meta"}.ps-item.is-person .ps-item-kind{display:none}}.kv-search{display:flex;align-items:center;gap:8px;max-width:460px;margin:0 0 18px;padding:0 6px 0 14px;border:1.5px solid var(--line);border-radius:var(--pill);background:var(--input-bg);color:var(--muted)}.kv-search:focus-within{border-color:var(--ink)}.kv-search svg{flex:none}.kv-search input{flex:1 1;min-width:0;height:42px;border:0;outline:0;background:none;color:var(--ink);font:inherit;font-size:.95rem}.kv-search input::placeholder{color:var(--muted)}.kv-search input::-webkit-search-cancel-button{display:none}.kv-search-x{flex:none;width:32px;height:32px;border:0;border-radius:50%;background:none;color:var(--muted);font:inherit;font-size:1.2rem;line-height:1;cursor:pointer}.kv-search-x:hover{background:var(--surface-2);color:var(--ink)}.kv-found-q{color:var(--muted);font-weight:600}.kv-search-note{margin:10px 0 0;color:var(--muted);font-size:.88rem}.kv-search-note .kv-link{padding:0;font-size:inherit}@media (max-width:720px){.kv-search{max-width:none;margin-bottom:16px}.kv-search input{font-size:16px}}.jl-hidden{margin-top:28px}.jl-hidden>summary{color:var(--muted);font-size:.92rem;font-weight:700;cursor:pointer}.jl-hidden-list{display:grid;grid-gap:8px;gap:8px;margin:10px 0 0;padding:0;list-style:none}.jl-hidden-list li{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.jl-hidden-list li>span{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.jl-hidden-list small{color:var(--muted);font-size:.8rem}@media (max-width:560px){.jl-hidden-list li{flex-wrap:wrap}.jl-hidden-list li .dm-btn{width:100%}}.jab{display:grid;grid-gap:14px;gap:14px;max-width:720px}.jab-form{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.jab-lead{grid-column:1/-1;margin:0;color:var(--muted);font-size:.9rem}.jab-fld{display:grid;grid-gap:4px;gap:4px;min-width:0}.jab-fld>span{color:var(--muted);font-size:.8rem;font-weight:700}.jab-fld.is-wide,.jab-quick{grid-column:1/-1}.jab-quick{display:flex;flex-wrap:wrap;gap:6px}.jab-save{grid-column:1/-1;justify-self:start}.jab-h{margin:8px 0 0;font-size:1rem}.jab-list{display:grid;grid-gap:0;gap:0;margin:0;padding:0;list-style:none;border:1px solid var(--line);border-radius:16px;background:var(--surface);overflow:hidden}.jab-item{display:flex;align-items:center;gap:12px;padding:10px 12px 10px 14px;border-top:1px solid var(--line)}.jab-item:first-child{border-top:0}.jab-item.is-now{box-shadow:inset 3px 0 0 var(--danger)}.jab-item-text{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.jab-item-text small{color:var(--muted);font-size:.8rem}@media (max-width:560px){.jab-form{grid-template-columns:1fr;padding:14px}.jab-save{justify-self:stretch}.jab-fld input,.jab-fld select{font-size:16px}}.jp-exists{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px;margin:0 0 12px;padding:12px 14px;border:1.5px solid var(--warn-line);border-radius:14px;background:var(--warn-soft);color:var(--warn-ink);font-size:.9rem}.rgs{display:flex;flex-direction:column;gap:18px}.rgs-row{display:grid;grid-template-columns:64px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:start}.rgs-time{display:flex;flex-direction:column;gap:2px;padding-top:8px;font-size:.95rem;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rgs-count{color:var(--muted);font-size:.72rem;font-weight:700}.rgs-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));grid-gap:8px;gap:8px}.rgt-ev.rgs-ev{position:relative;z-index:auto;padding:0}.rgt-ev.rgs-ev .rg-card{height:100%}@media (max-width:600px){.rgs-row{grid-template-columns:minmax(0,1fr);gap:6px}.rgs-time{flex-direction:row;align-items:baseline;gap:8px;padding-top:0}.rgs-cards{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.rg-field{max-width:100%}.rg-field .pl-cycle{min-width:0;max-width:100%;flex:1 1 auto}}