@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+JP:wght@400;500;700&display=swap');
:root{--green:#164e3e;--lime:#d6ee83;--ink:#182923;--muted:#65716a;--line:#dfe4dc}*{box-sizing:border-box}body{margin:0;background:#f6f7f3;color:var(--ink);font:16px/1.6 'DM Sans',sans-serif}header{display:flex;align-items:center;justify-content:space-between;padding:20px 5%;background:white;border-bottom:1px solid var(--line);gap:20px}.logo{font-size:26px;font-weight:700;color:var(--green);text-decoration:none}.logo span{background:var(--green);color:var(--lime);padding:4px 11px;border-radius:10px;margin-right:10px}a{color:var(--green)}nav{display:flex;gap:20px;font-size:14px}.wrap{max-width:1260px;margin:35px auto;padding:0 5% 50px}h1{font-size:32px;letter-spacing:-1px;line-height:1.2;margin:10px 0}h2{font-size:22px;letter-spacing:-.5px;margin:10px 0}p{color:var(--muted);line-height:1.7}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;color:var(--green)}.card{background:white;border:1px solid var(--line);border-radius:18px;padding:28px;margin:22px 0}.login{max-width:540px;margin:55px auto}.login .card{padding:35px}label{display:block;font-size:14px;font-weight:600;margin:16px 0 6px}input,select,textarea{width:100%;font:16px/1.5 inherit;font-family:inherit;font-size:16px;border:1px solid #cbd4c7;border-radius:8px;padding:12px;color:var(--ink);background:white}textarea{resize:vertical;min-height:140px}button,.button{display:inline-block;font:600 15px/1.5 'DM Sans',sans-serif;border:0;border-radius:9px;padding:12px 18px;background:var(--green);color:white;text-decoration:none;cursor:pointer}button:disabled{opacity:.5;cursor:default}.button.secondary,button.secondary{background:white;color:var(--green);border:1px solid var(--line)}.full{width:100%;text-align:center;margin-top:22px}.hint{font-size:13px;color:var(--muted)}.status{font-size:14px;margin-top:15px;white-space:pre-wrap}.error{color:#9c3526}.success{color:var(--green)}[hidden]{display:none!important}:focus-visible{outline:3px solid #c69218;outline-offset:3px}.filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:14px;align-items:end}.filters label{margin-top:0}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.8px}td,th{padding:15px 12px;border-bottom:1px solid var(--line)}td:first-child,th:first-child{padding-left:0}.pill{font-size:12px;border-radius:20px;padding:5px 10px;white-space:nowrap;background:#fff0cc;color:#72561c}.pill.done{background:#e4efd1;color:var(--green)}.muted{color:var(--muted);font-size:13px}.compact{padding:7px 12px;font-size:13px}.actions{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:20px}.review-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,1fr);gap:25px}.answer-text{white-space:pre-wrap;overflow-wrap:anywhere;font:16px/1.8 'DM Sans','Noto Sans JP',sans-serif;background:#f5f7f0;border:1px solid var(--line);border-radius:10px;padding:20px;max-height:520px;overflow:auto}.key-text{white-space:pre-wrap;font:16px/1.8 'DM Sans','Noto Sans JP',sans-serif;max-height:500px;overflow:auto}.notice{background:#edf2e1;padding:14px 18px;border-radius:10px;font-size:14px}.review-head{display:flex;justify-content:space-between;align-items:center;gap:15px}details{border:1px solid var(--line);padding:14px;border-radius:10px;margin-top:20px}summary{cursor:pointer;color:var(--green)}.review-form input{max-width:170px}footer{font-size:12px;color:var(--muted);margin-top:35px}.empty{text-align:center;padding:45px;color:var(--muted)}@media(max-width:750px){header{align-items:start;gap:15px;padding:15px 5%}nav{flex-wrap:wrap;gap:8px 15px}.wrap{margin-top:25px}h1{font-size:27px}.card{padding:20px}.login{margin:25px auto}.login .card{padding:24px}.filters{grid-template-columns:1fr 1fr}.filters>div:first-child{grid-column:1/-1}.review-grid{grid-template-columns:1fr}.review-head{align-items:start}.table-wrap{margin-right:-10px}td,th{padding:12px 9px}.login h1{font-size:28px}}

header .logo{display:flex;align-items:center;font-size:clamp(16px,2.2vw,24px);line-height:1.25;max-width:100%;overflow-wrap:normal}header .logo span{flex-shrink:0}header{flex-wrap:wrap}
