.console-root{--f-sans:-apple-system,"SF Pro Text","Apple SD Gothic Neo","Pretendard",system-ui,sans-serif;--f-mono:"SF Mono",ui-monospace,"JetBrains Mono",Menlo,Consolas,monospace;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-pill:999px;--shadow-card:none;--shadow-pop:0 12px 34px -12px rgba(20,24,31,.24);background:var(--paper);color:var(--ink);font-family:var(--f-sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;display:grid;grid-template-columns:244px 1fr;min-height:100dvh;overflow-x:clip;max-width:100%}.console-root *,.console-root :after,.console-root :before{box-sizing:border-box}.console-root ::selection{background:var(--signal);color:var(--signal-ink)}.console-root button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}.console-root [role=tab]:not([aria-disabled=true]):active,.console-root a:active,.console-root button:not(:disabled):active,.console-root label:active>input[type=checkbox]{filter:brightness(.93)}.console-root a,.console-root button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.console-root a,.console-root button:not(:disabled){transition:filter .06s ease}.console-root .rskel{pointer-events:none}.console-root .sk{background:linear-gradient(90deg,var(--surface-2) 25%,var(--line) 37%,var(--surface-2) 63%);background-size:400% 100%;animation:bwj-skel 1.2s ease-in-out infinite;border-radius:8px;display:block}.console-root .rskel-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));grid-gap:10px;gap:10px;margin-bottom:14px}.console-root .rskel-stat{height:74px;border-radius:16px}.console-root .rskel-bar{height:38px;width:min(320px,70%);border-radius:12px;margin-bottom:14px}.console-root .rskel-list{display:flex;flex-direction:column;gap:8px}.console-root .rskel-row{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.console-root .rskel-av{width:38px;height:38px;border-radius:50%;flex:none}.console-root .rskel-tx{display:flex;flex-direction:column;gap:7px;flex:1 1;min-width:0}.console-root .rskel-tx i{height:11px;border-radius:6px}.console-root a{color:inherit;text-decoration:none}.console-root :focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:4px}.console-root .mono{font-family:var(--f-mono);text-transform:none;letter-spacing:normal}.console-root .sidebar{border-right:1px solid var(--line);display:flex;flex-direction:column;position:-webkit-sticky;position:sticky;top:0;height:100vh}.console-root .c-brand{display:flex;align-items:center;gap:10px;padding:18px 18px 16px}.console-root .c-brand .mark{width:42px;height:26px;border-radius:7px;background:linear-gradient(140deg,var(--signal),var(--signal-deep));color:var(--signal-ink);font-weight:650;font-size:12.5px;letter-spacing:-.02em;font-family:var(--f-mono);display:grid;place-items:center;flex-shrink:0}.console-root .c-brand .name{font-weight:700}.console-root .c-brand .sub{display:block;color:var(--ink-3);font-family:var(--f-mono);letter-spacing:.04em}.console-root .c-nav{display:flex;flex-direction:column;gap:2px;padding:6px 10px}.console-root .nav-label{font-size:10.5px;letter-spacing:.1em;color:var(--ink-3);text-transform:uppercase;font-family:var(--f-mono);padding:14px 10px 6px}.console-root .nav-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:var(--r-sm);color:var(--ink-2);font-size:13.5px;font-weight:500;position:relative;transition:background .12s,color .12s}.console-root .nav-item svg{width:18px;height:18px;flex-shrink:0;stroke-width:1.7}.console-root .nav-item:hover{background:var(--surface-2);color:var(--ink)}.console-root .nav-item.active{color:var(--ink);font-weight:600}.console-root .nav-item.active:before{content:"";position:absolute;left:-10px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--signal-deep)}.console-root .who{margin-top:auto;padding:12px}.console-root .who-card{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2)}.console-root .who-avatar{width:34px;height:34px;border-radius:var(--r-pill);background:var(--ink);color:var(--surface);display:grid;place-items:center;font-weight:700;font-size:13px}.console-root .who-name{font-weight:600;font-size:13px}.console-root .who-role{font-size:11.5px;color:var(--ink-3)}.console-root .main{min-width:0;display:flex;flex-direction:column}.console-root .topbar{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;align-items:center;padding:12px 24px;background:rgba(245,247,249,.82);-webkit-backdrop-filter:saturate(180%) blur(10px);backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--line)}.console-root .topbar-title{font-size:16px;font-weight:700;margin:0}.console-root .tmpl-badge{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:var(--ink-2);background:var(--surface);border:1px solid var(--line-strong);padding:4px 10px;border-radius:var(--r-pill)}.console-root .tmpl-badge .dot{width:6px;height:6px;border-radius:50%;background:var(--signal-deep)}.console-root .content{padding:24px;display:flex;flex-direction:column;gap:20px}.console-root .page-head{display:flex;align-items:baseline;gap:12px}.console-root .page-head h2{font-size:20px;font-weight:700;letter-spacing:-.02em;margin:0}.console-root .page-head .hint{font-size:12.5px;color:var(--ink-3)}.console-root .page-head .date{font-size:13px;color:var(--ink-3);font-family:var(--f-mono)}.console-root .muted{color:var(--ink-3)}.console-root .loading{padding:40px;text-align:center;color:var(--ink-3);font-family:var(--f-mono);font-size:13px}.console-root .err{padding:14px 16px;background:var(--crit-bg);color:var(--crit);border-radius:var(--r-md);font-size:13px}.console-root .strip{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px}.console-root .mtile{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:14px 16px;box-shadow:var(--shadow-card)}.console-root .mtile.alert{background:linear-gradient(180deg,var(--crit-bg),var(--surface) 65%);border-color:#F1CACA}.console-root .mtile .k{font-size:11.5px;color:var(--ink-3)}.console-root .mtile .v{font-size:22px;font-weight:700;letter-spacing:-.02em;margin-top:3px}.console-root .mtile .v small{font-size:13px;color:var(--ink-3);font-weight:600}.console-root .c-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card);overflow:hidden}.console-root .card-h{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line)}.console-root .card-h h3{font-weight:700;margin:0}.console-root .card-h .meta{margin-left:auto;font-size:12px;color:var(--ink-3);font-family:var(--f-mono)}.console-root .tbl-wrap{overflow-x:auto}.console-root table{border-collapse:collapse;width:100%;min-width:620px}.console-root thead th{text-align:left;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);font-weight:600;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--surface-2);white-space:nowrap}.console-root th .cf-tag{font-size:9px;background:var(--signal-wash);color:#5f7a12;border:1px solid #ddeea6;padding:1px 5px;border-radius:var(--r-pill);text-transform:none;font-weight:700;margin-left:4px}.console-root tbody td{padding:11px 14px;border-bottom:1px solid var(--line);font-size:13px;white-space:nowrap}.console-root tbody tr:last-child td{border-bottom:none}.console-root tbody tr:hover{background:var(--surface-2)}.console-root .m-name{font-weight:600}.console-root .m-sub{color:var(--ink-3);font-size:11.5px;font-family:var(--f-mono)}.console-root .chip{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;padding:3px 9px;border-radius:var(--r-pill)}.console-root .chip i{width:6px;height:6px;border-radius:50%}.console-root .chip.ok{background:var(--good-bg);color:var(--good)}.console-root .chip.ok i{background:var(--good)}.console-root .chip.rest{background:var(--warn-bg);color:var(--warn)}.console-root .chip.rest i{background:var(--warn)}.console-root .chip.out{background:var(--crit-bg);color:var(--crit)}.console-root .chip.out i{background:var(--crit)}.console-root .chip.info{background:var(--info-bg);color:var(--info)}.console-root .chip.info i{background:var(--info)}.console-root .sel{border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--r-sm);padding:8px 12px;font-family:inherit;font-size:13px;font-weight:600;color:var(--ink)}.console-root .agent{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:18px;display:flex;flex-direction:column;gap:14px}.console-root .agent-top{display:flex;align-items:center;gap:12px}.console-root .agent-avatar{width:44px;height:30px;border-radius:8px;background:linear-gradient(140deg,var(--signal),var(--signal-deep));color:var(--signal-ink);font-family:var(--f-mono);font-weight:650;font-size:13px;letter-spacing:-.02em;display:grid;place-items:center;flex-shrink:0}.console-root .agent-new{margin-left:auto;border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--r-pill);padding:6px 12px;font-size:12px;font-weight:600;color:var(--ink-2);white-space:nowrap;flex-shrink:0}.console-root .agent-new:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.console-root .agent-new:disabled{opacity:.5}.console-root .agent-hi{min-width:0}.console-root .agent-hi .t{font-size:17px;font-weight:700;letter-spacing:-.02em;line-height:1.32}.console-root .agent-input .go .go-ic{width:16px;height:16px;flex-shrink:0}.console-root .agent-hi .s{font-size:12.5px;color:var(--ink-2);display:flex;align-items:center;gap:7px}.console-root .agent-hi .s .live{width:7px;height:7px;border-radius:50%;background:var(--good);box-shadow:0 0 0 3px var(--good-bg)}.console-root .agent-input{display:flex;align-items:center;gap:10px;background:var(--surface);border:1.5px solid var(--line-strong);border-radius:var(--r-pill);padding:6px 6px 6px 18px}.console-root .agent-input:focus-within{border-color:var(--signal-deep);box-shadow:0 0 0 4px var(--signal-wash)}.console-root .agent-input input{flex:1 1;border:none;outline:none;background:none;font-family:inherit;font-size:15px;color:var(--ink)}.console-root .agent-input .go{background:var(--ink);color:var(--surface);border-radius:var(--r-pill);height:40px;padding:0 18px;font-weight:700;font-size:13.5px;display:inline-flex;align-items:center;gap:7px}.console-root .agent-input .go:disabled{opacity:.5;cursor:default}.console-root .agent-log{display:flex;flex-direction:column;gap:8px;max-height:420px;overflow-y:auto;padding-right:2px}.console-root .abub{font-size:13.5px;line-height:1.6;padding:9px 13px;border-radius:14px;max-width:82%;white-space:pre-wrap;word-break:break-word}.console-root .abub.user{align-self:flex-end;background:var(--ink);color:var(--surface);border-bottom-right-radius:5px}.console-root .abub.bot{align-self:flex-start;background:var(--surface-2);color:var(--ink);border-bottom-left-radius:5px}.console-root .abub.bot strong{font-weight:700}.console-root .abub.bot .rich-li{display:flex;gap:6px;align-items:baseline}.console-root .abub.bot .rich-b{color:var(--ink-3);flex-shrink:0}.console-root .abub.bot .rich-sp{height:6px}.console-root .abub.typing{display:inline-flex;gap:4px;align-items:center;padding:12px 14px}.console-root .abub.typing span{width:6px;height:6px;border-radius:50%;background:var(--ink-3);animation:abub-blink 1.2s ease-in-out infinite both}.console-root .abub.typing span:nth-child(2){animation-delay:.16s}.console-root .abub.typing span:nth-child(3){animation-delay:.32s}@keyframes abub-blink{0%,80%,to{opacity:.25}40%{opacity:1}}@media (prefers-reduced-motion:reduce){.console-root .abub.typing span{animation:none}}.console-root .aprop{align-self:flex-start;max-width:82%;background:var(--surface);border:1px solid var(--line-strong);border-radius:14px;border-bottom-left-radius:5px;padding:11px 13px;display:flex;flex-direction:column;gap:8px}.console-root .aprop-lead{font-size:13px;color:var(--ink);line-height:1.5}.console-root .aprop-items{display:flex;flex-wrap:wrap;gap:4px 12px}.console-root .aprop-item{font-size:11.5px;color:var(--ink-2)}.console-root .aprop-item b{font-family:var(--f-mono);color:var(--crit);font-weight:600}.console-root .aprop-actions{display:flex;gap:6px}.console-root .aa-no,.console-root .aa-ok{border-radius:var(--r-sm);font-size:12.5px;font-weight:700;padding:7px 16px}.console-root .aa-ok{background:var(--ink);color:var(--surface)}.console-root .aa-no{background:var(--surface);border:1px solid var(--line-strong);color:var(--ink-2)}.console-root .aa-no:disabled,.console-root .aa-ok:disabled{opacity:.5}.console-root .aprop-done{font-size:12px;font-weight:700}.console-root .aprop-done.approved{color:var(--good)}.console-root .aprop-done.rejected{color:var(--ink-3)}.console-root .quick{display:flex;flex-wrap:wrap;gap:8px}.console-root .qchip{border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--r-pill);padding:6px 12px;font-size:12.5px;font-weight:600;color:var(--ink-2);transition:background .1s,border-color .1s}.console-root .qchip:hover:not(:disabled){background:var(--signal-wash);border-color:var(--signal-deep);color:var(--ink)}.console-root .qchip:disabled{opacity:.5}.console-root .queue-head{display:flex;align-items:center;gap:8px}.console-root .queue-head .t{font-size:13px;font-weight:700}.console-root .queue-head .c{font-family:var(--f-mono);font-size:11px;background:var(--ink);color:var(--surface);padding:1px 7px;border-radius:var(--r-pill)}.console-root .queue{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:14px;gap:14px}.console-root .qcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-card);overflow:hidden}.console-root .qcard-h{padding:12px 14px 0}.console-root .qtag{font-family:var(--f-mono);font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:var(--r-pill)}.console-root .qtag.pay{background:var(--crit-bg);color:var(--crit)}.console-root .qtag.les{background:var(--info-bg);color:var(--info)}.console-root .qcard-b{padding:8px 14px 12px;display:flex;flex-direction:column;gap:8px}.console-root .qcard-b .lead{font-size:13px}.console-root .qmini-row{display:flex;justify-content:space-between;font-size:12px;padding:5px 9px;background:var(--surface-2);border-radius:6px}.console-root .qmini-row .amt{font-family:var(--f-mono);color:var(--crit);font-weight:600}.console-root .qactions{display:flex;gap:8px}.console-root .b{padding:13px 18px;border-radius:12px;font-weight:650;font-size:14px;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;border:0;transition:filter .12s,transform .06s}.console-root .b:active:not(:disabled){filter:brightness(.93);transform:scale(.985)}.console-root .b:disabled{opacity:.6;cursor:default}.console-root .b-primary{background:var(--signal);color:var(--signal-ink);flex:1 1}.console-root .b-primary:hover:not(:disabled){filter:brightness(1.03)}.console-root .b-ghost{background:var(--surface);border:1px solid var(--line-strong);color:var(--ink-2)}.console-root .b-ghost:hover{background:var(--surface-2)}.console-root .qdone{display:flex;align-items:center;gap:9px;padding:11px 14px;background:var(--good-bg);color:var(--good);font-weight:600;font-size:12.5px;border-radius:var(--r-sm)}.console-root .qdone svg{width:18px;height:18px;flex-shrink:0}.console-root .mod-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.console-root .mod-count{font-size:12.5px;color:var(--ink-3);font-family:var(--f-mono)}.console-root .mod-count b{color:var(--ink)}.console-root .mod-cat{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-family:var(--f-mono);margin:8px 2px 0}.console-root .mod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:14px;gap:14px}.console-root .mod{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card);padding:16px;display:flex;flex-direction:column;gap:11px;transition:opacity .2s,border-color .2s}.console-root .mod.off{background:var(--surface-2);border-style:dashed}.console-root .mod.off .fs,.console-root .mod.off .mod-desc,.console-root .mod.off .mod-ico,.console-root .mod.off .mod-name{opacity:.5}.console-root .mod.on{border-color:#D7E9A6}.console-root .mod-top{display:flex;align-items:flex-start;gap:11px}.console-root .mod-ico{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;flex-shrink:0;background:var(--signal-wash);color:#5f7a12;font-family:var(--f-mono);font-weight:650;font-size:15px}.console-root .mod-tt{flex:1 1;min-width:0}.console-root .mod-name{font-weight:700;font-size:14px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.console-root .mtag{font-size:9px;font-weight:700;padding:1px 6px;border-radius:var(--r-pill)}.console-root .mtag.core{background:var(--info-bg);color:var(--info)}.console-root .mtag.custom{background:var(--signal-wash);color:#5f7a12;border:1px solid #ddeea6}.console-root .mtag.only{background:#F0ECFB;color:#6D50C4}.console-root .mtag.soon{background:var(--surface-2);color:var(--ink-3);border:1px solid var(--line-strong)}.console-root .mod-desc{font-size:12.5px;color:var(--ink-2);line-height:1.5}.console-root .mod-foot{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:auto;padding-top:4px}.console-root .fs{font-family:var(--f-mono);font-size:10.5px;color:var(--ink-3);background:var(--surface-2);border:1px solid var(--line);padding:2px 7px;border-radius:var(--r-pill)}.console-root .mod.on .fs{background:var(--surface)}.console-root .sw{width:40px;height:23px;border-radius:var(--r-pill);background:var(--line-strong);position:relative;flex-shrink:0;transition:background .18s}.console-root .sw:after{content:"";position:absolute;top:2.5px;left:2.5px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .18s}.console-root .sw.on{background:var(--signal-deep)}.console-root .sw.on:after{transform:translateX(17px)}.console-root .sw.lock{background:var(--good);cursor:not-allowed}.console-root .sw.lock:after{transform:translateX(17px)}.console-root .sw:disabled{opacity:.7}.console-root .toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(12px);background:var(--ink);color:var(--surface);font-size:13px;font-weight:500;padding:11px 18px;border-radius:var(--r-pill);box-shadow:var(--shadow-pop);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:70;display:flex;align-items:center;gap:9px;max-width:90vw}.console-root .toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.console-root .toast .ti{width:8px;height:8px;border-radius:50%;background:var(--signal);flex-shrink:0}.console-root .toast.bad .ti{background:var(--crit)}.console-root .who-logout{width:30px;height:30px;border-radius:var(--r-sm);display:grid;place-items:center;color:var(--ink-3);flex-shrink:0}.console-root .who-logout:hover{background:var(--crit-bg);color:var(--crit)}.login-screen{min-height:100vh;display:grid;place-items:center;background:#F5F7F9;padding:24px;font-family:-apple-system,SF Pro Text,Apple SD Gothic Neo,Pretendard,system-ui,sans-serif}.login-card{width:100%;max-width:360px;background:#fff;border:1px solid #e7eaef;border-radius:16px;box-shadow:0 12px 34px -12px rgba(20,24,31,.18);padding:28px;display:flex;flex-direction:column;gap:12px;color:#14181F}.login-card h1{font-size:18px;font-weight:700;margin:6px 0 0}.login-card .muted{color:#838C97;font-size:13px;margin:0 0 6px}.login-mark{width:52px;height:34px;border-radius:9px;background:linear-gradient(140deg,#CBF24D,#B4DE3A);color:#1E2A0C;font-family:SF Mono,ui-monospace,monospace;font-weight:650;font-size:15px;letter-spacing:-.03em;display:grid;place-items:center}.login-card .fld{display:flex;flex-direction:column;gap:6px}.login-card .fld>span{font-size:12.5px;font-weight:600;color:#495159}.login-card input{border:1px solid #d7dce3;border-radius:8px;padding:10px 12px;font-family:inherit;font-size:14px;outline:none}.console-root .login-card input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-wash)}.login-card .b{border:none;border-radius:8px;font-weight:700;font-size:14px;cursor:pointer}.login-card .b-primary{background:#CBF24D;color:#1E2A0C}.login-card .b-primary:disabled{opacity:.55;cursor:default}.login-card .err{padding:10px 12px;background:#FBE8E8;color:#D23B3B;border-radius:8px;font-size:12.5px}.login-hint{font-size:11.5px;color:#838C97;line-height:1.6;margin-top:4px}.login-hint code{font-family:SF Mono,ui-monospace,monospace;font-size:11px;background:#F5F7F9;padding:1px 5px;border-radius:4px}.modal-overlay{position:fixed;inset:0;background:rgba(20,24,31,.42);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:70;padding:24px;font-family:-apple-system,SF Pro Text,Apple SD Gothic Neo,Pretendard,system-ui,sans-serif}.modal{width:100%;max-width:520px;max-height:88vh;overflow:auto;background:#fff;border:1px solid #e7eaef;border-radius:16px;box-shadow:0 24px 60px -20px rgba(20,24,31,.4);color:#14181F}.modal-h{display:flex;align-items:center;gap:10px;padding:16px 20px;border-bottom:1px solid #e7eaef;position:-webkit-sticky;position:sticky;top:0;background:#fff}.modal-h h3{margin:0;font-size:15px;font-weight:700}.modal-x{margin-left:auto;width:30px;height:30px;border-radius:8px;border:none;background:none;color:#838C97;cursor:pointer;font-size:15px}.modal-x:hover{background:#F5F7F9;color:#14181F}.modal-b{padding:20px;display:flex;flex-direction:column;gap:14px}.modal-f{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid #e7eaef;position:-webkit-sticky;position:sticky;bottom:0;background:#fff}.modal .fld{display:flex;flex-direction:column;gap:6px}.modal .fld>span{font-size:12.5px;font-weight:600;color:#495159}.modal .fld input,.modal .fld select,.modal .fld textarea{border:1px solid #d7dce3;border-radius:8px;padding:9px 11px;font-family:inherit;font-size:14px;outline:none;color:#14181F;background:#fff}.console-root .modal .fld input:focus,.console-root .modal .fld select:focus,.console-root .modal .fld textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-wash)}.modal .fld input:disabled{background:#F5F7F9;color:#9AA3AD}.modal .fld textarea{resize:vertical;min-height:44px}.modal .fld-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.modal.modal-wide{max-width:620px}.modal .fld-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.modal .fld-grid .fld-full{grid-column:1/-1}@media (max-width:520px){.modal .fld-grid{grid-template-columns:1fr}}.console-root .st-pill{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:700}.console-root .st-pill.on{background:#EAF6D8;color:#4B6B12}.console-root .st-pill.warn{background:#FCEFD6;color:#8A5A12}.console-root .st-pill.off{background:#EEF0F3;color:#838C97}.modal .b{border:none;border-radius:8px;font-weight:700;font-size:13px;padding:9px 16px;cursor:pointer}.modal .b-primary{background:#CBF24D;color:#1E2A0C}.modal .b-ghost{background:#fff;border:1px solid #d7dce3;color:#495159}.console-root .modal .b-danger{background:var(--crit);color:var(--surface)}.modal .b:disabled{opacity:.55;cursor:default}.modal .b-ghost.qr-regen{color:#C0392B;border-color:#EBC7C2;margin-right:auto}.modal .b-ghost.qr-regen:hover:not(:disabled){background:#FBEDEB}.modal .err{padding:10px 12px;background:#FBE8E8;color:#D23B3B;border-radius:8px;font-size:12.5px}.qr-panel{display:flex;flex-direction:column;align-items:center;gap:14px;padding:6px 4px 2px}.qr-frame{padding:16px;background:#fff;border:1px solid var(--line,#e4e8ee);border-radius:14px;box-shadow:0 1px 2px rgba(15,23,42,.05);line-height:0}.qr-cap{margin:0;color:var(--ink-2,#64748b);font-size:12.5px;line-height:1.55}.qr-cap,.qr-url{text-align:center;max-width:300px}.qr-url{width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;color:var(--ink-3,#94a3b8);background:var(--surface-2,#F5F7FA);border-radius:8px;padding:8px 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .row-actions{display:flex;gap:6px;justify-content:flex-end}.console-root .icon-btn{width:30px;height:30px;border-radius:7px;display:grid;place-items:center;color:var(--ink-3);border:1px solid transparent}.console-root .icon-btn:hover{background:var(--surface-2);color:var(--ink);border-color:var(--line)}.console-root .icon-btn.danger:hover{background:var(--crit-bg);color:var(--crit);border-color:#F1CACA}.console-root .icon-btn svg{width:15px;height:15px;stroke-width:1.8}.console-root .toolbar{display:flex;align-items:center}.console-root .btn-add{background:var(--signal);color:var(--signal-ink);font-weight:700;font-size:13px;padding:9px 15px;border-radius:var(--r-sm);display:inline-flex;align-items:center;gap:6px}.console-root .btn-add:hover{filter:brightness(1.03)}.console-root .search-box{display:inline-flex;align-items:center;gap:7px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-pill);padding:7px 13px}.console-root .search-box input{border:none;outline:none;background:none;font-family:inherit;font-size:13px;color:var(--ink);width:160px}.console-root .chips{display:flex;flex-wrap:wrap;gap:8px}.console-root .opt-chip{display:inline-flex;align-items:center;gap:6px;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-pill);padding:5px 6px 5px 12px;font-size:13px;font-weight:600;color:var(--ink)}.console-root .opt-chip button{width:18px;height:18px;border-radius:50%;border:none;background:none;color:var(--ink-3);font-size:11px;cursor:pointer}.console-root .opt-chip button:hover{background:var(--crit-bg);color:var(--crit)}.console-root .bar{width:90px;height:7px;background:var(--line);border-radius:var(--r-pill);overflow:hidden}.console-root .bar span{display:block;height:100%;background:var(--signal-deep);border-radius:var(--r-pill)}.console-root .seg{display:inline-flex;border:1px solid var(--line-strong);border-radius:var(--r-sm);overflow:hidden}.console-root .seg-btn{padding:6px 12px;font-size:12.5px;font-weight:600;color:var(--ink-3);background:var(--surface);border:none;border-right:1px solid var(--line)}.console-root .seg-btn:last-child{border-right:none}.console-root .seg-btn:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.console-root .seg-btn:disabled{opacity:.5}.console-root .seg-btn.on.ok{background:var(--good-bg);color:var(--good)}.console-root .seg-btn.on.out{background:var(--crit-bg);color:var(--crit)}.console-root .seg-btn.on.info{background:var(--info-bg);color:var(--info)}.console-root table.timetable{min-width:760px;table-layout:fixed}.console-root .timetable th{text-align:center}.console-root .tt-time{text-align:right;color:var(--ink-3);font-size:12px;vertical-align:top;padding-top:8px;border-right:1px solid var(--line)}.console-root .tt-cell{border-left:1px solid var(--line);vertical-align:top;padding:4px;height:52px;cursor:pointer;transition:background .1s}.console-root .tt-cell:hover{background:var(--surface-2)}.console-root .tt-lesson{position:relative;border-radius:7px;padding:6px 8px;margin-bottom:4px;cursor:pointer}.console-root .tt-lesson.ind{background:var(--info-bg);box-shadow:inset 2px 0 0 var(--info)}.console-root .tt-lesson.grp{background:var(--signal-wash);box-shadow:inset 2px 0 0 var(--signal-deep)}.console-root .tt-lesson:hover{filter:brightness(.98)}.console-root .tt-who{font-weight:600;font-size:12.5px}.console-root .tt-meta{font-size:10.5px;color:var(--ink-3);font-family:var(--f-mono);margin-top:1px}.console-root .tt-x{position:absolute;top:3px;right:3px;width:18px;height:18px;border-radius:5px;border:none;background:rgba(255,255,255,.6);color:var(--ink-3);font-size:10px;cursor:pointer;opacity:0;transition:opacity .1s}.console-root .tt-lesson:hover .tt-x{opacity:1}.console-root .tt-x:hover{background:var(--crit-bg);color:var(--crit)}.console-root .pager{display:flex;align-items:center;gap:12px;padding:12px 16px;border-top:1px solid var(--line)}.console-root .pager-info{font-size:12.5px;color:var(--ink-3)}.console-root .pager-ctrl{margin-left:auto;display:flex;align-items:center;gap:8px}.console-root .pager-btn{border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--r-sm);padding:7px 12px;font-size:12.5px;font-weight:600;color:var(--ink-2)}.console-root .pager-btn:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.console-root .pager-btn:disabled{opacity:.45;cursor:default}.console-root .pager-page{font-size:12.5px;color:var(--ink-2);min-width:52px;text-align:center}.console-root .fld{display:flex;flex-direction:column;gap:6px}.console-root .fld>span{font-size:12.5px;font-weight:600;color:var(--ink-2)}.console-root .fld input,.console-root .fld select{border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:10px 12px;font-family:inherit;font-size:14px;background:var(--surface);color:var(--ink);outline:none}.console-root .fld input:focus,.console-root .fld select:focus{border-color:var(--signal-deep);box-shadow:0 0 0 3px var(--signal-wash)}.console-root .ok-note{padding:11px 14px;background:var(--good-bg);color:var(--good);border-radius:var(--r-sm);font-size:13px;font-weight:500}@media (max-width:900px){.console-root .strip{grid-template-columns:repeat(2,1fr)}}.console-root .bottom-nav,.console-root .nav-sheet-overlay{display:none}@media (max-width:768px){.console-root{grid-template-columns:1fr}.console-root .sidebar{display:none}.console-root .topbar{padding:10px 14px}.console-root .topbar-title{font-size:15px}.console-root .tmpl-badge{display:none}.console-root .content{padding:6px 16px calc(30px + env(safe-area-inset-bottom));gap:14px}.console-root .page-head{display:none}.console-root .toolbar{flex-wrap:wrap}.modal .fld-row{grid-template-columns:1fr}.console-root .strip{grid-template-columns:repeat(2,1fr)}.console-root table{min-width:540px}.console-root .seg-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.console-root .seg-tabs::-webkit-scrollbar{display:none}.console-root .seg-tabs .seg-tab{white-space:nowrap}.console-root .persp-switch{display:flex;width:100%}.console-root .persp-switch button{flex:1 1;min-width:0}.console-root .persp-banner{font-size:12px}.console-root .fin-card .v,.console-root .mtile .v{font-size:19px}.console-root .persp-switch button{padding:8px 10px;overflow:hidden}.console-root .persp-switch button.on{box-shadow:none}.console-root .persp-switch button b{font-size:13px}.console-root .persp-switch button span{font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.console-root .agent-input input{font-size:14px}.console-root .agent-input .go{padding:0 13px}.console-root .agent-input .go .go-t{display:none}.console-root .fin-tbl{min-width:0;font-size:12px}.console-root .fin-tbl td,.console-root .fin-tbl th{padding:8px}.console-root .mtbl{min-width:0}.console-root .mtbl td:nth-child(4),.console-root .mtbl td:nth-child(5),.console-root .mtbl td:nth-child(7),.console-root .mtbl th:nth-child(4),.console-root .mtbl th:nth-child(5),.console-root .mtbl th:nth-child(7){display:none}.console-root .pay-matrix{min-width:660px;font-size:12.5px}.console-root .pm-name-col{width:82px;min-width:82px;max-width:82px;padding:0 8px}.console-root .pm-total{width:90px;min-width:90px;padding:0 8px}.console-root .pm-mcol{width:48px}.console-root .pay-matrix thead th{height:38px;font-size:11.5px}.console-root .pay-matrix tbody td{height:40px}.console-root .timetable{min-width:660px}.console-root .timetable td,.console-root .timetable th{min-width:84px}.console-root .timetable .tt-time{min-width:48px}.console-root .bottom-nav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;background:rgba(255,255,255,.88);backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px);border-top:1px solid var(--line);padding:7px 6px calc(7px + env(safe-area-inset-bottom));justify-content:space-around}.console-root .bn-item{display:flex;flex-direction:column;align-items:center;gap:3px;flex:1 1;min-width:0;color:var(--ink-3);font-size:10.5px;font-weight:600;padding:2px;-webkit-tap-highlight-color:transparent}.console-root .bn-ic{display:grid;place-items:center;width:52px;height:30px;border-radius:999px;transition:background .18s ease,transform .18s cubic-bezier(.2,.7,.3,1)}.console-root .bn-item svg{width:22px;height:22px;stroke-width:1.8;transition:stroke-width .15s}.console-root .bn-lb{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .15s}.console-root .bn-item:active .bn-ic{transform:scale(.9)}.console-root .bn-item.active{color:var(--ink);font-weight:700}.console-root .bn-item.active .bn-ic{background:var(--signal);transform:translateY(-1px)}.console-root .bn-item.active svg{color:var(--signal-ink);stroke-width:2.1}.console-root .nav-sheet-overlay{display:block;position:fixed;inset:0;z-index:50;background:rgba(20,24,31,.42);animation:sheet-fade .15s ease}.console-root .nav-sheet{position:fixed;left:0;right:0;bottom:0;background:var(--surface);border-radius:18px 18px 0 0;padding:6px 10px calc(14px + env(safe-area-inset-bottom));max-height:82vh;overflow-y:auto;box-shadow:var(--shadow-pop);animation:sheet-up .2s cubic-bezier(.2,.7,.3,1)}.console-root .sheet-grip{width:40px;height:4px;background:var(--line-strong);border-radius:2px;margin:8px auto}.console-root .sheet-user{display:flex;align-items:center;gap:10px;padding:8px 8px 12px;border-bottom:1px solid var(--line);margin-bottom:6px}.console-root .sheet-nav{display:flex;flex-direction:column;gap:2px}.console-root .sheet-nav .nav-item{font-size:15px;padding:13px 12px;border-radius:var(--r-md)}.console-root .sheet-nav .nav-item svg{width:20px;height:20px}.console-root .sheet-nav .nav-item.active:before{display:none}.modal-overlay{padding:14px;place-items:end center}.modal{max-width:100%;max-height:90vh;border-radius:16px}}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes sheet-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.console-root .nav-sheet,.console-root .nav-sheet-overlay{animation:none}}.console-root .pd-paid{background:#E7F6ED;color:#1E9E54}.console-root .pd-prepaid{background:#E7F0FD;color:#2B6CDF}.console-root .pd-carry{background:#FBF0DA;color:#B4761A}.console-root .pd-leave{background:#EEF1F5;color:#7A8594}.console-root .pd-unpaid{background:#FBE8E8;color:#D23B3B}.console-root .pd-none{background:transparent;color:#C4CBD4}.console-root .pay-trend-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px}.console-root .pay-trend{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:5px;gap:5px;align-items:end;height:56px}.console-root .pay-trend-col{display:flex;flex-direction:column;align-items:center;gap:4px;height:100%}.console-root .pay-trend-bar-wrap{flex:1 1;width:100%;display:flex;align-items:flex-end;max-width:22px}.console-root .pay-trend-bar{width:100%;background:linear-gradient(180deg,#CBF24D,#A9D62F);border-radius:3px 3px 0 0;min-height:2px;transition:height .3s}.console-root .pay-trend-x{font-size:9.5px;color:#A6AEB9}.console-root .pay-legend{display:flex;flex-wrap:wrap;gap:14px;margin:0 2px 12px}.console-root .pay-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#5A6373}.console-root .pay-dot{width:11px;height:11px;border-radius:3px}.console-root .pay-dot.pd-none{box-shadow:inset 0 0 0 1px #DCE1E8}.console-root .pay-matrix-card{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card)}.console-root .pay-matrix-wrap{overflow-x:auto}.console-root .pay-matrix{border-collapse:separate;border-spacing:0;width:100%;min-width:860px;font-size:12px}.console-root .pay-matrix td,.console-root .pay-matrix th{padding:0}.console-root .pay-matrix thead th{position:-webkit-sticky;position:sticky;top:0;background:#fff;z-index:2;height:34px;color:#8A93A0;font-weight:600;font-size:11px;border-bottom:1px solid #eaeef3}.console-root .pm-mcol{text-align:center;width:52px}.console-root .pm-name-col{position:-webkit-sticky;position:sticky;left:0;z-index:3;background:#fff;text-align:center;padding:0 10px;width:116px;min-width:116px;max-width:116px;box-shadow:1px 0 0 #EAEEF3}.console-root thead .pm-name-col{z-index:4}.console-root .pm-total{position:-webkit-sticky;position:sticky;right:0;z-index:3;background:#fff;text-align:center;padding:0 12px;width:118px;min-width:118px;white-space:nowrap;color:#2C333F;font-weight:600;font-size:11.5px;box-shadow:-1px 0 0 #EAEEF3}.console-root thead .pm-total{z-index:4}.console-root .pay-matrix tbody tr:hover .pm-name-col,.console-root .pay-matrix tbody tr:hover .pm-total{background:#FAFBFC}.console-root .pay-matrix tbody td{border-bottom:1px solid #f1f4f7;height:42px}.console-root .pm-name-btn{display:flex;flex-direction:column;align-items:center;gap:0;background:none;border:none;cursor:pointer;padding:7px 0;width:100%;text-align:center;overflow:hidden}.console-root .pm-name-btn .m-name{font-size:12.5px}.console-root .pm-name-btn .m-name,.console-root .pm-name-btn .m-sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:96px}.console-root .pm-name-btn .m-sub{font-size:10.5px}.console-root .pm-name-btn:hover .m-name{color:#1E9E54}.console-root .pm-cell{text-align:center;position:relative}.console-root .pm-chip{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:24px;padding:0 6px;border-radius:6px;font-weight:700;font-size:11px;cursor:pointer;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .pm-chip.pd-none{min-width:24px;font-weight:400}.console-root .pm-cell.editable:hover .pm-chip{box-shadow:0 0 0 2px rgba(140,184,30,.35)}.console-root .pm-pencil{position:absolute;top:2px;right:6px;width:15px;height:15px;border-radius:4px;background:#1E2A0C;color:#CBF24D;display:none;align-items:center;justify-content:center;opacity:.92}.console-root .pm-cell.editable:hover .pm-pencil{display:inline-flex}.console-root .pm-pencil svg{width:9px;height:9px;stroke-width:2.4}.console-root .pm-unpaid-badge{display:inline-block;margin-left:6px;background:#FBE8E8;color:#D23B3B;font-size:10px;font-weight:700;padding:1px 5px;border-radius:999px}.console-root .pm-foot td{height:38px;border-top:2px solid #eaeef3;background:#FAFBFC;font-weight:700;color:#2C333F;font-size:11.5px}.console-root .pm-foot .pm-name-col{background:#FAFBFC;color:var(--ink-2);font-size:11.5px}.console-root .pm-foot .pm-total{background:#FAFBFC}.console-root .pm-pop-backdrop{position:fixed;inset:0;z-index:60}.console-root .pm-pop{position:fixed;z-index:61;width:236px;background:#fff;border:1px solid var(--line-strong);border-radius:12px;box-shadow:var(--shadow-pop);padding:12px;display:flex;flex-direction:column;gap:9px}.console-root .pm-pop-h{font-size:12.5px;font-weight:700;color:var(--ink)}.console-root .pm-pop-h small{color:var(--ink-3);font-weight:500;margin-left:5px}.console-root .pm-pop .fld{gap:4px}.console-root .pm-pop .fld span{font-size:11px;color:var(--ink-3)}.console-root .pm-pop input,.console-root .pm-pop select{height:32px;width:100%;min-width:0;max-width:100%;box-sizing:border-box;font-size:12.5px;padding:0 8px;border:1px solid var(--line-strong);border-radius:7px}.console-root .pm-pop-actions{display:flex;gap:6px;align-items:center;margin-top:2px}.console-root .pm-pop-actions .b{padding:7px 12px;font-size:12px}.console-root .pm-pop-del{margin-left:auto;color:#D23B3B;font-size:11.5px;background:none}.console-root .mpp-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:10px;margin-bottom:6px;border-bottom:1px solid #eef1f5}.console-root .mpp-total{font-size:13px;color:#5A6373}.console-root .mpp-total b{color:#0F172A;font-size:15px}.console-root .mpp-list{display:flex;flex-direction:column}.console-root .mpp-row{display:flex;align-items:center;gap:10px;padding:9px 4px;border-bottom:1px solid #f3f5f8;font-size:13px}.console-root .mpp-row.empty{opacity:.7}.console-root .mpp-m{width:34px;font-weight:700;color:#2C333F}.console-root .chip-pay{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:6px;font-weight:700;font-size:11.5px}.console-root .mpp-amt{width:78px;text-align:right}.console-root .mpp-date{width:92px;color:#9AA3B0;font-size:11.5px}.console-root .mpp-note{flex:1 1;color:#7A8594;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .mpp-none{flex:1 1}.console-root .mpp-edit-btn{background:#F3F5F8;border:1px solid #e4e8ee;color:#495159;font-size:11.5px;padding:5px 11px;border-radius:7px;cursor:pointer}.console-root .mpp-edit-btn:hover{background:#EAEEF3}.console-root .mpp-edit{border:1px solid #cbf24d;background:#FCFEF5;border-radius:10px;padding:12px;margin:6px 0;display:flex;flex-direction:column;gap:10px}.console-root .mpp-edit-top{font-size:13px}.console-root .mpp-edit-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.console-root .mpp-edit-actions{display:flex;gap:8px;align-items:center}.console-root .mpp-edit-actions .mpp-del{margin-left:auto;color:#D23B3B}@media (max-width:600px){.console-root .mpp-edit-grid{grid-template-columns:1fr 1fr}}.console-root .mac-plot{position:relative;padding:4px 8px 2px}.console-root .mac-svg{width:100%;height:auto;display:block;max-height:180px}.console-root .mac-svg rect{cursor:crosshair}.console-root .mac-x{fill:var(--ink-3);font-size:12px;font-family:var(--f-sans)}.console-root .mac-val{fill:var(--ink-2);font-size:12px;font-weight:600;font-family:var(--f-sans)}.console-root .mac-val.on{fill:var(--ink);font-size:13px}.console-root .mac-tip{position:absolute;top:2px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;font-size:11.5px;padding:4px 10px;border-radius:7px;white-space:nowrap;pointer-events:none}.console-root .etr-card .card-h{gap:8px;padding:11px 16px}.console-root .etr-card .card-h h3{font-size:13px}.console-root .etr-year{margin-left:4px;height:27px;padding:0 7px;font-size:12px}.console-root .etr-now{margin-left:auto;font-size:15px;font-weight:700;letter-spacing:-.02em;display:inline-flex;align-items:baseline;gap:7px}.console-root .etr-now small{font-size:11px;color:var(--ink-3);font-weight:600;margin-left:1px}.console-root .etr-delta{font-size:10.5px;font-weight:700;padding:1px 6px;border-radius:999px}.console-root .etr-delta.up{background:var(--good-bg);color:var(--good)}.console-root .etr-delta.down{background:var(--crit-bg);color:var(--crit)}.console-root .etr-plot{position:relative;padding:4px 8px 2px}.console-root .etr-svg{width:100%;height:auto;display:block;max-height:130px}.console-root .etr-xlabel{fill:#A6AEB9;font-size:9.5px;font-family:var(--f-mono)}.console-root .etr-svg rect{cursor:crosshair}.console-root .etr-tip{position:absolute;top:2px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;font-size:11.5px;padding:4px 10px;border-radius:7px;white-space:nowrap;pointer-events:none}.console-root .etr-tip-j{color:#B7F07A}.console-root .etr-tip-l{color:#FCA5AD}.console-root .filter-row th{padding:5px 10px 8px;background:var(--surface-2);border-bottom:1px solid var(--line);text-transform:none}.console-root .col-filter{width:100%;min-width:78px;height:28px;font-size:12px;padding:0 6px;border:1px solid var(--line-strong);border-radius:6px;background:#fff;color:var(--ink-2);font-weight:500}.console-root .col-filter:focus{outline:none;border-color:var(--signal-deep)}.console-root .btn-ghost-sm{font-size:12px;color:var(--ink-2);border:1px solid var(--line-strong);background:#fff;padding:6px 11px;border-radius:7px}.console-root .btn-ghost-sm:hover{background:var(--surface-2);color:var(--ink)}.console-root .seg-tabs{display:flex;gap:0;margin-bottom:16px}.console-root .seg-tabs .seg-tab{font-size:14px;font-weight:600;color:var(--ink-3);background:none;border:none;padding:9px 2px;margin-right:24px;position:relative;cursor:pointer;transition:color .12s}.console-root .seg-tabs .seg-tab.on,.console-root .seg-tabs .seg-tab:hover{color:var(--ink)}.console-root .seg-tabs .seg-tab.on:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--signal-deep);border-radius:2px 2px 0 0}.console-root .wk-nav{display:inline-flex;align-items:center;gap:4px}.console-root .wk-arrow{width:30px;height:30px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;font-size:17px;color:var(--ink-2);display:grid;place-items:center}.console-root .wk-arrow:hover{background:var(--surface-2)}.console-root .wk-this{height:30px;padding:0 12px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;font-size:12.5px;font-weight:600;color:var(--ink-2)}.console-root .wk-this:hover{background:var(--surface-2)}.console-root .wk-range{font-size:13px;color:var(--ink-2);font-weight:600}.console-root .wk-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:10px;gap:10px}.console-root .wk-day{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);min-height:140px;display:flex;flex-direction:column;overflow:hidden}.console-root .wk-day.today{border-color:var(--signal-deep);box-shadow:0 0 0 1px var(--signal-deep)}.console-root .wk-day.holiday .wk-day-h{background:#FDECEC}.console-root .wk-day-h{display:flex;align-items:baseline;gap:6px;padding:8px 10px;border-bottom:1px solid var(--line);background:var(--surface-2);flex-wrap:wrap}.console-root .wk-wd{font-size:12px;font-weight:700;color:var(--ink-2)}.console-root .wk-day.holiday .wk-wd,.console-root .wk-hol{color:#D23B3B}.console-root .wk-date{font-size:13px;font-weight:650;color:var(--ink);font-family:var(--f-mono)}.console-root .wk-day.today .wk-date{color:#6f8f0e}.console-root .wk-hol{font-size:10px;font-weight:700;margin-left:auto}.console-root .wk-slots{padding:8px;display:flex;flex-direction:column;gap:6px;flex:1 1}.console-root .wk-empty{color:var(--ink-3);font-size:12px;text-align:center;padding:10px 0}.console-root .wk-empty.hol{color:#D9908F}.console-root .wk-lesson{border:1px solid var(--line);border-left:3px solid var(--signal-deep);border-radius:7px;padding:7px 8px;background:#fff}.console-root .wk-lesson.extra{border-left-color:#3F5AE0;background:#F7F9FF}.console-root .wk-lesson.off{opacity:.6;border-left-color:#C4CBD4;background:var(--surface-2)}.console-root .wk-lesson.off .wk-who{text-decoration:line-through;color:var(--ink-3)}.console-root .wk-time{font-size:11.5px;font-weight:700;color:var(--ink)}.console-root .wk-dash{color:var(--ink-3);margin:0 1px}.console-root .wk-who{font-size:12.5px;font-weight:600;margin-top:1px}.console-root .wk-meta{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px;font-size:10.5px;color:var(--ink-3)}.console-root .wk-tag{font-size:9.5px;font-weight:700;padding:1px 5px;border-radius:999px}.console-root .wk-tag.extra{background:#ECEFFC;color:#3F5AE0}.console-root .wk-tag.off{background:#FBE8E8;color:#D23B3B}.console-root .wk-acts{margin-top:6px}.console-root .wk-acts button{font-size:11px;color:var(--ink-2);border:1px solid var(--line-strong);border-radius:6px;padding:3px 8px;background:#fff}.console-root .wk-acts button:hover{background:var(--surface-2)}.console-root .wk-add{margin-top:auto;font-size:11px;color:var(--ink-3);border:1px dashed var(--line-strong);border-radius:7px;padding:6px;background:none}.console-root .wk-add:hover{color:var(--ink);border-color:var(--ink-3);background:var(--surface-2)}@media (max-width:1100px){.console-root .wk-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width:720px){.console-root .wk-grid{grid-template-columns:repeat(2,1fr)}}.console-root .wk-lesson.clickable{cursor:pointer}.console-root .wk-lesson.clickable:hover{border-color:var(--signal-deep);box-shadow:0 0 0 2px rgba(180,222,58,.25)}.console-root .wk-tag.mod{background:#FBF0DA;color:#B4761A}.console-root .wk-revert{margin-top:2px;font-size:12px;color:#B4761A;border:1px solid #ead9b0;background:#FDF7EA;border-radius:7px;padding:7px 10px;width:100%}.console-root .wk-revert:hover{background:#FBF0DA}.console-root .att-legend{display:inline-flex;gap:12px;font-size:12px;color:var(--ink-2)}.console-root .att-legend span{display:inline-flex;align-items:center;gap:5px}.console-root .att-matrix .att-dcol{width:24px;text-align:center;font-size:10px;padding:0}.console-root .att-cell{text-align:center;padding:0}.console-root .att-dot{width:15px;height:15px;border-radius:50%;border:none;display:inline-block;padding:0}.console-root button.att-dot.editable{cursor:pointer}.console-root button.att-dot.editable:hover{outline:2px solid rgba(180,222,58,.5);outline-offset:1px}.console-root .att-dot.att-present{background:#35C46B}.console-root .att-dot.att-absent{background:#E5484D}.console-root .att-dot.att-makeup{background:#3F5AE0}.console-root .att-dot.att-none{background:#fff;box-shadow:inset 0 0 0 1.5px #E0E4EA}.console-root .att-p{color:#1E9E54;font-weight:700}.console-root .att-a{color:#D23B3B;font-weight:700}.console-root .rc-ses{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:10px}.console-root .rc-ses-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px;font-size:13.5px}.console-root .rc-all{margin-left:auto;padding:6px 12px!important;flex:0 0 auto!important}.console-root .rc-row{display:flex;align-items:center;gap:10px;padding:6px 0;border-top:1px solid var(--line)}.console-root .rc-name{flex:1 1;font-weight:600;font-size:13.5px}.console-root .rc-row .seg-tab{padding:5px 12px;font-size:12.5px;border:1px solid var(--line-strong)}.console-root .rc-row .seg-tab.on{background:var(--signal);color:var(--signal-ink);border-color:var(--signal)}.console-root{--pwa-bg:var(--surface);--pwa-line:var(--line-strong);--pwa-ink:var(--ink);--pwa-ink-3:var(--ink-3);--pwa-shadow:var(--shadow-pop)}.login-screen{--pwa-bg:#FFFFFF;--pwa-line:#D7DCE3;--pwa-ink:#14181F;--pwa-ink-3:#838C97;--pwa-shadow:0 12px 34px -12px rgba(20,24,31,.24)}.mlogin{--pwa-bg:#171C24;--pwa-line:rgba(255,255,255,.14);--pwa-ink:#FFFFFF;--pwa-ink-3:rgba(255,255,255,.55);--pwa-shadow:0 14px 40px -14px rgba(0,0,0,.7)}:is(.console-root,.login-screen,.mlogin) .pwa-banner{position:fixed;left:12px;right:12px;bottom:calc(14px + env(safe-area-inset-bottom, 0px));z-index:55;display:flex;align-items:center;gap:12px;max-width:520px;margin:0 auto;background:var(--pwa-bg);border:1px solid var(--pwa-line);border-radius:14px;color:var(--pwa-ink);padding:12px 14px;box-shadow:var(--pwa-shadow);text-align:left}:is(.console-root,.login-screen,.mlogin) .pwa-ico{width:38px;height:38px;border-radius:10px;flex-shrink:0;background:linear-gradient(140deg,#CBF24D,#B4DE3A);color:#1E2A0C;font-family:var(--f-mono,"SF Mono",ui-monospace,Menlo,monospace);font-weight:650;font-size:12px;display:grid;place-items:center}:is(.console-root,.login-screen,.mlogin) .pwa-txt{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px}:is(.console-root,.login-screen,.mlogin) .pwa-txt b{font-size:14px}:is(.console-root,.login-screen,.mlogin) .pwa-txt span{font-size:12px;color:var(--pwa-ink-3)}:is(.console-root,.login-screen,.mlogin) .pwa-share{font-weight:650}:is(.console-root,.login-screen,.mlogin) .pwa-add{flex-shrink:0;background:#CBF24D;color:#1E2A0C;border:none;font-weight:700;font-size:13.5px;padding:9px 16px;border-radius:9px;cursor:pointer}:is(.console-root,.login-screen,.mlogin) .pwa-x{flex-shrink:0;background:none;border:none;color:var(--pwa-ink-3);font-size:15px;padding:4px 6px;cursor:pointer}.console-root .pr-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-card)}.console-root .pr-row{border-top:1px solid var(--line)}.console-root .pr-row:first-child{border-top:none}.console-root .pr-main{display:flex;align-items:center;gap:12px;padding:14px 16px}.console-root .pr-main:hover{background:var(--surface-2)}.console-root .pr-toggle{width:22px;color:var(--ink-3);font-size:12px}.console-root .pr-who{flex:1 1;min-width:0}.console-root .pr-name{font-weight:700;font-size:14.5px;display:flex;align-items:center;gap:7px}.console-root .pr-method{font-size:10.5px;font-weight:700;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);padding:1px 7px;border-radius:999px}.console-root .pr-basis{font-size:12px;color:var(--ink-3);margin-top:2px}.console-root .pr-amt{text-align:right}.console-root .pr-final{font-size:17px;font-weight:650;letter-spacing:-.02em}.console-root .pr-status{font-size:10.5px;font-weight:700;padding:1px 7px;border-radius:999px}.console-root .pr-status.st-draft{background:var(--surface-2);color:var(--ink-3)}.console-root .pr-status.st-confirmed{background:var(--info-bg);color:var(--info)}.console-root .pr-status.st-paid{background:var(--good-bg);color:var(--good)}.console-root .pr-actions{display:flex;align-items:center;gap:6px}.console-root .pr-actions .b{padding:7px 13px;font-size:12.5px;flex:0 0 auto}.console-root .pr-detail{padding:0 14px 14px 48px;display:flex;flex-direction:column;gap:12px}.console-root .pr-metrics{display:flex;flex-wrap:wrap;gap:16px;font-size:12.5px;color:var(--ink-2);padding:10px 12px;background:var(--surface-2);border-radius:10px}.console-root .pr-metrics b{color:var(--ink)}.console-root .pr-adjust{display:grid;grid-template-columns:200px 1fr;grid-gap:12px;gap:12px}@media (max-width:640px){.console-root .pr-adjust{grid-template-columns:1fr}.console-root .pr-detail{padding-left:14px}}.console-root .rule-card{border:1px solid var(--line);border-radius:12px;padding:12px;margin-bottom:10px}.console-root .rule-h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.console-root .rule-h b{font-size:14px}.console-root .rule-body{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.console-root .rule-body .fld{flex:1 1;min-width:130px}.console-root .payslip{display:flex;flex-direction:column;gap:8px}.console-root .ps-head{font-size:15px;font-weight:700;padding-bottom:8px;border-bottom:2px solid var(--ink)}.console-root .ps-line{font-size:12.5px;color:var(--ink-3)}.console-root .ps-row{display:flex;justify-content:space-between;font-size:13.5px;padding:3px 0}.console-root .ps-row.total{border-top:1px solid var(--line);padding-top:8px;margin-top:4px;font-size:15px}.console-root .ps-row.total b{color:var(--good)}.console-root .ps-sub{font-size:12px;font-weight:700;color:var(--ink-2);margin-top:10px}.console-root .ps-students{display:flex;flex-direction:column;gap:2px;max-height:200px;overflow-y:auto}.console-root .ps-stu{display:flex;justify-content:space-between;font-size:12.5px;padding:4px 0;border-bottom:1px solid var(--line);color:var(--ink-2)}.console-root .av-legend{display:inline-flex;gap:12px;font-size:12px;color:var(--ink-2)}.console-root .av-legend span{display:inline-flex;align-items:center;gap:5px}.console-root .av-dot{width:12px;height:12px;border-radius:3px}.console-root .av-dot.open{background:#CBF24D}.console-root .av-dot.busy{background:#C7CED8}.console-root .av-dot.unavail{background:#F1AEB2}.console-root .av-grid{min-width:620px;border-collapse:separate;border-spacing:0}.console-root .av-grid th{text-align:center;font-size:11.5px;padding:8px 0;background:var(--surface-2);border-bottom:1px solid var(--line)}.console-root .av-time{text-align:center;font-size:11px;color:var(--ink-3);border-right:1px solid var(--line)}.console-root .av-cell{height:38px;text-align:center;font-size:11px;font-weight:700;border:1px solid var(--line);color:transparent}.console-root .av-cell.editable{cursor:pointer}.console-root .av-cell.available{background:#EDF9C9;color:#5f7a12}.console-root .av-cell.unavailable{background:#FBE8E8;color:#C0392B}.console-root .av-cell.busy{background:#EEF1F5;color:#6b7480}.console-root .av-cell.none.editable:hover{background:var(--surface-2)}.console-root .av-busy-label{font-size:10px;font-weight:600}.console-root .av-finder{margin-bottom:14px}.console-root .av-finder-row{display:flex;align-items:center;gap:8px;padding:14px 18px;flex-wrap:wrap}.console-root .av-results{display:flex;flex-wrap:wrap;gap:8px;padding:0 18px 16px}.console-root .av-chip{font-size:12.5px;font-weight:700;padding:5px 11px;border-radius:999px}.console-root .av-chip.open{background:#EDF9C9;color:#5f7a12}.console-root .av-chip.busy{background:#EEF1F5;color:#6b7480}.console-root .av-chip.unavail{background:#FBE8E8;color:#C0392B}.console-root .av-chip.unknown{background:var(--surface-2);color:var(--ink-3);border:1px solid var(--line)}.console-root .fin-cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px;margin-bottom:14px}.console-root .fin-card{border:1px solid var(--line);border-radius:var(--r-md);padding:14px 16px;background:var(--surface)}.console-root .fin-card .k{font-size:12px;color:var(--ink-3)}.console-root .fin-card .v{font-size:22px;font-weight:650;letter-spacing:-.02em;margin-top:2px}.console-root .fin-card .s{font-size:12px;margin-top:2px;color:var(--ink-2)}.console-root .fin-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}@media (max-width:900px){.console-root .fin-cards,.console-root .fin-grid{grid-template-columns:1fr}}.console-root .fin-tbl{width:100%;border-collapse:collapse;font-size:13px}.console-root .fin-tbl th{text-align:left;font-size:11.5px;color:var(--ink-3);font-weight:700;position:-webkit-sticky;position:sticky;top:0;background:var(--surface)}.console-root .fin-tbl td,.console-root .fin-tbl th{padding:9px 12px;border-bottom:1px solid var(--line)}.console-root .fin-tbl .r{text-align:right}.console-root .fin-tbl .pos{color:var(--good)}.console-root .fin-tbl .neg{color:var(--crit)}.console-root .fin-card .s.pos,.console-root .fin-card .v.pos{color:var(--good)}.console-root .fin-card .s.neg,.console-root .fin-card .v.neg{color:var(--crit)}.console-root .exp-form{display:flex;gap:8px;padding:14px 16px;align-items:center}.console-root .pnl-bar{height:8px;background:var(--surface-2);border-radius:999px;overflow:hidden}.console-root .pnl-fill{height:100%;border-radius:999px}.console-root .pnl-fill.pos{background:var(--good)}.console-root .pnl-fill.neg{background:var(--crit)}.console-root .recur-tag{display:inline-block;margin-left:6px;font-size:10.5px;font-weight:700;color:var(--signal-deep);background:var(--signal-wash);border-radius:999px;padding:1px 7px}.console-root .recur-toggle{font-size:11.5px;font-weight:700;border-radius:999px;padding:3px 10px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-3);cursor:pointer}.console-root .recur-toggle.on{background:var(--signal-wash);border-color:var(--signal);color:var(--signal-deep)}.console-root .rec-form{display:flex;flex-wrap:wrap;gap:8px;padding:14px 16px;align-items:center}.console-root .rec-form .rec-amt{width:110px}.console-root .rec-form .rec-memo{flex:1 1;min-width:120px}.console-root .rec-list{border-top:1px solid var(--line)}.console-root .rec-item{display:flex;align-items:center;gap:10px;padding:11px 16px;border-bottom:1px solid var(--line)}.console-root .rec-item:last-child{border-bottom:none}.console-root .rec-item.off{opacity:.5}.console-root .rec-main{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 10px;flex:1 1;min-width:0}.console-root .rec-cat{font-weight:700;font-size:13.5px}.console-root .rec-amt-v{font-weight:700;color:var(--ink)}.console-root .rec-cad{font-size:12px;color:var(--ink-2)}.console-root .rec-note{font-size:12px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.console-root .rec-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.console-root .rec-empty{padding:18px 16px;color:var(--ink-3);font-size:13px;text-align:center}.console-root .status-reason-box{background:#FBF7EE;border:1px solid #efe6d2;border-radius:var(--r-sm);padding:10px 12px;margin:-2px 0 2px}.console-root .persp-switch{display:inline-flex;gap:8px;margin-bottom:14px}.console-root .persp-switch button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;border:1.5px solid var(--line-strong);background:var(--surface);border-radius:11px;padding:10px 18px;cursor:pointer;min-width:172px;transition:border-color .12s,background .12s}.console-root .persp-switch button b{font-size:14px;font-weight:700;color:var(--ink)}.console-root .persp-switch button span{font-size:11.5px;color:var(--ink-3)}.console-root .persp-switch button:hover{border-color:var(--ink-3)}.console-root .persp-switch button.on{background:var(--signal-wash);border-color:var(--signal-deep);box-shadow:0 0 0 3px var(--signal-wash)}.console-root .persp-switch button.on b{color:var(--signal-ink)}.console-root .persp-switch button.on span{color:var(--signal-deep)}.console-root .persp-banner{font-size:12.5px;line-height:1.5;padding:9px 14px;border-radius:var(--r-sm);margin-bottom:12px;border:1px solid transparent}.console-root .persp-banner b{font-weight:700}.console-root .persp-banner.teach{background:var(--signal-wash);border-color:var(--signal);color:#3C4A16}.console-root .persp-banner.dir{background:#F1F4F8;border-color:#E1E6EC;color:var(--ink-2)}.console-root .tt-cell.tt-off{background:repeating-linear-gradient(45deg,#F1F3F6,#F1F3F6 6px,#EAEDF1 0,#EAEDF1 12px);cursor:pointer;position:relative}.console-root .tt-cell.tt-off:hover{filter:brightness(.98)}.console-root .tt-off-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:700;color:#A6AEB9;letter-spacing:.04em}.console-root .m-only{display:none}@media (max-width:768px){.console-root .m-only{display:block}.console-root .d-only{display:none!important}.console-root .m-title{font-size:14px;font-weight:700;color:var(--ink-2);margin:4px 2px 8px}.console-root .m-stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.console-root .m-stat{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:11px 12px;overflow:hidden}.console-root .m-stat .k{font-size:11px;color:var(--ink-3)}.console-root .m-stat .k,.console-root .m-stat .v{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.console-root .m-stat .v{font-size:clamp(15px,4.6vw,20px);font-weight:650;letter-spacing:-.03em;margin-top:3px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .m-stat .v small{font-size:11px;font-weight:600;color:var(--ink-3)}.console-root .m-stat .s{font-size:11px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.console-root .m-stat.accent{background:var(--signal-wash);border-color:var(--signal)}.console-root .m-stat.crit{background:var(--crit-bg);border-color:#F1CACA}.console-root .m-stat.crit .v{color:var(--crit)}.console-root .pos{color:var(--good)}.console-root .neg{color:var(--crit)}.console-root .m-list{display:flex;flex-direction:column;gap:8px}.console-root .m-card{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:13px 14px;width:100%;text-align:left;cursor:pointer}.console-root .m-card:active{background:var(--surface-2)}.console-root .m-card-main{flex:1 1;min-width:0}.console-root .m-card-name{font-weight:700;font-size:14.5px}.console-root .m-card-name,.console-root .m-card-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .m-card-sub{font-size:12px;color:var(--ink-3);margin-top:1px}.console-root .m-card-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.console-root .m-card-amt{font-family:var(--f-mono);font-weight:700;font-size:13.5px}.console-root .m-card-chev{color:var(--ink-3);flex-shrink:0}.console-root .m-card-chev svg{width:18px;height:18px}.console-root .m-empty{padding:28px 16px;text-align:center;color:var(--ink-3);font-size:13px}.console-root .m-monthbar{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:2px 14px 8px;margin:0 -14px}.console-root .m-monthbar::-webkit-scrollbar{display:none}.console-root .m-mchip{flex:0 0 auto;padding:7px 14px;border-radius:999px;border:1px solid var(--line-strong);background:var(--surface);font-size:13px;font-weight:700;color:var(--ink-2)}.console-root .m-mchip.on{background:var(--ink);color:var(--surface);border-color:var(--ink)}.console-root .m-bar{height:6px;border-radius:999px;background:var(--surface-2);overflow:hidden;margin-top:6px}.console-root .m-bar>i{display:block;height:100%;border-radius:999px;background:var(--signal-deep)}.console-root .m-bar>i.pos{background:var(--good)}.console-root .m-bar>i.neg{background:var(--crit)}.console-root .m-tbl{width:100%;border-collapse:collapse;table-layout:fixed;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .m-tbl td,.console-root .m-tbl th{padding:9px 4px;font-size:12px;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.console-root .m-tbl td:first-child,.console-root .m-tbl th:first-child{text-align:left;color:var(--ink-3);font-weight:600;width:34px}.console-root .m-tbl thead th{font-size:11px;color:var(--ink-3);font-weight:700;border-bottom:1px solid var(--line);padding-bottom:7px}.console-root .m-tbl tbody tr+tr td{border-top:1px solid var(--surface-2)}.console-root .m-tbl tfoot td{border-top:1.5px solid var(--line-strong);font-weight:650;padding-top:10px}.console-root .m-tbl .mono{font-family:var(--f-mono)}.console-root .m-actionbar{position:fixed;left:0;right:0;bottom:calc(58px + env(safe-area-inset-bottom));padding:8px 14px;z-index:35;display:flex;gap:8px;pointer-events:none}.console-root .m-actionbar>*{pointer-events:auto}.console-root .m-actionbar .btn-add{flex:1 1;justify-content:center;height:48px;border-radius:13px;font-size:15px;box-shadow:var(--shadow-pop)}.console-root .content.has-actionbar{padding-bottom:calc(150px + env(safe-area-inset-bottom))}.console-root .m-pill{font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap}}@keyframes m-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width:768px){.console-root .topbar,.console-root>.main>.topbar{display:none}.console-root .m-screen{min-height:100vh}.console-root .m-screen-body{padding:2px 16px calc(86px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:14px}.console-root .m-appbar{position:-webkit-sticky;position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:2px;height:calc(50px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 6px 0;background:transparent;border-bottom:1px solid transparent;transition:background .22s ease,border-color .22s ease}.console-root .m-appbar.solid{background:rgba(255,255,255,.82);backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px);border-bottom-color:var(--line)}.console-root .m-ab-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:var(--ink);flex-shrink:0;-webkit-tap-highlight-color:transparent;transition:background .12s}.console-root .m-ab-icon:active{background:var(--surface-2)}.console-root .m-ab-icon svg{width:25px;height:25px;stroke-width:2}.console-root .m-ab-spacer{width:8px;flex-shrink:0}.console-root .m-ab-title{flex:1 1;min-width:0;text-align:center;font-size:16px;font-weight:700;opacity:0;transform:translateY(1px);transition:opacity .2s ease;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .m-ab-title.show{opacity:1}.console-root .m-ab-right{min-width:38px;display:flex;align-items:center;justify-content:flex-end;gap:4px;flex-shrink:0}.console-root .m-ab-large{padding:4px 16px 10px}.console-root .m-ab-large h1{font-size:27px;font-weight:650;letter-spacing:-.03em;margin:0;text-wrap:balance}.console-root .m-ab-large p{font-size:13px;color:var(--ink-3);margin:4px 0 0}.console-root .m-ab-act{display:inline-flex;align-items:center;gap:5px;height:34px;padding:0 13px;border-radius:999px;background:var(--ink);color:var(--surface);font-size:13.5px;font-weight:700}.console-root .m-ab-act.ghost{background:var(--surface-2);color:var(--ink);border:1px solid var(--line-strong)}.console-root .m-ab-act svg{width:17px;height:17px;stroke-width:2.1}.console-root .sheet-scrim{position:fixed;inset:0;z-index:60;background:rgba(15,19,26,.44);display:flex;flex-direction:column;justify-content:flex-end}.console-root .sheet{background:var(--surface);border-radius:22px 22px 0 0;box-shadow:var(--shadow-pop);display:flex;flex-direction:column;overflow:hidden}.console-root .sheet-grip{width:38px;height:4px;border-radius:999px;background:var(--line-strong);margin:9px auto 3px;flex-shrink:0;touch-action:none;cursor:-webkit-grab;cursor:grab}.console-root .sheet-head{display:flex;align-items:flex-start;gap:10px;padding:6px 16px 12px;border-bottom:1px solid var(--line);flex-shrink:0;touch-action:none}.console-root .sheet-titles{flex:1 1;min-width:0}.console-root .sheet-title{font-size:18px;font-weight:650;letter-spacing:-.02em}.console-root .sheet-sub{font-size:12.5px;color:var(--ink-3);margin-top:2px}.console-root .sheet-x{width:30px;height:30px;border-radius:50%;background:var(--surface-2);display:grid;place-items:center;color:var(--ink-2);flex-shrink:0}.console-root .sheet-x svg{width:17px;height:17px;stroke-width:2.2}.console-root .sheet-body{overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px 16px calc(20px + env(safe-area-inset-bottom))}.console-root .sheet-foot{padding:12px 16px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--line);flex-shrink:0;display:flex;gap:8px}.console-root .sheet-foot>*{flex:1 1}.console-root .m-tabs-bar{display:flex;gap:3px;background:var(--surface-2);border:1px solid var(--line);border-radius:13px;padding:4px;margin-bottom:14px}.console-root .m-tab{position:relative;flex:1 1;min-width:0;padding:9px 4px;font-size:13.5px;font-weight:700;color:var(--ink-3);border-radius:10px;-webkit-tap-highlight-color:transparent}.console-root .m-tab>span{position:relative;z-index:1;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.console-root .m-tab.on{color:var(--ink)}.console-root .m-tab-ink{position:absolute;inset:0;z-index:0;background:var(--surface);border-radius:10px;box-shadow:var(--shadow-card)}.console-root .m-tabs-view{overflow:hidden;margin:0 -16px;touch-action:pan-y}.console-root .m-tabs-track{display:flex;align-items:flex-start}.console-root .m-tabs-panel{flex-shrink:0;padding:2px 16px 0;display:flex;flex-direction:column;gap:14px}.console-root .m-skel{display:inline-block;background:linear-gradient(100deg,var(--surface-2) 28%,#eef1f4 48%,var(--surface-2) 68%);background-size:200% 100%;animation:m-shimmer 1.3s ease-in-out infinite;border-radius:8px}.console-root .m-skel.dark{background:linear-gradient(100deg,rgba(255,255,255,.07) 28%,rgba(255,255,255,.16) 48%,rgba(255,255,255,.07) 68%);background-size:200% 100%}}@media (prefers-reduced-motion:reduce){.console-root .m-skel{animation:none}}@keyframes mc-typing{0%,60%,to{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@keyframes bwj-rot{to{transform:rotate(1turn)}}.console-root .bwj-load{display:flex;align-items:center;justify-content:center}.console-root .bwj-ring{position:relative;display:grid;place-items:center;border-radius:50%;flex-shrink:0}.console-root .bwj-ring:before{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 90deg,transparent 0deg,transparent 60deg,var(--signal-deep) 300deg,var(--signal) 1turn);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 3.5px),#000 calc(100% - 3px));mask:radial-gradient(farthest-side,transparent calc(100% - 3.5px),#000 calc(100% - 3px));animation:bwj-rot .75s linear infinite}.console-root .bwj-ring b{font-family:var(--f-mono);font-size:8px;font-weight:650;color:var(--signal-deep);letter-spacing:-.03em}.console-root .bwj-splash{position:fixed;inset:0;z-index:99998;display:grid;place-items:center;background:#0E1116;padding-bottom:env(safe-area-inset-bottom)}.console-root .bwj-splash img{width:42vmin;height:auto}@media (prefers-reduced-motion:reduce){.console-root .bwj-ring:before{animation-duration:1.6s}}@media (max-width:768px){.console-root .m-home{padding:0 0 calc(96px + env(safe-area-inset-bottom))}.console-root .chev{color:var(--line-strong);display:inline-flex;flex-shrink:0}.console-root .chev svg{width:19px;height:19px}.console-root .mh-greet{display:flex;align-items:center;gap:12px;padding:calc(10px + env(safe-area-inset-top)) 20px 8px}.console-root .mh-ava{position:relative;width:46px;height:46px;border-radius:16px;background:linear-gradient(150deg,var(--signal),var(--signal-deep));color:var(--signal-ink);display:grid;place-items:center;font-weight:650;font-family:var(--f-mono);font-size:14px;letter-spacing:-.03em;flex-shrink:0;box-shadow:0 6px 16px -6px rgba(180,222,58,.7);border:none}.console-root .mh-ava:active{transform:scale(.94)}.console-root .mh-ava-dd{position:absolute;right:-4px;bottom:-4px;width:19px;height:19px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;box-shadow:0 2px 6px rgba(20,24,14,.3);border:2px solid var(--paper)}.console-root .mh-ava-dd svg{width:11px;height:11px}.console-root .mh-g-t{flex:1 1;min-width:0}.console-root .mh-hi{font-size:20px;font-weight:650;letter-spacing:-.025em}.console-root .mh-sub{font-size:12.5px;color:var(--ink-3);margin-top:2px}.console-root .mh-qr{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;color:var(--ink);flex-shrink:0}.console-root .mh-qr:active{background:var(--surface-2)}.console-root .mh-qr svg{width:23px;height:23px}.console-root .mh-bell{position:relative;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;color:var(--ink);flex-shrink:0}.console-root .mh-bell svg{width:24px;height:24px}.console-root .mh-dot{position:absolute;top:8px;right:9px;width:8px;height:8px;border-radius:50%;background:var(--crit);border:2px solid var(--paper)}.console-root .mh-ai{display:block;width:calc(100% - 36px);margin:6px 18px 0;text-align:left;background:#16190E;color:#EEF1E6;border-radius:26px;padding:18px 18px 16px;position:relative;overflow:hidden;box-shadow:var(--shadow-card);border:none}.console-root .mh-ai:active{transform:scale(.99)}.console-root .mh-ai:before{content:"";position:absolute;right:-70px;top:-80px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(203,242,77,.22),transparent 68%);pointer-events:none}.console-root .mh-ai-top{display:flex;align-items:center;gap:8px;position:relative}.console-root .mh-ai-badge{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;color:#E7ECDB}.console-root .mh-ai-badge .sp{width:22px;height:22px;border-radius:8px;background:var(--signal);display:grid;place-items:center;box-shadow:0 3px 10px -3px rgba(203,242,77,.8)}.console-root .mh-ai-badge .sp svg{width:14px;height:14px;stroke:var(--signal-ink)}.console-root .mh-ai-live{margin-left:auto;font-size:11px;font-weight:700;color:var(--signal);display:inline-flex;align-items:center;gap:5px}.console-root .mh-ai-live i{width:6px;height:6px;border-radius:50%;background:var(--signal);box-shadow:0 0 0 3px rgba(203,242,77,.2)}.console-root .mh-ai-hi{font-size:23px;font-weight:650;letter-spacing:-.03em;line-height:1.25;margin:14px 0;position:relative}.console-root .mh-ai-chips{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;margin-bottom:14px;position:relative}.console-root .mh-ai-chips::-webkit-scrollbar{display:none}.console-root .mh-ai-chips span{flex:0 0 auto;font-size:12.5px;font-weight:650;color:#DDE3D0;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);padding:7px 12px;border-radius:999px}.console-root .mh-ai-in{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);border-radius:15px;padding:11px 11px 11px 15px}.console-root .mh-ai-in .ph{flex:1 1;font-size:14px;color:#AAB199;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .mh-ai-in .send{width:34px;height:34px;border-radius:11px;background:var(--signal);display:grid;place-items:center;flex-shrink:0}.console-root .mh-ai-in .send svg{width:18px;height:18px;stroke:var(--signal-ink)}.console-root .mh-sum{margin:14px 18px 0;background:var(--surface);border-radius:22px;box-shadow:var(--shadow-card);border:1px solid var(--line);overflow:hidden}.console-root .mh-sum-main{display:flex;padding:17px 18px 15px}.console-root .mh-sum-main:active{background:var(--surface-2)}.console-root .mh-sum-main .grow{flex:1 1;min-width:0}.console-root .mh-sum-k{font-size:12.5px;color:var(--ink-3);font-weight:650}.console-root .mh-sum-v{font-size:29px;font-weight:650;letter-spacing:-.04em;margin:5px 0 6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .mh-sum-net{font-size:12.5px;color:var(--good);font-weight:600;display:flex;align-items:center;gap:6px}.console-root .mh-sum-net.neg{color:var(--crit)}.console-root .mh-sum-stats{display:flex;border-top:1px solid var(--line)}.console-root .mh-ss{flex:1 1;padding:12px 6px;text-align:center;position:relative}.console-root .mh-ss:not(:last-child):after{content:"";position:absolute;right:0;top:22%;height:56%;width:1px;background:var(--line)}.console-root .mh-ss:active{background:var(--surface-2)}.console-root .mh-ss b{display:block;font-size:19px;font-weight:650;letter-spacing:-.03em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .mh-ss span{font-size:11.5px;color:var(--ink-3);font-weight:600}.console-root .mh-ss.alert b{color:var(--crit)}.console-root .mh-slab{padding:22px 22px 12px}.console-root .mh-slab h2{font-size:17px;font-weight:650;letter-spacing:-.025em;margin:0}.console-root .mh-launch{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:11px;gap:11px;padding:0 18px}.console-root .mh-tile{position:relative;background:var(--surface);border-radius:20px;padding:15px 13px 14px;box-shadow:var(--shadow-card);border:1px solid var(--line);display:flex;flex-direction:column;gap:11px}.console-root .mh-tile:active{transform:scale(.955)}.console-root .mh-tile .t-ic{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:var(--surface-2);color:var(--ink)}.console-root .mh-tile .t-ic svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.console-root .mh-tile.accent .t-ic{background:linear-gradient(145deg,var(--signal),var(--signal-deep));color:var(--signal-ink);box-shadow:0 6px 14px -6px rgba(180,222,58,.8)}.console-root .mh-tile .t-l{font-size:14px;font-weight:600;letter-spacing:-.02em}.console-root .mh-tile .t-s{font-size:11px;color:var(--ink-3);margin-top:-6px;font-weight:600}.console-root .mh-tile .t-cn{position:absolute;top:16px;right:14px;font-size:11px;font-weight:600;color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .mh-list{display:flex;flex-direction:column;gap:9px;padding:0 18px}.console-root .mh-row{display:flex;align-items:center;gap:13px;background:var(--surface);border-radius:18px;padding:14px 15px;box-shadow:var(--shadow-card);border:1px solid var(--line);width:100%;text-align:left}.console-root .mh-row:active{transform:scale(.985)}.console-root .mh-row .r-ic{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;flex-shrink:0;background:var(--surface-2);color:var(--ink-2)}.console-root .mh-row .r-ic svg{width:20px;height:20px}.console-root .mh-row .r-ic.crit{background:var(--crit-bg);color:var(--crit)}.console-root .mh-row .r-ic.lime{background:linear-gradient(145deg,var(--signal),var(--signal-deep));color:var(--signal-ink)}.console-root .mh-row .r-m{flex:1 1;min-width:0;display:flex;flex-direction:column;justify-content:center}.console-root .mh-row .r-t{font-size:14.5px;font-weight:600;letter-spacing:-.015em}.console-root .mh-row .r-s{font-size:12px;color:var(--ink-3);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .mh-foot{padding:26px 24px 8px;text-align:center;color:var(--ink-3);font-size:11.5px}}.console-root .mchat{position:fixed;inset:0;z-index:70;background:#14170D;color:#EEF1E6;display:flex;flex-direction:column;overflow:hidden}.console-root .mchat-bar{display:flex;align-items:center;gap:6px;height:calc(52px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 8px 0;border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0}.console-root .mc-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;color:#EEF1E6}.console-root .mc-icon:active{background:rgba(255,255,255,.08)}.console-root .mc-icon svg{width:24px;height:24px}.console-root .mc-title{flex:1 1;text-align:center;font-size:16px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px}.console-root .mc-dot{width:7px;height:7px;border-radius:50%;background:var(--signal);box-shadow:0 0 0 3px rgba(203,242,77,.18)}.console-root .mchat-body{flex:1 1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px 16px 20px;display:flex;flex-direction:column;gap:14px}.console-root .mc-hello{padding:26px 6px 8px}.console-root .mc-hello-av{width:52px;height:52px;border-radius:17px;background:linear-gradient(150deg,var(--signal),var(--signal-deep));color:var(--signal-ink);display:grid;place-items:center;font-weight:650;font-family:var(--f-mono);font-size:15px;margin-bottom:16px}.console-root .mc-hello-t{font-size:26px;font-weight:650;letter-spacing:-.03em;line-height:1.3;white-space:pre-line}.console-root .mc-hello-s{font-size:14px;color:#9DA491;margin-top:8px}.console-root .mc-msg{display:flex;gap:9px;max-width:88%}.console-root .mc-msg.me{align-self:flex-end}.console-root .mc-av{width:28px;height:28px;border-radius:9px;background:linear-gradient(150deg,var(--signal),var(--signal-deep));color:var(--signal-ink);display:grid;place-items:center;font-weight:650;font-family:var(--f-mono);font-size:8.5px;flex-shrink:0}.console-root .mc-bubble{padding:12px 15px;border-radius:18px;font-size:14.5px;line-height:1.55}.console-root .mc-msg.bot .mc-bubble{background:rgba(255,255,255,.07);border-top-left-radius:6px}.console-root .mc-msg.me .mc-bubble{background:var(--signal);color:var(--signal-ink);border-top-right-radius:6px;font-weight:600}.console-root .mc-bubble strong{font-weight:600}.console-root .mc-li{display:flex;gap:8px;margin:3px 0}.console-root .mc-li .mc-b{color:var(--signal)}.console-root .mc-sp{height:7px}.console-root .mc-bubble.typing{display:inline-flex;gap:5px;align-items:center}.console-root .mc-bubble.typing span{width:7px;height:7px;border-radius:50%;background:#8A927B;animation:mc-typing 1.2s infinite}.console-root .mc-bubble.typing span:nth-child(2){animation-delay:.18s}.console-root .mc-bubble.typing span:nth-child(3){animation-delay:.36s}.console-root .mc-prop{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:16px;overflow:hidden;min-width:240px}.console-root .mc-prop-h{padding:12px 14px 10px;font-size:13px;font-weight:700;border-bottom:1px solid rgba(255,255,255,.08)}.console-root .mc-prop-items{padding:4px 0}.console-root .mc-prop-row{display:flex;justify-content:space-between;padding:8px 14px;font-size:13.5px}.console-root .mc-prop-row b{font-family:var(--f-mono)}.console-root .mc-prop-act{display:flex;gap:8px;padding:12px 14px}.console-root .mc-prop-act button{flex:1 1;height:40px;border-radius:12px;font-size:13.5px;font-weight:600}.console-root .mc-yes{background:var(--signal);color:var(--signal-ink)}.console-root .mc-no{background:rgba(255,255,255,.1);color:#DDE3D0}.console-root .mc-prop-done{padding:10px 14px;font-size:13px;font-weight:700}.console-root .mc-prop-done.approved{color:var(--signal)}.console-root .mc-prop-done.rejected{color:#9DA491}.console-root .mchat-composer{flex-shrink:0;padding:10px 14px calc(12px + env(safe-area-inset-bottom));border-top:1px solid rgba(255,255,255,.08);background:rgba(20,23,13,.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.console-root .mc-chips{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;margin-bottom:9px}.console-root .mc-chips::-webkit-scrollbar{display:none}.console-root .mc-chip{flex:0 0 auto;font-size:12px;font-weight:650;color:#DDE3D0;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);padding:7px 12px;border-radius:999px}.console-root .mc-in{display:flex;align-items:center;gap:9px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:7px 7px 7px 16px}.console-root .mc-in input{flex:1 1;min-width:0;border:none;background:none;color:#EEF1E6;font-size:15px;font-family:inherit;outline:none}.console-root .mc-in input::placeholder{color:#8A927B}.console-root .mc-send{width:38px;height:38px;border-radius:12px;background:var(--signal);display:grid;place-items:center;flex-shrink:0}.console-root .mc-send:disabled{opacity:.4}.console-root .mc-send svg{width:19px;height:19px;stroke:var(--signal-ink)}@media (max-width:768px){.console-root .fin-hero{background:#16190E;color:#EEF1E6;border-radius:22px;padding:18px 18px 16px;position:relative;overflow:hidden;box-shadow:var(--shadow-card)}.console-root .fin-hero:before{content:"";position:absolute;right:-70px;top:-80px;width:210px;height:210px;border-radius:50%;background:radial-gradient(circle,rgba(203,242,77,.2),transparent 68%)}.console-root .fh-k{font-size:12.5px;color:#AEB6A0;font-weight:650;position:relative}.console-root .fh-v{font-size:34px;font-weight:840;letter-spacing:-.04em;margin:8px 0 4px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;position:relative}.console-root .fh-sub{font-size:12.5px;color:#9DA491;font-weight:500;position:relative}.console-root .fin-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:11px;gap:11px}.console-root .fin-cell{display:flex;flex-direction:column;gap:7px;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:15px 15px 14px;box-shadow:var(--shadow-card);text-align:left;min-height:122px}.console-root .fin-cell:active{transform:scale(.97)}.console-root .fc-top{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--ink-2);letter-spacing:-.01em}.console-root .fc-dot{width:9px;height:9px;border-radius:3px;flex-shrink:0}.console-root .fc-v{font-size:20px;font-weight:650;letter-spacing:-.03em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .fc-v.neg{color:var(--crit)}.console-root .fc-v.pos{color:var(--ink)}.console-root .fc-spark{width:100%;height:26px;margin-top:auto;display:block}.console-root .fc-s{font-size:11px;color:var(--ink-3);font-weight:600}.console-root .fc-chip{align-self:flex-start;font-size:10.5px;font-weight:650;padding:2px 9px;border-radius:999px}.console-root .fc-chip.no{background:var(--crit-bg);color:var(--crit)}.console-root .fc-chip.ok{background:var(--good-bg);color:var(--good)}.console-root .fin-sub{position:fixed;inset:0;z-index:50;background:var(--paper);display:flex;flex-direction:column}.console-root .fin-sub-bar{display:flex;align-items:center;gap:2px;height:calc(50px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 8px 0;background:rgba(245,247,249,.9);backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px);border-bottom:1px solid var(--line);flex-shrink:0}.console-root .fin-sub-title{flex:1 1;text-align:center;font-size:16px;font-weight:600}.console-root .fin-sub-body{flex:1 1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:14px 16px calc(28px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:14px}.console-root .avg{touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-card)}.console-root .avg-row{display:grid;grid-template-columns:24px repeat(7,1fr)}.console-root .avg-time{font-size:9.5px;color:var(--ink-3);font-family:var(--f-mono);display:flex;align-items:center;justify-content:center}.console-root .avg-head{border-bottom:1px solid var(--line-strong)}.console-root .avg-dh{font-size:11.5px;font-weight:600;color:var(--ink-2);text-align:center;padding:8px 0}.console-root .avg-cell{height:29px;border-left:1px solid var(--line);border-top:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:650;color:var(--crit);overflow:hidden}.console-root .avg-cell.off{background:var(--crit-bg)}.console-root .avg-cell.busy{background:var(--signal-wash)}.console-root .avg-cell.busy b{font-size:8px;font-weight:700;color:var(--signal-ink);padding:0 2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.console-root .avg-cell.sel-set{background:var(--crit);color:#fff}.console-root .avg-cell.sel-clear{background:var(--surface-2)}.console-root .avg-cell .avg-free{font-size:9px;font-weight:650;color:var(--good);opacity:.8}.console-root .avg-legend{display:flex;align-items:center;gap:14px;padding:2px 4px;font-size:11.5px;color:var(--ink-3);font-weight:600}.console-root .avg-legend .lg i.free{background:var(--good-bg);border:1px solid var(--good)}.console-root .fnd-days{display:flex;gap:6px}.console-root .fnd-days button{flex:1 1;height:42px;border-radius:12px;border:1px solid var(--line-strong);background:var(--surface);font-size:14px;font-weight:600;color:var(--ink-2)}.console-root .fnd-days button.on{background:var(--ink);color:#fff;border-color:var(--ink)}.console-root .fnd-time{display:flex;align-items:center;gap:10px;margin:14px 0 4px}.console-root .fnd-time select{flex:1 1;height:48px;border:1px solid var(--line-strong);border-radius:13px;padding:0 14px;font-size:15px;font-family:inherit;background:var(--surface);color:var(--ink)}.console-root .fnd-sum{font-size:13.5px;font-weight:600;margin:16px 2px 10px}.console-root .fnd-card{display:flex;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid var(--line)}.console-root .fnd-card:last-child{border-bottom:none}.console-root .avg-legend .lg{display:inline-flex;align-items:center;gap:6px}.console-root .avg-legend .lg i{width:11px;height:11px;border-radius:3px}.console-root .avg-legend .lg i.off{background:var(--crit-bg);border:1px solid var(--crit)}.console-root .avg-legend .lg i.les{background:var(--signal-wash);border:1px solid var(--signal-deep)}.console-root .avg-legend .tip{margin-left:auto}.console-root .ls-tools{display:flex;align-items:center;gap:8px}.console-root .m-teacher-sel{height:38px;padding:0 12px;border-radius:12px;border:1px solid var(--line-strong);background:var(--surface);font-size:14px;font-weight:700;color:var(--ink);font-family:inherit}.console-root .ls-mine{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--ink-2)}.console-root .ls-mine i{width:7px;height:7px;border-radius:50%;background:var(--signal-deep)}.console-root .ls-cnt{margin-left:auto;font-size:12.5px;color:var(--ink-3);font-weight:600}.console-root .persp-banner.m{font-size:12px;padding:10px 12px;border-radius:12px;line-height:1.45;margin:0}}.console-root .period-pill{display:inline-flex;align-items:center;gap:5px;align-self:flex-start;height:38px;padding:0 8px 0 15px;border-radius:999px;background:var(--surface);border:1px solid var(--line-strong);font-size:14px;letter-spacing:-.01em;color:var(--ink);box-shadow:var(--shadow-card)}.console-root .period-pill svg{width:17px;height:17px;color:var(--ink-3)}.console-root .period-pill:active{background:var(--surface-2)}.console-root .pp-sec{font-size:12px;font-weight:600;color:var(--ink-3);margin:4px 2px 10px}.console-root .pp-years{display:flex;gap:8px;margin-bottom:20px}.console-root .pp-seg{flex:1 1;height:46px;border-radius:14px;border:1.5px solid var(--line-strong);background:var(--surface);font-size:15px;font-weight:600;color:var(--ink-2)}.console-root .pp-seg.on{background:var(--ink);color:#fff;border-color:var(--ink)}.console-root .pp-months{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:9px;gap:9px}.console-root .pp-m{height:48px;border-radius:14px;border:1px solid var(--line);background:var(--surface-2);font-size:14px;font-weight:700;color:var(--ink-2)}.console-root .pp-m.on{background:var(--signal);color:var(--signal-ink);border-color:var(--signal-deep);font-weight:650}.console-root .pay-search{display:flex;align-items:center;gap:9px;background:var(--surface);border:1px solid var(--line-strong);border-radius:14px;padding:11px 14px}.console-root .pay-search svg{width:17px;height:17px;color:var(--ink-3);flex-shrink:0}.console-root .pay-search input{flex:1 1;min-width:0;border:none;background:none;font-size:14.5px;color:var(--ink);font-family:inherit;outline:none}.console-root .pay-search button{color:var(--ink-3);font-size:13px;font-weight:700;flex-shrink:0}.console-root .seg3{display:flex;gap:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:13px;padding:4px}.console-root .seg3 button{flex:1 1;min-width:0;padding:9px 4px;border-radius:9px;font-size:12.5px;font-weight:730;color:var(--ink-3);white-space:nowrap}.console-root .seg3 button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-card)}.console-root .exp-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.console-root .exp-sum{border-radius:20px;padding:16px 17px;box-shadow:var(--shadow-card)}.console-root .es-k{font-size:12.5px;color:var(--ink-3);font-weight:650}.console-root .es-v{font-size:28px;font-weight:650;letter-spacing:-.04em;margin:5px 0 2px}.console-root .es-cats{display:flex;flex-direction:column;gap:10px;margin-top:15px}.console-root .es-cat-h{display:flex;justify-content:space-between;font-size:12px;font-weight:650;color:var(--ink-2);margin-bottom:5px}.console-root .es-bar{height:6px;border-radius:999px;background:var(--surface-2);overflow:hidden}.console-root .es-bar i{display:block;height:100%;border-radius:999px;background:var(--warn)}.console-root .exp-slab{display:flex;align-items:baseline;gap:8px;padding:8px 2px 0}.console-root .exp-slab span{font-size:15.5px;font-weight:650;letter-spacing:-.02em}.console-root .exp-slab em{font-size:12px;color:var(--ink-3);font-style:normal;font-weight:600}.console-root .sheet-form{display:flex;flex-direction:column;gap:14px}.console-root .sheet-form .fld{display:flex;flex-direction:column;gap:7px}.console-root .sheet-form .fld>span{font-size:12.5px;font-weight:700;color:var(--ink-2)}.console-root .sheet-form .fld input,.console-root .sheet-form .fld select{height:50px;border:1px solid var(--line-strong);border-radius:14px;padding:0 15px;font-family:inherit;font-size:16px;color:var(--ink);background:var(--surface);outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.console-root .sheet-form .fld input:focus,.console-root .sheet-form .fld select:focus{border-color:var(--signal-deep);box-shadow:0 0 0 4px var(--signal-wash)}.console-root .sheet-save{width:100%;height:52px;border-radius:15px;background:var(--signal);color:var(--signal-ink);font-size:15.5px;font-weight:650}.console-root .sheet-save:disabled{opacity:.45}.console-root .sheet-form .fld-row{display:flex;gap:10px}.console-root .sheet-form .fld-row .fld{flex:1 1;min-width:0}.console-root .sheet-form .status-reason-box{display:flex;flex-direction:column;gap:12px;background:var(--surface-2);border:1px solid var(--line);border-radius:14px;padding:13px}.console-root .mcard-ava{width:40px;height:40px;border-radius:13px;background:var(--surface-2);display:grid;place-items:center;font-weight:650;font-size:16px;color:var(--ink-2);flex-shrink:0}.console-root .mdet-edit{height:34px;padding:0 15px;border-radius:999px;background:var(--ink);color:#fff;font-size:13.5px;font-weight:600;flex-shrink:0}.console-root .mdet-hero{display:flex;align-items:center;gap:14px}.console-root .mdet-ava{width:60px;height:60px;border-radius:20px;background:linear-gradient(145deg,var(--signal),var(--signal-deep));color:var(--signal-ink);display:grid;place-items:center;font-weight:650;font-size:23px;flex-shrink:0;box-shadow:0 8px 18px -8px rgba(180,222,58,.7)}.console-root .mdet-hero-m{min-width:0}.console-root .mdet-name{font-size:22px;letter-spacing:-.03em}.console-root .mdet-tags{display:flex;align-items:center;margin-top:6px;flex-wrap:wrap}.console-root .mdet-sub{font-size:12.5px;color:var(--ink-3)}.console-root .mdet-reason{background:var(--crit-bg);color:var(--crit);border-radius:12px;padding:10px 12px;font-size:12.5px;font-weight:600}.console-root .mdet-info{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-card);overflow:hidden}.console-root .mdet-info-row{display:flex;justify-content:space-between;gap:12px;padding:12px 15px;font-size:13.5px}.console-root .mdet-info-row+.mdet-info-row{border-top:1px solid var(--line)}.console-root .mdet-info-row span{color:var(--ink-3);font-weight:500}.console-root .mdet-info-row b{font-weight:700;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .mdet-slab{font-size:13px;font-weight:650;color:var(--ink-2);padding:6px 2px 0}.console-root .mdet-slab-row{display:flex;align-items:center;justify-content:space-between;padding:6px 2px 0}.console-root .mdet-slab-row .mdet-slab{padding:0}.console-root .mdet-add-btn{height:30px;padding:0 13px;border-radius:999px;background:var(--ink);color:#fff;font-size:12.5px}.console-root .mdet-passes{display:flex;flex-direction:column;gap:10px}.console-root .mdet-pcard{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-card);padding:14px 15px}.console-root .mdet-pcard.ended{opacity:.6}.console-root .mdet-pcard.refunded{background:var(--surface-2)}.console-root .mdet-pcard-tag.refund{color:var(--ink-2);background:var(--surface);border:1px solid var(--line-strong)}.console-root .mdet-refund-info{font-size:12px;line-height:1.6;color:var(--ink-2);margin:10px 0 0}.console-root .mdet-pcard-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.console-root .mdet-pcard-name{font-size:15px;font-weight:650;display:flex;align-items:center;gap:7px}.console-root .mdet-pcard-tag{font-size:10px;font-weight:650;color:var(--ink-3);background:var(--surface-2);padding:2px 7px;border-radius:999px}.console-root .mdet-pcard-sub{font-size:12px;color:var(--ink-3);margin-top:3px}.console-root .mdet-pcard-rem{text-align:right;flex-shrink:0}.console-root .mdet-pcard-rem b{font-size:22px;font-weight:650;letter-spacing:-.03em;color:var(--good);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .mdet-pcard-rem span{font-size:10.5px;color:var(--ink-3);display:block;margin-top:-2px}.console-root .mdet-pcard-act{display:flex;gap:8px;margin-top:12px}.console-root .mdet-pcard-act button{flex:1 1;height:38px;border-radius:11px;background:var(--surface-2);border:1px solid var(--line);font-size:13px;font-weight:600;color:var(--ink)}.console-root .mdet-pcard-act button:disabled{opacity:.4}.console-root .mdet-pcard-act button.del{flex:0 0 auto;padding:0 14px;color:var(--crit)}.console-root .mdet-pcard-act.one button.del{flex:1 1}.console-root .mdet-pass{display:flex;align-items:center;gap:13px;background:linear-gradient(140deg,var(--signal-wash),var(--surface));border:1px solid var(--signal);border-radius:16px;padding:15px}.console-root .mdet-pass.empty{flex-direction:column;align-items:flex-start;gap:4px;background:var(--surface-2);border:1px solid var(--line)}.console-root .mdet-pass-ic{font-size:26px;flex-shrink:0}.console-root .mdet-pass-t{font-size:14px;font-weight:650}.console-root .mdet-pass-s{font-size:12px;color:var(--ink-2);margin-top:3px;line-height:1.5}.console-root .mdet-att,.console-root .mdet-pay{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-card);padding:15px}.console-root .mdet-att-row{display:flex}.console-root .mdet-stat{flex:1 1;text-align:center}.console-root .mdet-stat b{display:block;font-size:24px;font-weight:650;letter-spacing:-.03em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .mdet-stat b.neg{color:var(--crit)}.console-root .mdet-stat span{font-size:11.5px;color:var(--ink-3);font-weight:600}.console-root .mdet-bar{height:7px;border-radius:999px;background:var(--surface-2);overflow:hidden;margin-top:13px}.console-root .mdet-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--signal-deep),var(--signal))}.console-root .mdet-pay-top{font-size:13px;color:var(--ink-2);font-weight:600}.console-root .mdet-pay-top b{font-size:17px;font-weight:650;letter-spacing:-.02em;margin-left:4px}.console-root .mdet-months{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:5px;gap:5px;margin-top:12px}.console-root .mdet-mo{aspect-ratio:1;display:grid;place-items:center;border-radius:7px;font-size:10px;font-weight:700;background:var(--surface-2);color:var(--ink-3)}.console-root .mdet-mo.ok{background:var(--good-bg);color:var(--good)}.console-root .mdet-mo.no{background:var(--crit-bg);color:var(--crit)}.console-root .mdet-legend{display:flex;gap:14px;margin-top:11px;font-size:11px;color:var(--ink-3);font-weight:600}.console-root .mdet-legend span{display:inline-flex;align-items:center;gap:5px}.console-root .mdet-legend i{width:10px;height:10px;border-radius:3px}.console-root .mdet-legend i.ok{background:var(--good-bg);border:1px solid var(--good)}.console-root .mdet-legend i.no{background:var(--crit-bg);border:1px solid var(--crit)}.console-root .mdet-legend i.none{background:var(--surface-2);border:1px solid var(--line-strong)}.console-root .viewseg button{font-size:13.5px;padding:10px 4px}.console-root .tsec-list{display:flex;flex-direction:column;gap:10px}.console-root .tsec{background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-card);overflow:hidden}.console-root .tsec-h{display:flex;align-items:center;gap:12px;width:100%;padding:14px 15px;text-align:left}.console-root .tsec-ava{width:42px;height:42px;border-radius:14px;background:linear-gradient(145deg,var(--signal),var(--signal-deep));color:var(--signal-ink);display:grid;place-items:center;font-weight:650;font-size:16px;flex-shrink:0}.console-root .tsec-ava.none{background:var(--surface-2);color:var(--ink-3)}.console-root .tsec-m{flex:1 1;min-width:0}.console-root .tsec-name{font-size:15.5px;font-weight:600;letter-spacing:-.02em}.console-root .tsec-meta{display:block;font-size:11.5px;color:var(--ink-3);margin-top:2px}.console-root .tsec-count{font-size:16px;font-weight:650;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink);flex-shrink:0}.console-root .tsec-count small{font-size:11px;font-weight:600;color:var(--ink-3);margin-left:1px}.console-root .tsec-chev{color:var(--ink-3);transition:transform .22s ease;flex-shrink:0}.console-root .tsec.open .tsec-chev{transform:rotate(180deg)}.console-root .tsec-chev svg{width:19px;height:19px}.console-root .tsec-body{border-top:1px solid var(--line);padding:3px 0}.console-root .tsec-row{display:flex;align-items:center;gap:10px;width:100%;padding:11px 16px;text-align:left}.console-root .tsec-row:active{background:var(--surface-2)}.console-root .tsec-row+.tsec-row{border-top:1px solid var(--surface-2)}.console-root .tsec-row-m{flex:1 1;min-width:0}.console-root .tsec-row-name{font-size:14px;font-weight:700}.console-root .tsec-row-sub{display:block;font-size:11.5px;color:var(--ink-3);margin-top:1px}.console-root .add-fab{position:fixed;right:16px;bottom:calc(20px + env(safe-area-inset-bottom));height:52px;padding:0 20px 0 16px;border-radius:18px;background:linear-gradient(145deg,var(--signal),var(--signal-deep));color:var(--signal-ink);display:inline-flex;align-items:center;gap:7px;font-size:15px;font-weight:650;letter-spacing:-.01em;box-shadow:0 12px 30px -8px rgba(180,222,58,.75),0 3px 8px rgba(20,24,14,.12);z-index:35}.console-root .add-fab:active{transform:scale(.95)}.console-root .add-fab svg{width:22px;height:22px}.console-root .load-more{width:100%;height:46px;border-radius:14px;background:var(--surface);border:1px solid var(--line-strong);color:var(--ink-2);font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:var(--shadow-card)}.console-root .load-more:active{background:var(--surface-2)}.console-root .load-more:disabled{opacity:.6}.console-root .load-more-sentinel{min-height:40px;display:flex;align-items:center;justify-content:center}.console-root .load-more-end{text-align:center;font-size:12px;color:var(--ink-3);padding:6px 0 2px;font-weight:600}.console-root .content.has-fab{padding-bottom:calc(88px + env(safe-area-inset-bottom))}.console-root .etr2{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:16px 16px 14px;box-shadow:var(--shadow-card)}.console-root .etr2-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.console-root .etr2-k{font-size:12.5px;color:var(--ink-3);font-weight:650}.console-root .etr2-v{font-size:31px;font-weight:840;letter-spacing:-.04em;margin-top:3px;display:flex;align-items:baseline;gap:9px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .etr2-v small{font-size:14px;font-weight:600;color:var(--ink-3)}.console-root .etr2-delta{font-size:12px;font-weight:650;padding:3px 9px;border-radius:999px;align-self:center}.console-root .etr2-delta.up{background:var(--good-bg);color:var(--good)}.console-root .etr2-delta.down{background:var(--crit-bg);color:var(--crit)}.console-root .etr2-plot{position:relative;margin-top:8px}.console-root .etr2-svg{width:100%;height:128px;display:block}.console-root .etr2-dot{position:absolute;transform:translate(-50%,-50%);width:11px;height:11px;border-radius:50%;background:var(--signal-deep);box-shadow:0 0 0 4px rgba(180,222,58,.25)}.console-root .etr2-axis{display:flex;justify-content:space-between;font-size:10.5px;color:var(--ink-3);font-family:var(--f-mono);margin-top:4px;padding:0 2px}.console-root .etr2-legend{display:flex;align-items:center;gap:14px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);font-size:12px;font-weight:700}.console-root .etr2-legend .lg{display:inline-flex;align-items:center;gap:6px}.console-root .etr2-legend .lg i{width:8px;height:8px;border-radius:2px}.console-root .etr2-legend .up{color:var(--good)}.console-root .etr2-legend .up i{background:var(--good)}.console-root .etr2-legend .down{color:var(--crit)}.console-root .etr2-legend .down i{background:var(--crit)}.console-root .etr2-legend .net{margin-left:auto;color:var(--ink-2)}.console-root .m-name-link{font-weight:700;color:var(--ink);background:none;border:none;padding:0;cursor:pointer;font-size:inherit;font-family:inherit;text-align:left}.console-root .m-name-link:hover{color:var(--signal-deep);text-decoration:underline}@media (min-width:769px){.console-root .fin-sub{position:fixed;top:0;right:0;bottom:0;left:auto;width:min(560px,94vw);z-index:50;background:var(--paper);display:flex;flex-direction:column;box-shadow:-24px 0 70px -24px rgba(20,24,14,.35)}.console-root .fin-sub-bar{display:flex;align-items:center;gap:4px;height:58px;padding:0 12px;background:var(--surface);border-bottom:1px solid var(--line);flex-shrink:0}.console-root .fin-sub-title{flex:1 1;text-align:center;font-size:16px;font-weight:600}.console-root .fin-sub-body{flex:1 1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:14px}.console-root .m-ab-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:var(--ink)}.console-root .m-ab-icon:hover{background:var(--surface-2)}.console-root .m-ab-icon svg{width:24px;height:24px}.console-root .sheet-scrim{position:fixed;inset:0;z-index:60;background:rgba(15,19,26,.44);display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding-bottom:24px}.console-root .sheet{width:min(460px,94vw);background:var(--surface);border-radius:22px;box-shadow:var(--shadow-pop);display:flex;flex-direction:column;overflow:hidden;max-height:86vh}.console-root .sheet-grip{display:none}.console-root .sheet-head{display:flex;align-items:flex-start;gap:10px;padding:16px 18px 14px;border-bottom:1px solid var(--line)}.console-root .sheet-titles{flex:1 1;min-width:0}.console-root .sheet-title{font-size:17px;font-weight:650}.console-root .sheet-sub{font-size:12.5px;color:var(--ink-3);margin-top:2px}.console-root .sheet-x{width:30px;height:30px;border-radius:50%;background:var(--surface-2);display:grid;place-items:center;color:var(--ink-2)}.console-root .sheet-x svg{width:17px;height:17px}.console-root .sheet-body{overflow-y:auto;padding:18px}.console-root .sheet-foot{padding:14px 18px;border-top:1px solid var(--line);display:flex;gap:8px}}.console-root .qt-back{font-size:13px;font-weight:700;color:var(--ink-2)}.console-root .qt-rooms{display:flex;flex-direction:column;gap:9px}.console-root .qt-room{display:flex;align-items:center;gap:13px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:14px 15px;box-shadow:var(--shadow-card);width:100%;text-align:left}.console-root .qt-room-ic,.console-root .qt-room:active{background:var(--surface-2)}.console-root .qt-room-ic{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;color:var(--ink-2);flex-shrink:0}.console-root .qt-room-ic svg{width:22px;height:22px}.console-root .qt-room-m{flex:1 1;min-width:0}.console-root .qt-room-n{font-size:15px;font-weight:600}.console-root .qt-room-s{display:block;font-size:11.5px;color:var(--ink-3);margin-top:2px}.console-root .qt-dot{width:10px;height:10px;border-radius:50%;background:var(--line-strong);flex-shrink:0}.console-root .qt-dot.on{background:var(--good);box-shadow:0 0 0 3px var(--good-bg)}.console-root .qt-sessions{display:flex;flex-direction:column;gap:12px}.console-root .qt-ses{padding:12px 14px}.console-root .qt-ses.now{border-color:var(--signal)}.console-root .qt-ses-h{align-items:flex-start;gap:10px;padding-bottom:10px;border-bottom:1px solid var(--line);margin-bottom:4px}.console-root .qt-ses-time{gap:8px;font-size:13.5px}.console-root .qt-ses-t{font-size:11.5px;margin-top:3px}.console-root .qt-all{height:34px;padding:0 13px;border-radius:11px;background:var(--signal);color:var(--signal-ink);font-size:12.5px;font-weight:650;flex-shrink:0}.console-root .qt-all:disabled{opacity:.5}.console-root .qt-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0}.console-root .qt-row+.qt-row{border-top:1px solid var(--surface-2)}.console-root .qt-name{font-size:14px;font-weight:650}.console-root .qt-seg{display:flex;gap:6px}.console-root .qt-seg button{height:32px;padding:0 14px;border-radius:9px;background:var(--surface-2);border:1px solid var(--line);font-size:12.5px;font-weight:700;color:var(--ink-2)}.console-root .qt-seg button.on.ok{background:var(--good);color:#fff;border-color:var(--good)}.console-root .qt-seg button.on.no{background:var(--crit);color:#fff;border-color:var(--crit)}.console-root .qt-empty{font-size:12px;text-align:center;padding:8px}.console-root .qs{position:fixed;inset:0;z-index:80;background:#000;overflow:hidden}.console-root .qs-video{width:100%;height:100%;object-fit:cover}.console-root .qs-mask{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.console-root .qs-frame{width:66vw;max-width:280px;aspect-ratio:1;position:relative;border-radius:24px;box-shadow:0 0 0 100vmax rgba(0,0,0,.5)}.console-root .qs-frame i{position:absolute;width:34px;height:34px;border:3px solid var(--signal)}.console-root .qs-frame i:first-child{top:-2px;left:-2px;border-right:none;border-bottom:none;border-radius:16px 0 0 0}.console-root .qs-frame i:nth-child(2){top:-2px;right:-2px;border-left:none;border-bottom:none;border-radius:0 16px 0 0}.console-root .qs-frame i:nth-child(3){bottom:-2px;left:-2px;border-right:none;border-top:none;border-radius:0 0 0 16px}.console-root .qs-frame i:nth-child(4){bottom:-2px;right:-2px;border-left:none;border-top:none;border-radius:0 0 16px 0}.console-root .qs-hint{position:absolute;bottom:22%;left:0;right:0;color:#fff;font-size:13.5px;font-weight:600;text-align:center;padding:0 30px;text-shadow:0 1px 4px rgba(0,0,0,.7)}.console-root .qs-bar{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;height:calc(54px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 8px 0}.console-root .qs-x{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;color:#fff;background:rgba(0,0,0,.32)}.console-root .qs-x svg{width:22px;height:22px}.console-root .qs-title{flex:1 1;text-align:center;color:#fff;font-size:16px;font-weight:700;text-shadow:0 1px 4px rgba(0,0,0,.5)}.console-root .qs-list{position:absolute;left:50%;transform:translateX(-50%);bottom:calc(30px + env(safe-area-inset-bottom));height:46px;padding:0 22px;border-radius:999px;background:#fff;color:var(--ink);font-size:14.5px;font-weight:600;box-shadow:0 8px 24px rgba(0,0,0,.35)}.console-root .ppg-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.console-root .ppg-head .exp-slab{padding-top:0}.console-root .pp-picks{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin-bottom:4px;padding-bottom:2px}.console-root .pp-picks::-webkit-scrollbar{display:none}.console-root .pp-pick{flex:0 0 auto;border:1px solid var(--line-strong);background:var(--surface);border-radius:13px;padding:9px 13px;text-align:left}.console-root .pp-pick b{display:block;font-size:13px;font-weight:600}.console-root .pp-pick span{font-size:11px;color:var(--ink-3)}.console-root .pp-picks-lab{font-size:12px;font-weight:700;color:var(--ink-2);margin-bottom:2px}.console-root .att-daynav{display:flex;align-items:center;gap:8px}.console-root .att-arrow{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:var(--surface);border:1px solid var(--line-strong);color:var(--ink);flex-shrink:0}.console-root .att-arrow svg{width:20px;height:20px}.console-root .att-date{flex:1 1;text-align:center;min-width:0}.console-root .att-date b{font-size:16px;font-weight:650;letter-spacing:-.02em}.console-root .att-date span{display:block;font-size:11.5px;color:var(--ink-3);margin-top:1px}.console-root .att-today{height:34px;padding:0 13px;border-radius:999px;background:var(--ink);color:#fff;font-size:12.5px;font-weight:600;flex-shrink:0}.console-root .att-allbtn{width:100%;height:46px;border-radius:13px;background:var(--good-bg);color:var(--good);border:1px solid var(--good);font-size:13.5px;font-weight:600}.console-root .att-allbtn:disabled{opacity:.5}.console-root .att-row{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:12px 14px;box-shadow:var(--shadow-card)}.console-root .att-row-m{flex:1 1;min-width:0}.console-root .att-row-n{font-size:14.5px;font-weight:700}.console-root .att-row-s{font-size:11.5px;color:var(--ink-3);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .att-seg{display:flex;gap:6px;flex-shrink:0}.console-root .att-seg button{height:34px;padding:0 14px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line);font-size:13px;font-weight:600;color:var(--ink-2)}.console-root .att-seg button.on.ok{background:var(--good);color:#fff;border-color:var(--good)}.console-root .att-seg button.on.no{background:var(--crit);color:#fff;border-color:var(--crit)}.console-root .wkm-strip{display:flex;gap:6px}.console-root .wkm-chip{flex:1 1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:2px;padding:9px 0 12px;border-radius:14px;background:var(--surface);border:1px solid var(--line);position:relative}.console-root .wkm-chip .wkm-wd{font-size:10.5px;color:var(--ink-3);font-weight:600}.console-root .wkm-chip .wkm-dn{font-size:15px;font-weight:650;letter-spacing:-.02em}.console-root .wkm-chip.today .wkm-dn{color:var(--signal-deep)}.console-root .wkm-chip.hol .wkm-dn{color:var(--crit)}.console-root .wkm-chip.on{background:var(--ink);border-color:var(--ink)}.console-root .wkm-chip.on .wkm-dn,.console-root .wkm-chip.on .wkm-wd{color:#fff}.console-root .wkm-dot{position:absolute;bottom:5px;width:5px;height:5px;border-radius:50%;background:var(--signal-deep)}.console-root .wkm-chip.on .wkm-dot{background:var(--signal)}.console-root .wkm-les{display:flex;align-items:center;gap:13px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:13px 14px;box-shadow:var(--shadow-card);width:100%;text-align:left}.console-root .wkm-les.off{opacity:.55}.console-root .wkm-les.extra{border-color:var(--signal)}.console-root .wkm-time{display:flex;flex-direction:column;align-items:center;flex-shrink:0;width:50px}.console-root .wkm-time b{font-size:14px;font-weight:650}.console-root .wkm-time span{font-size:11px;color:var(--ink-3)}.console-root .wkm-m{flex:1 1;min-width:0}.console-root .wkm-who{font-size:14.5px;font-weight:700;display:flex;align-items:center;gap:6px}.console-root .wkm-sub{font-size:11.5px;color:var(--ink-3);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .wkm-del{color:var(--crit);font-weight:650;font-size:15px;padding:4px 6px;flex-shrink:0}.console-root .tv-title{font-size:10.5px;font-weight:700;color:var(--ink-3);background:var(--surface-2);padding:1px 7px;border-radius:999px;margin-left:6px}@media (max-width:768px){.console-root .strip{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.console-root .pr-main{flex-wrap:wrap;row-gap:10px}.console-root .pr-actions{width:100%;justify-content:flex-end}.console-root .pr-metrics{flex-wrap:wrap;gap:8px 16px}}.console-root .rooms-daynav{display:flex;align-items:center;gap:10px;margin:16px 0 18px}.console-root .rooms-datepick{padding:7px 10px}.console-root .rm-arrow{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2)}.console-root .rm-arrow:hover{background:var(--surface-2);color:var(--ink)}.console-root .rm-arrow svg{width:17px;height:17px}.console-root .rm-daylabel{display:inline-flex;align-items:baseline;gap:8px}.console-root .rm-daylabel>b{font-size:20px;font-weight:650;letter-spacing:-.02em}.console-root .rm-wd{font-size:13px;font-weight:700;color:var(--ink-3)}.console-root .rm-wd.wd0{color:var(--crit)}.console-root .rm-wd.wd6{color:var(--info)}.console-root .rm-today{font-size:11px;font-weight:650;color:var(--signal-ink);background:var(--signal);padding:2px 8px;border-radius:var(--r-pill)}.console-root .rooms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));grid-gap:16px;gap:16px;align-items:start}.console-root .rm-empty-all{padding:60px 20px;text-align:center;color:var(--ink-3);font-size:14px}.console-root .room-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card);overflow:hidden;display:flex;flex-direction:column}.console-root .room-card-h{display:flex;align-items:center;gap:10px;padding:14px 16px 12px}.console-root .room-card-title{display:flex;align-items:center;gap:9px;min-width:0;flex:1 1}.console-root .room-card-title h3{font-size:16px;font-weight:650;letter-spacing:-.02em}.console-root .rm-live{flex-shrink:0}.console-root .room-card-acts{display:flex;gap:2px;margin-left:auto}.console-root .room-card-note{padding:0 16px 10px;margin-top:-6px;font-size:12px;color:var(--ink-3)}.console-root .room-sess{display:flex;flex-direction:column}.console-root .rsess{display:flex;align-items:center;gap:12px;padding:11px 16px;border-top:1px solid var(--line)}.console-root .rsess.live{background:var(--signal-wash)}.console-root .rsess.done .rsess-title{color:var(--ink-2)}.console-root .rsess-time{display:flex;flex-direction:column;align-items:flex-start;line-height:1.15;width:46px;flex-shrink:0}.console-root .rsess-time b{font-size:13.5px;font-weight:700}.console-root .rsess-time span{font-size:11px;color:var(--ink-3)}.console-root .rsess-body{flex:1 1;min-width:0}.console-root .rsess-top{display:flex;align-items:center;gap:6px}.console-root .rsess-title{font-size:14px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.console-root .rsess-tag{font-size:10px;font-weight:650;padding:2px 6px;border-radius:6px;flex-shrink:0;display:inline-flex;align-items:center;gap:3px}.console-root .rsess-tag.extra{color:var(--info);background:var(--info-bg)}.console-root .rsess-tag.live{color:var(--good);background:var(--good-bg)}.console-root .rsess-tag.live i{width:5px;height:5px;border-radius:50%;background:var(--good)}.console-root .rsess-meta{display:flex;align-items:center;gap:8px;margin-top:2px}.console-root .rsess-teacher{font-size:12px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.console-root .rsess-att{font-size:11.5px;font-weight:700;color:var(--ink-3);font-family:var(--f-mono);flex-shrink:0}.console-root .rsess-att.ok{color:var(--good)}.console-root .rsess-acts{display:flex;align-items:center;gap:4px;flex-shrink:0}.console-root .rsess-check{height:32px;padding:0 14px;border-radius:9px;background:var(--ink);color:var(--surface);font-size:12.5px;font-weight:600}.console-root .rsess-check:hover{background:#000}.console-root .icon-btn.sm{width:26px;height:26px}.console-root .icon-btn.sm svg{width:13px;height:13px}.console-root .room-empty{display:flex;align-items:center;justify-content:center;gap:7px;padding:20px;border-top:1px solid var(--line);color:var(--ink-3);font-size:13px;font-weight:600;width:100%}.console-root .room-empty:hover{background:var(--surface-2);color:var(--ink)}.console-root .room-empty svg{width:16px;height:16px}.console-root .ses-ctx{display:flex;align-items:center;gap:8px;margin-bottom:4px}.console-root .ses-ctx-room{font-size:13px;font-weight:650;color:var(--signal-ink);background:var(--signal-wash);border:1px solid var(--signal-deep);padding:3px 10px;border-radius:var(--r-pill)}.console-root .ses-ctx-date{font-size:12.5px;color:var(--ink-3);font-family:var(--f-mono)}.console-root .ses-kind{display:flex;gap:6px}.console-root .ses-kind .seg-tab{flex:1 1;height:40px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line-strong);font-size:13px;font-weight:700;color:var(--ink-2)}.console-root .ses-kind .seg-tab.on{background:var(--ink);color:var(--surface);border-color:var(--ink)}.console-root .ses-hint{font-size:12px;color:var(--ink-3);line-height:1.5;margin-top:2px}.console-root .att-sheet-hint b,.console-root .ses-hint b{color:var(--ink-2);font-weight:700}.console-root .att-sheet{display:flex;flex-direction:column;gap:12px}.console-root .att-sheet-hint{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;color:var(--ink-2);background:var(--signal-wash);border:1px solid #e6efc4;border-radius:12px;padding:11px 13px;line-height:1.5}.console-root .att-sheet-hint svg{width:17px;height:17px;flex-shrink:0;margin-top:1px;color:var(--signal-deep)}.console-root .att-all{width:100%;height:44px;border-radius:12px;background:var(--good);color:#fff;font-size:14px;font-weight:650}.console-root .att-all:disabled{opacity:.5}.console-root .att-roster{display:flex;flex-direction:column;gap:8px}.console-root .att-sheet .att-name{font-size:14.5px;font-weight:700}.console-root .att-modal-sub{font-size:13px;color:var(--ink-3);font-family:var(--f-mono);margin-bottom:12px}@media (max-width:768px){.console-root .rooms-m .page-head{display:none}.console-root .rm-daynav{display:flex;align-items:center;gap:10px;padding:4px 0 12px}.console-root .rm-daynav .rm-arrow{width:40px;height:40px;border-radius:12px}.console-root .rm-daylabel{flex:1 1;justify-content:center}.console-root .rm-daylabel>b{font-size:19px}.console-root .rm-todaybtn{height:32px;padding:0 12px;border-radius:10px;background:var(--signal);color:var(--signal-ink);font-size:12.5px;font-weight:650}.console-root .rm-addroom{align-self:flex-start;height:34px;padding:0 14px;border-radius:10px;border:1px dashed var(--line-strong);background:var(--surface);color:var(--ink-2);font-size:13px;font-weight:700;margin-bottom:4px}.console-root .rm-list{display:flex;flex-direction:column;gap:12px}.console-root .room-card.m{border-radius:var(--r-lg)}.console-root .room-card.m .room-card-h{padding:14px 15px 11px}.console-root .room-card.m .room-card-title h3{font-size:17px}.console-root .room-card.m .icon-btn{width:34px;height:34px}.console-root .room-card.m .icon-btn svg{width:17px;height:17px}.console-root .room-card.m .rsess{padding:12px 15px;gap:12px}.console-root .room-card.m .rsess-check{height:36px;padding:0 16px;font-size:13.5px;border-radius:10px}.console-root .rm-addses{width:100%;padding:13px;border-top:1px solid var(--line);color:var(--ink-2);font-size:13.5px;font-weight:600;background:var(--surface-2)}.console-root .rm-addses:active{background:var(--line)}}.console-root .optseg{display:flex;gap:8px}.console-root .optseg button{flex:1 1;height:44px;border:none;border-radius:12px;background:var(--surface-2);color:var(--ink-2);font-size:14px;font-weight:600;transition:background .12s,color .12s}.console-root .optseg button.on{background:var(--ink);color:#fff}.console-root .optseg button:disabled{opacity:.5}.console-root .att-optseg button.on.ok{background:var(--good);color:#fff}.console-root .att-optseg button.on.no{background:var(--crit);color:#fff}.console-root .att-optseg button{height:40px}.console-root .ses-endnote{font-size:13px;color:var(--ink-3);margin-top:-4px}.console-root .ses-endnote b{color:var(--ink);font-weight:650;font-family:var(--f-mono)}.console-root .ses-makeup{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:14px;border:1px solid var(--line);background:var(--surface);text-align:left}.console-root .ses-makeup.on{border-color:var(--signal-deep);background:var(--signal-wash)}.console-root .ses-makeup-box{width:24px;height:24px;border-radius:7px;border:2px solid var(--line-strong);display:grid;place-items:center;flex-shrink:0;color:#fff}.console-root .ses-makeup.on .ses-makeup-box{background:var(--signal-deep);border-color:var(--signal-deep)}.console-root .ses-makeup-box svg{width:15px;height:15px}.console-root .ses-makeup-l{display:flex;flex-direction:column;gap:1px}.console-root .ses-makeup-l b{font-size:14px;font-weight:700}.console-root .ses-makeup-l small{font-size:11.5px;color:var(--ink-3)}.console-root .room-card-acts .icon-btn.sess-add{color:var(--signal-ink);background:var(--signal-wash);border-color:var(--signal-deep)}.console-root .room-card-acts .icon-btn.sess-add:hover{background:var(--signal)}.console-root .rm-addses:active{background:var(--signal)!important}.console-root .room-empty.brand{background:var(--signal-wash)}.console-root .room-empty.brand:hover{background:var(--signal)}.console-root .persp-pill{position:relative;display:grid;grid-template-columns:1fr 1fr;background:var(--surface-2);border:1px solid var(--line);border-radius:13px;padding:4px;margin:14px 0 4px}.console-root .persp-thumb{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:10px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-card);transition:transform .24s cubic-bezier(.22,.61,.36,1);pointer-events:none}.console-root .persp-pill button{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:7px;height:40px;background:none;border:none;font-size:13.5px;font-weight:600;color:var(--ink-3);transition:color .18s}.console-root .persp-pill button.on{color:var(--ink)}.console-root .persp-pill button svg{width:16px;height:16px}.console-root .ls-hinttxt{font-size:12px;color:var(--ink-3)}.console-root .ls-hinttxt b{color:var(--ink-2);font-weight:700}.console-root .slot-sheet{display:flex;flex-direction:column;gap:12px}.console-root .slot-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.console-root .slot-time{font-size:15px;font-weight:650}.console-root .slot-count{font-size:12.5px;color:var(--ink-3);font-weight:600}.console-root .slot-list{display:flex;flex-direction:column;gap:8px}.console-root .slot-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:10px;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.console-root .slot-row.open{border-color:#CFE8B8;background:var(--signal-wash)}.console-root .slot-name{font-size:14.5px;font-weight:700}.console-root .slot-detail{font-size:12px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .slot-badge{font-size:11.5px;font-weight:650;padding:3px 9px;border-radius:var(--r-pill);white-space:nowrap}.console-root .slot-badge.open{color:var(--good);background:var(--good-bg)}.console-root .slot-badge.busy{color:var(--info);background:var(--info-bg)}.console-root .slot-badge.unavail{color:var(--crit);background:var(--crit-bg)}.console-root .slot-badge.unknown{color:var(--ink-3);background:var(--surface-2)}.console-root .pass-count{display:flex;flex-direction:column;gap:8px}.console-root .pass-count-chips{display:flex;gap:7px}.console-root .pass-count-chips button{flex:1 1;height:40px;border:none;border-radius:11px;background:var(--surface-2);color:var(--ink-2);font-size:14px;font-weight:600}.console-root .pass-count-chips button.on{background:var(--ink);color:#fff}.console-root .pass-count-in{display:flex;align-items:center;gap:8px}.console-root .pass-count-in input{flex:1 1}.console-root .pass-count-in>span,.console-root .pass-price>span{font-size:13px;color:var(--ink-3);font-weight:600;white-space:nowrap}.console-root .pass-price{display:flex;align-items:center;gap:8px}.console-root .pass-price input{flex:1 1}.console-root .recur-toggle.on{background:var(--ink)!important;color:var(--signal)!important;border-color:var(--ink)!important;font-weight:650}.console-root .ses-msearch{margin-bottom:8px}.console-root .ses-mpick{display:flex;flex-direction:column;gap:4px;max-height:230px;overflow-y:auto;border:1px solid var(--line);border-radius:12px;padding:5px;background:var(--surface-2)}.console-root .ses-mpick-row{display:flex;align-items:center;justify-content:space-between;height:42px;padding:0 12px;border:none;border-radius:9px;background:transparent;font-size:14.5px;font-weight:600;color:var(--ink);text-align:left}.console-root .ses-mpick-row:hover{background:var(--surface)}.console-root .ses-mpick-row.on{background:var(--ink);color:#fff}.console-root .ses-mpick-row svg{width:16px;height:16px}.console-root .ses-mpick-empty{padding:18px;text-align:center;color:var(--ink-3);font-size:13px}.console-root .qt-badge{font-size:10.5px;font-weight:650;padding:3px 9px;border-radius:var(--r-pill);background:var(--ink);color:var(--signal)}.console-root .qt-ses.now{border-color:var(--signal-deep);box-shadow:0 0 0 3px var(--signal-wash)}.console-root .qt-ses-time{align-items:center;gap:7px;font-size:14px;font-weight:650}.console-root .qt-ses-t{font-size:12.5px;color:var(--ink-3);font-weight:600}.console-root .qt-prow{justify-content:space-between;gap:10px;padding:12px 14px}.console-root .qt-prow.done{opacity:.6}.console-root .qt-prow-m{gap:2px}.console-root .qt-prow-ok{font-weight:700}.console-root .qt-noses{padding:26px 16px 8px}.console-root .qt-quick-cta{background:var(--ink);color:var(--signal)}.console-root .qt-confirm,.console-root .qt-quick{display:flex;flex-direction:column;gap:14px}.console-root .qt-cf-card{background:var(--ink);color:#fff;border-radius:18px;padding:18px;text-align:center}.console-root .qt-cf-name{font-size:22px;font-weight:700;letter-spacing:-.02em}.console-root .qt-cf-meta{font-size:13px;color:rgba(255,255,255,.66);margin-top:3px}.console-root .qt-cf-pass{font-size:15px;font-weight:700;margin-top:12px;color:rgba(255,255,255,.9);display:flex;align-items:center;justify-content:center;gap:8px}.console-root .qt-cf-pass b{font-size:17px}.console-root .qt-cf-pass .lime{color:var(--signal)}.console-root .qt-arr{color:rgba(255,255,255,.5)}.console-root .qt-nopass{color:#FCA5A5;font-size:13.5px;font-weight:700}.console-root .qt-cf-warn{font-size:12.5px;color:var(--ink-2);background:var(--signal-wash);border:1px solid #e6efc4;border-radius:12px;padding:11px 13px;line-height:1.5}.console-root .qt-done{gap:8px}.console-root .sigpad{display:flex;flex-direction:column;gap:7px}.console-root .sigpad-head{display:flex;align-items:center;justify-content:space-between}.console-root .sigpad-head>span{font-size:12.5px;font-weight:700;color:var(--ink-2)}.console-root .sigpad-clear{font-size:12px;font-weight:700;color:var(--ink-3);padding:4px 10px;border-radius:8px;background:var(--surface-2)}.console-root .sigpad-canvas-wrap{position:relative;border:1.5px dashed var(--line-strong);border-radius:14px;background:var(--surface);overflow:hidden}.console-root .sigpad-canvas{display:block;width:100%;height:150px;touch-action:none}.console-root .sigpad-ph{position:absolute;inset:0;display:grid;place-items:center;font-size:13px;color:var(--ink-3);pointer-events:none}.console-root .rm-addses{background:var(--ink)!important;color:var(--signal)!important;border-radius:0 0 var(--r-lg) var(--r-lg)}.console-root .rm-addses:active{background:#000!important}.console-root .room-empty.brand{color:var(--signal);background:var(--ink)}.console-root .room-empty.brand:hover{background:#000}.console-root .room-empty.brand svg{color:var(--signal)}.console-root .rsess-tag.live{background:var(--ink);color:var(--signal)}.console-root .rsess-tag.live i{background:var(--signal)}.console-root .ph-chip{font-size:11px;font-weight:600;padding:3px 9px;border-radius:var(--r-pill);white-space:nowrap;letter-spacing:-.01em}.console-root .ph-chip.up{background:var(--surface-2);color:var(--ink-3);border:1px solid var(--line)}.console-root .ph-chip.open{background:var(--signal-wash);color:var(--signal-ink);border:1px solid #dcebab}.console-root .ph-chip.live{background:var(--info-bg);color:var(--info)}.console-root .ph-chip.done{background:var(--good-bg);color:var(--good)}.console-root .ph-chip.missed{background:var(--crit-bg);color:var(--crit)}.console-root .rsess.ph-live{background:linear-gradient(90deg,var(--info-bg),transparent 60%)}.console-root .rsess.ph-open{background:linear-gradient(90deg,var(--signal-wash),transparent 60%)}.console-root .rsess.ph-done .rsess-title,.console-root .rsess.ph-missed .rsess-title{color:var(--ink-3)}.console-root .rm-addses{background:var(--signal-wash)!important;color:var(--signal-ink)!important;font-weight:650!important;border-top:1px solid #e4efc0}.console-root .rm-addses:active{background:#EAF3CE!important}.console-root .room-empty.brand{color:var(--signal-ink);background:repeating-linear-gradient(45deg,var(--signal-wash),var(--signal-wash) 10px,#F7FBE8 10px,#F7FBE8 20px)}.console-root .room-empty.brand:hover{background:var(--signal-wash)}.console-root .room-empty.brand svg{color:var(--signal-deep)}.console-root .qt-quick-cta{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:52px;margin-top:6px;border-radius:15px;background:var(--signal-wash);color:var(--signal-ink);font-size:15px;font-weight:650;border:1px solid #dcebab}.console-root .qt-quick-cta:active{background:#EAF3CE}.console-root .qt-quick-cta svg{width:20px;height:20px}.console-root .qt-ses{border:1px solid var(--line);border-radius:16px;padding:12px;margin-bottom:12px;background:var(--surface);box-shadow:var(--shadow-card)}.console-root .qt-ses.ph-live{border-color:#C4D3F5}.console-root .qt-ses-h{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.console-root .qt-ses-time{display:flex;flex-direction:column;line-height:1.25}.console-root .qt-ses-time b{font-size:14.5px;font-weight:650}.console-root .qt-ses-time span{font-size:11.5px;color:var(--ink-3)}.console-root .qt-prow{display:flex;align-items:center;gap:11px;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);margin-top:7px;text-align:left}.console-root .qt-prow:active:not(:disabled){transform:scale(.99)}.console-root .qt-prow:disabled{opacity:.55}.console-root .qt-prow.done{opacity:1;background:var(--good-bg);border-color:#CDE9D7}.console-root .qt-prow-av{width:38px;height:38px;border-radius:50%;background:var(--signal-wash);color:var(--signal-ink);display:grid;place-items:center;font-weight:650;font-size:15px;flex-shrink:0}.console-root .qt-prow-m{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1 1}.console-root .qt-prow-n{font-size:15.5px;font-weight:600}.console-root .qt-prow-s{font-size:12px;color:var(--ink-3)}.console-root .qt-prow-go{font-size:13.5px;font-weight:650;color:var(--signal-ink);background:var(--signal);padding:6px 12px;border-radius:var(--r-pill);flex-shrink:0}.console-root .qt-prow-ok{font-size:12.5px;font-weight:650;color:var(--good);flex-shrink:0}.console-root .qt-prow-wait{font-size:12px;font-weight:700;color:var(--ink-3);flex-shrink:0}.console-root .qt-prow.nopass{border-color:#F1CACA;background:var(--crit-bg)}.console-root .qt-prow.nopass .qt-prow-s{color:var(--crit);font-weight:700}.console-root .qt-prow-pay{font-size:13.5px;font-weight:650;color:#fff;background:var(--crit);padding:6px 12px;border-radius:var(--r-pill);flex-shrink:0}.console-root .qt-noses{text-align:center;padding:28px 16px 10px}.console-root .qt-noses-t{font-size:16px;font-weight:650}.console-root .qt-noses-s{font-size:13px;color:var(--ink-3);margin-top:4px}.console-root .qt-empty{font-size:12.5px;color:var(--ink-3);padding:8px 4px}.console-root .ci{display:flex;flex-direction:column;gap:14px}.console-root .ci-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:20px 18px;box-shadow:var(--shadow-card)}.console-root .ci-av{width:56px;height:56px;border-radius:50%;background:linear-gradient(150deg,var(--signal),var(--signal-deep));color:var(--signal-ink);display:grid;place-items:center;font-size:24px;font-weight:700;margin-bottom:4px}.console-root .ci-name{font-size:21px;font-weight:700;letter-spacing:-.02em}.console-root .ci-sub{font-size:13px;color:var(--ink-3)}.console-root .ci-pass{display:inline-flex;align-items:center;gap:7px;margin-top:10px;padding:7px 14px;border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--line);font-size:14px;font-weight:700;color:var(--ink-2)}.console-root .ci-pass span{color:var(--ink-3);font-weight:600;font-size:12.5px}.console-root .ci-pass b{font-size:16px;color:var(--ink)}.console-root .ci-pass b.hl{color:var(--good)}.console-root .ci-pass svg{width:16px;height:16px;color:var(--ink-3)}.console-root .ci-pass.nopass{color:var(--crit);background:var(--crit-bg);border-color:#F1CACA}.console-root .ci-hint{font-size:12.5px;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:11px 13px;line-height:1.5;text-align:center}.console-root .ci-nopass{display:flex;flex-direction:column;gap:5px;text-align:center;background:var(--crit-bg);border:1px solid #f1caca;border-radius:14px;padding:15px 14px}.console-root .ci-nopass b{font-size:14.5px;font-weight:650;color:var(--crit)}.console-root .ci-nopass span{font-size:12.5px;color:var(--ink-2);line-height:1.5}.console-root .qt-pay{display:flex;flex-direction:column;gap:14px}.console-root .qt-pay .wb-book{gap:12px}.console-root .qt-pay-save{margin-top:2px}.console-root .qt-done{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:26px 16px 8px}.console-root .qt-done-ic{width:66px;height:66px;border-radius:50%;background:var(--good-bg);color:var(--good);display:grid;place-items:center;margin-bottom:4px}.console-root .qt-done-ic svg{width:34px;height:34px}.console-root .qt-done-t{font-size:17px;font-weight:650}.console-root .qt-done-s{font-size:13.5px;color:var(--ink-3);margin-bottom:12px}.console-root .qt-done .sheet-save{max-width:260px}.console-root .qp{display:flex;flex-direction:column;gap:16px}.console-root .qp-field{display:flex;flex-direction:column;gap:8px}.console-root .qp-lab{font-size:12.5px;font-weight:700;color:var(--ink-2)}.console-root .qp-search{display:flex;align-items:center;gap:8px;height:46px;padding:0 14px;border:1px solid var(--line-strong);border-radius:13px;background:var(--surface)}.console-root .qp-search svg{width:17px;height:17px;color:var(--ink-3)}.console-root .qp-search input{flex:1 1;border:none;outline:none;background:none;font-size:16px;font-family:inherit;color:var(--ink)}.console-root .qp-list{display:flex;flex-direction:column;gap:5px;max-height:240px;overflow-y:auto;padding:5px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.console-root .qp-mem{display:flex;align-items:center;gap:11px;height:50px;padding:0 12px;border:none;border-radius:11px;background:transparent;text-align:left}.console-root .qp-mem:active{background:var(--surface)}.console-root .qp-mem.on{background:var(--ink)}.console-root .qp-av{width:34px;height:34px;border-radius:50%;background:var(--surface);color:var(--ink);display:grid;place-items:center;font-weight:650;font-size:14px;flex-shrink:0;box-shadow:var(--shadow-card)}.console-root .qp-mem.on .qp-av{background:var(--signal);color:var(--signal-ink)}.console-root .qp-nm{flex:1 1;font-size:15.5px;font-weight:700;color:var(--ink)}.console-root .qp-mem.on .qp-nm{color:#fff}.console-root .qp-ck{width:18px;height:18px;color:var(--signal);flex-shrink:0}.console-root .qp-empty{padding:18px;text-align:center;color:var(--ink-3);font-size:13px}.console-root .qp-passline{font-size:13px;font-weight:700;color:var(--good);padding:2px 2px 0}.console-root .qp-passline.no{color:var(--crit)}.console-root .qp-slots{display:flex;gap:8px}.console-root .qp-slot{flex:1 1;height:46px;border:1px solid var(--line-strong);border-radius:12px;background:var(--surface);font-size:14px;font-weight:600;color:var(--ink-2);font-family:var(--f-mono)}.console-root .qp-slot.on{background:var(--ink);color:#fff;border-color:var(--ink)}.console-root .mcal{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface);box-shadow:var(--shadow-card)}.console-root .mcal-head{display:grid;grid-template-columns:repeat(7,1fr);background:var(--surface-2);border-bottom:1px solid var(--line)}.console-root .mcal-head span{text-align:center;padding:9px 0;font-size:11.5px;font-weight:600;color:var(--ink-3)}.console-root .mcal-head .sat{color:var(--info)}.console-root .mcal-head .sun{color:var(--crit)}.console-root .mcal-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px;padding:6px}.console-root .mcal-blank{aspect-ratio:1/1}.console-root .mcal-cell{position:relative;aspect-ratio:1/1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:11px;background:transparent}.console-root .mcal-cell:active{background:var(--surface-2)}.console-root .mcal-cell.today{background:var(--signal-wash);box-shadow:inset 0 0 0 1.5px var(--signal-deep)}.console-root .mcal-dn{font-size:14.5px;font-weight:700;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .mcal-cell.hol .mcal-dn,.console-root .mcal-cell.sun .mcal-dn{color:var(--crit)}.console-root .mcal-cell.sat .mcal-dn{color:var(--info)}.console-root .mcal-cnt{font-size:10px;font-weight:650;color:var(--signal-ink);background:var(--signal);min-width:17px;height:16px;border-radius:8px;display:grid;place-items:center;padding:0 4px}.mlogin{position:fixed;inset:0;background:#0E1116;color:#fff;justify-content:center;gap:34px;padding:calc(40px + env(safe-area-inset-top)) 26px calc(28px + env(safe-area-inset-bottom));font-family:-apple-system,SF Pro Text,Apple SD Gothic Neo,Pretendard,system-ui,sans-serif;background-image:radial-gradient(120% 90% at 50% -10%,rgba(203,242,77,.14),transparent 60%)}.mlogin,.mlogin-hero{display:flex;flex-direction:column}.mlogin-hero{align-items:flex-start;gap:10px}.mlogin-mark{width:66px;height:42px;border-radius:12px;background:linear-gradient(140deg,#CBF24D,#B4DE3A);color:#1E2A0C;font-weight:700;font-size:19px;letter-spacing:-.02em;font-family:SF Mono,ui-monospace,Menlo,monospace;display:grid;place-items:center;box-shadow:0 8px 26px -8px rgba(203,242,77,.5)}.mlogin-title{font-size:40px;font-weight:700;letter-spacing:-.03em;margin-top:6px}.mlogin-tag{font-size:14.5px;color:rgba(255,255,255,.5)}.mlogin-form{gap:14px}.mlogin-fld,.mlogin-form{display:flex;flex-direction:column}.mlogin-fld{gap:7px}.mlogin-fld>span{font-size:12.5px;font-weight:700;color:rgba(255,255,255,.62);padding-left:2px}.mlogin-fld input{height:56px;border-radius:16px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);padding:0 18px;font-size:16px;color:#fff;outline:none;-webkit-appearance:none;transition:border-color .15s,background .15s}.mlogin-fld input::placeholder{color:rgba(255,255,255,.32)}.mlogin-fld input:focus{border-color:#CBF24D;background:rgba(203,242,77,.08)}.mlogin-err{font-size:13px;color:#FCA5A5;background:rgba(220,60,60,.14);border:1px solid rgba(220,60,60,.3);border-radius:12px;padding:11px 14px}.mlogin-btn{height:56px;border:0;border-radius:16px;background:#CBF24D;color:#1E2A0C;font-size:16px;font-weight:700;margin-top:6px;transition:filter .1s,opacity .1s;-webkit-appearance:none;-moz-appearance:none;appearance:none}.mlogin-btn:active:not(:disabled){filter:brightness(1.04)}.mlogin-btn:disabled{opacity:.4}.mlogin-hint{text-align:center;font-size:12px;color:rgba(255,255,255,.4);margin-top:4px}.mlogin-hint b{color:rgba(255,255,255,.62);font-weight:700}.console-root .pay-month{display:flex;flex-direction:column;gap:12px;margin-bottom:14px}.console-root .pay-month-sel{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.console-root .pay-period{font-size:12px;color:var(--ink-3);font-family:var(--f-mono)}.console-root .pay-sum{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-gap:9px;gap:9px}.console-root .pay-sum-c{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 14px;box-shadow:var(--shadow-card)}.console-root .pay-sum-c span{display:block;font-size:11.5px;color:var(--ink-3);font-weight:600}.console-root .pay-sum-c b{font-size:18px;font-weight:650;letter-spacing:-.02em}.console-root .pay-sum-c b small{font-size:12px;color:var(--ink-3);font-weight:600}.console-root .td-settle{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:15px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:13px}.console-root .td-settle-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.console-root .td-k{font-size:12px;font-weight:650;color:var(--signal-ink);background:var(--signal-wash);padding:2px 9px;border-radius:var(--r-pill)}.console-root .td-basis{font-size:12px;color:var(--ink-3);margin-top:5px}.console-root .td-final{text-align:right}.console-root .td-final b{font-size:20px;font-weight:700;letter-spacing:-.02em;display:block}.console-root .td-final .pr-status{font-size:11px;font-weight:600}.console-root .td-metrics{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px 12px;gap:8px 12px;padding:12px 0;border-bottom:1px solid var(--line)}.console-root .td-metrics span{font-size:12.5px;color:var(--ink-3)}.console-root .td-metrics b{color:var(--ink);font-weight:700}.console-root .td-adjust{display:flex;flex-direction:column;gap:10px}.console-root .td-adjust .fld{display:flex;flex-direction:column;gap:6px}.console-root .td-adjust .fld span{font-size:12px;font-weight:700;color:var(--ink-2)}.console-root .td-adjust input{height:44px;border:1px solid var(--line-strong);border-radius:12px;padding:0 13px;font-size:15px;background:var(--surface)}.console-root .td-actions{display:flex;gap:8px}.console-root .td-actions .b{flex:1 1;padding:11px}.console-root .td-members{display:flex;flex-wrap:wrap}.console-root .td-mem{display:inline-flex;align-items:center;gap:8px;border-radius:var(--r-pill);padding:6px 8px 6px 6px;box-shadow:var(--shadow-card);cursor:pointer;font:inherit;color:inherit;transition:background .12s}.console-root .td-mem:active{background:var(--surface-2);transform:scale(.97)}.console-root .td-mem-av{width:26px;height:26px;border-radius:50%;background:var(--surface-2);display:grid;place-items:center;font-size:12px;font-weight:650;color:var(--ink-2)}.console-root .td-mem-n{font-size:13.5px;font-weight:700}.console-root .td-mem-chev{width:15px;height:15px;color:var(--ink-3);display:inline-flex;margin-left:-2px}.console-root .td-mem-chev svg{width:100%;height:100%}.console-root .tv-form-foot{display:flex;gap:10px;width:100%}.console-root .tv-form-foot .sheet-save{flex:1 1}.console-root .tv-form-foot .tv-del{flex-shrink:0;padding:0 18px;height:52px;border-radius:15px}@media (max-width:768px){.console-root .mh-tile .t-ic.tone-indigo{background:#EEF0FB;color:#5560C8}.console-root .mh-tile .t-ic.tone-violet{background:#F1ECFB;color:#7C56C8}.console-root .mh-tile .t-ic.tone-lime{background:linear-gradient(145deg,var(--signal),var(--signal-deep));color:var(--signal-ink);box-shadow:0 6px 14px -7px rgba(180,222,58,.75)}.console-root .mh-tile .t-ic.tone-amber{background:#FBF2E0;color:#BE861A}.console-root .mh-tile .t-ic.tone-teal{background:#E2F4F0;color:#12907C}.console-root .mh-tile .t-ic.tone-rose{background:#FBEBEF;color:#CE5578}}.console-root .mtab-bar{display:flex;gap:24px;border-bottom:1px solid var(--line);margin-bottom:14px}.console-root .mtab-bar button{position:relative;padding:9px 2px 12px;font-size:15.5px;font-weight:600;letter-spacing:-.02em;color:var(--ink-3);background:none;transition:color .15s}.console-root .mtab-bar button.on{color:var(--ink)}.console-root .mtab-bar button.on:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2.5px;background:var(--ink);border-radius:3px}.console-root .subseg{display:inline-flex;width:-moz-fit-content;width:fit-content;background:var(--surface-2);border:1px solid var(--line);border-radius:11px;padding:3px;gap:2px}.console-root .subseg button{padding:7px 16px;border-radius:8px;font-size:12.5px;font-weight:600;color:var(--ink-3);background:none}.console-root .subseg button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-card)}.console-root .fin-hub{display:flex;flex-direction:column;gap:14px}.console-root .fh2{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:var(--shadow-card)}.console-root .fh2-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.console-root .fh2-k{font-size:13px;font-weight:600;color:var(--ink-3)}.console-root .fh2-delta{font-size:11.5px;font-weight:650;color:var(--good);background:var(--good-bg);padding:4px 10px;border-radius:var(--r-pill);white-space:nowrap}.console-root .fh2-delta.neg{color:var(--crit);background:var(--crit-bg)}.console-root .fh2-delta em{font-style:normal;opacity:.55;font-weight:600}.console-root .fh2-v{font-size:34px;font-weight:700;letter-spacing:-.03em;margin:7px 0 15px}.console-root .fh2-v.neg{color:var(--crit)}.console-root .fh2-bar{display:flex;height:10px;border-radius:var(--r-pill);overflow:hidden;background:var(--surface-2);gap:2px}.console-root .fh2-bar i{display:block;height:100%;border-radius:var(--r-pill);min-width:3px}.console-root .fh2-bar i.rev{background:var(--signal-deep)}.console-root .fh2-bar i.exp{background:var(--warn)}.console-root .fh2-legend{display:flex;justify-content:space-between;margin-top:10px}.console-root .fh2-legend span{font-size:12px;color:var(--ink-3);display:inline-flex;align-items:center;gap:6px}.console-root .fh2-legend i{width:8px;height:8px;border-radius:3px}.console-root .fh2-legend i.rev{background:var(--signal-deep)}.console-root .fh2-legend i.exp{background:var(--warn)}.console-root .fh2-legend b{color:var(--ink);font-weight:700}.console-root .fh2-trend{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:var(--shadow-card)}.console-root .fh2-trend-h{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;font-weight:600;margin-bottom:8px}.console-root .fh2-trend-h span{font-size:11.5px;color:var(--ink-3);font-weight:600}.console-root .fin-areas{display:flex;flex-direction:column;gap:9px}.console-root .fin-area{display:flex;align-items:center;gap:13px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:12px 15px;box-shadow:var(--shadow-card);width:100%;text-align:left}.console-root .fin-area:active{transform:scale(.99)}.console-root .fa-ic{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;flex-shrink:0;background:var(--surface-2);color:var(--ink-2)}.console-root .fa-ic svg{width:20px;height:20px}.console-root .perf-stack{display:flex;flex-direction:column;gap:14px}.console-root .fa-m{flex:1 1;min-width:0;display:flex;flex-direction:column}.console-root .fa-l{font-size:15px;font-weight:650}.console-root .fa-s{font-size:11.5px;color:var(--ink-3)}.console-root .fa-v{font-size:15px;font-weight:650;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-left:auto}.console-root .fa-v.neg{color:var(--crit)}.console-root .fa-chev{width:18px;height:18px;color:var(--ink-3);flex-shrink:0}.console-root .es-dot{display:inline-block;width:8px;height:8px;border-radius:3px;margin-right:6px;vertical-align:middle}.console-root .exp-row{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:15px;padding:12px 14px;box-shadow:var(--shadow-card)}.console-root .exp-row:active{transform:scale(.99)}.console-root .exp-row-ic{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;font-weight:700;font-size:15px;flex-shrink:0}.console-root .exp-row-m{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1}.console-root .exp-row-t{font-size:14.5px;font-weight:600}.console-root .exp-row-s{font-size:11.5px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .exp-row-amt{font-size:15px;font-weight:650;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .exp-row-del{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;color:var(--ink-3);flex-shrink:0}.console-root .exp-row-del:active{background:var(--crit-bg);color:var(--crit)}.console-root .exp-row-del svg{width:15px;height:15px}.console-root .exf{display:flex;flex-direction:column;gap:16px}.console-root .exf-amt{display:flex;align-items:center;gap:8px;justify-content:center;padding:14px 0 6px;border-bottom:2px solid var(--line)}.console-root .exf-won{font-size:30px;font-weight:650;color:var(--ink-3)}.console-root .exf-amt input{flex:0 1 auto;width:100%;max-width:260px;border:none;outline:none;background:none;font-size:38px;font-weight:700;letter-spacing:-.03em;text-align:center;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;-webkit-appearance:none}.console-root .exf-field{display:flex;flex-direction:column;gap:9px}.console-root .exf-lab{font-size:12.5px;font-weight:700;color:var(--ink-2)}.console-root .exf-cats{display:flex;flex-wrap:wrap;gap:8px}.console-root .exf-cats button{height:40px;padding:0 16px;border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--line);font-size:13.5px;font-weight:700;color:var(--ink-2)}.console-root .exf-cats button.on{background:var(--ink);color:#fff;border-color:var(--ink)}.console-root .exf-foot{display:flex;gap:10px;width:100%}.console-root .exf-foot .sheet-save{flex:1 1}.console-root .exf-foot .exf-del{flex-shrink:0;padding:0 18px;height:52px;border-radius:15px}.console-root .b-danger{background:var(--crit);color:#fff}.console-root .rec-add-btn{font-size:13px;font-weight:600;color:var(--signal-ink);background:var(--signal-wash);border:1px solid #dcebab;padding:6px 13px;border-radius:var(--r-pill)}.console-root .rec-mlist{display:flex;flex-direction:column;gap:8px}.console-root .rec-mcard{display:flex;align-items:center;gap:11px;width:100%;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 14px;box-shadow:var(--shadow-card)}.console-root .rec-mcard.off{opacity:.6}.console-root .rec-mcard-m{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1}.console-root .rec-mcard-cat{font-size:14.5px;font-weight:600}.console-root .rec-mcard-cad{font-size:11.5px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .rec-mcard-amt{font-size:14.5px;font-weight:650}.console-root .rec-mcard .recur-toggle{flex-shrink:0}.console-root .grant{display:flex;flex-direction:column;gap:14px}.console-root .grant-lab{font-size:12.5px;font-weight:600;color:var(--ink-2)}.console-root .grant-products{display:flex;flex-direction:column;gap:8px}.console-root .grant-prod{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:13px 15px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.console-root .grant-prod.on{border-color:var(--signal-deep);background:var(--signal-wash)}.console-root .gp-m{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.console-root .gp-n{font-size:15px;font-weight:600}.console-root .gp-s{font-size:12px;color:var(--ink-3)}.console-root .gp-price{font-size:15px;font-weight:650;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .gp-ck{width:18px;height:18px;color:var(--signal-deep);flex-shrink:0}.console-root .grant-note{font-size:12px;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:11px 13px;line-height:1.5}.console-root .grant-note b{color:var(--ink);font-weight:700}.console-root .ses-hist{display:flex;flex-direction:column;gap:8px}.console-root .ses-hist-row{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:11px 14px;box-shadow:var(--shadow-card)}.console-root .shr-date{display:flex;flex-direction:column;align-items:center;width:46px;flex-shrink:0;line-height:1.2}.console-root .shr-date b{font-size:14px;font-weight:650;font-family:var(--f-mono)}.console-root .shr-date span{font-size:10.5px;color:var(--ink-3)}.console-root .shr-m{flex:1 1;min-width:0}.console-root .shr-t{font-size:14px;font-weight:700}.console-root .shr-s{font-size:11.5px;color:var(--ink-3);margin-top:1px}.console-root .stu{max-width:640px;margin:0 auto;min-height:100dvh;background:var(--paper);display:flex;flex-direction:column;gap:16px;padding:calc(22px + env(safe-area-inset-top)) 18px calc(28px + env(safe-area-inset-bottom))}.console-root .stu-top{display:flex;align-items:flex-start;justify-content:space-between}.console-root .stu-hi{font-size:22px;font-weight:650;letter-spacing:-.02em}.console-root .stu-hi b{font-weight:700}.console-root .stu-aca{font-size:12.5px;color:var(--ink-3);font-weight:500;margin-top:3px}.console-root .stu-logout{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;color:var(--ink-3);border:1px solid var(--line);background:var(--surface)}.console-root .stu-logout svg{width:18px;height:18px}.console-root .stu-pass{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:var(--shadow-card)}.console-root .stu-pass-k{font-size:13px;color:var(--ink-3);font-weight:700}.console-root .stu-pass-v{font-size:42px;font-weight:700;letter-spacing:-.03em;margin-top:2px}.console-root .stu-pass-v span{font-size:20px;color:var(--ink-3);margin-left:4px;font-weight:700}.console-root .stu-pass-list{margin-top:12px;border-top:1px solid var(--line);padding-top:12px;display:flex;flex-direction:column;gap:7px}.console-root .stu-pass-row{display:flex;justify-content:space-between;font-size:13px;color:var(--ink-2)}.console-root .stu-pass-row b{font-weight:600;color:var(--ink)}.console-root .stu-reserve-cta{display:flex;align-items:center;justify-content:center;gap:9px;height:56px;border-radius:16px;background:var(--signal);color:var(--signal-ink);font-size:16px;font-weight:700;box-shadow:0 10px 26px -10px rgba(180,222,58,.7)}.console-root .stu-reserve-cta:active{transform:scale(.98)}.console-root .stu-reserve-cta svg{width:20px;height:20px}.console-root .stu-slab{font-size:14px;font-weight:650;margin-top:4px}.console-root .stu-empty{padding:24px;text-align:center;color:var(--ink-3);font-size:13px;background:var(--surface);border:1px solid var(--line);border-radius:14px}.console-root .stu-sess{display:flex;flex-direction:column;gap:8px}.console-root .stu-sess-row{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:11px 14px;box-shadow:var(--shadow-card)}.console-root .stu-sess-date{width:44px;text-align:center;flex-shrink:0;line-height:1.2}.console-root .stu-sess-date b{font-size:14px;font-weight:650;font-family:var(--f-mono);display:block}.console-root .stu-sess-date span{font-size:10.5px;color:var(--ink-3)}.console-root .stu-sess-m{flex:1 1;min-width:0}.console-root .stu-sess-t{font-size:14px;font-weight:700}.console-root .stu-sess-s{font-size:11.5px;color:var(--ink-3)}.console-root .rsv{display:flex;flex-direction:column;gap:10px}.console-root .rsv-lab{font-size:12.5px;font-weight:600;color:var(--ink-2);margin-top:6px}.console-root .rsv-hint{font-size:11px;color:var(--ink-3);font-weight:500;margin-left:6px}.console-root .rsv-days{display:flex;gap:7px}.console-root .rsv-day{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 0;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.console-root .rsv-day.on{background:var(--ink);color:#fff;border-color:var(--ink)}.console-root .rsv-day-wd{font-size:11px}.console-root .rsv-day-d{font-size:16px;font-weight:650}.console-root .rsv-rooms{display:flex;flex-wrap:wrap;gap:8px}.console-root .rsv-room{padding:10px 15px;border:1px solid var(--line-strong);border-radius:12px;background:var(--surface);font-size:14px;font-weight:700}.console-root .rsv-room.on{background:var(--ink);color:#fff;border-color:var(--ink)}.console-root .rsv-room em{font-style:normal;font-size:11px;color:var(--ink-3);margin-left:6px}.console-root .rsv-room.on em{color:rgba(255,255,255,.6)}.console-root .rsv-slots{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:7px;gap:7px}.console-root .rsv-slot{height:42px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-size:13px;font-weight:700;font-family:var(--f-mono);color:var(--ink)}.console-root .rsv-slot:disabled{background:var(--surface-2);color:var(--ink-3);opacity:.5}.console-root .rsv-slot.on{background:var(--signal);color:var(--signal-ink);border-color:var(--signal-deep)}.console-root .rsv-slot.wl{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;background:var(--surface-2);border-style:dashed;border-color:var(--line-strong);color:var(--ink-3)}.console-root .rsv-slot.wl .rsv-slot-h{font-size:12px}.console-root .rsv-slot.wl svg{width:15px;height:15px}.console-root .rsv-slot.wl:active{transform:scale(.95)}.console-root .rsv-slot.wl.on{background:rgba(245,178,60,.16);border-style:solid;border-color:#f0a93a;color:#b9781a}.console-root .perm-wrap{display:flex;flex-direction:column;gap:8px;margin:2px 0 4px}.console-root .perm-card{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--info-bg);border:1px solid #d5dcf7;border-radius:var(--r-md)}.console-root .perm-ic{flex:none;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#fff;color:var(--info);border:1px solid #d5dcf7}.console-root .perm-ic svg{width:18px;height:18px}.console-root .perm-tx{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px}.console-root .perm-tx b{font-size:14px;color:var(--ink)}.console-root .perm-tx span{font-size:12px;color:var(--ink-2)}.console-root .perm-btn{flex:none;background:var(--signal);color:var(--signal-ink);border:none;border-radius:var(--r-pill);font-weight:700;font-size:13px;padding:8px 16px;cursor:pointer}.console-root .perm-btn:disabled{opacity:.55;cursor:default}.console-root .wkc{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card);padding:14px 16px;display:flex;flex-direction:column;gap:10px}.console-root .wkc.done{border-color:#BCE3CC;background:linear-gradient(180deg,var(--good-bg),var(--surface) 70%)}.console-root .wkc-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.console-root .wkc-seg{display:inline-flex;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-pill);padding:3px}.console-root .wkc-seg button{border:none;background:none;font-size:13px;font-weight:600;color:var(--ink-2);padding:6px 14px;border-radius:var(--r-pill);cursor:pointer}.console-root .wkc-seg button.on{background:var(--ink);color:#fff}.console-root .wkc-range{font-size:12.5px;color:var(--ink-3);font-family:var(--f-mono)}.console-root .wkc-body{display:flex;align-items:center;justify-content:space-between;gap:12px}.console-root .wkc-state{display:flex;align-items:center;gap:10px}.console-root .wkc-badge{font-size:12px;font-weight:700;padding:4px 10px;border-radius:var(--r-pill)}.console-root .wkc-badge.ok{background:var(--good-bg);color:var(--good)}.console-root .wkc-badge.wait{background:var(--warn-bg);color:var(--warn)}.console-root .wkc-cnt{font-size:13px;color:var(--ink-2)}.console-root .wkc-btn{background:var(--signal);color:var(--signal-ink);border:none;border-radius:10px;font-weight:700;font-size:14px;padding:10px 20px;cursor:pointer}.console-root .wkc-btn.ghost{background:var(--surface-2);color:var(--ink-2);border:1px solid var(--line)}.console-root .wkc-btn:disabled{opacity:.55;cursor:default}.console-root .wkc-help{font-size:12px;color:var(--ink-3);margin:-2px 0 0}.console-root .wkc-dir{border-top:1px solid var(--line);padding-top:8px}.console-root .wkc-dir-h{width:100%;display:flex;align-items:center;gap:8px;background:none;border:none;font-size:13px;font-weight:600;color:var(--ink);cursor:pointer;padding:4px 0}.console-root .wkc-pend{margin-left:auto;font-size:12px;font-weight:600;color:var(--good)}.console-root .wkc-pend.has{color:var(--warn)}.console-root .wkc-dir-h svg{width:16px;height:16px;color:var(--ink-3);transition:transform .18s}.console-root .wkc-dir-h svg.up{transform:rotate(180deg)}.console-root .wkc-tl{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:2px}.console-root .wkc-tl li{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:9px;background:var(--surface-2)}.console-root .wkc-tl-n{font-size:13px;font-weight:600;color:var(--ink);flex:1 1}.console-root .wkc-tl-c{font-size:12px;color:var(--ink-3);font-family:var(--f-mono)}.console-root .wkc-tl-s{font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:var(--r-pill)}.console-root .wkc-tl-s.ok{background:var(--good-bg);color:var(--good)}.console-root .wkc-tl-s.wait{background:var(--warn-bg);color:var(--warn)}.console-root .wb{display:flex;flex-direction:column;gap:10px}.console-root .wb-nav{display:flex;align-items:center;gap:8px}.console-root .wb-arrow{width:34px;height:34px;border-radius:10px;border:1px solid var(--line);background:var(--surface);font-size:20px;line-height:1;color:var(--ink-2);cursor:pointer}.console-root .wb-arrow:hover{background:var(--surface-2);color:var(--ink)}.console-root .wb-wk{display:flex;flex-direction:column;align-items:center;min-width:128px}.console-root .wb-wk b{font-size:15px;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .wb-wk span{font-size:11.5px;color:var(--ink-3)}.console-root .wb-today{margin-left:auto;font-size:12.5px;font-weight:600;color:var(--signal-ink);background:var(--signal);border:none;border-radius:var(--r-pill);padding:7px 14px;cursor:pointer}.console-root .wb-tsel select{width:100%;padding:9px 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink);font-size:13.5px}.console-root .wb-movebar{display:flex;align-items:center;gap:10px;padding:9px 14px;border-radius:var(--r-md);background:var(--signal-wash);border:1px solid var(--signal-deep);font-size:13px;color:var(--signal-ink);font-weight:600}.console-root .wb-movebar button{margin-left:auto;background:var(--ink);color:#fff;border:none;border-radius:var(--r-pill);padding:5px 12px;font-size:12px;cursor:pointer}.console-root .wb-grid{display:grid;grid-template-columns:40px repeat(7,minmax(72px,1fr));grid-gap:0;gap:0;border:1px solid var(--line);border-radius:var(--r-md);overflow-x:auto;background:var(--surface)}.console-root .wb-times{display:flex;flex-direction:column;border-right:1px solid var(--line)}.console-root .wb-corner{height:44px;border-bottom:1px solid var(--line)}.console-root .wb-tlab{font-size:10.5px;text-align:right;padding-right:5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;border-bottom:1px solid var(--grid,#f1f3f6);transform:translateY(-6px)}.console-root .wb-day{border-right:1px solid var(--line);position:relative}.console-root .wb-day:last-child{border-right:none}.console-root .wb-day.today{background:linear-gradient(180deg,var(--signal-wash) 0 44px,transparent 44px)}.console-root .wb-dh{height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-bottom:1px solid var(--line);gap:0;position:-webkit-sticky;position:sticky;top:0;background:var(--surface);z-index:2}.console-root .wb-dh-wd{font-size:11px;color:var(--ink-3)}.console-root .wb-dh-d{font-size:15px;font-weight:700;color:var(--ink);line-height:1.1}.console-root .wb-dh.wknd .wb-dh-wd{color:var(--info)}.console-root .wb-dh.holi .wb-dh-d,.console-root .wb-dh.holi .wb-dh-wd{color:var(--crit)}.console-root .wb-dh-h{font-size:8.5px;color:var(--crit);margin-top:1px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .wb-col{position:relative}.console-root .wb-cell{display:block;width:100%;padding:0;border:none;border-bottom:1px solid var(--grid,#f1f3f6);background:transparent;cursor:pointer;position:relative}.console-root .wb-cell:nth-child(2n){border-bottom-color:var(--line)}.console-root .wb-plus{position:absolute;inset:0;display:grid;place-items:center;font-size:16px;color:var(--ink-3);opacity:0;transition:opacity .12s}.console-root .wb-cell:active .wb-plus,.console-root .wb-cell:hover .wb-plus{opacity:.5}.console-root .wb-cell.placing{background:var(--signal-wash)}.console-root .wb-cell.placing .wb-plus{opacity:.7;color:var(--signal-ink)}.console-root .wb-unavail{position:absolute;left:2px;right:2px;border-radius:6px;z-index:1;background:repeating-linear-gradient(45deg,#EEF0F3,#EEF0F3 5px,#E6E9ED 0,#E6E9ED 10px);pointer-events:none;display:flex;align-items:center;justify-content:center}.console-root .wb-unavail span{font-size:10px;color:var(--ink-3);font-weight:600}.console-root .wb-sess{position:absolute;left:2px;right:2px;border-radius:7px;padding:3px 5px;z-index:3;cursor:pointer;flex-direction:column;gap:1px}.console-root .wb-sess.recur{border-color:#CBDCFB}.console-root .wb-sess.makeup{border-color:#F5D9A6}.console-root .wb-sess.expired{background:repeating-linear-gradient(45deg,#FBECEC,#FBECEC 5px,#F7E0E0 0,#F7E0E0 10px)}.console-root .wb-sess.past{opacity:.5}.console-root .wb-sess-t{font-size:9.5px;color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1}.console-root .wb-sess-n{font-size:12px;line-height:1.15}.console-root .wb-sess-tags{display:flex;flex-wrap:wrap;gap:3px;margin-top:1px}.console-root .wb-tag{font-size:8.5px;font-weight:700;padding:1px 5px;border-radius:999px;line-height:1.4}.console-root .wb-tag.rc{background:#DCE8FF;color:#2E56C6}.console-root .wb-tag.mk{background:#FCE7C4;color:#A66A11}.console-root .wb-tag.ex{background:#F6D6D6;color:var(--crit)}.console-root .wb-tag.wn{background:#FBEBD0;color:var(--warn)}.console-root .wb-tag.once{background:var(--signal);color:var(--signal-ink)}.console-root .wb-hint{font-size:11.5px;color:var(--ink-3);text-align:center;margin:2px 0 0}.console-root .wb-hint b{color:var(--ink-2)}.console-root .wb-book{display:flex;flex-direction:column;gap:8px;padding:2px 0 4px}.console-root .wb-book-lab{font-size:12px;font-weight:700;color:var(--ink-2);margin-top:6px}.console-root .wb-repeat{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);cursor:pointer}.console-root .wb-repeat input{margin-top:2px;width:18px;height:18px;accent-color:var(--signal-deep)}.console-root .wb-repeat span{display:flex;flex-direction:column;gap:2px;font-size:12px;color:var(--ink-3)}.console-root .wb-repeat b{font-size:13.5px;color:var(--ink)}.console-root .wb-search{padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);font-size:14px}.console-root .wb-mlist{display:flex;flex-direction:column;gap:4px;max-height:260px;overflow-y:auto}.console-root .wb-mrow{display:flex;align-items:center;justify-content:space-between;padding:11px 13px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);font-size:14px;color:var(--ink);cursor:pointer}.console-root .wb-mrow.on{border-color:var(--signal-deep);background:var(--signal-wash);font-weight:700}.console-root .wb-mck{color:var(--good);font-weight:650}.console-root .wb-movechoice{display:flex;flex-direction:column;gap:8px;padding:4px 0}.console-root .wb-movechoice button{display:flex;flex-direction:column;gap:2px;text-align:left;padding:14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);cursor:pointer}.console-root .wb-movechoice button:hover{border-color:var(--ink-3)}.console-root .wb-movechoice b{font-size:14px;color:var(--ink)}.console-root .wb-movechoice span{font-size:12px;color:var(--ink-3)}.console-root .wb-sd{display:flex;flex-direction:column;gap:12px;padding:2px 0 6px}.console-root .wb-sd-tags{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.console-root .wb-sd-room{font-size:12px;color:var(--ink-3)}.console-root .wb-passline{font-size:13px;line-height:1.5;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);padding:11px 13px}.console-root .wb-passline b{color:var(--ink)}.console-root .wb-passline.wn{background:var(--warn-bg);border-color:#F0DEB0;color:var(--warn)}.console-root .wb-passline.wn b{color:var(--warn)}.console-root .wb-passline.ex{background:var(--crit-bg);border-color:#F0C9C9;color:var(--crit)}.console-root .wb-passline.ex b{color:var(--crit)}.console-root .wb-sd-acts{display:flex;gap:8px;flex-wrap:wrap}.console-root .wb-act{flex:1 1;min-width:90px;padding:12px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);font-size:14px;font-weight:600;color:var(--ink);cursor:pointer}.console-root .wb-act.pay{background:var(--signal);color:var(--signal-ink);border-color:transparent}.console-root .wb-act.danger{color:var(--crit);border-color:#F0C9C9}.console-root .wb-prods{display:flex;flex-direction:column;gap:6px}.console-root .wb-prod{display:flex;flex-direction:column;gap:2px;align-items:flex-start;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);cursor:pointer}.console-root .wb-prod.on{border-color:var(--signal-deep);background:var(--signal-wash)}.console-root .wb-prod b{font-size:14px;color:var(--ink)}.console-root .wb-prod span{font-size:12px;color:var(--ink-3)}.console-root .wb-head{gap:8px}.console-root .wb-vseg{display:inline-flex;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-pill);padding:3px}.console-root .wb-vseg button{border:none;background:none;font-size:13px;font-weight:600;color:var(--ink-2);padding:6px 16px;border-radius:var(--r-pill);cursor:pointer}.console-root .wb-vseg button.on{background:var(--ink);color:#fff}.console-root .wb-head .wb-tsel{margin-left:auto;width:auto;min-width:150px}.console-root .wb-grid{grid-template-columns:38px repeat(7,minmax(0,1fr));overflow:visible;touch-action:pan-y}.console-root .wb-tlab{font-size:9.5px;transform:translateY(-5px);padding-right:3px;color:var(--ink-3);white-space:nowrap}.console-root .wb-tlab.hour{color:var(--ink-2);font-weight:600}.console-root .wb-corner,.console-root .wb-dh{height:42px}.console-root .wb-dh-d{font-size:13.5px}.console-root .wb-dh-wd{font-size:10px}.console-root .wb-cell{border-bottom:1px solid #eef1f4}.console-root .wb-cell.hour{border-bottom:1px solid var(--line-strong)}.console-root .wb-plus{font-size:13px}.console-root .wb-sess{padding:0 4px;display:flex;align-items:center;gap:3px;border-radius:6px;border:1px solid transparent;border-left-width:3px;touch-action:none;overflow:hidden}.console-root .wb-sess-main{flex:1 1;min-width:0;display:flex;flex-direction:column;justify-content:center}.console-root .wb-sess-r{font-size:9px;font-weight:700;color:var(--ink-3);line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.console-root .wb-day-room{font-style:normal;margin-left:6px;font-size:10.5px;font-weight:700;color:var(--ink-3)}.console-root .wb-sess.recur{background:#EAF1FF;border-color:#CBDCFB #CBDCFB #CBDCFB #5b86e0}.console-root .wb-sess.once{background:var(--signal-wash);border-color:var(--signal-deep);border-left-color:var(--signal-deep)}.console-root .wb-sess.makeup{background:#FFF3E0;border-color:#F5D9A6 #F5D9A6 #F5D9A6 #E9a53a}.console-root .wb-sess.expired{background:repeating-linear-gradient(45deg,#FBECEC,#FBECEC 4px,#F6DEDE 0,#F6DEDE 8px);border-color:#F0C9C9;border-left-color:var(--crit)}.console-root .wb-sess.past{opacity:.48}.console-root .wb-sess-n{font-size:11px;font-weight:700;color:var(--ink);line-height:1.1;flex:1 1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.console-root .wb-sess .wb-dot{width:6px;height:6px;border-radius:50%;flex:none}.console-root .wb-sess .wb-dot.mk{background:#E9a53a}.console-root .wb-sess.checked,.console-root .wb-sess.missed{opacity:1}.console-root .wb-sess .wb-miss{font-size:9.5px;font-weight:650;line-height:1;color:var(--crit);background:var(--crit-bg);border-radius:4px;padding:2px 4px;align-self:flex-start;flex:none}.console-root .wb-sess .wb-mark{width:7px;height:7px;border-radius:50%;flex:none}.console-root .wb-sess .wb-mark.ok{background:var(--good)}.console-root .wb-cell.heat{display:grid;place-items:center}.console-root .wb-heatn{font-size:10px;font-weight:700;color:var(--ink-3)}.console-root .wb-cell.heat.h3{background:#EAF7EE}.console-root .wb-cell.heat.h3 .wb-heatn{color:var(--good)}.console-root .wb-cell.heat.h2{background:#F3F9EC}.console-root .wb-cell.heat.h2 .wb-heatn{color:#6f9021}.console-root .wb-cell.heat.h1{background:#FBF3DE}.console-root .wb-cell.heat.h1 .wb-heatn{color:var(--warn)}.console-root .wb-cell.heat.h0{background:#FBE4E4}.console-root .wb-cell.heat.h0 .wb-heatn{color:var(--crit)}.console-root .wb-cell.heat .wb-plus{display:none}.console-root .wb-grid.dragging .wb-sess,.console-root .wb-grid.dragging .wb-unavail{pointer-events:none}.console-root .wb-cell.drop-ok{background:rgba(180,222,58,.35);box-shadow:inset 0 0 0 2px var(--signal-deep)}.console-root .wb-cell.drop-no{background:rgba(210,59,59,.12);box-shadow:inset 0 0 0 2px #E9a3a3}.console-root .wb-ghost{position:fixed;z-index:1000;pointer-events:none;transform:translate(-50%,-120%)}.console-root .wb-ghost-in{display:inline-block;padding:5px 10px;border-radius:8px;font-size:12px;font-weight:700;background:var(--ink);color:#fff;box-shadow:var(--shadow-pop);white-space:nowrap}.console-root .wb-ghost-in.ok{background:var(--signal-deep);color:var(--signal-ink)}.console-root .wb-ghost-in.no{background:var(--crit)}.console-root .wb-month{display:flex;flex-direction:column;gap:10px}.console-root .wb-mgrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:4px;gap:4px}.console-root .wb-mwd{text-align:center;font-size:11px;color:var(--ink-3);padding:2px 0}.console-root .wb-mwd.wknd{color:var(--info)}.console-root .wb-mcell{min-height:112px;min-width:0;position:relative;border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:8px;display:flex;flex-direction:column;gap:4px;cursor:pointer;text-align:left;overflow:hidden}.console-root .wb-mcell.empty{border:none;background:transparent;cursor:default}.console-root .wb-mcell.today{border-color:var(--signal-deep);background:var(--signal-wash)}.console-root .wb-mcell.holi .wb-md{color:var(--crit)}.console-root .wb-md{font-size:12.5px;font-weight:700;color:var(--ink)}.console-root .wb-mc{position:absolute;top:8px;right:8px;font-size:10.5px;font-weight:600;color:var(--ink-2);background:var(--surface-2);border-radius:5px;padding:1px 5px}.console-root .wb-mh{font-size:9px;color:var(--crit);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .wb-month-entries{display:flex;flex-direction:column;gap:4px;width:100%}.console-root .wb-month-entry{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--ink);background:var(--surface-2);border-radius:4px;padding:3px 4px}.console-root .wb-month-entry time{font-size:10px;color:var(--ink-3);flex:none;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .wb-month-entry>span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.console-root .wb-month-entry small{flex:none;font-size:9px;color:var(--ink-3);border:1px solid var(--line);border-radius:3px;padding:0 3px}.console-root .wb-month-more{font-size:10px;color:var(--ink-3)}.console-root .wb-month-legend{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 12px;font-size:12px;color:var(--ink-2)}.console-root .wb-month-legend>span{display:flex;align-items:center;flex-wrap:wrap;gap:4px 6px}.console-root .wb-month-legend>span:first-child{color:var(--ink)}.console-root .wb-month-legend b{font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .wb-month-legend i{width:10px;height:10px;border-radius:3px;flex:none}.console-root .wb-month-legend i.lg-lesson{background:var(--signal)}.console-root .wb-month-legend i.lg-attended{background:var(--ink);margin-left:4px}.console-root .wb-month-legend i.lg-missed{background:var(--surface);border:1px dashed var(--ink-3);margin-left:4px}.console-root .wb-member-month .wb-mcell.today{background:var(--surface);border-color:var(--ink-2)}.console-root .wb-member-month .wb-mcell.today .wb-md{text-decoration:underline;text-underline-offset:4px}.console-root .wb-member-month .wb-mcell.has-lesson{border-color:var(--signal-deep)}.console-root .wb-member-month .wb-mc.st-planned{background:var(--signal);color:var(--signal-ink)}.console-root .wb-member-month .wb-mc.st-attended{background:var(--ink);color:#fff}.console-root .wb-member-month .wb-mc.st-missed{background:var(--surface);color:var(--ink-3);border:1px dashed var(--ink-3)}.console-root .wb-month-entry.st-missed{background:transparent;color:var(--ink-3);border:1px dashed var(--line)}.console-root .wb-month-entry.st-missed time{text-decoration:line-through}.console-root .wb-month-entry.st-attended{background:var(--ink);color:#fff}.console-root .wb-month-entry.st-attended time{color:rgba(255,255,255,.75)}.console-root .wb-member-agenda li.st-missed :is(.wb-agenda-date,.wb-agenda-detail){color:var(--ink-3)}.console-root .wb-member-agenda li.st-missed .wb-agenda-detail time{text-decoration:line-through}.console-root .wb-member-agenda li.st-attended .wb-agenda-kind{color:var(--ink);font-weight:600}.console-root .wb-member-agenda li.st-pending .wb-agenda-kind{color:var(--warn)}.console-root .wb-base-off{font-size:10px;color:var(--ink-3)}.console-root .wb-member-agenda{margin-top:6px}.console-root .wb-agenda-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0 12px}.console-root .wb-agenda-heading h3{margin:0;font-size:15px;font-weight:600}.console-root .wb-agenda-heading h3 span,.console-root .wb-agenda-heading>span{font-size:12px;color:var(--ink-2);font-weight:400}.console-root .wb-member-agenda ol{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.console-root .wb-member-agenda li{border-bottom:1px solid var(--line)}.console-root .wb-member-agenda li button{width:100%;min-height:64px;display:flex;align-items:center;gap:16px;padding:10px 6px;border:0;background:transparent;text-align:left;color:var(--ink);cursor:pointer}.console-root .wb-member-agenda li button:hover{background:var(--surface-2)}.console-root .wb-agenda-date{display:flex;align-items:baseline;gap:7px;min-width:68px}.console-root .wb-agenda-date b{font-size:20px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .wb-agenda-date span,.console-root .wb-agenda-detail>span,.console-root .wb-agenda-kind{font-size:12px;color:var(--ink-2)}.console-root .wb-agenda-detail{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.console-root .wb-agenda-detail time{font-size:14px;font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .wb-agenda-kind{white-space:nowrap}.console-root .wb-agenda-empty{font-size:13px;color:var(--ink-2);line-height:1.7;padding:16px 0}@media (min-width:1100px){.console-root .wb-member-month{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);grid-column-gap:28px;column-gap:28px;align-items:start}.console-root .wb-member-month>:is(.wb-nav,.wb-month-legend,.err,.schedule-loading){grid-column:1/-1}.console-root .wb-member-month .wb-mcell{min-height:72px}.console-root .wb-member-agenda{margin-top:0}.console-root .wb-member-agenda .wb-agenda-heading{padding-top:0}}.console-root .schedule-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;font-size:13px;color:var(--ink-3)}.console-root .rgrid-free:disabled{color:var(--ink-3);background:var(--surface-2);cursor:default;opacity:.55}@media (max-width:768px){.console-root .wb-mcell{padding:5px 3px;min-height:80px;border-radius:6px}.console-root .wb-mc{position:static;align-self:flex-start;font-size:10px}.console-root .wb-month-entries{display:none}.console-root .wb-member-month .wb-mcell{min-height:60px}}.console-root .wb-slot{display:flex;flex-direction:column;gap:6px;padding:2px 0 6px}.console-root .wb-slot-sum{font-size:13px;font-weight:700;color:var(--ink);padding:4px 0 6px}.console-root .wb-slot-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);font-size:13.5px}.console-root .wb-slot-row.open{border-color:#BCE3CC;background:var(--good-bg)}.console-root .wb-slot-st{font-size:11.5px;color:var(--ink-3)}.console-root .wb-slot-row.open .wb-slot-st{color:var(--good)}.console-root .wb-sd-tip{font-size:12px;color:var(--ink-3);margin:2px 0 0}.console-root .wb-tpills{display:flex;gap:6px;overflow-x:auto;padding:1px 1px 2px;-webkit-overflow-scrolling:touch}.console-root .wb-tpills button{flex:none;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);font-size:12.5px;font-weight:600;padding:7px 13px;border-radius:var(--r-pill);cursor:pointer;white-space:nowrap}.console-root .wb-tpills button.on{background:var(--ink);color:#fff;border-color:var(--ink)}.console-root .wb-daysheet{display:flex;flex-direction:column;gap:10px;padding:2px 0 6px}.console-root .wb-day-empty{font-size:13.5px;color:var(--ink-3);text-align:center;padding:14px 0}.console-root .wb-day-list{display:flex;flex-direction:column;gap:6px}.console-root .wb-day-row{display:flex;align-items:center;gap:10px;padding:11px 13px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);text-align:left;cursor:pointer}.console-root .wb-day-t{font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink-3);flex:none;width:92px}.console-root .wb-day-n{font-size:14px;font-weight:700;color:var(--ink);flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .wb-day-tag{font-size:11px;font-weight:600;color:var(--ink-3);flex:none}.console-root .wb-day-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(58px,1fr));grid-gap:6px;gap:6px}.console-root .wb-day-slot{padding:9px 0;border:1px solid var(--line);border-radius:9px;background:var(--surface-2);font-size:12.5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink-2);cursor:pointer}.console-root .wb-day-slot:hover{border-color:var(--signal-deep);color:var(--ink)}.console-root .wb-day-slot.shared{display:flex;flex-direction:column;align-items:center;gap:1px;line-height:1.15}.console-root .wb-day-slot.shared small{font-size:10.5px;color:var(--ink-3);font-weight:600}.console-root .wb-head{display:flex;align-items:center;gap:10px}.console-root .wb-tselect{position:relative;margin-left:auto;display:inline-flex;align-items:center}.console-root .wb-tselect select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-size:13px;font-weight:600;padding:9px 34px 9px 14px;border-radius:var(--r-pill);cursor:pointer;box-shadow:var(--shadow-card);min-width:150px}.console-root .wb-tselect select:focus{outline:none;border-color:var(--ink-3)}.console-root .wb-tselect svg{position:absolute;right:12px;width:15px;height:15px;color:var(--ink-3);pointer-events:none}.console-root .wb-guide{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;padding:9px 13px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md)}.console-root .wb-legend{display:flex;gap:12px}.console-root .wb-legend span{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--ink-2)}.console-root .wb-legend i.lg{width:11px;height:11px;border-radius:3px;flex:none}.console-root .wb-legend i.recur{background:#EAF1FF;border:1px solid #cbdcfb;border-left:3px solid #5b86e0}.console-root .wb-legend i.once{background:var(--signal-wash);border-left:1px solid var(--signal-deep);border:1px solid var(--signal-deep);border-left-width:3px}.console-root .wb-legend i.ok{width:9px;height:9px;border-radius:50%;background:var(--good)}.console-root .wb-legend .lg-miss{font-style:normal;font-size:9.5px;font-weight:650;color:var(--crit);background:var(--crit-bg);border-radius:4px;padding:2px 5px}.console-root .wb-legend{flex-wrap:wrap;row-gap:5px}.console-root .wb-guide-ops{font-size:11.5px;color:var(--ink-3);margin-left:auto}.console-root .wb-guide-ops b{color:var(--ink-2);font-weight:700}.console-root .wb-tsel2{position:relative;margin-left:auto}.console-root .wb-tsel2-btn{display:flex;align-items:center;gap:8px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-size:13px;font-weight:600;padding:9px 12px 9px 16px;border-radius:var(--r-pill);box-shadow:var(--shadow-card);cursor:pointer}.console-root .wb-tsel2-btn svg{width:15px;height:15px;color:var(--ink-3);transition:transform .18s}.console-root .wb-tsel2-btn svg.up{transform:rotate(180deg)}.console-root .wb-tsel2-list{position:absolute;right:0;top:calc(100% + 6px);z-index:40;min-width:190px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-pop);padding:6px;display:flex;flex-direction:column;gap:2px}.console-root .wb-tsel2-list button{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:none;background:none;border-radius:9px;font-size:13.5px;color:var(--ink-2);cursor:pointer;text-align:left;white-space:nowrap}.console-root .wb-tsel2-list button:hover{background:var(--surface-2);color:var(--ink)}.console-root .wb-tsel2-list button.on{background:var(--signal-wash);color:var(--ink);font-weight:700}.console-root .wb-tsel2-list button svg{width:15px;height:15px;color:var(--signal-deep);flex:none}.console-root .wb-slot-sec{font-size:11.5px;font-weight:700;color:var(--ink-3);margin:12px 2px 3px;display:flex;align-items:center;gap:6px}.console-root .wb-slot-sec em{font-style:normal;font-weight:500;color:var(--ink-3);font-size:11px}.console-root .wb-slot-row.sess{width:100%;cursor:pointer;background:#F4F7FF;border-color:#D5E0F8}.console-root .wb-slot-row.sess:hover{border-color:#5b86e0}.console-root .wb-slot-si{font-size:12px;color:#2E56C6;font-weight:600}.console-root .wb-slot-row.off{opacity:.9}.console-root .wb-slot-row.off .wb-slot-st{color:var(--crit)}.console-root .wb-guide.heat-guide{justify-content:center}.console-root .wb-guide.heat-guide .wb-guide-ops{margin:0}.console-root .wb-passnote{font-size:12.5px;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);padding:10px 12px;margin-top:8px}.console-root .wb-passnote b{color:var(--ink)}.console-root .wb-passnote.soft{background:var(--warn-bg);border-color:#F0DEB0;color:var(--warn)}.console-root .wb-passnote.soft b{color:var(--warn)}.console-root .wb-passnote.warn{background:var(--crit-bg);border-color:#F0C9C9;color:var(--crit)}.console-root .wb-passnote.warn b{color:var(--crit)}.console-root .stu-top{gap:12px}.console-root .stu-hi{flex:1 1;min-width:0;padding-right:4px}.console-root .stu-greet{line-height:1.15}.console-root .stu-aca{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.console-root .stu-logout{flex:none}.console-root .stu-up{display:flex;flex-direction:column;gap:8px}.console-root .stu-up-row{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:11px 14px;box-shadow:var(--shadow-card)}.console-root .stu-up-row.prac{background:linear-gradient(140deg,var(--signal-wash),var(--surface));border-color:var(--signal)}.console-root .stu-up-date{flex:none;width:46px;text-align:center}.console-root .stu-up-date b{display:block;font-size:15px;font-weight:650}.console-root .stu-up-date span{font-size:11px;color:var(--ink-3)}.console-root .stu-up-m{flex:1 1;min-width:0}.console-root .stu-up-t{font-size:14px;font-weight:700}.console-root .stu-up-s{display:flex;align-items:center;gap:6px;margin-top:3px}.console-root .stu-tag{font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:999px}.console-root .stu-tag.session{background:#E4ECFD;color:#2E56C6}.console-root .stu-tag.practice{background:var(--signal-wash);color:var(--signal-ink);border:1px solid var(--signal-deep)}.console-root .stu-tag.rc{background:var(--surface-2);color:var(--ink-2);border:1px solid var(--line)}.console-root .stu-up-tc{font-size:12px;color:var(--ink-3)}.console-root .stu-up-x{flex:none;font-size:12px;font-weight:600;color:var(--crit);background:none;border:1px solid #f0c9c9;border-radius:999px;padding:6px 12px}.console-root .wb-sess.practice{background:#EAF7EE;border-color:#BCE3CC;border-left:3px solid var(--good)}.console-root .wb-tag.prac{background:#E1F3E7;color:var(--good)}.console-root .metagrid{display:flex;flex-wrap:wrap;gap:8px}.console-root .metagrid-item{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 4px);min-width:132px;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:10px 13px;display:flex;flex-direction:column;gap:3px}.console-root .metagrid-k{font-size:11px;color:var(--ink-3);font-weight:600}.console-root .metagrid-v{color:var(--ink);font-weight:700;word-break:break-all}.console-root .metagrid-v.empty{color:var(--ink-3);font-weight:500}.console-root .mdet-roomstat{display:flex;gap:8px}.console-root .mdet-rs-item{flex:1 1;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px;text-align:center;box-shadow:var(--shadow-card)}.console-root .mdet-rs-item span{display:block;font-size:11px;color:var(--ink-3);margin-bottom:4px}.console-root .mdet-rs-item b{font-size:19px;font-weight:650;color:var(--ink)}.console-root .mdet-rs-item b em{font-style:normal;font-size:12px;font-weight:600;color:var(--ink-3);margin-left:2px}.console-root .shr-kind{font-size:10.5px;font-weight:700;padding:1px 7px;border-radius:999px;margin-right:2px}.console-root .shr-kind.session{background:#E4ECFD;color:#2E56C6}.console-root .shr-kind.practice{background:#E1F3E7;color:var(--good)}.console-root .notic{display:flex;flex-direction:column;gap:8px;padding:2px 0 8px}.console-root .notic-empty{text-align:center;color:var(--ink-3);font-size:13.5px;padding:26px 0}.console-root .notic-row{display:flex;align-items:flex-start;gap:11px;background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:12px 14px}.console-root .notic-row.urgent{background:var(--signal-wash);border-color:var(--signal-deep)}.console-root .notic-ic{flex:none;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--surface-2);color:var(--ink-2);border:1px solid var(--line)}.console-root .notic-ic svg{width:17px;height:17px}.console-root .notic-row.urgent .notic-ic{background:var(--signal);color:var(--signal-ink);border-color:var(--signal-deep)}.console-root .notic-m{flex:1 1;min-width:0}.console-root .notic-t{font-size:14px;font-weight:700;color:var(--ink)}.console-root .notic-b{font-size:12.5px;color:var(--ink-2);margin-top:2px;line-height:1.5}.console-root .notic-at{flex:none;font-size:11px;color:var(--ink-3)}.console-root .stu-bell{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;color:var(--ink-3);border:1px solid var(--line);background:var(--surface)}.console-root .stu-bell svg{width:18px;height:18px}.console-root .rsv-quota{display:flex;flex-direction:column;gap:2px;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:10px 13px;color:var(--ink-2);word-break:keep-all;overflow-wrap:anywhere}.console-root .rsv-quota-t{font-size:13px;line-height:1.35}.console-root .rsv-quota-t b{font-size:15px;font-weight:650;color:var(--ink)}.console-root .rsv-quota-s{font-size:11.5px;color:var(--ink-3);line-height:1.3}.console-root .rsv-quota.full{background:var(--crit-bg);border-color:#F0C9C9;color:var(--crit)}.console-root .rsv-quota.full .rsv-quota-t b{color:var(--crit)}.console-root .rsv-quota.full .rsv-quota-s{color:#B4696A}.console-root .rsv-none{font-size:12.5px;color:var(--ink-3);background:var(--surface-2);border:1px dashed var(--line-strong);border-radius:12px;padding:12px 13px;word-break:keep-all;line-height:1.45}.console-root .rsv-hint2{font-size:12px;color:var(--warn);margin-top:2px;line-height:1.4;word-break:keep-all;overflow-wrap:anywhere}.console-root .mlogin-hint,.console-root .rsv,.console-root .rsv-hint,.console-root .rsv-lab,.console-root .ssv-note,.console-root .ssv-tip,.console-root .stu-empty{word-break:keep-all}.console-root .tv-retire{display:flex;flex-direction:column;gap:12px}.console-root .tv-retire-links{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:8px;gap:8px}.console-root .tv-retire-links span{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:12.5px;color:var(--ink-2);display:flex;justify-content:space-between}.console-root .tv-retire-links b{color:var(--ink);font-weight:650}.console-root .tv-retire-note{font-size:12.5px;line-height:1.6;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:11px 13px;margin:0}.console-root .tv-retire-note b{color:var(--ink)}.console-root .payreq{display:flex;flex-direction:column;align-items:center;gap:14px;padding:6px 0 8px}.console-root .payreq-note{font-size:13px;line-height:1.6;color:var(--ink-2);text-align:center}.console-root .payreq-note b{color:var(--ink)}.console-root .payreq-qr{width:200px;height:200px;border:1px solid var(--line);border-radius:14px;padding:8px;background:#fff}.console-root .payreq-link{display:flex;gap:8px;width:100%}.console-root .payreq-link input{flex:1 1;min-width:0;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);font-size:12.5px;color:var(--ink-2)}.console-root .payreq-link button{flex:none;padding:0 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-size:13px;font-weight:600}.console-root .payreq-open{width:100%;padding:12px;border:none;border-radius:12px;background:var(--ink);color:#fff;font-size:14px;font-weight:600}.console-root .wb-book-hint{font-size:11px;font-weight:500;color:var(--ink-3)}.console-root .wb-rooms{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-gap:6px;gap:6px}.console-root .wb-room{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:9px 12px;border:1px solid var(--line);border-radius:11px;background:var(--surface);font-size:13.5px;font-weight:700;color:var(--ink);cursor:pointer;text-align:left}.console-root .wb-room em{font-style:normal;font-size:11px;font-weight:500;color:var(--ink-3)}.console-root .wb-room em.ok{color:var(--good)}.console-root .wb-room.on{border-color:var(--signal-deep);background:var(--signal-wash)}.console-root .wb-room.busy{opacity:.55;cursor:not-allowed;background:var(--surface-2)}.console-root .wb-room.busy em{color:var(--crit)}.console-root .chip.warn{background:var(--warn-bg);color:var(--warn)}.console-root .chip.warn i{background:var(--warn)}.console-root .collect{display:flex;flex-direction:column;gap:20px}.console-root .col-sec{display:flex;flex-direction:column;gap:11px}.console-root .col-h{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.console-root .col-h h3{font-size:15.5px;font-weight:650;color:var(--ink);letter-spacing:-.01em}.console-root .col-h-note{font-size:11.5px;color:var(--ink-3);font-weight:500}.console-root .col-kpis{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.console-root .col-kpi{padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.console-root .col-kpi.hot{border-color:#EAD9AE;background:linear-gradient(165deg,var(--warn-bg),var(--surface) 72%)}.console-root .col-kpi.warn{border-color:#E7DBB2;background:linear-gradient(165deg,#FCF6E6,var(--surface) 72%)}.console-root .col-kpi-k{font-size:12px;font-weight:600;color:var(--ink-2)}.console-root .col-kpi-v{font-size:27px;font-weight:650;color:var(--ink);letter-spacing:-.02em;line-height:1.15;margin-top:3px}.console-root .col-kpi-v small{font-size:13px;font-weight:600;color:var(--ink-3)}.console-root .col-kpi-s{font-size:11.5px;font-weight:600;color:var(--ink-3);margin-top:2px}.console-root .col-pends{display:flex;flex-direction:column;gap:9px}.console-root .col-pend{padding:13px 15px;border:1px solid #ebdcb6;background:linear-gradient(180deg,var(--warn-bg),var(--surface) 62%);border-radius:15px}.console-root .col-pend-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.console-root .col-pend-main{min-width:0}.console-root .col-pend-name{font-size:15px;font-weight:600;color:var(--ink)}.console-root .col-pend-sub{font-size:12px;color:var(--ink-2);margin-top:2px}.console-root .col-pend-amt{font-family:var(--f-mono);font-weight:650;font-size:15px;color:var(--ink);flex-shrink:0}.console-root .col-pend-act{display:flex;gap:8px;margin-top:11px}.console-root .col-pend-act .col-btn{flex:1 1}.console-root .col-btn{padding:10px 16px;border-radius:11px;font-size:13.5px;font-weight:700;cursor:pointer;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink)}.console-root .col-btn.ok{flex:1.7 1;background:var(--signal);border-color:var(--signal-deep);color:var(--signal-ink)}.console-root .col-btn.ghost{color:var(--ink-2)}.console-root .col-btn:disabled{opacity:.5;cursor:default}.console-root .col-relist{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface)}.console-root .col-re{display:flex;align-items:center;gap:12px;padding:12px 14px;text-align:left;background:none;border:none;border-bottom:1px solid var(--line);cursor:pointer;width:100%}.console-root .col-re:last-child{border-bottom:none}.console-root .col-re:hover{background:var(--surface-2)}.console-root .col-re-badge{flex-shrink:0;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-size:13px;font-weight:650;background:var(--warn-bg);color:var(--warn);font-family:var(--f-mono)}.console-root .col-re-badge.none{background:var(--crit-bg);color:var(--crit);font-family:var(--f-sans);font-size:12px}.console-root .col-re-m{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px}.console-root .col-re-name{font-size:14.5px;font-weight:600;color:var(--ink)}.console-root .col-re-sub{font-size:11.5px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .col-re-cta{flex-shrink:0;display:inline-flex;align-items:center;gap:1px;font-size:12px;font-weight:700;color:var(--signal-ink);background:var(--signal-wash);border:1px solid #ddeea6;padding:5px 8px 5px 11px;border-radius:var(--r-pill)}.console-root .col-re-cta svg{width:14px;height:14px}.console-root .col-ledger{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface)}.console-root .col-row{display:grid;grid-template-columns:38px 1fr auto;align-items:center;grid-gap:10px;gap:10px;padding:11px 14px;text-align:left;background:none;border:none;border-bottom:1px solid var(--line);cursor:pointer;width:100%}.console-root .col-row:last-child{border-bottom:none}.console-root .col-row:hover{background:var(--surface-2)}.console-root .col-row-d{font-family:var(--f-mono);font-size:11.5px;color:var(--ink-3);font-weight:600}.console-root .col-row-m{min-width:0;display:flex;flex-direction:column;gap:1px}.console-root .col-row-name{font-size:13.5px;font-weight:700;color:var(--ink)}.console-root .col-row-sub{font-size:11.5px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .col-row-r{display:flex;align-items:center;gap:9px;flex-shrink:0}.console-root .col-row-amt{font-family:var(--f-mono);font-size:13px;font-weight:700;color:var(--ink);min-width:62px;text-align:right}.console-root .col-row-amt.cx{color:var(--ink-3);text-decoration:line-through}.console-root .col-empty{display:flex;flex-direction:column;gap:3px;padding:22px 16px;text-align:center;border:1px dashed var(--line-strong);border-radius:16px;background:var(--surface-2)}.console-root .col-empty b{font-size:13.5px;font-weight:700;color:var(--ink-2)}.console-root .col-empty span{font-size:12px;color:var(--ink-3)}.console-root .perf{display:flex;flex-direction:column;gap:16px}.console-root .perf-hero{padding:18px 18px 16px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(165deg,#F3F6EE,var(--surface) 70%)}.console-root .ph-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.console-root .ph-k{font-size:12.5px;font-weight:700;color:var(--ink-2)}.console-root .ph-growth{font-size:11.5px;font-weight:700;color:var(--good);background:var(--good-bg);padding:3px 9px;border-radius:var(--r-pill)}.console-root .ph-growth.neg{color:var(--crit);background:var(--crit-bg)}.console-root .ph-net{font-size:32px;font-weight:650;letter-spacing:-.03em;color:var(--good);line-height:1.1;margin:6px 0 12px;font-family:var(--f-mono)}.console-root .pmf-net.zero,.console-root .pmrow-net.zero{color:var(--ink-3)}.console-root .ph-bar{display:flex;height:12px;border-radius:7px;overflow:hidden;background:var(--surface-2)}.console-root .ph-bar .rev{background:var(--good)}.console-root .ph-bar .exp{background:#C4CBD4}.console-root .ph-legend{display:flex;gap:16px;margin-top:9px}.console-root .ph-legend span{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-2);font-weight:500}.console-root .ph-legend b{font-family:var(--f-mono);color:var(--ink);font-weight:700}.console-root .ph-legend i{width:9px;height:9px;border-radius:3px}.console-root .ph-legend .rev{background:var(--good)}.console-root .ph-legend .exp{background:#C4CBD4}.console-root .pm-rows{display:flex;flex-direction:column;gap:4px;padding:6px}.console-root .pmrow{display:grid;grid-template-columns:34px 1fr auto;align-items:center;grid-gap:10px;gap:10px;padding:7px 8px;border-radius:10px}.console-root .pmrow:hover{background:var(--surface-2)}.console-root .pmrow-mo{font-size:12px;font-weight:700;color:var(--ink-2)}.console-root .pmrow-bars{display:flex;flex-direction:column;gap:3px}.console-root .pmb-track{height:7px;border-radius:4px;background:var(--surface-2);overflow:hidden}.console-root .pmb{display:block;height:100%;border-radius:4px}.console-root .pmb.rev{background:var(--good)}.console-root .pmb.exp{background:#C7CDD6}.console-root .pmrow-net{font-family:var(--f-mono);font-size:13px;font-weight:700;color:var(--good);min-width:58px;text-align:right}.console-root .pmrow-net.neg{color:var(--crit)}.console-root .pm-foot{display:flex;align-items:center;gap:10px;padding:12px 15px;border-top:1px solid var(--line)}.console-root .pmf-k{font-size:12.5px;font-weight:650;color:var(--ink)}.console-root .pmf-sub{font-size:11.5px;color:var(--ink-3);font-weight:500}.console-root .pmf-net{margin-left:auto;font-family:var(--f-mono);font-size:15px;font-weight:650;color:var(--good)}.console-root .pmf-net.neg{color:var(--crit)}.console-root .perf-teachers{display:flex;flex-direction:column;gap:2px;padding:8px}.console-root .pt-row{display:grid;grid-template-columns:78px 1fr auto auto;align-items:center;grid-gap:10px;gap:10px;padding:7px 8px;border-radius:10px}.console-root .pt-row:hover{background:var(--surface-2)}.console-root .pt-name{font-size:13px;font-weight:700;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .pt-bar{height:8px;border-radius:5px;background:var(--surface-2);overflow:hidden}.console-root .pt-bar i{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,var(--signal-deep),var(--good))}.console-root .pt-amt{font-size:12.5px;font-weight:700;color:var(--ink)}.console-root .pt-pct{font-size:11px;font-weight:600;color:var(--ink-3);min-width:30px;text-align:right}.console-root .rec-cad-badge,.console-root .rec-mcard-cad-ic{flex-shrink:0;font-size:10.5px;font-weight:650;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:7px;padding:3px 7px;letter-spacing:-.01em}.console-root .rec-cad-badge{margin-right:2px}.console-root .ph-subnote{margin-top:7px;font-size:11px;color:var(--ink-3);font-weight:500}.console-root .ledger-seg{display:inline-flex;padding:3px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-pill);gap:2px}.console-root .ledger-seg button{padding:7px 20px;border:none;background:none;border-radius:var(--r-pill);font-size:13px;font-weight:700;color:var(--ink-3);cursor:pointer}.console-root .ledger-seg button.on.out{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-card)}.console-root .ledger-seg button.on.in{background:var(--good);color:#fff}.console-root .exp-head+.ledger-seg{display:flex;margin:10px 0 4px}.console-root .exp-head+.ledger-seg button{flex:1 1}.console-root .exp-sum.in{background:linear-gradient(165deg,var(--good-bg),var(--surface) 72%);border-color:#C9E9D6}.console-root .exf-amt.in,.console-root .exp-row-amt.in,.console-root .rec-mcard-amt.in{color:var(--good)}.console-root .add-fab.in{background:var(--good);color:#fff}.console-root .rsp-methods{display:grid;grid-template-columns:1fr 1fr;grid-gap:7px;gap:7px}.console-root .rsp-method{padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:var(--surface);font-size:13.5px;font-weight:700;color:var(--ink-2);cursor:pointer}.console-root .rsp-method.on{border-color:var(--signal-deep);background:var(--signal-wash);color:var(--ink)}.console-root .rsp-hint{margin-top:4px;font-size:12px;color:var(--ink-3);line-height:1.5}.console-root .rsp-qr{display:flex;flex-direction:column;align-items:center;gap:14px;padding:8px 0 4px;text-align:center}.console-root .rsp-qr img{border-radius:14px;border:1px solid var(--line)}.console-root .rsp-qr p{font-size:13px;color:var(--ink-2);line-height:1.55}.console-root .rsp-copy{padding:11px 22px;border-radius:var(--r-pill);border:1px solid var(--line-strong);background:var(--surface);font-size:13.5px;font-weight:700;color:var(--ink);cursor:pointer}.console-root .wb-gridwrap{position:relative}.console-root .wb-gridwrap.loading .wb-grid{opacity:.35;filter:saturate(.4);pointer-events:none}.console-root .wb-loading{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,255,255,.55));-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);border-radius:var(--r-lg)}.console-root .wb-loading span{font-size:13px;font-weight:700;color:var(--ink-2);letter-spacing:-.01em}.console-root .fld-slab{display:flex;align-items:baseline;gap:8px;margin:14px 0 2px;font-size:12.5px;font-weight:650;color:var(--ink)}.console-root .fld-slab em{font-style:normal;font-size:11px;font-weight:500;color:var(--ink-3)}.console-root .ptr{display:flex;flex-direction:column;gap:14px}.console-root .ptr-guide{font-size:12px;color:var(--ink-2);line-height:1.55;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:11px 13px}.console-root .ptr-guide b{color:var(--ink);font-weight:700}.console-root .ptr-warn{font-size:12.5px;color:var(--warn);background:var(--warn-bg);border:1px solid #ebdcb6;border-radius:12px;padding:11px 13px;line-height:1.5}.console-root .ptr-warn b{font-weight:650}.console-root .ptr-warn span{color:var(--ink-2);font-weight:500}.console-root .ptr-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface)}.console-root .ptr-row{display:flex;align-items:center;gap:12px;padding:12px 15px;border-bottom:1px solid var(--line)}.console-root .ptr-row:last-child{border-bottom:none}.console-root .ptr-row.noacct{background:var(--warn-bg)}.console-root .ptr-main{flex:1 1;min-width:0}.console-root .ptr-name{font-size:14.5px;font-weight:600;color:var(--ink);display:flex;align-items:center;gap:7px}.console-root .ptr-paid{font-size:10.5px;font-weight:650;color:var(--good);background:var(--good-bg);border-radius:var(--r-pill);padding:2px 8px}.console-root .ptr-acct{font-size:12px;color:var(--ink-3);margin-top:2px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .ptr-row.noacct .ptr-acct{color:var(--warn);font-weight:600}.console-root .ptr-amt{font-family:var(--f-mono);font-weight:650;font-size:15px;color:var(--ink);flex-shrink:0}.console-root .ptr-actions{display:flex;gap:10px}.console-root .ptr-btn{flex:1 1;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:13px 16px;border-radius:13px;border:1px solid var(--line-strong);background:var(--surface);font-size:14px;font-weight:700;color:var(--ink);cursor:pointer}.console-root .ptr-btn svg{width:18px;height:18px}.console-root .ptr-btn.primary{flex:1.5 1;background:var(--signal);border-color:var(--signal-deep);color:var(--signal-ink)}.console-root .ptr-btn:disabled{opacity:.5;cursor:default}.console-root .anb{background:linear-gradient(165deg,var(--warn-bg),var(--surface) 78%);border:1px solid #ebdcb6;border-radius:15px;padding:13px 15px}.console-root .stu-anb{margin:4px 0 14px}.console-root .mh-anb{margin:0 0 14px}.console-root .dash-anb{margin:0 0 16px}.console-root .anb-h{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:650;letter-spacing:.02em;color:var(--warn);margin-bottom:8px}.console-root .anb-h .anb-ic svg{width:15px;height:15px}.console-root .anb-list{display:flex;flex-direction:column;gap:8px}.console-root .anb-item{border-top:1px solid #f0e6c9;padding-top:8px}.console-root .anb-item:first-child{border-top:none;padding-top:0}.console-root .anb-t{font-size:14.5px;font-weight:600;color:var(--ink);display:flex;align-items:center;gap:6px}.console-root .anb-pin{font-size:10px;font-weight:650;color:#fff;background:var(--warn);border-radius:5px;padding:2px 6px}.console-root .anb-b{font-size:12.5px;color:var(--ink-2);margin-top:3px;line-height:1.5;white-space:pre-wrap}.console-root .mstat-row{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px;margin-bottom:14px}.console-root .mstat{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:13px 15px;border:1px solid var(--line);border-radius:14px;background:var(--surface);cursor:pointer;text-align:left}.console-root .mstat-n{font-size:24px;font-weight:650;letter-spacing:-.02em;color:var(--ink);line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .mstat-k{font-size:12px;font-weight:600;color:var(--ink-3)}.console-root .mstat.ok.on{border-color:var(--good);background:var(--good-bg)}.console-root .mstat.ok .mstat-n{color:var(--good)}.console-root .mstat.warn.on{border-color:var(--warn);background:var(--warn-bg)}.console-root .mstat.warn .mstat-n{color:var(--warn)}.console-root .mstat.crit.on{border-color:var(--crit);background:var(--crit-bg)}.console-root .mstat.crit .mstat-n{color:var(--crit)}.console-root .room-card.disabled{opacity:.72;background:repeating-linear-gradient(135deg,var(--surface),var(--surface) 10px,var(--surface-2) 10px,var(--surface-2) 20px)}.console-root .dis-reasons{display:flex;flex-wrap:wrap;gap:7px}.console-root .dis-reason{padding:8px 16px;border:1px solid var(--line-strong);border-radius:var(--r-pill);background:var(--surface);font-size:13.5px;font-weight:700;color:var(--ink-2);cursor:pointer}.console-root .dis-reason.on{border-color:var(--crit);background:var(--crit-bg);color:var(--crit)}.console-root .ptr-amt-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:1px;flex-shrink:0}.console-root .ptr-amt-sub{font-size:10.5px;color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.console-root .notic-test{padding:4px 4px 12px;border-bottom:1px solid var(--line);margin-bottom:8px}.console-root .notic-test-btn{display:inline-flex;align-items:center;gap:8px;width:100%;justify-content:center;padding:11px 16px;border-radius:12px;border:1px solid var(--signal-deep);background:var(--signal-wash);font-size:13.5px;font-weight:700;color:var(--ink);cursor:pointer}.console-root .notic-test-btn svg{width:17px;height:17px}.console-root .notic-test-btn:disabled{opacity:.55;cursor:default}.console-root .notic-test-msg{margin-top:8px;font-size:12.5px;font-weight:600;color:var(--good);text-align:center;line-height:1.5}.console-root .notic-test-msg.bad{color:var(--crit)}.console-root .fm-list{flex-direction:column;gap:0;border:1px solid var(--line);border-radius:16px}.console-root .fm-card,.console-root .fm-list{display:flex;overflow:hidden;background:var(--surface)}.console-root .fm-card{align-items:stretch;border:0;border-radius:0}.console-root .fm-card+.fm-card{border-top:1px solid var(--line)}.console-root .fm-card-main{flex:1 1;text-align:left;background:none;border:none;padding:14px 16px;cursor:pointer;min-width:0}.console-root .fm-card-top{display:flex;align-items:center;gap:6px;margin-bottom:5px}.console-root .fm-kind{font-size:10.5px;font-weight:650;padding:2px 8px;border-radius:var(--r-pill);background:var(--signal-wash);color:#5f7a12}.console-root .fm-kind.survey{background:var(--info-bg);color:var(--info)}.console-root .fm-status{font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:var(--r-pill);background:var(--surface-2);color:var(--ink-3);border:1px solid var(--line)}.console-root .fm-status.open{background:var(--good-bg);color:var(--good);border-color:transparent}.console-root .fm-new{font-size:10.5px;font-weight:650;padding:2px 8px;border-radius:var(--r-pill);background:var(--crit-bg);color:var(--crit)}.console-root .fm-card-title{font-size:15.5px;font-weight:600;color:var(--ink)}.console-root .fm-card-sub{font-size:12px;color:var(--ink-3);margin-top:2px}.console-root .fm-card-acts{display:flex;align-items:center;gap:2px;padding:0 10px;border-left:1px solid var(--line)}.console-root .fm-save{padding:8px 18px;border-radius:10px;border:1px solid var(--signal-deep);background:var(--signal);color:var(--signal-ink);font-size:13.5px;font-weight:650;cursor:pointer}.console-root .fm-save.ghost{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}.console-root .fm-save:disabled{opacity:.5}.console-root .icon-btn.sm{width:28px;height:28px;font-size:14px}.console-root .fm-share{display:flex;flex-direction:column;align-items:center;gap:14px}.console-root .fm-share-warn{font-size:12.5px;color:var(--warn);background:var(--warn-bg);border:1px solid #ebdcb6;border-radius:11px;padding:10px 13px;width:100%;line-height:1.5}.console-root .fm-qr{padding:14px;background:#fff;border:1px solid var(--line);border-radius:16px}.console-root .fm-url{font-size:12.5px;color:var(--ink-2);word-break:break-all;text-align:center;font-family:var(--f-mono)}.console-root .fm-summary{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.console-root .fm-sum-card{border:1px solid var(--line);border-radius:13px;padding:13px 15px;background:var(--surface)}.console-root .fm-sum-q{font-size:13.5px;font-weight:600;margin-bottom:8px}.console-root .fm-sum-row{display:grid;grid-template-columns:90px 1fr 28px;align-items:center;grid-gap:8px;gap:8px;padding:3px 0}.console-root .fm-sum-k{font-size:12px;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .fm-sum-bar{height:8px;border-radius:5px;background:var(--surface-2);overflow:hidden}.console-root .fm-sum-bar i{display:block;height:100%;background:var(--signal-deep);border-radius:5px}.console-root .fm-sum-n{font-size:12px;font-weight:700;text-align:right}.console-root .fm-resp-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}.console-root .fm-resp{display:flex;align-items:center;gap:10px;padding:12px 14px;text-align:left;background:none;border:none;border-bottom:1px solid var(--line);cursor:pointer;width:100%}.console-root .fm-resp:last-child{border-bottom:none}.console-root .fm-resp:hover{background:var(--surface-2)}.console-root .fm-resp-m{flex:1 1;min-width:0}.console-root .fm-resp-name{font-size:14.5px;font-weight:600;color:var(--ink);display:flex;align-items:center;gap:7px}.console-root .fm-resp-sub{font-size:12px;color:var(--ink-3);margin-top:2px}.console-root .fm-resp-chev{width:18px;height:18px;color:var(--ink-3);flex-shrink:0}.console-root .fm-answers{display:flex;flex-direction:column;gap:12px}.console-root .fm-ans-q{font-size:12px;font-weight:700;color:var(--ink-3)}.console-root .fm-ans-v{font-size:14px;color:var(--ink);margin-top:2px;white-space:pre-wrap}.console-root .fm-ans-v.ok{color:var(--good);font-weight:700}.console-root .fm-ans-v.no{color:var(--crit)}.console-root .fm-ans-note{font-size:12.5px;color:var(--good);background:var(--good-bg);border-radius:10px;padding:10px 12px}.console-root .fpub-fields{display:flex;flex-direction:column;gap:16px}.console-root .fpub-msg.bad{color:var(--crit);font-size:13px;font-weight:600;text-align:center}.console-root .ff-section{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:13px 14px}.console-root .ff-section-t{font-size:14px;font-weight:650}.console-root .ff-section-b{font-size:12.5px;color:var(--ink-2);line-height:1.6;white-space:pre-wrap;margin-top:5px}.console-root .ff-field{display:flex;flex-direction:column;gap:7px}.console-root .ff-label{font-size:14px;font-weight:700}.console-root .ff-req{color:var(--crit)}.console-root .ff-help{font-size:12.5px;color:var(--ink-2);line-height:1.6;white-space:pre-wrap;background:var(--surface-2);border:1px solid var(--line);border-radius:11px;padding:11px 13px}.console-root .ff-input{width:100%;padding:12px 14px;border:1px solid var(--line-strong);border-radius:12px;font-size:15px;background:var(--surface);font-family:inherit}.console-root .ff-consent{display:flex;flex-direction:column;gap:9px}.console-root .ff-consent-body{font-size:13px;color:var(--ink-2);line-height:1.6;white-space:pre-wrap;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:13px 14px}.console-root .ff-check{display:flex;align-items:center;gap:10px;font-size:14.5px;font-weight:700;cursor:pointer}.console-root .ff-check input{position:absolute;opacity:0;width:0;height:0}.console-root .ff-check-box{width:24px;height:24px;border:2px solid var(--line-strong);border-radius:8px;flex-shrink:0;position:relative}.console-root .ff-check.on .ff-check-box{background:var(--signal-deep);border-color:var(--signal-deep)}.console-root .ff-check.on .ff-check-box:after{content:"";position:absolute;left:7px;top:3px;width:6px;height:11px;border:solid var(--signal-ink);border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}.console-root .ff-choices{display:flex;flex-direction:column;gap:8px}.console-root .ff-choice{display:flex;align-items:center;gap:10px;padding:13px 15px;border:1.5px solid var(--line-strong);border-radius:13px;font-size:14.5px;font-weight:600;cursor:pointer}.console-root .ff-choice input{position:absolute;opacity:0}.console-root .ff-choice-dot{width:20px;height:20px;border:2px solid var(--line-strong);border-radius:50%;flex-shrink:0;position:relative}.console-root .ff-choice.on{border-color:var(--signal-deep);background:var(--signal-wash)}.console-root .ff-choice.on .ff-choice-dot:after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--signal-deep)}.console-root .stu-surveys{display:flex;flex-direction:column;gap:8px;margin:4px 0 14px}.console-root .stu-survey{display:flex;align-items:center;gap:11px;padding:13px 15px;border:1px solid #c9e9d6;background:linear-gradient(165deg,var(--good-bg),var(--surface) 72%);border-radius:14px;text-align:left;cursor:pointer}.console-root .stu-survey-ic{width:34px;height:34px;border-radius:10px;background:#fff;color:var(--good);display:grid;place-items:center;flex-shrink:0}.console-root .stu-survey-ic svg{width:19px;height:19px}.console-root .stu-survey-m{flex:1 1;display:flex;flex-direction:column}.console-root .stu-survey-m b{font-size:14.5px;font-weight:600}.console-root .stu-survey-m span{font-size:12px;color:var(--ink-3)}.console-root .stu-survey-chev{width:18px;height:18px;color:var(--ink-3)}.console-root .tv-vice{font-size:10.5px;font-weight:650;color:var(--signal-ink);background:var(--signal);border-radius:var(--r-pill);padding:2px 8px;margin-left:7px}.console-root .tv-vice-row{display:flex;align-items:center;gap:12px;margin-top:14px;padding:13px 14px;border:1px solid #ddeea6;background:var(--signal-wash);border-radius:13px}.console-root .tv-vice-m{flex:1 1;display:flex;flex-direction:column}.console-root .tv-vice-m b{font-size:13.5px}.console-root .tv-vice-m span{font-size:11.5px;color:var(--ink-3);margin-top:2px}.console-root .tv-vice-btn{flex-shrink:0;padding:9px 18px;border-radius:10px;border:1px solid var(--signal-deep);background:var(--signal);color:var(--signal-ink);font-size:13px;font-weight:650;cursor:pointer}.console-root .tv-vice-btn.on{background:var(--surface);border-color:var(--line-strong);color:var(--crit)}.console-root .tv-vice-btn:disabled{opacity:.5}.console-root .stu-call{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--good);color:#fff;flex-shrink:0}.console-root .stu-call svg{width:18px;height:18px}.console-root .wb-rotate{margin-left:auto;padding:7px 13px;border-radius:10px;border:1px solid var(--signal-deep);background:var(--signal-wash);color:var(--signal-ink);font-size:12.5px;font-weight:650;cursor:pointer;white-space:nowrap}.console-root .rot-toggle{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--ink-2);cursor:pointer;padding:2px 0}.console-root .rot-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:11px 14px;margin-bottom:12px;background:var(--signal-wash);border:1px solid #ddeea6;border-radius:12px}.console-root .rot-bar-l{font-size:13px;font-weight:650;color:var(--ink)}.console-root .rot-bar .sel{padding:7px 10px;border-radius:9px;border:1px solid var(--line-strong);background:var(--surface);font-size:13px;font-weight:700}.console-root .rot-bar-s{font-size:11.5px;color:var(--ink-3);flex:1 1;min-width:160px}.console-root .rooms-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}.console-root .rooms-bar .rooms-daynav{flex:1 1;margin-bottom:0}.console-root .rooms-viewseg{display:inline-flex;background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:4px;gap:2px}.console-root .rooms-viewseg button{border:0;background:none;padding:7px 16px;border-radius:999px;font:inherit;font-size:13px;font-weight:600;color:var(--ink-3);cursor:pointer}.console-root .rooms-viewseg button.on{background:var(--ink);color:#fff}.console-root .rgrid-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.console-root table.rgrid{border-collapse:separate;border-spacing:0;width:100%;min-width:720px}.console-root .rgrid td,.console-root .rgrid th{border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.console-root .rgrid td:last-child,.console-root .rgrid th:last-child{border-right:0}.console-root .rgrid tbody tr:last-child td{border-bottom:0}.console-root .rgrid-tc{width:44px;min-width:44px;max-width:44px;box-sizing:border-box;padding:5px 3px;text-align:center;font-size:11px;font-weight:700;color:var(--ink-3);background:var(--surface-2);position:-webkit-sticky;position:sticky;left:0;z-index:2;white-space:nowrap;overflow:hidden;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root td.rgrid-tc{vertical-align:top}.console-root .rgrid thead th{position:-webkit-sticky;position:sticky;top:0;z-index:3;background:var(--surface-2);padding:9px 8px;text-align:center}.console-root .rgrid thead .rgrid-tc{z-index:4}.console-root .rgrid-rh{min-width:108px}.console-root .rgrid-rn{display:block;font-size:13px;font-weight:650;color:var(--ink)}.console-root .rgrid-tag{font-style:normal;margin-left:5px;font-size:10.5px;font-weight:650;color:#A9791F;background:#FBF1D6;border:1px solid #e9d7a6;border-radius:999px;padding:1px 6px}.console-root .rgrid-badge{display:inline-block;margin-top:4px;font-size:10px;font-weight:700;border-radius:999px;padding:1px 7px}.console-root .rgrid-badge.live{color:var(--good);background:#E6F5EC;border:1px solid #c9e9d6}.console-root .rgrid-badge.off{color:var(--crit);background:#FBE8E8;border:1px solid #f1c9c7}.console-root .rgrid-badge.rot{color:var(--signal-ink);background:var(--signal-wash);border:1px solid #ddeea6}.console-root .rgrid-rh.off .rgrid-rn{color:var(--ink-3)}.console-root .rgrid-cell{height:52px;padding:2px;vertical-align:top}.console-root tr.rgrid-now td{background:linear-gradient(var(--signal-wash),var(--signal-wash))}.console-root tr.rgrid-now .rgrid-tc{color:var(--signal-ink);font-weight:650}.console-root .rgrid-ev{height:100%;min-height:26px;border-radius:8px;padding:4px 7px;border:1px solid var(--line-strong);background:var(--surface-2);overflow:hidden}.console-root .rgrid-ev.lesson{background:var(--surface-2);border-color:var(--line-strong)}.console-root .rgrid-ev.cam{background:#FBF1D6;border-color:#E9D7A6}.console-root .rgrid-ev.prac{background:#EAF3FB;border-color:#CDE3F5}.console-root .rgrid-ev-t{font-size:10px;font-weight:700;color:var(--ink-3)}.console-root .rgrid-ev-nm{font-size:12.5px;font-weight:650;color:var(--ink);line-height:1.2}.console-root .rgrid-ev-mt,.console-root .rgrid-ev-nm{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.console-root .rgrid-ev-mt{font-size:10.5px;color:var(--ink-3)}.console-root .rgrid-ev.cam .rgrid-ev-mt{color:#A9791F}.console-root .rgrid-ev.prac .rgrid-ev-mt{color:#2E7DBE}.console-root .rgrid-ev.ph-live{box-shadow:inset 0 0 0 1.5px var(--signal-deep)}.console-root .rgrid-ev.ph-missed{opacity:.6}.console-root .rgrid-ev.ph-done{opacity:.72}.console-root .rgrid-ev.ph-done,.console-root .rgrid-ev.ph-live,.console-root .rgrid-ev.ph-missed{opacity:1}.console-root .rgrid-ev{position:relative}.console-root .rgrid-ev-ck{position:absolute;top:5px;right:5px;width:7px;height:7px;border-radius:50%;background:var(--good)}.console-root .rgrid-ev-miss{font-style:normal;font-size:9.5px;font-weight:650;color:var(--crit);background:var(--crit-bg);border-radius:4px;padding:1px 4px;margin-left:4px}.console-root .rgrid-ev-x{position:absolute;top:3px;right:3px;width:18px;height:18px;border:0;border-radius:5px;background:rgba(0,0,0,.05);color:var(--ink-3);cursor:pointer;padding:0;display:none;align-items:center;justify-content:center}.console-root .rgrid-ev:hover .rgrid-ev-x{display:flex}.console-root .rgrid-ev-x svg{width:12px;height:12px;stroke-width:2.4}.console-root .rgrid-ev-x:hover{background:#FBE8E8;color:var(--crit)}.console-root button.rgrid-free{width:100%;height:48px;display:grid;place-items:center;border:1px dashed transparent;border-radius:8px;background:none;color:transparent;font-size:15px;font-weight:400;cursor:pointer;transition:all .12s}.console-root button.rgrid-free:hover{border-color:var(--line-strong);background:var(--surface-2);color:var(--ink-3)}.console-root .rgrid-free.off{height:48px;display:grid;place-items:center;color:var(--line-strong);font-size:12px}.console-root .rsess-tag.prac{background:#EAF3FB;color:#2E7DBE;border:1px solid #cde3f5}.console-root .rooms-viewseg.m{display:flex;width:100%;margin:10px 0 4px}.console-root .rooms-viewseg.m button{flex:1 1;padding:9px 0;font-size:13px}.console-root .rooms-m .rgrid-wrap{-webkit-overflow-scrolling:touch}@media (max-width:720px){.console-root table.rgrid{min-width:560px}.console-root .rgrid-rh{min-width:82px}.console-root .rgrid-tc{width:44px;min-width:44px;max-width:44px}.console-root .rgrid-ev-nm,.console-root .rgrid-rn{font-size:12px}.console-root .rgrid-ev-x{display:flex}}.console-root .rgrid-sections{display:flex;flex-direction:column;gap:16px}.console-root .rgrid-seclab{display:flex;align-items:baseline;gap:8px;font-size:13px;font-weight:650;color:var(--ink);margin:0 2px 7px}.console-root .rgrid-seclab span{font-size:11px;font-weight:600;color:var(--ink-3)}.console-root .rgrid-wrap.fit{overflow-x:visible}.console-root .rgrid-wrap.fit table.rgrid{min-width:0;width:100%;table-layout:fixed}@media (max-width:720px){.console-root .rgrid-wrap.fit table.rgrid{min-width:0}}.console-root .rgrid-kindseg{display:inline-flex;background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:4px;gap:2px;margin-bottom:12px}.console-root .rgrid-kindseg button{border:0;background:none;padding:7px 16px;border-radius:999px;font:inherit;font-size:13px;font-weight:600;color:var(--ink-3);cursor:pointer;display:inline-flex;align-items:center;gap:6px}.console-root .rgrid-kindseg button.on{background:var(--ink);color:#fff}.console-root .rgrid-kindseg button em{font-style:normal;font-size:11px;font-weight:650;opacity:.7}.console-root .rgrid-kindseg button.on em{opacity:.85}.console-root .sched-tabs{display:flex;gap:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:13px;padding:4px;margin-bottom:14px}.console-root .sched-tab{flex:1 1;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 12px;border-radius:10px;font-size:14px;font-weight:650;color:var(--ink-3);text-decoration:none;transition:background .12s,color .12s}.console-root .sched-tab svg{width:17px;height:17px}.console-root .sched-tab.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px rgba(20,24,31,.1)}.console-root .sched-tab:not(.on):hover{color:var(--ink-2)}.console-root .rgrid-kindseg{align-self:flex-start}.console-root .rgrid-ev-tags{display:flex;align-items:center;gap:4px;margin-bottom:1px}.console-root .rgrid-ev.mine{padding-left:6px}.console-root .rgrid-ev-me{color:var(--signal-ink);background:var(--signal)}.console-root .rgrid-ev-lock,.console-root .rgrid-ev-me{font-size:9px;font-weight:650;border-radius:4px;padding:0 5px;line-height:15px}.console-root .rgrid-ev-lock{color:var(--ink-3);background:#EEF1F5}.console-root .wb-book-note{margin:8px 2px 2px;font-size:12px;line-height:1.5;color:var(--ink-2);background:var(--signal-wash);border:1px solid #ddeea6;border-radius:10px;padding:8px 11px}.console-root .wb-book-note b{color:var(--ink);font-weight:650}.console-root .mng-tabs{display:flex;gap:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:4px;margin-bottom:16px}.console-root .mng-tabs button{flex:1 1;border:0;background:none;padding:10px 8px;border-radius:9px;font:inherit;font-size:13.5px;font-weight:600;color:var(--ink-3);cursor:pointer}.console-root .mng-tabs button.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px rgba(20,24,31,.08)}.console-root .mng-sec-h{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.console-root .mng-sec-h b{display:block;font-size:15px;font-weight:650;color:var(--ink)}.console-root .mng-sec-h span{font-size:12.5px;color:var(--ink-3)}.console-root .mng-empty{padding:28px 16px;text-align:center;color:var(--ink-3);font-size:13.5px;background:var(--surface-2);border:1px dashed var(--line-strong);border-radius:12px}.console-root .mig-steps{display:flex;flex-direction:column;gap:12px}.console-root .mig-step{display:flex;gap:12px;padding:16px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.console-root .mig-num{flex:none;width:26px;height:26px;border-radius:999px;background:var(--ink);color:#fff;font-weight:650;font-size:13px;display:grid;place-items:center}.console-root .mig-body{flex:1 1;display:flex;flex-direction:column;gap:9px;align-items:flex-start}.console-root .mig-body b{font-size:14.5px;font-weight:650;color:var(--ink)}.console-root .mig-body p{margin:0;font-size:12.5px;color:var(--ink-3);line-height:1.5}.console-root .mig-file{display:inline-flex;align-items:center;width:100%}.console-root .mig-file input{position:absolute;width:1px;height:1px;opacity:0}.console-root .mig-file span{display:inline-flex;align-items:center;padding:10px 14px;border:1px dashed var(--line-strong);border-radius:10px;font-size:13px;font-weight:650;color:var(--ink-2);background:var(--surface-2);cursor:pointer;width:100%}.console-root .mig-reset{display:flex;gap:10px;align-items:flex-start;cursor:pointer;padding:4px 0}.console-root .mig-reset input{margin-top:3px}.console-root .mig-reset b{display:block;font-size:13px;font-weight:600;color:var(--ink)}.console-root .mig-reset small{display:block;font-size:11.5px;color:var(--ink-3);line-height:1.45;margin-top:2px}.console-root .btn-primary{background:var(--ink);color:#fff;font-weight:650;font-size:13.5px;padding:11px 18px;border-radius:var(--r-sm);border:none;cursor:pointer}.console-root .btn-primary:disabled{opacity:.5;cursor:default}.console-root .mig-result{margin-top:14px;padding:14px 16px;border:1px solid #cfe6d6;background:#F0F8F2;border-radius:var(--r-md)}.console-root .mig-result>b{font-size:13.5px;color:var(--good)}.console-root .mig-result ul{margin:6px 0 0;padding-left:18px;font-size:13px;color:var(--ink-2)}.console-root .mig-errs{margin-top:10px;padding-top:10px;border-top:1px solid #e5d0ce}.console-root .mig-errs>b{font-size:12.5px;color:var(--crit)}.console-root .mig-errs ul{color:var(--crit);font-size:12px}.console-root .mig-btnrow{display:flex;gap:8px;flex-wrap:wrap}.console-root .mig-ok{margin:4px 0 0;font-size:12.5px;font-weight:700;color:var(--good)}.console-root .mng-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface)}.console-root .mng-row{display:flex;align-items:center;gap:12px;background:var(--surface);border:0;border-radius:0;padding:12px 16px;min-height:72px}.console-root .mng-row+.mng-row{border-top:1px solid var(--line)}.console-root .mng-row.off{opacity:.58}.console-root .mng-row-m{flex:1 1;min-width:0}.console-root .mng-row-t{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:14.5px;font-weight:600;color:var(--ink)}.console-root .mng-row-s{font-size:12.5px;color:var(--ink-3);margin-top:2px}.console-root .mng-row-acts{display:flex;align-items:center;gap:0;flex:none}.console-root .mng-section-actions{display:flex;gap:8px;flex-shrink:0}.console-root .btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 16px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface);color:var(--ink);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.console-root .btn-outline:hover:not(:disabled){background:var(--surface-2);border-color:var(--ink-3)}.console-root .btn-outline:active:not(:disabled){background:var(--line)}.console-root .btn-outline:disabled{opacity:.45;cursor:default}.console-root .btn-outline>span[aria-hidden]{font-size:18px;line-height:1}.console-root .pass-order-list{list-style:none;padding:0;margin:0;border:1px solid var(--line);border-radius:12px;overflow:hidden}.console-root .pass-order-list li{display:flex;align-items:center;gap:8px;padding:10px;background:var(--surface)}.console-root .pass-order-list li+li{border-top:1px solid var(--line)}.console-root .pass-order-name{flex:1 1;min-width:0;font-size:14px;overflow-wrap:anywhere}.console-root .pass-order-name small{display:block;font-size:12px;color:var(--ink-3);margin-top:3px}.console-root .pass-order-position{position:relative;flex:none;width:92px}.console-root .pass-order-position>span{position:absolute;right:8px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--ink-3)}.console-root .pass-order-list select{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:44px;width:100%;padding:0 26px 0 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit;font-size:16px}.console-root .pass-order-list .mng-ord{flex-direction:row;gap:2px;margin:0}.console-root .pass-order-list .mng-ord button{width:44px;height:44px}.console-root .order-editor-footer{display:flex;gap:10px}.console-root .order-editor-footer .sheet-save{flex:1 1}.console-root .mng-badge{font-size:10.5px;font-weight:650;border-radius:999px;padding:1px 8px;background:var(--surface-2);color:var(--ink-2);border:1px solid var(--line-strong)}.console-root .mng-badge.lesson{background:var(--brand-wash);color:var(--signal-ink);border-color:var(--line)}.console-root .mng-badge.prac{background:var(--surface-2);color:var(--ink-2);border-color:var(--line)}.console-root .mng-badge.tag{background:var(--warn-bg);color:var(--warn);border-color:var(--line)}.console-root .mng-badge.muted{background:var(--surface-2);color:var(--ink-3)}.console-root .mng-toggle{width:40px;height:24px;border-radius:999px;border:0;background:var(--line-strong);position:relative;cursor:pointer;transition:background .15s;flex:none}.console-root .mng-toggle i{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 2px rgba(0,0,0,.2)}.console-root .mng-toggle.on{background:var(--good)}.console-root .mng-toggle.on i{transform:translateX(16px)}.console-root .mng-presets{display:flex;gap:6px;margin-top:8px}.console-root .mng-presets button{flex:1 1;padding:8px 0;border:1px solid var(--line-strong);background:var(--surface);border-radius:9px;font:inherit;font-size:13px;font-weight:700;color:var(--ink-2);cursor:pointer}.console-root .mng-presets button.on{background:var(--signal);border-color:var(--signal-deep);color:var(--signal-ink)}.console-root .rgrid-rn{display:inline-flex;align-items:center;gap:4px}.console-root .rgrid-rh-act{border:0;background:none;padding:2px;margin-left:1px;border-radius:5px;color:var(--ink-3);cursor:pointer;line-height:0}.console-root .rgrid-rh-act svg{width:13px;height:13px;stroke-width:2}.console-root .rgrid-rh-act:hover{background:rgba(0,0,0,.06);color:var(--crit)}.console-root .rgrid-rh.off .rgrid-rh-act:hover{color:var(--good)}.console-root .mdet-xfer{display:inline-flex;align-items:center;gap:7px;margin:12px 0 4px;padding:9px 14px;border:1px solid var(--line-strong);background:var(--surface);border-radius:10px;font:inherit;font-size:13px;font-weight:600;color:var(--ink-2);cursor:pointer}.console-root .mdet-xfer svg{width:16px;height:16px}.console-root .mdet-xfer:hover{border-color:var(--ink);color:var(--ink)}.console-root .xfer-list{display:flex;flex-direction:column;gap:8px}.console-root .xfer-row{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border:1px solid var(--line);background:var(--surface);border-radius:12px;font:inherit;cursor:pointer}.console-root .xfer-row:hover:not(:disabled){border-color:var(--ink)}.console-root .xfer-row.cur{background:var(--surface-2)}.console-root .xfer-row:disabled{cursor:default}.console-root .xfer-nm{font-size:15px;font-weight:600;color:var(--ink)}.console-root .xfer-badge{font-style:normal;font-size:11px;font-weight:650;color:var(--ink-3);background:var(--surface-2);border:1px solid var(--line-strong);border-radius:999px;padding:2px 8px}.console-root .xfer-go{font-size:13px;font-weight:600;color:var(--signal-deep)}.console-root .xfer-hint{margin-top:12px;font-size:12.5px;line-height:1.55;color:var(--ink-3)}.console-root .xfer-hint b{color:var(--ink-2);font-weight:600}.console-root .wb-findstu{display:inline-flex;align-items:center;gap:6px;padding:8px 13px;border:1px solid var(--line-strong);background:var(--surface);border-radius:999px;font:inherit;font-size:13px;font-weight:600;color:var(--ink-2);cursor:pointer}.console-root .wb-findstu svg{width:15px;height:15px}.console-root .wb-findstu:hover{border-color:var(--ink);color:var(--ink)}.console-root .finder-q{width:100%;box-sizing:border-box;padding:12px 14px;border:1px solid var(--line-strong);border-radius:11px;font:inherit;font-size:15px;margin-bottom:10px}.console-root .finder-list{display:flex;flex-direction:column;gap:6px}.console-root .finder-row{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border:1px solid var(--line);background:var(--surface);border-radius:11px;font:inherit;cursor:pointer}.console-root .finder-row:hover{border-color:var(--ink)}.console-root .finder-nm{font-size:15px;font-weight:600;color:var(--ink)}.console-root .finder-sub{font-size:12.5px;color:var(--ink-3);font-weight:600}.console-root .finder-empty{padding:26px 12px;text-align:center;color:var(--ink-3);font-size:13.5px}.console-root .finder-back{border:0;background:none;padding:4px 2px 12px;font:inherit;font-size:13px;font-weight:600;color:var(--ink-3);cursor:pointer}.console-root .finder-week{display:flex;flex-direction:column;gap:12px}.console-root .finder-day-h{display:flex;align-items:baseline;gap:7px;margin-bottom:6px}.console-root .finder-day-h b{font-size:14px;font-weight:650;color:var(--ink)}.console-root .finder-day-h span{font-size:12px;font-weight:700;color:var(--ink-3)}.console-root .finder-day-h em{font-style:normal;font-size:11px;color:var(--crit)}.console-root .finder-sess{display:flex;align-items:center;gap:10px;padding:9px 12px;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;margin-bottom:5px}.console-root .finder-t{font-size:12.5px;font-weight:700;color:var(--ink-2);flex:none}.console-root .finder-m{font-size:13px;color:var(--ink)}.console-root .finder-m b{font-weight:600}.console-root .rgrid-rh.off{opacity:.55}.console-root .rgrid-ev.off{opacity:.4;filter:grayscale(.5)}.console-root .wb-sd-line{display:flex;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--line);font-size:13.5px}.console-root .wb-sd-k{color:var(--ink-3);font-weight:700;min-width:52px}.console-root .wb-sd-v{color:var(--ink);font-weight:700;display:inline-flex;align-items:center;gap:7px}.console-root .wb-sd-v.muted{color:var(--ink-3);font-weight:600}.console-root .rss-v em,.console-root .wb-sd-v em{font-style:normal;font-size:10.5px;font-weight:650;border-radius:999px;padding:1px 8px}.console-root .rss-v em.lk,.console-root .wb-sd-v em.lk{background:#EEF1F5;color:var(--ink-2);border:1px solid var(--line-strong)}.console-root .rss-v em.au,.console-root .wb-sd-v em.au{background:var(--signal-wash);color:var(--signal-ink);border:1px solid #ddeea6}.console-root .rss-rooms,.console-root .wb-sd-roomedit{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0 4px}.console-root .rss-rm,.console-root .wb-rm{border:1px solid var(--line-strong);background:var(--surface);border-radius:10px;padding:9px 13px;font:inherit;font-size:13px;font-weight:600;color:var(--ink-2);cursor:pointer;display:inline-flex;align-items:center;gap:5px}.console-root .rss-rm em,.console-root .wb-rm em{font-style:normal;font-size:10px;font-weight:700;color:var(--ink-3)}.console-root .rss-rm.on,.console-root .wb-rm.on{background:var(--ink);border-color:var(--ink);color:#fff}.console-root .rss-rm.on em,.console-root .wb-rm.on em{color:rgba(255,255,255,.75)}.console-root .rss-rm:disabled,.console-root .wb-rm:disabled{opacity:.55}.console-root .ssv{display:flex;flex-direction:column;gap:14px}.console-root .ssv-tags{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.console-root .ssv-kind{font-size:11.5px;font-weight:650;border-radius:999px;padding:4px 11px;letter-spacing:-.01em}.console-root .ssv-kind.rc{background:#DCE8FF;color:#2E56C6}.console-root .ssv-kind.once{background:var(--signal);color:var(--signal-ink)}.console-root .ssv-kind.prac{background:#E1F3E7;color:var(--good)}.console-root .ssv-tag{font-size:10.5px;font-weight:650;border-radius:999px;padding:3px 9px}.console-root .ssv-tag.mk{background:#FCE7C4;color:#A66A11}.console-root .ssv-tag.past{background:#EEF1F5;color:var(--ink-3);border:1px solid var(--line-strong)}.console-root .ssv-tag.done{background:var(--good-bg);color:var(--good);border:1px solid #cde9d7}.console-root .ssv-tag.miss{background:var(--crit-bg);color:var(--crit);border:1px solid #f1caca}.console-root .ssv-info{border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;background:var(--surface)}.console-root .ssv-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px}.console-root .ssv-row+.ssv-row{border-top:1px solid var(--line)}.console-root .ssv-k{font-size:12.5px;font-weight:700;color:var(--ink-3)}.console-root .ssv-v{font-size:14px;font-weight:600;color:var(--ink);display:inline-flex;align-items:center;gap:8px;text-align:right}.console-root .ssv-v.muted{color:var(--ink-3);font-weight:600}.console-root .ssv-v.wn{color:var(--warn)}.console-root .ssv-v.ex{color:var(--crit)}.console-root .ssv-v em{font-style:normal;font-size:10.5px;font-weight:650;border-radius:999px;padding:2px 9px}.console-root .ssv-v em.lk{background:#EEF1F5;color:var(--ink-2);border:1px solid var(--line-strong)}.console-root .ssv-v em.au{background:var(--signal-wash);color:var(--signal-ink);border:1px solid #ddeea6}.console-root .ssv-edit-h{font-size:12.5px;font-weight:650;color:var(--ink-2);margin-bottom:8px}.console-root .ssv-rooms{display:flex;flex-wrap:wrap;gap:7px}.console-root .ssv-rm{border:1px solid var(--line-strong);background:var(--surface);border-radius:10px;padding:9px 14px;font:inherit;font-size:13px;font-weight:600;color:var(--ink-2);cursor:pointer;display:inline-flex;align-items:center;gap:5px}.console-root .ssv-rm em{font-style:normal;font-size:10px;font-weight:700;color:var(--ink-3)}.console-root .ssv-rm.on{background:var(--ink);border-color:var(--ink);color:#fff}.console-root .ssv-rm.on em{color:rgba(255,255,255,.75)}.console-root .ssv-rm:disabled{opacity:.55}.console-root .ssv-note{font-size:12.5px;line-height:1.5;border-radius:var(--r-md);padding:11px 13px}.console-root .ssv-note.wn{background:var(--warn-bg);color:var(--warn);border:1px solid #f0deb0}.console-root .ssv-note.ex{background:var(--crit-bg);color:var(--crit);border:1px solid #f0c9c9}.console-root .ssv-acts{display:flex;gap:8px;flex-wrap:wrap}.console-root .ssv-act{flex:1 1;min-width:100px;padding:13px;border-radius:var(--r-md);border:1px solid var(--line-strong);background:var(--surface);font:inherit;font-size:14px;font-weight:650;color:var(--ink);cursor:pointer}.console-root .ssv-act.pay{background:var(--signal);color:var(--signal-ink);border-color:transparent}.console-root .ssv-act.danger{color:var(--crit);border-color:#F0C9C9}.console-root .ssv-act:disabled{opacity:.55}.console-root .ssv-tip{font-size:12px;color:var(--ink-3);margin:0;line-height:1.5}.console-root .wb-rooms-load{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:650;color:var(--ink-3)}.console-root .rss-tags{display:flex;gap:6px;margin-bottom:4px}.console-root .rss-tag{font-size:11px;font-weight:650;border-radius:999px;padding:3px 10px}.console-root .rss-tag.rc{background:#EAF1FF;color:#3763c4}.console-root .rss-tag.once{background:var(--signal-wash);color:var(--signal-ink)}.console-root .rss-tag.prac{background:#EAF3FB;color:#2E7DBE}.console-root .rss-tag.mk{background:#FFF3E0;color:#B77706}.console-root .rss-line{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--line);font-size:14px}.console-root .rss-k{color:var(--ink-3);font-weight:700;min-width:52px}.console-root .rss-v{color:var(--ink);font-weight:700;display:inline-flex;align-items:center;gap:7px}.console-root .rss-slab{margin:14px 0 2px;font-size:12px;font-weight:650;color:var(--ink-3)}.console-root .rss-cancel{margin-top:12px;width:100%;padding:12px;border:1px solid #f1c9c7;background:#FBE8E8;color:var(--crit);border-radius:11px;font:inherit;font-weight:650;cursor:pointer}.console-root .rss-confirm{margin-top:12px;display:flex;align-items:center;gap:8px}.console-root .rss-confirm span{flex:1 1;font-size:13px;color:var(--ink-2)}.console-root .rss-no{padding:9px 14px;border:1px solid var(--line-strong);background:var(--surface);border-radius:9px;font:inherit;font-weight:700;cursor:pointer}.console-root .rss-yes{padding:9px 14px;border:0;background:var(--crit);color:#fff;border-radius:9px;font:inherit;font-weight:650;cursor:pointer}.console-root .rss-tip{margin-top:12px;font-size:12.5px;color:var(--ink-3)}.console-root button.rgrid-ev{width:100%;text-align:left;font:inherit;cursor:pointer}@media (max-width:720px){.console-root .wb-head{flex-wrap:wrap;gap:8px}.console-root .wb-head .wb-tsel,.console-root .wb-head .wb-tselect{margin-left:auto;min-width:0}.console-root .wb-findstu{flex:1 0 100%;justify-content:center;padding:10px}}.console-root button.finder-sess{width:100%;text-align:left;font:inherit;cursor:pointer}.console-root button.finder-sess:hover{border-color:var(--ink)}.console-root .mdet-actrow{display:flex;gap:8px;flex-wrap:wrap}.console-root .mdet-actrow .mdet-xfer{flex:1 1;min-width:140px}.console-root .mdet-acct{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:10px 12px;margin-top:6px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--shadow-card)}.console-root .mdet-acct-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13.5px}.console-root .mdet-acct-row span{color:var(--ink-3);font-weight:600}.console-root .mdet-acct-row b{font-weight:650;color:var(--ink)}.console-root .mdet-acct-note{font-size:12.5px;color:var(--ink-3)}.console-root .mdet-acct .mdet-xfer{align-self:flex-start;margin:4px 0 0}.console-root .mdet-acct-btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.console-root .mdet-acct-btns .mdet-xfer{margin:0}.console-root .mdet-xfer.accent{background:var(--signal)}.console-root .mdet-xfer.accent,.console-root .mdet-xfer.accent:hover{border-color:var(--signal-deep);color:var(--signal-ink)}.console-root .stu-qr{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;color:var(--ink-3);border:1px solid var(--line);background:var(--surface)}.console-root .stu-qr svg{width:19px;height:19px}.console-root .stu-qr:active{transform:scale(.94)}@media (max-width:380px){.console-root .stu-top{gap:7px}.console-root .stu-bell,.console-root .stu-logout,.console-root .stu-qr{width:36px;height:36px;border-radius:10px}.console-root .stu-call{width:34px;height:34px}.console-root .stu-hi{font-size:19px}}.console-root .stu-up-ext{flex:none;font-size:12px;font-weight:700;color:var(--signal-ink);background:var(--signal);border:1px solid var(--signal-deep);border-radius:999px;padding:6px 12px}.console-root .stu-up-acts{flex:none;display:flex;align-items:center;gap:6px}.console-root .stu-tag.live{background:var(--good-bg);color:var(--good);border:1px solid var(--good)}.console-root .rsv-slot.mine:disabled{background:var(--good-bg);color:var(--good);border-color:var(--good);opacity:1}.console-root .rsv-slot.hold:disabled{opacity:1;color:var(--ink-3);border-style:dashed;border-color:var(--line-strong);background:repeating-linear-gradient(135deg,var(--surface-2) 0 6px,var(--surface) 6px 12px)}.console-root .rsv-room.off{opacity:.45;text-decoration:line-through}.console-root .rsv-room.off em{text-decoration:none}.console-root .m-tabs-bar,.console-root .mh-greet,.console-root .optseg,.console-root .rsv,.console-root .sched-tabs,.console-root .sheet-foot,.console-root .sheet-grip,.console-root .sheet-head,.console-root .ssv,.console-root .stu-sess,.console-root .stu-up,.console-root .wb-cell,.console-root .wb-day,.console-root .wb-grid,.console-root .wb-month,.console-root .wb-nav,.console-root .wb-sess{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.console-root .rsv-room,.console-root .rsv-slot,.console-root .wb-cell,.console-root .wb-sess{-webkit-user-drag:none;-webkit-tap-highlight-color:transparent}@media (pointer:coarse){.console-root,.console-root .sheet,.console-root .stu{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.console-root .anb-b,.console-root .err,.console-root .lc-anb-b,.console-root .mc-bubble,.console-root .selectable,.console-root .ssv-note,.console-root .stu-anb,.console-root [contenteditable=true],.console-root input,.console-root select,.console-root textarea{-webkit-touch-callout:default;-webkit-user-select:text;-moz-user-select:text;user-select:text}}.console-root .ssv-rm.auto{border-style:dashed}.console-root .ssv-rm.auto svg{width:14px;height:14px}.console-root .ssv-rm.auto.on{background:var(--signal);border-color:var(--signal-deep);color:var(--signal-ink);border-style:solid;opacity:1}.console-root .wb-workdays{display:inline-flex;align-items:center;gap:5px;height:32px;padding:0 11px;border:1px solid var(--line-strong);border-radius:9px;background:var(--surface);font-size:12.5px;font-weight:700;color:var(--ink-2);cursor:pointer;white-space:nowrap}.console-root .wb-workdays svg{width:14px;height:14px}.console-root .wb-workdays.on{background:var(--signal-wash);border-color:var(--signal-deep);color:var(--signal-ink)}.console-root .wb-day.off .wb-col{position:relative}.console-root .wb-offday{position:absolute;inset:0;z-index:3;pointer-events:none;background:repeating-linear-gradient(135deg,rgba(20,24,31,.045) 0 7px,transparent 7px 14px);display:flex;align-items:flex-start;justify-content:center;padding-top:10px}.console-root .wb-offday span{font-size:10.5px;font-weight:700;color:var(--ink-3);background:var(--surface);border:1px solid var(--line-strong);border-radius:999px;padding:2px 8px}.console-root .wb-day.off .wb-dh{opacity:.5}.console-root .wd-pick{display:flex;gap:8px;justify-content:space-between;padding:4px 0 10px}.console-root .wd-chip{flex:1 1;height:52px;border-radius:14px;border:1px solid var(--line-strong);background:var(--surface);font-size:15px;font-weight:650;color:var(--ink-2)}.console-root .wd-chip.wknd{color:var(--ink-3)}.console-root .wd-chip.on{background:var(--signal);border-color:var(--signal-deep);color:var(--signal-ink)}.console-root .wd-note{font-size:12.5px;color:var(--ink-3);line-height:1.5;word-break:keep-all;margin:0}.console-root .tv-wd{display:inline-flex;gap:3px}.console-root .tv-wd i{width:17px;height:17px;border-radius:5px;font-style:normal;font-size:10px;font-weight:650;display:grid;place-items:center;background:var(--surface-2);color:var(--ink-3);border:1px solid var(--line)}.console-root .tv-wd i.on{background:var(--signal);border-color:var(--signal-deep);color:var(--signal-ink)}.console-root .tv-wd.none{font-size:11.5px;color:var(--ink-3)}.console-root .mpick-search{display:flex;align-items:center;gap:8px;height:42px;padding:0 12px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);box-shadow:inset 0 1px 2px rgba(20,24,31,.05);margin-bottom:8px}.console-root .mpick-search svg{width:15px;height:15px;color:var(--ink-3);flex:none}.console-root .mpick-search input{flex:1 1;min-width:0;border:none;background:none;outline:none;font:inherit;font-size:14px;color:var(--ink);padding:0;height:100%;box-shadow:none}.console-root .mpick-search input::placeholder{color:var(--ink-3)}.console-root .mpick-search:focus-within{border-color:var(--ink-3);background:var(--surface)}.console-root .mpick-clear{flex:none;width:20px;height:20px;border-radius:50%;border:none;background:var(--line-strong);color:var(--surface);font-size:10px;line-height:1;cursor:pointer}.console-root .mpick-list{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:4px;gap:0!important}.console-root .mpick-list>*{border:none!important;border-radius:9px!important;background:transparent!important}.console-root .mpick-list>*+*{border-top:1px solid var(--line)!important;border-radius:0!important}.console-root .ses-mpick.mpick-list .ses-mpick-row.on,.console-root .wb-mlist.mpick-list .wb-mrow.on{background:var(--ink)!important;color:#fff!important;border-radius:9px!important}.console-root .mpick-more{width:100%;min-height:44px;border:none;background:none;color:var(--brand);font-size:14px;font-weight:600;cursor:pointer}.console-root .load-more-sentinel .mpick-more:active{background:var(--surface-2);border-radius:9px}.console-root .wb-repeat.disabled{opacity:.5}.console-root .wb-repeat.disabled span b:after{content:" — 출근일이 아니라 임시 수업만";font-weight:600;color:var(--ink-3);font-size:11.5px}.console-root .wb-repeat.alt{border-color:var(--warn);background:var(--warn-bg)}.console-root .cxl-lead{margin:0 0 4px;font-size:13.5px;font-weight:700;color:var(--ink);word-break:keep-all}.console-root .cxl-opt{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;text-align:left;padding:13px 15px;border-radius:12px;border:1px solid var(--line-strong);background:var(--surface);cursor:pointer}.console-root .cxl-opt b{font-size:14px;font-weight:600;color:var(--ink)}.console-root .cxl-opt span{font-size:12px;color:var(--ink-3);line-height:1.45;word-break:keep-all}.console-root .cxl-opt:hover{background:var(--surface-2)}.console-root .cxl-opt.danger{border-color:#F0C9C9;background:var(--crit-bg)}.console-root .cxl-opt.danger b{color:var(--crit)}.console-root .cxl-opt.danger span{color:#B4696A}.console-root .cxl-opt:disabled{opacity:.55;cursor:default}.console-root .pass-carry{font-size:12.5px;color:var(--info);background:var(--info-bg);border:1px solid #c9d3f5;border-radius:10px;padding:9px 12px;word-break:keep-all;line-height:1.45}.console-root .pass-sum{font-size:13px;color:var(--ink-2);padding:2px 2px 0;word-break:keep-all}.console-root .pass-sum b{color:var(--ink);font-weight:650}.console-root .pass-have{font-size:12.5px;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:9px 12px;word-break:keep-all}.console-root .pass-have b{color:var(--ink);font-weight:650}.console-root .carry-board{margin-bottom:18px}.console-root .carry-board-note{font-size:12.5px;color:var(--ink-2);line-height:1.5;background:var(--warn-bg);border:1px solid #ebd6a8;border-radius:12px;padding:10px 13px;margin:8px 0 10px;word-break:keep-all}.console-root .carry-board-note b{color:var(--warn);font-weight:650}.console-root .m-card.static{cursor:default}.console-root .carry-btn{flex:none;font-size:12.5px;font-weight:600;color:var(--signal-ink);background:var(--signal);border:1px solid var(--signal-deep);border-radius:999px;padding:8px 14px}.console-root .carry-btn:disabled{background:var(--surface-2);border-color:var(--line);color:var(--ink-3)}.console-root .mdet-carry{display:flex;align-items:center;gap:10px;margin-top:9px;padding:9px 11px;border-radius:10px;background:var(--warn-bg);border:1px solid #ebd6a8}.console-root .mdet-carry span{flex:1 1;min-width:0;font-size:12px;color:var(--ink-2);word-break:keep-all}.console-root .mdet-carry b{color:var(--warn);font-weight:650}.console-root .mdet-carry button{flex:none;font-size:12px;font-weight:600;color:var(--signal-ink);background:var(--signal);border:1px solid var(--signal-deep);border-radius:999px;padding:6px 12px}.console-root .mdet-carry-note{font-size:12.5px;color:var(--ink-3);line-height:1.5;word-break:keep-all;margin:0}.console-root .pass-kind-note{font-size:12px;color:var(--ink-3);line-height:1.45;word-break:keep-all;margin:-2px 0 2px}.console-root .ssv-inline-act{flex:none;margin-left:8px;font-size:12px;font-weight:600;color:var(--signal-ink);background:var(--signal);border:1px solid var(--signal-deep);border-radius:999px;padding:5px 12px;cursor:pointer}.console-root .ssv-inline-act:active{transform:scale(.96)}.console-root .bk-fixed-room{display:flex;flex-direction:column;gap:3px;border:1px solid var(--line-strong);border-radius:12px;padding:11px 13px;background:var(--surface-2)}.console-root .bk-fixed-room b{font-size:14.5px;font-weight:650;color:var(--ink)}.console-root .bk-fixed-room span{font-size:11.5px;color:var(--ink-3);word-break:keep-all}.console-root .bk-teacher{border:1px solid var(--line-strong);border-radius:12px;color:var(--ink)}.console-root .bk-note,.console-root .bk-teacher{height:44px;background:var(--surface);padding:0 12px;font:inherit;font-size:14px}.console-root .bk-note{border:1px solid var(--line);border-radius:12px}.console-root .bk-kind{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.console-root .bk-kind button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 13px;border-radius:12px;border:1px solid var(--line-strong);background:var(--surface);text-align:left;cursor:pointer}.console-root .bk-kind button b{font-size:14px;font-weight:650;color:var(--ink)}.console-root .bk-kind button span{font-size:11.5px;color:var(--ink-3);word-break:keep-all}.console-root .bk-kind button.on{background:var(--signal);border-color:var(--signal-deep)}.console-root .bk-kind button.on b,.console-root .bk-kind button.on span{color:var(--signal-ink)}.console-root .bk-kind button:disabled{opacity:.5;cursor:default}.console-root .lesson-duration button{min-height:44px}.console-root .mh-bell,.console-root .stu-bell{position:relative}.console-root .bell-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--crit);color:#fff;font-size:10.5px;font-weight:650;line-height:18px;text-align:center;border:2px solid var(--surface);box-sizing:content-box}.console-root .notic-row{position:relative}.console-root .notic-row.unread{background:var(--signal-wash)}.console-root .notic-row.unread .notic-t{font-weight:650;color:var(--ink)}.console-root .notic-row:not(.unread) .notic-t{font-weight:600;color:var(--ink-2)}.console-root .notic-row:not(.unread) .notic-at,.console-root .notic-row:not(.unread) .notic-b{color:var(--ink-3)}.console-root .notic-row:not(.unread) .notic-ic{opacity:.45}.console-root .notic-dot{position:absolute;left:4px;top:50%;transform:translateY(-50%);width:6px;height:6px;border-radius:50%;background:var(--crit)}.console-root .stu-alert-cta{display:flex;align-items:center;gap:9px;width:100%;padding:13px 15px;border-radius:14px;border:1px solid var(--line-strong);background:var(--surface);font-size:14px;font-weight:700;color:var(--ink)}.console-root .stu-alert-cta svg{width:18px;height:18px;color:var(--ink-3)}.console-root .stu-alert-chev{margin-left:auto;color:var(--ink-3);font-size:17px}.console-root .wl-range{display:flex;align-items:center;gap:8px;margin-top:10px}.console-root .wl-sel{position:relative;flex:1 1;min-width:0}.console-root .wl-sel select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:46px;border:1px solid var(--line-strong);border-radius:12px;background:var(--surface);color:var(--ink);padding:0 34px 0 13px;font:inherit;font-size:15px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;cursor:pointer;transition:border-color .12s,filter .12s}.console-root .wl-sel select:focus{outline:none;border-color:var(--ink-3)}.console-root .wl-sel select:active{filter:brightness(.96)}.console-root .wl-sel>svg{position:absolute;right:12px;top:50%;width:15px;height:15px;margin-top:-7px;color:var(--ink-3);pointer-events:none}.console-root .wl-range span{font-size:12.5px;color:var(--ink-3);flex:none;font-weight:650}.console-root .wl-cur{display:flex;align-items:center;gap:10px;margin-top:4px;border:1px solid var(--signal);background:var(--signal-wash);border-radius:12px;padding:13px 14px}.console-root .wl-cur-txt{flex:1 1;min-width:0;font-size:14px;font-weight:600;color:var(--ink)}.console-root .wl-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;overflow:hidden}.console-root .wl-row{display:flex;align-items:center;gap:10px;padding:11px 13px;border-top:1px solid var(--line)}.console-root .wl-row:first-child{border-top:none}.console-root .wl-txt{flex:1 1;min-width:0;font-size:13px;color:var(--ink);word-break:keep-all}.console-root .wl-x{flex:none;font-size:12px;font-weight:700;color:var(--crit);background:none;border:1px solid #f0c9c9;border-radius:999px;padding:5px 11px}.console-root .fm-head{display:flex;align-items:center;gap:12px;margin:16px 0 12px}.console-root .fm-head-m{display:flex;flex-direction:column;gap:2px;flex:1 1;min-width:0}.console-root .fm-head-m b{font-size:15px;font-weight:650}.console-root .fm-head-m span{font-size:12.5px;color:var(--ink-3)}.console-root .fm-new-btn{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 16px;border-radius:var(--r-pill);background:var(--signal);color:var(--signal-ink);font-size:14px;font-weight:650;flex:none}.console-root .fm-new-btn svg{width:16px;height:16px}.console-root .fm-new-btn:active{transform:scale(.98)}.console-root .fm-pick{display:flex;flex-direction:column;gap:10px}.console-root .fm-pick-item{display:flex;align-items:center;gap:13px;width:100%;padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--surface);text-align:left}.console-root .fm-pick-item:hover{border-color:var(--line-strong);background:var(--surface-2)}.console-root .fm-pick-ic{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;flex:none}.console-root .fm-pick-ic svg{width:21px;height:21px}.console-root .fm-pick-ic.app{background:#EAF1FF;color:#3B6BD8}.console-root .fm-pick-ic.srv{background:var(--signal-wash);color:var(--signal-ink)}.console-root .fm-pick-ic.new{background:var(--surface-2);color:var(--ink-3)}.console-root .fm-pick-m{display:flex;flex-direction:column;gap:3px;min-width:0}.console-root .fm-pick-m b{font-size:15px;font-weight:650;color:var(--ink)}.console-root .fm-pick-m>span{font-size:12.5px;color:var(--ink-3);line-height:1.5}.console-root .dues{display:flex;flex-direction:column;gap:12px}.console-root .dues-months{display:flex;gap:8px}.console-root .dues-mo{flex:1 1;display:flex;flex-direction:column;gap:2px;padding:14px 16px;border:1px solid var(--line);background:var(--surface);text-align:left;transition:border-color .12s,background .12s}.console-root .dues-mo:hover{border-color:var(--line-strong)}.console-root .dues-mo.on{border-color:var(--signal);background:var(--signal-wash)}.console-root .dues-mo.on.urgent{border-color:#F1CACA;background:var(--crit-bg)}.console-root .dues-mo-k{font-size:12px;font-weight:700;color:var(--ink-3)}.console-root .dues-mo.on .dues-mo-k{color:var(--ink-2)}.console-root .dues-mo-v{font-size:26px;font-weight:700;letter-spacing:-.03em}.console-root .dues-mo-v em{font-style:normal;font-size:12.5px;font-weight:700;color:var(--ink-3);margin-left:4px}.console-root .dues-mo.on.urgent .dues-mo-v{color:var(--crit)}.console-root .dues-mo-s{font-size:12px;color:var(--ink-3)}.console-root .dues-why{font-size:12.5px;color:var(--ink-2);line-height:1.6;margin:0}.console-root .dues-why b{font-weight:650}.console-root .dues-bar{height:7px;border-radius:999px;background:var(--surface-2);overflow:hidden}.console-root .dues-bar i{display:block;height:100%;border-radius:999px;background:var(--signal-deep);transition:width .4s ease}.console-root .dues-cap{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink-2);margin-top:-4px}.console-root .dues-cap b{font-weight:650;color:var(--ink)}.console-root .dues-out{margin-left:auto;font-size:12px;font-weight:700;color:var(--ink-3);background:var(--surface-2);border-radius:var(--r-pill);padding:3px 10px}.console-root .dues-empty{display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center;padding:40px 20px;border:1px dashed var(--line-strong);border-radius:16px}.console-root .dues-empty-ic{width:46px;height:46px;border-radius:50%;background:var(--good-bg);color:var(--good);display:grid;place-items:center;font-size:22px;font-weight:650;margin-bottom:4px}.console-root .dues-empty b{font-size:15px;font-weight:650}.console-root .dues-empty span{font-size:12.5px;color:var(--ink-3)}.console-root .dues-bulkhead{display:flex;gap:8px;align-items:stretch}.console-root .dues-sendall{flex:1 1;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 16px;border-radius:14px;background:var(--signal);color:var(--signal-ink);font-size:14.5px;font-weight:650}.console-root .dues-sendall svg{width:17px;height:17px}.console-root .dues-sendall em{font-style:normal;font-size:12.5px;font-weight:700;opacity:.65}.console-root .dues-sendall:active{transform:scale(.99)}.console-root .dues-all{flex:none;height:48px;padding:0 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);font-size:13px;font-weight:700;color:var(--ink-2);white-space:nowrap}.console-root .dues-chk{display:block;width:19px;height:19px;border-radius:6px;border:1.5px solid var(--line-strong);background:var(--surface);flex:none;position:relative}.console-root .dues-chk.on{background:var(--ink);border-color:var(--ink)}.console-root .dues-chk.on:after{content:"";position:absolute;left:5px;top:2px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.console-root .dues-list{display:flex;flex-direction:column;gap:8px}.console-root .dues-card{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.console-root .dues-card.on{border-color:var(--ink);background:var(--surface-2)}.console-root .dues-pick{padding:2px 0 0;background:none;flex:none}.console-root .dues-pick:disabled{opacity:.35}.console-root .dues-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:3px}.console-root .dues-name{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:15.5px;font-weight:650}.console-root .dues-minor{font-style:normal;font-size:10.5px;font-weight:650;padding:1px 7px;border-radius:var(--r-pill);background:#EAF1FF;color:#3B6BD8}.console-root .dues-teacher{font-size:12px;font-weight:600;color:var(--ink-3)}.console-root .dues-meta{font-size:12.5px;color:var(--ink-2)}.console-root .dues-meta b{font-weight:650;color:var(--ink)}.console-root .dues-first{color:var(--ink-3)}.console-root .dues-contact{font-size:12px;color:var(--ink-3)}.console-root .dues-nocontact{color:var(--crit)}.console-root .dues-ok{font-weight:700;color:var(--good)}.console-root .dues-manual{font-weight:700;color:var(--warn)}.console-root .dnote-to span b{color:var(--ink)}.console-root .dues-acts{display:flex;flex-direction:column;gap:6px;flex:none}.console-root .dues-act{height:34px;padding:0 12px;border:1px solid var(--line-strong);background:var(--surface);font-size:12.5px;font-weight:700;white-space:nowrap}.console-root .dues-act:disabled{opacity:.4}.console-root .dues-act.primary{background:var(--ink);border-color:var(--ink);color:var(--surface);font-weight:650}.console-root .dues-act:active:not(:disabled){transform:scale(.97)}.console-root .dnote{display:flex;flex-direction:column;gap:12px}.console-root .dnote-to{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:13px;background:var(--surface-2);border:1px solid var(--line)}.console-root .dnote-to b{font-size:14px;font-weight:650}.console-root .dnote-to span{font-size:12px;color:var(--ink-3)}.console-root .dnote-lab{font-size:12.5px;font-weight:650;color:var(--ink-2)}.console-root .dnote-lab span{font-weight:600;color:var(--ink-3)}.console-root .dnote-msg{margin:0;padding:15px 16px;border-radius:14px;background:var(--signal-wash);border:1px solid var(--signal);font-family:inherit;font-size:13.5px;line-height:1.75;color:var(--signal-ink);white-space:pre-wrap;word-break:break-word}.console-root .dnote-soon{font-size:11.5px;color:var(--ink-3);text-align:center}.console-root .dnote-acts{display:flex;gap:8px}.console-root .dnote-copy{height:52px;padding:0 18px;border-radius:15px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);font-size:14.5px;font-weight:600;flex:none}.console-root .dnote-acts .sheet-save{flex:1 1}.console-root .dnote-sent{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border-radius:12px;background:var(--warn-bg);border:1px solid #eedcb8}.console-root .dnote-sent.ok{background:var(--good-bg);border-color:#CDE9D7}.console-root .dnote-sent b{font-size:13.5px;font-weight:650}.console-root .dnote-sent span{font-size:12px;color:var(--ink-2);line-height:1.55}.console-root .pay2{display:flex;flex-direction:column;gap:14px}.console-root .pay2-head{display:flex;align-items:center;gap:10px}.console-root .pay2-month{display:flex;gap:6px}.console-root .pay2-state{margin-left:auto;font-size:12px;font-weight:650;padding:5px 12px;border-radius:var(--r-pill);background:var(--surface-2);color:var(--ink-3);border:1px solid var(--line)}.console-root .pay2-state.on{background:var(--good-bg);color:var(--good);border-color:#CDE9D7}.console-root .pay2-hero{background:var(--signal-wash);border:1px solid var(--signal);border-radius:18px;padding:18px}.console-root .pay2-hero-k{font-size:13px;font-weight:600;color:var(--ink-2)}.console-root .pay2-hero-v{font-size:30px;font-weight:700;letter-spacing:-.03em;color:var(--ink);margin-top:2px}.console-root .pay2-hero-s{font-size:13px;color:var(--ink-3);margin-top:4px}.console-root .finance-period{margin:0;gap:12px;flex-wrap:wrap}.console-root .pay2-tools{display:flex;gap:8px}.console-root .pay2-tools button{flex:1 1;display:flex;align-items:center;gap:11px;padding:12px 12px 12px 13px;border:1px solid var(--line-strong);border-radius:14px;background:var(--surface);text-align:left;box-shadow:var(--shadow-card);transition:background .12s,border-color .12s,transform .08s}.console-root .pay2-tools button:hover{background:var(--surface-2);border-color:var(--ink-3)}.console-root .pay2-tools button:active{transform:scale(.985);background:var(--surface-2)}.console-root .pay2-tool-ic{width:36px;height:36px;border-radius:11px;background:var(--signal);color:var(--signal-ink);display:grid;place-items:center;flex:none}.console-root .pay2-tool-ic svg{width:18px;height:18px}.console-root .pay2-tool-m{display:flex;flex-direction:column;gap:1px;flex:1 1;min-width:0}.console-root .pay2-tool-m b{font-size:14.5px;font-weight:650;color:var(--ink)}.console-root .pay2-tool-m>span{font-size:11.5px;color:var(--ink-3)}.console-root .pay2-tool-chev{width:16px;height:16px;color:var(--ink-3);flex:none}.console-root .pay2-list{display:flex;flex-direction:column;gap:6px}.console-root .pay2-row{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.console-root .pay2-m{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:3px}.console-root .pay2-n{font-size:15.5px;font-weight:650}.console-root .pay2-b{font-size:12px;color:var(--ink-3);display:flex;flex-wrap:wrap;gap:8px}.console-root .pay2-inc{color:var(--good);font-weight:700}.console-root .pay2-amt{font-size:17px;font-weight:700;letter-spacing:-.02em;white-space:nowrap}.console-root .pay2-acts{display:flex;gap:8px;margin-top:2px}.console-root .pay2-btn{flex:1 1;height:52px;border-radius:15px;font-size:15px;font-weight:650}.console-root .pay2-btn.primary{background:var(--signal);color:var(--signal-ink)}.console-root .pay2-btn.ghost{flex:0 0 auto;padding:0 18px;background:var(--surface-2);color:var(--ink-2);border:1px solid var(--line-strong)}.console-root .pay2-btn:active:not(:disabled){transform:scale(.99)}.console-root .pay2-note{font-size:12px;color:var(--ink-3);margin:-4px 0 0}@media (min-width:769px){.console-root .pay2-acts,.console-root .pay2-note{max-width:420px}.console-root .dues-bulk{max-width:520px;margin-left:auto;margin-right:auto}}.console-root .rul{display:flex;flex-direction:column;gap:10px}.console-root .rul-formula{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:14px;border-radius:14px;background:var(--surface-2);border:1px solid var(--line);font-size:13px;font-weight:700;color:var(--ink-2)}.console-root .rul-formula em{font-style:normal;color:var(--ink-3);font-weight:650}.console-root .rul-slab{display:flex;flex-direction:column;gap:2px;margin-top:8px}.console-root .rul-slab span{font-size:11.5px;font-weight:500;color:var(--ink-3)}.console-root .rul-slab{font-size:13px;font-weight:650;color:var(--ink)}.console-root .rul-none{font-size:12.5px;color:var(--ink-3);padding:14px;border:1px dashed var(--line-strong);border-radius:12px;text-align:center}.console-root .rul-card{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:13px 14px}.console-root .rul-card-h{display:flex;align-items:baseline;gap:8px}.console-root .rul-card-h b{font-size:14.5px;font-weight:650}.console-root .rul-card-h span{margin-left:auto;font-size:12px;color:var(--ink-3)}.console-root .rul-fee{display:flex;align-items:center;gap:10px;margin-top:9px}.console-root .rul-fee label{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--ink-3)}.console-root .rul-fee input{width:96px;height:38px;padding:0 9px;text-align:right;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface);font-size:15px;font-family:inherit;color:var(--ink)}.console-root .rul-fee em{font-style:normal}.console-root .rul-preview{margin-left:auto;font-size:12px;color:var(--ink-3)}.console-root .rul-preview b{font-size:14px;font-weight:650;color:var(--ink)}.console-root .rul-split{display:flex;gap:6px;margin-top:9px}.console-root .rul-split button{flex:1 1;height:38px;border-radius:10px;border:1px solid var(--line);background:var(--surface);font-size:13px;font-weight:700}.console-root .rul-split button.on{background:var(--ink);border-color:var(--ink);color:#fff}.console-root .rul-split-in{flex:1 1;height:38px;padding:0 10px;text-align:center;border:1px solid var(--ink);border-radius:10px;background:var(--surface);font-size:15px;font-family:inherit;color:var(--ink)}.console-root .inc{display:flex;flex-direction:column;gap:10px}.console-root .inc-lead{font-size:12.5px;color:var(--ink-2);line-height:1.6;margin:0}.console-root .inc-locked{font-size:12.5px;color:var(--ink-2);background:var(--warn-bg);border:1px solid #eedcb8;border-radius:12px;padding:11px 13px}.console-root .inc-card{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:12px 14px}.console-root .inc-card-h{display:flex;align-items:baseline;gap:8px}.console-root .inc-card-h b{font-size:14.5px;font-weight:650}.console-root .inc-card-h span{margin-left:auto;font-size:12.5px;color:var(--ink-3);font-weight:700}.console-root .inc-card-h span.on{color:var(--good)}.console-root .inc-item{display:flex;align-items:center;gap:10px;margin-top:8px;padding:9px 11px;border-radius:11px;background:var(--surface-2)}.console-root .inc-item-l{font-size:13px;flex:1 1;min-width:0}.console-root .inc-item-a{font-size:13.5px;font-weight:650}.console-root .inc-x{width:26px;height:26px;border-radius:8px;background:var(--surface);color:var(--ink-3);font-size:12px;flex:none}.console-root .inc-x:disabled{opacity:.35}.console-root .inc-add{width:100%;height:38px;margin-top:9px;border-radius:10px;border:1px dashed var(--line-strong);background:none;font-size:13px;font-weight:700;color:var(--ink-2)}.console-root .inc-add:disabled{opacity:.4}.console-root .inc-form{display:flex;flex-direction:column;gap:7px;margin-top:9px}.console-root .inc-presets{display:flex;flex-wrap:wrap;gap:5px}.console-root .inc-presets button{height:30px;padding:0 11px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--surface);font-size:12px;font-weight:700;color:var(--ink-2)}.console-root .inc-presets button.on{background:var(--signal-wash);border-color:var(--signal-deep);color:var(--signal-ink)}.console-root .inc-in{height:42px;padding:0 12px;border:1px solid var(--line-strong);border-radius:11px;background:var(--surface);font-size:15px;font-family:inherit;color:var(--ink)}.console-root .inc-in.num{flex:1 1;min-width:0;text-align:right}.console-root .inc-row{display:flex;gap:7px;align-items:center}.console-root .inc-cancel{padding:0 14px;background:var(--surface-2);color:var(--ink-2);font-weight:700}.console-root .inc-cancel,.console-root .inc-save{flex:none;height:42px;border-radius:11px;font-size:13.5px;white-space:nowrap}.console-root .inc-save{padding:0 18px;background:var(--signal);color:var(--signal-ink);font-weight:650}.console-root .ntc{display:flex;flex-direction:column;gap:12px;margin-top:16px}.console-root .ntc-head{display:flex;align-items:center;gap:12px}.console-root .ntc-head-m{display:flex;flex-direction:column;gap:2px;flex:1 1;min-width:0}.console-root .ntc-head-m b{font-size:15px;font-weight:650}.console-root .ntc-head-m span{font-size:12.5px;color:var(--ink-3)}.console-root .ntc-new{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 16px;border-radius:var(--r-pill);background:var(--signal);color:var(--signal-ink);font-size:14px;font-weight:650;flex:none}.console-root .ntc-new svg{width:15px;height:15px}.console-root .ntc-new:active{transform:scale(.98)}.console-root .ntc-empty{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:38px 20px;border:1px dashed var(--line-strong);border-radius:16px}.console-root .ntc-empty-ic{width:46px;height:46px;border-radius:50%;background:var(--warn-bg);color:var(--warn);display:grid;place-items:center;margin-bottom:2px}.console-root .ntc-empty-ic svg{width:22px;height:22px}.console-root .ntc-empty b{font-size:15px;font-weight:650}.console-root .ntc-empty span{font-size:12.5px;color:var(--ink-3);line-height:1.55}.console-root .ntc-empty-btn{margin-top:10px;height:40px;padding:0 18px;border-radius:var(--r-pill);background:var(--signal);color:var(--signal-ink);font-size:13.5px;font-weight:650}.console-root .ntc-slab{font-size:12.5px;font-weight:650;color:var(--ink-3);margin-top:6px;display:flex;align-items:center;gap:6px}.console-root .ntc-slab em{font-style:normal;font-weight:700}.console-root .ntc-list{display:flex;flex-direction:column;gap:0;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface)}.console-root .ntc-card{display:flex;align-items:flex-start;gap:16px;padding:20px;border:0;border-radius:0;background:var(--surface)}.console-root .ntc-card+.ntc-card{border-top:1px solid var(--line)}.console-root .ntc-card.off{background:var(--surface-2)}.console-root .ntc-card.off .ntc-t{color:var(--ink-2)}.console-root .ntc-card-m{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:4px}.console-root .ntc-tags{display:flex;flex-wrap:wrap;gap:5px}.console-root .ntc-tag{font-size:10.5px;font-weight:650;padding:2px 8px;border-radius:var(--r-pill)}.console-root .ntc-tag.pin{background:var(--signal);color:var(--signal-ink)}.console-root .ntc-tag.off{background:var(--surface);color:var(--ink-3);border:1px solid var(--line-strong)}.console-root .ntc-tag.aud{background:var(--surface-2);color:var(--ink-3);border:1px solid var(--line)}.console-root .ntc-tag.aud.a-student,.console-root .ntc-tag.aud.a-teacher{background:#EAF1FF;color:#3B6BD8;border-color:#D6E2FA}.console-root .ntc-t{font-size:15px;font-weight:650;line-height:1.4}.console-root .ntc-b{font-size:12.5px;color:var(--ink-2);line-height:1.6;white-space:pre-wrap}.console-root .ntc-acts{display:flex;gap:4px;flex:none}.console-root .ntc-acts button{width:34px;height:34px;border-radius:10px;background:var(--surface-2);color:var(--ink-2);display:grid;place-items:center}.console-root .ntc-acts button svg{width:16px;height:16px}.console-root .ntc-acts button:hover{background:var(--line)}.console-root .ntc-acts button.danger:hover{background:var(--crit-bg);color:var(--crit)}.console-root .ntcf{display:flex;flex-direction:column;gap:8px}.console-root .ntcf-lab{font-size:12.5px;font-weight:650;color:var(--ink-2);margin-top:8px}.console-root .ntcf-lab span{font-weight:500;color:var(--ink-3)}.console-root .ntcf-aud{display:flex;gap:7px}.console-root .ntcf-aud-b{flex:1 1;display:flex;flex-direction:column;gap:2px;padding:11px 10px;border:1px solid var(--line);border-radius:12px;background:var(--surface);text-align:left}.console-root .ntcf-aud-b b{font-size:13.5px;font-weight:650}.console-root .ntcf-aud-b span{font-size:11px;color:var(--ink-3)}.console-root .ntcf-aud-b.on{border-color:var(--signal-deep);background:var(--signal-wash)}.console-root .ntcf-aud-b.on b{color:var(--signal-ink)}.console-root .ntcf-title{height:48px;padding:0 14px;font-size:16px;font-weight:700}.console-root .ntcf-body,.console-root .ntcf-title{border:1px solid var(--line-strong);border-radius:12px;background:var(--surface);font-family:inherit;color:var(--ink)}.console-root .ntcf-body{padding:12px 14px;font-size:15px;line-height:1.6;resize:vertical}.console-root .ntcf-opt{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:var(--surface);text-align:left}.console-root .ntcf-opt.on{border-color:var(--signal-deep);background:var(--signal-wash)}.console-root .ntcf-opt-m{display:flex;flex-direction:column;gap:2px;flex:1 1;min-width:0}.console-root .ntcf-opt-m b{font-size:14px;font-weight:650}.console-root .ntcf-opt-m span{font-size:11.5px;color:var(--ink-3)}.console-root .ntcf-sw{width:44px;height:26px;border-radius:999px;background:var(--line-strong);position:relative;flex:none;transition:background .15s}.console-root .ntcf-sw:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .15s}.console-root .ntcf-sw.on{background:var(--signal-deep)}.console-root .ntcf-sw.on:after{transform:translateX(18px)}.console-root .fme{display:flex;flex-direction:column;gap:9px;padding:6px 2px 40px}.console-root .fme-title{height:52px;padding:0 15px;font-size:18px;font-weight:650}.console-root .fme-desc,.console-root .fme-title{border:1px solid var(--line-strong);border-radius:13px;background:var(--surface);font-family:inherit;color:var(--ink)}.console-root .fme-desc{padding:12px 15px;font-size:14px;line-height:1.6;resize:vertical}.console-root .fme-lab{font-size:12.5px;font-weight:650;color:var(--ink-2);margin-top:10px}.console-root .fme-lab span{font-weight:600;color:var(--ink-3);margin-left:4px}.console-root .fme-seg{display:flex;gap:6px}.console-root .fme-seg button{flex:1 1;height:40px;border-radius:11px;border:1px solid var(--line);background:var(--surface);font-size:13.5px;font-weight:700;color:var(--ink-2)}.console-root .fme-seg button.on{background:var(--ink);border-color:var(--ink);color:#fff}.console-root .fme-hint{font-size:12px;color:var(--ink-3);margin:2px 0 0}.console-root .fme-none{font-size:12.5px;color:var(--ink-3);padding:22px 14px;border:1px dashed var(--line-strong);border-radius:13px;text-align:center}.console-root .fme-field,.console-root .fme-fields{display:flex;flex-direction:column;gap:8px}.console-root .fme-field{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:12px 13px}.console-root .fme-field-h{display:flex;align-items:center;gap:7px}.console-root .fme-badge{background:var(--surface-2);color:var(--ink-2)}.console-root .fme-badge,.console-root .fme-req{font-size:11px;font-weight:650;padding:3px 9px;border-radius:var(--r-pill);border:1px solid var(--line)}.console-root .fme-req{background:var(--surface);color:var(--ink-3)}.console-root .fme-req.on{background:var(--crit-bg);color:var(--crit);border-color:#F1CACA}.console-root .fme-tools{display:flex;gap:3px;margin-left:auto}.console-root .fme-tools button{width:30px;height:30px;border-radius:8px;background:var(--surface-2);color:var(--ink-2);font-size:13px}.console-root .fme-tools button:disabled{opacity:.3}.console-root .fme-tools button.danger:hover{background:var(--crit-bg);color:var(--crit)}.console-root .fme-in{height:44px;padding:0 13px;border:1px solid var(--line-strong);border-radius:11px;background:var(--surface);font-size:15px;font-family:inherit;color:var(--ink)}.console-root .fme-in.area{height:auto;padding:11px 13px;line-height:1.6;resize:vertical}.console-root .fme-opts{display:flex;flex-direction:column;gap:6px;padding-left:2px}.console-root .fme-opt{display:flex;gap:6px;align-items:center}.console-root .fme-opt input{flex:1 1;height:40px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);font-size:14px;font-family:inherit;color:var(--ink)}.console-root .fme-opt button{width:30px;height:30px;border-radius:8px;background:var(--surface-2);color:var(--ink-3);font-size:12px;flex:none}.console-root .fme-opt-add{align-self:flex-start;height:34px;padding:0 12px;border-radius:9px;border:1px dashed var(--line-strong);background:none;font-size:12.5px;font-weight:700;color:var(--ink-2)}.console-root .fme-add{height:50px;margin-top:6px;border-radius:14px;border:1px dashed var(--line-strong);background:var(--surface);font-size:14.5px;font-weight:650;color:var(--ink-2)}.console-root .fme-add:active{background:var(--surface-2)}.console-root .fme-pick{display:flex;flex-direction:column;gap:7px}.console-root .fme-pick-b{display:flex;flex-direction:column;gap:2px;padding:13px 15px;border:1px solid var(--line);border-radius:13px;background:var(--surface);text-align:left}.console-root .fme-pick-b:hover{border-color:var(--line-strong);background:var(--surface-2)}.console-root .fme-pick-b b{font-size:14.5px;font-weight:650}.console-root .fme-pick-b span{font-size:12px;color:var(--ink-3)}.console-root .rj{margin:14px 0 4px}.console-root .rj-h{display:flex;align-items:baseline;gap:8px;margin-bottom:8px}.console-root .rj-h b{font-size:13.5px;font-weight:650}.console-root .rj-h span{font-size:12px;color:var(--ink-3)}.console-root .rj-list{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.console-root .rj-list::-webkit-scrollbar{display:none}.console-root .rj-card{display:inline-flex;align-items:center;gap:9px;padding:9px 14px 9px 9px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);flex:none;text-align:left}.console-root .rj-card:hover{border-color:var(--line-strong);background:var(--surface-2)}.console-root .rj-card:active{transform:scale(.98)}.console-root .rj-av{width:32px;height:32px;border-radius:50%;background:var(--signal-wash);color:var(--signal-ink);display:grid;place-items:center;font-size:13px;font-weight:650;flex:none}.console-root .rj-m{display:flex;flex-direction:column;gap:1px;min-width:0}.console-root .rj-n{font-size:14px;font-weight:600;white-space:nowrap}.console-root .rj-s{font-size:11px;color:var(--ink-3);white-space:nowrap}.console-root .exp-slab .m-order{margin-left:auto}.console-root .m-order{display:inline-flex;gap:2px;padding:2px;border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--line)}.console-root .m-order button{height:28px;padding:0 12px;border-radius:var(--r-pill);font-size:12.5px;font-weight:700;color:var(--ink-3);background:none}.console-root .m-order button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-card)}.console-root .mng-ord{display:flex;flex-direction:column;gap:2px;flex:none;margin-right:10px}.console-root .mng-ord button{width:26px;height:22px;border-radius:6px;background:var(--surface-2);color:var(--ink-2);font-size:11px;line-height:1}.console-root .mng-ord button:hover:not(:disabled){background:var(--line)}.console-root .mng-ord button:disabled{opacity:.3}.console-root .wb-prod.skel{height:62px;border-radius:12px;background:linear-gradient(90deg,var(--surface-2) 25%,var(--line) 37%,var(--surface-2) 63%);background-size:400% 100%;animation:bwj-skel 1.2s ease-in-out infinite;border:none}@keyframes bwj-skel{0%{background-position:100% 50%}to{background-position:0 50%}}.console-root .pgate{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:4px 2px 2px}.console-root .pgate-ic{width:56px;height:56px;border-radius:50%;background:var(--signal-wash);color:var(--signal-ink);display:grid;place-items:center;margin-bottom:4px}.console-root .pgate-ic svg{width:27px;height:27px}.console-root .pgate-t{margin:0;font-size:15px;font-weight:600;line-height:1.55}.console-root .pgate-s{margin:0;font-size:12.5px;color:var(--ink-2);line-height:1.65}.console-root .pgate-s b{font-weight:650;color:var(--ink)}.console-root .crash{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:56px 20px}.console-root .crash-ic{width:52px;height:52px;border-radius:50%;background:var(--warn-bg);color:var(--warn);display:grid;place-items:center;margin-bottom:6px}.console-root .crash-ic svg{width:25px;height:25px}.console-root .crash b{font-size:16px;font-weight:650}.console-root .crash span{font-size:13px;color:var(--ink-3);line-height:1.6}.console-root .crash-acts{display:flex;gap:8px;margin-top:14px}.console-root .crash-acts .b{text-decoration:none;display:inline-flex;align-items:center}.console-root .crash-code{font-size:11px;color:var(--ink-3);margin-top:12px;font-family:var(--f-mono)}.console-root .snote{border-top:1px solid var(--line);padding-top:14px;margin-top:4px}.console-root .snote-prev{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);padding:11px 12px;margin-bottom:12px}.console-root .snote-prev-h{cursor:pointer;min-height:32px;font-size:12px;font-weight:600;color:var(--ink-2);letter-spacing:.01em;margin-bottom:7px}.console-root .snote-prev-row{display:flex;align-items:flex-start;gap:7px;flex-wrap:wrap;font-size:13px;line-height:1.55;color:var(--ink)}.console-root .snote-prev-row+.snote-prev-row{margin-top:7px;padding-top:7px;border-top:1px solid rgba(30,42,12,.12)}.console-root .snote-prev-body{flex:1 1 160px;min-width:0;white-space:pre-wrap;word-break:break-word}.console-root .snote-tabs{display:flex;gap:6px;margin-bottom:8px}.console-root .snote-tab{flex:1 1;border:1px solid var(--line-strong);background:var(--surface);border-radius:10px;padding:9px 10px;font:inherit;font-size:13px;font-weight:600;color:var(--ink-2);cursor:pointer;transition:filter .12s,background .12s}.console-root .snote-tab:active{filter:brightness(.94)}.console-root .snote-tab.on{background:var(--ink);border-color:var(--ink);color:#fff}.console-root .snote-tab.out.on{background:var(--signal);border-color:var(--signal-deep);color:var(--signal-ink)}.console-root .snote-in{width:100%;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);padding:14px;font:inherit;font-size:16px;line-height:1.7;color:var(--ink);resize:vertical;min-height:74px}.console-root .snote-in:focus{outline:none;border-color:var(--ink-3)}.console-root .snote-in::placeholder{color:var(--ink-3)}.console-root .snote-foot{display:flex;align-items:center;gap:10px;margin-top:8px}.console-root .snote-hint{flex:1 1;font-size:11.5px;line-height:1.45;color:var(--ink-3)}.console-root .snote-hint.out{color:var(--signal-ink);background:var(--signal-wash);border-radius:var(--r-sm);padding:5px 8px;font-weight:700}.console-root .snote-save{border:0;background:var(--signal);color:var(--signal-ink);border-radius:10px;padding:10px 18px;font:inherit;font-size:13px;font-weight:650;cursor:pointer;white-space:nowrap;transition:filter .12s}.console-root .snote-save:active{filter:brightness(.93)}.console-root .snote-save:disabled{background:var(--surface-2);color:var(--ink-3);cursor:default}.console-root .snote-rows{margin-top:12px}.console-root .note-composer{padding:16px 0}.console-root .note-audience{display:flex;flex-direction:column;gap:4px;margin-bottom:14px;font-size:12px;line-height:1.6;color:var(--ink-3)}.console-root .note-audience b{font-size:13px;color:var(--ink);font-weight:600}.console-root .note-prompts{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.console-root .note-prompts button{min-height:44px;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);padding:8px 10px;border-radius:8px;font-size:12px;cursor:pointer}.console-root .note-save-result{color:var(--good);font-size:13px;margin-top:12px}.console-root .note-empty{color:var(--ink-3);font-size:13px;padding:16px 0}.console-root .note-char{flex:1 1;font-size:11px;color:var(--ink-3)}.console-root .teacher-practice-history{border:1px solid var(--line);border-radius:12px;background:var(--surface-2);margin-bottom:16px}.console-root .teacher-practice-history summary{min-height:44px;padding:14px;font-size:13px;font-weight:600;cursor:pointer}.console-root .teacher-practice-history summary span{font-size:12px;color:var(--ink-3);font-weight:400;margin-left:8px}.console-root .teacher-practice-history article{padding:14px;border-top:1px solid var(--line)}.console-root .teacher-practice-history header{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--ink-2)}.console-root .teacher-practice-history p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;font-size:13px;margin:8px 0 0}.console-root .snote-row-toggle{display:block;width:100%;min-height:44px;padding:0;text-align:left;color:inherit;background:none;border:0;font:inherit;cursor:pointer}.console-root .note-expand-label{display:block;margin-top:8px;font-size:11px;color:var(--ink-3)}.console-root .snote-rows>*+*{margin-top:8px}.console-root .mnote-row,.console-root .snote-row{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:10px 12px}.console-root .mnote-row.out,.console-root .snote-row.out{background:var(--surface);border-color:var(--line)}.console-root .mnote-row.pin{border-color:var(--line-strong);background:var(--surface-2)}.console-root .snote-row-h{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:5px}.console-root .snote-row-b{font-size:13.5px;line-height:1.6;color:var(--ink);white-space:pre-wrap;word-break:break-word;max-height:3.2em;overflow:hidden}.console-root .mnote-row.open .snote-row-b,.console-root .snote-row.open .snote-row-b{max-height:none;overflow:visible}.console-root .mnote-row,.console-root .snote-row{cursor:pointer}.console-root .mnote-row:active,.console-root .snote-row:active{filter:brightness(.97)}.console-root .mnote-row:not(.open) .snote-row-b:after,.console-root .snote-row:not(.open) .snote-row-b:after{content:""}.console-root .snote-row-a,.console-root .snote-row-d{font-size:11px;color:var(--ink-3);font-weight:650}.console-root .snote-row-a{margin-left:auto}.console-root .snote-badge{font-size:10.5px;font-weight:650;letter-spacing:.01em;border-radius:var(--r-pill);padding:3px 8px;background:var(--surface-2);color:var(--ink-2);border:1px solid var(--line);white-space:nowrap}.console-root .snote-badge.out{background:var(--signal);border-color:var(--signal-deep);color:var(--signal-ink)}.console-root .snote-read{background:var(--good-bg);color:var(--good)}.console-root .snote-read,.console-root .snote-unread{font-size:10.5px;font-weight:650;border-radius:var(--r-pill);padding:3px 8px;white-space:nowrap}.console-root .snote-unread{background:var(--warn-bg);color:var(--warn)}.console-root .snote-row-acts{display:flex;gap:6px;margin-top:8px}.console-root .snote-row-acts button{border:1px solid var(--line-strong);background:var(--surface);border-radius:8px;padding:5px 10px;font:inherit;font-size:11.5px;font-weight:600;color:var(--ink-2);cursor:pointer}.console-root .snote-row-acts button:active{filter:brightness(.94)}.console-root .snote-row-acts button.del{color:var(--crit)}.console-root .snote-skel{height:56px;border-radius:var(--r-md);margin-top:12px;background:linear-gradient(90deg,var(--surface-2) 25%,var(--line) 37%,var(--surface-2) 63%);background-size:400% 100%;animation:bwj-skel 1.4s ease infinite}.console-root .mnote{margin:18px 0 6px}.console-root .mnote-h{display:flex;align-items:center;gap:10px;margin-bottom:9px}.console-root .mnote-lab{font-size:12.5px;font-weight:650;color:var(--ink-2)}.console-root .mnote-add{margin-left:auto;border:1px solid var(--line-strong);background:var(--surface);border-radius:9px;padding:7px 13px;font:inherit;font-size:12.5px;font-weight:600;color:var(--ink);cursor:pointer;transition:filter .12s}.console-root .mnote-add:active{filter:brightness(.94)}.console-root .mnote-new{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);padding:12px;margin-bottom:10px}.console-root .mnote-hint{margin-top:9px;font-size:11.5px;line-height:1.5;color:var(--ink-3)}.console-root .mnote-hint b{color:var(--ink-2);font-weight:650}.console-root .mnote-pinned{margin-bottom:10px}.console-root .mnote-pinned>*+*,.console-root .mnote-rows>*+*{margin-top:8px}.console-root .mnote-empty{font-size:12.5px;color:var(--ink-3);padding:12px 2px}.console-root .stu-fb{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:var(--shadow-card)}.console-root .stu-fb-h{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:650;color:var(--ink);margin-bottom:10px}.console-root .stu-fb-n{min-width:18px;height:18px;padding:0 5px;border-radius:var(--r-pill);background:var(--signal);color:var(--signal-ink);font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.console-root .stu-fb-row{display:block;width:100%;text-align:left;border:1px solid var(--line);background:var(--surface-2);border-radius:12px;padding:11px 12px;font:inherit;cursor:pointer;transition:filter .12s}.console-root .stu-fb-row:active{filter:brightness(.95)}.console-root .stu-fb-row+.stu-fb-row{margin-top:8px}.console-root .stu-fb-row.new{background:var(--signal-wash);border-color:var(--signal)}.console-root .stu-fb-d{display:block;font-size:11px;font-weight:700;color:var(--ink-3);margin-bottom:4px}.console-root .stu-fb-b{display:block;font-size:13.5px;line-height:1.6;color:var(--ink);white-space:pre-wrap;word-break:break-word;max-height:3.2em;overflow:hidden}.console-root .stu-fb-row.open .stu-fb-b{max-height:none;overflow:visible}.console-root .ses-hist-row[role=button]{cursor:pointer;transition:filter .12s}.console-root .ses-hist-row[role=button]:active{filter:brightness(.96)}.console-root .minor{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);padding:12px;margin:4px 0 10px}.console-root .minor-chk{display:grid;grid-template-columns:auto 1fr;grid-gap:4px 9px;gap:4px 9px;align-items:center;cursor:pointer}.console-root .minor-chk input{grid-row:1/span 2;width:18px;height:18px;accent-color:var(--signal-deep)}.console-root .minor-lab{font-size:13.5px;font-weight:650;color:var(--ink)}.console-root .minor-sub{font-size:11.5px;line-height:1.45;color:var(--ink-3)}.console-root .minor-fields{margin-top:11px}.console-root .acct-issued-row{display:flex;align-items:center;gap:10px;justify-content:space-between;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:12px 14px}.console-root .acct-issued-row+.acct-issued-row{margin-top:8px}.console-root .acct-issued-row.guardian{background:var(--signal-wash);border-color:var(--signal)}.console-root .acct-who{font-size:12.5px;font-weight:700;color:var(--ink-2)}.console-root .acct-id{font-family:var(--f-mono);font-size:15px;font-weight:650;letter-spacing:.02em;color:var(--ink)}.console-root .acct-issued-pwrow{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding:12px 14px;border-radius:var(--r-md);background:var(--ink);color:#fff}.console-root .acct-issued-pwrow span{font-size:12.5px;font-weight:700;opacity:.8}.console-root .acct-issued-pw{font-family:var(--f-mono);font-size:15px;font-weight:650;letter-spacing:.02em}.console-root .acct-issued-note{font-size:11.5px;line-height:1.55;color:var(--ink-3);margin:11px 0 0}.console-root .acct-issued-copy{width:100%;margin-top:12px;border:0;border-radius:12px;background:var(--signal);color:var(--signal-ink);padding:13px;font:inherit;font-size:14px;font-weight:650;cursor:pointer;transition:filter .12s}.console-root .acct-issued-copy:active{filter:brightness(.93)}.console-root .acct-issued-copy:disabled{background:var(--surface-2);color:var(--ink-3)}.console-root .acct-issued-skel{height:120px;border-radius:var(--r-md);background:linear-gradient(90deg,var(--surface-2) 25%,var(--line) 37%,var(--surface-2) 63%);background-size:400% 100%;animation:bwj-skel 1.4s ease infinite}.console-root .kidbar{position:relative}.console-root .kidbar-cur,.console-root .kidbar.one{display:flex;align-items:center;gap:6px;width:100%;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);padding:9px 16px;font:inherit;font-size:13px;color:var(--ink-2)}.console-root .kidbar-cur{cursor:pointer;transition:filter .12s}.console-root .kidbar-cur:active{filter:brightness(.95)}.console-root .kidbar-cur b,.console-root .kidbar.one b{font-size:14px;font-weight:700;color:var(--ink)}.console-root .kidbar-cur svg{width:16px;height:16px;margin-left:auto;color:var(--ink-3);transition:transform .15s}.console-root .kidbar-cur svg.up{transform:rotate(180deg)}.console-root .kidbar-list{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:30;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-pop);overflow:hidden}.console-root .kidbar-list button{display:flex;align-items:center;width:100%;gap:8px;border:0;background:none;padding:13px 16px;font:inherit;font-size:14px;font-weight:700;color:var(--ink);cursor:pointer;text-align:left}.console-root .kidbar-list button+button{border-top:1px solid var(--line)}.console-root .kidbar-list button.on{background:var(--signal-wash)}.console-root .kidbar-list svg{width:15px;height:15px;margin-left:auto;color:var(--signal-deep)}.console-root .pw-form{display:flex;flex-direction:column;gap:12px}.console-root .pw-warn{font-size:12px;font-weight:700;color:var(--crit)}.console-root .pw-done{font-size:13.5px;line-height:1.6;background:var(--good-bg);color:var(--good);border-radius:var(--r-md);padding:14px 15px;font-weight:700}.console-root .stu-pw{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--ink-2)}.console-root .stu-pw svg{width:18px;height:18px}.console-root .mh-pay{display:flex;flex-direction:column;gap:2px;margin-top:10px;padding:13px 15px;border-radius:14px;background:var(--signal-wash);border:1px solid var(--signal)}.console-root .mh-pay-k{font-size:11.5px;font-weight:600;color:var(--signal-ink);opacity:.85}.console-root .mh-pay-v{font-size:22px;font-weight:700;letter-spacing:-.03em;color:var(--ink)}.console-root .mh-pay-s{font-size:11px;font-weight:650;color:var(--ink-2)}.console-root .vid{margin:18px 0 6px}.console-root .vid-h{display:flex;align-items:center;gap:10px;margin-bottom:10px}.console-root .vid-lab{font-size:12.5px;font-weight:650;color:var(--ink-2)}.console-root .vid-h-acts{margin-left:auto;display:flex;gap:7px}.console-root .vid-add,.console-root .vid-growth-btn{border:1px solid var(--line-strong);background:var(--surface);border-radius:9px;padding:7px 13px;font:inherit;font-size:12.5px;font-weight:600;color:var(--ink);cursor:pointer;transition:filter .12s}.console-root .vid-growth-btn{background:var(--signal);border-color:var(--signal-deep);color:var(--signal-ink)}.console-root .vid-add:active,.console-root .vid-growth-btn:active{filter:brightness(.93)}.console-root .vid-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));grid-gap:12px;gap:12px}.console-root .vid-card{display:flex;flex-direction:column;gap:8px;border:0;padding:0;background:none;font:inherit;text-align:left;cursor:pointer}.console-root .vid-thumb{position:relative;display:block;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:var(--surface-2);border:1px solid var(--line);transition:filter .14s,transform .14s}.console-root .vid-card:active .vid-thumb{filter:brightness(.94);transform:scale(.985)}.console-root .vid-thumb img{width:100%;height:100%;object-fit:cover;display:block}.console-root .vid-thumb-x{display:grid;place-items:center;height:100%;font-size:12px;color:var(--crit);font-weight:700}.console-root .vid-play{position:absolute;left:50%;top:50%;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;display:grid;place-items:center;background:rgba(20,24,31,.62);color:#fff;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.console-root .vid-play svg{width:22px;height:22px;margin-left:2px}.console-root .vid-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.console-root .vid-meta b{font-size:13.5px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .vid-meta span{font-size:11.5px;color:var(--ink-3);font-weight:650}.console-root .vid-empty{font-size:12.5px;line-height:1.6;color:var(--ink-3);border:1px dashed var(--line-strong);border-radius:var(--r-md);padding:18px 16px}.console-root .vid-skel{aspect-ratio:16/9;border-radius:14px;background:linear-gradient(90deg,var(--surface-2) 25%,var(--line) 37%,var(--surface-2) 63%);background-size:400% 100%;animation:bwj-skel 1.4s ease infinite}.console-root .vid-add-form{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);padding:14px;margin-bottom:12px;display:flex;flex-direction:column;gap:11px}.console-root .vid-prev{display:flex;align-items:center;gap:11px}.console-root .vid-prev img{width:128px;aspect-ratio:16/9;object-fit:cover;border-radius:10px;border:1px solid var(--line)}.console-root .vid-prev span{font-size:12.5px;font-weight:700;color:var(--ink-2)}.console-root .vid-add-acts{display:flex;gap:8px;justify-content:flex-end}.console-root .vid-add-acts .ghost{border:1px solid var(--line-strong);background:var(--surface);border-radius:10px;padding:10px 16px;font:inherit;font-size:13px;font-weight:600;color:var(--ink-2);cursor:pointer}.console-root .vid-save{border:0;background:var(--signal);color:var(--signal-ink);border-radius:10px;padding:10px 18px;font:inherit;font-size:13px;font-weight:650;cursor:pointer}.console-root .vid-save:disabled{background:var(--surface);color:var(--ink-3);border:1px solid var(--line)}.console-root .vid-tip{font-size:11.5px;line-height:1.5;color:var(--ink-3);margin:0}.console-root .vid-play-wrap{display:flex;flex-direction:column;gap:12px}.console-root .vid-frame{width:100%;aspect-ratio:16/9;border:0;border-radius:14px;background:#000}.console-root .vid-open{align-self:flex-start;font-size:12.5px;font-weight:600;color:var(--ink-2);text-decoration:underline}.console-root .growth{display:flex;flex-direction:column;gap:16px}.console-root .growth-seg{margin:0}.console-root .growth-pair{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:10px;gap:10px;align-items:start}.console-root .growth-now,.console-root .growth-then{display:flex;flex-direction:column;gap:7px;min-width:0}.console-root .growth-lab{font-size:11.5px;font-weight:650;color:var(--ink-3)}.console-root .growth-now .growth-lab{color:var(--signal-ink)}.console-root .growth-thumb{display:block;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:var(--surface-2);border:1px solid var(--line)}.console-root .growth-now .growth-thumb{border-color:var(--signal)}.console-root .growth-thumb img{width:100%;height:100%;object-fit:cover;display:block}.console-root .growth-thumb.empty{display:grid;place-items:center;font-size:11.5px;color:var(--ink-3);font-weight:700;border-style:dashed}.console-root .growth-now b,.console-root .growth-then b{font-size:13px;font-weight:600;line-height:1.4;color:var(--ink)}.console-root .growth-arrow{align-self:center;color:var(--ink-3)}.console-root .growth-arrow svg{width:22px;height:22px}.console-root .growth-stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:9px;gap:9px}.console-root .growth-stat{display:flex;flex-direction:column;gap:2px;align-items:center;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:14px 8px}.console-root .growth-stat b{font-size:21px;font-weight:700;letter-spacing:-.03em}.console-root .growth-stat span{font-size:11px;color:var(--ink-3);font-weight:700;text-align:center}.console-root .stu-vid{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:var(--shadow-card)}.console-root .stu-vid .vid{margin:0}.console-root .stu-vid .vid-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.console-root .practice-journal{min-width:0}.console-root .journal-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:4px 0 24px}.console-root .journal-heading h2{font-size:20px;font-weight:650;letter-spacing:-.04em;margin:0}.console-root .journal-heading p{font-size:12px;color:var(--ink-3);margin:6px 0 0}.console-root .journal-add{flex:none;min-height:44px;border:0;background:var(--signal);color:var(--signal-ink);padding:10px 14px;border-radius:10px;font:inherit;font-size:13px;font-weight:600;cursor:pointer}.console-root .journal-month{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:16px}.console-root .journal-month>button{width:44px;height:44px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font-size:24px;cursor:pointer}.console-root .journal-month>button:disabled{opacity:.35;cursor:default}.console-root .journal-month input{min-height:44px;min-width:0;max-width:180px;border:0;background:transparent;color:var(--ink);font:inherit;font-size:16px;text-align:center}.console-root .journal-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:20px 0;background:var(--surface);border:1px solid var(--line);border-radius:14px}.console-root .journal-summary>div{text-align:center}.console-root .journal-summary>div+div{border-left:1px solid var(--line)}.console-root .journal-summary dt{font-size:11px;color:var(--ink-3)}.console-root .journal-summary dd{margin:6px 0 0;font-size:26px;font-weight:550;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .journal-summary dd small{margin-left:3px;font-size:12px;font-weight:400;color:var(--ink-3)}.console-root .journal-caption{margin:10px 0 20px;font-size:11px;line-height:1.6;color:var(--ink-3);text-align:center}.console-root .journal-empty{padding:32px 16px;text-align:center;font-size:13px;color:var(--ink-3);line-height:1.8}.console-root .journal-empty h3{margin:0;font-size:16px;color:var(--ink);font-weight:600}.console-root .journal-empty .btn-outline{margin-top:12px}.console-root .journal-list{list-style:none;margin:0;padding:0;background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden}.console-root .journal-list li{padding:20px 18px 10px}.console-root .journal-list li+li{border-top:1px solid var(--line)}.console-root .journal-entry-foot,.console-root .journal-entry-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.console-root .journal-entry-head time{font-size:13px;font-weight:600}.console-root .journal-entry-head>span{font-size:12px;color:var(--ink-2)}.console-root .journal-list li>p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.8;margin:12px 0}.console-root .journal-entry-foot{font-size:11px;color:var(--ink-3);min-height:44px}.console-root .journal-entry-foot button{min-width:44px;min-height:44px;border:0;background:none;font:inherit;font-size:12px;color:var(--ink-2);cursor:pointer}.console-root .journal-form textarea{width:100%;resize:vertical;min-height:160px;border:1px solid var(--line-strong);border-radius:12px;padding:14px;font:inherit;font-size:16px;line-height:1.7;color:var(--ink);background:var(--surface)}.console-root .journal-char{font-size:11px;color:var(--ink-3);text-align:right;margin-top:-10px}.console-root .journal-duration{border:0;padding:0;margin:0;min-width:0}.console-root .journal-duration legend{font-size:13px;font-weight:600;margin-bottom:12px}.console-root .journal-duration legend span{font-weight:400;color:var(--ink-3);margin-left:5px}.console-root .journal-duration>div{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px}.console-root .journal-duration button{min-height:44px;background:var(--surface);border:1px solid var(--line-strong);border-radius:10px;font:inherit;font-size:14px;color:var(--ink);cursor:pointer}.console-root .journal-duration button[aria-pressed=true]{border-color:var(--ink);background:var(--brand-wash)}.console-root .journal-duration>label{display:flex;align-items:center;gap:10px;margin-top:12px;color:var(--ink-3);font-size:13px}.console-root .journal-duration input{min-height:44px;width:110px;padding:8px 12px;border:1px solid var(--line-strong);border-radius:10px;font-size:16px;color:var(--ink);background:var(--surface)}@media (max-width:768px){.console-root .growth-pair{grid-template-columns:1fr}.console-root .growth-arrow{justify-self:center;transform:rotate(90deg)}}.console-root .stu-hero{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:18px 18px 14px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:12px}.console-root .stu-hero-top{display:flex;align-items:center;gap:14px}.console-root .stu-hero-m{display:flex;flex-direction:column;gap:1px;flex:1 1;min-width:0}.console-root .stu-hero-k{font-size:12.5px;color:var(--ink-3);font-weight:700}.console-root .stu-hero-v{font-size:38px;font-weight:700;letter-spacing:-.035em;line-height:1.05}.console-root .stu-hero-v span{font-size:17px;font-weight:600;margin-left:2px}.console-root .stu-hero-cta{flex:none;display:inline-flex;align-items:center;gap:7px;border:0;border-radius:14px;background:var(--signal);color:var(--signal-ink);padding:14px 18px;font:inherit;font-size:14px;font-weight:650;cursor:pointer;transition:filter .12s}.console-root .stu-hero-cta:active{filter:brightness(.93)}.console-root .stu-hero-cta svg{width:18px;height:18px}.console-root .stu-hero-passes{display:flex;flex-wrap:wrap;gap:6px}.console-root .stu-hero-pass{font-size:11.5px;font-weight:700;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-pill);padding:4px 10px}.console-root .stu-wl-link{border:0;background:none;padding:6px 0 0;font-size:12.5px;color:var(--ink-3);border-top:1px solid var(--line)}.console-root .stu-wl-link b{color:var(--ink);font-weight:650}.console-root .stu-wl-link:active{filter:brightness(.9)}.console-root .stu-tabs{display:flex;gap:6px;background:var(--surface-2);border:1px solid var(--line);border-radius:14px;padding:4px}.console-root .stu-tab{flex:1 1;border:0;background:none;border-radius:11px;padding:11px 8px;font:inherit;font-size:14px;font-weight:600;color:var(--ink-3);cursor:pointer;transition:background .14s,color .14s}.console-root .stu-tab.on{background:var(--surface);color:var(--ink);font-weight:700;box-shadow:var(--shadow-card)}.console-root .stu-pane{display:flex;flex-direction:column;gap:16px}.console-root .stu-sess-row{width:100%;text-align:left;border:0;background:none;font:inherit;display:flex;align-items:center;gap:12px;padding:12px 2px}.console-root .stu-sess-row:not(:disabled){cursor:pointer;transition:filter .12s}.console-root .stu-sess-row:not(:disabled):active{filter:brightness(.95)}.console-root .student-lesson-record{border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden}.console-root .student-lesson-record .stu-sess-row{padding:16px;border-radius:0;box-shadow:none}.console-root .lesson-feedback-preview{display:block;width:100%;padding:14px 16px;text-align:left;border:0;border-top:1px solid var(--line);background:var(--surface-2);font:inherit;color:var(--ink-2);cursor:pointer}.console-root .lesson-feedback-preview>span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.7}.console-root .lesson-feedback-preview b{display:flex;justify-content:space-between;margin-top:10px;font-size:12px;font-weight:600;color:var(--ink)}.console-root .lesson-feedback-pending{font-size:12px;color:var(--ink-3);padding:0 16px 14px;margin:0}.console-root .lesson-feedback-reader article{padding:4px 0 24px}.console-root .lesson-feedback-reader article+article{border-top:1px solid var(--line);padding-top:24px}.console-root .lesson-feedback-reader header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.console-root .lesson-feedback-reader header b{font-size:14px;font-weight:600}.console-root .lesson-feedback-reader small,.console-root .lesson-feedback-reader time{font-size:12px;color:var(--ink-3)}.console-root .lesson-feedback-reader small{display:block;margin-bottom:8px}.console-root .stu-fb-badge{flex:none;font-size:11px;font-weight:650;border-radius:var(--r-pill);padding:4px 10px;background:var(--surface);color:var(--ink-2);border:1px solid var(--line)}.console-root .stu-fb-badge.new{background:var(--signal);border-color:var(--signal-deep);color:var(--signal-ink)}.console-root button.stu-fb-badge{min-height:44px;cursor:pointer}.console-root .stu-fb-body{font-size:15px;line-height:1.7;color:var(--ink);white-space:pre-wrap;word-break:break-word}.console-root .vid-all{padding-bottom:8px}.console-root .vid-more{border:1px solid var(--line-strong);background:var(--surface);border-radius:9px;padding:7px 13px;font:inherit;font-size:12.5px;font-weight:600;color:var(--ink);cursor:pointer;transition:filter .12s}.console-root .vid-more:active{filter:brightness(.93)}.console-root.solo{grid-template-columns:minmax(0,1fr)}.console-root.solo .stu{min-width:0;width:100%;max-width:min(640px,100%)}.console-root .stu-wl-link.on{color:var(--ink-2)}.console-root .stu-wl-on{display:inline-flex;align-items:center;gap:5px;font-weight:650;color:var(--signal-ink);background:var(--signal-wash);border:1px solid var(--signal);border-radius:var(--r-pill);padding:3px 9px;font-size:11.5px;margin-right:6px}.console-root .enroll{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-card);padding:16px;display:flex;flex-direction:column;gap:12px}.console-root .enroll-top{display:flex;align-items:center;gap:12px}.console-root .enroll-m{display:flex;flex-direction:column;gap:2px;flex:1 1;min-width:0}.console-root .enroll-k{font-size:14px;font-weight:700;color:var(--ink)}.console-root .enroll-s{font-size:11.5px;color:var(--ink-3);font-weight:650}.console-root .enroll-open{flex:none;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line-strong);background:var(--surface);border-radius:10px;padding:9px 14px;font:inherit;font-size:13px;font-weight:600;color:var(--ink);cursor:pointer;transition:filter .12s}.console-root .enroll-open:active{filter:brightness(.94)}.console-root .enroll-open.has{background:var(--signal);border-color:var(--signal-deep);color:var(--signal-ink)}.console-root .enroll-n{min-width:20px;height:20px;padding:0 6px;border-radius:var(--r-pill);background:var(--ink);color:#fff;font-size:11.5px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.console-root .enroll-open.has .enroll-n{background:var(--signal-ink)}.console-root .enroll-link{display:flex;gap:8px}.console-root .enroll-url{flex:1 1;min-width:0;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface-2);padding:10px 12px;font:inherit;font-size:12.5px;color:var(--ink-2);font-family:var(--f-mono)}.console-root .enroll-copy{flex:none;border:0;background:var(--ink);color:#fff;border-radius:10px;padding:10px 16px;font:inherit;font-size:12.5px;font-weight:650;cursor:pointer;transition:filter .12s;white-space:nowrap}.console-root .enroll-copy:active{filter:brightness(1.25)}.console-root .enroll-copy:disabled{background:var(--surface-2);color:var(--ink-3)}.console-root .enroll-list{display:flex;flex-direction:column;gap:8px}.console-root .enroll-row{display:flex;align-items:center;gap:10px;width:100%;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:13px 14px;font:inherit;text-align:left;cursor:pointer;transition:filter .12s}.console-root .enroll-row:active{filter:brightness(.95)}.console-root .enroll-row-m{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.console-root .enroll-row-m b{font-size:14.5px;font-weight:650;color:var(--ink)}.console-root .enroll-row-m span{font-size:11.5px;color:var(--ink-3);font-weight:650}.console-root .enroll-minor{flex:none;font-size:11px;font-weight:650;border-radius:var(--r-pill);padding:3px 9px;background:var(--signal-wash);color:var(--signal-ink);border:1px solid var(--signal)}.console-root .enroll-chev{width:16px;height:16px;color:var(--ink-3);flex:none}.console-root .enroll-appr{display:flex;flex-direction:column;gap:14px}.console-root .enroll-appr-info{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);padding:12px 14px;display:flex;flex-direction:column;gap:7px}.console-root .enroll-appr-info>div{display:flex;gap:10px;align-items:baseline}.console-root .enroll-appr-info span{font-size:12px;color:var(--ink-3);font-weight:700;min-width:76px}.console-root .enroll-appr-info b{font-size:13.5px;font-weight:600;color:var(--ink)}.console-root .enroll-answers{display:flex;flex-direction:column;gap:6px}.console-root .enroll-ans{display:flex;gap:10px;align-items:baseline;font-size:12.5px}.console-root .enroll-ans span{color:var(--ink-3);font-weight:700;min-width:96px;flex:none}.console-root .enroll-ans b{color:var(--ink);font-weight:700}.console-root .enroll-teacher{width:100%}.console-root .enroll-tip{font-size:11.5px;line-height:1.55;color:var(--ink-3);margin:0}.console-root .stu-more{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);cursor:pointer;transition:filter .12s}.console-root .stu-more:active{filter:brightness(.94)}.console-root .stu-more svg{width:19px;height:19px}.console-root .stu-more-list{display:flex;flex-direction:column}.console-root .stu-sub{display:inline-flex;gap:4px;padding:3px;border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--line);align-self:flex-start}.console-root .stu-subtab{border:0;background:none;border-radius:var(--r-pill);padding:8px 18px;font:inherit;font-size:13px;font-weight:600;color:var(--ink-3);cursor:pointer;transition:background .14s,color .14s}.console-root .stu-subtab.on{background:var(--ink);color:#fff;font-weight:650}.console-root .stu-wl-link{display:flex;align-items:center;gap:11px;width:100%;margin-top:2px;padding:12px 14px;border:1px solid var(--line-strong);border-radius:14px;background:var(--surface-2);font:inherit;text-align:left;cursor:pointer;transition:filter .12s}.console-root .stu-wl-link:active{filter:brightness(.95)}.console-root .stu-wl-link.on{background:var(--signal-wash);border-color:var(--signal)}.console-root .stu-wl-ic{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--surface);border:1px solid var(--line);color:var(--ink-2)}.console-root .stu-wl-link.on .stu-wl-ic{color:var(--signal-ink);border-color:var(--signal)}.console-root .stu-wl-ic svg{width:17px;height:17px}.console-root .stu-wl-m{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px}.console-root .stu-wl-m b{font-size:13.5px;font-weight:650;color:var(--ink)}.console-root .stu-wl-m span{font-size:11.5px;color:var(--ink-3);font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .stu-wl-chev{flex:none;width:16px;height:16px;color:var(--ink-3)}.console-root .mdet-acct-g{margin-top:12px;padding-top:12px;border-top:1px dashed var(--line-strong)}.console-root .mdet-acct-g-h{font-size:11.5px;font-weight:650;color:var(--signal-ink);background:var(--signal-wash);border:1px solid var(--signal);border-radius:var(--r-pill);padding:3px 10px;display:inline-block;margin-bottom:8px}.console-root .enroll-acts{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.console-root .enroll-edit{border:1px solid var(--line-strong);background:var(--surface);border-radius:10px;padding:9px 14px;font:inherit;font-size:12.5px;font-weight:600;color:var(--ink);cursor:pointer;transition:filter .12s;white-space:nowrap}.console-root .enroll-edit:active{filter:brightness(.94)}.console-root .enroll-edit:disabled{color:var(--ink-3)}.console-root .enroll-hint{flex:1 1;min-width:160px;font-size:11.5px;line-height:1.5;color:var(--ink-3)}.console-root .mdet-tabs{display:flex;gap:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:14px;padding:4px;margin:14px 0 4px}.console-root .mdet-tab{flex:1 1;border:0;background:none;border-radius:11px;padding:10px 6px;font:inherit;font-size:13.5px;font-weight:600;color:var(--ink-3);cursor:pointer;transition:background .14s,color .14s}.console-root .mdet-tab.on{background:var(--surface);color:var(--ink);font-weight:700;box-shadow:var(--shadow-card)}.console-root .mdet-acts{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.console-root .mdet-acts button{border:1px solid var(--line-strong);background:var(--surface);border-radius:10px;padding:9px 14px;font:inherit;font-size:12.5px;font-weight:600;color:var(--ink);cursor:pointer;transition:filter .12s}.console-root .mdet-acts button:active{filter:brightness(.94)}.console-root .mdet-acts button:disabled{color:var(--ink-3)}.console-root .kidpick{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px;-ms-overflow-style:none;scrollbar-width:none}.console-root .kidpick::-webkit-scrollbar{display:none}.console-root .kidpick-b{flex:none;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--r-pill);padding:6px 14px 6px 6px;font:inherit;font-size:13.5px;font-weight:600;color:var(--ink-2);cursor:pointer;transition:filter .12s,background .14s,border-color .14s}.console-root .kidpick-b:active{filter:brightness(.95)}.console-root .kidpick-b.on{background:var(--ink);border-color:var(--ink);color:#fff;font-weight:700}.console-root .kidpick-av{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--surface-2);color:var(--ink-2);font-size:12px;font-weight:700}.console-root .kidpick-b.on .kidpick-av{background:var(--signal);color:var(--signal-ink)}.console-root .acct-issued-reuse{margin:10px 0 0;padding:10px 12px;border-radius:10px;background:var(--signal-wash);border:1px solid var(--signal);font-size:12px;line-height:1.6;color:var(--signal-ink);font-weight:600}.console-root .enroll-sib b{color:var(--signal-ink)}.console-root .enroll-sib{background:var(--signal-wash);border-radius:10px;margin:2px -4px 0;padding:8px 10px}.console-root .stu-hero.busy{opacity:.5;transition:opacity .12s ease}.console-root .bk-window{margin:10px 0 2px;padding:11px 13px;border-radius:12px;background:var(--signal-wash);border:1px solid var(--signal);font-size:12.5px;line-height:1.65;color:var(--signal-ink)}.console-root .bk-window b{font-weight:650}.console-root .enroll-skel{height:76px;border-radius:12px;background:var(--surface-2)}.console-root input,.console-root select,.console-root textarea{font-family:var(--f-sans)}.console-root button:disabled{cursor:not-allowed}.console-root :focus-visible{outline:2px solid var(--brand);outline-offset:3px}.console-root .mono{font-family:var(--f-sans);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .sidebar{background:var(--surface);height:100dvh}.console-root .c-brand{padding:26px 24px;gap:4px;flex-direction:column;align-items:flex-start}.console-root .c-brand .name{font-size:19px;letter-spacing:-.04em}.console-root .c-brand .sub{font-family:var(--f-sans);font-size:11px;letter-spacing:0;margin-top:1px}.console-root .workspace-name{display:flex;gap:10px;align-items:center;margin:0 16px 18px;padding:14px 10px;border-block:1px solid var(--line);font-size:13px;font-weight:600}.console-root .workspace-name>span:last-child{min-width:0;overflow-wrap:anywhere}.console-root .workspace-name small{display:block;margin-top:2px;font-size:11px;font-weight:400;color:var(--ink-3)}.console-root .workspace-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;flex:none;background:var(--brand-wash);color:var(--brand)}.console-root .c-nav{padding:0 14px;gap:4px}.console-root .nav-label{font-family:var(--f-sans);font-size:11px;letter-spacing:.03em;padding:4px 12px 10px}.console-root .nav-item{min-height:44px;padding:10px 12px;gap:12px;font-size:14px;border-radius:10px}.console-root .nav-item.active{background:var(--signal-wash);color:var(--signal-ink)}.console-root .nav-item.active:before{display:none}.console-root .who-card{border:0;background:transparent;padding:12px 8px}.console-root .who-avatar{background:var(--brand-wash);color:var(--brand)}.console-root .who-logout{width:40px;height:40px}.console-root .topbar{min-height:64px;padding:12px 32px;background:rgba(245,247,249,.95);gap:12px}.console-root .topbar-title{font-size:13px;font-weight:600}.console-root .topbar-context{display:flex;gap:14px;font-size:12px;color:var(--ink-3)}.console-root .topbar-date{margin-left:auto;font-size:12px;color:var(--ink-3)}.console-root .content{width:100%;max-width:1500px;margin-inline:auto;padding:32px;gap:24px}.console-root .page-head{flex-wrap:wrap;gap:8px 16px}.console-root .page-head h2{font-size:27px;font-weight:650;letter-spacing:-.04em}.console-root .page-head .hint{font-size:13px}.console-root .card-h{padding:18px 20px}.console-root .card-h h3{font-size:14px;font-weight:650}.console-root .mtile{padding:20px}.console-root .mtile .k{font-size:12px}.console-root .mtile .v{font-size:28px;font-weight:600;margin-top:8px}.console-root .mtile.alert{background:var(--crit-bg);border-color:var(--line)}.console-root thead th{padding:13px 16px;letter-spacing:0;font-size:12px;text-transform:none}.console-root tbody td{padding:15px 16px}.console-root .chip{font-size:12px;font-weight:600;padding:4px 10px}.console-root .sel{min-height:42px;padding:9px 12px;border-radius:10px;font-weight:500}.console-root .toolbar{flex-wrap:wrap;gap:10px}.console-root .b,.console-root .btn-add,.console-root .btn-ghost-sm{min-height:42px;border-radius:10px;font-weight:600}.console-root .acct-issued-copy,.console-root .add-fab,.console-root .b-primary,.console-root .btn-add,.console-root .dues-sendall,.console-root .fm-new-btn,.console-root .inc-save,.console-root .m-ab-act:not(.ghost),.console-root .mdet-add-btn,.console-root .ntc-empty-btn,.console-root .ntc-new,.console-root .pay2-btn.primary,.console-root .prac-save,.console-root .sheet-save,.console-root .snote-save,.console-root .stu-hero-cta,.console-root .vid-save{background:var(--signal);color:var(--signal-ink);min-height:44px;border-radius:10px;font-weight:600}.console-root .sheet-save{border-radius:12px;font-weight:600;font-size:15px}.console-root .refund-check{display:flex;align-items:center;gap:12px;min-height:48px;margin-top:20px;font-size:14px;line-height:1.6;cursor:pointer}.console-root .refund-check input{width:20px;height:20px;min-height:20px;margin:0;flex:none;accent-color:var(--ink)}.console-root .mc-av.brand-mark{width:48px;height:28px;min-width:48px;background:none;padding:0;border-radius:0}.console-root .icon-btn{min-width:36px;min-height:36px}.console-root .seg-tabs{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:0;gap:20px}.console-root .seg-tab{padding:12px 4px;border-radius:0;border-bottom:2px solid transparent}.console-root .seg-tab.on{background:transparent;color:var(--brand);border-bottom-color:var(--brand);box-shadow:none}.console-root .period-pill{min-height:42px;border-radius:10px;box-shadow:none;font-size:13px;font-weight:600}.console-root .dues-empty,.console-root .m-empty{background:var(--surface);border:1px solid var(--line);padding:32px 20px;color:var(--ink-3);font-size:13px}.console-root .err button{text-decoration:underline;font-weight:600;min-height:36px;margin-left:8px}.console-root .profile-detail{inset:0;width:100%;background:var(--paper);box-shadow:none;animation:profile-enter .18s ease-out}.console-root .profile-bar{min-height:68px;padding-inline:28px;gap:14px;background:var(--surface)}.console-root .profile-bar .fin-sub-title{margin:0;text-align:left;font-size:14px;font-weight:600}.console-root .profile-bar .m-ab-icon{width:44px;height:44px;border:1px solid var(--line);border-radius:10px}.console-root .profile-bar .mdet-edit{min-height:44px;height:44px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);border-radius:10px;padding:0 16px;font-size:13px}.console-root .profile-body{display:grid;grid-template-columns:280px minmax(0,1fr);grid-gap:36px;gap:36px;align-content:start;align-items:start;width:100%;max-width:1220px;margin-inline:auto;padding:36px 32px 64px}.console-root .profile-rail{display:flex;flex-direction:column;gap:24px;position:-webkit-sticky;position:sticky;top:0}.console-root .profile-rail .mdet-hero{align-items:flex-start;flex-direction:column;gap:18px}.console-root .mdet-ava{width:72px;height:72px;border-radius:22px;font-weight:600;font-size:28px;color:var(--brand);background:var(--signal-wash);box-shadow:none}.console-root .page-eyebrow,.console-root .profile-eyebrow{font-size:10px;font-weight:600;letter-spacing:.14em;color:var(--ink-3);margin:0 0 6px}.console-root .mdet-name{font-size:30px;font-weight:650;margin:0;line-height:1.3;letter-spacing:-.04em;overflow-wrap:anywhere}.console-root .mdet-tags{margin-top:10px;gap:8px}.console-root .mdet-sub{font-size:12px}.console-root .profile-summary{margin:0;padding:20px 0;border-block:1px solid var(--line);display:flex;flex-direction:column;gap:16px}.console-root .profile-summary>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.console-root .profile-summary dt{font-size:12px;color:var(--ink-3)}.console-root .profile-summary dd{margin:0;font-size:14px;font-weight:600;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .profile-contact{display:flex;justify-content:space-between;gap:8px;min-height:44px;align-items:center}.console-root .profile-contact span{font-size:12px;color:var(--ink-3)}.console-root .profile-contact b{font-weight:500;font-size:14px;text-decoration:underline;text-underline-offset:4px}.console-root .profile-primary{display:flex;justify-content:space-between;align-items:center;min-height:46px;padding:0 16px;border-radius:12px;font-weight:600;font-size:14px;background:var(--signal);color:var(--signal-ink)}.console-root .profile-caption{font-size:12px;line-height:1.8;color:var(--ink-3)}.console-root .profile-main{min-width:0;display:flex;flex-direction:column;gap:20px}.console-root .mdet-tabs{margin:0 0 4px;padding:0;gap:28px;border:0;border-bottom:1px solid var(--line-strong);border-radius:0;background:transparent}.console-root .mdet-tab{flex:0 1 auto;min-width:56px;min-height:48px;padding:12px 4px;border-radius:0;font-weight:500;font-size:14px;border-bottom:2px solid transparent}.console-root .mdet-tab.on{background:transparent;border-bottom-color:var(--brand);color:var(--brand);font-weight:650;box-shadow:none}.console-root .profile-section{border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;background:var(--surface);min-width:0}.console-root .profile-section-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:20px}.console-root .profile-section-head h2{margin:0;padding:0;font-size:16px;font-weight:650;color:var(--ink)}.console-root .profile-section-head p{margin:5px 0 0;color:var(--ink-3);font-size:12px;line-height:1.6}.console-root .profile-section .metagrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:0 28px;gap:0 28px}.console-root .profile-section .metagrid-item{min-width:0;padding:14px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;gap:6px}.console-root .metagrid-k{font-size:12px;font-weight:400}.console-root .metagrid-v{font-size:14px;font-weight:500;word-break:normal;overflow-wrap:anywhere}.console-root .mdet-acts{gap:8px;margin-top:20px}.console-root .mdet-acts button,.console-root .mdet-xfer{min-height:42px;font-size:12px;font-weight:500;padding:10px 12px;border-radius:10px}.console-root .mdet-slab{font-weight:600;font-size:15px}.console-root .mdet-slab-row{gap:12px;flex-wrap:wrap}.console-root .mdet-add-btn{height:40px;border-radius:10px;font-weight:600}.console-root .mdet-pcard{padding:22px}.console-root .mdet-pcard-name{font-size:16px;font-weight:600;flex-wrap:wrap}.console-root .mdet-pcard-sub{line-height:1.7}.console-root .mdet-pcard-rem b{font-weight:600;font-size:28px;color:var(--brand)}.console-root .mdet-bar i{background:var(--brand)}.console-root .mdet-pcard-act{justify-content:flex-end}.console-root .mdet-pcard-act.one button.del{flex:0 0 auto}.console-root .teacher-main .td-settle{padding:0;border:0;background:transparent;box-shadow:none}.console-root .td-final b{font-size:34px;font-weight:600;letter-spacing:-.04em}.console-root .td-metrics{margin-top:20px;padding-top:16px;border-top:1px solid var(--line);gap:20px}.console-root .td-members{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.console-root .td-mem{border-radius:10px;padding:14px;background:var(--surface);border:1px solid var(--line)}.console-root .td-mem-av{background:var(--brand-wash);color:var(--brand);box-shadow:none}.console-root .td-mem-n{font-size:14px;font-weight:600}.console-root .td-mem-n small{display:block;font-size:11px;font-weight:400;color:var(--ink-3);margin-top:3px}.console-root .teacher-account .mdet-acct{border:0;box-shadow:none;padding:0}.console-root .finance-page{gap:24px}.console-root .finance-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.console-root .finance-heading h2{font-size:30px;font-weight:650;letter-spacing:-.04em}.console-root .finance-heading>div>p:last-child{font-size:13px;color:var(--ink-3);margin-top:6px}.console-root .finance-nav,.console-root .workspace-tabs{display:flex;gap:24px;border-bottom:1px solid var(--line-strong);overflow-x:auto;scrollbar-width:thin}.console-root .finance-nav button,.console-root .workspace-tabs button{flex:none;min-width:44px;min-height:46px;padding:8px 2px 13px;border-bottom:2px solid transparent;color:var(--ink-3);font-size:13px;font-weight:500;white-space:nowrap}.console-root .finance-nav button.on,.console-root .workspace-tabs button.on{color:var(--brand);border-bottom-color:var(--brand);font-weight:650}.console-root .workspace-tabs button:focus-visible{outline-offset:-3px;border-radius:6px}.console-root .finance-overview{display:flex;flex-direction:column;gap:24px}.console-root .finance-balance{border:1px solid var(--line);border-radius:20px;background:var(--surface);display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.console-root .balance-main{padding:30px 32px;background:var(--ink);color:var(--surface)}.console-root .balance-main>span{font-size:13px;opacity:.85}.console-root .balance-main strong{display:block;font-size:clamp(30px,3.3vw,42px);font-weight:550;line-height:1.3;letter-spacing:-.05em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-top:14px;overflow-wrap:anywhere}.console-root .balance-main strong.negative{color:#FFD2C3}.console-root .balance-main p{color:#D7DCE3;font-size:11px;margin-top:14px}.console-root .balance-parts{display:flex;flex-direction:column;justify-content:center;padding:24px 32px;gap:0}.console-root .balance-parts>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0}.console-root .balance-parts>div+div{border-top:1px solid var(--line)}.console-root .balance-parts span{font-size:12px;color:var(--ink-3)}.console-root .balance-parts b{font-size:18px;font-weight:550;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .balance-foot{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;padding:8px 24px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-3)}.console-root .balance-foot button{display:flex;gap:16px;min-height:36px;align-items:center;color:var(--brand);font-size:12px;font-weight:600;white-space:nowrap}.console-root .finance-attention{display:flex;align-items:center;gap:16px;padding:20px 24px;background:var(--brand-wash);border:1px solid var(--line-strong);border-radius:14px}.console-root .attention-icon{color:var(--brand);width:30px;height:30px;flex:none}.console-root .attention-icon svg{width:100%;height:100%}.console-root .finance-attention>div:nth-child(2){flex:1 1}.console-root .finance-attention h3{font-size:14px;font-weight:600}.console-root .finance-attention p{font-size:12px;color:var(--ink-3);margin-top:4px}.console-root .finance-attention button{min-height:40px;font-size:12px;font-weight:600;white-space:nowrap;color:var(--brand)}.console-root .finance-lower{display:grid;grid-template-columns:1fr;align-items:stretch;grid-gap:24px;gap:24px}.console-root .section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px}.console-root .section-heading h3{font-size:15px;font-weight:650}.console-root .section-heading>span{color:var(--ink-3);font-size:11px}.console-root .finance-task-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.console-root .finance-task{position:relative;display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:14px;min-width:0;transition:border-color .15s,background .15s}.console-root .finance-task:hover{border-color:var(--brand);background:var(--surface-2)}.console-root .finance-task-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--brand-wash);color:var(--brand);margin-bottom:14px}.console-root .finance-task-icon svg{width:21px;height:21px}.console-root .finance-task strong{font-size:14px;font-weight:600}.console-root .finance-task p{font-size:11px;line-height:1.7;color:var(--ink-3);margin-top:6px}.console-root .finance-task-arrow{position:absolute;right:18px;top:18px;color:var(--ink-3)}.console-root .finance-trend{align-self:stretch;display:flex;flex-direction:column}.console-root .finance-trend .card-h{border-bottom:0;justify-content:space-between}.console-root .finance-trend .card-h p{font-size:12px;color:var(--ink-3);margin-top:4px}.console-root .chart-unit{font-size:11px;color:var(--ink-3)}.console-root .chart-loading{padding:20px}.console-root .finance-trend-note{margin-top:auto;border-top:1px solid var(--line);padding:16px 20px;font-size:11px;color:var(--ink-3)}.console-root .finance-workspace{display:flex;flex-direction:column;gap:24px;min-width:0}.console-root .workspace-heading{display:flex;gap:16px;align-items:center;justify-content:space-between}.console-root .workspace-heading h3{font-size:20px;font-weight:650;outline:none}.console-root .workspace-heading p{font-size:12px;color:var(--ink-3);margin-top:6px}.console-root .workspace-page{gap:24px}.console-root .workspace-page-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.console-root .workspace-page-head h2{font-size:30px;font-weight:650;letter-spacing:-.04em}.console-root .workspace-page-head>div>p:last-child{color:var(--ink-3);font-size:13px;line-height:1.7;margin-top:6px}.console-root .workspace-page :is(.mng-sec-h,.fm-head,.ntc-head){display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 20px}.console-root .workspace-page :is(.mng-sec-h,.fm-head-m,.ntc-head-m) b{display:block;font-size:20px;font-weight:650;letter-spacing:-.02em}.console-root .workspace-page :is(.mng-sec-h,.fm-head-m,.ntc-head-m) span{font-size:13px;color:var(--ink-3);line-height:1.7;word-break:keep-all}.console-root .workspace-page :is(.icon-btn,.mng-ord button){min-width:44px;min-height:44px}.console-root .workspace-page .mng-ord{margin-right:0;gap:4px}.console-root .workspace-page .mng-row-acts .mng-ord{flex-direction:row;margin-right:8px}.console-root .workspace-page .mng-toggle{margin-inline:2px 6px}.console-root .workspace-page .mng-toggle:before{content:"";position:absolute;inset:-10px -2px}.console-root .workspace-page .fm-card-main{padding:20px}.console-root .workspace-page .fm-card-acts{padding:12px;align-self:center}.console-root .workspace-page :is(.fm-card-title,.ntc-card-title){font-size:15px;line-height:1.6;overflow-wrap:anywhere}.console-root .workspace-page .mng-row-s{margin-top:3px;line-height:1.5;overflow-wrap:anywhere}.console-root .workspace-page .mng-row.off{opacity:1;background:var(--surface-2)}.console-root .workspace-page .mng-row.off .mng-row-t{color:var(--ink-3)}.console-root .pass-checkout{gap:24px}.console-root .checkout-section{display:flex;flex-direction:column;gap:12px}.console-root .pending-online{border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--surface-2)}.console-root .pending-online h3{font-size:14px;font-weight:600;margin:0 0 4px}.console-root .pending-online-row{padding-top:14px;margin-top:14px;border-top:1px solid var(--line)}.console-root .pending-online-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:14px}.console-root .pending-online-title strong{font-weight:600;overflow-wrap:anywhere}.console-root .pending-online-title b{flex:none;font-weight:600}.console-root .pending-online-row>p{display:flex;flex-wrap:wrap;gap:4px 12px;margin:6px 0 12px;font-size:12px;color:var(--ink-3)}.console-root .pending-online-row>p span{color:var(--ink-2)}.console-root .pending-online-actions{display:flex;flex-wrap:wrap;gap:8px}.console-root .pending-online-actions .btn-outline{min-height:44px;background:var(--surface);font-size:12px}.console-root .pending-online-actions .pending-online-end{margin-left:auto;color:var(--ink-3)}.console-root .payment-message-composer{width:100%;min-width:0;display:grid;grid-gap:20px;gap:20px;text-align:left;padding:16px 0}.console-root .payment-message-composer h3{margin:0 0 8px;font-size:18px;font-weight:600}.console-root .payment-message-composer p{margin:0;font-size:13px;line-height:1.7;color:var(--ink-2)}.console-root .payment-message-composer .err{color:var(--crit)}.console-root .payment-message-warning{padding:12px 14px;background:var(--warn-bg);border-radius:10px;color:var(--warn)!important}.console-root .payment-message-members{border-block:1px solid var(--line)}.console-root .payment-message-member{padding:20px 0;display:grid;grid-gap:12px;gap:12px}.console-root .payment-message-member+.payment-message-member{border-top:1px solid var(--line)}.console-root .payment-message-member-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.console-root .payment-message-member-head label,.console-root .payment-message-member-head strong{font-size:16px;font-weight:600}.console-root .payment-message-member-head label{display:flex;align-items:center;min-height:44px;gap:10px}.console-root .payment-message-member-head input{width:20px;height:20px;accent-color:var(--brand)}.console-root .payment-message-fields{display:grid;grid-template-columns:1fr;grid-gap:12px;gap:12px}.console-root .payment-message-common,.console-root .payment-message-fields label{display:grid;grid-gap:6px;gap:6px;min-width:0;font-size:12px;color:var(--ink-2)}.console-root .payment-message-composer select{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:100%;min-width:0;height:48px;min-height:48px;border:1px solid var(--line-strong);border-radius:10px;padding:10px 36px 10px 12px;font:inherit;font-size:16px;color:var(--ink);background:var(--surface)}.console-root .payment-message-common>span,.console-root .payment-message-fields label>span{position:relative}.console-root .payment-message-common>span:after,.console-root .payment-message-fields label>span:after{content:"";position:absolute;z-index:1;top:calc(100% + 26px);right:16px;width:7px;height:7px;border-right:2px solid var(--ink-3);border-bottom:2px solid var(--ink-3);transform:rotate(45deg);pointer-events:none}.console-root .payment-message-composer select:disabled{color:var(--ink-2);background:var(--surface-2);opacity:1}.console-root .payment-message-review{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;padding:12px 14px;background:var(--brand-wash);border-radius:10px;font-size:13px}.console-root .payment-message-review b{margin-left:auto;font-size:18px;font-weight:600}.console-root .payment-message-review small,.console-root .payment-message-review>span:last-of-type{width:100%;color:var(--ink-2)}.console-root .payment-message-state{flex:none;font-size:12px;padding:4px 8px;border-radius:6px;background:var(--surface-2);color:var(--ink-2)}.console-root .payment-message-state.delivered{background:var(--good-bg);color:var(--good)}.console-root .payment-message-state.failed{background:var(--crit-bg);color:var(--crit)}.console-root .payment-message-state.sending,.console-root .payment-message-state.unknown{background:var(--warn-bg);color:var(--warn)}.console-root .payment-message-preview{padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);display:grid;grid-gap:8px;gap:8px}.console-root .payment-message-preview strong{font-size:14px;font-weight:600}.console-root .payment-message-composer small{font-size:12px;color:var(--ink-3);line-height:1.6}.console-root .payment-message-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.console-root .payment-message-history summary{cursor:pointer;min-height:44px;padding:12px 0;font-size:13px;color:var(--ink-2)}.console-root .payment-message-history>div{display:grid;grid-gap:8px;gap:8px;border-top:1px solid var(--line);padding:12px 0;font-size:13px}.console-root .payment-message-history time{color:var(--ink-3);font-size:12px}.console-root .payment-message-footer{display:grid;grid-gap:14px;gap:14px}.console-root .payment-message-footer .sheet-save{width:100%}.console-root .stu-purchase-entry{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0;padding:16px 18px;border:1px solid var(--line-strong);border-radius:12px;background:var(--surface);color:var(--ink);text-align:left;cursor:pointer}.console-root .stu-purchase-entry>span:first-child{display:grid;grid-gap:5px;gap:5px}.console-root .stu-purchase-entry strong{font-size:16px;font-weight:600}.console-root .stu-purchase-entry small{font-size:13px;color:var(--ink-2)}.console-root .stu-purchase-entry>span:last-child{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--signal);color:var(--signal-ink);font-size:22px}.console-root .stu-purchase-entry:hover{border-color:var(--brand)}.console-root .stu-purchase-entry:disabled{opacity:.6;cursor:wait}.console-root .student-pending-row{padding:14px 0;border-bottom:1px solid var(--line)}.console-root .student-pending-row>div:first-child{display:grid;grid-gap:6px;gap:6px;font-size:14px}.console-root .student-pending-row span{color:var(--ink-2)}@media (max-width:768px){.console-root .payment-message-fields{grid-template-columns:1fr}.console-root .payment-message-composer h3{font-size:17px}}.console-root .checkout-section .wb-book-lab{margin:0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px}.console-root .pay-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.console-root .pay-methods button,.console-root .pay-months button{min-height:48px;border:1px solid var(--line-strong);border-radius:10px;font-size:14px}.console-root .pay-methods button.on,.console-root .pay-months button.on{border-color:var(--brand);background:var(--brand-wash);color:var(--ink)}.console-root .pay-methods button small{margin-left:6px;font-size:11px}.console-root .pay-months button{display:flex;flex-direction:column;gap:4px;justify-content:center}.console-root .pay-months small{font-size:11px;font-weight:400}.console-root .pass-month-status{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;font-size:12px;color:var(--ink-2);line-height:1.7}.console-root .pass-checkout .wb-prods{display:flex;flex-direction:column;gap:8px}.console-root .pass-checkout .wb-prod{width:100%;padding:16px;border-radius:12px;align-items:stretch;gap:6px}.console-root .pass-checkout .wb-prod>div{display:flex;justify-content:space-between;gap:12px}.console-root .pass-checkout .wb-prod strong{font-size:14px;font-weight:600;white-space:nowrap}.console-root .pass-checkout .wb-prod.on{border-color:var(--brand);background:var(--brand-wash);box-shadow:none}.console-root .pass-checkout .wb-prod:disabled{opacity:1;background:var(--surface-2);color:var(--ink-3);border-color:var(--line)}.console-root .pass-checkout .wb-prod:disabled b{color:var(--ink-3)}.console-root .pass-checkout .wb-prod small{color:var(--warn);font-size:11px;line-height:1.6}.console-root .checkout-review{border-top:1px solid var(--line);padding-top:20px;display:flex;flex-direction:column;gap:16px}.console-root .checkout-review .pass-sum{display:flex;flex-direction:column;gap:12px}.console-root .checkout-review .pass-sum>span{display:flex;justify-content:space-between;gap:16px;line-height:1.6}.console-root .checkout-review .pass-sum b{text-align:right}.console-root .checkout-total{border-top:1px solid var(--line);padding-top:12px}.console-root .checkout-total b{font-size:20px}.console-root .checkout-policy{font-size:12px;color:var(--ink-3);line-height:1.8;margin:0}.console-root .checkout-confirm{display:flex;gap:12px;align-items:flex-start;cursor:pointer;min-height:44px;padding:16px;border-radius:12px;background:var(--brand-wash);font-size:14px;font-weight:600}.console-root .checkout-confirm input,.console-root .practice-week-options input{width:20px;height:20px;min-height:20px;flex:none;margin:0;accent-color:var(--ink)}.console-root .checkout-confirm small{display:block;margin-top:6px;color:var(--ink-2);font-size:12px;font-weight:400;line-height:1.7}.console-root .practice-plan{padding:0;background:var(--surface)}.console-root .practice-compact{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;margin-bottom:16px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.console-root .practice-compact>div{display:grid;grid-gap:4px;gap:4px;min-width:0}.console-root .practice-compact>div>span{color:var(--ink-3);font-size:12px;line-height:1.5}.console-root .practice-compact strong{font-size:15px;font-weight:600;line-height:1.5;word-break:keep-all}.console-root .practice-compact>button{flex-shrink:0;min-height:44px;gap:8px}.console-root .member-identity{display:flex;align-items:center;gap:8px}.console-root .member-identity>.td-mem-open,.console-root .member-identity>.tsec-row-open,.console-root .member-identity>div{min-width:0;flex:1 1}.console-root .td-mem-open,.console-root .tsec-row-open{display:block;min-height:44px;width:100%;text-align:left}.console-root .td-member-main{flex:1 1;min-width:0}.console-root .td-member-main+.icon-btn{flex:none}.console-root .member-delete-warning{font-size:14px;line-height:1.7;margin:0 0 12px}.console-root .mdet-acts .member-delete-link{color:var(--crit)}.console-root .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}.console-root .practice-period-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--line)}.console-root .practice-period-toolbar .period-pill{min-height:44px;flex:none}.console-root .practice-section-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px 8px}.console-root .practice-section-heading h3{font-size:13px;font-weight:600;color:var(--ink-2);margin:0}.console-root .practice-section-heading>span{font-size:12px;color:var(--ink-3)}.console-root .practice-plan-summary{display:grid;grid-gap:6px;gap:6px;margin-top:10px}.console-root .practice-eyebrow{color:var(--ink-2);font-size:12px;font-weight:500;line-height:1.5}.console-root .practice-plan-summary>strong{font-size:20px;font-weight:600;letter-spacing:-.03em;line-height:1.4;word-break:keep-all}.console-root .practice-plan-summary p{font-size:13px;color:var(--ink-2);line-height:1.6;margin:0}.console-root .practice-plan .btn-outline{flex:none}.console-root .practice-base-periods,.console-root .practice-plan-actions{margin-top:12px}.console-root .practice-plan-actions :is(button,a){display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;padding:10px 14px;text-decoration:none}.console-root .practice-plan-actions :is(button,a)>span+span{font-size:12px;font-weight:500}.console-root .lesson-booking-context{padding:16px 20px;margin-bottom:16px;background:var(--brand-wash);border:1px solid var(--line);border-radius:12px}.console-root .lesson-booking-context>div{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.console-root .lesson-booking-context strong{font-size:17px;font-weight:600}.console-root .lesson-booking-context strong span{color:var(--ink-2);font-size:13px;font-weight:400}.console-root .lesson-booking-context [role=status]{font-size:12px;color:var(--ink-2)}.console-root .lesson-booking-context p{margin:8px 0 0;font-size:13px;color:var(--ink-2);line-height:1.6;word-break:keep-all}.console-root .lesson-booking-context .member-schedule-scope{margin-top:10px;padding-top:8px;border-top:1px solid var(--line);color:var(--ink-2);font-size:12px}.console-root .member-schedule-scope a{display:inline-flex;align-items:center;min-height:44px;color:var(--brand);text-underline-offset:3px}.console-root .lesson-booking-context .member-schedule-actions{justify-content:flex-start;margin-top:6px;gap:8px 12px}.console-root .member-day-scope,.console-root .member-schedule-actions>span{font-size:12px;line-height:1.6;color:var(--ink-2)}.console-root .member-day-scope{margin:0 0 14px}.console-root .member-booking-teacher{font-size:12px;color:var(--ink-2)}.console-root .month-sessions-intro{margin:0 0 16px;line-height:1.7;font-size:15px;color:var(--ink)}.console-root .month-sessions-intro span{font-size:13px;color:var(--ink-2)}.console-root .month-sessions-summary{display:flex;flex-direction:column;gap:10px;padding:4px 0 16px;margin-bottom:12px;border-bottom:1px solid var(--line)}.console-root .month-sessions-summary strong{font-size:20px;font-weight:600}.console-root .month-sessions-summary.over strong{color:var(--warn)}.console-root .month-sessions-summary>span{font-size:13px;color:var(--ink-2);line-height:1.6;word-break:keep-all}.console-root .month-slots{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);grid-gap:6px;gap:6px;list-style:none;margin:0;padding:0}.console-root .month-slots li{min-height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:12px;font-weight:600}.console-root .month-slots li.attended{background:var(--ink);color:#fff}.console-root .month-slots li.planned{background:var(--signal);color:var(--signal-ink)}.console-root .month-slots li.empty{border:1px dashed var(--ink-3);color:var(--ink-3);font-weight:500}.console-root .month-slots li.over{border:1px solid var(--warn);color:var(--warn)}.console-root .month-session-option.is-attended em{color:var(--ink);font-weight:600}.console-root .month-session-option.is-pending em{color:var(--warn)}.console-root .month-sessions-empty{margin:0;padding:16px;font-size:13px;color:var(--ink-2)}.console-root .month-sessions-missed{margin-top:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.console-root .month-sessions-missed summary{min-height:48px;display:flex;align-items:center;flex-wrap:wrap;gap:4px;padding:10px 14px;font-size:14px;font-weight:600;cursor:pointer}.console-root .month-sessions-missed summary span{font-size:12px;font-weight:400;color:var(--ink-2)}.console-root .month-sessions-missed ul{list-style:none;margin:0;padding:0 14px}.console-root .month-sessions-missed li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:10px 0;border-top:1px solid var(--line);color:var(--ink-2)}.console-root .month-sessions-missed li b{font-size:14px;font-weight:500}.console-root .month-sessions-missed li small{font-size:12px;text-decoration:line-through}.console-root .month-sessions-missed li em{margin-left:auto;font-size:12px;font-style:normal}.console-root .month-sessions-missed p{margin:0;padding:10px 14px 14px;font-size:12px;color:var(--ink-2);line-height:1.6}.console-root .month-session-options{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface)}.console-root .month-session-option{display:flex;align-items:center;gap:12px;min-height:64px;padding:12px 14px;border-bottom:1px solid var(--line);cursor:pointer}.console-root .month-session-option:last-child{border-bottom:0}.console-root .month-session-option.selected{background:var(--brand-wash)}.console-root .month-session-option:focus-within{outline:2px solid var(--brand);outline-offset:-3px}.console-root .month-session-option input{flex:none;width:20px;height:20px;accent-color:var(--brand);margin:0}.console-root .month-session-option>span{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:4px}.console-root .month-session-option b{font-size:14px;font-weight:600}.console-root .month-session-option small{font-size:12px;color:var(--ink-2)}.console-root .month-session-option em{font-size:12px;font-style:normal;color:var(--ink-2);white-space:nowrap}.console-root .month-sessions-help{font-size:12px;color:var(--ink-2);line-height:1.7;margin:14px 0 0}.console-root .month-sessions-footer{width:100%}.console-root .month-sessions-footer .err{margin:0 0 12px}.console-root .month-sessions-warning{font-size:13px;color:var(--warn);line-height:1.6;margin:8px 0 12px}.console-root .repeat-month-dates{border:0;padding:0;margin:20px 0;min-width:0}.console-root .repeat-month-dates legend{font-size:14px;font-weight:600}.console-root .repeat-month-dates>p{font-size:13px;line-height:1.7;color:var(--ink-2);margin:8px 0 12px}.console-root .repeat-month-dates>p.month-sessions-warning{color:var(--warn)}.console-root .booking-student-fixed{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;padding:14px 0;margin-bottom:16px;border-bottom:1px solid var(--line)}.console-root .booking-student-fixed span{font-size:12px;color:var(--ink-3)}.console-root .booking-student-fixed strong{font-size:17px;font-weight:600}.console-root .practice-periods{list-style:none;padding:0;margin:0}.console-root .practice-periods li{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;min-height:48px;padding:12px 0;border-bottom:1px solid var(--line)}.console-root .practice-periods li:last-child{border-bottom:0}.console-root .practice-date-range{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:15px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink);line-height:1.6}.console-root .practice-date-range time{white-space:nowrap}.console-root .practice-periods small{font-size:11px;color:var(--ink-3);flex-shrink:0}.console-root .practice-periods small.is-current{color:var(--good);font-weight:600}.console-root .practice-periods .is-past .practice-date-range{color:var(--ink-3);font-weight:400}.console-root .practice-month-nav{display:flex;align-items:center;gap:4px}.console-root .practice-month-nav .btn-outline{width:44px;min-height:44px;padding:0}.console-root .practice-current{min-width:48px;min-height:44px;padding:0 4px;color:var(--ink-2);font-size:12px;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.console-root .practice-current:disabled{color:var(--ink-3);opacity:1;text-decoration:none;cursor:default}.console-root .practice-access-notice{line-height:1.6}.console-root .student-practice-access{background:var(--brand-wash);padding:20px;border-radius:12px;margin-top:16px}.console-root .rsv .student-practice-access{margin-top:0}.console-root .student-practice-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.console-root .student-practice-access h3{color:var(--ink);font-size:21px;font-weight:650;line-height:1.45;letter-spacing:-.03em;margin:14px 0 8px;word-break:keep-all}.console-root .practice-status{flex-shrink:0;font-size:11px;color:var(--ink-2);border:1px solid var(--line-strong);border-radius:6px;padding:3px 7px;background:var(--surface)}.console-root .practice-status.is-allowed{background:var(--signal);color:var(--signal-ink);border-color:transparent}.console-root .student-practice-access .student-practice-intro{font-size:13px;color:var(--ink-2);margin:0;word-break:keep-all}.console-root .student-practice-access strong{color:var(--ink);font-weight:600}.console-root .student-practice-access .student-practice-help{margin:12px 0 0;font-size:12px;line-height:1.7}.console-root .workspace-back{flex:none;min-height:40px;padding:8px 14px;border:1px solid var(--line);border-radius:10px;color:var(--ink-2);font-size:12px;background:var(--surface)}.console-root .dues-months{gap:16px}.console-root .dues-mo{padding:24px;border-radius:16px;gap:8px}.console-root .dues-mo.on,.console-root .dues-mo.on.urgent{border-color:var(--brand);background:var(--surface);box-shadow:inset 0 0 0 1px var(--brand)}.console-root .dues-mo-v{font-size:32px;font-weight:600}.console-root .dues-mo-k{color:var(--ink-2)}.console-root .dues-mo-s{font-size:13px}.console-root .dues-why{padding:12px 0}.console-root .dues-bar{background:var(--line);height:5px}.console-root .dues-bar i{background:var(--brand)}.console-root .dues-cap{flex-wrap:wrap;margin-top:0}.console-root .dues-bulkhead{margin-block:12px 4px}.console-root .dues-sendall{flex:none;min-width:240px;border-radius:10px;font-size:13px;font-weight:600}.console-root .dues-list,.console-root .pay2-list{gap:0;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface)}.console-root .dues-card,.console-root .pay2-row{border:0;border-radius:0;padding:20px;gap:16px}.console-root .dues-card+.dues-card,.console-root .pay2-row+.pay2-row{border-top:1px solid var(--line)}.console-root .dues-acts{flex-direction:row;align-self:center}.console-root .dues-act{min-height:40px;padding:0 14px;border-radius:10px}.console-root .dues-act.primary{background:var(--signal);border-color:var(--signal);color:var(--signal-ink)}.console-root .dues-pick{min-width:32px;min-height:40px;display:grid;place-items:center}.console-root .pay2-hero,.console-root .perf-hero{background:var(--surface);border:1px solid var(--line);padding:28px;border-radius:16px}.console-root .pay2-hero-v,.console-root .ph-net{font-family:var(--f-sans);font-size:38px;font-weight:550;letter-spacing:-.045em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-top:10px;color:var(--brand)}.console-root .pay2-tools{gap:12px}.console-root .pay2-tools button{padding:18px;border-radius:12px;box-shadow:none;border-color:var(--line)}.console-root .pay2-tool-ic{background:var(--brand-wash);color:var(--brand)}.console-root .pay2-btn{border-radius:12px;font-weight:600;font-size:14px}.console-root .pay2-amt{font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .ph-legend{flex-wrap:wrap}.console-root .ph-net.neg{color:var(--crit)}.console-root .exp-form{flex-wrap:wrap;padding:20px;gap:10px}.console-root .exp-form .sel{width:auto}.console-root .exp-sum{background:var(--surface);border:1px solid var(--line);box-shadow:none}.console-root .es-v{font-weight:550;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .pmrow{padding-block:14px}.console-root .ph-bar{height:8px}.console-root .ph-legend b{font-family:var(--f-sans)}.console-root .member-trend{border:1px solid var(--line);border-radius:12px;background:var(--surface);overflow:hidden}.console-root .member-trend>summary{padding:14px 16px;font-size:13px;font-weight:500;cursor:pointer;color:var(--ink-2)}.console-root .member-trend .etr-card{border:0}@keyframes profile-enter{0%{opacity:.5;transform:translateX(12px)}to{opacity:1;transform:none}}.console-root.auth-shell{display:flex;background:var(--paper);color:var(--ink)}.console-root.auth-shell.login-screen{align-items:center;justify-content:center}.console-root.auth-shell .login-card{max-width:400px;padding:36px;background:var(--surface);border-color:var(--line);box-shadow:none;gap:20px;border-radius:20px}.console-root.auth-shell .login-card h1{font-size:23px;font-weight:650;letter-spacing:-.03em}.console-root.auth-shell .login-card input{min-height:48px;border-radius:10px;font-size:16px;background:var(--surface-2);border-color:var(--line-strong);color:var(--ink);color-scheme:dark}.console-root.auth-shell .login-card .fld>span{color:var(--ink-2)}.console-root.auth-shell .login-card .muted,.console-root.auth-shell .login-hint{color:var(--ink-3)}.console-root.auth-shell input::placeholder{color:var(--ink-3)}.console-root.auth-shell .login-card .b-primary{background:var(--signal);color:var(--signal-ink);min-height:48px}.console-root.auth-shell.mlogin{gap:32px;padding:32px 24px;overflow-y:auto}.console-root.auth-shell .mlogin-hero{align-items:flex-start;text-align:left;width:100%;max-width:360px;margin-inline:auto}.console-root.auth-shell .mlogin-title{color:var(--ink);font-size:27px;font-weight:650;margin-top:20px;letter-spacing:-.04em}.console-root.auth-shell .mlogin-hint,.console-root.auth-shell .mlogin-tag{color:var(--ink-3);font-size:12px}.console-root.auth-shell .mlogin-form{width:100%;max-width:360px;margin-inline:auto}.console-root.auth-shell .mlogin-fld>span{color:var(--ink-2);font-size:12px}.console-root.auth-shell .mlogin-fld input{background:var(--surface);border:1px solid var(--line-strong);color:var(--ink);border-radius:12px;font-size:16px;min-height:52px}.console-root.auth-shell .mlogin-fld input::placeholder{color:var(--ink-3)}.console-root.auth-shell .mlogin-btn{background:var(--signal);color:var(--signal-ink);box-shadow:none;border-radius:12px;font-weight:600}.console-root.auth-shell .mlogin-fld input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-wash)}.console-root .member-trend .etr2{border:0;border-top:1px solid var(--line);border-radius:0}.console-root .ledger{display:flex;flex-direction:column;gap:24px}.console-root .recurring-ledger .card-h{justify-content:space-between;gap:16px}.console-root .recurring-ledger .card-h p{font-size:12px;color:var(--ink-3);margin-top:4px}.console-root .recurring-ledger .rec-add-btn{flex:none;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:10px;color:var(--brand);font-weight:600}.console-root .recurring-ledger .rec-mlist{display:flex;flex-direction:column;gap:0}.console-root .recurring-ledger .rec-mcard{display:flex;align-items:center;gap:14px;width:100%;text-align:left;border:0;border-radius:0;padding:20px;background:var(--surface)}.console-root .recurring-ledger .rec-mcard+.rec-mcard{border-top:1px solid var(--line)}.console-root .recurring-ledger .rec-mcard-cad-ic{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:10px;background:var(--brand-wash);color:var(--brand);font-size:11px;font-weight:600}.console-root .recurring-ledger .rec-mcard-m{display:flex;flex-direction:column;gap:5px;flex:1 1;min-width:0}.console-root .recurring-ledger .rec-mcard-cat{font-size:14px;font-weight:600}.console-root .recurring-ledger .rec-mcard-cad{font-size:12px;color:var(--ink-3);white-space:normal;overflow-wrap:anywhere}.console-root .recurring-ledger .rec-mcard-amt{font-size:15px;font-weight:600;flex:none}.console-root .rec-edit-hint{font-size:11px;color:var(--ink-3)}.console-root .recurring-ledger .rec-empty{margin:0;padding:24px 20px;border:0;background:transparent;font-size:13px;line-height:1.7}.console-root .recurring-ledger>.err{margin:20px}.console-root .academy-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:20px;gap:20px}.console-root .academy-contact .sheet-form{padding:24px}.console-root .academy-settings .card-h{flex-wrap:wrap;gap:8px}.console-root .exf-amt input::-webkit-inner-spin-button,.console-root .exf-amt input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.console-root .exf-cats button.on{background:var(--signal);color:var(--signal-ink)}.console-root .fld input:focus,.console-root .fld select:focus,.console-root .fld textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-wash)}.console-root .ledger-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.console-root .ledger-toolbar>.btn-add{margin-left:auto;min-height:44px;gap:14px}.console-root .ledger-summary{display:grid;grid-template-columns:1fr 1fr;background:var(--surface);border:1px solid var(--line);border-radius:16px}.console-root .ledger-summary-total{padding:28px}.console-root .ledger-summary-total>span{font-size:13px;color:var(--ink-2)}.console-root .ledger-summary-total strong{display:block;margin-top:8px;font-size:36px;font-weight:550;letter-spacing:-.04em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .ledger-summary-total p{margin-top:8px;color:var(--ink-3);font-size:12px}.console-root .ledger-summary.income strong{color:var(--good)}.console-root .ledger-categories{padding:28px;border-left:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;gap:16px}.console-root .ledger-categories>p{font-size:13px;color:var(--ink-3)}.console-root .ledger-categories>div>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--ink-2)}.console-root .ledger-categories b{font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .ledger-category-track{height:4px;background:var(--surface-2);border-radius:4px;overflow:hidden;margin-top:8px}.console-root .ledger-category-track i{display:block;height:100%;background:var(--signal-deep);border-radius:4px}.console-root .ledger-history .ledger-memo{white-space:normal;min-width:120px;max-width:360px;color:var(--ink-3);overflow-wrap:anywhere}.console-root .ledger-row-actions{display:flex;justify-content:flex-end;gap:6px}.console-root .ledger-row-actions button{min-height:40px;padding:8px 12px;font-size:12px;border:1px solid var(--line);border-radius:8px}.console-root .ledger-row-actions .danger{color:var(--crit);border-color:transparent}.console-root .ledger-auto{font-size:11px;color:var(--ink-3)}.console-root .ledger-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px 24px;text-align:center}.console-root .ledger-empty-icon{display:grid;place-items:center;width:44px;height:44px;background:var(--brand-wash);color:var(--brand);border-radius:14px;font-size:22px}.console-root .ledger-empty h4{margin:0;font-size:15px;font-weight:600}.console-root .ledger-empty p{font-size:12px;color:var(--ink-3)}.console-root .ledger-record-main{display:flex;justify-content:space-between;gap:16px}.console-root .ledger-record-main b{font-size:14px;font-weight:600}.console-root .ledger-record-main strong{font-size:17px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .ledger-record-main p,.console-root .ledger-record-memo{font-size:12px;color:var(--ink-3);margin-block:6px}.console-root .ledger-records .ledger-record{padding:20px}.console-root .ledger-records .ledger-record+.ledger-record{border-top:1px solid var(--line)}@media (min-width:769px){.console-root .m-list{display:flex;flex-direction:column;gap:12px}.console-root .m-card{display:flex;align-items:center;gap:12px;width:100%;min-height:72px;text-align:left;padding:12px 16px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.console-root .m-card:hover{border-color:var(--line-strong);background:var(--surface-2)}.console-root .m-card-main{flex:1 1;min-width:0}.console-root .m-card-name{font-size:16px;font-weight:600}.console-root .m-card-sub{font-size:12px;color:var(--ink-3);margin-top:6px}.console-root .m-card-right{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.console-root .mcard-ava{display:grid;place-items:center;width:48px;height:48px;flex:none;border-radius:14px;background:var(--brand-wash);color:var(--brand);font-size:20px;font-weight:600}.console-root .m-ab-act{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 16px;border-radius:10px;background:var(--signal);color:var(--signal-ink);font-size:13px;font-weight:600}.console-root .m-ab-act svg{width:18px;height:18px}.console-root .seg3{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.console-root .seg3 button{flex:1 1;min-height:42px;padding:8px 16px;border-radius:8px;font-size:13px}.console-root .seg3 button.on{background:var(--surface);color:var(--brand);font-weight:600}}@media (max-width:768px){.console-root .ledger{gap:20px}.console-root .academy-options{grid-template-columns:1fr;gap:16px}.console-root .academy-contact .sheet-form{padding:20px}.console-root .rec-edit-hint{display:none}.console-root .recurring-ledger .rec-mcard{padding:16px;gap:10px;flex-wrap:wrap}.console-root .ledger-summary{grid-template-columns:1fr}.console-root .ledger-categories,.console-root .ledger-summary-total{padding:22px}.console-root .ledger-categories{border-left:0;border-top:1px solid var(--line)}.console-root .ledger-summary-total strong{font-size:32px}.console-root .ledger-toolbar{gap:10px}.console-root .ledger-toolbar>.btn-add{width:100%;margin-left:0;justify-content:center}.console-root .ledger-row-actions button{min-height:44px}.console-root .finance-expense{padding-bottom:0}}@media (min-width:1100px){.console-root .finance-payroll .pay2{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);align-items:start;grid-gap:20px;gap:20px}.console-root .pay2-head{grid-column:1/-1}.console-root .finance-payroll .pay2-hero{grid-column:1}.console-root .finance-payroll .pay2-tools{grid-column:2;flex-direction:column}.console-root .finance-payroll .dues-empty,.console-root .finance-payroll .pay2-list{grid-column:1/-1}.console-root .finance-payroll .pay2-note{align-self:center;margin:0}.console-root .finance-perf .perf{display:grid;grid-template-columns:1fr 1fr;align-items:start;grid-gap:20px;gap:20px}.console-root .finance-perf .perf>.toolbar,.console-root .finance-perf .perf>section:last-child{grid-column:1/-1}}@media (max-width:1100px){.console-root .finance-lower{grid-template-columns:1fr}.console-root .finance-task-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.console-root .profile-body{grid-template-columns:240px minmax(0,1fr);gap:24px;padding:24px}.console-root .td-members{grid-template-columns:1fr}}@media (max-width:768px){.console-root .content{padding:16px 16px calc(32px + env(safe-area-inset-bottom));gap:20px}.console-root .workspace-page-head .page-eyebrow,.console-root .workspace-page-head h2{display:none}.console-root .workspace-page-head>div>p:last-child{margin:0;font-size:12px}.console-root .workspace-tabs{gap:24px}.console-root .workspace-page :is(.mng-sec-h,.fm-head,.ntc-head){align-items:flex-start;flex-wrap:wrap;margin-bottom:16px}.console-root .workspace-page :is(.mng-sec-h,.fm-head-m,.ntc-head-m) b{font-size:18px}.console-root .workspace-page :is(.mng-sec-h,.fm-head-m,.ntc-head-m) span{font-size:12px}.console-root .workspace-page :is(.mng-sec-h,.fm-head,.ntc-head)>div{flex:1 1 200px}.console-root .workspace-page .mng-row{gap:6px;padding:10px}.console-root .workspace-page .mng-row-m{flex:1 1}.console-root .workspace-page .mng-row-acts{flex:none}.console-root .workspace-page .mng-section-actions{flex-wrap:wrap}.console-root .workspace-page .mng-badge{padding:1px 5px}.console-root .workspace-page .mng-ord{flex-direction:column}.console-root .workspace-page .fm-card{flex-wrap:wrap}.console-root .workspace-page .fm-card-main{padding:16px;flex:1 1 100%}.console-root .workspace-page .fm-card-acts{width:100%;justify-content:flex-end;padding:8px 12px;border-left:0;border-top:1px solid var(--line)}.console-root .workspace-page .ntc-card{padding:16px}.console-root .topbar{display:none}.console-root .main>.m-only{display:contents}.console-root .m-appbar{background:rgba(245,247,249,.96)}.console-root .m-ab-large{padding:0 20px 8px}.console-root .m-ab-large h1{font-size:28px;font-weight:650;letter-spacing:-.04em}.console-root .m-ab-icon{min-width:44px;min-height:44px}.console-root .m-home{padding-bottom:calc(36px + env(safe-area-inset-bottom))}.console-root .mh-ava{width:44px;height:44px;padding:0;background:none;box-shadow:none;border-radius:13px}.console-root .mh-greet{gap:12px;padding:24px 18px 16px}.console-root .mh-hi{font-size:17px;font-weight:600;line-height:1.5}.console-root .mh-sub{font-size:11px}.console-root .mh-ai{padding:22px;border-radius:20px;background:var(--brand)}.console-root .mh-ai:before{display:none}.console-root .mh-ai-hi{font-size:24px;font-weight:550;line-height:1.4;margin:16px 0}.console-root .mh-ai-chips span{font-size:11px;font-weight:500;padding:5px 10px;color:#E7EAEF}.console-root .mh-ai-in{padding:8px 8px 8px 12px;border-radius:12px}.console-root .mh-ai-in .ph{font-size:12px;color:#E7EAEF}.console-root .mh-sum{border-radius:18px}.console-root .mh-sum-v{font-size:30px;font-weight:600}.console-root .mh-tile{border-radius:14px;padding:14px 12px;gap:12px}.console-root .mh-tile .t-l{font-size:13px;font-weight:600}.console-root .mh-tile .t-s{font-size:11px;font-weight:400;line-height:1.5}.console-root .mh-tile .t-ic{background:var(--brand-wash);color:var(--brand);border-radius:10px;width:34px;height:34px}.console-root .mh-tile .t-ic svg{width:20px;height:20px}.console-root .m-card{border-radius:12px;padding:10px 12px;min-height:66px}.console-root .m-card-name{font-weight:600;font-size:15px}.console-root .m-stat{border-radius:12px}.console-root .m-stat .v{font-weight:600;font-size:24px}.console-root .seg3{border-radius:10px}.console-root .seg3 button{min-height:40px;font-size:13px;font-weight:500;border-radius:8px}.console-root .pay-search{min-height:46px;border-radius:12px}.console-root .pay-search input{font-size:16px}.console-root .icon-btn{min-width:44px;min-height:44px}.console-root .profile-bar{height:calc(60px + env(safe-area-inset-top));min-height:60px;padding:env(safe-area-inset-top) 16px 0;gap:10px}.console-root .profile-bar .brand-mark{display:none}.console-root .profile-bar .mdet-edit{font-size:12px;height:40px;padding:0 12px}.console-root .profile-body{display:flex;flex-direction:column;align-items:stretch;gap:24px;padding:24px 18px calc(40px + env(safe-area-inset-bottom))}.console-root .profile-rail{position:static;gap:16px}.console-root .profile-rail .mdet-hero{flex-direction:row;align-items:center;gap:16px}.console-root .mdet-ava{width:60px;height:60px;border-radius:18px;font-size:24px}.console-root .mdet-name{font-size:25px}.console-root .profile-eyebrow{font-size:9px;margin-bottom:4px}.console-root .mdet-tags{margin-top:6px;gap:6px}.console-root .mdet-sub{font-size:11px}.console-root .profile-summary{flex-direction:row;gap:0;padding:16px 0}.console-root .profile-summary>div{flex:1 1;flex-direction:column;align-items:center;gap:7px;padding-inline:8px}.console-root .profile-summary>div+div{border-left:1px solid var(--line)}.console-root .profile-summary dt{font-size:11px}.console-root .profile-summary dd{font-size:13px;text-align:center}.console-root .profile-contact{min-height:36px}.console-root .profile-caption{display:none}.console-root .profile-main{gap:18px}.console-root .mdet-tabs{gap:0;position:-webkit-sticky;position:sticky;top:-24px;z-index:2;background:var(--paper)}.console-root .mdet-tab{flex:1 1;min-height:48px;font-size:14px}.console-root .profile-section{padding:20px 18px;border-radius:14px}.console-root .profile-section-head{margin-bottom:12px}.console-root .profile-section-head h2{font-size:15px}.console-root .profile-section-head p{font-size:11px}.console-root .profile-section .metagrid{gap:0 18px}.console-root .metagrid-v{font-size:13px}.console-root .mdet-acts button{min-height:44px;flex:1 1 auto}.console-root .mdet-pcard{padding:18px}.console-root .mdet-pcard-name{font-size:15px}.console-root .mdet-pcard-act button{min-height:44px}.console-root .td-final b{font-size:30px}.console-root .td-metrics{gap:12px;flex-wrap:wrap}.console-root .finance-heading{align-items:flex-start;gap:12px}.console-root .finance-heading .page-eyebrow,.console-root .finance-heading h2,.console-root .finance-heading.is-section{display:none}.console-root .finance-heading>div>p:last-child{font-size:12px;max-width:160px;margin-top:0;line-height:1.7}.console-root .finance-heading>.period-pill{flex:none;font-size:12px;padding-inline:12px}.console-root .finance-nav{gap:20px}.console-root .finance-nav button{min-height:44px;font-size:12px;padding-bottom:12px}.console-root .finance-overview{gap:18px}.console-root .finance-balance{grid-template-columns:1fr;border-radius:16px}.console-root .balance-main{padding:24px}.console-root .balance-main strong{font-size:36px;margin-top:8px}.console-root .balance-parts{padding:12px 24px}.console-root .balance-parts>div{padding:10px 0}.console-root .balance-parts b{font-size:16px}.console-root .balance-foot{padding:10px 20px;gap:10px;font-size:11px}.console-root .balance-foot button{min-height:44px;font-size:11px;gap:8px}.console-root .finance-attention{padding:16px;gap:10px;align-items:flex-start;flex-wrap:wrap}.console-root .attention-icon{width:22px;height:22px}.console-root .finance-attention h3{font-size:13px;line-height:1.6}.console-root .finance-attention p{font-size:11px}.console-root .finance-attention button{min-height:44px;margin-left:auto}.console-root .finance-lower{gap:24px}.console-root .finance-task{padding:18px}.console-root .finance-task p{font-size:11px}.console-root .finance-workspace{gap:20px}.console-root .workspace-heading h3{font-size:20px}.console-root .workspace-heading p{font-size:11px;line-height:1.6}.console-root .dues-mo{padding:18px 16px;gap:6px}.console-root .dues-mo-v{font-size:28px}.console-root .dues-mo-k,.console-root .dues-mo-s{font-size:11px}.console-root .dues-card{padding:16px 12px;gap:8px;flex-wrap:wrap}.console-root .dues-name{font-size:14px}.console-root .dues-body{flex-basis:calc(100% - 48px)}.console-root .dues-acts{width:100%;justify-content:flex-end;padding-left:40px}.console-root .dues-act{min-height:44px;flex:1 1;font-weight:500}.console-root .dues-pick{min-width:32px;min-height:44px}.console-root .dues-sendall{flex:1 1;min-width:0;font-size:12px}.console-root .pay2-hero,.console-root .perf-hero{padding:24px}.console-root .pay2-hero-v,.console-root .ph-net{font-size:32px}.console-root .pay2-tools button{padding:14px 12px;gap:8px}.console-root .pay2-tool-m b{font-size:13px}.console-root .pay2-tool-m>span{font-size:10px}.console-root .pay2-tool-chev{display:none}.console-root .pay2-row{padding:18px}.console-root .ph-legend{gap:8px}.console-root .ph-legend span{flex-wrap:wrap;font-size:11px}.console-root .perf .card-h{flex-wrap:wrap;gap:4px}.console-root .perf .card-h .meta{font-size:10px;margin-left:0}.console-root .finance-expense{padding-bottom:0}}@media (prefers-reduced-motion:reduce){.console-root *,.console-root :after,.console-root :before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.console-root .action-spinner{display:inline-block;width:17px;height:17px;flex-shrink:0;margin-right:8px;border:2px solid;border-right:2px solid transparent;border-radius:50%;vertical-align:middle;animation:action-spin .7s linear infinite}@keyframes action-spin{to{transform:rotate(1turn)}}.console-root .registration-basic{display:flex;flex-direction:column;gap:16px}.console-root .registration-intro{margin:0;color:var(--ink-2);font-size:14px;line-height:1.6}.console-root .registration-guardian{display:grid;grid-gap:12px;gap:12px;margin-top:16px}.console-root .registration-assignment-note{color:var(--ink-2);font-size:12px;line-height:1.6}.console-root a.notic-row{color:inherit;text-decoration:none;cursor:pointer}.console-root a.notic-row:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.console-root .practice-grants{margin-top:20px;border-top:1px solid var(--line);padding-top:18px}.console-root .practice-grant-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.console-root .practice-grant-heading h4{display:flex;align-items:center;gap:6px;margin:0;font-size:14px;font-weight:600}.console-root .practice-grant-heading h4>span{display:grid;place-items:center;min-width:20px;height:20px;border-radius:5px;background:var(--brand-wash);font-size:12px;color:var(--signal-ink)}.console-root .practice-grant-empty{margin:6px 0 0;color:var(--ink-3);font-size:13px;line-height:1.6;word-break:keep-all}.console-root .practice-grant-history{list-style:none;margin:12px 0 0;padding:0}.console-root .practice-grant-history li{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 0;border-top:1px solid var(--line);font-size:14px}.console-root .practice-grant-history li:last-child{padding-bottom:0}.console-root .practice-grant-record{min-width:0}.console-root .practice-grant-history li p{margin:4px 0;color:var(--ink-2);font-size:13px;line-height:1.5;overflow-wrap:anywhere}.console-root .practice-grant-history small{color:var(--ink-3);font-size:11px}.console-root .practice-grant-history button{flex-shrink:0;min-height:44px}.console-root .practice-grant-state{flex-shrink:0;color:var(--ink-2);font-size:11px;padding-top:4px}.console-root .practice-grant-archive{margin-top:12px}.console-root .practice-grant-archive summary{min-height:44px;align-content:center;cursor:pointer;color:var(--ink-2);font-size:12px}.console-root .practice-grant-archive summary>span{margin-left:4px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .practice-grant-form{display:flex;flex-direction:column;gap:18px}.console-root .practice-grant-form textarea{width:100%;min-height:96px;resize:vertical;border:1px solid var(--line-strong);border-radius:12px;padding:12px 15px;font-size:16px;line-height:1.6;color:var(--ink);background:var(--surface);outline:none}.console-root .practice-grant-duration{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin:0;padding:16px;background:var(--brand-wash);border-radius:10px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .practice-grant-duration>strong{font-size:15px;font-weight:600}.console-root .student-practice-next{border-top:1px solid var(--line-strong);padding-top:16px;margin:16px 0 0;display:grid;grid-gap:6px;gap:6px;font-size:14px;line-height:1.6;word-break:keep-all}.console-root .student-practice-next span{color:var(--ink-2);font-size:12px}.console-root .student-practice-dates h4{font-size:12px;color:var(--ink-2);margin:18px 0 8px}.console-root .practice-purchase-gate{padding:20px;line-height:1.7;font-size:16px}.console-root .practice-purchase-gate>p{margin:0}.console-root .practice-purchase-gate dl{margin:22px 0;border-block:1px solid var(--line)}.console-root .practice-purchase-gate dl div{padding:14px 0}.console-root .practice-purchase-gate dt{font-weight:600;font-size:14px}.console-root .practice-purchase-gate dd{margin:4px 0 0;color:var(--ink-2);font-size:14px}.console-root .rsv-room:disabled{opacity:1;color:var(--ink-2);background:var(--surface-2);border-color:var(--line);cursor:not-allowed}.console-root .practice-meter{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);grid-gap:6px;gap:6px;list-style:none;margin:0;padding:0}.console-root .practice-meter li{min-height:34px;display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:12px;font-weight:600}.console-root .practice-meter li.done{background:var(--ink);color:#fff}.console-root .practice-meter li.active{background:var(--signal);color:var(--signal-ink)}.console-root .practice-meter li.left{border:1px dashed var(--ink-3);color:var(--ink-3);font-weight:500}.console-root .stu-practice-card{display:flex;flex-direction:column;gap:10px;margin-top:16px;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.console-root .stu-practice-card.is-empty{border-color:var(--signal-deep);background:var(--signal-wash)}.console-root .stu-practice-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.console-root .stu-practice-head h2{margin:0;font-size:13px;font-weight:600;color:var(--ink-2)}.console-root .stu-practice-head span{font-size:12px;color:var(--ink-2);border:1px solid var(--line);border-radius:999px;padding:2px 8px}.console-root .stu-practice-card>strong{font-size:19px;font-weight:600;line-height:1.4;word-break:keep-all}.console-root .stu-practice-card p{margin:0;font-size:13px;line-height:1.6;color:var(--ink-2);word-break:keep-all}.console-root .stu-practice-card p b{color:var(--ink);font-weight:600}.console-root .stu-practice-card .stu-practice-now{font-size:14px;color:var(--ink)}.console-root .stu-practice-card>.b{min-height:48px;font-size:15px;margin-top:4px}.console-root .stu-renewal{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0 0;padding:14px 16px;min-height:56px;border:1px solid var(--signal-deep);border-radius:12px;background:var(--signal-wash);color:var(--ink);text-align:left;cursor:pointer}.console-root .stu-renewal>span:first-child{display:grid;grid-gap:4px;gap:4px}.console-root .stu-renewal b{font-size:15px;font-weight:600}.console-root .stu-renewal small{font-size:12px;color:var(--ink-2);line-height:1.5}.console-root .practice-reserve-note{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:var(--surface-2);font-size:13px;line-height:1.6;color:var(--ink-2);word-break:keep-all}.console-root .practice-reserve-note.is-start{background:var(--signal-wash);color:var(--ink);border:1px solid var(--signal-deep)}.console-root .practice-used-list{list-style:none;margin:8px 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.console-root .practice-used-list li{font-size:13px;padding:4px 10px;border-radius:999px;background:var(--surface-2);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .practice-activations{list-style:none;margin:12px 0 0;padding:0;border-top:1px solid var(--line)}.console-root .practice-activations li{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;min-height:56px;padding:10px 0;border-bottom:1px solid var(--line)}.console-root .practice-activations li>div{display:grid;grid-gap:2px;gap:2px}.console-root .practice-activations li small{font-size:12px;color:var(--ink-2)}.console-root .practice-activations li.is-past .practice-date-range{color:var(--ink-3)}.console-root .practice-activations .b,.console-root .practice-activations .btn-outline{min-height:44px}.console-root .practice-activation-confirm{display:inline-flex;gap:6px}.console-root .practice-activations .err{flex-basis:100%;margin:0}.console-root .practice-activation-notice{margin:12px 0 0;padding:10px 12px;border-radius:10px;background:var(--surface-2);font-size:13px;line-height:1.6;color:var(--ink)}.console-root .checkout-total s{margin-left:8px;font-size:12px;color:var(--ink-3);font-weight:400}.console-root .checkout-total .amount-edit{margin-left:10px;min-height:44px;padding:4px 12px;font-size:13px}.console-root .custom-amount{display:grid;grid-gap:10px;gap:10px;margin:10px 0 4px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.console-root .custom-amount input{font-size:16px;min-height:44px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .custom-amount .fld em{font-style:normal;font-size:11px;color:var(--warn);margin-left:4px}.console-root .custom-amount-foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.console-root .custom-amount-foot p{flex:1 1 200px;margin:0;font-size:12px;color:var(--ink-2);line-height:1.6;word-break:keep-all}.console-root .custom-amount-foot .btn-outline{min-height:44px}.console-root .mdet-pcard-note{margin:6px 0 0;font-size:12px;color:var(--ink-2);line-height:1.5;word-break:keep-all}.console-root .cxl-count{margin:0 0 8px;font-size:13px;color:var(--ink-2);line-height:1.6;word-break:keep-all}.console-root .cxl-opt.primary{border-color:var(--signal-deep);background:var(--signal-wash)}.console-root .cxl-opt.primary b{color:var(--ink)}.console-root .cxl-opt.primary span{color:var(--ink-2)}.console-root .cxl-opt{min-height:56px}.console-root .makeup{display:flex;flex-direction:column;gap:12px}.console-root .makeup-from{margin:0;font-size:14px;color:var(--ink);line-height:1.6;word-break:keep-all}.console-root .makeup-suggest{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;width:100%;min-height:56px;padding:12px 14px;border:1px solid var(--signal-deep);border-radius:12px;background:var(--signal-wash);color:var(--ink);text-align:left;cursor:pointer}.console-root .makeup-suggest em{font-style:normal;font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--signal);color:var(--signal-ink)}.console-root .makeup-suggest b{font-size:16px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .makeup-suggest span{font-size:12px;color:var(--ink-2)}.console-root .makeup-suggest.on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.console-root .makeup-lab{font-size:12px;font-weight:600;color:var(--ink-2);margin-top:4px}.console-root .makeup-days{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.console-root .makeup-day{flex:0 0 auto;width:52px;min-height:60px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);cursor:pointer}.console-root .makeup-day b{font-size:16px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.console-root .makeup-day span{font-size:11px;color:var(--ink-2)}.console-root .makeup-day small{font-size:9px;color:var(--crit);max-width:48px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-root .makeup-day:disabled{opacity:.35;cursor:default}.console-root .makeup-day.on{background:var(--ink);border-color:var(--ink);color:#fff}.console-root .makeup-day.on span{color:rgba(255,255,255,.8)}.console-root .makeup-times{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));grid-gap:6px;gap:6px}.console-root .makeup-time{min-height:44px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font-size:15px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;cursor:pointer}.console-root .makeup-time.on{background:var(--ink);border-color:var(--ink);color:#fff}.console-root .makeup-time.shared{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;line-height:1.15}.console-root .makeup-time.shared small{font-size:11px;color:var(--ink-3);font-weight:600}.console-root .makeup-time.shared.on small{color:rgba(255,255,255,.75)}.console-root .makeup-empty,.console-root .makeup-help{margin:0;font-size:12px;color:var(--ink-2);line-height:1.6;word-break:keep-all}.console-root .makeup-rooms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.console-root .room-fallback-toggle{min-height:44px}.console-root .makeup-rooms button{min-height:60px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);text-align:left}.console-root .makeup-rooms button b,.console-root .makeup-rooms button small{display:block}.console-root .makeup-rooms button small{margin-top:5px;color:var(--ink-2);line-height:1.5}.console-root .makeup-rooms button.on{border-color:var(--brand);background:var(--signal);color:var(--signal-ink)}.console-root .makeup-rooms button:disabled{opacity:.55;cursor:default}.console-root .bulk-lessons{list-style:none;padding:0;margin:16px 0;border-block:1px solid var(--line)}.console-root .bulk-lessons li{display:flex;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}.console-root .bulk-lessons li:last-child{border-bottom:0}.console-root .bulk-lessons strong{font-weight:500}.console-root .bulk-choice{padding:0;margin:24px 0 16px;border:0}.console-root .bulk-choice legend{margin-bottom:8px;font-size:14px;font-weight:500}.console-root .bulk-choice label{display:flex;align-items:flex-start;gap:12px;padding:16px 0;min-height:64px;border-bottom:1px solid var(--line);cursor:pointer}.console-root .bulk-choice input{margin-top:4px;width:20px;height:20px;accent-color:var(--brand);flex-shrink:0}.console-root .bulk-choice small,.console-root .bulk-choice strong{display:block;line-height:1.5;font-weight:500}.console-root .bulk-choice small{color:var(--ink-2);margin-top:4px;font-weight:400}.console-root .bulk-choice .unavailable{color:var(--ink-3);cursor:default}.console-root .lesson-operation-result{margin-top:20px;padding:16px 0;border-block:1px solid var(--line)}.console-root .makeup .makeup-note{margin:0;padding:10px 12px;border-radius:10px;background:var(--warn-bg);color:var(--ink);font-size:13px;line-height:1.6;word-break:keep-all}.console-root .cxl-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface)}.console-root .cxl-item{display:flex;align-items:center;gap:12px;width:100%;min-height:64px;padding:12px 14px;border:0;border-top:1px solid var(--line);background:var(--surface);color:var(--ink);text-align:left;cursor:pointer}.console-root .cxl-item:first-child{border-top:0}.console-root .cxl-item:hover{background:var(--surface-2)}.console-root .cxl-item:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.console-root .cxl-ic{flex:none;width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:var(--surface-2);color:var(--ink-2)}.console-root .cxl-ic svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.console-root .cxl-txt{flex:1 1;min-width:0;display:grid;grid-gap:3px;gap:3px}.console-root .cxl-txt b{font-size:15px;font-weight:600;display:inline-flex;align-items:center;gap:6px}.console-root .cxl-txt b em{font-style:normal;font-size:11px;font-weight:500;padding:1px 7px;border:1px solid var(--line-strong);border-radius:999px;color:var(--ink-2)}.console-root .cxl-txt small{font-size:12px;color:var(--ink-2);line-height:1.5;word-break:keep-all}.console-root .cxl-go{flex:none;color:var(--ink-3);font-size:18px}.console-root .cxl-item.danger .cxl-ic,.console-root .cxl-item.danger b{color:var(--crit)}.console-root .sched-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px}.console-root .sched-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.console-root .schedule-manage{display:inline-flex;align-items:center;gap:8px}.console-root .schedule-manage svg{width:18px;height:18px}.console-root .schedule-operation-list{display:flex;flex-direction:column;border-block:1px solid var(--line)}.console-root .schedule-operation{width:100%;display:flex;align-items:center;gap:16px;min-height:80px;padding:16px 0;border:0;border-bottom:1px solid var(--line);background:none;color:var(--ink);text-align:left;cursor:pointer}.console-root .schedule-operation:last-child{border-bottom:0}.console-root .schedule-operation>svg{width:24px;height:24px;flex-shrink:0;color:var(--ink-2)}.console-root .schedule-operation>span:not(.schedule-operation-next){flex:1 1;min-width:0}.console-root .schedule-operation small,.console-root .schedule-operation strong{display:block;line-height:1.5}.console-root .schedule-operation strong{font-size:16px;font-weight:500}.console-root .schedule-operation small{margin-top:4px;font-size:13px;color:var(--ink-2);word-break:keep-all}.console-root .schedule-operation:disabled{cursor:default;color:var(--ink-3)}.console-root .schedule-operation:disabled small,.console-root .schedule-operation:disabled svg{color:var(--ink-3)}.console-root .schedule-operation-next{font-size:24px;color:var(--ink-3)}.console-root .assignment-date{margin-top:0;font-size:16px;line-height:1.6}.console-root .sched-head .sched-tabs{flex:1 1;margin-bottom:0}.console-root .sched-tab{white-space:nowrap}@media (max-width:768px){.console-root .sched-head .sched-tabs{flex-basis:100%}.console-root .sched-actions{width:100%;justify-content:flex-end}}.console-root .book-cta{flex:none;display:inline-flex;align-items:center;gap:6px;min-height:48px;padding:0 18px;border-radius:12px;font-size:15px;font-weight:600}.console-root .book-cta svg,.console-root .book-fab svg{width:18px;height:18px}.console-root .book-fab{display:none}.console-root .book-picked{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.console-root .book-picked b{font-size:16px;font-weight:600}.console-root .book-picked span{flex:1 1;font-size:12px;color:var(--ink-2)}.console-root .book-picked .btn-outline{min-height:44px}.console-root .book-teachers{display:flex;flex-wrap:wrap;gap:6px}.console-root .book-teachers .makeup-time{padding:0 14px}.console-root .book-picker .wb-mrow small{margin-left:auto;font-size:12px;color:var(--ink-3)}@media (max-width:768px){.console-root .book-cta{display:none}.console-root .book-fab{display:inline-flex}.console-root .content:has(.book-fab){padding-bottom:calc(88px + env(safe-area-inset-bottom))}}.console-root .ld{display:flex;flex-direction:column;gap:14px}.console-root .ld-chips{display:flex;flex-wrap:wrap;gap:6px}.console-root .ld-chip{font-size:12px;font-weight:500;padding:4px 10px;border-radius:999px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-2)}.console-root .ld-chip.good{background:var(--ink);border-color:var(--ink);color:#fff}.console-root .ld-chip.warn{background:var(--warn-bg);border-color:transparent;color:var(--warn)}.console-root .ld-alert{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:12px;background:var(--warn-bg);color:var(--ink);font-size:14px;font-weight:500;word-break:keep-all}.console-root .ld-alert .btn-outline{flex:none;min-height:40px;background:var(--surface)}.console-root .ld-rows{margin:0;border:1px solid var(--line);border-radius:12px;background:var(--surface);overflow:hidden}.console-root .ld-row{display:flex;align-items:center;gap:12px;min-height:52px;padding:0 14px;border-top:1px solid var(--line)}.console-root .ld-row:first-child{border-top:0}.console-root .ld-row dt{flex:none;width:52px;font-size:13px;color:var(--ink-3)}.console-root .ld-row dd{flex:1 1;min-width:0;margin:0;font-size:15px;font-weight:500;color:var(--ink);display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.console-root .ld-row dd small{font-size:12px;font-weight:400;color:var(--ink-3)}.console-root .ld-bad{color:var(--crit)}.console-root .ld-link{flex:none;min-height:44px;padding:0 4px;border:0;background:none;color:var(--brand);font-size:14px;font-weight:500;cursor:pointer}.console-root .ld-rooms{display:flex;flex-wrap:wrap;gap:6px;padding:10px 14px 12px;border-top:1px solid var(--line);background:var(--surface-2)}.console-root .ld-room{min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font-size:14px;cursor:pointer}.console-root .ld-room.on{background:var(--ink);border-color:var(--ink);color:#fff}.console-root .ld-actions{display:flex;gap:8px;width:100%}.console-root .ld-actions>*{flex:1 1;min-height:48px}.console-root .ld-present{background:var(--signal);color:var(--signal-ink)}.console-root .ld-danger{background:var(--surface);color:var(--crit);border:1px solid #f0c9c9}.console-root .ld-foot-note{margin:0;width:100%;text-align:center;font-size:13px;color:var(--ink-2);line-height:1.6}.console-root .ld-row.warn{background:var(--warn-bg)}.console-root .assistant-workspace{background:var(--paper);border:1px solid var(--line);border-radius:24px;overflow:hidden;margin:0 0 24px;color:var(--ink);color-scheme:dark}.console-root .assistant-workspace button{min-height:44px;cursor:pointer;font:inherit}.console-root .assistant-workspace button:disabled{opacity:.4;cursor:default}.console-root .assistant-workspace a:focus-visible,.console-root .assistant-workspace button:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.console-root .assistant-head{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:1px solid var(--line);gap:12px}.console-root .assistant-identity{display:flex;align-items:center;gap:12px;min-width:0}.console-root .assistant-identity h3{font-size:17px;font-weight:600;margin:0 0 4px;letter-spacing:-.02em}.console-root .assistant-ai-label{color:var(--signal);font-size:10px;font-weight:500;vertical-align:middle;margin-left:4px}.console-root .assistant-identity p{font-size:12px;color:var(--ink-3);margin:0;overflow-wrap:anywhere}.console-root .assistant-quiet{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:transparent;color:var(--ink-2);border:1px solid var(--line);border-radius:12px;padding:0 14px;white-space:nowrap}.console-root .assistant-quiet:hover:not(:disabled){color:var(--ink);background:var(--surface-2)}.console-root .assistant-body{min-width:0}.console-root .assistant-eyebrow{color:var(--ink-3);font-size:11px;letter-spacing:.02em}.console-root .assistant-conversation{max-width:850px;margin:0 auto;min-width:0;display:flex;flex-direction:column;padding:16px 28px 20px}.console-root .assistant-log{height:clamp(320px,42vh,440px);overflow-y:auto;overscroll-behavior:contain;scrollbar-color:var(--line-strong) transparent;padding:12px 4px 20px;display:flex;flex-direction:column;gap:24px}.console-root .assistant-empty{margin:auto;text-align:center;color:var(--ink-3);font-size:13px;line-height:1.7;padding:12px 0}.console-root .assistant-empty>.assistant-eyebrow{display:block;margin-top:16px}.console-root .assistant-empty h4{color:var(--ink);font-size:30px;font-weight:500;letter-spacing:-.04em;line-height:1.35;margin:10px 0 12px}.console-root .assistant-empty p{margin:0;color:var(--ink-2);line-height:1.8}.console-root .assistant-quick{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;padding:8px 0 18px}.console-root .assistant-quick button{display:inline-flex;align-items:center;text-align:left;background:transparent;border:1px solid var(--line);color:var(--ink-2);border-radius:12px;padding:9px 14px;font-size:12px;gap:16px}.console-root .assistant-quick button span{color:var(--ink-3)}.console-root .assistant-quick button:hover:not(:disabled){border-color:var(--line-strong);color:var(--ink);background:var(--surface)}.console-root .assistant-followups{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.console-root .assistant-followups button{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:12px;color:var(--ink-2);background:transparent;font-size:13px;text-align:left}.console-root .assistant-followups button:hover:not(:disabled){color:var(--ink);border-color:var(--line-strong)}.console-root .assistant-followups button span{color:var(--ink-3)}.console-root .assistant-message{max-width:94%;font-size:14px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;flex-shrink:0}.console-root .assistant-message-label{display:block;color:var(--ink-3);font-size:11px;margin-bottom:7px}.console-root .assistant-user{align-self:flex-end;background:var(--surface-2);padding:12px 18px;border:1px solid var(--line);border-radius:18px 18px 4px 18px}.console-root .assistant-user .assistant-message-label{display:none}.console-root .assistant-assistant{align-self:flex-start;padding:0 4px}.console-root .assistant-assistant .assistant-message-label{color:var(--signal)}.console-root .assistant-answer{white-space:normal;word-break:keep-all}.console-root .assistant-answer h4{margin:0 0 12px;font-size:19px;font-weight:600;letter-spacing:-.03em;line-height:1.5}.console-root .assistant-answer h5{margin:20px 0 8px;font-size:14px;font-weight:500;color:var(--ink-2)}.console-root .assistant-answer p{margin:0 0 12px}.console-root .assistant-answer strong{font-weight:600;color:var(--ink)}.console-root .assistant-answer ul{margin:10px 0 16px;padding-left:20px}.console-root .assistant-answer li{padding:3px 0}.console-root .assistant-answer li::marker{color:var(--ink-3)}.console-root .assistant-table-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:12px;margin:14px 0}.console-root .assistant-table-wrap:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.console-root .assistant-answer table{border-collapse:collapse;width:100%;font-size:13px;text-align:left;white-space:nowrap}.console-root .assistant-answer td,.console-root .assistant-answer th{padding:11px 14px;border-bottom:1px solid var(--line)}.console-root .assistant-answer th{background:var(--surface);color:var(--ink-2);font-weight:500}.console-root .assistant-answer tr:last-child td{border-bottom:0}.console-root .assistant-source{margin:12px 0 0;color:var(--ink-3);font-size:11px;white-space:normal}.console-root .assistant-proposal{background:var(--surface);border:1px solid var(--line-strong);border-radius:18px;padding:20px;flex-shrink:0}.console-root .assistant-proposal-meta{display:flex;align-items:center;gap:10px;color:var(--ink-3);font-size:11px}.console-root .assistant-status{display:inline-flex;align-items:center;min-height:25px;padding:0 9px;border-radius:6px;background:var(--signal-wash);color:var(--signal)}.console-root .assistant-proposal h4{margin:12px 0 5px;font-size:18px;font-weight:500;letter-spacing:-.02em;overflow-wrap:anywhere}.console-root .assistant-proposal p{margin:4px 0 12px;font-size:12px;color:var(--ink-2);line-height:1.6}.console-root .assistant-proposal dl{margin:16px 0}.console-root .assistant-proposal dl>div{display:grid;grid-template-columns:100px minmax(0,1fr);grid-gap:12px;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.console-root .assistant-proposal dt{font-size:12px;color:var(--ink-3);line-height:1.6}.console-root .assistant-proposal dd{margin:0;display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;font-size:14px;overflow-wrap:anywhere;min-width:0}.console-root .assistant-proposal dd strong{font-weight:500}.console-root .assistant-before,.console-root .assistant-change-arrow{color:var(--ink-3)}.console-root .assistant-actions{display:flex;gap:8px;padding-top:4px}.console-root .assistant-primary{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--signal);color:var(--signal-ink);border:0;border-radius:12px;padding:0 18px;font:inherit;font-weight:600;min-height:44px}.console-root .assistant-proposal .assistant-outcome{margin:14px 0 0;color:var(--good)}.console-root .assistant-proposal .assistant-danger{color:var(--crit)}.console-root .assistant-error{font-size:13px;line-height:1.6;background:var(--crit-bg);color:var(--crit);padding:12px 14px;border:1px solid var(--crit);border-radius:12px;margin:0 0 12px}.console-root .assistant-progress{color:var(--ink-3);font-size:13px;padding:8px 0}.console-root .assistant-compose{display:flex;align-items:flex-end;border:1px solid var(--line-strong);background:var(--surface);padding:10px;border-radius:18px;gap:10px}.console-root .assistant-compose:focus-within{border-color:var(--brand);outline:1px solid var(--brand);outline-offset:0}.console-root .assistant-compose textarea{border:0;background:transparent;color:var(--ink);resize:none;font:inherit;font-size:16px;line-height:1.6;width:100%;min-width:0;min-height:44px;max-height:152px;padding:10px 8px;overflow-y:auto}.console-root .assistant-compose textarea::placeholder{color:var(--ink-3)}.console-root .assistant-compose textarea:focus{outline:none}.console-root .assistant-compose .assistant-send{width:44px;min-width:44px;height:44px;padding:0;flex-shrink:0;font-size:25px;font-weight:400;border-radius:12px}.console-root .assistant-footnote{font-size:10px;line-height:1.5;color:var(--ink-3);margin:10px 0 0;text-align:center}.console-root .assistant-mobile{position:fixed;inset:0;z-index:1001;background:var(--paper);color:var(--ink);display:flex;flex-direction:column;height:100dvh;padding-top:env(safe-area-inset-top);color-scheme:dark}.console-root .assistant-mobile-bar{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;border-bottom:1px solid var(--line);flex-shrink:0}.console-root .assistant-mobile-bar button{min-height:44px;border:0;background:none;color:var(--ink);font:inherit;padding:0 8px}.console-root .assistant-mobile-bar span{color:var(--ink-3);font-size:11px}@media(max-width:768px){.console-root .assistant-workspace{border:0;border-radius:0;margin:0;flex:1 1;min-height:0;display:flex;flex-direction:column}.console-root .assistant-head{padding:14px 16px}.console-root .assistant-identity{gap:10px}.console-root .assistant-identity p{font-size:11px}.console-root .assistant-head .assistant-quiet{padding:0 10px;font-size:12px}.console-root .assistant-body{display:flex;flex-direction:column;flex:1 1;min-height:0}.console-root .assistant-conversation{padding:12px 16px max(12px,env(safe-area-inset-bottom));flex:1 1;min-height:0;width:100%}.console-root .assistant-log{flex:1 1;height:auto;min-height:0;padding:8px 0 16px}.console-root .assistant-empty h4{font-size:28px}.console-root .assistant-quick{flex-shrink:0;gap:6px;padding:4px 0 14px}.console-root .assistant-quick button{font-size:11px;padding:8px 10px;gap:7px}.console-root .assistant-conversation .assistant-compose{flex-shrink:0;padding:8px;border-radius:16px}.console-root .assistant-footnote{font-size:10px;flex-shrink:0}.console-root .assistant-message{font-size:15px}.console-root .assistant-proposal{padding:16px;border-radius:16px}.console-root .assistant-proposal dl>div{grid-template-columns:1fr;gap:5px}.console-root .assistant-actions{flex-wrap:wrap}.console-root .assistant-actions .assistant-primary{flex:1 1}}.console-root .stu-assistant-open{display:flex;width:100%;min-height:56px;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line-strong);border-radius:12px;padding:14px 16px;background:var(--signal-wash);color:var(--ink);font:inherit;margin:12px 0}.console-root .stu-assistant-open span{font-size:12px;color:var(--ink-3)}.console-root .assistant-check{display:flex;align-items:center;gap:10px;min-height:44px;font-size:14px;line-height:1.5;margin:12px 0}.console-root .assistant-check input{width:20px;height:20px;accent-color:var(--signal);flex-shrink:0}.console-root .assistant-payment .assistant-primary{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;text-decoration:none}