:root{--bg:#f4eee2;--surface:#fffdf9;--surface-2:#faf4e8;--text:#332a22;--text-sub:#6e5f4f;--text-meta:#a4937c;--text-faint:#c3b6a2;--line:#3a2e2612;--line-2:#3a2e261c;--gold:#be8e2e;--gold-soft:#f3e2bc;--d:#7fb89a;--dt:#234c39;--e:#ebc85f;--et:#6e5717;--n:#3a4358;--nt:#fff;--off:#e58b84;--offt:#7a2a26;--al:#c98fbe;--alt:#5e2553;--s:#7fa8d0;--st:#23425e;--d-s:#7fb89a3d;--e-s:#ebc85f42;--n-s:#3a435824;--off-s:#e58b843d;--al-s:#c98fbe33;--s-s:#7fa8d03d;--warn:#c8553d;--warn-s:#c8553d1f;--warn-bd:#c8553d4d;--sun:#c2685a;--sat:#9c7a4a;--shadow:0 14px 40px #3a2e2612;--shadow-sm:0 6px 22px #3a2e260b;--accent:#f2a93b;--accent-rgb:242,169,59}[data-mode=amber]{--accent:#f2a93b;--accent-rgb:242,169,59}[data-mode=rose]{--accent:#f08896;--accent-rgb:240,136,150}[data-mode=mint]{--accent:#6cc7a8;--accent-rgb:108,199,168}[data-mode=lilac]{--accent:#b499e0;--accent-rgb:180,153,224}[data-mode=sky]{--accent:#6ab4e8;--accent-rgb:106,180,232}[data-mode=coral]{--accent:#f58a6e;--accent-rgb:245,138,110}@media (prefers-color-scheme:dark){:root{--bg:#241d16;--surface:#2e261d;--surface-2:#352b20;--text:#f1e7d6;--text-sub:#cbbba3;--text-meta:#9c8a72;--text-faint:#6e6151;--line:#fff7eb12;--line-2:#fff7eb1f;--gold:#d8a94a;--gold-soft:#be8e2e47;--shadow:0 14px 40px #00000057;--shadow-sm:0 6px 22px #00000038}}html[data-scheme=dark]{--bg:#241d16;--surface:#2e261d;--surface-2:#352b20;--text:#f1e7d6;--text-sub:#cbbba3;--text-meta:#9c8a72;--text-faint:#6e6151;--line:#fff7eb12;--line-2:#fff7eb1f;--gold:#d8a94a;--gold-soft:#be8e2e47;--shadow:0 14px 40px #00000057;--shadow-sm:0 6px 22px #00000038}html[data-scheme=day]{--bg:#f4eee2;--surface:#fffdf9;--surface-2:#faf4e8;--text:#332a22;--text-sub:#6e5f4f;--text-meta:#a4937c;--text-faint:#c3b6a2;--line:#3a2e2612;--line-2:#3a2e261c;--gold:#be8e2e;--gold-soft:#f3e2bc;--shadow:0 14px 40px #3a2e2612;--shadow-sm:0 6px 22px #3a2e260b}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;letter-spacing:-.1px;word-break:keep-all;overflow-wrap:anywhere;line-break:strict;font-family:Pretendard Variable,Pretendard,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,sans-serif;font-weight:400}button{cursor:pointer;font-family:inherit}a{color:inherit;text-decoration:none}.app-shell{max-width:480px;padding:18px 16px calc(82px + env(safe-area-inset-bottom));margin:0 auto}.topbar{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.brand{align-items:center;gap:9px;display:flex}.lamp{width:30px;height:30px}.brand b{letter-spacing:1.4px;font-size:15px;font-weight:500}.icon-btn{border:1px solid var(--line-2);width:34px;height:34px;color:var(--text-sub);background:#ffffff80;border-radius:50%;justify-content:center;align-items:center;display:flex}.icon-btn svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.eyebrow{letter-spacing:1.1px;text-transform:uppercase;color:var(--text-meta);font-size:10.5px;font-weight:500}.pagetitle{letter-spacing:-.2px;font-size:18px;font-weight:500}.hero{border:1px solid var(--gold-soft);box-shadow:var(--shadow);background:linear-gradient(165deg,#fffcf4,#fcf3df);border-radius:24px;margin-bottom:14px;padding:26px 22px 24px;position:relative;overflow:hidden}.hero .halo{background:radial-gradient(circle,rgba(var(--accent-rgb),.3),rgba(var(--accent-rgb),0) 68%);border-radius:50%;width:190px;height:190px;position:absolute;top:-64px;right:-46px}.hero .eyebrow{color:#b08a3c;position:relative}.hero .who{color:#7a6038;margin-top:6px;font-size:13px;font-weight:500;position:relative}.hero .dday{letter-spacing:-3px;color:#3a2e22;margin-top:12px;font-size:64px;font-weight:500;line-height:.95;position:relative}.hero .dot{background:var(--accent);vertical-align:top;width:9px;height:9px;box-shadow:0 0 0 5px rgba(var(--accent-rgb),.16);border-radius:50%;margin:12px 0 0 5px;display:inline-block}.hero .date{color:#6b5538;margin-top:10px;font-size:14px;font-weight:500;position:relative}.hero .rule{background:linear-gradient(90deg,var(--gold-soft),transparent);height:1px;margin:16px 0 12px;position:relative}.hero .also{flex-wrap:wrap;gap:7px;display:flex;position:relative}.hero .chip{color:#6b5538;background:#ffffffb3;border:1px solid #be8e2e2e;border-radius:999px;padding:4px 11px;font-size:11px;font-weight:500}.hero .empty{color:#7a6038;margin-top:10px;font-size:13.5px;font-weight:500;line-height:1.6;position:relative}.hero-cta{border:1px solid var(--gold-soft);color:var(--text);background:#fff9;border-radius:12px;align-items:center;gap:6px;margin-top:14px;padding:9px 14px;font-size:13px;font-weight:500;display:inline-flex;position:relative}@media (prefers-color-scheme:dark){.hero-cta{background:#ffffff0f}}.duty-chip.empty{background:var(--surface-2);color:var(--text-faint);border:1px dashed var(--line-2)}.card{background:var(--surface);box-shadow:var(--shadow-sm);border-radius:20px;margin-bottom:11px;padding:16px 18px}.today-row{align-items:center;gap:13px;margin-top:11px;display:flex}.duty-chip{letter-spacing:.4px;border-radius:13px;flex:none;justify-content:center;align-items:center;width:42px;height:42px;font-size:16px;font-weight:500;display:flex}.duty-chip.D{background:var(--d);color:var(--dt)}.duty-chip.E{background:var(--e);color:var(--et)}.duty-chip.N{background:var(--n);color:var(--nt)}.duty-chip.O{background:var(--off);color:var(--offt)}.duty-chip.A{background:var(--al);color:var(--alt)}.today-t{color:var(--text-sub);font-size:13.5px;font-weight:500}.today-sub{color:var(--text-meta);margin-top:3px;font-size:12px}.week{grid-template-columns:repeat(7,1fr);margin-top:12px;display:grid}.wd{text-align:center}.wd .dn{color:var(--text-faint);font-size:10px;font-weight:500}.wd .kk{border-radius:8px;width:26px;height:26px;margin:8px auto 0;font-size:10.5px;font-weight:500;line-height:26px}.kk.D{background:var(--d);color:var(--dt)}.kk.E{background:var(--e);color:var(--et)}.kk.N{background:var(--n);color:var(--nt)}.kk.O{background:var(--off);color:var(--offt)}.kk.A{background:var(--al);color:var(--alt)}.kk.empty{background:var(--surface-2);color:var(--text-faint)}.wd.tdy .kk{box-shadow:0 0 0 2px var(--surface),0 0 0 3px var(--accent)}.wd.both .kk{box-shadow:0 0 0 2px var(--surface),0 0 0 3px var(--off)}.pair{align-items:center;gap:12px;display:flex}.avatar{color:#7a5e2c;background:linear-gradient(145deg,#fbefd2,#f3e1b6);border-radius:15px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;font-size:16px;font-weight:500;display:flex}.pair-name{font-size:14px;font-weight:500}.pair-status{color:var(--text-meta);margin-top:2px;font-size:11.5px}.mini-stat{gap:9px;margin-top:12px;display:flex}.mini-stat .ms{background:var(--surface-2);border-radius:14px;flex:1;padding:11px 13px}.ms .msn{letter-spacing:-.5px;color:var(--text);font-size:22px;font-weight:500}.ms .msl{color:var(--text-meta);margin-top:2px;font-size:10.5px}.pair-banner{border:1px solid var(--gold-soft);color:var(--text);box-shadow:var(--shadow-sm);background:linear-gradient(165deg,#fffcf4,#fcf3df);border-radius:14px;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;padding:11px 14px;font-size:12.5px;font-weight:500;text-decoration:none;display:flex}.pair-banner .pb-go{color:var(--gold);flex:none;font-weight:500}.invite-link{word-break:break-all;color:var(--text-sub);background:var(--surface-2);border:1px solid var(--line-2);border-radius:10px;padding:10px 12px;font-size:12px;line-height:1.5}.bignum{letter-spacing:-.5px;margin-top:6px;font-size:28px;font-weight:500}.bignum .u{color:var(--text-meta);margin-left:2px;font-size:12px;font-weight:400}.bottom-note{text-align:center;color:var(--text-faint);letter-spacing:.4px;padding:16px 0 6px;font-size:10.5px;font-weight:500}.cal-head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.nav-btn{border:1px solid var(--line-2);width:32px;height:32px;color:var(--text-sub);background:#ffffff80;border-radius:10px;font-size:16px}.seg{background:var(--surface-2);border-radius:13px;gap:3px;margin-bottom:14px;padding:3px;display:flex}.seg-btn{color:var(--text-meta);background:0 0;border:none;border-radius:10px;flex:1;padding:8px;font-size:13px;font-weight:500}.seg-btn.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.kind-bar{gap:6px;margin-bottom:14px;padding-bottom:2px;display:flex;overflow-x:auto}.kind-bar::-webkit-scrollbar{display:none}.kind-btn{border:1px solid var(--line-2);min-width:46px;height:40px;color:var(--text);border-radius:12px;flex:none;padding:0 12px;font-size:12.5px;font-weight:500}.kind-btn.erase{background:var(--surface-2);color:var(--text-meta)}.weekday-row{grid-template-columns:repeat(7,1fr);margin-bottom:6px;display:grid}.weekday{text-align:center;color:var(--text-faint);font-size:10.5px;font-weight:500}.cal{grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.cell{aspect-ratio:1/1.12;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:12.5px;display:flex}.cell .sub{color:var(--text-meta);font-size:9px;font-weight:500}.cell.cursor{border:2px solid var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.14)}.cell.today{border-color:#d8c39c}.cell.b{background:0 0;border:none}.ocr-btn{width:100%;color:var(--text);background:linear-gradient(165deg,#fffcf4,#fbf4e4);border:1.5px dashed #dac79f;border-radius:18px;flex-direction:column;align-items:center;gap:9px;margin-bottom:14px;padding:20px;font-size:13.5px;font-weight:500;display:flex}.ocr-btn svg{width:28px;height:28px;stroke:var(--gold);fill:none;stroke-width:1.5px}.ocr-btn small{color:var(--text-meta);font-size:11px;font-weight:400}.filter{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.fchip{border:1px solid var(--line-2);background:var(--surface);color:var(--text-sub);border-radius:999px;padding:5px 11px;font-size:11px;font-weight:500}.fchip.on{background:rgba(var(--accent-rgb),.14);border-color:var(--gold-soft);color:var(--text)}.ward-scroll{overflow-x:auto}.ward-row{grid-template-columns:48px repeat(7,1fr);align-items:center;gap:4px;min-width:312px;margin-bottom:4px;display:grid}.ward-row .nm{color:var(--text-meta);font-size:11px;font-weight:500}.ward-row.me .nm{color:var(--text)}.wc{aspect-ratio:1;border-radius:7px;justify-content:center;align-items:center;font-size:9.5px;font-weight:500;display:flex}.wc.D{background:var(--d);color:var(--dt)}.wc.E{background:var(--e);color:var(--et)}.wc.N{background:var(--n);color:var(--nt)}.wc.O{background:var(--off);color:var(--offt)}.wc.A{background:var(--al);color:var(--alt)}.wdr-num{color:var(--text-faint);text-align:center;font-size:9.5px;font-weight:500}.btn-block{border:1px solid var(--gold-soft);width:100%;color:var(--text);background:linear-gradient(165deg,#fffcf4,#fbefd2);border-radius:15px;padding:13px;font-size:13.5px;font-weight:500}.team-edit{background:var(--surface-2);border-radius:12px;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:11px;padding:9px 11px;display:flex}.team-edit .lbl{color:var(--text-meta);margin-right:2px;font-size:10px;font-weight:500}.mchip{background:var(--surface);border:1px solid var(--line-2);color:var(--text-sub);border-radius:999px;align-items:center;gap:5px;padding:3px 7px 3px 10px;font-size:11px;font-weight:500;display:inline-flex}.mchip button{color:var(--text-faint);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;line-height:1}.mchip.add{color:var(--gold);cursor:pointer;border-style:dashed;padding:3px 10px}.scroll-hint{color:var(--text-faint);justify-content:flex-end;align-items:center;gap:4px;margin-bottom:6px;font-size:10px;display:flex}.ward-grid{min-width:520px}.ward-grid .ward-row{min-width:0;margin-bottom:4px}.ward-grid .nm{background:linear-gradient(90deg,var(--surface) 78%,transparent);z-index:1;white-space:nowrap;position:sticky;left:0}.ward-grid .ward-row.me .nm{color:var(--text);font-weight:500}.wcol{border-radius:8px;flex-direction:column;align-items:center;gap:1px;padding:4px 0 3px;display:flex}.wcol .dow{color:var(--text-faint);letter-spacing:.3px;font-size:8.5px;font-weight:500}.wcol .dnum{color:var(--text-meta);font-size:10.5px;font-weight:500;line-height:1}.wcol.sun{background:#c2685a12}.wcol.sun .dow{color:var(--sun)}.wcol.sat{background:#9c7a4a14}.wcol.sat .dow{color:var(--sat)}.wcol.warn{background:var(--warn-s);box-shadow:inset 0 0 0 1.5px var(--warn-bd)}.wcol.warn .dnum,.wcol.warn .dow{color:var(--warn);font-weight:500}.sep{position:relative}.sep:before{content:"";background:var(--line-2);width:1px;position:absolute;top:1px;bottom:1px;left:-3px}.wc.S{background:var(--s);color:var(--st)}.wc.we{opacity:.92}.wc.b{background:var(--surface-2);color:#0000}.warn-col{background:var(--warn-s);box-shadow:inset 0 0 0 1.5px var(--warn-bd);border-radius:8px;padding:2px}.msum{flex-wrap:wrap;gap:5px;margin:0 2px 12px;display:flex}.msum-chip{border-radius:7px;padding:3px 8px;font-size:10px;font-weight:500}.msum-chip.D{background:var(--d);color:var(--dt)}.msum-chip.E{background:var(--e);color:var(--et)}.msum-chip.N{background:var(--n);color:var(--nt)}.msum-chip.S{background:var(--s);color:var(--st)}.msum-chip.O{background:var(--off);color:var(--offt)}.msum-chip.A{background:var(--al);color:var(--alt)}.uweek{grid-template-columns:repeat(7,1fr);margin-bottom:5px;display:grid}.uweek div{text-align:center;color:var(--text-faint);font-size:9.5px;font-weight:500}.uweek .s{color:var(--sun)}.uweek .a{color:var(--sat)}.cal-u{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;width:100%;display:grid}.uc{aspect-ratio:1/1.18;border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-direction:column;align-items:center;min-width:0;padding:5px 2px 0;display:flex;position:relative;overflow:hidden}.uc.b{background:0 0;border:none}.uc.warn{border-color:var(--warn-bd);box-shadow:inset 0 0 0 1.5px var(--warn-bd)}.uc .un{color:var(--text-sub);font-size:11px;font-weight:500;line-height:1}.uc.sun .un{color:var(--sun)}.uc.sat .un{color:var(--sat)}.uc .udu{border-radius:5px;margin-top:3px;padding:1px 5px;font-size:8px;font-weight:500}.udu.D{background:var(--d);color:var(--dt)}.udu.E{background:var(--e);color:var(--et)}.udu.N{background:var(--n);color:var(--nt)}.udu.S{background:var(--s);color:var(--st)}.udu.O{background:var(--off);color:var(--offt)}.udu.A{background:var(--al);color:var(--alt)}.cleg{color:var(--text-meta);flex-wrap:wrap;gap:12px;margin:0 2px 12px;font-size:10.5px;display:flex}.cleg span{align-items:center;gap:5px;display:inline-flex}.cleg .sw2{border-radius:3px;width:9px;height:9px}.coseg{gap:2px;margin-top:auto;margin-bottom:5px;display:flex}.coseg i{background:var(--surface-2);border-radius:2px;width:8px;height:4px}.coseg i.on{background:var(--off)}.uc.both{box-shadow:0 0 0 2px var(--surface),0 0 0 2.5px var(--off)}.uc.sel{border:2px solid var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}.day-detail{margin-top:13px}.dd-row{border-bottom:1px solid var(--line);align-items:center;gap:11px;padding:10px 0;display:flex}.dd-row:last-child{border-bottom:none}.dd-row>div{min-width:0}.dd-dot{border-radius:10px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-size:11px;font-weight:500;display:flex}.dd-dot.D{background:var(--d);color:var(--dt)}.dd-dot.E{background:var(--e);color:var(--et)}.dd-dot.N{background:var(--n);color:var(--nt)}.dd-dot.S{background:var(--s-s);color:var(--st)}.dd-dot.O{background:var(--off);color:var(--offt)}.dd-dot.A{background:var(--al-s);color:var(--alt)}.dd-dot.none{background:var(--surface-2);color:var(--text-faint)}.dd-dot.co{background:var(--off-s)}.dd-t{color:var(--text);font-size:13px;font-weight:500}.dd-s{color:var(--text-meta);margin-top:1px;font-size:11px}.dd-empty{color:var(--text-meta);padding:8px 0 2px;font-size:12px}.swatches{gap:11px;margin-top:11px;display:flex}.sw{border:none;border-radius:50%;width:32px;height:32px;padding:0}.set-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:11px 0;display:flex}.set-row:last-child{border-bottom:none}.set-row .k{font-size:13.5px}.set-row .v{color:var(--text-meta);font-size:12.5px}.total-input{text-align:center;border:1px solid var(--line-2);background:var(--surface-2);width:54px;height:30px;color:var(--text);border-radius:9px;font-family:inherit;font-size:13px}.tabbar{z-index:30;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-width:480px;padding:8px 0 calc(12px + env(safe-area-inset-bottom));background:#fffdf9e6;margin:0 auto;display:flex;position:fixed;bottom:0;left:0;right:0}@media (prefers-color-scheme:dark){.tabbar{background:#2e261de6}.icon-btn,.nav-btn{background:#ffffff0f}}.tab{color:var(--text-faint);flex-direction:column;flex:1;align-items:center;gap:3px;display:flex;position:relative}.tab svg{fill:none;stroke:currentColor;stroke-width:1.55px;stroke-linecap:round;stroke-linejoin:round;width:21px;height:21px}.tab span{letter-spacing:.2px;font-size:9.5px;font-weight:500}.tab.active{color:var(--text)}.tab.active .tdot{background:var(--accent);border-radius:50%;width:4px;height:4px;position:absolute;top:-4px}.login{max-width:480px;min-height:100svh;padding:56px 28px calc(28px + env(safe-area-inset-bottom));flex-direction:column;margin:0 auto;display:flex}.login-top{flex-direction:column;align-items:center;margin-bottom:8px;display:flex}.lamp-big{background:var(--text);border-radius:28px;justify-content:center;align-items:center;width:96px;height:96px;display:flex;position:relative;box-shadow:0 20px 50px #3a2e2640}.lamp-big svg{width:64px;height:64px}.lamp-big .glow{background:radial-gradient(circle,rgba(var(--accent-rgb),.3),transparent 65%);z-index:-1;border-radius:50%;position:absolute;inset:-30px}.login .wordmark{letter-spacing:3px;color:var(--text);margin-top:26px;font-size:24px;font-weight:500}.login .slogan{color:var(--text-sub);letter-spacing:.3px;margin-top:12px;font-size:14px}.login h2{letter-spacing:-.4px;margin-top:32px;font-size:22px;font-weight:500;line-height:1.4}.login .sub{color:var(--text-sub);margin-top:10px;font-size:13.5px;line-height:1.6}.field{border:1px solid var(--line-2);background:var(--surface);width:100%;color:var(--text);border-radius:15px;margin-top:16px;padding:15px 16px;font-family:inherit;font-size:16px}.btn-pri{background:var(--text);width:100%;color:var(--bg);letter-spacing:.2px;cursor:pointer;border:none;border-radius:16px;margin-top:16px;padding:15px;font-family:inherit;font-size:15px;font-weight:500}.btn-pri:disabled{opacity:.4}.btn-ghost{width:100%;color:var(--meta);cursor:pointer;background:0 0;border:none;margin-top:6px;padding:12px;font-size:13px}.login .err{color:#9a4a4a;text-align:center;margin-top:12px;font-size:13px}.login .spacer{flex:1}.splash{background:var(--bg);justify-content:center;align-items:center;min-height:100svh;display:flex}.card-h{justify-content:space-between;align-items:center;display:flex}.handover{background:var(--surface);box-shadow:var(--shadow-sm);border:1px solid var(--warn-bd);border-radius:18px;margin:13px 0 11px;padding:15px 16px}.badge-warn{color:var(--warn);background:var(--warn-s);border:1px solid var(--warn-bd);border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:10.5px;font-weight:500;display:inline-flex}.ho-arrow{color:var(--text-sub);margin-top:9px;font-size:12px}.ho-memo{border:1px dashed var(--line-2);background:var(--surface-2);width:100%;color:var(--text-meta);border-radius:11px;margin-top:10px;padding:9px;font-family:inherit;font-size:12px;font-weight:500}.ho-memo:disabled{opacity:.65}.stress-card .sbar{background:var(--surface-2);border-radius:99px;height:8px;margin-top:9px;overflow:hidden}.stress-card .sbar i{background:linear-gradient(90deg,#8fbca7,#e4b768 55%,#c8553d);border-radius:99px;height:100%;transition:width .3s;display:block}.stress-row{justify-content:space-between;align-items:center;margin-top:6px;display:flex}.stress-row .lv{color:var(--warn);font-size:13px;font-weight:500}.stress-empty{color:var(--text-meta);margin-top:9px;font-size:12px}.ocr-mini{background:var(--surface);width:100%;color:var(--text-sub);border:1.5px dashed #dac79f;border-radius:14px;justify-content:center;align-items:center;gap:8px;margin-top:13px;padding:12px;font-family:inherit;font-size:12.5px;font-weight:500;display:flex}.ocr-mini svg{width:19px;height:19px;stroke:var(--gold);fill:none;stroke-width:1.5px}.ocr-mini small{color:var(--text-meta);border:1px solid var(--line-2);border-radius:6px;padding:1px 5px;font-size:10px}.ax-body{--ax-bg:#f1f5f9;--ax-sheet:#fff;--ax-thead:#f8fafc;--ax-border:#e2e8f0;--ax-border-soft:#f1f5f9;--ax-accent:#2563eb;--ax-ink:#0f172a;--ax-text:#475569;--ax-text2:#64748b;--ax-text3:#94a3b8;--ax-tag-bg:#dbeafe;--ax-tag-tx:#1d4ed8;--ax-tag-bd:#bfdbfe;--ax-warn-bg:#fff7ed;--ax-warn-tx:#c2410c;--ax-warn-bd:#fed7aa;background:var(--ax-bg);color:var(--ax-text);min-height:100svh}.ax-top{border-bottom:1px solid var(--ax-border);justify-content:space-between;align-items:flex-start;margin-bottom:16px;padding-bottom:14px;display:flex}.ax-logo-row{align-items:center;gap:7px;display:flex}.ax-sub{letter-spacing:.24em;color:var(--ax-text3);margin-top:6px;margin-left:2px;font-size:9px;font-weight:500}.ax-meta{text-align:right}.ax-type{letter-spacing:.06em;color:var(--ax-accent);text-transform:uppercase;font-size:10px;font-weight:500}.ax-date{color:var(--ax-ink);white-space:nowrap;margin-top:5px;font-size:17px;font-weight:500}.ax-dow{color:var(--ax-text3);margin-left:5px;font-size:11px;font-weight:500}.ax-seg{background:var(--ax-thead);border:1px solid var(--ax-border);border-radius:10px;gap:3px;margin-bottom:13px;padding:3px;display:flex}.ax-seg-btn{color:var(--ax-text2);background:0 0;border:none;border-radius:8px;flex:1;padding:7px;font-family:inherit;font-size:12px;font-weight:500}.ax-seg-btn.active{background:var(--ax-sheet);color:var(--ax-ink);box-shadow:0 1px 2px #0f172a14}.ax-card{background:var(--ax-sheet);border:1px solid var(--ax-border);border-radius:14px;margin-bottom:11px;padding:14px 15px;box-shadow:0 1px 2px #0f172a0a}.ax-card.ax-today{border-color:var(--ax-tag-bd)}.ax-card-h{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.ax-eyebrow{letter-spacing:.04em;text-transform:uppercase;color:var(--ax-text2);font-size:10px;font-weight:500}.ax-eyebrow.sun{color:#dc2626}.ax-eyebrow.sat{color:#2563eb}.ax-daynav{gap:4px;display:flex}.ax-daynav button{border:1px solid var(--ax-border);background:var(--ax-sheet);width:24px;height:24px;color:var(--ax-text2);border-radius:7px;font-size:14px;line-height:1}.ax-slot{border-bottom:1px solid var(--ax-border-soft);align-items:center;gap:12px;padding:11px 0;display:flex}.ax-slot:last-child{border-bottom:none}.ax-time{color:var(--ax-ink);flex:none;width:50px;font-size:12px;font-weight:500;line-height:1.35}.ax-time small{color:var(--ax-text3);font-size:10px;font-weight:500;display:block}.ax-slot-main{flex:1;min-width:0}.ax-grade{color:var(--ax-ink);font-size:13px;font-weight:500}.ax-place{color:var(--ax-text2);margin-top:2px;font-size:11px}.ax-tag{white-space:nowrap;border-radius:6px;align-items:center;gap:3px;padding:3px 8px;font-size:10px;font-weight:500;display:inline-flex}.ax-tag.fix{background:var(--ax-tag-bg);color:var(--ax-tag-tx);border:1px solid var(--ax-tag-bd)}.ax-tag.tbd{background:var(--ax-warn-bg);color:var(--ax-warn-tx);border:1px solid var(--ax-warn-bd)}.ax-del{width:22px;height:22px;color:var(--ax-text3);background:0 0;border:none;border-radius:6px;flex:none;font-size:15px;line-height:1}.ax-empty{color:var(--ax-text3);padding:8px 0 2px;font-size:12px}.ax-req{border:1px solid var(--ax-tag-bd);background:linear-gradient(165deg,#eff6ff,#fff);border-radius:14px;margin-bottom:11px;padding:14px 15px}.ax-req .rq-from{color:var(--ax-accent);font-size:11px;font-weight:500}.ax-req .rq-q{color:var(--ax-ink);margin-top:7px;font-size:13px;font-weight:500;line-height:1.5}.ax-send{border:1px dashed var(--ax-accent);width:100%;color:var(--ax-accent);background:#eff6ff;border-radius:11px;padding:12px;font-family:inherit;font-size:12.5px;font-weight:500}.ax-send small{color:var(--ax-text3);font-size:10px;font-weight:500}.ax-form{background:var(--ax-sheet);border:1px solid var(--ax-border);border-radius:14px;margin-bottom:11px;padding:14px 15px}.ax-frow{align-items:center;gap:8px;margin-bottom:9px;display:flex}.ax-frow label{color:var(--ax-text2);flex:0 0 38px;font-size:11px;font-weight:500}.ax-frow input{border:1px solid var(--ax-border);background:var(--ax-thead);min-width:0;height:32px;color:var(--ax-ink);border-radius:9px;flex:1;padding:0 9px;font-family:inherit;font-size:12.5px}.ax-frow input[type=time]{flex:none}.ax-err{color:#dc2626;margin:0 0 8px;font-size:11px}.ax-btns{gap:8px;margin-top:4px;display:flex}.ax-btn{border:1px solid var(--ax-border);background:var(--ax-sheet);color:var(--ax-text);border-radius:10px;flex:1;padding:10px;font-family:inherit;font-size:12.5px;font-weight:500}.ax-btn.pri{background:var(--ax-accent);color:#fff;border-color:var(--ax-accent)}.ax-uweek{grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:5px;display:grid}.ax-uweek div{text-align:center;color:var(--ax-text3);font-size:9.5px;font-weight:500}.ax-uweek .s{color:#dc2626}.ax-uweek .a{color:#2563eb}.ax-cal{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;width:100%;display:grid}.ax-uc{aspect-ratio:1/1.15;border:1px solid var(--ax-border);background:var(--ax-sheet);border-radius:9px;flex-direction:column;align-items:center;min-width:0;padding:5px 2px 0;font-family:inherit;display:flex;overflow:hidden}.ax-uc.b{background:0 0;border:none}.ax-uc .un{color:var(--ax-text2);font-size:11px;font-weight:500;line-height:1}.ax-uc.sun .un{color:#dc2626}.ax-uc.sat .un{color:#2563eb}.ax-uc .cnt{color:var(--ax-tag-tx);background:var(--ax-tag-bg);border-radius:5px;margin-top:4px;padding:1px 5px;font-size:8.5px;font-weight:500}.ax-uc .rest{color:#16a34a;margin-top:4px;font-size:8.5px;font-weight:500}.ax-uc .tbd{background:#f59e0b;border-radius:50%;width:5px;height:5px;margin-top:auto;margin-bottom:5px}.ax-uc.off{background:#f0fdf4;border-color:#bbf7d0}.st-code{color:var(--text-faint);font-size:10px;font-weight:500}.st-times{font-size:12px}.st-edit{border-bottom:1px solid var(--line);padding:4px 0 10px}.st-frow{align-items:center;gap:7px;margin-top:8px;display:flex}.st-frow label{color:var(--text-meta);flex:0 0 34px;font-size:11px}.st-frow input[type=time]{border:1px solid var(--line-2);background:var(--surface-2);height:30px;color:var(--text);border-radius:9px;padding:0 8px;font-family:inherit;font-size:12.5px}.st-clear{color:var(--text-meta);border:1px solid var(--line-2);background:0 0;border-radius:8px;margin-left:auto;padding:4px 8px;font-size:10.5px}.st-err{color:var(--warn);margin-top:7px;font-size:11px}.st-btns{gap:8px;margin-top:10px;display:flex}.st-save{background:var(--accent);color:#fff;border:none;border-radius:10px;flex:1;padding:9px;font-family:inherit;font-size:12.5px;font-weight:500}.st-cancel{border:1px solid var(--line-2);background:var(--surface);color:var(--text-sub);border-radius:10px;flex:1;padding:9px;font-family:inherit;font-size:12.5px;font-weight:500}.dpal{gap:8px;margin-top:10px;display:flex}.dp{color:#fff;text-shadow:0 1px 2px #0003;border-radius:9px;justify-content:center;align-items:center;width:30px;height:30px;font-size:11px;font-weight:500;display:flex}.dc-row{border-bottom:1px solid var(--line);align-items:center;gap:11px;padding:9px 0;display:flex}.dc-row:last-child{border-bottom:none}.dc-chip{border-radius:9px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-size:11px;font-weight:500;display:flex}.dc-name{flex:1;font-size:13px}.dc-opts{gap:6px;display:flex}.dc-opt{border:2px solid #0000;border-radius:7px;width:22px;height:22px;padding:0}.dc-opt.on{border-color:var(--text-sub)}.toggle{background:var(--line-2);border:none;border-radius:99px;align-items:center;width:42px;height:24px;padding:3px;transition:background .18s;display:flex}.toggle.on{background:var(--accent)}.toggle i{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .18s;box-shadow:0 1px 3px #0003}.toggle.on i{transform:translate(18px)}.formula{background:var(--surface-2);border-radius:13px;margin:4px 0 10px;padding:13px 14px}.formula .fh{color:var(--text);margin-bottom:7px;font-size:12.5px;font-weight:500}.formula .fl{color:var(--text-sub);margin-top:8px;font-size:11.5px}.formula .fl b{color:var(--text);font-weight:500}.formula .fv{color:var(--text-meta);margin-top:2px;font-size:11px;line-height:1.5}
