.gx-yearsort{--ys-ink:#24463f;--ys-paper:#fff6df;--ys-safe-top:env(safe-area-inset-top,0px);--ys-safe-right:env(safe-area-inset-right,0px);--ys-safe-bottom:env(safe-area-inset-bottom,0px);--ys-safe-left:env(safe-area-inset-left,0px);font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif;color:var(--ys-ink);width:100%;max-width:900px;margin:20px auto;position:relative;isolation:isolate;line-height:1.4;box-sizing:border-box}
.gx-yearsort *{box-sizing:border-box}.gx-yearsort [hidden]{display:none!important}.gx-yearsort button,.gx-yearsort summary,.gx-yearsort a{touch-action:manipulation}.gx-yearsort button{font:inherit;line-height:1.25;min-height:44px;border:1px solid #a3b8a6;background:#fff9e9;color:#24463f;border-radius:7px;padding:8px 10px;cursor:pointer;font-weight:700;margin:0}.gx-yearsort button:disabled{opacity:.5;cursor:default}.gx-yearsort button:focus-visible,.gx-yearsort a:focus-visible,.gx-yearsort summary:focus-visible{outline:3px solid #b35e43;outline-offset:2px}.gx-yearsort button[aria-pressed=true]{background:#315d50;color:#fff6df;border-color:#315d50}.gx-yearsort .ys-primary{background:#a5543f;color:#fff9e9;border-color:#874631}.ys-shell{border:2px solid #496a59;border-radius:13px;background:#edf0dd;overflow:hidden;box-shadow:0 8px 24px #17383020}.ys-head{display:flex;justify-content:space-between;gap:7px;align-items:center;padding:8px 12px;background:#254d44;color:#fff4d6}.ys-brand{display:grid;min-width:0}.ys-brand small{font-size:10px;letter-spacing:.05em;color:#cbd8ae}.ys-brand strong{font-size:clamp(14px,2.4vw,22px);white-space:nowrap}.ys-top{display:flex;gap:4px;flex-shrink:0}.ys-top button{font-size:12px;padding:5px 7px;min-width:44px}.ys-hud{display:grid;grid-template-columns:repeat(3,1fr);background:#cfdbc2;border-bottom:1px solid #a8b999}.ys-hud>div{display:flex;align-items:center;justify-content:center;gap:7px;padding:5px;min-width:0}.ys-hud span{font-size:12px}.ys-hud strong{font-size:18px;font-variant-numeric:tabular-nums}.ys-stage{position:relative}.ys-scene{display:block;width:100%;height:130px;border-bottom:1px solid #a4b399}.ys-work{padding:12px;display:grid;gap:10px}.ys-question{min-width:0}.ys-prompt{font-size:17px;display:block;margin-bottom:8px}.ys-board{display:grid;gap:5px}.gx-yearsort .ys-cell{display:flex;align-items:center;text-align:left;min-width:0;gap:9px;font-size:14px;min-height:49px;white-space:normal;overflow-wrap:anywhere}.ys-position{display:inline-grid;place-items:center;flex:0 0 25px;min-width:25px;height:25px;border:1px solid currentColor;border-radius:50%;font-size:12px;font-weight:800}.ys-card-text{min-width:0;overflow-wrap:anywhere}.gx-yearsort .ys-cell.selected{background:#315d50;color:#fff9df;border:2px solid #d9ae65}.gx-yearsort .ys-cell:disabled{opacity:.65;background:#d7ddc5;color:#3d574a}.ys-controls{display:grid;gap:8px}.ys-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.ys-tools button{font-size:12px;padding:6px}.ys-actions{display:flex;gap:6px}.ys-actions>*{min-width:0;flex:1}.ys-actions .ys-primary{flex:2}.ys-incoming{background:#fff5d7;border:2px solid #ad714c;padding:8px 10px;border-radius:8px;display:grid;gap:3px;margin-bottom:8px}.ys-incoming small{font-size:11px;color:#805539}.ys-incoming strong{font-size:15px;overflow-wrap:anywhere}.ys-anchors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;position:relative;margin-bottom:8px}.ys-anchors:after{content:'→';position:absolute;left:calc(50% - 8px);top:calc(50% - 10px);font-weight:800}.ys-anchors>div{display:grid;gap:3px;padding:7px;background:#dbe3cd;border:1px solid #a4b59c;border-radius:7px;align-content:start}.ys-anchors small{font-size:10px;color:#52664c}.ys-anchors strong{font-size:13px;overflow-wrap:anywhere}.ys-anchors span{font-size:14px;font-weight:750}.gx-yearsort[data-mode=insert] .ys-board{grid-template-columns:repeat(3,minmax(0,1fr))}.gx-yearsort[data-mode=insert] .ys-cell{justify-content:center;text-align:center;padding:7px 3px;font-size:13px}.gx-yearsort .ys-cell.eliminated{text-decoration:line-through;opacity:.35}.ys-feedback{display:grid;gap:5px}.ys-answer{display:grid;grid-template-columns:25px minmax(0,1fr);align-items:center;gap:0 9px;min-height:49px;padding:7px 9px;border:1px solid #b2b99c;background:#fff8e5;border-radius:7px;color:#255749!important;text-decoration:none!important;font-size:13px;overflow-wrap:anywhere}.ys-answer .ys-position{grid-row:1/3}.ys-answer small{grid-column:2;font-size:11px;color:#657057}.ys-bottom{display:flex;justify-content:space-between;gap:8px;padding:6px 11px;background:#cfdbc2;font-size:12px;font-variant-numeric:tabular-nums}.ys-status{font-size:12px;margin:0!important;min-height:29px;padding:6px 11px;background:#fff7e1;overflow-wrap:anywhere}.ys-panel{display:grid;gap:10px;padding:15px;max-height:620px;overflow:auto;overscroll-behavior:contain}.ys-panel h2{font-size:21px!important;line-height:1.3!important;margin:0!important;padding:0!important;border:0!important;background:none!important;color:#254d44!important}.ys-panel p{font-size:14px;margin:0!important}.ys-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.ys-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.ys-levels button,.ys-modes button{font-size:13px;padding:8px 4px}.gx-yearsort .ys-note{font-size:12px;color:#62704f}.ys-history{font-size:13px;border-top:1px dashed #a2b194;padding-top:5px}.ys-history summary{min-height:44px;padding:10px 3px;cursor:pointer;font-weight:700}.ys-history p{padding:3px}.ys-history a{display:block;min-height:44px;padding:10px 3px;color:#246255;text-decoration:underline;overflow-wrap:anywhere}.ys-score{font-size:36px;font-weight:900;color:#a5543f;font-variant-numeric:tabular-nums}.ys-supply{display:grid!important;text-align:left;grid-template-columns:1fr auto;gap:3px}.ys-supply small{font-size:12px;grid-column:1}.ys-supply span{font-size:12px;grid-column:2;grid-row:1/3;align-self:center}.ys-portal{position:fixed!important;inset:0!important;margin:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;z-index:2147483646!important}.ys-shell:fullscreen,.ys-shell.ys-expanded{width:100%;height:100dvh;border:0;border-radius:0;padding:var(--ys-safe-top) var(--ys-safe-right) var(--ys-safe-bottom) var(--ys-safe-left);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto;overflow:hidden}.ys-shell:fullscreen .ys-stage,.ys-expanded .ys-stage{min-height:0;display:flex;flex-direction:column;overflow:hidden}.ys-shell:fullscreen .ys-scene,.ys-expanded .ys-scene{flex:0 0 95px;min-height:0}.ys-shell:fullscreen .ys-work,.ys-expanded .ys-work{min-height:0;flex:1;display:grid;grid-template-rows:minmax(0,1fr) auto;overflow:hidden}.ys-shell:fullscreen .ys-question,.ys-expanded .ys-question{min-height:0;overflow:auto;overscroll-behavior:contain}.ys-shell:fullscreen .ys-panel,.ys-expanded .ys-panel{flex:1;min-height:0;max-height:none;overflow:auto}
@media(max-width:540px){.ys-head{padding:6px;gap:4px}.ys-brand strong{font-size:13px}.ys-brand small{font-size:9px;letter-spacing:0}.ys-top{gap:3px}.ys-top button{font-size:10px;padding:4px;min-width:44px}.ys-hud>div{gap:5px;padding:4px}.ys-hud strong{font-size:16px}.ys-hud span{font-size:11px}.ys-scene{height:95px}.ys-work{padding:8px;gap:7px}.ys-prompt{font-size:15px;margin-bottom:6px}.ys-board{gap:4px}.gx-yearsort .ys-cell{font-size:13px;min-height:47px;padding:6px 8px}.ys-panel{padding:11px;gap:8px}.ys-panel h2{font-size:18px!important}.ys-panel p{font-size:13px}.ys-bottom{padding:5px 8px;font-size:11px}.ys-status{padding:5px 8px;font-size:11px}.ys-anchors strong{font-size:12px}.ys-incoming strong{font-size:14px}.ys-incoming{padding:6px 8px}.ys-actions button{font-size:12px;padding:5px}.ys-answer{font-size:12px;padding:6px 8px}.ys-score{font-size:31px}}
@media(max-height:700px) and (orientation:portrait){.ys-scene{height:65px}.ys-panel{max-height:440px}.ys-shell:fullscreen .ys-scene,.ys-expanded .ys-scene{display:none}.ys-head{padding-top:4px;padding-bottom:4px}}
@media(max-height:600px) and (orientation:portrait){.ys-shell:fullscreen .ys-bottom,.ys-expanded .ys-bottom{display:none}.ys-shell:fullscreen,.ys-shell.ys-expanded{grid-template-rows:auto auto minmax(0,1fr) auto}.ys-shell:fullscreen .ys-hud>div,.ys-expanded .ys-hud>div{padding:2px}.ys-shell:fullscreen .ys-hud strong,.ys-expanded .ys-hud strong{font-size:14px}.ys-shell:fullscreen .ys-work,.ys-expanded .ys-work{padding:6px;gap:5px}.ys-shell:fullscreen .ys-prompt,.ys-expanded .ys-prompt{font-size:12px;margin-bottom:4px}.ys-shell:fullscreen .ys-cell,.ys-expanded .ys-cell{font-size:11px;min-height:44px;padding:4px 6px;gap:6px}.ys-shell:fullscreen .ys-board,.ys-expanded .ys-board{gap:3px}.ys-shell:fullscreen .ys-controls,.ys-expanded .ys-controls{gap:5px}.ys-shell:fullscreen .ys-tools button,.ys-expanded .ys-tools button{font-size:11px;padding:4px}.ys-shell:fullscreen .ys-status,.ys-expanded .ys-status{font-size:10px;min-height:20px;padding:3px 6px}.ys-shell:fullscreen .ys-incoming,.ys-expanded .ys-incoming{padding:4px 6px;margin-bottom:5px;gap:1px}.ys-shell:fullscreen .ys-incoming strong,.ys-expanded .ys-incoming strong{font-size:11px}.ys-shell:fullscreen .ys-incoming small,.ys-expanded .ys-incoming small{font-size:9px}.ys-shell:fullscreen .ys-anchors,.ys-expanded .ys-anchors{margin-bottom:5px;gap:14px}.ys-shell:fullscreen .ys-anchors>div,.ys-expanded .ys-anchors>div{padding:4px;gap:1px}.ys-shell:fullscreen .ys-anchors strong,.ys-expanded .ys-anchors strong{font-size:11px}.ys-shell:fullscreen .ys-anchors span,.ys-expanded .ys-anchors span{font-size:12px}.ys-shell:fullscreen .ys-answer,.ys-expanded .ys-answer{min-height:44px;font-size:11px;padding:4px 6px}.ys-shell:fullscreen .ys-answer small,.ys-expanded .ys-answer small{font-size:10px}.ys-shell:fullscreen .ys-panel,.ys-expanded .ys-panel{padding:8px;gap:6px}.ys-shell:fullscreen .ys-panel h2,.ys-expanded .ys-panel h2{font-size:16px!important}.ys-shell:fullscreen .ys-panel p,.ys-expanded .ys-panel p{font-size:12px}}
@media(max-height:480px) and (orientation:landscape){.ys-head{padding:3px 8px}.ys-brand small{display:none}.ys-brand strong{font-size:16px}.ys-top button{min-height:44px}.ys-hud>div{padding:2px}.ys-hud strong{font-size:14px}.ys-hud span{font-size:10px}.ys-scene{height:70px}.ys-work{display:grid;grid-template-columns:minmax(0,1fr) 166px;padding:6px;gap:6px}.ys-question{min-width:0}.ys-prompt{font-size:12px;margin-bottom:4px}.ys-controls{align-content:end;gap:5px}.ys-tools{grid-template-columns:1fr;gap:4px}.ys-tools button{font-size:11px;padding:4px}.ys-actions{gap:4px}.ys-actions button{font-size:10px;padding:3px}.gx-yearsort[data-mode=sort] .ys-board{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.gx-yearsort .ys-cell{font-size:11px;min-height:44px;padding:4px 5px;gap:5px}.ys-position{min-width:20px;flex-basis:20px;height:20px;font-size:10px}.ys-incoming{padding:4px 6px;margin-bottom:4px;gap:1px}.ys-incoming small{font-size:9px}.ys-incoming strong{font-size:11px}.ys-anchors{gap:14px;margin-bottom:4px}.ys-anchors>div{padding:4px;gap:1px}.ys-anchors strong{font-size:10px}.ys-anchors span{font-size:11px}.gx-yearsort[data-mode=insert] .ys-cell{font-size:11px;min-height:44px}.ys-answer{grid-template-columns:20px minmax(0,1fr);font-size:11px;min-height:44px;padding:4px 5px;gap:0 5px}.ys-answer small{font-size:10px}.ys-feedback{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.ys-bottom{padding:3px 8px;font-size:10px}.ys-status{min-height:20px;padding:3px 8px;font-size:10px}.ys-panel{padding:8px;gap:6px;max-height:320px}.ys-panel h2{font-size:17px!important}.ys-panel p{font-size:12px}.ys-score{font-size:28px}.ys-shell:fullscreen .ys-scene,.ys-expanded .ys-scene{display:none}.ys-shell:fullscreen .ys-work,.ys-expanded .ys-work{grid-template-rows:1fr;grid-template-columns:minmax(0,1fr) 166px}.ys-shell:fullscreen .ys-panel,.ys-expanded .ys-panel{display:grid;grid-template-columns:1fr 1fr;align-content:start}.ys-panel h2,.ys-panel>.ys-actions,.ys-panel>.ys-primary{grid-column:1/-1}.ys-history{grid-column:1/-1}}
@media(max-height:360px) and (orientation:landscape){.ys-shell:fullscreen .ys-bottom,.ys-expanded .ys-bottom{display:none}.ys-shell:fullscreen,.ys-shell.ys-expanded{grid-template-rows:auto auto minmax(0,1fr) auto}}
@media(prefers-reduced-motion:reduce){.gx-yearsort *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(max-height:600px) and (orientation:portrait){.ys-shell:fullscreen .ys-head,.ys-expanded .ys-head{padding-top:0;padding-bottom:0}}
.gx-yearsort .ys-actions button[data-act=previous],.gx-yearsort .ys-actions button[data-act=following]{flex:0 0 64px;white-space:nowrap}
@media(max-width:540px){.gx-yearsort .ys-actions button[data-act=previous],.gx-yearsort .ys-actions button[data-act=following]{flex-basis:52px}}
@media(max-height:480px) and (orientation:landscape){.gx-yearsort .ys-actions button[data-act=previous],.gx-yearsort .ys-actions button[data-act=following]{flex-basis:44px}}
.gx-yearsort .ys-answer{line-height:1.25}
@media(max-height:480px) and (orientation:landscape){.gx-yearsort[data-phase=feedback] .ys-work{grid-template-columns:minmax(0,1fr) 90px}}
@media(max-height:540px) and (orientation:portrait){.gx-yearsort[data-mode=sort] .ys-board{grid-template-columns:repeat(2,minmax(0,1fr))}.gx-yearsort .ys-feedback{gap:3px}}
