.board-name{font-size:16px}.board-count,.tcard-subj{font-size:12px}.tcard-title{font-size:16px;line-height:1.5}.tcard-reward{font-size:13px}.btn{font-size:15px}.btn-sm{font-size:13px}.btn:not(.btn-sm){min-height:50px}.tcard .undo,.reward .undo{font-size:13px;min-height:38px}.empty{font-size:15px}.empty-sub{font-size:13px}.notice{font-size:14px}.cta{font-size:13.5px}.panel-k{font-size:12.5px}.switch{width:58px;height:34px;flex:0 0 58px;border-radius:17px}.switch:after{width:30px;height:30px}.switch[aria-checked=true]:after{transform:translate(24px)}.switch:active:after{width:33px}.switch[aria-checked=true]:active:after{transform:translate(21px)}.tcard.pop{animation:cardPop .46s cubic-bezier(.34,1.5,.64,1)}@keyframes cardPop{0%{transform:scale(1)}35%{transform:scale(1.03)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.tcard.pop{animation:none}}.tcard.opt{--subj:var(--s-extra)}.streak-tag{display:inline-flex;align-items:center;gap:3px;margin-left:7px;padding:1px 7px;border-radius:var(--r-pill);font-size:11px;font-weight:var(--fw-2);vertical-align:1px;background:var(--c-acc-soft);color:var(--c-acc-tx)}.streak-tag svg{width:11px;height:11px}.streak-tag.near{background:var(--c-main-soft);color:var(--c-main-deep)}.streak-list{display:flex;flex-direction:column;gap:14px}.streak-item{display:flex;flex-direction:column;gap:6px}.streak-top{display:flex;align-items:center;gap:8px}.streak-ic{width:28px;height:28px;border-radius:9px;flex:0 0 28px;display:flex;align-items:center;justify-content:center;background:var(--c-main-soft);color:var(--c-main-deep)}.streak-ic svg{width:16px;height:16px}.streak-name{font-size:14px;font-weight:var(--fw-2)}.streak-num{margin-left:auto;font-size:18px;font-weight:var(--fw-2);color:var(--c-main-deep)}.streak-num i{font-size:11px;font-style:normal;color:var(--tx-2);margin-left:2px}.streak-bar{height:8px;border-radius:var(--r-pill);background:var(--bd-soft);overflow:hidden}.streak-bar i{display:block;height:100%;border-radius:var(--r-pill);background:linear-gradient(90deg,var(--c-main) 0%,var(--c-acc) 100%);transition:width var(--t-mid)}.streak-hint{font-size:11.5px;color:var(--tx-2);line-height:1.5}.chip-row{display:flex;flex-wrap:wrap;gap:10px}.preset-chip{display:inline-flex;align-items:center;gap:9px;min-height:50px;padding:12px 17px;border-radius:var(--r-pill);background:var(--bg-panel);box-shadow:var(--sh-1);font-family:var(--font);font-size:15px;color:var(--tx-1);transition:transform var(--t-fast)}.preset-chip:active{transform:scale(.955)}.pc-ic{width:21px;height:21px;flex:0 0 21px;color:var(--s-extra)}.pc-ic svg{width:21px;height:21px}.pc-name{font-weight:var(--fw-2)}.pc-pt{font-size:11px;padding:2px 7px;border-radius:var(--r-pill);background:var(--c-acc-soft);color:var(--c-acc-tx)}.pick-btn{min-height:50px;padding:13px 20px;border-radius:var(--r-pill);background:var(--bg-panel);box-shadow:var(--sh-1);font-family:var(--font);font-size:15px;color:var(--tx-2);transition:transform var(--t-fast),background var(--t-fast)}.pick-btn:active{transform:scale(.96)}.pick-btn[aria-pressed=true]{background:var(--c-main);color:var(--tx-on);font-weight:var(--fw-2);box-shadow:0 4px 14px var(--glow-main)}.day-dots{display:flex;gap:3px}.day-dots i{flex:1;height:14px;border-radius:4px;background:var(--bd-soft)}.day-dots i.on{background:var(--c-done)}.board-grid.single{grid-template-columns:minmax(0,1fr)}.panel-sub{display:block;margin-top:5px;font-size:12.5px;font-weight:var(--fw-1);color:var(--tx-2);letter-spacing:0}.tag-must{background:var(--c-main-soft);color:var(--c-main-deep)}.slot-hero{height:262px}.streak-lines{display:flex;flex-direction:column}.streak-line{display:flex;align-items:center;gap:8px;padding:7px 0}.streak-line+.streak-line{border-top:1px solid var(--bd-soft)}.streak-line .streak-ic{width:24px;height:24px;flex:0 0 24px;border-radius:8px}.streak-line .streak-ic svg{width:14px;height:14px}.streak-line .streak-name{font-size:13.5px;font-weight:var(--fw-2)}.streak-line .streak-num{margin-left:auto;font-size:15px}.streak-near{font-size:11px;padding:2px 8px;border-radius:var(--r-pill);background:var(--c-acc-soft);color:var(--c-acc-tx);white-space:nowrap}body{background-color:var(--bg-page);background-image:var(--pat),linear-gradient(168deg,var(--bg-page) 0%,var(--bg-page-2) 100%);background-size:var(--pat-size);background-repeat:var(--pat-repeat);background-attachment:fixed}.theme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.theme-card{display:flex;flex-direction:column;gap:8px;text-align:left;background:var(--bg-panel);border:2px solid transparent;border-radius:var(--r-card);padding:10px;cursor:pointer;font-family:var(--font);color:var(--tx-1);box-shadow:var(--sh-1);transition:transform var(--t-fast)}.theme-card:active{transform:scale(.97)}.theme-card[aria-pressed=true]{border-color:var(--c-main);box-shadow:0 4px 16px var(--glow-main)}.tc-shot{position:relative;display:block;height:96px;border-radius:10px;overflow:hidden;border:1px solid var(--bd-soft)}.tc-shot span{position:absolute;display:block}.tc-stripe{position:absolute;left:0;top:0;bottom:0;width:6px;opacity:.95;z-index:1}.tc-stripe2{position:absolute;left:6px;top:0;bottom:0;width:2px;opacity:.6;z-index:1}.tc-hero{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;border-radius:6px}.tc-nopic{position:absolute;inset:0;border-radius:6px;display:grid!important;place-items:center;background:var(--bg-board);color:var(--tx-2);font-size:11px;letter-spacing:.3px}.tc-figs{position:absolute;right:6px;bottom:5px;display:flex;gap:5px;align-items:flex-end;z-index:2}.tc-ava{width:21px;height:21px;border-radius:50%;object-fit:cover;background:var(--bg-panel);box-shadow:0 0 0 1.5px #ffffffeb}.tc-name{font-size:14px;font-weight:var(--fw-2);line-height:1.2;margin-top:1px}.tc-desc{font-size:11.5px;color:var(--tx-2);line-height:1.45}.theme-name-wrap{display:flex;flex-direction:column;min-width:0}.sheet .theme-grid{grid-template-columns:1fr;gap:10px}.sheet .theme-card{flex-direction:row;align-items:center;gap:13px;padding:11px}.sheet .theme-card .tc-shot{width:170px;flex:none;height:104px}.sheet .theme-name-wrap{flex:1;min-width:0}.sheet .theme-card .tc-desc{margin-top:2px}@media(max-width:400px){.sheet .theme-card .tc-shot{width:132px;height:88px}.sheet .theme-card .tc-desc{display:none}}.mini-ic{width:15px;height:15px;display:inline-block;vertical-align:-2px;flex:0 0 15px}.mini-ic svg{width:100%;height:100%}.pin-input{width:100%;box-sizing:border-box;min-height:64px;text-align:center;font-size:28px;letter-spacing:12px;font-family:var(--font);color:var(--tx-1);background:var(--bg-board-2);border:1.5px solid var(--bd);border-radius:var(--r-card);padding:0 14px}.pin-input::placeholder{letter-spacing:8px;color:var(--tx-3)}.pin-num{width:92px;text-align:center;letter-spacing:5px;font-weight:var(--fw-2)}.slot-row{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:12px}.slot-cap{font-size:11.5px;color:var(--tx-2);margin:0 0 7px}.slot-cell{display:flex;flex-direction:column;align-items:center;gap:6px;flex:0 0 auto}.slot-cell>span{font-size:12px;color:var(--tx-2);line-height:1.2}.slot-thumb{width:98px;height:79px;border-radius:16px;border-style:solid}.slot-thumb-sm{width:64px;height:64px;border-radius:14px}.att-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.att-thumb{width:54px;height:54px;border-radius:12px;overflow:hidden;padding:0;border:1px solid var(--bd-soft);background:var(--bg-board-2);flex:0 0 54px}.att-thumb img{width:100%;height:100%;object-fit:cover;display:block}.att-chip{display:flex;align-items:center;gap:6px;padding:7px 11px;border-radius:var(--r-pill);background:var(--bg-chip);border:1px solid var(--bd-soft);max-width:210px}.att-ic{width:15px;height:15px;flex:0 0 15px;opacity:.85;display:flex}.att-ic svg{width:15px;height:15px}.att-name{font-size:12.5px;color:var(--tx-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.att-thumb.att-ph{display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(45deg,var(--bg-board-2),var(--bg-board-2) 6px,var(--bg-chip) 6px,var(--bg-chip) 12px);animation:att-ph 1.4s ease-in-out infinite}.att-thumb[data-att-broken="1"]{animation:none;cursor:pointer;flex-direction:column;gap:2px;background:repeating-linear-gradient(45deg,var(--bg-chip),var(--bg-chip) 6px,var(--bg-board-2) 6px,var(--bg-board-2) 12px)}.att-thumb[data-att-broken="1"] .att-bad{font-size:10px;line-height:1.25;text-align:center;color:var(--c-main-deep);padding:0 2px}.att-thumb[data-att-broken="1"] .att-ic{font-size:16px;font-weight:700;line-height:1;color:var(--c-main-deep)}@keyframes att-ph{0%,to{opacity:.55}50%{opacity:.95}}.att-err{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border-radius:12px;background:var(--bg-chip);border:1px solid var(--bd-soft)}.att-err .att-name{flex:1 1 auto;min-width:0}.att-err .btn{padding:6px 12px;font-size:12.5px}.att-err-tip{font-size:11.5px;color:var(--tx-2);flex:0 0 100%}.att-view{display:flex;flex-direction:column;gap:12px;margin-top:14px}.att-full{max-width:100%;max-height:58vh;border-radius:14px;display:block;margin:0 auto;background:#000}video.att-full{background:#000}audio.att-full{width:100%;background:none}.sheet-sub{font-size:13px;color:var(--tx-2);margin:-4px 0 6px}.sc-group{margin-bottom:12px}.sc-group:last-child{margin-bottom:0}.sc-lab{font-size:12.5px;color:var(--tx-2);font-weight:var(--fw-2);margin:0 0 7px 2px}.sc-chip{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border-radius:var(--r-pill);background:var(--bg-chip);border:1px solid var(--bd-soft);color:var(--tx-1);font-size:13.5px;transition:transform var(--t-fast),border-color var(--t-fast)}.sc-chip:active{transform:scale(.97);border-color:var(--c-main)}.sc-chip .pc-pt{color:var(--c-main);font-weight:var(--fw-2)}.navfoot,.navlist{flex:0 0 auto}.navfoot .undo{line-height:1.35;padding:7px 11px}.cal-navs{margin-left:auto;display:flex;align-items:center;gap:8px}.cal-nav{width:44px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--bg-panel);box-shadow:var(--sh-1);color:var(--c-main-deep)}.cal-nav svg{width:18px;height:18px}.cal-help{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--bg-panel);box-shadow:var(--sh-1);font-family:var(--font);font-size:16px;font-weight:600;color:var(--tx-3)}.cal-help:active{color:var(--c-main-deep)}.streak-empty{font-size:12.5px;color:var(--tx-3);line-height:1.6;padding:2px 0 6px}.cal-today{min-height:40px;padding:0 16px;border-radius:12px;background:var(--bg-panel);box-shadow:var(--sh-1);font-family:var(--font);font-size:13px;color:var(--tx-2)}.cal-chip{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:10px 16px;border-radius:var(--r-pill);background:var(--bg-panel);box-shadow:var(--sh-1);font-family:var(--font);font-size:14px;color:var(--tx-2);transition:transform var(--t-fast)}.cal-chip:active{transform:scale(.96)}.cal-chip[aria-pressed=true]{background:var(--c-main);color:var(--tx-on);font-weight:var(--fw-2);box-shadow:0 4px 14px var(--glow-main)}.cal-chip .pc-ic{width:18px;height:18px;flex:0 0 18px;color:inherit}.cal-chip .pc-ic svg{width:18px;height:18px}.cal-head{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px;margin:18px 0 6px}.cal-head span{text-align:center;font-size:12px;color:var(--tx-2)}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px}.cal-cell{position:relative;box-sizing:border-box;min-height:62px;border-radius:15px;padding:8px 10px;display:flex;flex-direction:column;justify-content:space-between;align-items:center;font-family:var(--font);color:var(--tx-1);background:var(--bg-board-2);transition:transform var(--t-fast)}.cal-cell:active{transform:scale(.96)}.cal-cell.empty{background:transparent;box-shadow:none}.cal-d{font-size:14px;font-weight:var(--fw-2);line-height:1.1}.cal-num{font-size:11px;opacity:.85}.cal-dots{display:flex;gap:4px;justify-content:center}.cal-dots i{width:7px;height:7px;border-radius:50%;display:block}.cal-dots i:not(.on){background:var(--bd)}.cal-dots i.on:not([class*=tone-]){background:var(--bd)}.lv-full{background:var(--c-main);color:var(--tx-on)}.lv-part{background:var(--c-main-soft);color:var(--c-main-deep)}.lv-zero{background:var(--bd);color:var(--tx-2)}.lv-none{border:1.5px dashed var(--bd);background:transparent;color:var(--tx-3)}.lv-full .cal-dots i{background:#ffffff6b}.lv-full .cal-dots i.on{background:#fff}.hb-on{background:var(--c-done);color:var(--tx-on)}.hb-off{background:var(--bd);color:var(--tx-2)}.hb-none{border:1.5px dashed var(--bd);background:transparent;color:var(--tx-3)}.hb-on .cal-dots i{background:#ffffff73}.cal-cell.today{box-shadow:0 0 0 2.5px var(--c-acc)}.cal-cell.future{opacity:.42}.cal-cell.rest{border-left:3px solid var(--bd);border-radius:15px 15px 15px 6px}.cal-cell.kd-custom{border-left-color:var(--c-acc)}.cal-cell.kd-makeup{border-left:3px dashed var(--c-main);background-image:linear-gradient(var(--c-main-soft),var(--c-main-soft))}.cal-tag{font-size:10px;line-height:1.2;color:var(--tx-2);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:1px}.cal-cell.kd-custom .cal-tag{color:var(--c-acc)}.kd-leg-rest{background:var(--bd)}.kd-leg-makeup{background:var(--c-main-soft);box-shadow:inset 3px 0 0 var(--c-main)}.tone-done{background:var(--c-done)}.tone-english{background:var(--s-english)}.tone-acc{background:var(--c-acc)}.tone-math{background:var(--s-math)}.cal-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:12px;font-size:12px;color:var(--tx-2)}#sheet .cal-legend{padding:12px 14px;border-radius:var(--r-card);background:var(--bg-board)}.cal-legend span{display:flex;align-items:center;gap:6px}.cal-legend .sw{width:12px;height:12px;border-radius:4px;display:block}.cal-legend .dt{width:8px;height:8px;border-radius:50%;display:block}.slim-row{display:flex;align-items:center;gap:9px;padding:8px 0}.slim-row+.slim-row{border-top:1px solid var(--bd-soft)}.slim-ic{width:22px;height:22px;flex:0 0 22px;color:var(--c-main-deep)}.slim-ic svg{width:20px;height:20px}@media(max-width:980px){.cal-cell{min-height:52px;padding:6px 8px;border-radius:12px}.cal-d{font-size:12.5px}.cal-grid,.cal-head{gap:6px}}
