:root{--brand:#0757aa;--dark:#17324d;--soft:#f2f7fd;--border:#d7e3f0;--danger:#a52323}*{box-sizing:border-box}body{margin:0;background:#f5f8fc;color:#263447;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Yu Gothic",Meiryo,sans-serif;line-height:1.7}header{background:#fff;border-bottom:1px solid var(--border);padding:17px max(16px,calc((100% - 980px)/2))}header a{color:var(--brand);font-size:20px;font-weight:800;text-decoration:none}main{width:min(920px,calc(100% - 28px));margin:32px auto;min-height:60vh}.card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:24px;box-shadow:0 8px 24px rgba(20,55,90,.06);margin-bottom:18px}.narrow{max-width:620px;margin-left:auto;margin-right:auto}h1,h2{line-height:1.35;color:var(--dark)}h1{font-size:clamp(25px,5vw,34px)}h2{font-size:21px}label{display:block;font-weight:700;margin:14px 0 5px}input,textarea,select{width:100%;font:inherit;padding:11px 12px;border:1px solid #bacbdd;border-radius:8px;background:#fff}textarea{min-height:220px;resize:vertical}.button,button{display:inline-block;border:0;border-radius:9px;background:var(--brand);color:#fff;font:inherit;font-weight:800;padding:11px 18px;text-decoration:none;cursor:pointer;margin:6px 4px 6px 0}.secondary{background:#fff!important;color:var(--brand)!important;border:1px solid var(--brand)!important}.danger{background:var(--danger)}.success,.error,.notice{padding:13px 15px;border-radius:9px;margin:13px 0}.success{background:#e8f7ee;color:#176233}.error{background:#fff0f0;color:#8c2020}.notice{background:#edf5ff;color:#204c78}.muted{color:#68778a;font-size:14px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stat{padding:16px;border-radius:12px;background:var(--soft);text-align:center}.stat strong{display:block;font-size:25px;color:var(--brand)}.table{overflow-x:auto}table{width:100%;border-collapse:collapse;background:#fff}th,td{padding:10px;border-bottom:1px solid #e2e9f1;text-align:left;white-space:nowrap}th{background:#edf4fb}.actions{display:flex;flex-wrap:wrap;gap:8px}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}footer{text-align:center;padding:22px;color:#68778a;font-size:13px}@media(max-width:680px){main{margin:18px auto}.card{padding:18px}.grid{grid-template-columns:1fr}button,.button{width:100%;text-align:center}}
