:root{font-family:"Yu Gothic UI","Meiryo",sans-serif;color:#192d48;background:#f1f5fa;font-size:16px;--navy:#142643;--blue:#135de4;--line:#dce4ef;--muted:#5f7086}*{box-sizing:border-box}body{margin:0}header{background:var(--navy);color:white;min-height:100px;padding:22px max(24px,calc((100vw - 1100px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:13px}.brand small{font-size:.75rem;letter-spacing:.16em;color:#aabbd4}h1{font-size:1.4rem;margin:4px 0 0;letter-spacing:.02em}.mark{border:1px solid #4c6c90;color:#56d8d1;width:44px;height:44px;display:grid;place-items:center;font-size:1.8rem;font-weight:800;border-radius:10px}.private{font-size:.85rem;color:#cad7e9;border:1px solid #425575;border-radius:99px;padding:8px 12px}main{max-width:1150px;margin:auto;padding:30px 24px}p{line-height:1.6}h2{margin:5px 0 6px;font-size:1.7rem}.eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.15em;color:var(--blue);margin:0}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px}.toolbar p:not(.eyebrow){color:var(--muted);margin:4px 0;font-size:.9rem}.toolbar label{display:grid;gap:7px;font-size:.85rem;color:var(--muted);min-width:210px}select{background:white;color:var(--navy);font:inherit;font-weight:700;border:1px solid #b7c7dc;padding:12px;border-radius:8px;min-height:46px}.notice{font-size:.9rem;background:#e8f0ff;border-left:3px solid var(--blue);padding:12px 16px;line-height:1.65;margin-bottom:26px;border-radius:0 6px 6px 0}.notice.warning{background:#fff5db;border-color:#bf8b24}.tabbar{display:flex;gap:8px;border-bottom:1px solid #c8d4e5}.tabbar button{font:inherit;cursor:pointer;background:transparent;border:0;border-bottom:3px solid transparent;color:var(--muted);font-weight:700;padding:13px 25px}.tabbar button[aria-selected=true]{color:var(--blue);border-bottom-color:var(--blue)}.tabbar span{font-size:.75rem;margin-left:4px;font-weight:400}.viewhead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 18px}.viewhead p{color:var(--muted);font-size:.875rem}.textbutton{font:inherit;font-size:.875rem;white-space:nowrap;background:none;border:0;color:var(--blue);cursor:pointer;padding:10px 0}.sets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.card{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 3px 12px #14264305}.cardhead{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line)}.setname{display:flex;align-items:center;gap:10px}.setname h3{font-size:1rem;margin:0}.number{font-size:1.3rem;font-variant-numeric:tabular-nums;background:var(--navy);color:white;border-radius:7px;min-width:42px;text-align:center;padding:5px 6px;font-weight:800}.time{font-size:.875rem;color:var(--muted)}.tag{font-size:.8rem;color:#54657c;background:#edf2f8;border-radius:4px;padding:4px 7px}.tag.open{background:#e0f5ef;color:#166953}.races{padding:0 20px}.race{padding:15px 0;border-bottom:1px solid #ebeff5}.race:last-child{border:0}.racetop{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.racetop strong{font-size:1rem}.racetop time{font-size:.9rem;color:var(--muted)}.tickets{font-family:ui-monospace,"Consolas",monospace;letter-spacing:.03em;font-size:1.04rem;line-height:1.7;word-spacing:.12em;color:#254870}.result{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.95rem}.hit{background:#daf5e9;color:#12684a;padding:4px 9px;border-radius:5px;font-weight:750}.miss{background:#edf1f6;color:#58677c;padding:4px 9px;border-radius:5px}.pending{color:#8b6627;background:#fff1d6;padding:4px 9px;border-radius:5px}.copyarea{background:#f9fbfe;border-top:1px solid var(--line);padding:13px 20px 16px}.copyline{display:flex;align-items:center;justify-content:space-between;gap:10px}.count{font-size:.8rem;color:var(--muted)}button.primary{border:0;border-radius:7px;background:var(--blue);color:white;font:inherit;font-size:.9rem;font-weight:700;padding:12px 18px;cursor:pointer;min-height:44px}button.primary:disabled{background:#9baabe;cursor:not-allowed}button:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #3d9bc9;outline-offset:3px}button:hover{filter:brightness(.96)}details{margin-top:12px;font-size:.85rem;color:var(--muted)}summary{cursor:pointer;padding:6px 0}pre{font:inherit;font-size:.875rem;white-space:pre-wrap;overflow-wrap:anywhere;background:white;padding:12px;border:1px solid var(--line);border-radius:6px;color:var(--navy);line-height:1.65}.noteintro{padding:16px 20px;font-size:.9rem;line-height:1.75}.notebuttons{display:flex;flex-wrap:wrap;gap:8px}.notebuttons .secondary{background:white;color:var(--blue);border:1px solid #bbcde6}.summary{margin-top:24px;padding:20px;background:var(--navy);color:white;border-radius:12px}.summary h3{margin:0 0 10px}.summary p{margin:0 0 12px}.summary .count{color:#bbd0ee}footer{padding:25px 0 10px;color:var(--muted);font-size:.8rem;line-height:1.6}footer p{margin:5px 0}footer small{font-size:.75rem}#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:#142643;color:white;border-radius:9px;padding:12px 20px;max-width:90vw;box-shadow:0 5px 24px #0003;opacity:0;pointer-events:none;transition:opacity .15s}#toast.show{opacity:1}.empty{padding:35px 20px;grid-column:1/-1;text-align:center;background:white;border:1px dashed #c4d0e0;border-radius:12px}.manual{position:fixed;inset:0;background:#142643aa;display:grid;place-items:center;padding:22px;z-index:10}.manual>div{background:white;padding:22px;border-radius:12px;width:min(540px,100%)}textarea{width:100%;min-height:260px;font:inherit;padding:12px}
@media(max-width:720px){header{padding:18px 18px;min-height:90px}.private{display:none}h1{font-size:1.2rem}main{padding:23px 16px}.toolbar{display:block}.toolbar label{margin-top:18px;max-width:none}.toolbar select{width:100%}h2{font-size:1.45rem}.sets{grid-template-columns:1fr;gap:16px}.tabbar button{padding:13px 17px;flex:1;white-space:nowrap}.tabbar span{display:none}.viewhead{align-items:flex-start}.viewhead p{margin:6px 0}.cardhead,.copyarea{padding-left:16px;padding-right:16px}.races{padding:0 16px}.notice{margin-bottom:20px}.cardhead .time{font-size:.8rem}.copyline{gap:8px}button.primary{padding:12px 14px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
