:root{--brand:#3585c5;--brand-deep:#1e5c8e;--brand-sky:#7db9e3;--brand-mist:#eaf4fb;--ink:#27445c;--sub:#7d96a9;--line:#ddecf7;--bg:#fafdff;--card:#ffffff;--danger:#d96868;--warn:#d9a014;--good:#4ba385;--shadow:0 4px 20px rgba(53,133,197,0.09);--shadow-hover:0 10px 32px rgba(53,133,197,0.18)}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;font-family:Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif;color:var(--ink);background:transparent;font-size:14px;overflow-x:hidden}.bg-deco{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.bg-deco .blob{position:absolute;border-radius:50%;filter:blur(90px);opacity:.55;animation:drift 26s ease-in-out infinite alternate}.bg-deco .blob.b1{width:560px;height:560px;top:-180px;right:-120px;background:radial-gradient(circle,#cfe7f8 0,transparent 70%)}.bg-deco .blob.b2{width:640px;height:640px;bottom:-260px;left:-180px;background:radial-gradient(circle,#ddeffb 0,transparent 70%);animation-delay:-9s;animation-duration:32s}.bg-deco .blob.b3{width:380px;height:380px;top:38%;left:56%;background:radial-gradient(circle,#e8f4fc 0,transparent 70%);animation-delay:-17s;animation-duration:22s}@keyframes drift{0%{transform:translate(0) scale(1)}to{transform:translate(-70px,50px) scale(1.12)}}.bg-photo{z-index:-2;background-image:url(/bg-photo.jpg);background-size:cover;background-position:center 70%;filter:blur(2px) saturate(1.06);opacity:.18}.bg-photo,.bg-veil{position:fixed;inset:0;pointer-events:none}.bg-veil{z-index:-1;background:linear-gradient(180deg,rgba(255,255,255,.38),rgba(255,255,255,.52) 50%,rgba(247,251,255,.62))}@media (prefers-reduced-motion:reduce){.bg-deco .blob{animation:none}}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:10;flex-wrap:wrap;gap:6px 2px;padding:10px 24px;background:rgba(255,255,255,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.topbar,.topbar .brand{display:flex;align-items:center}.topbar .brand{gap:10px;margin-right:24px;color:var(--brand-deep);font-weight:700;text-decoration:none;font-size:16px;letter-spacing:.03em;white-space:nowrap;flex-shrink:0}.topbar .brand img{height:40px;width:40px;object-fit:contain;transition:transform .5s cubic-bezier(.34,1.56,.64,1)}.topbar .brand:hover img{transform:rotate(-6deg) scale(1.12)}.topbar nav{display:flex;flex-wrap:wrap;gap:4px 2px}.topbar .nav-guide,.topbar nav a{position:relative;white-space:nowrap;color:var(--ink);text-decoration:none;padding:8px 16px;border-radius:22px;transition:color .2s,background .25s}.topbar .nav-guide:after,.topbar nav a:after{content:"";position:absolute;left:16px;right:16px;bottom:4px;height:2px;background:linear-gradient(90deg,var(--brand),var(--brand-sky));border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .28s ease}.topbar .nav-guide:hover,.topbar nav a:hover{color:var(--brand-deep);background:var(--brand-mist)}.topbar .nav-guide:hover:after,.topbar nav a:hover:after{transform:scaleX(1)}.topbar .nav-toggle{display:none}.nav-dd{position:relative}.nav-dd-btn{position:static;overflow:visible;border:none;background:transparent;box-shadow:none;font:inherit;font-weight:400;cursor:pointer;display:flex;align-items:center;gap:5px;color:var(--ink);padding:8px 16px;border-radius:22px;white-space:nowrap;transition:color .2s,background .25s}.nav-dd-btn:after{content:none}.nav-dd-btn:active,.nav-dd-btn:hover{transform:none}.nav-dd-btn:active,.nav-dd-btn:hover,.nav-dd.open .nav-dd-btn{box-shadow:none;color:var(--brand-deep);background:var(--brand-mist)}.nav-dd-btn.nav-dd-active{color:var(--brand-deep);font-weight:700}.nav-dd-caret{font-size:9px;opacity:.7;transition:transform .2s}.nav-dd.open .nav-dd-caret{transform:rotate(180deg)}.nav-dd-menu{position:absolute;top:calc(100% + 8px);left:0;z-index:40;min-width:186px;padding:6px;display:flex;flex-direction:column;gap:2px;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 34px rgba(39,68,92,.16);animation:navddpop .16s ease both}@keyframes navddpop{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}.topbar nav .nav-dd-menu a{padding:9px 14px;border-radius:10px}.topbar nav .nav-dd-menu a:after{display:none}.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:4px;border-radius:9px;background:#dc2626;color:#fff;font-size:11px;font-weight:700;line-height:1;letter-spacing:0;box-shadow:0 1px 3px rgba(220,38,38,.35)}.topbar nav .nav-dd-menu a{display:flex;align-items:center;gap:6px}.nav-badge-item{margin-left:auto}main{max-width:1240px;margin:0 auto;padding:26px 20px;animation:rise .45s ease both}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}h1{font-size:22px;margin:4px 0 20px;font-weight:700;background:linear-gradient(95deg,var(--brand-deep) 20%,var(--brand) 60%,var(--brand-sky));-webkit-background-clip:text;background-clip:text;color:transparent}h1 .muted{-webkit-text-fill-color:var(--sub);font-weight:500}h2{font-size:15px;margin:0 0 12px;color:var(--brand-deep)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px}@media (max-width:1000px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.grid{grid-template-columns:1fr}}.card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px 20px;box-shadow:var(--shadow);transition:transform .25s ease,box-shadow .3s ease}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover)}.card:before{content:"";position:absolute;top:0;left:20px;right:20px;height:3px;border-radius:0 0 4px 4px;background:linear-gradient(90deg,var(--brand),var(--brand-sky));opacity:.55}.card h2 .count{font-weight:700;margin-left:8px;font-size:18px}.danger h2,.danger h2 .count{color:var(--danger)}.warn h2,.warn h2 .count{color:var(--warn)}.info h2,.info h2 .count{color:var(--brand)}.danger:before{background:linear-gradient(90deg,#e89c9c,#f3c8c8)}.warn:before{background:linear-gradient(90deg,#e6bd62,#f3dfae)}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:8px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:12px;color:var(--sub);font-weight:600;white-space:nowrap}tbody tr{transition:background .2s,transform .2s}tbody tr:hover{background:var(--brand-mist)}tbody tr:hover td:first-child{box-shadow:inset 3px 0 0 var(--brand-sky)}a{color:var(--brand);-webkit-text-decoration-color:rgba(53,133,197,.3);text-decoration-color:rgba(53,133,197,.3);transition:color .15s}a:hover{color:var(--brand-deep)}.muted,.pill{color:var(--sub);font-size:12px}.pill{display:inline-block;padding:2px 11px;border-radius:12px;white-space:nowrap;font-weight:600;background:var(--brand-mist);transition:transform .15s}tr:hover .pill{transform:scale(1.05)}.pill.s01{background:#def0e9;color:#2a7c5d}.pill.s02{background:#fdf2d2;color:#97700d}.pill.s03{background:#d9ebfa;color:#2166a0}.pill.s04{background:#f0e7e7;color:#997373}.pill.s05{background:#eceff1;color:#8b97a0}.pill.s06{background:#ece8f4;color:#6b5b95}.overdue{color:var(--danger);font-weight:700}.filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px;align-items:flex-end;background:rgba(255,255,255,.85);border:1px solid var(--line);border-radius:16px;padding:14px 18px;box-shadow:var(--shadow)}.filters label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--sub)}.filters .filter-zen{flex:1 1 340px}.filters .filter-zen input{width:100%;min-width:300px}.filters select{max-width:17em}.filters .filter-more{flex:1 1 100%;min-width:0;border-top:1px dashed var(--line);padding-top:8px}.filters .filter-more summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--sub);width:-moz-fit-content;width:fit-content}.filters .filter-more-body{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;margin-top:10px}.filters .filter-more-note{font-size:11px;margin:8px 0 0}.addr-export{gap:8px 12px;margin:-6px 0 12px;font-size:13px}.addr-export,.addr-export-panel{display:flex;flex-wrap:wrap;align-items:center}.addr-export-panel{gap:10px 14px;flex:1 1 100%;min-width:0;background:#fff;border:1px solid #b7cde0;border-left:4px solid #2f6f9f;border-radius:10px;padding:10px 14px}.addr-export-text{margin:0;flex:1 1 22em;min-width:0;line-height:1.7}.addr-export-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.addr-export-result{min-width:0}.addr-export-result a{margin-left:8px}.addr-export-err{color:var(--danger);min-width:0}.filters .filter-area-groups{display:flex;flex-direction:column;margin-top:8px}.filters .filter-area-group{display:grid;grid-template-columns:8em minmax(0,1fr);grid-gap:4px 12px;gap:4px 12px;padding:7px 0;border-top:1px solid var(--line)}.filters .filter-area-group:first-child{border-top:none}.filters .filter-area-pref{font-size:13px;font-weight:700;color:var(--ink,inherit);display:flex;gap:6px;align-items:baseline}.filters .filter-area-body{display:grid;grid-template-columns:repeat(auto-fill,minmax(8.5em,1fr));grid-gap:4px 10px;gap:4px 10px}@media (max-width:620px){.filters .filter-area-group{grid-template-columns:minmax(0,1fr)}}.filters .filter-area-item{flex-direction:row;align-items:center;gap:6px;font-size:13px;color:var(--ink,inherit);cursor:pointer;min-width:0}.filters .filter-area-item input{flex:none;margin:0}.filters .filter-area-name{min-width:0}.filters .filter-area-count{color:var(--sub);font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.filters .filter-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.filters .filter-clear{font-size:13px}.fmap-card{padding:12px 14px 14px}.fmap-bar{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between}.fmap-seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;flex-wrap:wrap}.fmap-seg button{border:0;border-radius:0;background:#fff;color:var(--ink);padding:7px 12px;font-size:13px;box-shadow:none;cursor:pointer}.fmap-seg button+button{border-left:1px solid var(--line)}.fmap-seg button.on{background:#163049;color:#fff}.fmap-update{gap:8px 12px;font-size:12px;min-width:0}.fmap-legend,.fmap-update{display:flex;flex-wrap:wrap;align-items:center}.fmap-legend{gap:6px 8px;margin:10px 0}.fmap-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);padding:4px 10px;font-size:13px;box-shadow:none;cursor:pointer;min-width:0}.fmap-chip i{width:11px;height:11px;border-radius:50%;border:1.5px solid #fff;box-shadow:0 0 0 1px rgba(0,0,0,.25);flex:none}.fmap-chip-count{color:var(--sub);font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fmap-chip.off{opacity:.45}.fmap-chip.off .fmap-chip-label{text-decoration:line-through}.fmap-shown{font-size:12px;margin-left:4px}.fmap-map{height:calc(100vh - 290px);min-height:460px;border-radius:10px;overflow:hidden;border:1px solid var(--line)}.fmap-error{margin:0;padding:40px 16px;text-align:center;color:var(--danger);border:1px dashed var(--line);border-radius:10px}.fmap-info{font-size:13px;line-height:1.6;min-width:160px}.fmap-info-name{font-weight:700;font-size:14px}.fmap-info-sub{color:#6b7c8a;font-size:12px}.fmap-school-label{background:#fff;padding:1px 6px;border-radius:9px;border:1px solid #163049;transform:translateY(-18px)}.fmap-note p{margin:0 0 6px;font-size:13px;line-height:1.8}.fmap-note p:last-child{margin-bottom:0;font-size:12px}.st-pinned{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;border-left:4px solid #163049}.st-pinned-title{font-size:12px;font-weight:700;color:var(--sub)}.st-pinned-btn{display:inline-block;font-weight:700;font-size:14px;padding:7px 16px;border-radius:8px;background:#163049;color:#fff;text-decoration:none;white-space:nowrap}.st-pinned-btn:hover{background:#21456a;color:#fff}.st-pinned-desc{font-size:12px;color:var(--sub);min-width:0}.area-summary{display:flex;flex-wrap:wrap;gap:10px 28px;align-items:baseline}.area-kpi{display:flex;flex-direction:column;gap:2px;min-width:0}.area-kpi-n{font-size:22px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.2}.area-kpi-l{font-size:12px;color:var(--sub)}.area-card{overflow-x:auto;-webkit-overflow-scrolling:touch}.area-table{width:100%;border-collapse:collapse;min-width:640px}.area-table td,.area-table th{padding:6px 10px;border-bottom:1px solid var(--line);white-space:nowrap}.area-table thead th{font-size:12px;color:var(--sub);font-weight:600;text-align:left}.area-table .num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.area-table tbody th{text-align:left;font-weight:600}.area-table .area-total{position:relative;min-width:150px}.area-table .area-bar{position:absolute;left:0;top:50%;height:14px;transform:translateY(-50%);background:#dbe7f0;border-radius:3px}.area-table .area-total-n{position:relative;font-weight:600}.area-table .area-tail td,.area-table .area-tail th{background:#f6f8fa}.area-table .area-pref td,.area-table .area-pref th{background:#eef3f7;font-weight:700;border-top:2px solid var(--line)}.area-table tbody tr:not(.area-pref) th{padding-left:22px}.area-table tfoot td,.area-table tfoot th{font-weight:700;border-top:2px solid var(--line);border-bottom:none;text-align:right}.area-table tfoot th{text-align:left}.th-sort{color:inherit;text-decoration:none;white-space:nowrap}.th-sort:hover{text-decoration:underline}.th-sort .th-arrow{font-size:10px;margin-left:3px;opacity:.35}.th-sort.active .th-arrow{opacity:1}button,input,select,textarea{font:inherit;padding:8px 11px;border:1.5px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);transition:border-color .2s,box-shadow .25s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px rgba(53,133,197,.13)}button{position:relative;overflow:hidden;background:linear-gradient(120deg,var(--brand),#4f9bd6);border:none;color:#fff;cursor:pointer;font-weight:600;border-radius:22px;padding:9px 22px;box-shadow:0 3px 12px rgba(53,133,197,.3);transition:transform .15s,box-shadow .25s}button:after{content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);transition:left .45s ease}button:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(53,133,197,.42)}button:hover:after{left:130%}button:active{transform:translateY(0) scale(.97)}.ibx-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px}.ibx-btn{padding:8px 18px;font-size:14px;font-weight:700;border-radius:22px;white-space:nowrap;min-height:40px;font-family:inherit}.ibx-ng,.ibx-ng-solid,.ibx-sub{box-shadow:none}.ibx-ng-solid:after,.ibx-ng:after,.ibx-sub:after{content:none}.ibx-ng-solid:hover,.ibx-ng:hover,.ibx-sub:hover{transform:none;box-shadow:none}.ibx-ng{background:#fff;color:#b91c1c;border:1px solid #f1b5b5}.ibx-ng:hover{background:#fff5f5}.ibx-ng-solid{background:#b91c1c;color:#fff;border:1px solid #991b1b}.ibx-sub{background:#fff;color:#5b6673;border:1px solid #d5dbe3;font-weight:600}.ibx-sub:hover{background:#f5f7fa}.ibx-btn:disabled{opacity:.55;cursor:default}.ibx-hint{font-size:12px;color:#6b7280;margin:6px 0 0;line-height:1.6}.timeline{list-style:none;padding:0;margin:0}.timeline li{position:relative;padding:12px 0 12px 18px;border-left:2px solid var(--line);margin-left:7px;transition:border-color .25s}.timeline li:before{content:"";position:absolute;left:-7px;top:18px;width:12px;height:12px;border-radius:50%;background:linear-gradient(135deg,var(--brand),var(--brand-sky));border:2.5px solid #fff;box-shadow:0 0 0 1.5px var(--line);transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s}.timeline li:hover{border-left-color:var(--brand-sky)}.timeline li:hover:before{transform:scale(1.35);box-shadow:0 0 0 4px rgba(53,133,197,.18)}.timeline .when{font-size:12px;color:var(--sub);margin-bottom:3px}.timeline .body{white-space:pre-wrap;line-height:1.6}.two-col{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);grid-gap:18px;gap:18px;align-items:start}@media (max-width:1100px){.two-col{grid-template-columns:minmax(0,1fr)}}dl.kv{display:grid;grid-template-columns:110px 1fr;grid-gap:5px 12px;gap:5px 12px;margin:0}dl.kv dt{color:var(--sub);font-size:12px;padding-top:2px}dl.kv dd{margin:0;word-break:break-all}.quickform{display:grid;grid-gap:9px;gap:9px}.quickform .row{display:flex;gap:8px}.quickform textarea{min-height:80px}.pager{gap:10px;margin:14px 0 2px}.hero,.pager{display:flex;align-items:center}.hero{justify-content:space-between;gap:16px;flex-wrap:wrap;margin:6px 0 22px}.hero-greet{font-size:24px;font-weight:700;background:linear-gradient(95deg,var(--brand-deep) 20%,var(--brand) 60%,var(--brand-sky));-webkit-background-clip:text;background-clip:text;color:transparent}.hero-date{color:var(--sub);margin-top:4px;font-size:14px}.hero-head{display:flex;align-items:center;gap:8px 14px;flex-wrap:wrap}.hero-head,.hero-titles{min-width:0}.btn-today{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-size:12.5px;font-weight:700;color:var(--brand-deep);text-decoration:none;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.9);border:1px solid rgba(53,133,197,.45);transition:background-color .15s,border-color .15s}.btn-today:hover{background:#f1f7fd;border-color:var(--brand);color:var(--brand-deep)}.btn-today svg{flex:none}.hd-short{display:none}.stat-bubbles{display:flex;gap:5px;flex-wrap:wrap}.bubble{display:inline-flex;flex-direction:row;align-items:baseline;justify-content:center;gap:5px;padding:4px 10px;border-radius:999px;white-space:nowrap;background:#fff;border:1px solid var(--line);transition:border-color .15s;cursor:pointer;text-decoration:none;color:var(--ink)}.bubble:hover{border-color:rgba(53,133,197,.45)}.bubble-n{font-size:14.5px;font-weight:700;line-height:1.3;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bubble-label{font-size:11.5px;color:var(--sub);font-weight:600}.st-green{background:linear-gradient(160deg,#f2fbf6,#e2f5ea)}.st-green .bubble-n{color:#2a7c5d}.st-amber{background:linear-gradient(160deg,#fdf9ee,#faf0d4)}.st-amber .bubble-n{color:#97700d}.st-pink{background:linear-gradient(160deg,#fdf4f7,#fae3ec)}.st-pink .bubble-n{color:#b25a82}.st-blue{background:linear-gradient(160deg,#f2f9fe,#ddeefb)}.st-blue .bubble-n{color:var(--brand-deep)}.btn-new{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;background:linear-gradient(120deg,var(--brand),#4f9bd6);color:#fff;font-weight:700;font-size:13.5px;padding:9px 16px;border-radius:999px;text-decoration:none;box-shadow:0 4px 14px rgba(53,133,197,.32);transition:transform .18s ease,box-shadow .25s ease}.btn-new:hover{color:#fff;transform:translateY(-2px);box-shadow:0 7px 20px rgba(53,133,197,.42)}.btn-new>span[aria-hidden]{font-size:16px;line-height:1;font-weight:800}.hero-search{flex:1 1;min-width:280px;max-width:560px;display:flex;flex-direction:row;gap:10px;align-items:center}.hero-search .searchbox{flex:1 1;min-width:0;max-width:none}.hero-search .btn-new{flex:none}.list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:4px 0 20px}.list-head h1{margin:0}.head-actions{display:flex;gap:12px;flex-wrap:wrap}.docs-panel{margin-top:10px;padding-top:8px;border-top:1px dashed var(--line)}.docs-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.docs-title{font-size:12.5px;font-weight:700;color:var(--brand-deep)}.docs-controls{display:flex;align-items:center;gap:6px}.docs-controls .edit-input{font-size:12px;padding:3px 6px}.docs-drop{margin-top:7px;padding:12px;border:1.5px dashed var(--line);border-radius:10px;text-align:center;font-size:12px;color:var(--sub);cursor:pointer;background:#fafcff;transition:border-color .15s,background .15s}.docs-drop:hover{border-color:var(--brand-sky)}.docs-drop.on{border-color:var(--brand);background:var(--brand-mist);color:var(--brand-deep)}.docs-drop.busy{opacity:.7;cursor:progress}.docs-msg{font-size:11.5px;margin-top:5px}.docs-list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:5px}.docs-item{display:flex;align-items:center;gap:8px;padding:6px 8px;background:#fff;border:1px solid var(--line);border-radius:9px}.docs-ic{flex:none;font-size:15px}.docs-name{flex:1 1 auto;min-width:0;font-size:12.5px;display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.docs-name a{color:var(--brand-deep)!important;-webkit-text-fill-color:var(--brand-deep);text-decoration:none;font-weight:600;word-break:break-all}.docs-name a:hover{text-decoration:underline}.docs-tag{font-size:10px;font-weight:700;padding:1px 7px;border-radius:8px;background:var(--brand-mist);color:var(--brand-deep)}.docs-meta{font-size:11px}.docs-actions{display:flex;gap:5px;flex:none}.docs-actions .mini-btn{font-size:11px;padding:2px 8px}.dup-warn{border-color:#e0a96d;background:#fff7ec}.dup-warn>strong{color:#b06f1e}.dup-list{margin:8px 0 0;padding-left:18px;line-height:1.9}.dup-badge{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:700;background:#eceff1;color:#7d8a93;vertical-align:middle}.dup-badge.strong{background:#fbe0e0;color:#b21f1f}.dup-modal-list{display:flex;flex-direction:column;gap:8px;max-height:46vh;overflow-y:auto}.dup-modal-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fafcfe}.dup-modal-item button{font-size:13px;padding:8px 14px}.searchbox{position:relative;flex:1 1;min-width:240px;max-width:420px}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:15px;pointer-events:none}.searchbox input{width:100%;padding:12px 16px 12px 40px;border-radius:26px;border:1.5px solid var(--line);background:rgba(255,255,255,.92);box-shadow:var(--shadow);font-size:14px;transition:border-color .2s,box-shadow .25s,transform .2s}.searchbox input:focus{transform:scale(1.015)}.search-pop{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:20;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 14px 40px rgba(53,133,197,.22);padding:6px;max-height:420px;overflow-y:auto;animation:pop .18s cubic-bezier(.34,1.56,.64,1) both}@keyframes pop{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.search-hit{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;border-radius:13px;background:transparent;color:var(--ink);text-align:left;cursor:pointer;box-shadow:none;font-weight:500}.search-hit:after{content:none}.search-hit.hl,.search-hit:hover{background:var(--brand-mist);transform:none;box-shadow:none}.search-hit .hit-name{font-weight:600;color:var(--brand-deep)}.search-hit .pill{margin-left:auto}.search-none{padding:14px 12px;color:var(--sub);font-size:13px}.card.cute{border-radius:20px}.sec-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;margin-right:8px;font-size:16px;background:var(--brand-mist);border-radius:10px;transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.card.cute:hover .sec-icon{transform:rotate(-8deg) scale(1.15)}.danger .sec-icon{background:#fdeeee}.warn .sec-icon{background:#fdf6e1}.cutelist{list-style:none;padding:0;margin:0}.cutelist li{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:14px;transition:background .18s,transform .18s}.cutelist li:hover{background:var(--brand-mist);transform:translateX(3px)}.cutelist li:hover .avatar{transform:scale(1.12) rotate(-4deg)}.li-main{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px}.li-main a{font-weight:600;text-decoration:none}.li-sub{font-size:11.5px;color:var(--sub);display:block;white-space:normal;overflow-wrap:anywhere;line-height:1.4}.li-person{display:block;text-decoration:none}.li-person .nb-child{font-size:14.5px}.li-person .nb-kana{font-size:11px}.li-meta2{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:11.5px;color:var(--sub);margin-top:1px}.off-tag{display:inline-block;margin-right:5px;padding:0 6px;font-size:10px;font-weight:700;line-height:16px;border-radius:8px;background:#f3e3e3;color:#b25a5a;vertical-align:middle}.li-right{font-size:11px;white-space:nowrap;color:var(--sub);flex-shrink:0}.li-right.overdue{color:var(--danger)}.pay-alert{display:flex;align-items:baseline;gap:8px;margin:0 0 14px;padding:9px 14px;border-radius:12px;background:#fdeaea;border-left:4px solid var(--danger);font-size:13px;line-height:1.7}.pay-alert-ico{flex-shrink:0}.pay-alert-body b{color:var(--danger)}.pay-alert-name{text-decoration:none;font-weight:600}.pay-alert-when{color:var(--danger);font-size:11.5px}.pay-alert-more{color:var(--sub)}.taikai-alert{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin:0 0 14px;padding:9px 14px;border-radius:12px;background:#fff6e0;border-left:4px solid #d99a1e;font-size:13px;line-height:1.7}.taikai-alert-tag{flex-shrink:0;padding:0 8px;border-radius:8px;background:#d99a1e;color:#fff;font-size:11px;font-weight:700;line-height:18px}.taikai-alert-body{flex:1 1 260px;min-width:0}.taikai-alert-body b{color:#8a5a00}.taikai-alert-name{text-decoration:none;font-weight:600}.taikai-alert-when{color:#8a5a00;font-size:11.5px}.taikai-alert-more{color:var(--sub)}.dual-sec{margin-top:6px}.dual-sec+.dual-sec{border-top:1px dashed var(--line,#e5e5e5);margin-top:10px;padding-top:8px}.dual-h{font-size:13px;font-weight:700;color:var(--sub);margin:2px 0 4px}.dual-n{font-weight:700;margin-left:4px;color:var(--ink)}.dual-empty{font-size:12.5px;color:var(--sub);margin:2px 0 4px;padding-left:4px}.avatar{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;font-size:14px;font-weight:700;color:#fff;transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.av0{background:linear-gradient(135deg,#6fa8d6,#8fc1e8)}.av1{background:linear-gradient(135deg,#74b8a1,#9ad2bf)}.av2{background:linear-gradient(135deg,#c08cb0,#d9aecb)}.av3{background:linear-gradient(135deg,#8d9ed8,#b0bde8)}.av4{background:linear-gradient(135deg,#d6a86f,#e8c79a)}.empty-state{display:flex;align-items:center;gap:10px;padding:18px 8px;color:var(--sub);font-size:13.5px}.empty-emoji{font-size:26px;animation:bob 3s ease-in-out infinite}@keyframes bob{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-5px) rotate(6deg)}}.mini-btn{display:inline-block;padding:5px 13px;border-radius:14px;background:linear-gradient(120deg,var(--brand),#4f9bd6);color:#fff!important;font-size:12px;font-weight:600;text-decoration:none;box-shadow:0 2px 8px rgba(53,133,197,.28);transition:transform .15s,box-shadow .2s}.mini-btn:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 5px 14px rgba(53,133,197,.4)}.more{margin:8px 0 0 8px}.more-link{display:inline-block;text-decoration:none;font-weight:600;font-size:13px;color:var(--brand);padding:4px 2px;transition:transform .15s}.more-link:hover{transform:translateX(3px)}.edit-input,.edit-select{font:inherit;padding:3px 8px;border-radius:10px;border:1.5px solid transparent;background:transparent;color:var(--ink);cursor:pointer;transition:border-color .15s,box-shadow .2s,background .15s;max-width:140px}.edit-input:hover,.edit-select:hover{border-color:var(--line);background:#fff}.edit-input:focus,.edit-select:focus{border-color:var(--brand);background:#fff;box-shadow:0 0 0 3px rgba(53,133,197,.12);outline:none}.edit-select.pill{font-weight:600;font-size:12px;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:8px}.edit-select.conf{font-weight:700;width:64px}.edit-select.conf.c-高{color:#d96868}.edit-select.conf.c-中{color:#d9a014}.edit-select.conf.c-低{color:#7d96a9}.edit-input{cursor:text;width:92px}.save-tag{margin-left:8px;font-size:11px;font-weight:600;color:var(--sub);opacity:0;animation:tagIn .2s ease forwards}.save-tag.ok{color:var(--good)}.save-tag.err{color:var(--danger)}@keyframes tagIn{0%{opacity:0;transform:translateX(-4px)}to{opacity:1;transform:none}}.row-saved td{animation:savedGlow 1.4s ease}@keyframes savedGlow{0%{background:rgba(91,168,122,.18)}to{background:transparent}}.member-badge{display:inline-flex;align-items:center;gap:3px;background:linear-gradient(160deg,#fff6da,#ffe9ad);color:#8a6a12;border:1px solid #f0d589;font-weight:800;font-size:12px;line-height:1;padding:4px 9px;border-radius:999px;white-space:nowrap;-webkit-text-fill-color:#8a6a12}.member-badge.sm{font-size:11px;padding:2px 7px;margin-right:6px;vertical-align:middle}tbody tr.row-member td{background:#f1f8fd;box-shadow:inset 3px 0 0 var(--brand-sky)}.edit-link,tbody tr.row-member:hover td{background:var(--brand-mist)}.edit-link{font-size:13px;font-weight:600;text-decoration:none;padding:5px 14px;border-radius:16px;color:var(--brand-deep)!important;-webkit-text-fill-color:var(--brand-deep);transition:transform .15s,box-shadow .2s}.edit-link:hover{transform:translateY(-1px);box-shadow:0 3px 10px rgba(53,133,197,.25)}.score-card .score-show{display:flex;align-items:center;gap:14px;margin-bottom:10px}.score-big{font-size:40px;font-weight:800;line-height:1;color:var(--brand-deep)}.conf-pill{font-size:13px;padding:4px 12px}.conf-pill.c-高{background:#fdeaea;color:#c0392b}.conf-pill.c-中{background:#fdf2d2;color:#97700d}.conf-pill.c-低{background:#eef1f4;color:#7d8a96}.score-breakdown{list-style:none;padding:0;margin:0;font-size:12.5px}.score-breakdown li{display:flex;justify-content:space-between;padding:3px 0;border-bottom:1px dashed var(--line)}.flag-grid{display:flex;flex-direction:column;gap:7px}.flag-row{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink);cursor:pointer}.flag-row input[type=checkbox]{width:auto}.flag-row input[type=number]{margin-left:auto}.editlog{list-style:none;padding:0;margin:0}.editlog>li{padding:9px 0;border-bottom:1px solid var(--line);font-size:13px}.editlog .when{font-size:11px;color:var(--sub);margin-bottom:4px;font-weight:600}.edit-changes{list-style:none;padding:0 0 0 10px;margin:0;border-left:2px solid var(--line)}.edit-changes li{padding:2px 0;font-size:12.5px;line-height:1.5}.history-more{background:none;box-shadow:none;color:var(--brand);border:none;padding:8px 2px;font-size:13px;font-weight:600;cursor:pointer;margin-top:6px}.history-more:after{content:none}.history-more:hover{transform:none;box-shadow:none;text-decoration:underline}.guide{max-width:860px;margin:0 auto}.guide b,.guide strong{font-weight:600;color:var(--ink)}.guide .g-list li,.guide .g-sec p,.guide .g-step-body li,.guide .g-step-body p{color:#38424a}.g-hero{text-align:center;padding:26px 24px;margin-bottom:24px;border-radius:20px;background:linear-gradient(150deg,#eaf4fb,#f7fbff);border:1px solid var(--line)}.g-hero h1{margin:0 0 10px;-webkit-text-fill-color:initial;color:var(--brand-deep)}.g-hero p{color:var(--ink);line-height:1.8;margin:0}.g-sec{background:#fff;border:1px solid var(--line);border-radius:16px;padding:4px 22px 22px;margin-bottom:22px;box-shadow:var(--shadow)}.g-sec>h2{font-size:18px;color:var(--brand-deep);margin:0 -22px 16px;padding:16px 22px 14px 18px;border-bottom:1px solid var(--line);border-left:5px solid var(--brand);border-radius:16px 16px 0 0;background:linear-gradient(180deg,#f4faff,#fff)}.g-sec p{line-height:1.8}.g-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:12px;gap:12px}.g-card{background:#f8fbfe;border:1px solid var(--line);border-radius:14px;padding:14px 16px}.g-card h3{margin:0 0 6px;color:var(--brand-deep);font-size:15px}.g-card p{margin:0;font-size:13px;line-height:1.7}.g-callout{background:var(--brand-mist);border-radius:12px;padding:12px 16px;font-size:13.5px;line-height:1.8;margin:12px 0 0}.g-callout-blue{background:#eef4fb;border-left:4px solid var(--brand)}.g-callout-yellow{background:#faf6ea;border-left:4px solid #d9ad4a}.g-step{display:flex;gap:14px;padding:14px 0;border-bottom:1px dashed var(--line)}.g-step:last-of-type{border-bottom:0;padding-bottom:4px}.g-step-n{flex-shrink:0;width:34px;height:34px;border-radius:50%;font-weight:800;font-size:16px;background:linear-gradient(135deg,var(--brand),var(--brand-sky));color:#fff;display:flex;align-items:center;justify-content:center}.g-step-body h3{margin:4px 0 6px;font-size:15.5px}.g-step-body li,.g-step-body p{line-height:1.8}.g-step-body ul{margin:6px 0;padding-left:20px}.g-sec>h2+.g-grid,.g-sec>h2+ol,.g-sec>h2+p,.g-sec>h2+ul{margin-top:0}.g-rules{display:flex;flex-direction:column;gap:10px}.g-rule{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;box-shadow:var(--shadow)}.g-rule>span{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:var(--accent,#e07a4a);background:linear-gradient(135deg,#f0a04a,#e07a4a);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center}.g-rule>div{line-height:1.7}.g-list{line-height:1.9;padding-left:20px}.g-list>li+li{margin-top:6px}.g-subh{font-size:15px;color:var(--brand-deep);font-weight:700;margin:24px 0 8px;padding-top:16px;border-top:1px dashed var(--line)}.g-sec>.g-subh:first-of-type,.g-sec>h2+.g-subh{border-top:0;padding-top:0;margin-top:16px}.g-faq{margin:0}.g-faq dt{font-weight:700;color:var(--brand-deep);margin-top:14px}.g-faq dd{margin:4px 0 0;line-height:1.8;padding-left:14px;border-left:2px solid var(--line)}@media (max-width:560px){.g-sec{padding:4px 14px 16px;border-radius:12px}.g-sec>h2{margin:0 -14px 14px;padding:14px 14px 12px 12px;border-radius:12px 12px 0 0}}.next-banner{display:flex;align-items:flex-start;gap:8px 14px;flex-wrap:wrap;margin:-2px 0 18px;padding:11px 18px;background:#fdeceb;border:1px solid #f2c9c7;border-left:5px solid #e0584f;border-radius:14px}.next-banner .nb-label{font-size:12px;font-weight:700;color:#c0504d;white-space:nowrap;margin-top:5px}.next-banner .nb-list{flex:1 1;display:flex;flex-direction:column;gap:7px;min-width:0}.nb-item{display:flex;align-items:baseline;gap:6px 12px;flex-wrap:wrap}.nb-item .nb-done{align-self:center;margin-left:auto}.nb-edit{display:inline-flex;align-items:baseline;gap:6px 12px;flex-wrap:wrap;background:none;border:none;padding:2px 4px;margin:-2px -4px;border-radius:8px;cursor:pointer;text-align:left;box-shadow:none;color:inherit}.nb-edit:hover{background:rgba(192,57,43,.08);box-shadow:none;transform:none}.nb-edit-pen{font-size:12px;color:#c0504d;opacity:0;align-self:center}.nb-edit:hover .nb-edit-pen{opacity:1}.nb-tag{font-size:11px;font-weight:800;padding:2px 10px;border-radius:10px;white-space:nowrap;align-self:center}.nb-tag.tag-trial{background:#def0e9;color:#2a7c5d}.nb-tag.tag-consult{background:#d9ebfa;color:#2166a0}.next-banner .nb-main{display:flex;align-items:baseline;gap:6px 14px;flex-wrap:wrap}.next-banner .nb-date{font-size:20px;font-weight:800;color:#c0392b;line-height:1.2}.next-banner .nb-action{font-size:14.5px;font-weight:600;color:var(--ink)}.next-banner.is-overdue{background:#fbe1e0;border-color:#ecb3b0 #ecb3b0 #ecb3b0 #b21f1f}.next-banner.is-overdue .nb-date{color:#a31515}.next-banner.is-none{background:#f3f5f7;border-color:var(--line);border-left-color:#c4ccd3}.next-banner.is-none .nb-date{font-size:16px;color:var(--sub);font-weight:700}.next-banner .nb-main{flex:1 1}.nb-done{align-self:center;white-space:nowrap;background:#fff;color:#b03a33;border:1px solid #e3aaa6;padding:6px 12px;border-radius:999px;font-size:12.5px;font-weight:700;cursor:pointer;transition:background .15s,transform .15s}.nb-done:hover{background:#fdf0ef;transform:translateY(-1px)}.nb-done-modal{max-width:460px}.nb-done-preview{background:#fdeceb;border:1px solid #f2c9c7;border-radius:10px;padding:10px 14px;margin:10px 0;font-size:14px;font-weight:600;line-height:1.7}.ghost-btn{background:#fff!important;color:var(--sub)!important;border:1px solid var(--line)!important;box-shadow:none!important}.slot-pick{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:2px 0 4px;font-size:12.5px}.slot-chip{background:#fff;color:var(--brand);border:1px solid var(--brand-sky);padding:5px 11px;border-radius:999px;font-size:12.5px;font-weight:700;cursor:pointer;transition:background .15s,transform .15s}.slot-chip:hover{transform:translateY(-1px)}.slot-chip.on{background:var(--brand);color:#fff;border-color:var(--brand)}.slot-chip.on:before{content:"✓ "}.cls-head,.cls-row{display:grid;align-items:center;grid-gap:6px;gap:6px;grid-template-columns:minmax(170px,1.2fr) 60px 76px 48px 84px 84px 116px minmax(88px,.8fr) 42px 84px 30px 92px}.cls-open{display:flex;gap:4px}.cls-open,.cls-open select{min-width:0}.cls-open input{width:42px;flex:none;text-align:center}.doc-open{margin:0 0 10px}.doc-open-body{margin-top:8px;padding:12px 14px;background:var(--brand-mist);border-radius:12px}.doc-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:6px 0;font-size:13px}.doc-line select{padding:4px 6px;min-width:220px}.doc-current{margin-top:10px;border-top:1px dashed var(--line);padding-top:8px}.doc-ex{display:flex;align-items:center;gap:8px;font-size:12.5px;margin:3px 0}.doc-ex-tag{font-size:11px;font-weight:700;padding:1px 8px;border-radius:999px}.doc-ex-tag.off{background:#fde7e7;color:#b24a4a}.doc-ex-tag.add{background:#e7f3ec;color:#2a7c5d}.doc-line.doc-close{border-top:1px dashed var(--line);padding-top:10px;margin-top:10px}.doc-close input[type=date]{padding:3px 6px}.doc-closed-now{display:inline-flex;align-items:center;gap:10px;font-weight:700;color:#b24a4a}.doc-closed-list{display:flex;flex-wrap:wrap;gap:6px}.doc-closed-chip{display:inline-flex;align-items:center;gap:4px;font-size:12px;background:#fde7e7;color:#9a3b3b;border-radius:999px;padding:2px 4px 2px 10px}.doc-closed-chip.on{outline:2px solid #e0a8a8}.doc-chip-x{display:inline-flex;align-items:center;justify-content:center;border:none;background:rgba(0,0,0,.08);color:inherit;border-radius:999px;width:17px;height:17px;line-height:1;padding:0;cursor:pointer;font-size:12px;flex:0 0 auto}.closed-day-banner{background:#fdecec;border:1px solid #f0c4c4;color:#99383a;border-radius:10px;padding:8px 14px;margin:0 0 12px;font-size:13.5px}.cls-cap{text-align:center}.cls-head{font-size:11.5px;padding:0 2px 6px;border-bottom:1px solid var(--line)}.cls-course{font-weight:800;color:var(--brand);margin:14px 0 4px;font-size:13.5px}.cls-row{padding:5px 0;border-bottom:1px dashed var(--line)}.cls-row.off{opacity:.45}.cls-row input,.cls-row select{width:100%;min-width:0}.cls-class{display:flex;gap:6px;min-width:0}.cls-class .cls-course-sel{width:96px;flex:none;font-size:12px}.cls-on{display:flex;justify-content:center}.cls-on input{width:17px;height:17px;accent-color:var(--brand);cursor:pointer}.cls-ops{display:flex;gap:5px;justify-content:flex-end}.cl-box{margin-top:6px}.cl-body{margin-top:8px;padding:12px 14px;background:#fff6ec;border:1px solid #f0d9be;border-radius:12px}.cl-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.cl-classes{display:inline-flex;gap:10px;flex-wrap:wrap}.cl-cls{display:inline-flex;align-items:center;gap:4px;font-size:12.5px}.cl-memo{padding:3px 8px;border:1px solid var(--line);border-radius:8px;font-size:12.5px;min-width:140px}.cl-current{margin-bottom:10px}.cl-chip{display:inline-flex;align-items:center;gap:2px;font-size:12.5px;background:#fde9cf;color:#8a5a17;border-radius:999px;padding:3px 6px 3px 12px;margin:0 6px 6px 0}.cl-x{border:none;background:transparent;color:#a8702a;cursor:pointer;font-size:14px;line-height:1;padding:0 4px}.cl-x:hover{color:#c43a3a}.cl-box .cl-body input[type=date]{padding:3px 6px}.enroll-line{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:8px}.enroll-label{font-size:12px;font-weight:600;color:var(--sub)}.enroll-chip{background:var(--brand-mist);color:var(--brand-deep);font-size:11.5px;font-weight:700;padding:2px 9px;border-radius:10px;white-space:nowrap}.enroll-btn,.enroll-btn:hover{background:#fff;color:var(--brand)!important;border:1px solid var(--brand-sky);box-shadow:none;font-size:11.5px;padding:3px 10px}.enroll-modal{max-width:560px}.enroll-groups details{border:1px solid var(--line);border-radius:10px;padding:8px 12px;margin-bottom:8px}.enroll-groups summary{cursor:pointer;font-weight:700;font-size:13.5px;color:var(--brand-deep)}.enroll-slots{display:grid;grid-template-columns:1fr 1fr;grid-gap:4px 10px;gap:4px 10px;margin-top:8px}.enroll-slot{display:flex;align-items:center;gap:7px;font-size:12.5px;padding:5px 8px;border-radius:8px;cursor:pointer}.enroll-slot.on,.enroll-slot:hover{background:var(--brand-mist)}.enroll-slot.on{font-weight:700}.enroll-slot input{width:15px;height:15px;accent-color:var(--brand);cursor:pointer;flex:none}.enroll-slot .full{color:var(--danger);font-weight:700}.enroll-slot-row{display:flex;flex-direction:column}.enroll-start{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:0 8px 4px 30px;font-size:11px}.enroll-start input[type=date]{font-size:12px;padding:2px 6px;width:auto}.enroll-start-tag{color:var(--danger);font-weight:800;font-size:10.5px;margin-left:4px}.roster-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.roster-controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:10px}.roster-sort{font-size:13px;color:var(--sub);display:inline-flex;align-items:center;gap:6px}.roster-sort select{font-size:13px;padding:4px 8px;border:1px solid var(--line);border-radius:8px}.roster-filter-tag{display:inline-flex;align-items:center;gap:8px;font-size:13px;background:var(--brand-mist);color:var(--brand-deep);padding:4px 12px;border-radius:999px}.roster-clear{border:none;background:var(--brand);color:#fff;cursor:pointer;font-size:11px;font-weight:700;padding:2px 9px;border-radius:999px}.roster-th-click{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.roster-th-click:hover{background:var(--brand-sky)}.roster-th-click.on{background:var(--brand)}.roster-th-click.on .r-class,.roster-th-click.on .r-day,.roster-th-click.on .r-time{color:#fff}table.roster td.mark-hl{background:rgba(53,133,197,.16)}.roster-tab{background:#fff;border:1px solid var(--line);color:var(--sub);padding:6px 14px;border-radius:999px;font-size:13px;font-weight:600;text-decoration:none}.roster-tab.on{background:var(--brand);border-color:var(--brand);color:#fff}.roster-card{overflow:hidden}.roster-wrap{overflow:auto;max-height:72vh}table.roster{border-collapse:collapse;width:max-content;min-width:100%}table.roster td,table.roster th{border-bottom:1px solid var(--line);padding:6px 8px;text-align:center;white-space:nowrap;font-size:12.5px}table.roster th{background:var(--brand-mist)}table.roster thead th{position:-webkit-sticky;position:sticky;top:0;z-index:2}table.roster thead th.rname{z-index:4}table.roster tbody .rname{z-index:1}table.roster .r-day{font-size:11px;color:var(--sub);font-weight:700}table.roster .r-class{font-size:11.5px;font-weight:700;color:var(--brand-deep);max-width:84px;white-space:normal;line-height:1.3;margin:2px auto}table.roster .r-time{font-size:10.5px;color:var(--sub)}table.roster .rname{text-align:left;position:-webkit-sticky;position:sticky;left:0;background:#fff;min-width:120px;box-shadow:1px 0 0 var(--line)}table.roster tfoot .rname,table.roster thead .rname{background:var(--brand-mist);font-weight:700}table.roster tfoot .rname{background:#fff}table.roster .rnum{color:var(--sub)}table.roster td.mark{color:var(--brand);font-weight:800;background:rgba(53,133,197,.07)}table.roster td.mark.trial{color:#2a7c5d;background:#def0e9;font-size:11px;font-weight:700}table.roster .r-sep td{background:#f6faf8;color:#2a7c5d;font-weight:700;text-align:left;font-size:12px}table.roster tfoot td{font-weight:700;border-top:2px solid var(--brand-sky)}table.roster tfoot tr.muted-row td{font-weight:400;color:var(--sub);border-top:none;font-size:11.5px}table.roster tfoot tr:not(:first-child) td{border-top:none}table.roster tbody.roster-summary td{font-weight:700}table.roster tbody.roster-summary .rname{background:#fff}table.roster tbody.roster-summary tr.muted-row td{font-weight:400;color:var(--sub);font-size:11.5px}table.roster tbody.roster-summary tr:last-child td{border-bottom:2px solid var(--brand-sky)}@media print{.roster-wrap{max-height:none;overflow:visible}table.roster thead th{position:static}}table.roster .r-full{color:var(--danger)}table.roster .r-few{color:var(--warn)}table.roster .r-future{color:var(--danger);font-weight:800;font-size:10.5px;white-space:nowrap}table.roster .r-end{font-size:10.5px}.enroll-end-tag,table.roster .r-end{color:#6b7280;font-weight:700;white-space:nowrap}.enroll-end-tag{margin-left:4px;font-size:11px}table.shinkyu-table td,table.shinkyu-table th{padding:6px 8px;border-bottom:1px solid #e5e7eb;vertical-align:top;text-align:left;font-size:13px}table.shinkyu-table th{background:#f3f6fa;font-size:12px;white-space:nowrap}.shinkyu-slots label{font-size:12px;margin:1px 0}ol.shinkyu-steps{list-style:none;padding:0;margin:0;display:grid;grid-gap:10px;gap:10px}ol.shinkyu-steps>li.card{margin:0}.shinkyu-step-head{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:4px;font-size:15px}ul.shinkyu-checks{list-style:none;padding:0;margin:0;display:grid;grid-gap:6px;gap:6px}.daily-nav{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.daily-datepick{position:relative;display:inline-flex}.daily-datepick input[type=date]{position:absolute;left:0;bottom:-2px;width:1px;height:1px;opacity:0;pointer-events:none;border:none;padding:0;margin:0}.daily-block{margin-bottom:14px}.daily-block h2{margin-bottom:10px}.daily-classes{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-gap:12px;gap:12px}.daily-class{border:1px solid var(--line);border-radius:12px;padding:10px 14px}.dc-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:6px}.dc-count{margin-left:auto;font-size:12px;font-weight:700;color:var(--brand-deep);white-space:nowrap}.dc-gattai{font-size:10px;font-weight:800;color:#2166a0;background:#dceaf7;padding:1px 6px;border-radius:6px;margin-left:6px;vertical-align:1.5px}.dc-breakdown{font-size:11.5px;color:var(--sub);margin:-2px 0 5px}.dc-teach{flex-basis:100%;display:flex;gap:10px;align-items:baseline;justify-content:flex-end;flex-wrap:wrap;font-size:11px;color:var(--sub)}.dc-teach-main{font-weight:600;color:var(--ink)}.dc-teach-edit{border:none;background:none;cursor:pointer;color:var(--brand);font-size:11px;padding:0 2px}.dc-teach-editing{justify-content:flex-start;flex-direction:column;align-items:stretch;gap:5px;background:var(--brand-mist);padding:8px 10px;border-radius:8px;margin-top:4px}.dc-teach-editing label{display:flex;gap:5px;align-items:center}.dc-teach-editing input{width:84px}.dc-names{list-style:none;margin:0;padding:0;font-size:13.5px;line-height:1.9}.dc-names li.absent{text-decoration:line-through;color:var(--sub)}.dc-name-link{color:inherit;text-decoration:none}.dc-name-link:hover{color:var(--brand-deep);text-decoration:underline}.d-tag{font-size:10.5px;font-weight:800;padding:1px 7px;border-radius:8px;margin-left:6px;vertical-align:1px}.d-tag.d-fk{background:#def0e9;color:#2a7c5d}.d-tag.d-tk{background:#d9ebfa;color:#2166a0}.d-tag.d-abs{background:#fbe1e0;color:#a31515;text-decoration:none;display:inline-block}.d-tag.d-start{background:#fbeed2;color:#9a6b00}.daily-upcoming{margin-top:8px;padding-top:6px;border-top:1px dashed var(--line)}.dc-upcoming-note{font-size:11.5px;color:#c0392b;line-height:1.7}.special-lessons{margin-top:18px}.sp-sec-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:0 0 10px;border-top:2px dashed #e0c98a;padding-top:14px}.sp-sec-head h2{margin:0}.sp-kinds{font-weight:700;color:#9a6b00;background:#fbeed2;padding:2px 10px;border-radius:8px;font-size:12.5px}.sp-time-group{margin-bottom:12px}.sp-time-head{font-weight:700;font-size:13px;color:var(--sub);margin:8px 0 6px}.sp-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-gap:12px;gap:12px}.sp-card{border:1px solid #f0d9a8;border-left:4px solid #e0a83e;border-radius:12px;padding:10px 14px;background:#fffaf0}.sp-card-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.sp-klass{font-size:14px}.sp-badge{font-size:10px;font-weight:800;color:#fff;background:#e0a83e;padding:1px 8px;border-radius:8px}.sp-meta{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;font-size:11.5px;color:var(--sub);margin:5px 0}.sp-meta .sp-grade{font-weight:700;color:var(--ink)}.sp-meta .sp-count{margin-left:auto;font-weight:700;color:#9a6b00;white-space:nowrap}.sp-teacher{font-size:11.5px;color:var(--ink);margin-bottom:4px}.sp-names{list-style:none;margin:0;padding:0;font-size:13.5px;line-height:1.9}.sp-empty{font-size:12px;color:var(--sub)}.sp-pending{font-size:11.5px;color:#9a6b00;background:#fbeed2;border-radius:8px;padding:5px 8px;line-height:1.6}.daily-class.sp-special .dc-head b{display:inline-flex;align-items:baseline;gap:6px;flex-wrap:wrap}.daily-class.sp-noopen{opacity:.5;background:repeating-linear-gradient(135deg,transparent,transparent 6px,rgba(120,120,120,.06) 0,rgba(120,120,120,.06) 12px)}.sp-noopen-tag{font-size:10px;font-weight:800;color:#6b6b6b;background:#e6e6e6;padding:1px 8px;border-radius:8px}.db-has-special{font-size:11px;font-weight:700;color:#9a6b00;background:#fbeed2;padding:1px 9px;border-radius:8px;margin-left:10px;vertical-align:2px}.d-unresolved{background:#fdf2d2;border:1px solid #ecd9a0;border-radius:10px;padding:10px 14px;margin-top:12px;font-size:13px;line-height:1.8}.d-unresolved-top{margin:0 0 14px;border-width:2px;border-color:#e0b94a}.d-unresolved-top>b{color:#9a6b00;font-size:14.5px}.d-unresolved-toggle{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);cursor:pointer;margin:0 0 6px}.d-unresolved-toggle input{width:14px;height:14px;accent-color:var(--brand)}.d-unresolved-hidden{display:none!important}.uf-item{border-top:1px dashed #e3d3a2;padding:4px 0}.uf-item:first-child{border-top:none}.uf-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.uf-line .mini-btn{background:#fff;color:var(--brand)!important;border:1px solid #d8c98f;box-shadow:none}.uf-form{background:#fff;border:1px solid #ecd9a0;border-radius:10px;padding:10px 14px;margin:6px 0 8px}.uf-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:2px 14px;gap:2px 14px}.uf-slot{display:flex;align-items:center;gap:7px;font-size:13px;cursor:pointer;line-height:1.7}.uf-slot input{width:15px;height:15px;accent-color:var(--brand)}.daily-rooms{margin-bottom:14px}.rg-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:8px}.rg-head h2{margin:0}.rg{display:flex;flex-direction:column;gap:4px;overflow-x:auto}.rg-row{display:grid;grid-template-columns:86px 1fr;grid-gap:6px;gap:6px;align-items:stretch;min-width:560px}.rg-roomname{font-size:12px;font-weight:700;color:var(--brand-deep);display:flex;align-items:center}.rg-untei .rg-roomname{color:#9a6b00}.rg-lanes{display:flex;flex-direction:column;gap:3px}.rg-lane{display:grid;grid-gap:0;gap:0;min-height:30px;background:var(--brand-mist);border-radius:8px}.rg-row.rg-room-azabu .rg-lane{background:#e6f4ea}.rg-row.rg-room-azabu .rg-roomname{color:#2a7c5d}.rg-row.rg-room-online .rg-lane{background:#efe9f6}.rg-row.rg-room-online .rg-roomname{color:#6b5b95}.rg-times{background:none;min-height:16px}.rg-time{font-size:10.5px;color:var(--sub);border-left:1px solid var(--line);padding-left:3px;overflow:visible;white-space:nowrap}.rg-item{margin:1px;padding:3px 7px;border-radius:7px;border:1px solid var(--brand-sky);background:#fff;color:var(--ink);box-shadow:none;text-align:left;font-size:11px;min-width:0;cursor:pointer;overflow-wrap:anywhere;word-break:break-word;display:flex;flex-direction:column;justify-content:center;line-height:1.2}.rg-item:hover{border-color:var(--brand);transform:none}.rg-item .rg-item-label{font-weight:700}.rg-item .rg-item-sub{font-size:9.5px;color:var(--sub);font-weight:400}.rg-item.rg-g-ycho{background:#eaf6ee;border-color:#b9dcc4}.rg-item.rg-g-ychu{background:#fdf3e0;border-color:#f0d9a8}.rg-item.rg-g-ysho{background:#fbeaf1;border-color:#efc3d6}.rg-item.rg-g-nyu{background:#e9f2fb;border-color:#bcd8f0}.daily-class.dc-g-ycho{background:#eaf6ee;border-color:#b9dcc4}.daily-class.dc-g-ychu{background:#fdf3e0;border-color:#f0d9a8}.daily-class.dc-g-ysho{background:#fbeaf1;border-color:#efc3d6}.daily-class.dc-g-nyu{background:#e9f2fb;border-color:#bcd8f0}.daily-class.sp-special{border:2px dashed #d9913a}.rg-item.rg-consult{border-color:#b9d3ee;background:#eef5fc}.rg-item.rg-care{border-color:#d9c6e8;background:#f6effc}.rg-item.rg-trial{border-color:#bfe0d2;background:#ecf7f1}.rg-item.rg-other{border-color:var(--line);background:#f7f7f5}.rg-item.rg-special{border:1.5px dashed #d9913a}.rg-item.rg-readonly{cursor:default}.rg-sp-tag{display:inline-block;font-size:8.5px;font-weight:800;color:#fff;background:#e0a83e;border-radius:5px;padding:0 4px;margin-left:4px;vertical-align:1px}.rg-item.rg-noopen{opacity:.45;filter:grayscale(.4)}.rg-noopen-tag{display:inline-block;font-size:8.5px;font-weight:800;color:#6b6b6b;background:#e6e6e6;border-radius:5px;padding:0 4px;margin-left:4px;vertical-align:1px}.rg-item[draggable=true]{cursor:-webkit-grab;cursor:grab}.rg-item.rg-grabbed{opacity:.4}.rg.rg-dragging .rg-lanes{outline:1px dashed var(--brand-sky);outline-offset:-1px;border-radius:6px}.rg-row.rg-drop-over .rg-lanes{outline:2px solid var(--brand);background:rgba(53,133,197,.08);border-radius:6px}.rg-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--ink);color:#fff;padding:9px 18px;border-radius:999px;font-size:13px;font-weight:600;box-shadow:0 4px 16px rgba(0,0,0,.2);z-index:1000;max-width:88vw;text-align:center}.rg-modal{position:fixed;inset:0;background:rgba(30,40,60,.35);z-index:90;display:flex;align-items:center;justify-content:center;padding:16px}.rg-modal-box{background:#fff;border-radius:14px;padding:18px 20px;max-width:560px;width:100%;box-shadow:var(--shadow)}.rg-roompick{display:flex;flex-wrap:wrap;gap:6px}.mini-btn.danger-link,.mini-btn.danger-link:hover{background:#fff;color:#b03a33!important;border:1px solid #e3aaa6;box-shadow:none;transform:none}.mini-btn.gs-off{background:#fff;color:var(--brand-deep)!important;border:1px solid #cbd5e1;box-shadow:none}.mini-btn.gs-on{background:#1e3a5f;border:1px solid #1e3a5f}.fk-kid{background:var(--brand-mist);border-radius:10px;padding:8px 14px;display:inline-block}.fk-hits{display:flex;flex-direction:column;gap:4px;margin-top:6px}.fk-hits button{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:none;text-align:left;border-radius:10px;padding:7px 12px}.fk-hits button:hover{border-color:var(--brand-sky);transform:none}.print-only{display:none}@media print{.back-btn,.bg-deco,.no-print,.topbar{display:none!important}.print-only{display:block}.card{box-shadow:none;border:1px solid #ccc;page-break-inside:avoid;break-inside:avoid}main{padding:0;max-width:none}body,html{background:#fff!important}}.daily{page:daily}@page daily{size:A3 landscape;margin:8mm 10mm}@media print{.daily,.daily *{-webkit-print-color-adjust:exact;print-color-adjust:exact}.daily-print-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;border-bottom:.8mm solid #333;padding-bottom:1.5mm;margin-bottom:3mm}.daily-print-head h1{font-size:15pt;margin:0;color:#000}.daily-print-head .d-legend{margin-left:auto;display:flex;align-items:center;gap:6px;font-size:8pt;color:#333}.daily .card{border:none;padding:0;background:none}.daily .daily-rooms{margin:0 0 3mm}.daily .rg{overflow:visible;gap:1mm}.daily .rg-head{margin-bottom:1mm}.daily .rg-head h2{font-size:11pt;color:#000;margin:0}.daily .rg-row{min-width:0;grid-template-columns:20mm 1fr;gap:1.5mm}.daily .rg-roomname{font-size:9.5pt;color:#000}.daily .rg-lanes{gap:1mm}.daily .rg-lane{min-height:7.5mm;background:#f2f2f0;border-radius:1mm}.daily .rg-row.rg-room-azabu .rg-lane{background:#e6f4ea}.daily .rg-row.rg-room-online .rg-lane{background:#efe9f6}.daily .rg-times{min-height:3.5mm;background:none}.daily .rg-time{font-size:7.5pt;color:#333;border-left:.25mm solid #999}.daily .rg-item{border:.3mm solid #555;border-radius:1mm;padding:.5mm 1.5mm;margin:.3mm}.daily .rg-item .rg-item-label{font-size:8.5pt}.daily .rg-item .rg-item-sub{font-size:7pt;color:#333}.daily .daily-blocks{column-count:3;column-gap:5mm}.daily .daily-block{margin:0 0 2.5mm;page-break-inside:avoid;break-inside:avoid}.daily .daily-block h2{font-size:10.5pt;color:#000;margin:0 0 1.5mm;border-left:2mm solid #333;padding-left:2mm}.daily .daily-classes{grid-template-columns:1fr;gap:1.5mm}.daily .daily-class{border:.35mm solid #555;border-radius:1.5mm;padding:1.5mm 2.5mm;page-break-inside:avoid;break-inside:avoid}.daily .dc-head{margin-bottom:.5mm;gap:4px}.daily .dc-head b{font-size:9.5pt}.daily .dc-head .muted{font-size:7.5pt;color:#444}.daily .dc-count{font-size:8.5pt;color:#000}.daily .dc-gattai{font-size:7pt;color:#000;background:none;border:.3mm solid #555}.daily .dc-breakdown{font-size:7.5pt;color:#333;margin:0 0 1mm}.daily .dc-teach{font-size:7.5pt;color:#333;gap:4px}.daily .dc-names{font-size:9pt;line-height:1.45;column-count:2;column-gap:3mm}.daily .dc-names li{page-break-inside:avoid;break-inside:avoid}.daily .d-tag{font-size:6.5pt;border:.5px solid;padding:0 4px;margin-left:4px}.daily .daily-upcoming{margin-top:1mm;padding-top:.8mm;border-top:.3mm dashed #999}.daily .dc-upcoming-note{font-size:7.5pt;color:#c0392b;line-height:1.4}.daily .daily-side{border-top:.8mm solid #333;border-radius:0;padding-top:1.5mm;margin-top:1mm;page-break-inside:avoid;break-inside:avoid}.daily .daily-side h2{font-size:10.5pt;color:#000;margin:0 0 1mm}.daily .daily-side .kv{font-size:9pt;grid-template-columns:38mm 1fr;gap:1px 8px}.daily .daily-side .kv dt{font-size:9pt;color:#333;padding-top:0}.daily .d-unresolved{font-size:8.5pt;padding:1.5mm 2.5mm;margin-top:1.5mm;line-height:1.5}}.cls-row .mini-btn,.cls-row .mini-btn:hover{background:#fff;color:var(--sub)!important;border:1px solid var(--line);box-shadow:none;white-space:nowrap}.cls-row .mini-btn:hover{color:var(--brand)!important;border-color:var(--brand-sky);transform:none}.cls-row .mini-btn.danger{color:#b03a33!important;border-color:#e3aaa6}.g-updated{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:14px 0 0;font-size:13px;color:var(--sub)}.g-updated-badge{display:inline-block;padding:2px 10px;border-radius:999px;background:var(--brand);color:#fff;font-size:11px;font-weight:700}.g-updated-link{font-size:12.5px;margin-left:4px}.g-toc{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 20px;margin-bottom:26px;box-shadow:var(--shadow)}.g-toc-h{font-size:15px;color:var(--brand-deep);margin:0 0 10px}.g-toc-list{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:6px 18px;gap:6px 18px;counter-reset:toc}.g-toc-list li{counter-increment:toc}.g-toc-list a{display:flex;align-items:baseline;gap:8px;padding:6px 8px;border-radius:8px;font-size:13.5px;color:var(--ink);text-decoration:none;line-height:1.5}.g-toc-list a:before{content:counter(toc);flex:none;min-width:20px;height:20px;padding:0 3px;display:inline-flex;align-items:center;justify-content:center;color:var(--brand-deep);border-radius:6px;font-size:11px;font-weight:700}.g-toc-list a:before,.g-toc-list a:hover{background:var(--brand-mist)}html{scroll-behavior:smooth}.g-log-acc{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:0 18px}.g-log-summary{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:16px 4px;cursor:pointer;list-style:none;font-size:18px;color:var(--brand-deep)}.g-log-summary::-webkit-details-marker{display:none}.g-log-summary-title{font-weight:700}.g-log-summary-hint{font-size:12.5px;margin-left:auto}.g-log-acc[open] .g-log-summary{border-bottom:2px solid var(--brand-mist)}.g-log-acc[open] .g-log-summary-hint:after{content:""}.g-log-acc[open] .g-log-summary-hint{visibility:hidden}.g-log-acc>.g-log{padding-bottom:18px}.g-log{display:flex;flex-direction:column;gap:12px}.g-log-rel{background:#fff;border-radius:14px;padding:14px 16px;box-shadow:var(--shadow);border:1px solid var(--line);border-left:4px solid var(--brand-sky)}.g-log-date{font-weight:700;color:var(--brand-deep);font-size:14px;margin-bottom:6px}.g-log-items{margin:0;padding-left:20px}.g-log-items li{line-height:1.8;font-size:13.5px}.link-btn{background:none;border:none;box-shadow:none;padding:0;color:var(--brand);font-weight:600;font-size:13px;cursor:pointer}.link-btn:after{content:none}.link-btn:hover{transform:none;box-shadow:none;text-decoration:underline}.event-edit-row td{background:var(--brand-mist);border-radius:12px}.event-edit{padding:10px 12px}.mode-pick{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;margin-right:16px;cursor:pointer}.mode-pick input{width:auto}.modal-overlay{position:fixed;inset:0;z-index:100;background:rgba(39,68,92,.34);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .18s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-box{background:#fff;border-radius:20px;padding:24px 26px;max-width:460px;width:100%;max-height:86vh;overflow-y:auto;box-shadow:0 24px 70px rgba(53,133,197,.3);animation:popIn .25s cubic-bezier(.34,1.56,.64,1)}@keyframes popIn{0%{opacity:0;transform:scale(.92) translateY(10px)}to{opacity:1;transform:none}}.modal-check{width:48px;height:48px;margin:0 auto 10px;border-radius:50%;background:linear-gradient(135deg,var(--good),#6fc4a3);color:#fff;display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:800;box-shadow:0 4px 14px rgba(75,163,133,.4)}.modal-title{text-align:center;font-size:17px;margin:0 0 14px;color:var(--brand-deep)}.modal-rows{margin:0}.modal-row{display:grid;grid-template-columns:96px 1fr;grid-gap:6px 12px;gap:6px 12px;padding:5px 0;border-bottom:1px solid var(--line)}.modal-row dt{color:var(--sub);font-size:12.5px}.modal-row dd{margin:0;font-weight:600;word-break:break-word;white-space:pre-wrap}.modal-note{font-size:12.5px;color:var(--brand-deep);background:var(--brand-mist);padding:8px 12px;border-radius:10px;margin:12px 0 0}.modal-ok{display:block;width:100%;margin-top:16px;padding:11px;font-size:15px;position:-webkit-sticky;position:sticky;bottom:0;box-shadow:0 -10px 14px -8px rgba(53,133,197,.25),0 3px 12px rgba(53,133,197,.3)}.kind-select{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap}.kind-select .kind-other{width:130px}.line-rec{display:flex;flex-direction:column;gap:12px;transition:opacity .2s}.rec-check{display:flex;align-items:center;gap:8px;font-weight:700;font-size:14px}.rec-check input{width:auto}.rec-grid{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}.fld{display:flex;flex-direction:column;gap:4px;min-width:150px}.fld-wide{flex:1 1;min-width:240px}.fld-label{font-size:11.5px;font-weight:600;color:var(--sub)}.fld input,.fld select,.fld textarea{width:100%}.fld.fld-wide~.fld{min-width:140px;flex:0 0 auto}.fam-picker{display:flex;flex-direction:column;gap:6px}.fam-search{position:relative}.fam-results{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:30;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px rgba(53,133,197,.18);max-height:260px;overflow-y:auto;padding:4px}.fam-hit{display:block;width:100%;text-align:left;border:none;background:transparent;color:var(--ink);padding:7px 10px;border-radius:9px;cursor:pointer;box-shadow:none;font-weight:500}.fam-hit:after{content:none}.fam-hit:hover{background:var(--brand-mist);transform:none;box-shadow:none}.fam-new{border-color:var(--brand)!important}.ai-reflect{border-top:1px dashed var(--line);padding-top:10px;margin-top:2px;gap:8px}.ai-reflect,.reflect-row{display:flex;flex-direction:column}.reflect-row{background:var(--brand-mist,#eef6fc);border:1px solid var(--line);border-radius:10px;padding:8px 10px;gap:5px;transition:opacity .2s}.reflect-head{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600;flex-wrap:wrap}.reflect-head input{width:auto}.reflect-field{color:var(--brand-deep)}.reflect-cur{font-size:12px;white-space:pre-wrap}.reflect-row>input,.reflect-row>textarea{width:100%}.reflect-head input[type=checkbox]{width:auto;flex:0 0 auto}.reflect-compare{display:flex;align-items:stretch;gap:8px}.reflect-compare .reflect-col{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:3px}.reflect-compare .rc-cap{font-size:11px;color:var(--muted,#7a7a75);font-weight:600}.reflect-compare .rc-cur{font-size:12.5px;white-space:pre-wrap;word-break:break-word;background:#f6f7f5;border:1px solid var(--line);border-radius:8px;padding:7px 9px;min-height:34px;color:#555}.reflect-compare .reflect-arrow{align-self:center;color:var(--brand-deep);font-weight:700;flex:0 0 auto}.rc-modes{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;align-self:flex-start}.rc-modes .rc-mode{font-size:11.5px;padding:3px 10px;border:none;background:#fff;color:#6b6b66;cursor:pointer;border-right:1px solid var(--line);box-shadow:none;font-weight:600}.rc-modes .rc-mode:last-child{border-right:none}.rc-modes .rc-mode:hover{background:#f3f3f1;transform:none;box-shadow:none}.rc-modes .rc-mode.on{background:var(--brand-deep,#2f6f9f);color:#fff}.reflect-compare .reflect-col input,.reflect-compare .reflect-col textarea{width:100%}@media (max-width:640px){.reflect-compare{flex-direction:column;gap:4px}.reflect-compare .reflect-arrow{align-self:flex-start;transform:rotate(90deg)}}.back-btn{background:rgba(255,255,255,.9);border:1.5px solid var(--line);color:var(--brand);box-shadow:none;font-size:13px;padding:6px 16px;margin-bottom:12px}.back-btn:hover{border-color:var(--brand-sky);background:var(--brand-mist);box-shadow:0 3px 10px rgba(53,133,197,.18);transform:translateX(-2px)}.back-btn:after{content:none}.invite-chips{display:flex;flex-wrap:wrap;gap:8px}.invite-chips .chip{position:relative;cursor:pointer}.invite-chips .chip input{position:absolute;opacity:0;pointer-events:none}.invite-chips .chip span{display:inline-block;padding:6px 14px;border-radius:18px;border:1.5px solid var(--line);background:#fff;color:var(--sub);font-size:13px;font-weight:600;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:all .2s cubic-bezier(.34,1.56,.64,1)}.invite-chips .chip:hover span{border-color:var(--brand-sky);color:var(--brand);transform:translateY(-1px)}.invite-chips .chip input:checked+span{background:linear-gradient(120deg,var(--brand),#4f9bd6);border-color:transparent;color:#fff;box-shadow:0 3px 10px rgba(53,133,197,.32);transform:scale(1.04)}.invite-chips .chip input:checked+span:before{content:"✓ "}@media (max-width:640px){.head-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;width:100%}.head-actions .edit-link{text-align:center;padding:10px 8px;font-size:13px;border-radius:12px;display:flex;align-items:center;justify-content:center;min-height:44px;line-height:1.3}.topbar{flex-wrap:wrap;gap:6px 8px;padding:8px 14px}.topbar .brand{order:0;margin-right:0;font-size:15px;gap:8px;white-space:nowrap}.topbar .brand img{height:30px;width:30px}.topbar .nav-guide{order:1;margin-left:auto;font-size:12px;padding:4px 10px}.topbar nav{order:2;width:100%;flex-wrap:wrap;gap:4px 6px;justify-content:center}.topbar nav a{flex:0 1 auto;min-width:0;text-align:center;padding:6px 10px;font-size:12px;white-space:nowrap}.topbar{flex-wrap:nowrap;padding:8px 10px;gap:6px 4px}.topbar .brand{min-width:0;flex-shrink:1;font-size:13px;gap:6px;letter-spacing:0}.topbar .brand img{height:26px;width:26px;flex-shrink:0}.topbar .brand-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar .nav-toggle{order:3;display:inline-flex;align-items:center;gap:6px;flex-shrink:0;border:1px solid var(--line);background:#fff;color:var(--brand-deep);box-shadow:none;font-size:12px;font-weight:700;padding:7px 10px;border-radius:18px;white-space:nowrap}.topbar .nav-toggle:after{content:none}.topbar .nav-toggle:active,.topbar .nav-toggle:hover{transform:none;box-shadow:none;background:var(--brand-mist)}.nav-toggle-icon{display:inline-flex;flex-direction:column;gap:3px}.nav-toggle-icon i{display:block;width:14px;height:2px;border-radius:2px;background:var(--brand-deep)}.topbar:not(.nav-open) .nav-guide{display:none}.topbar:not(.nav-open) nav{order:2;width:auto;margin-left:auto;flex-wrap:nowrap;flex-shrink:0}.topbar:not(.nav-open) nav>:not(:last-child){display:none}.topbar:not(.nav-open) .nav-dd-btn{padding:6px 4px;font-size:13px}.topbar:not(.nav-open) .nav-dd-caret{display:none}.topbar:not(.nav-open) .nav-dd-menu{left:auto;right:0}.topbar.nav-open{flex-wrap:wrap;max-height:100dvh;overflow-y:auto}.topbar.nav-open .brand{flex:1 1}.topbar.nav-open .nav-toggle{order:1}.topbar.nav-open nav{order:2;width:100%;flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:2px;justify-content:flex-start;padding-top:6px;border-top:1px solid var(--line)}.topbar.nav-open .nav-dd-btn,.topbar.nav-open nav>a{text-align:left;font-size:15px;padding:11px 12px;border-radius:10px;min-height:44px;display:flex;align-items:center;width:100%}.topbar.nav-open nav>a:after{display:none}.topbar.nav-open .nav-dd-caret{margin-left:auto;font-size:11px}.topbar.nav-open .nav-dd-menu{position:static;box-shadow:none;border:0;border-left:2px solid var(--line);border-radius:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;margin:0 0 6px 14px;padding:0 0 0 6px;animation:none}.topbar.nav-open nav .nav-dd-menu a{font-size:14px;padding:10px;min-height:40px;text-align:left}.topbar.nav-open .nav-guide{order:3;width:100%;margin-left:0;font-size:14px;padding:11px 12px;border-top:1px solid var(--line);border-radius:0}.hero-head{justify-content:space-between;gap:6px 8px;width:100%}.hero-titles{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;min-width:0}.hero-greet{font-size:16px}.hero-date{margin-top:0;font-size:12.5px}.hero-date-suffix{display:none}.btn-today{margin-left:auto;padding:6px 10px}.hero-head{flex-wrap:nowrap}.hero-titles{flex:1 1 auto}.btn-today{flex:none}.bn-long,.bt-long,.hd-long{display:none}.hd-short{display:inline}.stat-bubbles{width:100%;gap:4px}.stat-bubbles .bubble{flex:1 1 auto;gap:4px;padding:4px 5px}.stat-bubbles .bubble-n{font-size:13.5px}.stat-bubbles .bubble-label{font-size:10.5px}@media (max-width:380px){.stat-bubbles .bubble{gap:3px;padding:4px 3px}.stat-bubbles .bubble-label{font-size:10px}}@media (max-width:350px){.stat-bubbles .bubble{flex-basis:40%}}main{padding:18px 14px}.list-card{padding:0;border:none;background:transparent;box-shadow:none}.list-card:hover{transform:none;box-shadow:none}.list-card:before{content:none}.list-card .list-note{margin:0 2px 10px}.list-card table,.list-card tbody,.list-card td,.list-card tr{display:block}.list-card thead{display:none}.list-card table{width:100%}.list-card tbody tr{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-bottom:10px;box-shadow:var(--shadow)}.list-card tbody tr,.list-card tbody tr:hover{background:#fff;transform:none}.list-card tbody tr:hover td:first-child{box-shadow:none}.list-card td{border:none;padding:0;min-height:28px;flex:1 1 100%;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px}.list-card td:before{content:attr(data-label);color:var(--sub);font-size:11px;font-weight:600;flex:0 0 auto}.list-card td:empty{display:none}.list-card td.cell-title{order:-2;flex-basis:100%;justify-content:flex-start;padding-bottom:4px;border-bottom:1px solid var(--line);margin-bottom:4px}.list-card td.cell-title:before{content:none}.list-card td.cell-title a{font-size:15.5px;font-weight:700}.list-card td.cell-title{flex-wrap:wrap;gap:4px 8px}.list-card td.cell-title .fam-link{min-width:0}.list-card td.cell-title .fam-area,.list-card td.cell-title .fam-parent{flex:1 1 100%;margin-top:0}.list-card td.cell-half{flex:1 1 40%;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:2px;min-height:0}.list-card td.cell-half:before{font-size:10.5px}.list-card td.cell-strong{flex-basis:100%;justify-content:flex-start;gap:8px;font-weight:600}.list-card td.cell-strong:before{font-weight:600}.list-card td.cell-long{flex-basis:100%;flex-direction:column;align-items:flex-start;gap:2px;color:var(--sub);white-space:normal}.list-card td.cell-action{flex-basis:100%;justify-content:space-between}.list-card td.cell-action .overdue{padding:6px 14px;border-radius:999px;background:#fdeaea;text-decoration:none;font-size:13px}.list-card td .edit-select,.list-card td .kind-select select{min-height:30px}.list-card td.cell-half .edit-select.conf{width:70px}.pager{justify-content:center}}:root{--cst-nav-h:61px}.cst-card{padding:14px 16px 16px}@media (min-width:1360px){.cst-card{margin-left:-50px;margin-right:-50px}}@media (min-width:1400px){.cst-card{margin-left:-110px;margin-right:-110px}}@media (min-width:1560px){.cst-card{margin-left:-150px;margin-right:-150px}}.cst-tabs{margin:0 0 8px;flex-wrap:wrap;align-items:center}.cst-tab,.cst-tabs{display:flex;gap:8px}.cst-tab{flex-direction:row;align-items:baseline;padding:4px 12px;border-radius:10px;border:1px solid #d5e3ee;background:#fff;color:var(--sub);cursor:pointer;box-shadow:none}.cst-tab:hover{transform:none;box-shadow:none;border-color:var(--brand-sky)}.cst-tab.on{background:#eef5fb;border-color:var(--brand);color:var(--brand)}.cst-tab-n{font-weight:800;font-size:14px}.cst-tab-l{font-size:11px}.cst-today{font-size:12px;color:var(--sub);margin-left:6px}.cst-dirty{font-size:12px;font-weight:700;color:#8a5a00;background:#fff3d6;border-radius:999px;padding:2px 10px}.cst-summary{font-size:13px;color:var(--sub);margin:0 0 8px;display:flex;gap:6px 10px;flex-wrap:wrap;align-items:center}.cst-summary b{color:var(--ink);font-size:15px}.cst-sum-chips{display:inline-flex;gap:6px;flex-wrap:wrap}.cst-legend{font-size:11.5px;color:var(--sub);line-height:1.8;flex-basis:auto}.cst-legend[open]{flex-basis:100%}.cst-legend summary{cursor:pointer;display:inline;color:var(--brand);margin-right:6px}.cst-legend .cst-st{margin-right:4px}.cst-sum-extra{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap}.cst-st.moved{background:#fff;color:#7a8894;border:1px dotted #9aa4ad}.cst-backup{display:flex;gap:8px;align-items:center;flex-wrap:wrap;background:#eef5fb;border:1px solid #cfe1f0;border-radius:8px;padding:6px 12px;margin:0 0 8px;font-size:12.5px}.cst-legend .cst-st{font-size:11px}.cst-st{display:inline-block;font-size:11.5px;font-weight:700;padding:1px 8px;border-radius:999px;white-space:nowrap;line-height:1.6;border:1px solid transparent}.cst-st.live{background:#e3f4ec;color:#1f6f4c;border-color:#b7dfc9}.cst-st.next{background:#efe9fb;color:#5b3fa5;border-color:#d6c8f2}.cst-st.keep{background:#eaf2fb;color:#2f6db0;border-color:#c7ddf2}.cst-st.new{background:#fff;color:#2f6db0;border:1px dashed #9ec5e6}.cst-st.todo{background:#fff;color:#8a5a00;border:1px dashed #e6c77a}.cst-st.mini{font-size:10px;padding:0 5px;margin-right:3px;vertical-align:middle}.cst-st.pick{cursor:pointer}.cst-st.pick:hover{filter:brightness(.96)}.cst-st.pick.sel{outline:2px solid var(--brand);outline-offset:1px}.cst-filter{font-size:12px;color:var(--brand);font-weight:700}.cst-filter .cst-btn{margin-left:4px}.cst-hint{display:block;font-size:10.5px;color:#8a99a5;line-height:1.3;margin-top:1px}.cst-hint a{color:var(--brand)}.cst-empty{text-align:center;color:var(--sub);padding:18px!important}.cst-st.plain{background:#f1f4f7;color:#5b6b7a;font-weight:600}.cst-st.amber{background:#fff3d6;color:#8a5a00;border-color:#f0dfae}.cst-st.future,.cst-st.past{background:#eef1f4;color:#7a8894;border-color:#dde3e8}.cst-st.past{text-decoration:line-through}.cst-st.off{background:#eee;color:#777;border-color:#ddd}.cst-st.del{background:#fde7e7;color:#a33a3a;border-color:#f0c4c4}.cst-st.sub{display:inline-block;margin-left:4px;font-weight:600;font-size:11px}.cst tbody td.c{white-space:nowrap}.cst tbody td .cst-st{max-width:100%;white-space:normal;line-height:1.35;padding:2px 7px}.cst-confirm{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0;padding:4px 10px;border-radius:10px;border:1px dashed #cfe1f0;background:#fff;font-size:13px;cursor:pointer}.cst-confirm.on{border-style:solid;border-color:#9ec5e6;background:#eef5fb}.cst-confirm input{width:17px;height:17px;accent-color:var(--brand)}.cst-confirm-meta{font-size:12px;color:var(--sub);margin-left:4px;font-weight:500}.cst-note{background:#eef5fb;border:1px solid #cfe1f0;border-radius:10px;padding:6px 12px;margin:0 0 8px;font-size:12.5px;color:var(--ink);line-height:1.7}.cst-note summary{cursor:pointer;list-style:none;color:var(--brand)}.cst-note summary::-webkit-details-marker{display:none}.cst-note summary:before{content:"▸ "}.cst-note[open] summary:before{content:"▾ "}.cst-note ol{margin:4px 0 2px 18px;padding:0}.cst-note li{margin:2px 0}.cst-flashes{display:flex;flex-direction:column;gap:4px;margin:0 0 8px}.cst-flashes.fold{flex-direction:row;align-items:center;gap:8px;font-size:12px}.cst-flash{display:flex;gap:10px;align-items:center;flex-wrap:wrap;background:#fff9e8;border:1px solid #f0dfae;border-left:4px solid #e6c77a;border-radius:8px;padding:5px 12px;margin:0;font-size:12.5px}.cst-wrap{overflow:visible}.cst-wrap.scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.cst{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:13.5px}.cst td,.cst th{padding:3px 5px;vertical-align:middle;border-bottom:1px solid #e6eef5}.cst thead th{position:-webkit-sticky;position:sticky;background:#fff;z-index:6;font-weight:700;color:var(--sub);font-size:12px;text-align:left}.cst thead .cst-hg th{top:var(--cst-nav-h);font-size:12.5px;letter-spacing:.04em;color:#fff;padding:5px 10px;border-bottom:none}.cst thead .cst-h th{top:calc(var(--cst-nav-h) + 30px);border-bottom:2px solid #d5e3ee;padding-top:6px;padding-bottom:6px}.cst .cst-hg .g1,.cst .cst-hg .g2,.cst .cst-hg .g3{background:#6b7c8c}.cst .cst-hg .g1{border-radius:6px 0 0 0}.cst .cst-hg .g4{background:#3d5a73}.cst .cst-hg .g5{background:#9aa4ad;border-radius:0 6px 0 0}.cst .cst-hg .g2,.cst .cst-hg .g3,.cst .cst-hg .g4,.cst .cst-hg .g5{border-left:2px solid #fff}.cst .cst-h .g2,.cst .cst-h .g3,.cst .cst-h .g4,.cst .cst-h .g5,.cst tbody td.g2,.cst tbody td.g3,.cst tbody td.g4,.cst tbody td.g5{border-left:2px solid #d5e3ee}.cst .c{text-align:center}.cst-grp td{background:#eef5fb;color:var(--brand);font-weight:800;font-size:13px;padding:5px 10px 4px;border-bottom:1px solid #d5e3ee;border-top:8px solid #fff}.cst-grp-n{margin-left:10px;font-weight:600;font-size:12px;color:var(--sub)}.cst tbody tr.cst-r:nth-of-type(2n) td{background:#fbfdff}.cst tbody tr.cst-r:hover td{background:#f3f8fc}.cst tbody tr.cst-r.off td{background:repeating-linear-gradient(135deg,#f7f7f7 0 6px,#fff 6px 12px)}.cst tbody tr.cst-r.off .cst-open,.cst tbody tr.cst-r.off td>input,.cst tbody tr.cst-r.off td>select{opacity:.5}.cst tbody tr.cst-r.notlive .cst-open,.cst tbody tr.cst-r.notlive td>input,.cst tbody tr.cst-r.notlive td>select{color:#8a99a5}.cst tbody tr.cst-r.stopped .cst-open,.cst tbody tr.cst-r.stopped td>input,.cst tbody tr.cst-r.stopped td>select{opacity:.45}.cst tbody tr.cst-r.deleted td{background:#fff5f5;color:#8a99a5}.cst tbody tr.cst-r.exopen td{border-bottom-color:transparent}.cst tbody tr.cst-moved td{background:#eef1f4;color:#5b6b7a;font-size:12.5px;padding:6px 12px}.cst tbody tr.cst-moved .cst-btn{width:auto;padding:0 8px;margin-left:8px}.cst .cst-open input,.cst .cst-open select,.cst tbody td>input,.cst tbody td>select{width:100%;min-width:0;box-sizing:border-box;border:1px solid transparent;background:transparent;border-radius:6px;padding:2px 6px;font-size:13.5px;color:var(--ink);box-shadow:none;height:26px}.cst .cst-open select,.cst tbody td>select{padding-right:12px;padding-left:4px}.cst tbody tr.cst-r:hover .cst-open input,.cst tbody tr.cst-r:hover .cst-open select,.cst tbody tr.cst-r:hover td>input,.cst tbody tr.cst-r:hover td>select{border-color:#d5e3ee;background:#fff}.cst .cst-open input:focus,.cst .cst-open select:focus,.cst tbody td>input:focus,.cst tbody td>select:focus{outline:none;border-color:var(--brand);background:#fff;box-shadow:0 0 0 3px rgba(53,133,197,.15)}.cst input[type=time]{padding-left:6px;padding-right:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.02em;min-width:0}.cst input[type=time]::-webkit-calendar-picker-indicator{display:none;-webkit-appearance:none}.cst input[type=time]::-webkit-datetime-edit{padding:0}.cst .cst-num{text-align:center;padding-left:2px;padding-right:2px}.cst-open{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.cst .cst-open input{width:44px;flex:0 0 44px;text-align:center}.cst .cst-open select{flex:1 1 100%;min-width:0}.cst-chk{width:17px;height:17px;accent-color:var(--brand);cursor:pointer;vertical-align:middle}.cst-ops{text-align:left}.cst-ops .cst-btn{margin:1px 3px 1px 0}.cst-ops-sep{display:inline-block;width:1px;height:16px;background:var(--line);margin:0 6px 0 4px;vertical-align:middle}.cst tbody td.s1,.cst thead th.s1{position:-webkit-sticky;position:sticky;left:0;z-index:1;background:#fff}.cst tbody td.s2,.cst thead th.s2{position:-webkit-sticky;position:sticky;left:112px;z-index:1;background:#fff;box-shadow:6px 0 6px -6px rgba(40,80,120,.18)}.cst thead th.s1,.cst thead th.s2{z-index:7}.cst tbody tr.cst-r:nth-of-type(2n) td.s1,.cst tbody tr.cst-r:nth-of-type(2n) td.s2{background:#fbfdff}.cst tbody tr.cst-r:hover td.s1,.cst tbody tr.cst-r:hover td.s2{background:#f3f8fc}.cst tbody tr.cst-r.haserr td,.cst tbody tr.cst-r.haserr td.cst-ops,.cst tbody tr.cst-r.haserr td.s1,.cst tbody tr.cst-r.haserr td.s2{background:#fdecec}.cst tbody tr.cst-r.off td.cst-ops,.cst tbody tr.cst-r.off td.s1,.cst tbody tr.cst-r.off td.s2{background:repeating-linear-gradient(135deg,#f7f7f7 0 6px,#fff 6px 12px)}.cst tbody tr.cst-moved.reopened td{background:#f0faf4}.cst tbody tr.cst-r.haserr td.s1{box-shadow:inset 4px 0 0 #b03a33}.cst tbody tr.cst-r.todo td.s1{box-shadow:inset 4px 0 0 #e6c77a}.cst tbody td.s2,.cst tbody td.s3{overflow:visible;position:relative}.cst tbody td.s2{position:-webkit-sticky;position:sticky}.cst tbody td>input.cst-name,.cst tbody td>input.cst-room{text-overflow:ellipsis}.cst tbody td>input.cst-name:focus,.cst tbody td>input.cst-room:focus{position:absolute;left:4px;top:2px;width:auto;field-sizing:content;min-width:calc(100% - 8px);max-width:420px;z-index:8;background:#fff}.cst tbody td.cst-ops,.cst thead th.g5{position:-webkit-sticky;position:sticky;right:0;background:#fff;z-index:1;box-shadow:-6px 0 6px -6px rgba(40,80,120,.18)}.cst thead th.g5{z-index:7}.cst tbody tr.cst-r:nth-of-type(2n) td.cst-ops{background:#fbfdff}.cst tbody tr.cst-r:hover td.cst-ops{background:#f3f8fc}.cst-btn{display:inline-flex;align-items:center;justify-content:center;height:24px;padding:0 7px;margin-right:3px;border:1px solid #d5e3ee;border-radius:6px;color:var(--sub);font-size:12px;line-height:1;cursor:pointer;white-space:nowrap}.cst-btn,.cst-btn:hover{background:#fff;box-shadow:none}.cst-btn:hover{color:var(--brand);border-color:var(--brand-sky);transform:none}.cst-btn.on{color:#8a5a00;border-color:#e6c77a;background:#fff7e0}.cst-btn.open{color:#fff;background:#8a5a00;border-color:#8a5a00}.cst-btn.next{color:#5b3fa5;border-color:#d6c8f2}.cst-btn.next:hover{background:#efe9fb;color:#5b3fa5}.cst-btn.amber,.cst-btn.stop{color:#8a5a00;border-color:#e6c77a}.cst-btn.amber:hover,.cst-btn.stop:hover{background:#fff7e0;color:#8a5a00}.cst-btn.danger{color:#b03a33;border-color:#e3aaa6}.cst-btn.danger:hover{background:#fdecec;color:#b03a33}.cst-btn.demo{vertical-align:middle;cursor:default}.cst-ex td{background:#fff9e8;border-bottom:1px solid #f0dfae;border-left:4px solid #e6c77a;padding:8px 12px 8px 16px;font-size:12.5px}.cst-exsub{margin-top:6px;background:#fff;border:1px solid #e6eef5;border-radius:8px;padding:4px 10px}.cst-exsub summary{cursor:pointer;font-weight:700;color:var(--sub);font-size:12.5px}.cst-exsub[open] summary{margin-bottom:4px}.cst-exhead{gap:10px;margin:0 0 6px;font-size:13px}.cst-exhead,.cst-exline{display:flex;align-items:center;flex-wrap:wrap}.cst-exline{gap:6px 10px;margin:3px 0}.cst-exline label{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.cst-exline input{height:26px;padding:2px 6px;font-size:12.5px}.cst-exlab{font-weight:700;color:#8a5a00;min-width:200px}.cst-exfoot{margin-top:4px}.cst-add{margin:10px 0 0}.cst-foot{position:-webkit-sticky;position:sticky;bottom:0;margin:10px -16px 0;padding:6px 16px;background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-top:1px solid var(--line);z-index:3}.cst-foot-row{gap:10px 16px;justify-content:space-between}.cst-foot-act,.cst-foot-row{display:flex;align-items:center;flex-wrap:wrap}.cst-foot-act{gap:10px}.cst-foot-msg{min-width:0;font-size:13px;font-weight:600;margin-top:4px}.cst-err{color:var(--danger)}.cst-ok{color:var(--brand)}.cst-pending{margin:10px 0 0;padding:10px 14px;border:2px solid #3b82f6;background:#eff6ff;border-radius:10px;font-size:13px}.cst-pending ul{margin:6px 0 8px 18px;padding:0}.cst-pending li{margin:2px 0}@media (max-width:640px){.next-banner .nb-main{flex:1 1 100%}.nb-done{margin-left:auto}.cls-head{display:none}.cls-row{grid-template-columns:1fr 1fr;padding:10px 0}.cls-class{grid-column:1/-1}.cls-ops{justify-content:flex-start}}.nb-wrap{margin-top:16px}.nb-help{font-size:12.5px;margin:-4px 0 12px}.nb-board{display:flex;gap:14px;overflow-x:auto;padding-bottom:8px;align-items:flex-start}.nb-col{flex:0 0 270px;min-width:270px;background:#fbfdff;border:1px solid var(--line);border-radius:14px;padding:10px}.nb-col-head{display:flex;align-items:center;justify-content:space-between;font-weight:800;font-size:14px;padding:2px 4px 10px;border-bottom:2px solid var(--brand-mist);margin-bottom:10px}.nb-col-head,.nb-col-n{color:var(--brand-deep)}.nb-col-n{background:var(--brand-mist);font-size:12px;font-weight:700;padding:1px 9px;border-radius:999px}.nb-col-body{display:flex;flex-direction:column;gap:9px}.nb-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 11px;box-shadow:0 1px 3px rgba(40,80,120,.05)}.nb-card.is-senpo{background:#fffaf2;border-color:#f0dcb4}.nb-card-name{display:block;text-decoration:none}.nb-child{display:block;font-size:16px;font-weight:800;color:var(--ink);line-height:1.3}.nb-card-name:hover .nb-child{color:var(--brand-deep)}.nb-kana{display:block;font-size:11.5px;color:var(--sub);margin-top:1px}.nb-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:7px 0}.nb-parent{font-size:12px;color:var(--ink)}.nb-course{font-size:11px;font-weight:700;padding:1px 8px;border-radius:999px;white-space:nowrap;background:var(--brand-mist);color:var(--brand-deep)}.nb-course.c-小受{background:#e9f6ec;color:#2a7c5d}.nb-course.c-幼受{background:#fdeef4;color:#b25a85}.nb-course.c-乳幼児{background:#e7f0fb;color:#2f6db0}.nb-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.nb-last,.nb-lv{font-size:11px}.nb-lv{font-weight:700;padding:1px 8px;border-radius:999px;white-space:nowrap}.nb-lv.lv3{background:#fde7e7;color:#b24a4a}.nb-lv.lv2{background:#fbeede;color:#a96a1e}.nb-lv.lv1{background:#fbf6df;color:#8a7b22}.nb-card.lv3{border-left:4px solid #d96a6a}.nb-card.lv2{border-left:4px solid #e0a85a}.nb-card.lv1{border-left:4px solid #e2cf6a}.nb-todo{margin-top:7px;padding:8px 10px;background:#f1f5f9;border-radius:8px;color:#38424a;line-height:1.75}.nb-reason{font-size:11px;font-weight:700;padding:1px 8px;border-radius:999px;white-space:nowrap;background:#eef1f4;color:#4a555e}.nb-reason.rs-after{background:#fde7e7;color:#b24a4a}.nb-reason.rs-hold{background:#fbf2e1;color:#9a7b2e}.nb-reason.rs-noappt{background:#eaf2fb;color:#2f6db0}.nb-reason.rs-silent{background:#eef1f4;color:#4a555e}.ball-chip{border:1px solid;border-radius:999px;font-size:11.5px;font-weight:700;padding:3px 10px;cursor:pointer;white-space:nowrap;background:#fff}.ball-chip:disabled{opacity:.6;cursor:default}.ball-touho{color:var(--brand-deep);border-color:var(--brand-sky);background:var(--brand-mist)}.ball-senpo{color:#b3791a;border-color:#eccb86;background:#fdf3e0}.ball-sm{font-size:10.5px;padding:1px 8px}.row-ball{margin-top:4px}.fam-link{display:inline-flex;align-items:baseline;gap:7px;flex-wrap:wrap;text-decoration:none}.fam-child{font-weight:700}.fam-kana{font-size:11px;color:var(--sub);font-weight:400}.fam-area,.fam-parent{display:block;font-size:11.5px;color:var(--sub);margin-top:2px}td.cell-ball{white-space:nowrap}.date-stack{display:inline-flex;flex-direction:column;line-height:1.15}.date-year{font-size:10.5px;opacity:.7}.date-md{font-size:14px;white-space:nowrap}.li-dim{opacity:.5}.nb-card.li-dim{opacity:.55}.child-status-tag{display:inline-block;margin-left:6px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:700;background:#ececec;color:#777;vertical-align:middle}.child-card{border:1px solid var(--line);border-left-width:4px;border-radius:10px;padding:10px 12px;margin-bottom:10px;background:#fff}.child-card .child-name{font-weight:700;font-size:14px}.child-head{margin-bottom:6px}.child-c0{border-left-color:var(--brand)}.child-c1{border-left-color:#5ba87a}.child-c2{border-left-color:#c98ab0}.child-c3{border-left-color:#d9a014}.child-card.child-ci{border-left-color:#c9c9c4;background:#f7f7f5;opacity:.85}.child-card.child-ci .child-name{color:var(--sub)}.child-summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:8px}.child-summary::-webkit-details-marker{display:none}.child-toggle{font-size:11px;white-space:nowrap}details.child-card[open] .child-toggle:after{content:""}.child-body{margin-top:8px;padding-top:8px;border-top:1px dashed var(--line)}.nb-more{display:inline-block;margin-top:4px;font-size:12.5px}@media (max-width:720px){.nb-col{flex-basis:84vw;min-width:84vw}}.kokyaku-group,.kokyaku-groups{margin-top:10px}.kokyaku-group:first-child{margin-top:0}.kokyaku-group-head{font-size:11px;font-weight:700;color:var(--sub);letter-spacing:.04em;margin-bottom:4px;padding-bottom:3px;border-bottom:1px dashed var(--line)}.kokyaku-group dl.kv{gap:3px 12px}.prov{margin-top:10px;padding:8px 10px 9px;border-radius:8px;border-left:3px solid}.prov .prov-head{font-size:11px;font-weight:700;letter-spacing:.03em;margin-bottom:5px}.prov-uketsuke{background:#fdf7ec;border-left-color:#d9a441}.prov-uketsuke .prov-head{color:#a9761a}.prov-kokyaku{background:#eef6fc;border-left-color:#2280c6}.prov-kokyaku .prov-head{color:#1c6aa6}.prov-kokyaku.kokyaku-groups{margin-top:10px}.prov .kokyaku-group:first-child,.prov>details:first-of-type{margin-top:0}.uke-memo{margin-top:4px;font-size:12px;color:#a9761a;line-height:1.5}.conflict,.uke-memo.conflict{color:#c0392b}.inquiry-alert{display:flex;align-items:flex-start;gap:10px;background:#fff8e1;border-left:4px solid #f5c518;padding:10px 14px;margin:8px 0 12px;border-radius:6px;font-size:13px;line-height:1.6}.inquiry-alert-ico{font-size:16px}.inquiry-alert-body{flex:1 1;color:#5a4a17}.inquiry-alert-name{color:#5a4a17;text-decoration:underline}.inquiry-alert-sub{color:#8a7a3a;font-size:12px}.inquiry-alert-more{color:#8a7a3a;margin-left:4px}.inquiry-alert-link{margin-left:10px}.inquiry-alert-draft,.inquiry-alert-link{color:#1a73e8;text-decoration:none;font-weight:600}.inquiry-alert-draft{display:inline-block;margin-left:6px;padding:0 8px;border:1px solid #1a73e8;border-radius:999px;font-size:12px;background:#fff;white-space:nowrap}.inquiry-alert-draft:hover{background:#e8f0fe}.cutelist li:has(>.li-right-btns){flex-wrap:wrap}.li-right-btns{flex-basis:100%;display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end}.inquiry-card{scroll-margin-top:230px}.inquiry-card:target{outline:3px solid #1a73e8;outline-offset:2px}.page-narrow{max-width:880px;margin:0 auto;padding:16px}.page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.page-head h1{margin:0;font-size:20px}.page-tabs{display:flex;gap:8px}.page-tabs .tab{padding:6px 12px;border-radius:999px;background:#f3f3f3;color:#444;text-decoration:none;font-size:13px}.page-tabs .tab.active{background:#1a73e8;color:white}.inquiry-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.inquiry-card{background:white;border:1px solid #e6e6e6;border-radius:8px;padding:12px 14px}.inquiry-head{display:flex;align-items:center;gap:10px;margin-bottom:6px}.inquiry-st{font-size:11px;padding:2px 8px;border-radius:999px;background:#f3f3f3;color:#555;font-weight:600}.inquiry-st.st-new{background:#fff8e1;color:#8a7a3a}.inquiry-st.st-review{background:#ffe5e5;color:#a23}.inquiry-st.st-ingested{background:#e6f4ea;color:#1e7a3a}.inquiry-st.st-done{background:#e6eef9;color:#1a73e8}.inquiry-st.st-skip{background:#ececec;color:#888}.inquiry-name{font-size:15px;font-weight:600}.inquiry-when{margin-left:auto;color:#888;font-size:12px}.inquiry-meta{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12.5px;color:#444;margin-bottom:8px}.inquiry-meta b{color:#888;font-weight:600;margin-right:4px}.inquiry-content{background:#fafafa;border-radius:6px;padding:8px 12px;margin-bottom:8px;font-size:13px}.inquiry-content b{display:block;color:#888;font-size:11px;margin-bottom:2px}.inquiry-content p{margin:0;white-space:pre-wrap}.inquiry-draft{background:#f7faff;border:1px solid #d8e4f7;border-radius:6px;padding:8px 12px;margin-bottom:8px}.inquiry-draft summary{cursor:pointer;font-size:13px;color:#1a73e8;font-weight:600}.inquiry-draft pre{white-space:pre-wrap;font-family:inherit;font-size:13px;line-height:1.7;color:#222;margin:8px 0 0}.inquiry-actions{gap:8px;margin-top:8px}.ingest-box,.inquiry-actions{display:flex;flex-wrap:wrap;align-items:center}.ingest-box{gap:6px}.ingest-editor{padding:4px 8px;border:1px solid #ddd;border-radius:4px;font-size:12px;width:160px}.ingest-msg{font-size:12px;color:#c0392b}.ingest-cands{width:100%;background:#fffaf0;border:1px solid #f0d090;border-radius:6px;padding:8px;margin-top:6px}.ingest-cands-h{font-size:12px;color:#8a6420;margin-bottom:4px}.ingest-cands ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.mini-btn.primary{background:#1a73e8;color:white;border-color:#1a73e8}.status-btns{display:flex;gap:6px;margin-left:auto}.sv{max-width:1100px;margin:0 auto}.sv-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:6px}.sv-head h1{font-size:20px;color:var(--brand-deep);margin:0}.sv-note{color:var(--sub);font-size:12.5px;margin:0 0 14px}.sv-nav{display:flex;align-items:center;gap:8px}.sv-nav button{padding:6px 12px;border-radius:10px;border:1px solid var(--brand-sky);background:#fff;color:var(--brand-deep);cursor:pointer;font-weight:600}.sv-nav input[type=date]{padding:5px 8px;border-radius:10px;border:1px solid var(--line)}.sv-empty{color:var(--sub);padding:30px 0;text-align:center}.sv-block{margin-bottom:18px}.sv-block>h2{font-size:16px;color:var(--brand-deep);margin:0 0 8px}.sv-classes{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:12px;gap:12px}.sv-class{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;box-shadow:var(--shadow)}.sv-class-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.sv-class-head b{font-size:15px}.sv-muted{color:var(--sub);font-size:12px}.sv-count{margin-left:auto;font-weight:700;color:var(--brand-deep);font-size:12.5px;white-space:nowrap}.sv-teach{font-size:12px;color:#38424a;margin:4px 0 6px;border-top:1px dashed var(--line);padding-top:5px}.sv-names{list-style:none;padding:0;margin:0}.sv-names li{padding:3px 2px;font-size:13.5px;border-bottom:1px dotted #eee}.sv-abs{color:#aaa;text-decoration:line-through}.sv-tag{font-size:10px;font-weight:700;padding:0 6px;border-radius:7px;margin-left:6px;vertical-align:1px}.sv-tag-abs{background:#f3e3e3;color:#b25a5a}.sv-tag-fk{background:#e7f3ec;color:#2a7c5d}.sv-tag-tk{background:#e7f0fb;color:#2f6db0}.sv-tag-special{background:#eef3e7;color:#5a7a3a}.sv-tag-noopen{background:#e6e6e6;color:#6b6b6b}.sv-class.sv-noopen{opacity:.55}.sv-class.sv-special{border-style:dashed;border-color:#cdd9bd;background:#fafdf6}.sv-has-special{font-size:11px;font-weight:700;color:#5a7a3a;background:#eef3e7;border-radius:8px;padding:1px 8px;margin-left:8px;vertical-align:2px}.topbar-public .brand{display:flex;align-items:center;gap:8px;font-weight:800;color:var(--brand-deep)}.sv-gate{max-width:360px;margin:8vh auto 0;text-align:center}.sv-gate h1{color:var(--brand-deep);font-size:22px}.sv-gate-form{display:flex;gap:8px;margin-top:14px}.sv-gate-form input{flex:1 1;padding:9px 12px;border-radius:10px;border:1px solid var(--line)}.sv-gate-form button{padding:9px 16px;border-radius:10px;border:none;background:var(--brand);color:#fff;font-weight:700;cursor:pointer}.sv-gate-err{color:var(--danger);margin-top:10px;font-weight:600;font-size:13px}.sv-extra{margin-top:18px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;box-shadow:var(--shadow)}.sv-extra>h2{font-size:15px;color:var(--brand-deep);margin:0 0 8px}.sv-extra-dl{display:grid;grid-template-columns:120px 1fr;grid-gap:6px 12px;gap:6px 12px;margin:0;font-size:13px}.sv-extra-dl dt{font-weight:700;color:var(--brand-deep)}.sv-extra-dl dd{margin:0;line-height:1.7}.teacher-link-box{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 12px;padding:9px 14px;background:#eef4fb;border-left:4px solid var(--brand);border-radius:10px;font-size:13px}.teacher-link-box .muted{font-size:12px}.sales-legend{display:inline-block;margin-left:10px;padding:1px 8px;border-radius:999px;background:#fff4e0;color:#9a6a12;font-size:11px}.sales-grid-card{overflow-x:auto}table.sales-grid{width:100%;min-width:720px;border-collapse:collapse}table.sales-grid td,table.sales-grid th{border:1px solid var(--line);vertical-align:top}table.sales-grid thead th{background:var(--brand-mist);color:var(--brand-deep);font-size:12px;text-align:center;padding:8px 6px;position:-webkit-sticky;position:sticky;top:0}table.sales-grid thead th.sg-grade-h{text-align:left;width:96px}.sg-course th{background:#f3f8fd;color:var(--brand-deep);font-size:12px;padding:6px 10px}.sg-course th,th.sg-grade{font-weight:700;text-align:left}th.sg-grade{width:96px;background:#fafdff;color:var(--ink);font-size:13px;padding:8px 10px;white-space:nowrap}.sg-empty-row td,.sg-empty-row th.sg-grade{opacity:.5}td.sg-cell{position:relative;padding:7px 8px;min-width:150px}.sg-count{position:absolute;top:4px;right:6px;font-size:10px;color:var(--sub);background:var(--brand-mist);border-radius:999px;padding:0 6px}.sg-names{display:flex;flex-wrap:wrap;gap:5px;padding-right:18px}.sg-name{display:inline-block;padding:2px 9px;border-radius:999px;background:#eef6fd;border:1px solid var(--line);color:var(--brand-deep);font-size:12.5px;text-decoration:none}.sg-name:hover{background:var(--brand);color:#fff;border-color:var(--brand)}.sg-name.sg-remind{background:#fff4e0;border-color:#f0d29a;color:#9a6a12;font-weight:700}.sg-name.sg-remind:hover{background:var(--warn);color:#fff;border-color:var(--warn)}.wk-card{margin-bottom:14px}.wk-head{display:flex;align-items:baseline;gap:12px;margin-bottom:6px}.wk-head h2{margin:0;font-size:16px;color:var(--brand-deep)}table.wk-table{width:100%;border-collapse:collapse}table.wk-table th{width:180px;background:#fafdff;color:var(--ink);font-size:13px;font-weight:700;white-space:nowrap;vertical-align:top}table.wk-table td,table.wk-table th{padding:8px 10px;border-bottom:1px solid var(--line)}.wk-n{display:inline-block;margin-left:6px;min-width:22px;text-align:center;background:var(--brand);color:#fff;border-radius:999px;padding:0 7px;font-size:12px}.wk-nyukai th{color:var(--good)}.wk-nyukai .wk-n{background:var(--good)}.wk-routes{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:5px}.wk-route{font-size:11px;color:var(--sub);background:var(--brand-mist);border-radius:999px;padding:1px 8px}.wk-names{display:flex;flex-wrap:wrap;gap:5px}.wk-name{display:inline-block;padding:2px 9px;border-radius:999px;background:#eef6fd;border:1px solid var(--line);color:var(--brand-deep);font-size:12.5px;text-decoration:none}.wk-name:hover{background:var(--brand);color:#fff;border-color:var(--brand)}.ob-panel{margin-top:14px;border:1.5px solid #f5c0c0;border-radius:10px;overflow:hidden;background:#fff8f8}.ob-panel.ob-all-done{background:#f0faf5;border-color:#b8dfc9}.ob-head{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:#feefef;border-bottom:1px solid #f5c0c0}.ob-panel.ob-all-done .ob-head{background:#e2f4ea;border-color:#b8dfc9}.ob-title{font-weight:700;font-size:13px;color:var(--ink)}.ob-progress{font-size:12px;color:var(--sub)}.ob-item{display:flex;align-items:center;gap:8px;padding:8px 14px;border-bottom:1px solid var(--line);font-size:13px}.ob-item:last-child{border-bottom:none}.ob-check{font-size:15px;flex-shrink:0;width:20px}.ob-label{flex:1 1}.ob-done .ob-label{color:var(--sub);text-decoration:line-through}.ob-who{font-size:11px;color:var(--sub);white-space:nowrap}.ob-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.ob-btn{padding:3px 12px;border-radius:6px;border:1px solid var(--brand);color:var(--brand);background:#fff;cursor:pointer;font-size:12px;white-space:nowrap}.ob-btn:hover{background:var(--brand);color:#fff}.ob-btn:disabled{opacity:.5;cursor:not-allowed}.ob-item{flex-wrap:wrap}.ob-label{flex:1 1 220px;min-width:0}.ob-actions{flex-shrink:1;flex-wrap:wrap}@media (min-width:640px){.ob-actions{flex-shrink:0}}.ob-tanto{margin-left:6px;font-size:11px;color:var(--sub)}.ob-note{padding:8px 14px;font-size:12px;color:#8a5a00;background:#fff6e0;border-bottom:1px solid var(--line)}.ob-sub{color:var(--sub);font-size:12px}.ob-memo{flex:1 1 240px;min-width:0;padding:4px 8px;border:1px solid var(--line);border-radius:6px;font-size:13px}.ob-panel.ob-highlight{box-shadow:0 0 0 3px #f2b84b}.sp-att-tanto{margin:2px 0 4px}.sp-att-tanto select{font-size:11px;padding:1px 4px;border:1px solid var(--line);border-radius:6px;color:var(--ink);background:#fff}.sp-att .sp-names{list-style:none;margin:0;padding:0}.sp-att .sp-names li{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:1px 0;font-size:13px}.sp-att .sp-names li.sp-absent .sp-att-name{color:var(--sub);text-decoration:line-through}.sp-abs-badge{display:inline-block;margin-left:6px;font-size:10px;color:#fff;background:var(--danger);border-radius:999px;padding:0 6px;text-decoration:none;vertical-align:middle}.sp-abs-btn{flex-shrink:0;font-size:10.5px;padding:1px 7px;border-radius:6px;border:1px solid var(--line);background:#fff;color:var(--sub);cursor:pointer}.sp-abs-btn:hover{border-color:var(--danger);color:var(--danger)}.sp-att .sp-absent .sp-abs-btn{color:var(--brand);border-color:var(--brand-mist)}.sp-att .sp-absent .sp-abs-btn:hover{background:var(--brand-mist)}.course-tag{display:inline-block;margin-left:6px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:700;vertical-align:middle}.course-tag.ct-s{background:#eaf1f8;color:#2b5a86}.course-tag.ct-y{background:#f3ecf7;color:#6b4a86}.course-tag.ct-n{background:#eaf4ee;color:#3a7a55}.course-tag.ct-as{background:#e6f0e9;color:#3e6b4d}.course-tag.ct-end{background:#eef0ee;color:#8a968c;font-weight:400}.course-tag.ct-joho{background:#eef3fb;color:#4a6fa5;border:1px dashed #b9cbe6}.course-tag.ct-asevent{background:#eef5ef;color:#55806a;border:1px dashed #bcd6c6}.course-tag.ct-other{background:#f4f1e8;color:#7a6a3a}.kz-item{border-top:1px dashed var(--line)}.kz-item>summary{list-style:none;cursor:pointer;padding:6px 4px 6px 0;font-size:13.5px;line-height:1.6;border-radius:4px}.kz-item>summary::-webkit-details-marker{display:none}.kz-item>summary:before{content:"▸ ";color:var(--sub);font-size:11px}.kz-item[open]>summary:before{content:"▾ "}.kz-item>summary:hover{background:var(--brand-mist)}.kz-item .kz-name{font-weight:600;overflow-wrap:anywhere}.kz-item .kz-meta{color:var(--sub)}.kz-item .kz-meta,.kz-item .kz-warn{font-size:11.5px;margin-left:6px;white-space:nowrap}.kz-item .kz-warn{color:var(--warn)}.kz-body{padding:2px 0 8px 14px;border-left:2px solid var(--line);margin:0 0 6px 4px}.kz-body dl{margin:0}.kz-body .kz-qa{display:grid;grid-template-columns:minmax(0,min(34%,240px)) minmax(0,1fr);grid-gap:2px 12px;gap:2px 12px;padding:5px 0;border-bottom:1px dotted var(--line)}.kz-body .kz-qa:last-child{border-bottom:none}.kz-body dt{font-size:11.5px;color:var(--sub);overflow-wrap:anywhere;line-height:1.5}.kz-body dd{margin:0;font-size:13px;color:var(--ink);overflow-wrap:anywhere;white-space:pre-wrap;line-height:1.6}.kz-body .kz-empty{color:var(--sub)}.kz-body .kz-vals{margin:0;padding-left:1.1em}.kz-body .kz-vals li{list-style:"─ ";margin-bottom:2px}.kz-body .kz-note{font-size:12px;color:var(--sub);margin-top:6px}.kz-more>summary{list-style:none;cursor:pointer;font-size:12px;color:var(--brand);padding:8px 0 4px;border-top:1px dashed var(--line)}.kz-more>summary::-webkit-details-marker{display:none}.kz-more>summary:before{content:"▸ "}.kz-more[open]>summary:before{content:"▾ "}@media (max-width:560px){.kz-body .kz-qa{grid-template-columns:1fr;gap:0}.kz-body dd{margin-bottom:2px}}.guide .g-figwrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:8px 0 14px}.guide .g-fig{display:block;width:100%;height:auto;max-width:980px;background:#fff;border:1px solid var(--line);border-radius:12px}@media (max-width:699px){.guide .g-figwrap .g-fig{min-width:720px}.guide .g-figwrap:after{content:"← 図は横にスクロールできます →";display:block;font-size:11px;color:#6b7a87;text-align:center;padding:4px 0}}.guide code{background:#f1f5f8;padding:1px 6px;border-radius:4px;font-size:12.5px;word-break:break-all}.ob-top{display:flex;flex-direction:column;gap:4px;margin:0 0 10px;padding:8px 12px;background:#fff2cc;border:1px solid #e0a526;border-radius:8px}.ob-top-row{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px}.ob-top-tx{flex:1 1 200px;min-width:0}.ob-top-go,.ob-top-tx b{color:#7a4f00}.ob-top-go{flex:none;padding:2px 12px;border:1px solid #c58a10;border-radius:6px;background:#fff;text-decoration:none;font-size:13px}.ff{margin-bottom:14px}.ff-card{background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:16px;padding:16px 18px 14px;box-shadow:var(--shadow)}.ff-search{display:flex;min-width:0;border-radius:12px;transition:box-shadow .2s}.ff-search:focus-within{box-shadow:0 0 0 4px rgba(53,133,197,.13)}.ff-qwrap{position:relative;flex:1 1 auto;min-width:0}.ff-qicon{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--sub);pointer-events:none}.ff .ff-q{width:100%;height:46px;font-size:15.5px;padding:0 12px 0 40px;border-radius:12px 0 0 12px;border-right:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.ff .ff-go,.ff .ff-q:focus{box-shadow:none}.ff .ff-go{flex:none;width:104px;height:46px;padding:0;border-radius:0 12px 12px 0;background:var(--brand-deep);color:#fff;font-size:15px;font-weight:700;letter-spacing:.08em;transition:background .15s}.ff .ff-apply:after,.ff .ff-go:after,.ff .ff-morebtn:after{display:none}.ff .ff-apply:hover,.ff .ff-go:hover{background:#174a73;transform:none;box-shadow:none}.ff .ff-apply:active,.ff .ff-go:active{background:#123c5e;transform:none}.ff-zenl{display:inline-flex;align-items:center;gap:7px;margin-top:8px;font-size:12.5px;color:#5b7488;cursor:pointer}.ff .ff-zenl input{margin:0;width:15px;height:15px;padding:0;accent-color:var(--brand)}.ff-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr)) auto;grid-gap:10px 12px;gap:10px 12px;align-items:end;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.ff-f{display:flex;flex-direction:column;gap:4px;min-width:0}.ff-l{font-size:12px;font-weight:600;color:#5b7488}.ff input[type=date],.ff select{width:100%;min-width:0;height:38px;padding:0 10px;font-size:13.5px;border-radius:10px}.ff input[type=date].on,.ff select.on{background:var(--brand-mist);border-color:var(--brand);color:var(--brand-deep);font-weight:700}.ff .ff-morebtn{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 14px;border-radius:10px;background:#fff;color:var(--brand-deep);border:1.5px solid var(--line);box-shadow:none;font-size:13px;font-weight:700;white-space:nowrap}.ff .ff-morebtn:hover{transform:none;box-shadow:none;border-color:var(--brand-sky)}.ff .ff-morebtn.on{background:var(--brand-mist);border-color:var(--brand)}.ff-morebtn svg{width:15px;height:15px;flex:none}.ff-caret{font-size:9px;color:var(--sub)}.ff-more{margin-top:12px;padding:12px 14px;background:#f7fbfe;border:1px solid var(--line);border-radius:12px}.ff-more[hidden]{display:none}.ff-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:10px 12px;gap:10px 12px}.ff-area{margin-top:12px}.ff-area summary{cursor:pointer;font-size:13px;font-weight:600;color:#5b7488;width:-moz-fit-content;width:fit-content;max-width:100%}.ff .filter-area-groups{display:flex;flex-direction:column;margin-top:8px}.ff .filter-area-group{display:grid;grid-template-columns:8em minmax(0,1fr);grid-gap:4px 12px;gap:4px 12px;padding:7px 0;border-top:1px solid var(--line)}.ff .filter-area-group:first-child{border-top:none}.ff .filter-area-pref{font-size:13px;font-weight:700;display:flex;gap:6px;align-items:baseline}.ff .filter-area-body{display:grid;grid-template-columns:repeat(auto-fill,minmax(8.5em,1fr));grid-gap:4px 10px;gap:4px 10px}.ff .filter-area-item{display:flex;flex-direction:row;align-items:center;gap:6px;font-size:13px;cursor:pointer;min-width:0}.ff .filter-area-item input{flex:none;margin:0;padding:0}.ff .filter-area-name{min-width:0}.ff .filter-area-count{color:var(--sub);font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ff-note{font-size:11.5px;color:var(--sub);margin:10px 0 0;line-height:1.6}.ff-more-act{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-top:10px}.ff .ff-apply{padding:8px 18px;border-radius:10px;background:var(--brand-deep);box-shadow:none;font-size:13px}.ff-more-act span{flex:1 1 16em;min-width:0;font-size:11.5px;color:var(--sub)}.ff-chips{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;margin-top:12px;padding-top:12px;border-top:1px dashed var(--line)}.ff-chips-h{font-size:12px;font-weight:600;color:#5b7488;margin-right:2px}.ff-chip{display:inline-flex;align-items:center;gap:2px;max-width:100%;min-width:0;padding:3px 4px 3px 11px;border-radius:999px;background:var(--brand-mist);border:1px solid #c9dff0;color:var(--brand-deep);font-size:12.5px;font-weight:600}.ff-chip-t{min-width:0;overflow-wrap:anywhere}.ff-chip-x{flex:none;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;color:var(--brand-deep);text-decoration:none;font-size:14px;line-height:1}.ff-chip-x:hover{background:#fff}.ff-clear{font-size:12.5px;color:var(--sub);margin-left:4px}.ff-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:14px 2px 0}.ff-count{min-width:0;font-size:14px;color:var(--ink)}.ff-n{font-size:22px;font-weight:800;color:var(--brand-deep);margin-right:2px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ff-all{font-size:12.5px;color:var(--sub);margin-left:4px}.ff-busy{font-size:12px;color:var(--sub);margin-left:10px}.ff-sort{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#5b7488}.ff .ff-sort select{width:auto;height:32px;font-size:13px}.ff-export{margin-left:auto;min-width:0}.ff-export .addr-export{margin:0}.ff-export:has(.addr-export-panel){flex:1 1 100%;margin-left:0}body:has(.ff.pending) .list-card{opacity:.55;transition:opacity .15s}.list-head .edit-link.quiet{background:transparent;border:1px solid var(--line);color:var(--sub)!important;-webkit-text-fill-color:var(--sub)}@media (max-width:960px){.ff-row{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:620px){.ff-card{padding:12px}.ff .ff-go{width:76px}.ff-row{grid-template-columns:repeat(2,minmax(0,1fr))}.ff .ff-morebtn{grid-column:1/-1;justify-content:center}.ff .filter-area-group{grid-template-columns:minmax(0,1fr)}.ff-export{margin-left:0;flex:1 1 100%}}.ff-empty{margin:14px 4px 4px;font-size:13px}@media (max-width:620px){.ff-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ff-more{padding:10px}}.searchbox svg.search-icon{width:18px;height:18px;left:13px;color:var(--sub)}.searchbox input{height:46px;padding:0 14px 0 40px;border-radius:12px;font-size:15px}.searchbox input:focus{transform:none}.search-pop{border-radius:14px}.search-hit .pill{flex:none}.search-head{padding:8px 10px 4px;font-size:12px;font-weight:600;color:#5b7488}.search-none{padding:12px 12px 6px}.search-foot{display:block;margin-top:4px;padding:10px 12px;border-top:1px solid var(--line);border-radius:0 0 10px 10px;font-size:13px;font-weight:600;text-decoration:none;color:var(--brand-deep)!important;-webkit-text-fill-color:var(--brand-deep);overflow-wrap:anywhere}.search-foot.hl,.search-foot:hover{background:var(--brand-mist)}.search-foot.sub{margin-top:0;border-top:none;font-weight:500;color:var(--sub)!important;-webkit-text-fill-color:var(--sub)}@media (max-width:640px){.hero-search .search-pop{right:auto;width:calc(100vw - 28px);max-height:60vh}}.search-pop .search-foot:not(.sub){position:-webkit-sticky;position:sticky;bottom:-6px;background:#fff}.search-pop .search-foot.hl:not(.sub),.search-pop .search-foot:not(.sub):hover{background:var(--brand-mist)}.ob-btn.ob-undo{border-color:var(--line);color:var(--sub)}.ob-btn.ob-undo:hover{background:#f3f6f9;color:var(--ink)}.aitask-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}.aitask-tab{background:#fff;color:var(--brand-deep);border:1.5px solid var(--line);box-shadow:none;border-radius:10px;padding:8px 14px;font-weight:600;min-width:0}.aitask-tab:hover{transform:none;box-shadow:none;border-color:var(--brand)}.aitask-tab:after{display:none}.aitask-tab.on{background:#1f3a56;color:#fff;border-color:#1f3a56}.card.aitask{margin-bottom:14px}.card.aitask:hover{transform:none}.aitask-head{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:space-between}.aitask-head-text{min-width:0;flex:1 1 320px}.aitask-title{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:4px}.aitask-title h3{margin:0;font-size:16px;color:var(--ink);min-width:0}.aitask-no{display:inline-block;background:#1f3a56;color:#fff;border-radius:6px;padding:1px 8px;font-size:13px;font-weight:700}.aitask-st{font-size:12px;font-weight:700;padding:2px 8px;border-radius:10px;background:#eef2f5;color:var(--sub)}.aitask-st.done{background:#e3f3e6;color:#2f7a3e}.aitask-st.err{background:#f8e9e9;color:#a24848}.aitask-quote{font-size:12px;color:var(--sub);border-left:3px solid var(--line);padding:2px 8px;margin:4px 0 6px;white-space:pre-wrap}.aitask-ask{font-size:13px;color:var(--ink);margin:2px 0 4px}.aitask-sec{font-size:12.5px;font-weight:700;color:var(--brand-deep);margin:14px 0 6px;padding-top:10px;border-top:1px dashed var(--line)}.aitask-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));grid-gap:10px 12px;gap:10px 12px;margin-bottom:6px}.aitask-grid .fld{min-width:0}.aitask-wide{grid-column:1/-1}.aitask-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.aitask-row input{flex:1 1 200px;min-width:0}.aitask-choices{display:flex;flex-direction:column;gap:4px;margin:4px 0 6px}.aitask-check,.aitask-radio{display:flex;align-items:flex-start;gap:8px;font-size:13.5px;line-height:1.6;cursor:pointer}.aitask-check input,.aitask-radio input{margin-top:4px;flex:0 0 auto}.aitask-radio-text{min-width:0}.aitask-radio-text .aitask-badge,.aitask-radio-text .dup-badge{margin-left:4px}.aitask-badge{display:inline-block;font-size:11px;padding:1px 7px;border-radius:8px;background:#eef2f5;color:var(--sub)}.aitask-badge.ok{background:#e3f3e6;color:#2f7a3e}.aitask-link{margin-left:6px;font-size:12px}.aitask-sub{margin:4px 0 6px 24px}.aitask-ok{color:#2f7a3e;background:#eef8f0;border-radius:8px}.aitask-ok,.aitask-warnbox{font-size:13px;padding:6px 10px;margin:4px 0}.aitask-warnbox{color:#7a5600;background:#fdf5e1;border:1px solid #f0d9a0;border-radius:8px}.aitask-notebox{color:#55697a;background:#f2f5f7;margin:4px 0}.aitask-err,.aitask-notebox{font-size:13px;border-radius:8px;padding:6px 10px}.aitask-err{color:#a24848;background:#f8eded;margin:6px 0}.aitask-need{font-size:12px;color:#9a6b00}.aitask-done{margin-top:10px;font-size:14px;font-weight:600;color:#2f7a3e;background:#eef8f0;border-radius:8px;padding:8px 12px}.aitask-actions{margin-top:12px}.aitask-details{margin:6px 0;font-size:13px}.aitask-details summary{cursor:pointer;color:var(--brand-deep)}.aitask-others{margin:0;padding-left:18px;line-height:1.7}.btn-sub{background:#eef2f5;color:var(--ink)}.btn-sub,.btn-sub:hover{box-shadow:none}.aitask-sec2{font-size:12.5px;font-weight:700;color:var(--ink);margin:6px 0 2px}.aitask-diff{display:flex;flex-direction:column;gap:6px;margin:4px 0}.aitask-diff-row{display:grid;grid-template-columns:minmax(0,9em) minmax(0,1fr) auto;grid-gap:4px 10px;gap:4px 10px;align-items:center;padding:6px 10px;border-radius:8px;border-left:4px solid #f0d9a0;background:#fffaf0}.aitask-diff-row.blank{border-left-color:#9fd3aa;background:#f4fbf5}.aitask-diff-row.keep{border-left-color:#d5dde3;background:#f7f9fa}.aitask-diff-field{font-size:12.5px;font-weight:700;color:var(--ink);min-width:0}.aitask-diff-field .aitask-badge{margin-left:4px;font-weight:400}.aitask-diff-vals{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;min-width:0;font-size:13px}.aitask-diff-vals input{flex:1 1 160px;min-width:0;padding:4px 8px}.aitask-diff-cur{color:var(--sub);min-width:0;overflow-wrap:anywhere;white-space:pre-wrap}.aitask-diff-row.diff.m-overwrite .aitask-diff-cur{text-decoration:line-through;-webkit-text-decoration-color:rgba(162,72,72,.5);text-decoration-color:rgba(162,72,72,.5)}.aitask-diff-new{font-weight:700;color:var(--ink);min-width:0;overflow-wrap:anywhere;white-space:pre-wrap}.aitask-diff-row.keep .aitask-diff-new{font-weight:400;color:var(--sub)}.aitask-diff-arrow{color:var(--sub)}.aitask-diff-modes{display:flex;flex-wrap:wrap;gap:4px}.aitask-mode{background:#fff;color:var(--ink);border:1.5px solid var(--line);box-shadow:none;border-radius:8px;padding:3px 10px;font-size:12.5px;font-weight:600}.aitask-mode:after{display:none}.aitask-mode:hover{transform:none;box-shadow:none;border-color:var(--brand)}.aitask-mode.on{background:#1f3a56;color:#fff;border-color:#1f3a56}.aitask-diff-after{grid-column:1/-1;font-size:12px;color:#2f7a3e;white-space:pre-wrap}@media (max-width:640px){.aitask-diff-row{grid-template-columns:minmax(0,1fr)}}.ds-ev{display:grid;grid-template-columns:3.3em minmax(0,1fr);grid-column-gap:.7em;column-gap:.7em}.ds-t{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--brand-deep)}.rg-hint-sp{display:none}@media (max-width:640px){.daily .dn-ic{display:none}.daily .list-head{gap:10px;margin:0 0 10px}.daily .list-head h1{font-size:20px;display:flex;flex-wrap:wrap;align-items:baseline;gap:0 8px;min-width:0}.daily .list-head h1 .muted{font-size:13px}.daily .daily-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:6px;gap:6px;width:100%}.daily .daily-nav .mini-btn,.daily .doc-open>.mini-btn{background:#fff;color:var(--brand-deep)!important;border:1px solid #c9d8e8;box-shadow:none;padding:8px 4px;font-size:13px;border-radius:10px;text-align:center;white-space:nowrap;transform:none}.daily .daily-nav .dn-prev{order:1}.daily .daily-datepick{order:2}.daily .daily-nav .dn-next{order:3}.daily .daily-nav>:nth-child(n+4){order:4}.daily .daily-datepick,.daily .daily-datepick .mini-btn{width:100%}.daily .daily-nav .dn-print{display:none}.daily .doc-open>.mini-btn{padding:7px 12px;font-size:12.5px}.daily .teacher-link-box{font-size:12.5px;padding:7px 10px;gap:2px 10px}.daily .teacher-link-box .tl-note{display:none}.daily .teacher-link-box .edit-link{padding:2px 6px}.daily .d-unresolved-toggle{font-size:12px}.daily .rg-hint-pc{display:none}.daily .rg-hint-sp{display:inline}.daily .rg-row{min-width:1100px;grid-template-columns:52px 1fr;gap:4px}.daily .rg-roomname{position:-webkit-sticky;position:sticky;left:0;z-index:2;background:#fff;font-size:11px;line-height:1.3;padding-right:2px}.daily .rg-item{overflow-wrap:normal;word-break:normal;line-break:strict}.daily .daily-side dl.kv{grid-template-columns:minmax(0,1fr);gap:0;font-size:14px;line-height:1.6}.daily .daily-side dl.kv dt{font-size:12px;font-weight:700;color:var(--brand-deep);padding:10px 0 3px;border-bottom:1px solid var(--line);margin-bottom:4px}.daily .daily-side dl.kv dt:first-child{padding-top:0}.daily .daily-side dl.kv dd{word-break:normal;overflow-wrap:anywhere;line-break:strict}.daily .daily-side .ds-ev{padding:2px 0}.daily .daily-side .ds-note{font-size:11px!important;line-height:1.6}}