@font-face{font-family:sansFont;src:url(../media/sans_01-s.p.0xr56uh97j1l..woff2)format("woff2");font-display:swap}@font-face{font-family:sansFont Fallback;src:local(Arial);ascent-override:102.76%;descent-override:26.15%;line-gap-override:0.0%;size-adjust:90.38%}.sansfont_1f5aa95f-module__vCWq2q__className{font-family:sansFont,sansFont Fallback}.sansfont_1f5aa95f-module__vCWq2q__variable{--font-sans-local:"sansFont", "sansFont Fallback"}
@font-face{font-family:serifFont;src:url(../media/serif_01-s.p.11g.jqnw_588l.woff2)format("woff2");font-display:swap}@font-face{font-family:serifFont Fallback;src:local(Arial);ascent-override:98.18%;descent-override:24.98%;line-gap-override:0.0%;size-adjust:94.59%}.seriffont_55edb647-module__axmS8a__className{font-family:serifFont,serifFont Fallback}.seriffont_55edb647-module__axmS8a__variable{--font-serif-local:"serifFont", "serifFont Fallback"}
@font-face{font-family:monoFont;src:url(../media/mono_01-s.p.0i0qo20c2ps4-.woff2)format("woff2");font-display:swap}@font-face{font-family:monoFont Fallback;src:local(Arial);ascent-override:82.1%;descent-override:19.44%;line-gap-override:0.0%;size-adjust:115.71%}.monofont_19e92d7b-module__zczTfq__className{font-family:monoFont,monoFont Fallback}.monofont_19e92d7b-module__zczTfq__variable{--font-mono-local:"monoFont", "monoFont Fallback"}
@font-face{font-family:handFont;src:url(../media/handwriting_01-s.p.14sy~0sp3o-a1.woff2)format("woff2");font-display:swap}@font-face{font-family:handFont Fallback;src:local(Arial);ascent-override:110.91%;descent-override:28.22%;line-gap-override:0.0%;size-adjust:83.73%}.handfont_6509842a-module__rwTADW__className{font-family:handFont,handFont Fallback}.handfont_6509842a-module__rwTADW__variable{--font-hand-local:"handFont", "handFont Fallback"}
:root,html[data-theme=notebook]{--paper:#fbf8f0;--paper-2:#f5f0e2;--paper-3:#ece5d1;--line:#d7ceb2;--line-2:#a89d7a;--grid:#e6dcba;--ink:#2a2a2a;--ink-2:#49473e;--ink-3:#6b6858;--ink-4:#989276;--ink-1:var(--ink);--accent:#2a5f7a;--accent-pale:#dae8ef;--seal:#c24a3a;--seal-pale:#f4dbd4;--hl:#f3e08a;--observe:#b8932a;--observe-pale:#b8932a1f;--active:#3b8a4f;--active-pale:#3b8a4f1a;--gap-xs:8px;--gap-sm:12px;--gap-md:16px;--gap-lg:20px;--r:3px;--r-lg:5px;--f-sans:var(--font-sans-local),-apple-system,"Pretendard","Apple SD Gothic Neo",sans-serif;--f-serif:var(--font-serif-local),"Noto Serif KR",ui-serif,serif;--f-hand:var(--font-hand-local),"Gaegu",-apple-system,"Pretendard","Apple SD Gothic Neo",sans-serif;--f-pen:var(--font-hand-local),cursive,-apple-system,"Pretendard","Apple SD Gothic Neo",sans-serif;--f-num:var(--font-mono-local),ui-monospace,"SF Mono",Consolas,monospace;--sb-w:230px;--shadow:3px 3px 0 var(--ink-3);--btn-shadow:2px 2px 0 var(--ink);--grid-show:block;--dash:dashed;--card-bd:1.5px solid var(--ink);--btn-bd:1.5px solid var(--ink)}html[data-theme=analog]{--paper:#faf7f2;--paper-2:#f3eee6;--paper-3:#ebe4d5;--line:#e6ddd0;--line-2:#d4c9b3;--grid:transparent;--ink:#2a2623;--ink-2:#4a433c;--ink-3:#6b635a;--ink-4:#9a9085;--accent:#2a2623;--accent-pale:#f3eee6;--seal:#b44b3c;--seal-pale:#f4dcd6;--observe:#a8842a;--observe-pale:#a8842a1a;--active:#3a7048;--active-pale:#3a704814;--hl:#eadfc2;--r:2px;--r-lg:4px;--f-sans:var(--f-serif);--f-hand:var(--f-serif);--f-pen:var(--f-serif);--shadow:none;--btn-shadow:none;--grid-show:none;--dash:solid;--card-bd:1px solid var(--line);--btn-bd:1px solid var(--line-2)}html[data-theme=saas]{--paper:#fffdf5;--paper-2:#faf3e0;--paper-3:#f3e9cf;--line:#eadfbf;--line-2:#d4c193;--grid:transparent;--ink:#3a3220;--ink-2:#5b5238;--ink-3:#857a5c;--ink-4:#ada283;--accent:#b0741a;--accent-pale:#f5e7c6;--seal:#cb4a2b;--seal-pale:#f7ddd2;--observe:#b07d1c;--observe-pale:#b07d1c1f;--active:#5f7d34;--active-pale:#5f7d341a;--hl:#f7e59c;--r:3px;--r-lg:6px;--f-hand:var(--f-sans);--f-pen:var(--f-sans);--shadow:0 1px 2px #3a32200f;--btn-shadow:none;--grid-show:none;--dash:solid;--card-bd:1px solid var(--line);--btn-bd:1px solid var(--line-2)}html[data-theme=notebook]{--f-sans:var(--f-hand);--f-num:var(--f-hand)}html[data-theme=notebook][data-mode=dark]{--paper:#222a25;--paper-2:#2a332d;--paper-3:#323c35;--line:#414b44;--line-2:#5c675c;--grid:#2e3832;--ink:#eae8db;--ink-2:#c5c4b5;--ink-3:#969585;--ink-4:#6f6f62;--accent:#84b9c6;--accent-pale:#2c3a3d;--seal:#e58f7d;--seal-pale:#3e2f2c;--hl:#4d4824;--observe:#d4b061;--observe-pale:#d4b06126;--active:#82c08d;--active-pale:#82c08d21;--shadow:3px 3px 0 #161c18;--btn-shadow:2px 2px 0 #12160f}html[data-theme=analog][data-mode=dark]{--paper:#211e1a;--paper-2:#2a2620;--paper-3:#332e26;--line:#3c372e;--line-2:#554d40;--grid:transparent;--ink:#e7dec9;--ink-2:#beb49d;--ink-3:#8f8773;--ink-4:#6a6454;--accent:#cb9f54;--accent-pale:#352d1e;--seal:#d05f4a;--seal-pale:#3b2a25;--hl:#4a4225;--observe:#c8a44e;--observe-pale:#c8a44e26;--active:#88a75f;--active-pale:#88a75f1f}html[data-theme=saas][data-mode=dark]{--paper:#15181f;--paper-2:#1d2129;--paper-3:#252a34;--line:#2f343e;--line-2:#454c5a;--grid:transparent;--ink:#e4e6ec;--ink-2:#b3b8c3;--ink-3:#828995;--ink-4:#5c626f;--accent:#7da8da;--accent-pale:#243140;--seal:#e3674f;--seal-pale:#3a2723;--hl:#454b27;--observe:#d0a552;--observe-pale:#d0a55226;--active:#71b787;--active-pale:#71b7871f;--shadow:0 1px 3px #00000073}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:linear-gradient(var(--grid) 1px,transparent 1px) 0 0/24px 24px, linear-gradient(90deg,var(--grid) 1px,transparent 1px) 0 0/24px 24px, var(--paper);color:var(--ink);font-family:var(--f-sans);-webkit-font-smoothing:antialiased;font-size:15.5px;line-height:1.55}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{letter-spacing:-.01em;margin:0;font-weight:700}h1{font-family:var(--f-hand);color:var(--ink);font-size:32px;font-weight:700}h2{font-family:var(--f-hand);font-size:20px;font-weight:700}h3{font-size:14px}h4{color:var(--ink-3);text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:600;font-family:var(--f-sans)}.num{font-family:var(--f-num);font-variant-numeric:tabular-nums}html[data-theme=analog] h1,html[data-theme=saas] h1{font-size:22px}html[data-theme=analog] h2,html[data-theme=saas] h2{font-size:15px}.app{grid-template-columns:var(--sb-w) 1fr;min-height:100vh;display:grid}.sidebar{background:var(--paper);border-right:2px solid var(--ink-3);height:100vh;padding:22px 12px;position:sticky;top:0;overflow:auto}html[data-theme=analog] .sidebar,html[data-theme=saas] .sidebar{border-right:1px solid var(--line);background:var(--paper-2)}.sidebar .brand{font-family:var(--f-hand);align-items:center;gap:8px;padding:2px 8px;font-size:22px;font-weight:700;display:flex}.sidebar .brand .seal{background:var(--seal);color:#fff;width:28px;height:28px;font-family:var(--f-pen);border-radius:3px;justify-content:center;align-items:center;font-size:20px;display:flex;transform:rotate(-4deg)}html[data-theme=analog] .sidebar .brand .seal,html[data-theme=saas] .sidebar .brand .seal{font-size:13px;font-family:var(--f-sans);font-weight:700;transform:none}.sidebar .brand-sub{font-family:var(--f-pen);color:var(--ink-3);border-bottom:1.5px solid var(--ink-3);margin-bottom:12px;padding:0 10px 14px;font-size:16px;line-height:1}html[data-theme=analog] .sidebar .brand-sub,html[data-theme=saas] .sidebar .brand-sub{font-family:var(--f-sans);border-bottom:1px solid var(--line);letter-spacing:.06em;text-transform:uppercase;padding-bottom:12px;font-size:12px;line-height:1.4}.sidebar .user-chip{border:1.5px solid var(--ink-3);background:#fffbec;border-radius:3px;justify-content:space-between;align-items:center;margin-bottom:12px;padding:10px;font-size:12px;display:flex;transform:rotate(-.3deg)}html[data-theme=analog] .sidebar .user-chip,html[data-theme=saas] .sidebar .user-chip{background:var(--paper);border:1px solid var(--line);transform:none}html[data-theme=notebook][data-mode=dark] .sidebar .user-chip{background:var(--paper-3)}.sidebar .user-chip .nm{font-weight:700}.sidebar .user-chip .rl{color:var(--ink-3);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.nav-group{font-family:var(--f-pen);color:var(--ink-3);margin:12px 10px 2px;font-size:17px;line-height:1}html[data-theme=analog] .nav-group,html[data-theme=saas] .nav-group{font-family:var(--f-sans);letter-spacing:.08em;text-transform:uppercase;margin-top:14px;font-size:11px;font-weight:600;line-height:1.3}.sidebar-sep{background:var(--line);opacity:.7;height:1px;margin:10px}.sidebar a.nav{color:var(--ink-2);border:0;border-radius:3px;align-items:center;gap:8px;padding:6px 10px;font-size:15px;text-decoration:none;display:flex}.sidebar a.nav:hover{text-decoration:none}.sidebar a.nav .n{font-family:var(--f-num);color:var(--ink-4);min-width:18px;font-size:11px}.sidebar a.nav:hover{background:var(--paper-2)}.sidebar a.nav.active{background:var(--hl);color:var(--ink);font-weight:700;position:relative}.sidebar a.nav.active:before{content:"▸";color:var(--seal);margin-right:2px}html[data-theme=analog] .sidebar a.nav.active,html[data-theme=saas] .sidebar a.nav.active{box-shadow:inset 2px 0 0 var(--seal);background:var(--paper)}html[data-theme=analog] .sidebar a.nav.active:before,html[data-theme=saas] .sidebar a.nav.active:before{content:""}.sidebar .imp-banner{border:1px solid var(--observe);border-left:3px solid var(--observe);background:var(--observe-pale);border-radius:4px;gap:8px;margin:0 0 12px;padding:10px 12px;display:grid}.sidebar .imp-banner-row{align-items:center;gap:10px;display:flex}.sidebar .imp-banner-icon{flex-shrink:0;font-size:14px}.sidebar .imp-banner-label{color:var(--observe);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700}.sidebar .imp-banner-target{color:var(--ink-1);font-size:13px;font-weight:600}.sidebar .imp-banner-exit{justify-content:center;width:100%;font-size:11px}.imp-section{border-top:1px dashed var(--line);margin-top:14px;padding-top:10px}.imp-section .imp-toggle{cursor:pointer;text-align:left;width:calc(100% - 20px);color:var(--ink-3);background:0 0;border:0;align-items:center;padding:0;font-family:inherit;display:flex}.imp-section .imp-toggle:hover{color:var(--ink-2)}.imp-section .imp-list{flex-direction:column;gap:1px;padding-top:4px;display:flex}.imp-section .imp-link{color:var(--ink-3);padding-left:18px;font-size:13px}.imp-section .imp-link.active{background:var(--observe-pale);color:var(--observe);border-left:3px solid var(--observe);border-radius:0;font-weight:600}.imp-section .imp-return{color:var(--ink-3);margin-top:4px;font-size:12px;font-style:italic}.main{flex-direction:column;min-width:0;display:flex}.topbar{border-bottom:1.5px dashed var(--ink-3);background:var(--paper);z-index:2;justify-content:space-between;align-items:center;padding:14px 24px;display:flex;position:sticky;top:0}html[data-theme=analog] .topbar,html[data-theme=saas] .topbar{border-bottom:1px solid var(--line)}.topbar .crumbs{font-family:var(--f-pen);color:var(--ink-3);font-size:18px;line-height:1}html[data-theme=analog] .topbar .crumbs,html[data-theme=saas] .topbar .crumbs{font-family:var(--f-sans);font-size:12px;line-height:1.4}.topbar .tools{color:var(--ink-3);align-items:center;gap:10px;font-size:12px;display:flex}.topbar .tools .search{background:var(--paper);border:1.5px solid var(--ink-3);color:var(--ink-3);border-radius:3px;min-width:220px;padding:4px 10px;font-size:12px}html[data-theme=analog] .topbar .tools .search,html[data-theme=saas] .topbar .tools .search{border:1px solid var(--line);background:var(--paper-2)}.content{max-width:1280px;padding:24px}.content.wide{max-width:none}.ctx{border-bottom:2px solid var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:10px;margin-bottom:20px;padding-bottom:12px;display:flex;position:relative}.ctx:after{content:"";border-bottom:1px solid var(--ink);opacity:.4;position:absolute;bottom:-5px;left:0;right:0}html[data-theme=analog] .ctx:after,html[data-theme=saas] .ctx:after{display:none}html[data-theme=analog] .ctx,html[data-theme=saas] .ctx{border-bottom:1px solid var(--line)}.ctx h1{margin-bottom:2px}.ctx .sub{font-family:var(--f-pen);color:var(--ink-3);font-size:18px;line-height:1.2}html[data-theme=analog] .ctx .sub,html[data-theme=saas] .ctx .sub{font-family:var(--f-sans);font-size:12px;line-height:1.4}.ctx .actions{align-items:center;gap:8px;display:flex}.ctx:has(+.toolbar){border-bottom:none;margin-bottom:0;padding-bottom:6px}.ctx:has(+.toolbar):after{display:none}.toolbar{border-bottom:1.5px dashed var(--line-2);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;padding:10px 0 12px;display:flex}html[data-theme=analog] .toolbar,html[data-theme=saas] .toolbar{border-bottom:1px solid var(--line)}.toolbar .leading{flex-wrap:wrap;flex:none;align-items:center;gap:10px;display:flex}.toolbar .trailing{flex-wrap:wrap;flex:1;justify-content:flex-end;align-items:center;gap:10px;display:flex}.toolbar .label{font-family:var(--f-sans);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);font-size:12px;font-weight:600}@media (max-width:767px){.toolbar{flex-direction:column;align-items:stretch}.toolbar .leading,.toolbar .trailing{justify-content:flex-start}}@media (max-width:480px){.toolbar .leading,.toolbar .trailing{flex-wrap:nowrap;overflow-x:auto}}.impersonation-bar{background:var(--observe-pale);border:1px solid var(--observe);border-left:4px solid var(--observe);border-radius:var(--r);color:var(--ink-2);align-items:center;gap:10px;margin-bottom:8px;padding:8px 14px;font-size:12px;display:flex}.impersonation-bar .icon{font-size:14px}.impersonation-bar .lb{font-weight:600}.impersonation-bar .name{color:var(--ink);font-weight:700}.impersonation-bar .spacer{flex:1}@media (max-width:767px){.impersonation-bar{flex-wrap:wrap}body[data-impersonating="1"]{background-color:#b8932a05}}.obs-badge{border:1px solid;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:12px;font-weight:700;line-height:1.4;display:inline-flex}.obs-badge[data-tone=active]{background:var(--active-pale);color:var(--active);border-color:var(--active)}.obs-badge[data-tone=preview]{background:var(--observe-pale);color:var(--observe);border-color:var(--observe);border-style:dashed}.obs-badge .dot{background:currentColor;border-radius:50%;width:7px;height:7px;display:inline-block}.obs-badge .icon{font-size:10px}.obs-badge .detail{color:var(--ink-2);margin-left:4px;font-weight:500}.set-periods{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.set-period-context{color:var(--ink-3);font-size:11px;font-weight:500}.set-period-empty{color:var(--ink-3);align-items:center;gap:6px;font-size:11px;display:inline-flex}.set-period-empty-label{border:1px dashed var(--line);color:var(--ink-3);letter-spacing:.04em;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:600}.set-period-empty-detail{color:var(--ink-3)}.period-chip{font-variant-numeric:tabular-nums;border:1px solid;border-radius:999px;align-items:center;gap:6px;padding:3px 9px 3px 7px;font-size:12px;line-height:1.4;display:inline-flex}.period-chip-dot{background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.period-chip-label{letter-spacing:.04em;font-weight:700}.period-chip-range{color:var(--ink-2);align-items:center;gap:5px;font-weight:500;display:inline-flex}.period-chip-arrow{opacity:.5;font-size:10px}.period-chip[data-kind=current]{background:var(--active-pale);color:var(--active);border-color:var(--active);box-shadow:0 0 0 2px var(--active-pale)}.period-chip[data-kind=current] .period-chip-range{color:var(--active);font-weight:600}.period-chip[data-kind=future]{background:var(--observe-pale);color:var(--observe);border-color:var(--observe);border-style:dashed}.period-chip[data-kind=future] .period-chip-range{color:var(--observe)}.period-chip[data-kind=past]{background:var(--paper);color:var(--ink-3);border-color:var(--line)}.period-chip[data-kind=past] .period-chip-range{color:var(--ink-3)}.set-card{border:1px solid var(--line);background:var(--paper);border-radius:6px;gap:10px;padding:14px 16px;transition:border-color .12s;display:grid}.set-card.active{border-color:var(--active);box-shadow:0 0 0 1px var(--active)}.set-card-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.set-card-title-row{flex-wrap:wrap;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.set-card-name{color:var(--ink-1);margin:0;font-size:15px;font-weight:700}.set-card-counts{color:var(--ink-3);font-size:12px}.set-card-status{letter-spacing:.06em;border:1px solid;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:10px;font-weight:700;display:inline-flex}.set-card-status-dot{background:currentColor;border-radius:50%;width:6px;height:6px}.set-card-status[data-status=current]{background:var(--active-pale);color:var(--active);border-color:var(--active)}.set-card-status[data-status=future]{background:var(--observe-pale);color:var(--observe);border-color:var(--observe)}.set-card-status[data-status=past]{background:var(--paper);color:var(--ink-3);border-color:var(--line)}.set-card-status[data-status=draft]{background:var(--paper);color:var(--ink-3);border-color:var(--line);border-style:dashed}.set-card-periods{font-size:12px}.set-card-actions{border-top:1px dashed var(--line);flex-wrap:wrap;align-items:center;gap:6px;padding-top:6px;display:flex}.set-timeline{font-variant-numeric:tabular-nums;gap:14px;display:grid}.set-timeline-rule{height:14px;position:relative}.set-timeline-tick{background:var(--line);width:1px;height:14px;position:absolute;top:0}.set-timeline-tick-label{color:var(--ink-3);white-space:nowrap;font-size:10px;position:absolute;top:-4px;left:4px}.set-timeline-today{background:var(--seal,#b44b3c);z-index:2;width:2px;height:18px;position:absolute;top:-2px;transform:translate(-1px)}.set-timeline-today-label{color:var(--seal,#b44b3c);background:var(--paper);border:1px solid var(--seal,#b44b3c);white-space:nowrap;letter-spacing:.04em;border-radius:999px;padding:1px 6px;font-size:10px;font-weight:700;position:absolute;top:-16px;left:-30px}.set-timeline-track{background:var(--paper-2,#fafaf6);border:1px solid var(--line);border-radius:4px;height:46px;position:relative;overflow:hidden}.set-timeline-seg{color:#fff;border-radius:3px;align-items:center;padding:0 8px;font-size:11px;font-weight:600;display:flex;position:absolute;top:6px;bottom:6px;overflow:hidden;box-shadow:inset 0 0 0 1px #0000000a}.set-timeline-seg.seg-past{opacity:.65}.set-timeline-seg.seg-future{opacity:.85}.set-timeline-seg.open-ended{background-image:linear-gradient(to right, currentBg, transparent)}.set-timeline-seg-label{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;display:flex;overflow:hidden}.set-timeline-seg-name{font-weight:700}.set-timeline-seg-range{opacity:.85;font-size:10px;font-weight:500}.set-timeline-legend{color:var(--ink-3);flex-wrap:wrap;gap:14px;font-size:11px;display:flex}.set-timeline-legend-item{align-items:center;gap:5px;display:inline-flex}.set-timeline-legend-dot{border-radius:2px;width:9px;height:9px;display:inline-block}.set-timeline-scheduled{background:var(--observe-pale);border-left:3px solid var(--observe);border-radius:4px;padding:10px 12px;font-size:12px}.set-timeline-scheduled-head{color:var(--observe);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;font-size:10px;font-weight:700}.set-timeline-scheduled ul{color:var(--ink-2);gap:4px;margin:0;padding:0;list-style:none;display:grid}.ui-pending{z-index:200;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fff6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ui-pending-box{color:#fff;background:#2a2a2aeb;border-radius:8px;align-items:center;gap:10px;padding:14px 24px;font-size:13px;font-weight:600;display:flex;box-shadow:0 8px 24px #0000004d}.ui-pending-spinner{border:2.5px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite ui-spin}@keyframes ui-spin{to{transform:rotate(360deg)}}.card{background:var(--paper);border:var(--card-bd);border-radius:var(--r-lg);box-shadow:var(--shadow);margin-bottom:12px;padding:16px}.card.paper{background:#fffbec}html[data-theme=analog] .card.paper,html[data-theme=saas] .card.paper{background:var(--paper-2)}html[data-theme=notebook][data-mode=dark] .card.paper{background:var(--paper-3)}.card .hd{border-bottom:1.5px dashed var(--ink-3);justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;display:flex}html[data-theme=analog] .card .hd,html[data-theme=saas] .card .hd{border-bottom:1px solid var(--line)}.card .hd h2{font-size:20px}html[data-theme=analog] .card .hd h2,html[data-theme=saas] .card .hd h2{font-size:15px}.grid-2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.kpi{padding:14px 16px;position:relative}.kpi .lb{font-family:var(--f-pen);color:var(--ink-3);margin-bottom:2px;font-size:18px;line-height:1}html[data-theme=analog] .kpi .lb,html[data-theme=saas] .kpi .lb{font-family:var(--f-sans);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:600}.kpi .v{font-family:var(--f-hand);letter-spacing:-.02em;color:var(--ink);margin:6px 0 4px;font-size:42px;font-weight:700;line-height:1}html[data-theme=analog] .kpi .v,html[data-theme=saas] .kpi .v{font-family:var(--f-num);font-size:30px;font-weight:500}.kpi .v .sm{color:var(--ink-3);font-size:20px}html[data-theme=analog] .kpi .v .sm,html[data-theme=saas] .kpi .v .sm{font-size:14px}.kpi .meta{color:var(--ink-3);font-size:12px}.kpi.alert .v{color:var(--seal)}.fld{margin-bottom:14px;display:block}.fld>label{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:600;font-family:var(--f-sans);margin-bottom:4px;display:block}.fld>label .req{color:var(--seal);margin-left:2px}.tuition-pay-form{gap:8px;display:grid}.tuition-pay-form-row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.tuition-pay-form-row .fld{gap:3px;margin-bottom:0;display:grid}.tuition-pay-form-row .fld>label{letter-spacing:.08em;margin-bottom:0;font-size:10px}.tuition-pay-form-submit{align-self:flex-end;margin-left:auto}.tuition-pay-form-status{border-radius:4px;padding:6px 10px;font-size:12px;line-height:1.4}.tuition-pay-form-status .status-ok{color:var(--active,#3b8a4f);font-weight:700}.tuition-pay-form-status .status-err{color:var(--seal,#b44b3c);font-weight:600}.input,.select,.textarea{background:var(--paper);border:1.5px solid var(--ink);font:inherit;color:var(--ink);border-radius:3px;min-width:220px;padding:6px 10px;display:inline-block}html[data-theme=analog] .input,html[data-theme=saas] .input,html[data-theme=analog] .select,html[data-theme=saas] .select,html[data-theme=analog] .textarea,html[data-theme=saas] .textarea{border:1px solid var(--line-2);background:var(--paper)}.input.full,.select.full,.textarea.full{width:100%;min-width:0;display:block}html[data-mode=dark] input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.textarea{vertical-align:top;min-height:68px}.hint{color:var(--ink-3);margin-top:4px;font-size:12px;display:block}.hint.warn{color:var(--seal);font-weight:600}.report-body h1{border-bottom:2px solid var(--ink);margin:0 0 12px;padding-bottom:6px;font-size:20px}.report-body h2{color:var(--ink-1);margin:18px 0 8px;font-size:16px;font-weight:700}.report-body h3{color:var(--ink-1);margin:12px 0 4px;font-size:14px;font-weight:600}.report-body p{margin:6px 0}.report-body ul{margin:6px 0 12px 18px;padding:0}.report-body li{margin:2px 0}.report-body hr{border:0;border-top:1px solid var(--ink-line,#e5e5e5);margin:14px 0}.report-frontmatter{color:var(--ink-3);background:var(--ink-bg,#fafafa);border:1px dashed var(--ink-line,#e5e5e5);border-radius:4px;margin-bottom:12px;padding:8px 10px;font-family:ui-monospace,monospace;font-size:11px}.report-frontmatter div{line-height:1.5}.radio,.check{cursor:pointer;align-items:center;gap:6px;margin-right:12px;font-size:13px;display:inline-flex}.radio .dot,.check .dot{border:1.5px solid var(--ink);background:var(--paper);width:14px;height:14px;display:inline-block}.radio .dot{border-radius:50%}.radio.on .dot{background:radial-gradient(circle,var(--ink) 0 40%,var(--paper) 42%)}.check.on .dot{background:var(--ink);position:relative}.check.on .dot:after{content:"✓";color:var(--paper);font-size:12px;font-weight:700;position:absolute;top:-2px;left:1px}.btn{border:var(--btn-bd);background:var(--paper);color:var(--ink);font:inherit;cursor:pointer;box-shadow:var(--btn-shadow);border-radius:3px;align-items:center;gap:6px;padding:6px 14px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover{text-decoration:none}.btn.primary{background:var(--ink);color:var(--paper)}html[data-theme=saas] .btn.primary{background:var(--accent);border-color:var(--accent)}.btn.seal{background:var(--seal);color:#fff;border-color:var(--seal)}.btn.ghost{box-shadow:none;border-style:dashed;font-weight:500}html[data-theme=analog] .btn.ghost,html[data-theme=saas] .btn.ghost{border-style:solid;border-color:var(--line);background:0 0}.btn.sm{box-shadow:var(--btn-shadow);padding:3px 9px;font-size:13px}html[data-theme=notebook] .btn.sm{box-shadow:1px 1px 0 var(--ink)}.btn.link{color:var(--accent);box-shadow:none;background:0 0;border:0;padding:0;font-weight:500;text-decoration:underline}.btn-group{border:var(--btn-bd);box-shadow:var(--btn-shadow);border-radius:3px;display:inline-flex;overflow:hidden}.btn-group .btn{border:0;border-right:var(--btn-bd);box-shadow:none;border-radius:0;font-weight:500}.btn-group .btn:last-child{border-right:0}.btn-group .btn.on{background:var(--ink);color:var(--paper)}.tbl{border-collapse:collapse;width:100%;font-size:14px}.tbl th,.tbl td{text-align:left;border-bottom:1px var(--dash) var(--ink-3);padding:8px 12px}html[data-theme=analog] .tbl th,html[data-theme=saas] .tbl th,html[data-theme=analog] .tbl td,html[data-theme=saas] .tbl td{border-bottom:1px solid var(--line);padding:10px 12px}.tbl thead th{font-family:var(--f-pen);color:var(--ink);border-bottom:2px solid var(--ink);padding:4px 12px;font-size:17px;font-weight:400;line-height:1}html[data-theme=analog] .tbl thead th,html[data-theme=saas] .tbl thead th{font-family:var(--f-sans);color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;border-bottom:1.5px solid var(--line-2);padding:8px 12px;font-size:12.5px;font-weight:600;line-height:1.3}.tbl tbody tr:hover td{background:#f3e08a4d}html[data-theme=analog] .tbl tbody tr:hover td,html[data-theme=saas] .tbl tbody tr:hover td{background:var(--paper-2)}.tbl tfoot th,.tbl tfoot td{color:var(--ink);border-top:2px solid var(--ink);background:var(--paper);border-bottom:0;font-weight:700}html[data-theme=analog] .tbl tfoot th,html[data-theme=saas] .tbl tfoot th,html[data-theme=analog] .tbl tfoot td,html[data-theme=saas] .tbl tfoot td{border-top:1.5px solid var(--line-2);background:var(--paper-2);font-weight:700}.tbl td.num,.tbl th.num{text-align:right;font-family:var(--f-num);font-variant-numeric:tabular-nums}.tbl td.c,.tbl th.c{text-align:center}.tbl td.muted{color:var(--ink-3)}.tbl .name{color:var(--ink);font-weight:700}.tbl .sub{color:var(--ink-3);font-family:var(--f-pen);margin-top:2px;font-size:14px;line-height:1;display:block}html[data-theme=analog] .tbl .sub,html[data-theme=saas] .tbl .sub{font-family:var(--f-sans);font-size:12px}.badge{border:1.5px solid var(--ink);background:var(--paper);border-radius:10px;align-items:center;gap:5px;padding:1px 8px;font-size:12px;font-weight:700;line-height:1.6;display:inline-flex}html[data-theme=analog] .badge,html[data-theme=saas] .badge{border:1px solid var(--line-2);border-radius:3px;padding:2px 8px;font-size:12px;font-weight:500}.badge .dot{background:var(--ink);border-radius:50%;width:6px;height:6px}html[data-theme=analog] .badge .dot{border-radius:1px}.badge.seal{background:var(--seal-pale);color:var(--seal);border-color:var(--seal)}html[data-theme=analog] .badge.seal,html[data-theme=saas] .badge.seal{border-color:#e7bfb7}.badge.seal .dot{background:var(--seal)}.badge.mute{color:var(--ink-3);border-color:var(--ink-3);font-weight:500}html[data-theme=analog] .badge.mute,html[data-theme=saas] .badge.mute{border-color:var(--line)}.badge.accent{background:var(--accent-pale);color:var(--accent);border-color:var(--accent)}html[data-theme=analog] .badge.accent,html[data-theme=saas] .badge.accent{border-color:var(--line-2)}.badge.accent .dot{background:var(--accent)}.badge.fill{background:var(--ink);color:var(--paper);border-color:var(--ink)}.st-재원{background:var(--hl);border-color:var(--ink)}html[data-theme=analog] .st-재원,html[data-theme=saas] .st-재원{background:var(--paper-2);border-color:var(--line-2)}.st-재원 .dot{background:var(--ink)}.st-변경 .dot{background:#a67c2e}.st-퇴원{color:var(--ink-3);border-color:var(--ink-3);font-weight:500}.st-퇴원 .dot{background:var(--ink-4)}.st-졸업 .dot{border:1px solid var(--ink-3);background:0 0;border-radius:50%;width:7px;height:7px}.st-졸업{color:var(--ink-3)}.pay-ok{color:var(--ink-2);font-family:var(--f-num);font-variant-numeric:tabular-nums}.pay-miss{color:var(--ink-3)}.pay-miss a{color:var(--ink-3);border:0;width:100%;height:100%;margin:-8px -12px;padding:8px 12px;text-decoration:none;display:block}.pay-miss a:hover{color:var(--ink-1);background:var(--paper-2,#f4f4f4)}.pay-q{color:var(--ink-3)}.pay-q:after{content:" ?";color:var(--seal)}.pay-vip:after{content:" ●";color:var(--seal);vertical-align:middle;font-size:10px}.cal{border:1.5px solid var(--ink);background:var(--paper);border-radius:3px;grid-template-columns:repeat(7,1fr);gap:0;display:grid}html[data-theme=analog] .cal,html[data-theme=saas] .cal{border:1px solid var(--line)}.cal .c{border-right:1px dashed var(--ink-3);border-bottom:1px dashed var(--ink-3);min-height:72px;padding:6px;font-size:11px;position:relative}html[data-theme=analog] .cal .c,html[data-theme=saas] .cal .c{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.cal .c:nth-child(7n){border-right:0}.cal .c.head{background:var(--paper-2);text-align:center;min-height:0;font-family:var(--f-pen);color:var(--ink);padding:4px 0;font-size:15px;line-height:1.2}html[data-theme=analog] .cal .c.head,html[data-theme=saas] .cal .c.head{font-family:var(--f-sans);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);padding:6px 0;font-size:10px;font-weight:600}.cal .c .m{color:var(--ink-3);font-family:var(--f-num);margin-bottom:2px;font-size:11px;display:block}.cal .c.today{background:var(--hl);background:#f3e08a66}.cal .c.today .m{color:var(--seal);font-weight:700}.cal .c .tag{background:var(--paper-2);border-left:3px solid var(--ink);margin-top:2px;padding:1px 4px;font-size:10px;line-height:1.5;display:block}.cal .c .tag.seal{border-left-color:var(--seal);color:var(--seal);background:var(--seal-pale)}.cal .c .tag.mute{border-left-color:var(--line-2);color:var(--ink-3)}.att-cal-cell.sched-cell .sched-cell-add{border:1.5px solid var(--accent,#2a5f7a);background:var(--accent,#2a5f7a);color:#fff;cursor:pointer;opacity:0;z-index:2;border-radius:50%;justify-content:center;align-items:center;width:21px;height:21px;padding:0;font-family:inherit;font-size:14px;font-weight:700;line-height:1;transition:opacity 80ms,transform 80ms,box-shadow 80ms;display:flex;position:absolute;bottom:5px;right:5px;transform:scale(.85);box-shadow:0 2px 5px #00000024}.att-cal-cell.sched-cell:hover .sched-cell-add,.att-cal-cell.sched-cell:focus-within .sched-cell-add{opacity:1;transform:scale(1)}.att-cal-cell.sched-cell .sched-cell-add:hover{filter:brightness(1.08);transform:scale(1.12);box-shadow:0 3px 8px #00000038}.att-cal-cell.sched-cell .sched-cell-bulk{border:1.5px solid var(--active,#3b8a4f);background:var(--active,#3b8a4f);color:#fff;cursor:pointer;opacity:0;z-index:2;letter-spacing:.02em;border-radius:11px;align-items:center;gap:3px;height:21px;padding:0 8px;font-family:inherit;font-size:10px;font-weight:700;line-height:1;transition:opacity 80ms,transform 80ms,box-shadow 80ms;display:inline-flex;position:absolute;bottom:5px;left:5px;transform:scale(.85);box-shadow:0 2px 5px #00000024}.att-cal-cell.sched-cell:hover .sched-cell-bulk,.att-cal-cell.sched-cell:focus-within .sched-cell-bulk{opacity:1;transform:scale(1)}.att-cal-cell.sched-cell .sched-cell-bulk:hover{filter:brightness(1.08);transform:scale(1.06);box-shadow:0 3px 8px #00000038}.sched-entry{border:none;border-left:3px solid var(--ink);background:var(--paper-2);color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;text-align:left;cursor:pointer;border-radius:2px;width:100%;padding:3px 6px;font-family:inherit;font-size:13.5px;line-height:1.45;text-decoration:none;display:block;overflow:hidden}.sched-entry.extra{border-left-color:var(--accent);background:var(--accent-pale);color:var(--accent);border:none;border-left:3px solid var(--accent);text-align:left;cursor:pointer;width:100%;font-family:inherit;font-weight:600}.sched-entry:hover{background:var(--hl)}.sched-entry.extra:hover{background:var(--accent-pale);filter:brightness(.95)}.att-cal-cell.sched-cell .sched-cell-head{justify-content:space-between;align-items:flex-start;gap:6px;display:flex}.att-cal-cell.sched-cell .sched-cell-head .att-cal-day{flex:none}.att-cal-cell.future-date .sched-entry{opacity:.5}.att-cal-cell.future-date .sched-entry.extra{cursor:default}.att-cal-cell.future-date .sched-entry:hover{opacity:1}.att-summary-chip{background:var(--paper-2);border:1px solid var(--line);color:var(--ink-2);cursor:default;border-radius:999px;flex:none;align-items:center;gap:4px;padding:3px 8px;font-size:13px;font-weight:700;line-height:1;display:inline-flex;position:relative}.att-summary-chip .present{color:var(--ink-2)}.att-summary-chip .absent{color:var(--seal)}.att-summary-popover{background:var(--paper);border:1px solid var(--ink);text-align:left;white-space:normal;z-index:60;border-radius:6px;width:min(560px,100vw - 32px);max-height:min(60vh,460px);padding:10px 12px;font-size:12px;line-height:1.4;display:none;position:absolute;bottom:calc(100% + 6px);right:0;overflow-y:auto;box-shadow:0 6px 24px #0000002e}.att-summary-chip:hover .att-summary-popover,.att-summary-chip:focus .att-summary-popover,.att-summary-chip:focus-within .att-summary-popover{display:block}.att-summary-popover .popover-head{color:var(--ink-2);border-bottom:1px solid var(--line);white-space:nowrap;margin-bottom:6px;padding-bottom:6px;font-size:11px;font-weight:600}.att-summary-popover .popover-section{margin-top:6px}.att-summary-popover .popover-section:first-of-type{margin-top:0}.att-summary-popover .popover-label{color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px;font-size:10px;font-weight:600}.att-summary-popover ul{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));align-content:start;gap:3px 14px;margin:0;padding:0;list-style:none;display:grid}.att-summary-popover li{align-items:baseline;gap:6px;min-width:0;display:flex}.att-summary-popover li .dot{text-align:center;flex-shrink:0;width:12px;font-size:10px}.att-summary-popover li .dot.present{color:var(--ink-2)}.att-summary-popover li .dot.absent{color:var(--seal);font-weight:700}.att-summary-popover li a{color:inherit;font-weight:500;text-decoration:none}.att-summary-popover li a:hover{text-decoration:underline}.att-summary-popover li .reason{color:var(--ink-3);font-size:11px;font-style:italic}.att-summary-popover .popover-section.unmarked{opacity:.55}.att-summary-popover .popover-section.unmarked li .dot{color:var(--ink-3)}.sched-entry-wrap{display:block;position:relative}.sched-entry-wrap .sched-entry-cancel{border:1px solid var(--seal,#b44b3c);background:var(--paper);width:13px;height:13px;color:var(--seal,#b44b3c);cursor:pointer;opacity:0;z-index:3;border-radius:2px;justify-content:center;align-items:center;padding:0;line-height:1;transition:opacity 80ms,transform 80ms;display:flex;position:absolute;top:50%;right:3px;transform:translateY(-50%)scale(.7);box-shadow:0 1px 2px #0000001f}.sched-entry-wrap .sched-entry-cancel>svg{display:block}.sched-entry-wrap:hover .sched-entry-cancel,.sched-entry-wrap:focus-within .sched-entry-cancel{opacity:1;transform:translateY(-50%)scale(1)}.sched-entry-wrap .sched-entry-cancel:hover{background:var(--seal,#b44b3c);color:#fff;transform:translateY(-50%)scale(1.15)}.sched-entry.cancelled{opacity:.6;color:var(--ink-3);background:repeating-linear-gradient(45deg, var(--paper-2,#fafaf6) 0 4px, var(--paper) 4px 8px);border-left-color:var(--seal,#b44b3c);-webkit-text-decoration:line-through #b44b3c99;text-decoration:line-through #b44b3c99;text-decoration-thickness:1.5px}.sched-entry.cancelled:hover{opacity:.85}.sched-entry-wrap.cancelled .sched-entry-cancel{display:none}.sched-entry-wrap:hover .att-summary-popover.entry-popover,.sched-entry-wrap:focus-within .att-summary-popover.entry-popover{display:block}.att-summary-popover.entry-popover{width:min(360px,100vw - 32px);left:0;right:auto}.att-summary-popover.entry-popover ul{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:3px 12px}.att-cal-cell:nth-child(7n+1) .att-summary-popover{left:0;right:auto}.att-cal-cell:nth-child(7n+5) .att-summary-popover.entry-popover,.att-cal-cell:nth-child(7n+6) .att-summary-popover.entry-popover,.att-cal-cell:nth-child(7n) .att-summary-popover.entry-popover{left:auto;right:0}@media print{.att-summary-popover{display:none!important}}.timetable{border-collapse:collapse;width:100%;font-size:13px}.timetable th,.timetable td{border:1.5px solid var(--ink);vertical-align:top;background:var(--paper);width:13%;height:64px;padding:3px}html[data-theme=analog] .timetable th,html[data-theme=saas] .timetable th,html[data-theme=analog] .timetable td,html[data-theme=saas] .timetable td{border:1px solid var(--line)}.timetable thead th{background:var(--paper-2);color:var(--ink);font-family:var(--f-pen);text-align:center;height:auto;padding:4px;font-size:17px;font-weight:400}html[data-theme=analog] .timetable thead th,html[data-theme=saas] .timetable thead th{font-family:var(--f-sans);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);font-size:12px;font-weight:600}.timetable th.hour{background:var(--paper-2);width:8%;color:var(--ink-2);font-family:var(--f-num);text-align:center;font-size:12px}.timetable .slot{background:var(--hl);height:100%;color:var(--ink);background:#f3e08a99;border-radius:2px;padding:5px 7px;text-decoration:none;display:block}html[data-theme=analog] .timetable .slot,html[data-theme=saas] .timetable .slot{background:var(--paper-2);border-left:3px solid var(--ink)}.timetable .slot .ttl{font-size:14px;font-weight:700;display:block}html[data-theme=analog] .timetable .slot .ttl,html[data-theme=saas] .timetable .slot .ttl{font-size:13px}.timetable .slot .meta{color:var(--ink-3);font-size:12px;font-family:var(--f-pen);line-height:1.2}html[data-theme=analog] .timetable .slot .meta,html[data-theme=saas] .timetable .slot .meta{font-family:var(--f-sans)}.timetable .slot.희{background:#f3e08a99}.timetable .slot.은{background:#dae8efb3}.timetable .slot.정{background:#f4dbd480}.tabs{border-bottom:1.5px solid var(--ink);gap:0;margin-bottom:14px;display:flex}html[data-theme=analog] .tabs,html[data-theme=saas] .tabs{border-bottom:1px solid var(--line)}.tabs a{color:var(--ink-3);border:0;margin-bottom:-1.5px;padding:8px 14px;font-size:13px;font-weight:600;text-decoration:none}.tabs a.on{color:var(--ink);border-bottom:3px solid var(--seal);font-weight:700}html[data-theme=analog] .tabs a.on,html[data-theme=saas] .tabs a.on{border-bottom:2px solid var(--seal)}.tabs .cnt{background:var(--paper-2);color:var(--ink-3);font-size:11px;font-family:var(--f-num);border-radius:10px;margin-left:6px;padding:1px 6px}.empty{border:1.5px dashed var(--ink-3);background:var(--paper);color:var(--ink-3);text-align:center;border-radius:4px;padding:28px;font-size:12px}.empty .ic{font-family:var(--f-pen);color:var(--ink-3);margin-bottom:4px;font-size:28px;line-height:1}.modal-wrap{background:#2a2a2a66;border-radius:4px;margin-bottom:12px;padding:32px 20px;position:relative}.modal{background:var(--paper);border:var(--card-bd);max-width:560px;box-shadow:var(--shadow);border-radius:4px;margin:0 auto;padding:18px}.modal .head{border-bottom:1.5px dashed var(--ink-3);justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:10px;display:flex}html[data-theme=analog] .modal .head,html[data-theme=saas] .modal .head{border-bottom:1px solid var(--line)}.modal .head b{font-size:16px;font-family:var(--f-hand)}.modal .head .x{color:var(--ink-3);cursor:pointer}dialog.tt-dialog{border:var(--card-bd);background:var(--paper);width:560px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);color:var(--ink);box-shadow:var(--shadow);border-radius:4px;margin:auto;padding:18px;position:fixed;inset:0}dialog.tt-dialog::backdrop{background:#2a2a2a66}.tt-cell-actions{opacity:0;z-index:3;pointer-events:none;gap:2px;transition:opacity 80ms;display:flex;position:absolute;top:2px;right:2px}td:hover>.tt-cell-actions,td:focus-within>.tt-cell-actions{opacity:1}.tt-cell-actions button{border:1px solid var(--line);cursor:pointer;width:18px;height:18px;color:var(--ink-2);pointer-events:auto;background:#ffffffeb;border-radius:3px;justify-content:center;align-items:center;padding:0;font-size:10px;line-height:1;display:inline-flex}.tt-cell-actions button:hover{background:var(--paper);color:var(--ink)}.tt-cell-actions button.danger:hover{color:var(--seal);border-color:var(--seal)}.slot[draggable=true]{-webkit-user-select:none;user-select:none}.slot[draggable=true]:active{cursor:grabbing}.tt-drop-preview{pointer-events:none;border:2px dashed var(--ink);box-sizing:border-box;z-index:100;background:#0000000a;border-radius:3px;position:fixed}.tt-empty-add{opacity:0;z-index:1;cursor:pointer;color:var(--ink-3);background:0 0;border:0;justify-content:center;align-items:center;font-size:14px;font-weight:600;transition:opacity 80ms;display:flex;position:absolute;inset:0}td:hover>.tt-empty-add{opacity:.55}td>.tt-empty-add:hover{opacity:1;color:var(--ink)}.tt-row-actions{opacity:0;flex-shrink:0;gap:2px;margin-left:auto;transition:opacity 80ms;display:inline-flex}.tt-meta-row:hover .tt-row-actions,td:hover .tt-row-actions{opacity:1}.tt-row-actions button{border:1px solid var(--line);cursor:pointer;width:16px;height:16px;color:var(--ink-2);background:#ffffffd9;border-radius:3px;justify-content:center;align-items:center;padding:0;font-size:10px;line-height:1;display:inline-flex}.tt-row-actions button:hover{background:var(--paper);color:var(--ink)}.tt-row-actions button.danger:hover{color:var(--seal);border-color:var(--seal)}.theme-picker{z-index:100;position:fixed;bottom:16px;right:16px}.sidebar-theme{justify-content:center;margin-top:8px;padding:0 12px;display:flex}.sidebar-theme .theme-picker{position:relative;bottom:auto;right:auto}.theme-picker-trigger{border:1px solid var(--line-2,var(--line));background:var(--paper);cursor:pointer;font:inherit;color:var(--ink-2);border-radius:999px;align-items:center;gap:10px;padding:6px 12px;line-height:1;transition:border-color 80ms,box-shadow 80ms;display:inline-flex;box-shadow:0 1px 2px #0000000d}.theme-picker-trigger:hover{border-color:var(--ink-3);box-shadow:0 2px 4px #00000014}.theme-picker-trigger-tag{font-family:var(--f-pen,var(--f-sans));color:var(--ink-3);letter-spacing:.04em;border-right:1px solid var(--line);padding-right:10px;font-size:13px;font-weight:700;line-height:1}html[data-theme=analog] .theme-picker-trigger-tag,html[data-theme=saas] .theme-picker-trigger-tag{font-family:var(--f-sans);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);font-size:10px;font-weight:700}.theme-picker-trigger-current{align-items:center;gap:5px;font-size:11px;font-weight:600;display:inline-flex}.theme-picker-trigger-swatch{border:1px solid var(--line-2,var(--line));border-radius:50%;flex-shrink:0;width:14px;height:14px;display:inline-block}.theme-picker-trigger-label{letter-spacing:.02em}.theme-picker-trigger-caret{color:var(--ink-3);opacity:.7;margin-left:-1px;font-size:9px}.theme-picker-popover{background:var(--paper);border:1px solid var(--ink-3);z-index:220;border-radius:8px;width:min(280px,100vw - 16px);padding:10px;position:fixed;box-shadow:0 8px 28px #0000002e}.theme-picker-popover-head{color:var(--ink-3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;padding:0 2px;font-size:10px;font-weight:700}.theme-picker-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.theme-picker-card{border:1.5px solid var(--line);background:var(--paper);cursor:pointer;text-align:left;font:inherit;color:var(--ink-2);border-radius:6px;grid-template-rows:auto auto auto;gap:4px;padding:8px;transition:border-color 80ms,transform 80ms,box-shadow 80ms;display:grid;position:relative}.theme-picker-card:hover{border-color:var(--ink-3);transform:translateY(-1px);box-shadow:0 3px 8px #0000001a}.theme-picker-card.on{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink) inset;border-width:2px;padding:7px}.theme-picker-card-swatch{border:1px solid var(--line-2,var(--line));border-radius:3px;height:22px;display:flex;overflow:hidden}.theme-picker-card-swatch>span{flex:1;display:block}.theme-picker-card-name{color:var(--ink-1,var(--ink));font-size:12px;font-weight:700}.theme-picker-card-mode{opacity:.65;vertical-align:middle;margin-left:4px;font-size:9px}.theme-picker-card-desc{color:var(--ink-3);letter-spacing:.02em;font-size:10px;font-weight:500}.theme-picker-card-check{background:var(--ink);width:14px;height:14px;color:var(--paper);border-radius:50%;justify-content:center;align-items:center;font-size:9px;font-weight:700;line-height:1;display:flex;position:absolute;top:4px;right:5px}.hamburger{display:none}@media (max-width:1023px){.app{grid-template-columns:1fr}.sidebar{z-index:50;width:280px;height:100vh;transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-100%)}.app.drawer-open .sidebar{transform:translate(0)}.hamburger{border:var(--btn-bd);background:var(--paper);cursor:pointer;box-shadow:var(--btn-shadow);border-radius:3px;margin-right:12px;padding:4px 10px;font-size:14px;display:inline-block}.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:1fr}.content{padding:16px}}@media (max-width:640px){.grid-2{grid-template-columns:1fr}.grid-4{grid-template-columns:1fr 1fr}.topbar{padding:10px 14px}.content{padding:12px}.theme-picker{bottom:8px;right:8px}.tbl.stack thead{display:none}.tbl.stack,.tbl.stack tbody,.tbl.stack tr,.tbl.stack td{width:100%;display:block}.tbl.stack tr{border:1.5px solid var(--ink);border-radius:3px;margin-bottom:8px;padding:8px}.tbl.stack td{border:0;justify-content:space-between;padding:3px 0;display:flex}.tbl.stack td:before{content:attr(data-lb);color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-family:var(--f-sans);font-weight:600}}@media print{:root{--paper:#fff;--paper-2:#fff;--paper-3:#fff;--line:#d0d0d0;--line-2:#888;--ink:#000;--ink-2:#222;--ink-3:#555;--ink-4:#888;--grid:transparent;--hl:#fff;--shadow:none;--btn-shadow:none}body{color:#000;background:#fff;font-family:Pretendard Variable,sans-serif;font-size:10pt;line-height:1.35}.sidebar,.topbar,.hamburger,.btn,.tabs,.ctx .actions,.modal-wrap,.theme-picker,.impersonation-bar,.ui-pending{display:none!important}.toolbar{border-bottom:1pt solid #888;margin-bottom:6pt;padding:4pt 0}.toolbar .trailing>.btn,.toolbar .trailing>form{display:none!important}.app{grid-template-columns:1fr}.main{display:block}.content{max-width:none;padding:0}.card{box-shadow:none;border:none;margin-bottom:10pt;padding:0}.tbl{font-size:9pt}.tbl th,.tbl td{padding:4pt 6pt}h1,h2{color:#000;font-family:Pretendard Variable,sans-serif}h1{font-size:18pt}h2{font-size:13pt}a{color:#000;text-decoration:none}.badge{border:1pt solid #888;border-radius:2px;font-weight:500;color:#000!important;background:#fff!important}.badge .dot{display:none}.pay-miss{color:#666!important;background:0 0!important}.print-header{border-bottom:2pt solid #000;justify-content:space-between;align-items:flex-end;margin-bottom:10pt;padding-bottom:6pt;display:flex!important}.print-header h1{letter-spacing:-.02em;font-size:18pt}.print-header .seal-box{color:#888;border:1pt solid #888;justify-content:center;align-items:center;width:60pt;height:60pt;font-size:8pt;display:flex}.print-meta{color:#333;gap:20pt;margin-bottom:8pt;font-size:9pt;display:flex}.print-meta b{color:#000}.page-break{page-break-before:always}}.print-header{display:none}@page landscape{size:A4 landscape;margin:12mm}.print-landscape{page:landscape}.lesson-grid{grid-template-columns:repeat(auto-fit,minmax(460px,1fr));gap:14px;display:grid}.lesson-grid[data-density=narrow]{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.lesson-grid[data-density=normal]{grid-template-columns:repeat(auto-fit,minmax(460px,1fr))}.lesson-grid[data-density=wide]{grid-template-columns:1fr}.att-cal{grid-template-columns:repeat(7,1fr);gap:4px;margin-top:8px;display:grid}.att-cal-head{text-align:center;color:var(--ink-3,#888);background:var(--paper-2,#f7f5ef);border-radius:4px;padding:6px 4px;font-size:13px;font-weight:600}.att-cal-head.sun{color:#c84141}.att-cal-head.sat{color:#2a5f7a}.att-cal-cell{border:1px solid var(--line);background:var(--paper);border-radius:5px;flex-direction:column;gap:3px;min-height:116px;padding:6px 8px;font-size:13.5px;line-height:1.4;transition:overflow 0s 50ms;display:flex;position:relative;overflow:hidden}.att-cal-cell:hover{z-index:50;overflow:visible}.att-cal-cell.empty{border:1px dashed var(--ink-line,#e5e5e5);background:0 0;min-height:60px}.att-cal-cell.outside-month{background:var(--paper-2,#fafaf6)}.att-cal-cell.outside-month .att-cal-day{color:var(--ink-3,#888);opacity:.55;font-weight:500}.att-cal-cell.outside-month .sched-entry,.att-cal-cell.outside-month .att-cal-stat,.att-cal-cell.outside-month .att-cal-absent{opacity:.55}.att-cal-cell.outside-month .sched-entry:hover,.att-cal-cell.outside-month:hover .att-cal-stat,.att-cal-cell.outside-month:hover .att-cal-absent{opacity:.9}.att-cal-cell.no-session{background:var(--paper-2,#fafaf6);opacity:.7}.att-cal-cell.today{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink);border-width:2px}.att-cal-cell .att-cal-day{color:var(--ink-1,#222);font-variant-numeric:tabular-nums;font-size:17px;font-weight:700}.att-cal-cell.sun .att-cal-day{color:#c84141}.att-cal-cell.sat .att-cal-day{color:#2a5f7a}.att-cal-cell.today .att-cal-day{color:var(--ink)}html[data-mode=dark] .att-cal-head.sun,html[data-mode=dark] .att-cal-cell.sun .att-cal-day{color:#e2908c}html[data-mode=dark] .att-cal-head.sat,html[data-mode=dark] .att-cal-cell.sat .att-cal-day{color:#7ba8c8}.att-cal-cell .att-cal-stat{color:var(--ink-2,#555);gap:6px;font-size:11.5px;font-weight:600;display:flex}.att-cal-cell .att-cal-stat .present{color:var(--ink-2,#444)}.att-cal-cell .att-cal-stat .absent{color:var(--seal,#b44b3c)}.att-cal-cell .att-cal-absent{flex-direction:column;gap:1px;margin:2px 0 0;padding:0;list-style:none;display:flex}.att-cal-cell .att-cal-absent li{color:var(--seal,#b44b3c);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;font-weight:500;overflow:hidden}.att-cal-cell .att-cal-absent li a{color:inherit;text-decoration:none}.att-cal-cell .att-cal-absent li a:hover{text-decoration:underline}.att-cal-cell .att-cal-absent li .reason{color:var(--ink-3,#888);margin-left:2px;font-style:italic;font-weight:400}.att-cal-cell .att-cal-absent li.more{color:var(--ink-3,#888);font-size:10px;font-style:italic}.att-cal-cell .att-cal-popover{background:var(--paper);border:1px solid var(--ink,#222);text-align:left;white-space:normal;border-radius:6px;min-width:200px;max-width:280px;padding:10px 12px;font-size:12px;line-height:1.4;display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 6px 24px #0000002e}.att-cal-cell:hover .att-cal-popover{display:block}.att-cal-cell .att-cal-popover .popover-head{color:var(--ink-2,#444);border-bottom:1px solid var(--ink-line,#e5e5e5);margin-bottom:6px;padding-bottom:6px;font-size:11px;font-weight:600}.att-cal-cell .att-cal-popover .popover-section{margin-top:6px}.att-cal-cell .att-cal-popover .popover-section:first-of-type{margin-top:0}.att-cal-cell .att-cal-popover .popover-label{color:var(--ink-3,#888);text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px;font-size:10px;font-weight:600}.att-cal-cell .att-cal-popover ul{gap:2px;margin:0;padding:0;list-style:none;display:grid}.att-cal-cell .att-cal-popover li{color:var(--ink-1,#222);align-items:baseline;gap:6px;font-size:12px;display:flex}.att-cal-cell .att-cal-popover li .dot{text-align:center;flex-shrink:0;width:12px;font-size:10px}.att-cal-cell .att-cal-popover li .dot.present{color:var(--ink-2,#555)}.att-cal-cell .att-cal-popover li .dot.absent{color:var(--seal,#b44b3c);font-weight:700}.att-cal-cell .att-cal-popover li a{color:inherit;font-weight:500;text-decoration:none}.att-cal-cell .att-cal-popover li a:hover{text-decoration:underline}.att-cal-cell .att-cal-popover li .reason{color:var(--ink-3,#888);font-size:11px;font-style:italic}.att-cal-cell:nth-child(7n+1) .att-cal-popover{left:0;transform:none}.att-cal-cell:nth-child(7n) .att-cal-popover{left:auto;right:0;transform:none}@media print{.att-cal-cell .att-cal-popover{display:none!important}}@media (max-width:720px){.att-cal-cell{min-height:64px;padding:4px;font-size:10px}.att-cal-cell .att-cal-day{font-size:11px}.att-cal-cell .att-cal-absent li{font-size:9.5px}}@media print{.att-cal-cell{break-inside:avoid;page-break-inside:avoid;opacity:1!important;background:#fff!important}.att-cal-cell.no-session{background:#f8f8f8!important}}.att-card-grid{align-items:start;gap:12px;display:grid}.att-card-grid[data-density=narrow]{grid-template-columns:repeat(3,minmax(0,1fr))}.att-card-grid[data-density=normal]{grid-template-columns:repeat(2,minmax(0,1fr))}.att-card-grid[data-density=wide]{grid-template-columns:1fr}@media (max-width:760px){.att-card-grid[data-density=narrow],.att-card-grid[data-density=normal]{grid-template-columns:1fr}}.att-add-btn{border:1.5px dashed var(--line-2,var(--line));width:100%;color:var(--ink-3);font:inherit;cursor:pointer;background:0 0;border-radius:6px;padding:7px;font-size:13px;transition:border-color .1s,color .1s}.att-add-btn:hover{border-color:var(--ink-3);color:var(--ink-2)}.lesson-class-switch{background:var(--paper-2,#f7f5ef);border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;align-items:stretch;gap:4px;padding:5px;display:inline-flex}.lesson-class-switch>a{min-width:64px;color:var(--ink-2,#555);white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:3px;padding:8px 12px;line-height:1;text-decoration:none;transition:background .12s,color .12s,transform .12s;display:inline-flex}.lesson-class-switch>a:hover{color:var(--ink-1,#222);background:#0000000a}.lesson-class-switch>a .dow{letter-spacing:.04em;color:var(--ink-3,#999);text-transform:none;font-size:10px;font-weight:600}.lesson-class-switch>a .time{font-variant-numeric:tabular-nums;color:var(--ink-1,#222);letter-spacing:.01em;font-size:14px;font-weight:700}.lesson-class-switch>a:hover .dow{color:var(--ink-2,#666)}.lesson-class-switch>a.active{background:var(--ink);color:var(--paper);box-shadow:0 1px 3px #0000001f}.lesson-class-switch>a.active .dow{color:#ffffffb3}.lesson-class-switch>a.active .time{color:var(--paper)}.lesson-class-switch>a.blank{border-left:1px dashed var(--ink-line,#ccc);min-width:48px;margin-left:4px;padding-left:14px}.lesson-class-switch>a.extra{background:var(--accent-pale,#2a5f7a14)}.lesson-class-switch>a.extra .dow{color:var(--accent,#2a5f7a);font-weight:700}.lesson-class-switch>a.extra.active{background:var(--accent,#2a5f7a);color:var(--paper)}.lesson-class-switch>a.extra.active .dow{color:#ffffffd9}.lesson-class-switch>a.extra.active .time{color:var(--paper)}.lesson-class-switch>a.blank .dow{color:var(--seal,#b44b3c);font-size:14px;font-weight:700}.lesson-class-switch>a.blank .time{color:var(--ink-3,#888);font-size:11px;font-style:italic;font-weight:500}.lesson-class-switch>a.blank.active{background:var(--seal,#b44b3c);border-left-color:#0000}.lesson-class-switch>a.blank.active .dow{color:var(--paper)}.lesson-class-switch>a.blank.active .time{color:#ffffffd9;font-style:normal}.lesson-card{border:1px solid var(--line);background:var(--paper);page-break-inside:avoid;border-left:4px solid #0000;border-radius:6px;padding:14px;transition:border-color .15s,background .15s}.lesson-card.absent{background:var(--paper-2);opacity:.72;border-color:var(--ink-line,var(--line))}.lesson-card.absent .lesson-card-hd{border-bottom-color:var(--ink-line,var(--line))}.lesson-card-hd{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:12px;margin-bottom:10px;padding-bottom:8px;display:flex}.lesson-section{margin-top:10px}.lesson-section-hd{justify-content:space-between;align-items:baseline;margin-bottom:6px;display:flex}.lesson-section-title{color:var(--ink-2);letter-spacing:.02em;font-size:12px;font-weight:600}.lesson-empty{color:var(--ink-3);padding:4px 0;font-size:12px}.lesson-todo{gap:4px;margin:0;padding:0;list-style:none;display:grid}.lesson-todo li{border-radius:3px;align-items:center;gap:8px;padding:4px 6px;display:flex}.lesson-todo li.done{color:var(--ink-3)}.lesson-todo li.done .content{text-decoration:line-through}.lesson-todo li label{cursor:pointer;flex:1;align-items:center;gap:8px;display:flex}.lesson-todo.edit li{background:var(--paper-2,#fafafa)}.lesson-todo.edit li .bullet{color:var(--ink-3);min-width:14px;font-size:12px}.hw-edit{gap:6px;display:grid}.hw-edit-row{background:var(--paper);border:1px solid var(--line);border-radius:6px;align-items:center;gap:8px;padding:6px 8px 6px 10px;transition:border-color 80ms,box-shadow 80ms;display:flex}.hw-edit-row:focus-within{border-color:var(--accent,#2a5f7a);box-shadow:0 0 0 3px var(--accent-pale,#2a5f7a1f)}.hw-edit-num{background:var(--paper-2);width:20px;height:20px;color:var(--ink-3);font-variant-numeric:tabular-nums;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.hw-edit-row:focus-within .hw-edit-num{background:var(--accent,#2a5f7a);color:var(--paper,#fff)}.hw-edit-input{min-width:0;font:inherit;color:var(--ink-1,var(--ink));background:0 0;border:0;outline:0;flex:1;padding:2px 0;font-size:14px}.hw-edit-input::placeholder{color:var(--ink-3);opacity:.7}.hw-edit-remove{width:22px;height:22px;color:var(--ink-3);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;padding:0;transition:opacity 80ms,background-color 80ms,color 80ms;display:inline-flex}.hw-edit-row:hover .hw-edit-remove,.hw-edit-row:focus-within .hw-edit-remove{opacity:1}.hw-edit-remove:hover{background:var(--seal-pale,#b44b3c1a);color:var(--seal,#b44b3c)}.hw-edit-remove>svg{display:block}.hw-edit-add{border:1px dashed var(--line-2,var(--line));color:var(--ink-3);cursor:pointer;font:inherit;background:0 0;border-radius:6px;align-items:center;gap:6px;width:fit-content;padding:6px 12px;font-size:13px;font-weight:600;transition:border-color 80ms,color 80ms,background-color 80ms;display:inline-flex}.hw-edit-add:hover{border-color:var(--accent,#2a5f7a);color:var(--accent,#2a5f7a);background:var(--accent-pale,#2a5f7a0f)}.hw-edit-add>svg{display:block}.lesson-todo.edit li .input{flex:1}.absent-blur{filter:blur(2.5px);opacity:.55;-webkit-user-select:none;user-select:none;transition:filter .12s,opacity .12s}@media print{.absent-blur{filter:none;opacity:1}}.prev-memo-card{background:var(--paper-2);border-left:3px solid var(--ink-line,#d6d3c8);border-radius:3px;flex-direction:column;gap:2px;margin-bottom:6px;padding:6px 9px;display:flex}.prev-memo-label{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;font-size:9px;font-weight:700}.prev-memo-body{color:var(--ink-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.4;display:-webkit-box;overflow:hidden}.hw-prev{gap:6px;margin:0;padding:0;list-style:none;display:grid}.hw-prev-row{background:var(--paper);border:1px solid var(--line);border-radius:6px;transition:border-color 80ms,background-color 80ms}.hw-prev-row:hover{border-color:var(--accent,#2a5f7a)}.hw-prev-row label{cursor:pointer;flex:1;align-items:center;gap:8px;min-width:0;margin:0;padding:6px 10px;display:flex}.hw-prev-checkbox{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.hw-prev-check{border:1.5px solid var(--ink-3);background:var(--paper);color:#0000;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;transition:background-color 80ms,border-color 80ms,color 80ms;display:inline-flex}.hw-prev-row:hover .hw-prev-check{border-color:var(--accent,#2a5f7a)}.hw-prev-row.done .hw-prev-check{background:var(--active,#3b8a4f);border-color:var(--active,#3b8a4f);color:var(--paper,#fff)}.hw-prev-row.done{background:var(--paper-2)}.hw-prev-content{min-width:0;color:var(--ink-1,var(--ink));word-break:break-word;flex:1;font-size:14px;line-height:1.4}.hw-prev-row.done .hw-prev-content{color:var(--ink-3);text-decoration:line-through}.hw-prev-checkbox:focus-visible+.hw-prev-check{outline:2px solid var(--accent,#2a5f7a);outline-offset:2px}.print-only{display:none}@media print{.no-print{display:none!important}.print-only{display:block!important}*,:before,:after{box-sizing:border-box}.lesson-grid{gap:8pt}.lesson-grid[data-density=narrow]{grid-template-columns:repeat(3,1fr)}.lesson-grid[data-density=normal]{grid-template-columns:repeat(2,1fr)}.lesson-grid[data-density=wide]{grid-template-columns:1fr}.lesson-form{width:100%;max-width:100%}.lesson-card{width:auto;max-width:100%}body.print-portrait{page:lesson-portrait}.lesson-card{break-inside:avoid;page-break-inside:avoid;border:1pt solid #000;margin-bottom:0;padding:6pt}.lesson-grid[data-density=narrow] .lesson-card{padding:4pt;font-size:9pt}.lesson-grid[data-density=narrow] .lesson-section-title{font-size:9pt}.lesson-card-hd{border-bottom:1pt solid #000;margin-bottom:6pt;padding-bottom:4pt}.lesson-section{margin-top:6pt}.lesson-section-title{font-size:10pt}.lesson-todo{padding-left:0}.lesson-todo li{flex-wrap:wrap;padding:2pt 0;background:0 0!important}.lesson-todo li label{cursor:default;flex-wrap:wrap}.lesson-todo input[type=checkbox]{flex:none;transform:scale(1.1)}.lesson-todo .content{word-break:break-word}.hw-prev{gap:2pt}.hw-prev-row{border:none;border-radius:0;background:0 0!important}.hw-prev-row label{cursor:default;padding:1pt 0}.hw-prev-check{border-radius:2pt;width:11pt;height:11pt;color:#000!important;background:0 0!important;border:.7pt solid #000!important}.hw-prev-row.done .hw-prev-check{color:#fff!important;background:#000!important}.hw-prev-content{font-size:10pt;color:#000!important}.lesson-todo.edit li .input,.lesson-form textarea.input,.lesson-form .input{white-space:pre-wrap;word-break:break-word;resize:none;background:0 0;border:none;width:100%;max-width:100%;padding:0;font-size:10pt}.lesson-form textarea.input{height:auto;min-height:0}.lesson-form .input::placeholder{color:#0000}.lesson-card.absent{display:none!important}.hw-edit{gap:2pt}.hw-edit-row{border:none;border-radius:0;padding:1pt 0;position:relative;background:0 0!important}.hw-edit-row:focus-within{box-shadow:none;border-color:#0000}.hw-edit-num{border:.5pt solid #000;width:12pt;height:12pt;font-size:8pt;color:#000!important;background:0 0!important}.hw-edit-input{font-size:10pt;color:#000!important}.hw-edit-input::placeholder{color:#0000!important}:is(.hw-edit-row:has(.hw-edit-input:placeholder-shown) .hw-edit-num,.hw-edit-row:has(.hw-edit-input:placeholder-shown) .hw-edit-input){display:none}.hw-edit-row:has(.hw-edit-input:placeholder-shown):before{content:"—";color:#000;font-size:10pt}.card{box-shadow:none;border:none;padding:0}.card .hd{display:none}}@page lesson-portrait{size:A4 portrait;margin:12mm}
