:root{--ink:#243d3b;--muted:#61716e;--brand:#267267;--pale:#eaf3ef;--line:#d1dfd7;font-family:"Yu Gothic UI","Meiryo",system-ui,sans-serif;color:var(--ink);background:#f7f9f6;line-height:1.75;color-scheme:light}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}header{height:78px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5%;gap:20px}a{color:var(--brand)}.brand{text-decoration:none;font-weight:800;font-size:24px;display:flex;align-items:center;gap:20px}.brand span{font-size:15px;font-weight:500}#edition{font-size:12px;color:var(--muted)}main{max-width:1240px;margin:auto;padding:36px 28px}h1,h2,p{margin:0 0 18px}h1{font-size:32px;line-height:1.5;outline:none}h2{font-size:21px;line-height:1.5}button,input,textarea,select{font:inherit}button,.button{font-weight:700;border:1px solid transparent;border-radius:9px;padding:11px 18px;cursor:pointer;line-height:1.5;display:inline-block;text-decoration:none}button:disabled{opacity:.4;cursor:default}.primary{color:white;background:var(--brand)}.secondary{color:var(--brand);background:white;border-color:#a9c1b6}.quiet{color:var(--brand);background:transparent;padding:8px 10px}button:hover,.button:hover{filter:brightness(.94)}:focus-visible{outline:3px solid #d97953;outline-offset:3px}input:not([type=checkbox]),textarea,select{display:block;width:100%;padding:10px 12px;border:1px solid #aabfb4;border-radius:7px;background:#fff;min-height:46px;color:var(--ink)}label{display:block;font-weight:700;margin:12px 0 6px}small,.small{font-size:13px;color:var(--muted);font-weight:400}.eyebrow{font-size:12px;font-weight:800;color:var(--brand);letter-spacing:.06em}.welcome{display:grid;grid-template-columns:1.15fr 1fr;gap:32px 70px;padding:28px 0}.welcome h1{font-size:42px}.lead{font-size:18px;line-height:1.9}.tags{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0}.tags span{padding:5px 10px;background:var(--pale);font-size:12px;border-radius:5px}.card{background:white;border:1px solid var(--line);border-radius:14px;padding:27px;margin-bottom:20px;break-inside:avoid}.start{align-self:start}.start button{width:100%;margin:20px 0}.overview{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:white;border-radius:12px;overflow:hidden}.overview>div{padding:20px}.overview>div+div{border-left:1px solid var(--line)}.overview p{font-size:13px;margin:8px 0 0}.staff{grid-column:1/-1;background:var(--pale);padding:18px 22px;border-radius:10px;font-size:14px}.staff summary{font-weight:700;cursor:pointer}.staff p{margin-top:15px}.session{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:20px;font-size:14px}#timer{font-size:23px;font-variant-numeric:tabular-nums}#time-note{font-size:12px;color:var(--muted)}.layout{display:grid;grid-template-columns:185px minmax(0,1fr);gap:26px}aside nav button{display:block;width:100%;text-align:left;margin-bottom:8px;background:transparent;color:var(--muted)}aside nav button[aria-current=step]{background:var(--brand);color:white}aside p{font-size:12px;color:var(--muted);margin:22px 10px}aside{align-self:start;position:sticky;top:20px}.workspace{background:white;border:1px solid var(--line);border-radius:14px;padding:32px;min-width:0}.instructions{padding-left:25px}.instructions li{padding:0 0 25px 12px}.instructions li+li{border-top:1px solid var(--line);padding-top:24px}.copy{display:flex;gap:10px}.copy input{font-family:Consolas,monospace}.copy button{flex-shrink:0}.path{padding:14px;background:var(--pale);border-radius:7px;overflow-wrap:anywhere;font-size:14px;margin:14px 0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}.catalog-card{border:1px solid var(--line);border-radius:10px;padding:21px;margin:22px 0}.catalog-fields{display:grid;grid-template-columns:1fr 1.4fr;gap:4px 20px}.catalog-fields label{font-size:14px}.catalog-card h2{font-family:Consolas,monospace;color:var(--brand)}.note{background:var(--pale);border-left:3px solid #83b1a0;padding:18px 21px;margin:22px 0}.note p:last-child{margin-bottom:0}.naming{font-family:Consolas,"Meiryo",monospace;font-size:19px;font-weight:700}.pdf-links{display:flex;gap:18px;flex-wrap:wrap;margin:24px 0}.pdf-links a{flex:1;text-align:center;min-width:220px}fieldset{border:0;padding:0;margin:25px 0}legend{font-weight:700;margin-bottom:12px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choices label{display:flex;align-items:center;gap:9px;margin:0;padding:12px;border:1px solid var(--line);border-radius:7px;font-size:14px}.choices label:has(input:checked){background:var(--pale);border-color:var(--brand)}input[type=checkbox]{width:18px;height:18px;accent-color:var(--brand)}.picker{padding:18px;background:var(--pale);border:1px dashed #83b1a0;border-radius:9px}.picker input{margin-top:15px;max-width:100%;font-size:14px}#file-status{padding:16px;border-left:3px solid var(--brand);background:#f2f6f0;white-space:pre-wrap}.tools{display:flex;gap:12px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:18px;margin-top:28px}.tools button{font-size:13px}#status{font-size:12px;color:var(--muted)}.actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:21px;margin-top:20px}.complete{max-width:750px;margin:55px auto;text-align:center;padding:55px 35px}.staff-action{border-top:1px solid var(--line);padding-top:30px;margin-top:40px}#results{max-width:1020px;margin:auto}#result-summary{padding:18px;background:var(--pale);border-radius:10px}.fact{display:grid;grid-template-columns:150px 1fr auto;gap:15px;border-top:1px solid var(--line);padding:12px 0;font-size:14px}.fact div{white-space:pre-wrap;overflow-wrap:anywhere}.badge{font-size:12px;white-space:nowrap;padding:3px 8px;border-radius:5px;background:#edf0ed;align-self:start}.badge.ok{background:#dff0e5;color:#23694d}.badge.no{background:#fff0db;color:#864514}.observation{display:grid;grid-template-columns:1fr 200px;gap:20px;align-items:center;margin:14px 0}.observation label{font-size:14px}dialog{max-width:590px;width:calc(100% - 32px);padding:30px;border:1px solid var(--line);border-radius:14px;color:var(--ink)}dialog::backdrop{background:#122d2980}#help-content{white-space:pre-wrap}footer{max-width:1180px;margin:35px auto 0;padding:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.print-note{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:850px){.welcome{gap:25px;grid-template-columns:1fr}.overview{grid-template-columns:1fr 1fr}.welcome h1{font-size:34px}.layout{grid-template-columns:1fr}.layout aside{position:static}.layout aside nav{display:flex;overflow:auto}.layout aside nav button{white-space:nowrap}.layout aside p{display:none}.layout aside>button{margin-bottom:12px}.workspace{padding:22px}.overview>div:nth-child(3){border-left:0}.session{flex-wrap:wrap}}
@media(max-width:550px){header{height:auto;padding:17px;align-items:start}.brand{font-size:20px;gap:10px}.brand span{font-size:12px}#edition{max-width:105px;font-size:10px}main{padding:20px 13px}.catalog-fields,.two-col,.choices{grid-template-columns:1fr}.copy{flex-direction:column}.copy button{align-self:start}.workspace{padding:20px 15px}.fact{grid-template-columns:1fr auto}.fact div{grid-column:1/-1;grid-row:2}.observation{grid-template-columns:1fr;gap:0}.overview{grid-template-columns:1fr}.overview>div+div{border-left:0;border-top:1px solid var(--line)}.card{padding:20px}.pdf-links a{min-width:0}h1{font-size:26px}}
@media print{@page{size:A4;margin:14mm}body{background:white;font-size:10pt}header,footer,#welcome,#test,#complete,dialog,.actions,#export-status{display:none!important}main{padding:0;max-width:none}#results{display:block!important;max-width:none}h1{font-size:20pt}h2{font-size:14pt}.card{padding:14px;margin-bottom:12px}.fact{font-size:9pt;padding:8px 0;grid-template-columns:115px 1fr auto}.note{font-size:9pt}.observation select,textarea{display:none}.print-note{display:block!important}.observation{grid-template-columns:1fr 180px}.badge{font-size:8pt}}
