:root{--bg:#FFFFFF;--surface:#F4F6F9;--fg:#1A1E24;--muted:#5A6470;--line:#DCE1E7;--accent:#1E5BB8;--accent-soft:#E9F0FB;--todo:#A65300;--todo-soft:#FFF2E3;--bar:rgba(255,255,255,.86);--accent2:#2F8FC9;--font-head:"Zen Kaku Gothic New","Hiragino Sans","Noto Sans JP",sans-serif;--font-body:"Noto Sans JP","Hiragino Sans","Yu Gothic",sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#16191E;--surface:#1F242B;--fg:#E9ECEF;--muted:#A3ACB7;--line:#353C45;--accent:#86B4FF;--accent-soft:#1E2C44;--todo:#FFB461;--todo-soft:#3A2A17;--bar:rgba(22,25,30,.86);--accent2:#6FD0E8;color-scheme:dark}}:root[data-theme=dark]{--bg:#16191E;--surface:#1F242B;--fg:#E9ECEF;--muted:#A3ACB7;--line:#353C45;--accent:#86B4FF;--accent-soft:#1E2C44;--todo:#FFB461;--todo-soft:#3A2A17;--bar:rgba(22,25,30,.86);--accent2:#6FD0E8;color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:16px;line-height:1.85;-webkit-font-smoothing:antialiased}.wrap{max-width:920px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:20px 96px}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0);z-index:30}.topbar,body:before{background:var(--bar)}.topbar{position:-webkit-sticky;position:sticky;top:env(safe-area-inset-top,0);z-index:25;backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid var(--line)}.topbar-in{max-width:920px;margin:0 auto;height:60px;display:flex;align-items:center;gap:12px;padding-left:max(8px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.burger{width:44px;height:44px;border-radius:12px;border:0;background:transparent;color:var(--fg);cursor:pointer;display:grid;place-items:center;flex:none;transition:background .2s}.burger:hover{background:var(--surface)}.burger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.burger .lines{width:20px;height:14px;position:relative}.burger .lines i{position:absolute;left:0;width:100%;height:2px;border-radius:2px;background:currentColor;transition:transform .35s cubic-bezier(.7,0,.2,1),opacity .2s,top .35s cubic-bezier(.7,0,.2,1)}.burger .lines i:first-child{top:0}.burger .lines i:nth-child(2){top:6px}.burger .lines i:nth-child(3){top:12px}.menu-open .burger .lines i:first-child{top:6px;transform:rotate(45deg)}.menu-open .burger .lines i:nth-child(2){opacity:0;transform:scaleX(.2)}.menu-open .burger .lines i:nth-child(3){top:6px;transform:rotate(-45deg)}.brand{display:flex;flex-direction:column;line-height:1.25;min-width:0;text-decoration:none;color:var(--fg)}.brand small{color:var(--muted);font-size:11px;letter-spacing:.08em}.brand strong{font-family:var(--font-head);font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ring{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;flex:none}.ring svg{width:30px;height:30px;transform:rotate(-90deg)}.ring circle{fill:none;stroke-width:4}.ring .bg{stroke:var(--surface)}.ring .fg{stroke:var(--accent);stroke-linecap:round;transition:stroke-dashoffset .8s cubic-bezier(.2,.8,.2,1)}.scrollbar{position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:var(--accent);transform-origin:0 50%;transform:scaleX(0)}.scrim{position:fixed;inset:0;z-index:40;background:rgba(12,16,24,.38);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:opacity .35s}.menu-open .scrim{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;bottom:0;left:0;z-index:45;width:min(360px,88vw);background:var(--bg);border-right:1px solid var(--line);box-shadow:0 0 60px rgba(0,0,0,.18);transform:translateX(-104%);transition:transform .45s cubic-bezier(.7,0,.2,1);visibility:hidden;display:flex;flex-direction:column;padding:calc(env(safe-area-inset-top, 0px) + 12px) 16px calc(env(safe-area-inset-bottom, 0px) + 16px) max(16px,env(safe-area-inset-left,0px))}.menu-open .drawer{transform:none;visibility:visible}.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 4px 12px}.drawer-head strong{font-family:var(--font-head);font-size:18px}.drawer nav{overflow-y:auto;flex:1 1;margin:0 -8px;padding:0 8px}.drawer ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.drawer .item{opacity:0;transform:translateX(-14px);transition:opacity .35s,transform .45s cubic-bezier(.2,.8,.2,1)}.menu-open .drawer .item{opacity:1;transform:none;transition-delay:calc(.08s + var(--i) * .04s)}.drawer a.ch{display:grid;grid-template-columns:30px minmax(0,1fr) 22px;align-items:center;grid-gap:8px;gap:8px;padding:11px 12px;border-radius:10px;color:var(--fg);text-decoration:none;font-size:15px;line-height:1.45;transition:background .2s,color .2s}.drawer a.ch:hover{background:var(--surface)}.drawer a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.drawer a.ch .n{font-family:var(--font-head);color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.drawer a.ch[aria-current=page]{background:var(--accent-soft);color:var(--accent);font-weight:700}.drawer a.ch[aria-current=page] .n{color:var(--accent)}.done{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:11px;color:var(--bg);background:var(--accent)}.drawer .subs{list-style:none;margin:2px 0 6px 42px;padding:0 0 0 12px;border-left:2px solid var(--line);display:flex;flex-direction:column}.drawer .subs a{display:block;padding:6px 8px;font-size:13.5px;color:var(--muted);text-decoration:none;border-radius:6px;line-height:1.5}.drawer .subs a:hover{color:var(--fg);background:var(--surface)}.drawer .subs a.on{color:var(--accent);font-weight:700}.drawer-foot{border-top:1px solid var(--line);padding:14px 4px 0;display:flex;flex-direction:column;gap:8px;font-size:13px;color:var(--muted);line-height:1.7}.bar{height:6px;background:var(--surface);border-radius:3px;overflow:hidden}.bar i{display:block;height:100%;background:var(--accent);width:0;transition:width .8s cubic-bezier(.2,.8,.2,1)}.iconbtn{width:40px;height:40px;border:0;border-radius:10px;background:transparent;color:var(--fg);cursor:pointer;font-size:20px;display:grid;place-items:center}.iconbtn:hover{background:var(--surface)}.iconbtn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.crumbs{margin-bottom:20px}.crumbs ol{list-style:none;margin:0;padding:0;flex-wrap:wrap;gap:4px 6px;font-size:13px;color:var(--muted)}.crumbs li,.crumbs ol{display:flex;align-items:center}.crumbs li{gap:6px;min-width:0}.crumbs li+li:before{content:"";width:6px;height:6px;border-right:1.5px solid var(--muted);border-top:1.5px solid var(--muted);transform:rotate(45deg);opacity:.7;margin-right:2px}.crumbs a{color:var(--muted);text-decoration:none;padding:2px 6px;border-radius:6px;transition:background .2s,color .2s}.crumbs a:hover{color:var(--accent);background:var(--accent-soft)}.crumbs a:focus-visible{outline:2px solid var(--accent)}.crumbs [aria-current]{color:var(--fg);font-weight:700;padding:2px 6px}.crumbs .swap{animation:crumb .4s cubic-bezier(.2,.8,.2,1)}@keyframes crumb{0%{opacity:.2;transform:translateY(6px)}to{opacity:1;transform:none}}.home{display:flex;flex-direction:column;gap:32px}.hero{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:24px;gap:24px;align-items:center;padding:28px;border-radius:20px;background:var(--accent-soft);overflow:hidden;position:relative}.hero:after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;border:28px solid var(--accent);opacity:.07;animation:drift 14s ease-in-out infinite alternate}@keyframes drift{to{transform:translate(-30px,40px) scale(1.15)}}.hero h1{font-size:clamp(28px,5vw,42px)}.hero p{color:var(--muted)}.hero>div:first-child{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.hero .cta{margin-top:8px;display:inline-flex;align-items:center;gap:10px;font:inherit;font-weight:700;font-size:15px;padding:12px 20px;border-radius:999px;border:0;background:var(--accent);color:var(--bg);cursor:pointer;transition:transform .2s,box-shadow .2s}.hero .cta:hover{transform:translateY(-2px);box-shadow:0 8px 20px -8px var(--accent)}.hero .cta:focus-visible{outline:3px solid var(--fg);outline-offset:2px}.hero .cta span{transition:transform .25s}.hero .cta:hover span{transform:translateX(4px)}.bigring{position:relative;width:132px;height:132px;z-index:1}.bigring svg{width:100%;height:100%;transform:rotate(-90deg)}.bigring circle{fill:none;stroke-width:10}.bigring .bg{stroke:var(--bg)}.bigring .fg{stroke:var(--accent);stroke-linecap:round;transition:stroke-dashoffset 1.2s cubic-bezier(.2,.8,.2,1)}.bigring .val{position:absolute;inset:0;display:grid;place-items:center;text-align:center;line-height:1.2}.bigring .val b{font-family:var(--font-head);font-size:32px;display:block;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bigring .val small{font-size:12px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:14px;gap:14px}.ccard{display:flex;flex-direction:column;gap:6px;padding:18px 18px 16px;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:var(--fg);background:var(--bg);position:relative;overflow:hidden;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,border-color .3s}.ccard:hover{transform:translateY(-4px);box-shadow:0 14px 30px -18px rgba(20,40,80,.45);border-color:var(--accent)}.ccard:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ccard .num{font-family:var(--font-head);font-size:34px;line-height:1;color:var(--accent);opacity:.9}.ccard h2{font-size:18px}.ccard p{font-size:13.5px;color:var(--muted);line-height:1.7}.ccard .meta{margin-top:auto;padding-top:8px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted)}.ccard .go{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--surface);color:var(--accent);transition:transform .3s,background .3s,color .3s}.ccard:hover .go{transform:translateX(4px);background:var(--accent);color:var(--bg)}.ccard .badge{position:absolute;top:14px;right:14px}.stagger>*{animation:rise .6s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(var(--i, 0) * 60ms)}@keyframes rise{0%{opacity:.25;transform:translateY(16px)}to{opacity:1;transform:none}}.ach{border:1px solid var(--line);border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:22px;background:var(--bg);position:relative;overflow:hidden}.ach-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.ach-note{font-size:13px;color:var(--muted);margin-top:4px}.editbtn{font:inherit;font-size:14px;font-weight:700;padding:9px 16px;border-radius:999px;border:1.5px solid var(--accent);background:var(--bg);color:var(--accent);cursor:pointer;transition:background .25s,color .25s,transform .15s;position:relative;overflow:hidden}.editbtn:hover,.editbtn[aria-expanded=true]{background:var(--accent);color:var(--bg)}.editbtn:focus-visible{outline:2px solid var(--fg);outline-offset:2px}.ach-body{display:grid;grid-template-columns:180px minmax(0,1fr);grid-gap:28px;gap:28px;align-items:center}.achring{position:relative;width:180px;height:180px}.achring svg{width:100%;height:100%;transform:rotate(-90deg);overflow:visible}.achring circle{fill:none;stroke-width:14}.achring .bg{stroke:var(--surface)}.achring .fg{stroke:url(#achGrad);stroke-linecap:round;transition:stroke-dashoffset 1.4s cubic-bezier(.2,.8,.2,1);filter:drop-shadow(0 4px 8px rgba(30,91,184,.25))}.achring .tick{stroke:var(--bg);stroke-width:3}.achring .val{position:absolute;inset:0;display:grid;place-items:center;text-align:center;line-height:1.1}.achring .val b{font-family:var(--font-head);font-size:46px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.achring .val span{font-family:var(--font-head);font-size:20px;color:var(--muted);margin-left:2px}.achring .val small{display:block;font-size:12px;color:var(--muted);margin-top:6px}.road{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));position:relative}.road .fill,.road:before{content:"";position:absolute;top:25px;left:calc(100% / 12);height:4px;border-radius:2px}.road:before{right:calc(100% / 12);background:var(--surface)}.road .fill{width:0;background:linear-gradient(90deg,var(--accent),var(--accent2));transition:width 1.4s cubic-bezier(.2,.8,.2,1)}.node{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;position:relative;z-index:1;min-width:0}.node .dot{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;position:relative;background:var(--bg);border:3px solid var(--line);font-family:var(--font-head);font-size:18px;color:var(--muted);transition:border-color .4s,background .4s,color .4s,transform .4s}.node .dot svg{position:absolute;inset:-3px;width:calc(100% + 6px);height:calc(100% + 6px);transform:rotate(-90deg)}.node .dot circle{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset 1s cubic-bezier(.2,.8,.2,1)}.node.is-done .dot{background:var(--accent);border-color:var(--accent);color:var(--bg)}.node.is-now .dot{border-color:var(--accent);color:var(--accent)}.node.is-now .dot:after{content:"";position:absolute;inset:-9px;border-radius:50%;border:2px solid var(--accent);animation:pulse 2s ease-out infinite}@keyframes pulse{0%{transform:scale(.85);opacity:.8}to{transform:scale(1.3);opacity:0}}.node .txt{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0}.node b{font-size:13px;line-height:1.35}.node small{font-size:12px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.node.is-done small{color:var(--accent);font-weight:700}.ach.play .node{animation:rise .6s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(var(--i) * 90ms + .2s)}.ach.play .node .dot{animation:seatpop .55s cubic-bezier(.3,1.6,.5,1) backwards;animation-delay:calc(var(--i) * 90ms + .25s)}.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.tile{border-radius:14px;padding:14px 16px;background:var(--surface);display:flex;flex-direction:column;gap:8px;min-width:0}.tile .k{font-size:12px;color:var(--muted)}.tile .v{font-family:var(--font-head);font-size:26px;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tile .v small{font-size:14px;color:var(--muted);margin-left:4px;font-family:var(--font-body)}.tile .pips{display:flex;gap:4px;flex-wrap:wrap}.tile .pip{flex:1 1;min-width:10px;height:8px;border-radius:4px;background:var(--line);transition:background .4s}.tile .pip.on{background:var(--accent)}.tile .pip.need{box-shadow:inset 0 0 0 1.5px var(--accent)}.ach.play .tile{animation:rise .6s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(var(--i) * 80ms + .6s)}.ach.play .tile .pip.on{animation:seatpop .4s cubic-bezier(.3,1.6,.5,1) both;animation-delay:calc(var(--p) * 60ms + .9s)}.achform{border-top:1px dashed var(--line);padding-top:18px;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:10px;gap:10px;animation:rise .45s cubic-bezier(.2,.8,.2,1) both}.frow{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid var(--line)}.frow label,.frow>span{font-size:14px;line-height:1.4}.frow small{display:block;font-size:12px;color:var(--muted)}.stepper{display:flex;align-items:center;gap:6px;flex:none}.stepper button{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:var(--bg);color:var(--fg);font-size:18px;cursor:pointer;transition:transform .15s,background .2s}.stepper button:hover{background:var(--accent-soft)}.stepper button:active{transform:scale(.88)}.stepper button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.stepper output{min-width:2.2em;text-align:center;font-family:var(--font-head);font-size:18px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.switch{position:relative;width:48px;height:28px;flex:none}.switch input{position:absolute;inset:0;opacity:0;cursor:pointer;margin:0;z-index:1}.switch span{position:absolute;inset:0;border-radius:999px;background:var(--line);transition:background .3s}.switch span:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:var(--bg);box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .35s cubic-bezier(.3,1.5,.5,1)}.switch input:checked+span{background:var(--accent)}.switch input:checked+span:after{transform:translateX(20px)}.switch input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.cards-title{margin-top:4px}.confetti{position:fixed;z-index:60;width:8px;height:12px;border-radius:2px;pointer-events:none;animation:conf 1.4s cubic-bezier(.2,.6,.4,1) forwards}@keyframes conf{to{transform:translate(var(--x),var(--y)) rotate(var(--r));opacity:0}}.toast{position:fixed;z-index:70;left:50%;bottom:calc(env(safe-area-inset-bottom, 0px) + 24px);transform:translate(-50%,30px);opacity:0;pointer-events:none;background:var(--fg);color:var(--bg);padding:10px 18px;border-radius:999px;font-size:14px;font-weight:700;box-shadow:0 10px 30px -10px rgba(0,0,0,.4);transition:transform .4s cubic-bezier(.3,1.4,.5,1),opacity .3s;max-width:calc(100% - 32px);text-align:center}.toast.show{transform:translate(-50%);opacity:1}.ripple{position:absolute;border-radius:50%;background:currentColor;opacity:.25;transform:scale(0);animation:ripple .6s ease-out forwards;pointer-events:none}@keyframes ripple{to{transform:scale(2.6);opacity:0}}.hero h1 .ch1{display:inline-block;animation:charin .6s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--c) * 35ms)}@keyframes charin{0%{opacity:0;transform:translateY(.4em) rotate(4deg)}to{opacity:1;transform:none}}.rv.in .steps .step{animation:rise .6s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(var(--k) * .11s)}.rv.in .steps .step .dot{animation:seatpop .5s cubic-bezier(.3,1.6,.5,1) backwards;animation-delay:calc(var(--k) * .11s + .1s)}.rv.in .step:not(:last-child):before{animation:grow .5s ease backwards;animation-delay:calc(var(--k) * .11s + .25s);transform-origin:top}@keyframes grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.rv.in .levels li{animation:fromL .5s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(var(--k) * 80ms)}.rv.in .timeline div{animation:seg .7s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(var(--k) * 90ms);transform-origin:left}@keyframes seg{0%{transform:scaleX(0);opacity:.3}to{transform:none;opacity:1}}.rv.in .pass .tier,.rv.in .rules .rule{animation:fromR .55s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(var(--k) * 90ms)}.rv.in .cards>*,.rv.in .ex-grid>*{animation:rise .6s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(min(var(--k), 8) * 70ms)}.rv.in .tbl tr{animation:rowin .45s ease backwards;animation-delay:calc(min(var(--k), 10) * 40ms)}@keyframes rowin{0%{opacity:.2;transform:translateX(-8px)}to{opacity:1;transform:none}}.rv.in .callout{animation:glow 1.2s ease backwards}@keyframes glow{0%{box-shadow:0 0 0 0 var(--accent)}40%{box-shadow:0 0 0 4px var(--accent-soft)}to{box-shadow:0 0 0 0 transparent}}details>:not(summary){transition:none}details[open]>:not(summary){animation:open .4s cubic-bezier(.2,.8,.2,1)}@keyframes open{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}summary:after{transition:transform .3s;display:inline-block}details[open] summary:after{transform:rotate(180deg)}@media (max-width:760px){.ach{padding:18px}.ach-body{justify-items:center}.ach-body,.road{grid-template-columns:minmax(0,1fr)}.road{gap:14px;width:100%}.road .fill,.road:before{top:27px;bottom:27px;left:25px;right:auto;width:4px;height:auto}.road .fill{height:0;transition:height 1.4s cubic-bezier(.2,.8,.2,1);background:linear-gradient(180deg,var(--accent),var(--accent2))}.node{flex-direction:row;text-align:left;gap:14px}.node .txt{align-items:flex-start}.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}main{min-width:0}.chapter{display:flex;flex-direction:column;gap:36px}.enter-next{animation:fromR .5s cubic-bezier(.2,.8,.2,1) both}.enter-prev{animation:fromL .5s cubic-bezier(.2,.8,.2,1) both}.enter-up{animation:rise .55s cubic-bezier(.2,.8,.2,1) both}@keyframes fromR{0%{opacity:.2;transform:translateX(40px)}to{opacity:1;transform:none}}@keyframes fromL{0%{opacity:.2;transform:translateX(-40px)}to{opacity:1;transform:none}}.rv.in{animation:rise .7s cubic-bezier(.2,.8,.2,1) backwards}.chead h1{animation:rise .6s cubic-bezier(.2,.8,.2,1) .05s both}.chead .eyebrow{animation:rise .5s cubic-bezier(.2,.8,.2,1) both}.chead{position:relative}.chead:after{content:"";position:absolute;left:0;bottom:-2px;height:2px;width:100%;background:var(--accent);transform-origin:0 50%;animation:line .9s cubic-bezier(.7,0,.2,1) .15s both}@keyframes line{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.chead{display:flex;flex-direction:column;gap:8px;padding-bottom:20px;border-bottom:2px solid var(--fg)}.chead .eyebrow{font-size:13px;color:var(--accent);font-weight:700;letter-spacing:.1em}h1{font-family:var(--font-head);font-size:clamp(28px,4vw,38px);line-height:1.3;margin:0;text-wrap:balance}.lead{color:var(--muted);margin:0;max-width:40em}section{display:flex;flex-direction:column;gap:14px}h2{font-family:var(--font-head);font-size:22px;line-height:1.45;margin:0;text-wrap:balance}h3{font-size:17px;margin:8px 0 0}p{margin:0;max-width:40em}ol.list,ul{margin:0;padding-left:1.3em;display:flex;flex-direction:column;gap:6px;max-width:42em}b,strong{font-weight:700}.tbl{overflow-x:auto;border:1px solid var(--line);border-radius:10px}table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.7}td,th{text-align:left;vertical-align:top;padding:12px 14px;border-bottom:1px solid var(--line)}tr:last-child td{border-bottom:0}th{background:var(--surface);font-size:13px;color:var(--muted)}td:first-child,th{font-weight:700;white-space:nowrap}.wide table{min-width:860px}.wide td:first-child{background:var(--bg)}.wide td:first-child,.wide th:first-child{position:-webkit-sticky;position:sticky;left:0}.say{color:var(--accent)}.todo{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:999px;background:var(--todo-soft);color:var(--todo);font-size:13px;font-weight:700;white-space:nowrap}.todo:before{content:"準備中"}.todobox{border:1.5px dashed var(--todo);background:var(--todo-soft);border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:4px;color:var(--fg)}.todobox strong{color:var(--todo);font-size:14px}.callout{background:var(--accent-soft);border-radius:10px;padding:16px 18px}.callout p{max-width:none}.big{font-family:var(--font-head);font-size:clamp(22px,3vw,28px);line-height:1.5}.steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.step{display:grid;grid-template-columns:44px minmax(0,1fr);grid-gap:16px;gap:16px;position:relative;padding-bottom:22px}.step:not(:last-child):before{content:"";position:absolute;left:21px;top:44px;bottom:0;width:2px;background:var(--line)}.step .dot{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--bg);font-family:var(--font-head);font-size:18px}.step .body{display:flex;flex-direction:column;gap:4px;padding-top:6px}.step .body h3{margin:0;font-size:18px;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.step .qty{font-weight:500}.step .gate,.step .qty{font-size:14px;color:var(--muted)}.step .gate b{color:var(--fg)}.rules{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.rule{display:grid;grid-template-columns:36px minmax(0,1fr);grid-gap:14px;gap:14px;padding:16px;border:1px solid var(--line);border-radius:10px}.rule .num{font-family:var(--font-head);font-size:24px;color:var(--accent);line-height:1.2}.rule .body{display:flex;flex-direction:column;gap:6px;min-width:0}.rule .ex{font-size:14px;color:var(--muted)}details{border:1px solid var(--line);border-radius:10px}details+details{margin-top:-6px}summary{cursor:pointer;padding:14px 16px;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:12px}summary::-webkit-details-marker{display:none}summary:after{content:"＋";color:var(--accent)}details[open] summary:after{content:"－"}summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:10px}details>ul{padding:0 16px 16px 2.3em}.levels{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.levels li{display:grid;grid-template-columns:64px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:baseline;padding:10px 14px;border-radius:8px;background:var(--surface)}.levels li .lv{font-family:var(--font-head);font-size:15px;color:var(--muted)}.levels li.goal{background:var(--accent-soft);outline:1.5px solid var(--accent)}.levels .tag,.levels li.goal .lv{color:var(--accent)}.levels .tag{font-size:12px;font-weight:700;margin-left:6px;white-space:nowrap}.timeline{display:flex;height:44px;border-radius:8px;overflow:hidden;gap:2px}.timeline div{display:grid;place-items:center;background:var(--surface);font-size:12px;color:var(--muted);min-width:0;white-space:nowrap;overflow:hidden}.timeline .hot{background:var(--accent);color:var(--bg);font-weight:700}.timeline-legend{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.jumps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));grid-gap:8px;gap:8px}.jumps li{display:flex;gap:10px;align-items:baseline;padding:10px 14px;border:1px solid var(--line);border-radius:8px}.jumps .n{font-family:var(--font-head);color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:1.4em}h2 .count{font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--muted);margin-left:10px}.ex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:16px;gap:16px}.excard{border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;background:var(--bg);min-width:0}.excard .shot{display:block;padding:0;border:0;background:var(--surface);cursor:zoom-in;aspect-ratio:16/9;width:100%;max-width:100%}.excard .shot img{width:100%;height:100%;object-fit:cover;display:block}.excard .shot:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.excard .info{padding:14px 16px 16px;display:flex;flex-direction:column;gap:10px}.excard h3{margin:0;font-size:18px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{font-size:12px;padding:2px 10px;border-radius:999px;background:var(--surface);color:var(--muted)}.chip b{color:var(--fg);font-weight:700;margin-left:4px}.excard dl{margin:0;display:grid;grid-template-columns:6.5em minmax(0,1fr);grid-gap:6px 10px;gap:6px 10px;font-size:14px;line-height:1.7}.excard dt{color:var(--muted);font-size:13px}.excard dd{margin:0}.excard .new{font-size:11px;font-weight:700;color:var(--accent);background:var(--accent-soft);border-radius:4px;padding:1px 6px;margin-left:8px;vertical-align:2px}.noimg{aspect-ratio:16/4;max-width:100%;background:var(--surface);display:flex;align-items:center;justify-content:center;gap:8px;color:var(--muted);font-size:13px}.lightbox{position:fixed;inset:0;z-index:50;background:rgba(10,12,16,.88);display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));cursor:zoom-out}.lightbox img{max-width:100%;max-height:100%;border-radius:8px}.cues{columns:240px 2;column-gap:24px;padding:0 16px 16px 2.6em;margin:0}.cues li{page-break-inside:avoid;break-inside:avoid;margin-bottom:4px}.seats{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:12px;gap:12px}.seat{border:1px solid var(--line);border-radius:12px;padding:12px 12px 10px;display:flex;flex-direction:column;gap:6px;background:var(--bg)}.seat h3{margin:0;font-size:15px;display:flex;justify-content:space-between;align-items:baseline;gap:8px}.seat h3 small{font-size:12px;font-weight:500;color:var(--muted)}.seat svg{width:100%;height:auto;display:block}.seat .wall{fill:var(--accent-soft)}.seat .wallt{fill:var(--accent);font-size:11px;font-weight:700}.seat .door{fill:var(--muted);font-size:10px}.seat .doorline{stroke:var(--line);stroke-width:2}.seat .floor{fill:var(--surface)}.seat .empty{fill:none;stroke:var(--muted);stroke-width:1.5;stroke-dasharray:3 3;opacity:.6}.seat .on{fill:var(--accent);transform-box:fill-box;transform-origin:center}.seat .lbl{fill:var(--muted);font-size:9px}.seat .onl{fill:var(--bg);font-size:11px;font-weight:700}.seat.in .on{animation:seatpop .5s cubic-bezier(.3,1.6,.5,1) both;animation-delay:calc(var(--d) * 70ms)}@keyframes seatpop{0%{transform:scale(.3)}to{transform:scale(1)}}.pass{display:flex;flex-direction:column;gap:10px}.pass .tier{display:grid;grid-template-columns:112px minmax(0,1fr);grid-gap:16px;gap:16px;padding:16px;border-radius:10px;background:var(--surface)}.pass .tier:first-child{background:var(--accent-soft)}.pass .tier .k{font-family:var(--font-head);font-size:17px}.pass .tier .num{font-family:var(--font-head);color:var(--accent);font-size:1.15em}.readrow{display:flex;justify-content:center;border-top:1px solid var(--line);padding-top:28px;margin-top:12px}.readbtn{font:inherit;font-size:15px;font-weight:700;cursor:pointer;border-radius:999px;padding:12px 22px;border:1.5px solid var(--accent);background:var(--bg);color:var(--accent);display:inline-flex;align-items:center;gap:10px;transition:background .25s,color .25s,transform .15s;position:relative}.readbtn:active{transform:scale(.96)}.readbtn .box{width:20px;height:20px;border-radius:50%;border:1.5px solid;display:grid;place-items:center;font-size:12px;transition:transform .3s}.readbtn[aria-pressed=true]{background:var(--accent);color:var(--bg)}.readbtn[aria-pressed=true] .box{background:var(--bg);color:var(--accent);border-color:var(--bg);animation:pop .45s cubic-bezier(.3,1.6,.5,1)}@keyframes pop{0%{transform:scale(.4)}to{transform:scale(1)}}.burst{position:absolute;left:32px;top:50%;width:6px;height:6px;margin:-3px;border-radius:50%;background:var(--accent);pointer-events:none;animation:burst .7s ease-out forwards}@keyframes burst{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(var(--x),var(--y)) scale(.4)}}.readbtn:focus-visible{outline:2px solid var(--fg);outline-offset:3px}.pager{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin-top:20px}.pager button{font:inherit;text-align:left;cursor:pointer;border-radius:14px;padding:14px 16px;border:1px solid var(--line);background:var(--bg);color:var(--fg);display:flex;flex-direction:column;gap:2px;line-height:1.45;transition:border-color .25s,transform .25s,box-shadow .25s}.pager button:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 10px 24px -16px rgba(20,40,80,.5)}.pager button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pager small{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:6px}.pager .next{text-align:right;grid-column:2}.pager .next small{justify-content:flex-end;color:var(--accent)}.pager b{font-size:15px}.pager .arr{display:inline-block;transition:transform .25s}.pager .next:hover .arr{transform:translateX(4px)}.pager .prev:hover .arr{transform:translateX(-4px)}.totop{position:fixed;z-index:20;right:calc(max(16px, env(safe-area-inset-right, 0px)) + 4px);bottom:calc(env(safe-area-inset-bottom, 0px) + 20px);width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:var(--bg);color:var(--accent);font-size:18px;cursor:pointer;box-shadow:0 8px 22px -10px rgba(0,0,0,.35);transition:opacity .3s,transform .3s;opacity:0;transform:translateY(16px) scale(.8);pointer-events:none}.totop.show{opacity:1;transform:none;pointer-events:auto}.totop:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (hover:hover){.excard{transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s}.excard:hover{transform:translateY(-3px);box-shadow:0 16px 30px -20px rgba(20,40,80,.55)}.excard .shot img{transition:transform .6s cubic-bezier(.2,.8,.2,1)}.excard .shot:hover img{transform:scale(1.05)}.excard .shot{overflow:hidden}}.lightbox{animation:fade .25s ease both}.lightbox img{animation:zoom .35s cubic-bezier(.2,.8,.2,1) both}@keyframes fade{0%{opacity:0}}@keyframes zoom{0%{transform:scale(.92);opacity:.4}}.step .dot{transition:transform .3s}.step:hover .dot{transform:scale(1.08)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-delay:0s!important;transition-duration:.001ms!important;transition-delay:0s!important}.hero:after{animation:none}}@media (max-width:640px){.hero{grid-template-columns:minmax(0,1fr);padding:22px}.bigring{width:104px;height:104px}.ring span{display:none}.pass .tier{gap:4px}.levels li,.pass .tier{grid-template-columns:minmax(0,1fr)}.levels li{gap:0}}.boot{min-height:100vh;display:grid;place-items:center}.spinner{width:36px;height:36px;border-radius:50%;border:3px solid var(--surface);border-top-color:var(--accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.linkbtn{font:inherit;font-size:13px;color:var(--accent);background:none;border:0;padding:4px 0;cursor:pointer;text-align:left;text-decoration:underline;text-underline-offset:3px}.primary{font:inherit;font-weight:700;font-size:15px;padding:12px 20px;border-radius:999px;border:0;background:var(--accent);color:var(--bg);cursor:pointer;transition:transform .15s,opacity .2s}.primary:disabled{opacity:.5;cursor:default}.primary:active:not(:disabled){transform:scale(.97)}.primary:focus-visible{outline:3px solid var(--fg);outline-offset:2px}.err{color:#C0392B;font-size:14px}input,select{font:inherit;font-size:16px;padding:11px 14px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--fg);width:100%;transition:border-color .2s,box-shadow .2s}input:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.login{min-height:100vh;display:grid;place-items:center;background:radial-gradient(1200px 600px at 10% -10%,var(--accent-soft),transparent 60%),var(--bg);padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:40px}.login-card{width:min(440px,100%);border:1px solid var(--line);border-radius:20px;padding:32px 28px;background:var(--bg);box-shadow:0 30px 60px -40px rgba(20,40,80,.45);display:flex;flex-direction:column;gap:18px}.login-card .eyebrow{font-size:12px;color:var(--accent);font-weight:700;letter-spacing:.14em}.login-card h1{font-size:26px}.login-card form{display:flex;flex-direction:column;gap:10px}.login-card label{font-size:13px;color:var(--muted)}.login-card .note{font-size:12.5px;color:var(--muted)}.sent{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.sent .mail{font-size:40px;color:var(--accent);animation:seatpop .6s cubic-bezier(.3,1.6,.5,1) both}.demo{border-top:1px dashed var(--line);padding-top:16px;display:flex;flex-direction:column;gap:10px;font-size:13px;color:var(--muted)}.demo-row{display:flex;flex-wrap:wrap;gap:8px}.demo-row button{font:inherit;font-size:13px;padding:8px 12px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--fg);cursor:pointer}.demo-row button:hover{border-color:var(--accent);color:var(--accent)}.admin{gap:28px}.admin,.invite{display:flex;flex-direction:column}.invite{border:1px solid var(--line);border-radius:16px;padding:20px;gap:14px}.fgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:12px;gap:12px}.fgrid label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}.invite .primary{align-self:flex-start}.people{flex-direction:column}.people,.people-head{display:flex;gap:12px}.people-head{justify-content:space-between;align-items:center;flex-wrap:wrap}.people-head small{font-size:14px;color:var(--muted);font-weight:500}.search{width:min(280px,100%)}.empty-state{color:var(--muted);padding:24px;border:1px dashed var(--line);border-radius:12px;text-align:center}.role{font-size:12px;padding:2px 10px;border-radius:999px;background:var(--surface)}.role-trainer{background:var(--accent-soft);color:var(--accent)}.role-admin{background:var(--todo-soft);color:var(--todo)}.people tbody tr{animation:rowin .45s ease backwards;animation-delay:calc(min(var(--k), 10) * 40ms)}.page{gap:28px}.page,.page>section{display:flex;flex-direction:column}.page>section{gap:14px}.editbtn{text-decoration:none;display:inline-flex;align-items:center}.drawer .sep{height:1px;background:var(--line);margin:8px 12px}.badge-new,.dotnew{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--todo);color:var(--bg);font-size:11px;font-weight:700;animation:seatpop .5s cubic-bezier(.3,1.6,.5,1) both}.badge-new{height:auto;padding:2px 10px;font-size:12px;white-space:nowrap}.burger{position:relative}.burger-dot{position:absolute;top:9px;right:9px;width:9px;height:9px;border-radius:50%;background:var(--todo);box-shadow:0 0 0 2px var(--bg);animation:pulse2 1.8s ease-in-out infinite}@keyframes pulse2{50%{transform:scale(1.3)}}textarea{font:inherit;font-size:16px;line-height:1.7;padding:11px 14px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--fg);width:100%;resize:vertical;transition:border-color .2s,box-shadow .2s}textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.slot{display:flex;align-items:center;gap:10px;padding:14px;border-radius:14px;border:1.5px dashed var(--line);color:var(--muted);font-weight:700;animation:rise .5s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(var(--k) * 90ms)}.slot.on{border:1.5px solid var(--accent);background:var(--accent-soft);color:var(--accent)}.slot-dot{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--surface);flex:none}.slot.on .slot-dot{background:var(--accent);color:var(--bg);animation:seatpop .5s cubic-bezier(.3,1.6,.5,1) backwards;animation-delay:calc(var(--k) * 90ms + .2s)}.visit-form{border:1px solid var(--line);border-radius:16px;padding:20px;gap:12px}.visit-form,.visit-form label{display:flex;flex-direction:column}.visit-form label{gap:6px;font-size:13px;color:var(--muted)}.visit-form input[type=date]{max-width:220px}.visit-form .primary{align-self:flex-start}.visits{list-style:none;margin:0;padding:0;gap:16px}.visit,.visits{display:flex;flex-direction:column}.visit{border:1px solid var(--line);border-radius:16px;padding:18px;gap:12px;animation:rise .55s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(var(--k) * 80ms)}.visit-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.vnum{font-family:var(--font-head);color:var(--accent);font-size:17px}.visit-head time{color:var(--muted);font-size:13px}.visit-head .badge-new{margin-left:auto}.impression{white-space:pre-wrap;max-width:none;background:var(--surface);border-radius:12px;padding:12px 14px}.thread{gap:10px}.msgs,.thread{display:flex;flex-direction:column}.msgs{list-style:none;margin:0;padding:0;gap:8px}.msg{max-width:min(560px,92%);padding:10px 14px;border-radius:14px 14px 14px 4px;background:var(--accent-soft);animation:rise .45s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(min(var(--k), 6) * 60ms)}.msg.from-trainee{background:var(--surface)}.msg.mine{align-self:flex-end;border-radius:14px 14px 4px 14px}.msg .who{display:flex;gap:8px;align-items:baseline;font-size:12px;color:var(--muted);flex-wrap:wrap}.msg .who b{color:var(--fg);font-size:13px}.msg p{white-space:pre-wrap;max-width:none;font-size:15px}.reply{display:flex;gap:8px;align-items:flex-end}.reply textarea{min-height:46px}.reply .primary{flex:none;padding:11px 18px}.sumchips{display:flex;gap:8px;flex-wrap:wrap}.chip.hot{background:var(--todo-soft)}.chip.hot,.chip.hot b{color:var(--todo)}.filters{display:flex;gap:12px;flex-wrap:wrap}.check,.filters{align-items:center}.check{display:inline-flex;gap:6px;font-size:14px;cursor:pointer}.check input{width:18px;height:18px;accent-color:var(--accent)}.trainee-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.trow{display:grid;grid-template-columns:44px minmax(0,1fr) auto auto auto 24px;grid-gap:14px;gap:14px;align-items:center;padding:12px 16px;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:var(--fg);background:var(--bg);transition:border-color .25s,transform .25s,box-shadow .25s}.trow:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 12px 26px -18px rgba(20,40,80,.5)}.trow:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.avatar{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),var(--accent2));color:var(--bg);font-family:var(--font-head);font-size:18px}.tmain{display:flex;flex-direction:column;min-width:0;line-height:1.5}.tmain small{color:var(--muted);font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stage{font-size:13px;font-weight:700;color:var(--accent);background:var(--accent-soft);padding:3px 10px;border-radius:999px;white-space:nowrap}.mini{display:flex;gap:3px}.mini i{width:14px;height:6px;border-radius:3px;background:var(--line)}.mini i.on{background:var(--accent)}.trow .go{color:var(--accent);transition:transform .25s}.trow:hover .go{transform:translateX(4px)}.badge-none{width:0}.boot.small{min-height:160px}.rec{border:1px solid var(--line);border-radius:16px;padding:20px}.rec-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.rec .note{font-size:13px;color:var(--muted)}.rec .achform{border-top:0;padding-top:4px}@media (max-width:640px){.trow{grid-template-columns:40px minmax(0,1fr) auto;row-gap:8px}.trow .avatar{width:40px;height:40px}.trow .stage{grid-column:2;justify-self:start}.trow .mini{grid-column:3;grid-row:2}.trow .badge-new{grid-column:3;grid-row:1}.trow .badge-none,.trow .go{display:none}.slots{grid-template-columns:minmax(0,1fr)}.reply{flex-direction:column;align-items:stretch}}.frow.locked{opacity:.45}.frow.locked .switch input,.stepper button:disabled{cursor:not-allowed}.stepper button:disabled{opacity:.4}.gate{font-size:13px;color:var(--todo);background:var(--todo-soft);border-radius:10px;padding:8px 12px;max-width:none}:root{--ok:#1F7A4D;--ok-soft:#E3F4EA;--ng:#B4232C;--ng-soft:#FBE7E8}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ok:#6FD39C;--ok-soft:#173326;--ng:#FF8A8F;--ng-soft:#3A1A1C}}:root[data-theme=dark]{--ok:#6FD39C;--ok-soft:#173326;--ng:#FF8A8F;--ng-soft:#3A1A1C}.legend{display:flex;gap:6px 14px;flex-wrap:wrap;align-items:center;font-size:12.5px;color:var(--muted)}.kdots i,.ktab>i,.legend i{display:inline-block;width:12px;height:12px;border-radius:4px;background:var(--line);margin-right:4px;vertical-align:-1px}i.s-ok{background:var(--ok)!important}i.s-ng{background:var(--ng)!important}i.s-part{background:var(--accent)!important;opacity:.45}i.s-todo{background:var(--line)}.sessions{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.srow{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto 24px;grid-gap:14px;gap:14px;align-items:center;padding:12px 16px;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:var(--fg);transition:border-color .25s,transform .25s,box-shadow .25s}.srow:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 12px 26px -18px rgba(20,40,80,.5)}.srow:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.srow .go{color:var(--accent);transition:transform .25s}.srow:hover .go{transform:translateX(4px)}.kind{font-size:12.5px;font-weight:700;padding:3px 10px;border-radius:999px;white-space:nowrap;background:var(--surface)}.kind-prep1,.kind-prep2{background:var(--accent-soft);color:var(--accent)}.kind-practice{background:var(--ok-soft);color:var(--ok)}.kind-judge{background:var(--todo-soft);color:var(--todo)}.sdate{font-family:var(--font-head);font-size:17px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kdots{display:flex;gap:5px}.kdots i{width:22px;height:10px;margin:0;border-radius:5px}.addses{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;padding:14px;border-radius:14px;background:var(--surface)}.addses label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}.addses input,.addses select{width:auto;min-width:160px}.ktabs{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--line)}.ktab{font:inherit;font-size:15px;font-weight:700;padding:12px 6px;border:0;background:none;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;transition:color .25s}.ktab.on{color:var(--accent)}.ktab:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:8px}.ktab-bar{position:absolute;left:0;bottom:-1px;width:25%;height:3px;border-radius:3px;background:var(--accent);transition:transform .45s cubic-bezier(.3,1.3,.5,1)}.koma{animation:rise .45s cubic-bezier(.2,.8,.2,1) both}.csum{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:14px;color:var(--muted)}.csum b{color:var(--ok)}.cbar{display:flex;height:10px;width:min(280px,100%);border-radius:5px;overflow:hidden;background:var(--line)}.cbar i{display:block;height:100%;transition:flex .5s cubic-bezier(.2,.8,.2,1)}.cbar i.s-todo{background:var(--line)}.checks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.check-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);transition:background .3s,border-color .3s;animation:rowin .4s ease backwards;animation-delay:calc(min(var(--k), 10) * 35ms)}.check-row.is-ok{background:var(--ok-soft);border-color:transparent}.check-row.is-ng{background:var(--ng-soft);border-color:transparent}.ctext{display:flex;flex-direction:column;gap:2px;min-width:0}.ctext small{color:var(--muted);font-size:12.5px;line-height:1.6}.ex-tag{font-style:normal;margin-left:8px;color:var(--todo);font-weight:700;white-space:nowrap}.seg{display:flex;flex:none;border-radius:999px;background:var(--bg);border:1px solid var(--line);padding:3px;gap:3px}.seg button{width:44px;height:36px;border-radius:999px;border:0;background:none;font-size:18px;font-weight:700;color:var(--muted);cursor:pointer;transition:background .2s,color .2s,transform .15s}.seg button:active{transform:scale(.88)}.seg button.on.ok{background:var(--ok)}.seg button.on.ng,.seg button.on.ok{color:var(--bg);animation:seatpop .35s cubic-bezier(.3,1.6,.5,1)}.seg button.on.ng{background:var(--ng)}.seg button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.mark{flex:none;font-weight:700;font-size:18px;color:var(--muted)}.mark.ok{color:var(--ok)}.mark.ng{color:var(--ng)}.ops{border:1px solid var(--line);border-radius:16px;padding:18px}.ops .note{font-size:13px;color:var(--muted);max-width:none}.row-between{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.linkbtn.muted{color:var(--muted)}.confirm{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px}.danger{font:inherit;font-size:13px;font-weight:700;padding:6px 14px;border-radius:999px;border:0;background:var(--ng);color:var(--bg);cursor:pointer}@media (max-width:640px){.srow{grid-template-columns:auto minmax(0,1fr) auto;row-gap:8px}.srow .kdots{grid-column:1/-1;grid-row:2}.srow .go{display:none}.check-row{flex-direction:column;align-items:stretch}.seg{align-self:flex-end}.ktab{font-size:13px;white-space:nowrap;gap:3px}}.primary.sm{font-size:13px;padding:8px 14px}.muted{color:var(--muted)}.verdict{border-radius:20px;padding:22px;display:flex;flex-direction:column;gap:12px;background:var(--surface);border:2px solid var(--line);position:relative;overflow:hidden}.verdict.v-pass{background:var(--ok-soft);border-color:var(--ok)}.verdict.v-fail{background:var(--ng-soft);border-color:var(--ng)}.vmain{display:flex;align-items:center;gap:8px 18px;flex-wrap:wrap}.vlabel{font-size:13px;font-weight:700;color:var(--muted);letter-spacing:.1em}.vword{font-family:var(--font-head);font-size:clamp(30px,6vw,44px);line-height:1;animation:seatpop .6s cubic-bezier(.3,1.6,.5,1) both}.v-pass .vword{color:var(--ok)}.v-fail .vword{color:var(--ng)}.v-pending .vword,.vmain small{color:var(--muted)}.vmain small{flex-basis:100%;font-size:13px}.vdots{display:flex;gap:6px}.vdots i{width:26px;height:26px;border-radius:50%;background:var(--line);animation:seatpop .5s cubic-bezier(.3,1.6,.5,1) backwards;animation-delay:calc(var(--k) * 90ms + .2s)}.vdots i.v-pass{background:var(--ok)}.vdots i.v-fail{background:var(--ng)}.vdots i.v-pending{background:var(--bg);box-shadow:inset 0 0 0 2px var(--line)}.pubbox{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.pubd{font-size:14px;color:var(--ok);font-weight:700;max-width:none}.verdict .note{font-size:13px;color:var(--muted);max-width:none}.kstatus{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;padding:10px 14px;border-radius:12px;background:var(--surface)}.kstatus.v-pass{background:var(--ok-soft);color:var(--ok)}.kstatus.v-fail{background:var(--ng-soft);color:var(--ng)}.kstatus small{color:var(--muted);font-size:12.5px}.measure{border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:10px}.measure.pass{border-color:var(--ok)}.measure.fail{border-color:var(--ng)}.measure.empty{border-style:dashed}.mhead{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.mhead small{color:var(--muted);font-size:12.5px}.mhead .linkbtn{margin-left:auto}.vchip{font-size:12px;font-weight:700;padding:2px 10px;border-radius:999px;color:var(--bg)}.vchip.pass{background:var(--ok)}.vchip.fail{background:var(--ng)}.mcats{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));grid-gap:8px 16px;gap:8px 16px}.mcat{display:grid;grid-template-columns:6.5em minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:center;font-size:13px;animation:rowin .45s ease backwards;animation-delay:calc(var(--k) * 70ms)}.mcat b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mcat b small{color:var(--muted);font-weight:400}.mcat.ng b{color:var(--ng)}.mbar{position:relative;height:8px;background:var(--surface)}.mbar,.mbar i{border-radius:4px}.mbar i{position:absolute;inset:0 auto 0 0;background:var(--ok);transition:width .9s cubic-bezier(.2,.8,.2,1);animation:seg .9s cubic-bezier(.2,.8,.2,1) both;transform-origin:left}.mcat.ng .mbar i{background:var(--ng)}.mbar em{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--fg);opacity:.55}.mlink{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.mlink select{width:auto;flex:1 1;min-width:200px}.mmanual{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.mmanual small{color:var(--muted);font-size:12.5px}.pill{font:inherit;font-size:13px;font-weight:700;padding:6px 14px;border-radius:999px;border:1.5px solid;background:var(--bg);cursor:pointer}.pill.ok{color:var(--ok)}.pill.ng{color:var(--ng)}.pill:hover{background:var(--surface)}.adminbar{justify-content:space-between;align-items:center;flex-wrap:wrap;padding:10px 14px;border-radius:12px;background:var(--accent-soft);font-size:14px;color:var(--muted);animation:open .4s ease both}.adminbar,.editbar{display:flex;gap:12px;margin-bottom:20px}.editbar{position:-webkit-sticky;position:sticky;top:64px;z-index:12;flex-direction:column;padding:16px;border-radius:16px;border:1.5px solid var(--accent);background:var(--bar);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 10px 30px rgba(20,40,80,.12);animation:open .35s cubic-bezier(.2,.8,.2,1) both}.editbar-head{display:flex;flex-direction:column;gap:2px}.editbar-head small{color:var(--muted);font-size:13px;line-height:1.6}.editbar-btns{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.editbar-btns .grow{flex:1 1}.tool{font:inherit;font-size:13px;padding:7px 12px;border-radius:8px;border:1px solid var(--line);background:var(--bg);color:var(--fg);cursor:pointer;transition:background .2s,transform .15s}.tool:hover{background:var(--surface)}.tool:active{transform:scale(.94)}.chapter.is-editing{outline:2px dashed var(--accent);outline-offset:10px;border-radius:6px;caret-color:var(--accent);animation:editglow 1.2s ease 1}.chapter.is-editing:focus{outline-style:solid}.chapter.is-editing>*{opacity:1!important;transform:none!important}.is-editing~.pager,.is-editing~.readrow{display:none}.slot-ph{min-height:64px;border:2px dashed var(--line);border-radius:12px;display:grid;place-items:center;color:var(--muted);font-size:13px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.slot-ph:before{content:"（ここに種目カード・配置図が入ります。資料の中身の画面で直します）";padding:12px;text-align:center}@keyframes editglow{0%{box-shadow:0 0 0 0 var(--accent-soft)}50%{box-shadow:0 0 0 12px var(--accent-soft)}to{box-shadow:0 0 0 0 transparent}}.primary.small{font-size:14px;padding:9px 16px}.linkcard{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:16px;border:1px solid var(--line);color:inherit;text-decoration:none;transition:border-color .2s,transform .2s,box-shadow .2s}.linkcard:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 8px 20px rgba(20,40,80,.08)}.linkcard>span:nth-child(2){flex:1 1;display:flex;flex-direction:column}.linkcard small{color:var(--muted);font-size:13px;line-height:1.6}.lc-icon{width:44px;height:44px;flex:none;display:grid;place-items:center;border-radius:12px;background:var(--accent-soft)}.lc-icon,.linkcard .go{color:var(--accent);font-size:20px}.linkcard .go{transition:transform .2s}.linkcard:hover .go{transform:translateX(4px)}.tabs{position:-webkit-sticky;position:sticky;top:64px;z-index:5;display:flex;gap:4px;padding:4px;border-radius:999px;background:var(--surface);overflow-x:auto;scrollbar-width:none}.tabs button{flex:1 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-size:14px;font-weight:700;padding:8px 14px;border:0;border-radius:999px;background:none;color:var(--muted);cursor:pointer;white-space:nowrap;transition:background .25s,color .25s,box-shadow .25s}.tabs button.on{background:var(--bg);color:var(--accent);box-shadow:0 2px 8px rgba(20,40,80,.1)}.tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.tabpanel{display:flex;flex-direction:column;gap:18px;animation:open .35s ease both}.hint{color:var(--muted);font-size:14px;margin:0;padding:10px 14px;border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:0 10px 10px 0}.chlist,.elist,.hist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.chlist li,.elist>li,.hist li{animation:rowin .45s ease backwards;animation-delay:calc(min(var(--k), 12) * 40ms)}.chlist li{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;flex-wrap:wrap}.chlist li>div{flex:1 1;min-width:160px;display:flex;flex-direction:column}.chlist small{color:var(--muted);font-size:13px}.chlist .num,.ehead .num{width:30px;height:30px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--surface);font-weight:700;font-size:14px}.egroup{gap:10px}.egroup,.egroup h2{display:flex;flex-direction:column}.egroup h2{gap:0}.egroup h2 small{font-size:13px;color:var(--muted);font-weight:500}.elist>li{border:1px solid var(--line);border-radius:14px;padding:14px 16px;transition:border-color .2s}.elist>li:has(.is-dirty){border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.ehead{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ehead b{flex:1 1;min-width:120px}.elist details>summary{list-style:none;cursor:pointer}.elist details>summary::-webkit-details-marker{display:none}.ehead img,.noimg-s{width:52px;height:52px;flex:none;border-radius:10px;object-fit:cover;background:var(--surface)}.noimg-s{display:grid;place-items:center;font-size:10px}.chev,.noimg-s{color:var(--muted)}.chev{font-size:22px;transition:transform .25s}details[open] .chev{transform:rotate(90deg)}details[open]>.fields{animation:open .3s ease both}.fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:10px;gap:10px;margin-top:12px}.fields>label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}.fields>label.wide{grid-column:1/-1}.fields>label.flag{grid-column:1/-1;flex-direction:row;align-items:center;gap:8px;color:var(--fg);font-size:14px}.fields>label.flag input{width:18px;height:18px;accent-color:var(--accent)}.fields-btns{grid-column:1/-1;display:flex;justify-content:flex-end;align-items:center;gap:14px;min-height:0}.fields-btns:empty{display:none}.fields-btns .primary{animation:seatpop .35s cubic-bezier(.3,1.6,.5,1) both}.chipsel{display:flex;flex-wrap:wrap;gap:8px}.chipsel button{font:inherit;font-size:14px;padding:7px 14px;border-radius:999px;border:1px solid var(--line);background:var(--bg);color:var(--fg);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background .2s,color .2s,border-color .2s,transform .15s}.chipsel button small{font-size:12px;color:var(--muted)}.chipsel button.on{background:var(--accent);border-color:var(--accent);color:var(--bg)}.chipsel button.on small{color:inherit;opacity:.8}.chipsel button:active{transform:scale(.95)}.hist{position:relative;padding-left:22px}.hist:before{content:"";position:absolute;left:6px;top:8px;bottom:8px;width:2px;background:var(--line);transform-origin:top;animation:grow .8s ease both}.hist li{position:relative;display:flex;align-items:flex-start;gap:12px;padding:10px 0}.hist li>div{flex:1 1;display:flex;flex-direction:column}.hist small{color:var(--muted);font-size:13px}.hdot{position:absolute;left:-21px;top:18px;width:12px;height:12px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px var(--bg)}.hdot.back{background:var(--todo)}.hval{margin:4px 0 0;font-size:13px;line-height:1.6;color:var(--fg);background:var(--surface);padding:6px 10px;border-radius:8px;word-break:break-word}@media (prefers-reduced-motion:reduce){.chlist li,.editbar,.elist>li,.hist li,.hist:before,.tabpanel{animation:none}}.fields.one{grid-template-columns:1fr}@media (max-width:560px){.tabs{display:grid;grid-template-columns:1fr 1fr;border-radius:16px}.tabs button{border-radius:12px}}.elist details{border:0;padding:0;margin:0;background:none;box-shadow:none}.elist details>summary{padding:0;justify-content:flex-start;font-weight:400}.elist details>summary:after{content:none}.elist>.eitem{border:1px solid var(--line);border-radius:14px;padding:2px 16px 14px}:root[data-role=trainer]{--accent:#1F7A4D;--accent-soft:#E6F4EC;--accent2:#2E9E6A}:root[data-role=admin]{--accent:#24407A;--accent-soft:#E8ECF4;--accent2:#3D5FA3;--navy:#1B2A4A}@media (prefers-color-scheme:dark){:root[data-role=trainer]:not([data-theme=light]){--accent:#6FD39E;--accent-soft:#17352A;--accent2:#8FE0B5}:root[data-role=admin]:not([data-theme=light]){--accent:#9DB6F0;--accent-soft:#1E2A44;--accent2:#B9CBF5;--navy:#111A2E}}:root[data-role=trainer][data-theme=dark]{--accent:#6FD39E;--accent-soft:#17352A;--accent2:#8FE0B5}:root[data-role=admin][data-theme=dark]{--accent:#9DB6F0;--accent-soft:#1E2A44;--accent2:#B9CBF5;--navy:#111A2E}.rolechip{margin-left:auto;font-size:12px;font-weight:700;padding:4px 12px;border-radius:999px;background:var(--accent-soft);color:var(--accent);flex:none}.drawer .navhead{font-size:12px;color:var(--muted);padding:6px 12px 2px}:root[data-role=admin] .drawer{--bg:var(--navy);--fg:#E6EBF5;--muted:#9FB0CC;--surface:rgba(255,255,255,.08);--line:rgba(255,255,255,.14);--accent:#FFFFFF;--accent-soft:rgba(255,255,255,.14);color:var(--fg)}:root[data-role=admin] .drawer .dotnew{background:#F0A040;color:#1B2A4A}@media (min-width:1100px){:root[data-role=admin] .drawer{transform:none;visibility:visible;box-shadow:none;width:248px;transition:none}:root[data-role=admin] .drawer .item{opacity:1;transform:none}:root[data-role=admin] .burger,:root[data-role=admin] .drawer-head .iconbtn,:root[data-role=admin] .scrim{display:none}:root[data-role=admin] .topbar,:root[data-role=admin] .wrap{margin-left:248px}:root[data-role=admin] .wrap{padding-right:40px}:root[data-role=admin] .topbar-in,:root[data-role=admin] .wrap{max-width:none;padding-left:40px}:root[data-role=admin] main#main{max-width:1080px}}.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.undec{display:inline-block;font-size:12px;font-weight:700;padding:0 8px;border-radius:6px;background:var(--todo-soft);color:var(--todo)}.thome{display:flex;flex-direction:column;gap:24px}.nhero{border-radius:20px;padding:22px 22px 20px;color:#fff;background:linear-gradient(135deg,#1F7A4D,#2E9E6A);position:relative;overflow:hidden}.nhero:after{content:"";position:absolute;right:-40px;top:-60px;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.08);animation:drift 9s ease-in-out infinite alternate}.nhero small{opacity:.85;font-weight:700}.nhero h1{font-size:clamp(26px,6vw,34px);margin:2px 0 6px;animation:rise .6s cubic-bezier(.2,.8,.2,1) both}.nhero p{margin:0;max-width:560px;opacity:.95}.today{list-style:none;margin:0;padding:0;display:grid;grid-gap:12px;gap:12px}.todaycard{display:grid;grid-gap:4px;gap:4px;padding:18px 20px;border-radius:18px;border:2px solid var(--accent);text-decoration:none;color:var(--fg);background:var(--bg);position:relative;transition:transform .25s,box-shadow .25s}.todaycard:hover{transform:translateY(-3px);box-shadow:0 16px 30px -18px rgba(20,80,50,.55)}.todaycard .kind{justify-self:start}.todaycard b{font-size:20px;font-family:var(--font-head)}.todaycard small{color:var(--muted);font-size:13px;line-height:1.6}.todaycard .open{justify-self:end;font-weight:700;color:var(--accent);transition:transform .25s}.todaycard:hover .open{transform:translateX(4px)}.tcols{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:24px;gap:24px;align-items:start}.tcols section{display:flex;flex-direction:column;gap:10px}.tcols h2 small{font-size:13px;color:var(--muted);font-weight:500}.nextlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.nextlist li{animation:rowin .45s ease backwards;animation-delay:calc(var(--k) * 50ms)}.nextlist a{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--line);border-radius:12px;color:var(--fg);text-decoration:none;transition:border-color .2s,transform .2s}.nextlist a:hover{border-color:var(--accent);transform:translateX(3px)}.nextlist b{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nextlist .avatar{width:32px;height:32px;font-size:14px;flex:none}.nextlist .go{color:var(--accent)}.ndate{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;font-size:14px}.notebook{gap:18px}.nhead{margin:-4px 0 0;padding:18px 20px;border-radius:18px;color:#fff;background:linear-gradient(135deg,#1F7A4D,#2E9E6A);animation:open .45s ease both}.nhead small{opacity:.88;font-weight:700}.nhead h1{font-size:26px;margin:2px 0 0;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.nhead h1 span{font-size:14px;opacity:.85;font-family:var(--font-body)}.nsec{border:1px solid var(--line);border-radius:14px;padding:12px 16px;background:var(--bg);animation:open .4s ease both}.nsec h2{font-size:13.5px;color:var(--accent);margin:0;display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;letter-spacing:.02em}.nsec p{margin:4px 0 0}.ngoal h2+p+h2{margin-top:10px}.nplan{border-left:4px solid var(--accent)}.ntime{font-size:12px;color:var(--muted);font-weight:500}.ntitle{font-size:17px}.nrole,.ntitle{font-weight:700}.nrole{display:inline-block;margin-top:8px!important;padding:3px 12px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:13px}.nscript{margin-top:8px;border:0}.nscript summary{padding:4px 0;font-size:13px;color:var(--muted);justify-content:flex-start}.nhw{border-color:var(--ng);background:color-mix(in srgb,var(--ng) 5%,var(--bg))}.nhw h2{color:var(--ng)}.nhw ul{margin:6px 0 0;padding:0;list-style:none;gap:6px}.nhw li,.nhw ul{display:flex;flex-direction:column}.nhw li{font-size:14px;animation:rowin .4s ease backwards}.nhw li span{color:var(--muted)}.nbottom{position:-webkit-sticky;position:sticky;bottom:calc(env(safe-area-inset-bottom, 0px) + 10px);z-index:8;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px 10px 16px;border-radius:16px;background:var(--bar);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--line);box-shadow:0 10px 30px rgba(20,40,30,.14);font-size:13px;line-height:1.6}.nbottom>span{display:flex;flex-direction:column;min-width:0}.nbottom b{color:var(--accent)}.nbottom .primary{flex:none;text-decoration:none}.notebook .ktabs{position:-webkit-sticky;position:sticky;top:64px;z-index:6;background:var(--bg)}.ahome{display:flex;flex-direction:column;gap:20px}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:12px;gap:12px}.kpi{border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:var(--bg);animation:rise .5s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(var(--k) * 70ms)}.kpi small{color:var(--muted);font-size:12.5px}.kpi b{display:block;font-family:var(--font-head);font-size:32px;line-height:1.3;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpi b span{font-size:15px;margin-left:2px;color:var(--muted)}.panel{border:1px solid var(--line);border-radius:16px;padding:16px 18px;background:var(--bg)}.panel h2{font-size:16px;margin:0 0 12px}.bars{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:10px;gap:10px;height:140px;align-items:end;padding-top:22px}.barcol{height:100%;position:relative;display:flex;flex-direction:column;justify-content:flex-end;background:var(--surface)}.barcol,.barcol i{border-radius:8px 8px 0 0}.barcol i{display:block;background:linear-gradient(180deg,var(--accent2),var(--accent));transition:height .9s cubic-bezier(.2,.8,.2,1)}.barcol span{position:absolute;top:-22px;width:100%;text-align:center;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.blabels{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:10px;gap:10px;font-size:12px;color:var(--muted);text-align:center;margin-top:6px;line-height:1.4}.todos{list-style:none;margin:0;padding:0}.todos li{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line);animation:rowin .45s ease backwards;animation-delay:calc(var(--k) * 60ms)}.todos li:first-child{border-top:0}.todos li>span:nth-child(2){flex:1 1}.todos a{font-size:13px;color:var(--accent);text-decoration:none}.tag,.todos a{font-weight:700;white-space:nowrap}.tag{font-size:11.5px;padding:2px 10px;border-radius:999px}.tag.red{background:#FBE9EA;color:#B4232C}.tag.amb{background:var(--todo-soft);color:var(--todo)}.allclear{margin:0;display:flex;align-items:center;gap:10px;color:var(--muted)}.allclear span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--ok-soft);color:var(--ok);font-weight:700;animation:seatpop .5s cubic-bezier(.3,1.6,.5,1) both}.quick{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:12px;gap:12px}@media (max-width:560px){.blabels{font-size:10.5px}.bars,.blabels{gap:5px}}@media (prefers-reduced-motion:reduce){.kpi,.nextlist li,.nhead,.nhero:after,.nsec,.todos li{animation:none}.barcol i{transition:none}}@media (max-width:560px){.nbottom>span{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}}.notebook>.row-between{margin-top:8px}