@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;600;700;800&display=swap";:root{font-family:Noto Sans JP,sans-serif;color:#18212f;background:#f4f6f8}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}.app{max-width:1120px;margin:auto;padding:30px 20px 60px}header,.section-title{display:flex;justify-content:space-between;align-items:center;gap:20px}h1,h2,p{margin:0}h1{font-size:clamp(28px,5vw,42px);letter-spacing:.04em}h2{font-size:20px;margin-bottom:22px}.eyebrow{color:#2d6cdf;font-weight:800;font-size:12px;letter-spacing:.16em;margin-bottom:8px}.sub,.hint{color:#697586;font-size:13px;margin-top:8px}.grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin:26px 0 20px}.panel{background:#fff;border:1px solid #e1e6ed;border-radius:18px;padding:24px;box-shadow:0 6px 20px #26354a0a}label{display:block;font-size:14px;font-weight:700;margin-bottom:16px}input,select,textarea{display:block;width:100%;margin-top:8px;border:1px solid #ccd4df;border-radius:10px;padding:12px 13px;color:#18212f;background:#fff}input:focus,select:focus,textarea:focus{outline:3px solid #2d6cdf22;border-color:#2d6cdf}textarea{resize:vertical}.primary,.secondary,.chips button{border:0;border-radius:10px;padding:12px 18px;font-weight:700}.primary{width:100%;color:#fff;background:#2563d8}.primary:disabled{opacity:.6;cursor:wait}.secondary{color:#2455ad;background:#eaf1ff}.chips{display:flex;flex-wrap:wrap;gap:7px;margin:-5px 0 16px}.chips button{padding:7px 10px;color:#40526d;background:#f0f3f7;font-size:12px}.paper{overflow:auto;background:#e9edf2;border-radius:12px;padding:18px}canvas{display:block;width:100%;height:auto;background:#fff}.message{margin-top:14px;font-size:14px;font-weight:700;color:#2455ad}.count{border-radius:99px;padding:5px 11px;background:#edf2f8;color:#526276;font-size:13px}.empty{color:#788597;padding:20px 0 4px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:13px 10px;border-bottom:1px solid #edf0f4;white-space:nowrap}th{color:#68778a;font-size:12px}.ok,.ng{display:inline-block;border-radius:99px;padding:4px 8px;font-size:12px;font-weight:700}.ok{color:#177245;background:#e7f7ee}.ng{color:#a13232;background:#fdeaea}@media (max-width:760px){.app{padding:22px 14px 40px}header{align-items:flex-start;flex-direction:column}.grid{grid-template-columns:1fr}.panel{padding:18px}.preview{order:-1}}
