:root{font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif;color:#182c31;background:#f4f7f5;line-height:1.7}*{box-sizing:border-box}body{margin:0}main{max-width:900px;margin:auto;padding:44px 24px}header{padding:10px 0 24px}h1{font-size:clamp(30px,5vw,48px);line-height:1.35;letter-spacing:-.03em;margin:20px 0}h2{font-size:19px;margin:0 0 20px}.badge{font-size:13px;font-weight:700;color:#276c59}.lead{color:#435f62}.privacy{background:#e2f0e9;border-left:4px solid #28745d;padding:14px 18px;border-radius:6px}.card{background:white;border:1px solid #dce5e0;border-radius:16px;padding:26px;margin-bottom:20px;box-shadow:0 4px 20px #122b2210}.sectionHead{display:flex;align-items:center;justify-content:space-between;gap:12px}.sectionHead h2{margin:0}label{display:block;font-weight:700;margin:22px 0 8px}input[type=file],textarea{width:100%;font:inherit;border:1px solid #b8cac1;border-radius:8px;padding:12px;background:#fcfdfc}textarea{resize:vertical;min-height:170px}.muted{color:#5b6e70;font-size:13px;font-weight:400}.limit{font-size:14px;border-top:1px solid #e5eae7;padding-top:12px}button{font:inherit;border:1px solid #25634f;border-radius:8px;background:#25634f;color:white;padding:11px 18px;cursor:pointer;font-weight:650}button.secondary{background:white;color:#25634f}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #dfad41;outline-offset:3px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.errors{color:#9c2929;padding-left:22px}.preview{max-height:340px;overflow:auto}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:10px;border-bottom:1px solid #e3e9e6;overflow-wrap:anywhere;vertical-align:top}th{background:#f4f7f5;position:sticky;top:0}td:nth-child(1){width:60px}td:nth-child(2){min-width:120px}td:nth-child(3){color:#9c2929;max-width:250px}progress{width:100%;margin-top:18px;accent-color:#25634f}.notice{background:#fff0cd;padding:12px;border-radius:8px;margin-bottom:18px}footer{color:#617473;font-size:12px;padding:10px}#save{background:#164b39}#status{white-space:pre-line}.compact p{font-size:14px}[hidden]{display:none!important}@media(max-width:550px){main{padding:22px 14px}.card{padding:18px}.sectionHead{align-items:flex-start;flex-direction:column}button{min-height:44px}th,td{padding:8px;font-size:12px}}
