:root{color-scheme:light;--ink:#203c3a;--green:#216553;--line:#dbe5df;--muted:#526863}*{box-sizing:border-box}body{margin:0;background:#f4f6f2;color:var(--ink);font:15px/1.7 "Yu Gothic UI","Meiryo",sans-serif}header{background:white;border-bottom:1px solid var(--line);padding:20px 5%;display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{font-weight:bold;font-size:19px;display:flex;align-items:center;gap:14px}.logo{background:var(--green);color:white;border-radius:12px;padding:2px 13px;font-size:28px}.brand small{font-size:11px;letter-spacing:.08em}.demo{border:1px solid #baccc1;padding:5px 13px;border-radius:20px;font-size:12px}main{max-width:1320px;margin:auto;padding:35px 30px}h1{font-size:clamp(25px,3vw,35px);margin:4px 0 10px;line-height:1.5;letter-spacing:.01em}h2{font-size:19px;margin:0}p{margin:8px 0}.intro{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px}.eyebrow{font-size:11px;letter-spacing:.2em;color:var(--green);font-weight:bold}button,input,select{font:inherit}button{cursor:pointer;border:1px solid #a8bbb2;background:white;color:var(--ink);border-radius:7px;padding:9px 16px;white-space:normal}button:hover{background:#edf4ef}button.primary{color:white;background:var(--green);border-color:var(--green)}button.primary:hover{background:#174c3f}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #bd7c16;outline-offset:3px}.notice{background:#fff7e6;border:1px solid #ead9ae;border-radius:8px;padding:13px 17px;color:#614c23;font-size:13px}.notice strong{margin-right:12px}.datebar{display:flex;align-items:center;gap:15px;margin:24px 0;color:var(--muted);font-size:12px}.datebar label{display:flex;align-items:center;gap:12px}.datebar button{margin-left:auto}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:22px 0 28px}.stats article{border:1px solid var(--line);background:#fff;padding:18px 23px;border-radius:10px}.stats span{font-size:13px}.stats strong{display:block;font-size:36px;line-height:1.4;font-weight:600}.stats small{font-size:11px;color:var(--muted)}.stats article:nth-child(2) strong{color:#ac3c35}.stats article:nth-child(3) strong{color:#936619}.panel{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden}.sectionhead{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 12px;gap:12px}.sectionhead p,.hint{font-size:12px;color:var(--muted)}#count{font-size:12px}.filters{display:flex;align-items:end;gap:14px;padding:10px 24px}.filters label{font-size:12px;display:block}.search{flex:1}.filters input,.filters select{margin-top:5px;width:100%}input,select{background:white;color:var(--ink);border:1px solid #afc1b7;border-radius:6px;padding:8px 10px;min-height:43px;max-width:100%}.hint{padding:0 24px 8px}.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse;white-space:nowrap;text-align:left;font-size:13px}th{background:#edf3ee;color:#405952;font-weight:500;font-size:11px}th,td{padding:15px 20px;border-top:1px solid var(--line)}td b{font-size:14px}small{display:block;color:var(--muted);font-size:11px}td button{padding:5px 12px;font-size:12px}.badge{display:inline-block;border-radius:5px;padding:2px 8px;font-size:12px;background:#e9f1ec}.late{background:#fbe9e5;color:#94362b}.today{background:#fff0d0;color:#775313}.soon{background:#fff4df;color:#785615}.done{color:var(--green);font-weight:bold}#empty{padding:30px;text-align:center}.guide{padding:32px 4px}.guide>div{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:17px}.guide article{border-left:3px solid #b5cbbb;padding-left:15px}.guide b{font-size:14px}.guide p{font-size:12px;color:var(--muted)}footer{font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding:20px 0}#message{font-size:13px;background:#e5efe8;position:sticky;bottom:15px;border-radius:7px;padding:12px}#message:empty{display:none}dialog{border:1px solid var(--line);border-radius:12px;max-width:660px;width:calc(100% - 30px);padding:26px;color:var(--ink);max-height:90vh;overflow:auto}dialog::backdrop{background:#122e29a0}.dialoghead{display:flex;justify-content:space-between;align-items:center;gap:15px}.dialoghead button{padding:3px 12px;font-size:23px}dialog p{font-size:12px;color:var(--muted)}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}.formgrid label,#review-form label{font-size:13px;display:flex;flex-direction:column;gap:4px}.actions{display:flex;justify-content:end;gap:12px;margin-top:24px}#form-error{color:#a32f26}dl{display:grid;grid-template-columns:170px 1fr;font-size:13px}dt,dd{margin:0;padding:9px 0;border-bottom:1px solid var(--line)}dt{color:var(--muted)}dd{overflow-wrap:anywhere}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}@media(max-width:760px){header{padding:15px 20px;align-items:start}.brand{font-size:16px}.demo{font-size:10px;padding:4px 8px}main{padding:22px 16px}.intro{display:block}.intro button{margin-top:15px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stats article{padding:15px}.datebar{flex-wrap:wrap}.datebar button{margin-left:0}.filters{flex-wrap:wrap;padding:10px 16px}.filters .search{flex-basis:100%}.filters label{flex:1;min-width:110px}.sectionhead{padding:20px 16px 10px;align-items:start}.sectionhead h2{font-size:18px}.hint{padding:0 16px}.guide>div{grid-template-columns:1fr;gap:14px}.formgrid{grid-template-columns:1fr}dl{grid-template-columns:1fr}dt{border:0;padding-bottom:0}dd{padding-top:2px}.actions{flex-wrap:wrap}dialog{padding:20px}}
