:root{color-scheme:light;--bg:#f4f6f8;--panel:#ffffff;--text:#1b2430;--muted:#667085;--line:#d9e0e7;--accent:#1f5fa8;--accent-soft:#eaf2fb;--ok:#137a42;--warn:#8a5a00;--danger:#b42318;font-family:Inter,Noto Sans JP,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.shell{width:min(1500px,calc(100% - 32px));margin:0 auto;padding:28px 0 64px}.hero{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:20px}.hero h1{margin:2px 0 8px;font-size:clamp(30px,4vw,44px)}.hero p{margin:0;color:var(--muted)}.heroActions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)!important}.status{padding:8px 12px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-weight:700;white-space:nowrap}.saveState{font-size:12px;color:var(--muted);white-space:nowrap}.tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px;margin-bottom:18px}.tabs button{border:1px solid var(--line);background:var(--panel);padding:10px 15px;border-radius:10px;white-space:nowrap}.tabs button.active{background:var(--accent);color:white;border-color:var(--accent);font-weight:700}.card,.results{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:22px;margin-bottom:18px;box-shadow:0 4px 16px rgba(24,39,75,.04)}.card h2,.results h2{margin:0 0 16px;font-size:20px}.card h3{margin:24px 0 10px;font-size:16px}.card p{color:var(--muted)}.sectionTitle{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px}.sectionTitle h2{margin-bottom:5px}.sectionTitle p{margin:0}.grid{display:grid;grid-gap:14px;gap:14px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}label{display:grid;grid-gap:6px;gap:6px;color:#344054;font-size:13px;font-weight:650}input,select,textarea{width:100%;min-width:0;border:1px solid #cfd8e3;border-radius:8px;padding:9px 10px;background:white;color:var(--text)}input:focus,select:focus,textarea:focus{outline:2px solid rgba(31,95,168,.18);border-color:var(--accent)}.primary{border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:9px;padding:10px 14px;font-weight:800}.primary:hover{filter:brightness(.96)}.secondary{border:1px solid #aebdcd;background:#fff;color:#24405e;border-radius:8px;padding:9px 12px;font-weight:700}.secondary:hover{background:#f7f9fb}.secondary.small{margin-top:10px;padding:7px 10px;font-size:13px}.textButton{border:0;background:transparent;color:var(--danger);padding:6px}.danger{border:1px solid #f2b8b5;background:#fff;color:var(--danger);border-radius:8px;padding:9px 12px;font-weight:700}.tableWrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px}table{width:100%;border-collapse:collapse;min-width:760px}td,th{padding:9px;border-bottom:1px solid #e6ebf0;text-align:left;vertical-align:middle}th{background:#f8fafc;color:#475467;font-size:12px}tfoot th{background:#eef4fb}td input{min-width:90px}.building{padding:14px 0 6px}.buildingHead{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}.buildingHead>div{display:flex;align-items:center;gap:10px;min-width:0}.buildingName{width:min(320px,70vw);font-weight:800;border:0;border-bottom:1px solid var(--line);border-radius:0;padding-left:0}.pill{font-size:11px;padding:4px 7px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-weight:800;white-space:nowrap}details{margin-top:14px;border-top:1px dashed var(--line);padding-top:12px}summary{cursor:pointer;font-weight:750;color:#344054}.exclusionGrid{margin-top:14px}hr{border:0;border-top:1px solid var(--line);margin:24px 0 0}.subEditor{margin-top:22px;padding:16px;border:1px solid #e1e7ee;border-radius:12px;background:#fbfcfd}.storyBlock{padding:16px 0;border-bottom:1px dashed #d8e0e8}.storyBlock:last-of-type{border-bottom:0}.useRows{margin-top:14px}.useRow{display:grid;grid-template-columns:150px 1fr 150px auto;grid-gap:8px;gap:8px;margin:7px 0;align-items:center}.miniTitle{display:block;font-size:12px;color:var(--muted);font-weight:800;margin-bottom:6px}.results{border-color:#bfd2e7}.resultGrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px}.result{background:#f8fbff;border:1px solid #dce8f5;border-radius:12px;padding:13px;min-height:92px;display:flex;flex-direction:column;gap:6px}.result span{font-size:12px;color:var(--muted)}.result strong{font-size:20px}.result small{color:var(--accent);font-size:11px}.coverageGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.coverageItem{border:1px solid #cfe5d7;background:#f4fbf6;border-radius:10px;padding:12px;display:flex;gap:8px;align-items:flex-start}.coverageItem span{color:var(--ok);font-weight:900}.notice{margin-top:16px;padding:14px;border-radius:10px;background:#fff8e8;border:1px solid #f1d79c;color:#6f4a00;line-height:1.7}.totalLine{font-weight:800;color:#344054!important}.muted{color:var(--muted)}.patternToggleGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.toggleCard{display:flex;grid-template-columns:auto 1fr;flex-direction:row;align-items:center;gap:10px;border:1px solid var(--line);border-radius:10px;padding:12px;background:#fff}.toggleCard input{width:auto}.actionGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.actionCard{border:1px solid var(--line);border-radius:12px;padding:16px;background:#fbfcfd}.actionCard h3{margin:0 0 8px}.actionCard p{min-height:42px}.previewSection{overflow-x:auto;padding-bottom:30px}.previewToolbar{max-width:210mm;margin:0 auto 16px;display:flex;justify-content:space-between;align-items:center;gap:16px}.previewToolbar h2{margin:0 0 4px}.previewToolbar p{margin:0;color:var(--muted)}.formPreview{display:grid;grid-gap:22px;gap:22px;justify-items:center}.formBuildingPages{display:contents}.formPage{width:210mm;min-height:297mm;max-width:100%;background:white;border:1px solid #cfd6dd;box-shadow:0 8px 26px rgba(28,39,55,.12);padding:14mm 13mm 12mm;color:#111;font-family:Yu Mincho,Hiragino Mincho ProN,"Noto Serif JP",serif;font-size:10.5pt;line-height:1.45}.formPageLong{font-size:9.2pt;line-height:1.35}.formOrdinance{text-align:left;font-size:9pt}.officialTitle{text-align:center;font-size:20pt;letter-spacing:.12em;margin:10mm 0 4mm}.formFaceTitle{text-align:center;margin:0 0 4mm}.formFaceTitle span{display:block}.formFaceTitle strong{display:block;margin-top:2mm;font-size:13pt}.officialLead{text-indent:1em;margin:8mm 0 6mm}.recipient{text-align:left;margin:6mm 0;font-size:11pt}.signatureBlock{margin-left:auto;width:58%;display:grid;grid-gap:5mm;gap:5mm;text-align:left;margin-top:8mm}.officialUse{margin-top:18mm;border:1px solid #222;min-height:50mm;padding:4mm}.officialBoxes{display:grid;grid-template-columns:repeat(4,1fr);margin-top:5mm;min-height:34mm}.officialBoxes span{border:1px solid #555;padding:2mm}.formGroup{border-top:1px solid #222;padding-top:2mm;margin-top:2mm}.formGroup h4{margin:0 0 1.5mm;font-size:inherit}.compactGroup .formLine{min-height:5.5mm}.formLine{display:grid;grid-template-columns:minmax(52mm,42%) 1fr;border-bottom:1px solid #777;min-height:7mm;align-items:center}.formLabel{padding:1.2mm 2mm;font-weight:700}.formValue{padding:1.2mm 2mm;white-space:pre-wrap}.checkLine{display:flex;gap:5mm;flex-wrap:wrap;padding:2mm}.officialTable{min-width:0;width:100%;border-collapse:collapse;font-size:.92em}.officialTable td,.officialTable th{border:1px solid #333;padding:1.5mm;background:white;text-align:center}.officialTable th{font-weight:700}.patternList{padding:5mm 0}.printNotice{font-family:system-ui,sans-serif;font-size:9pt}@media (max-width:1000px){.coverageGrid,.grid.four,.grid.three,.resultGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.formPage{width:100%;min-width:760px}}@media (max-width:640px){.shell{width:min(100% - 20px,1500px);padding-top:18px}.buildingHead,.hero,.previewToolbar,.sectionTitle{flex-direction:column;align-items:stretch}.heroActions{justify-content:flex-start}.actionGrid,.coverageGrid,.grid.four,.grid.three,.patternToggleGrid,.resultGrid{grid-template-columns:1fr}.status{align-self:flex-start}.useRow{grid-template-columns:1fr}}@page{size:A4 portrait;margin:0}@media print{body,html{background:#fff!important}.shell,body{margin:0}.shell{width:auto;padding:0}.noPrint{display:none!important}.previewSection{overflow:visible;padding:0}.formPreview{display:block}.formPage{width:210mm;min-width:210mm;height:297mm;min-height:297mm;margin:0;padding:12mm 12mm 10mm;border:0;box-shadow:none;page-break-after:always;break-after:page;overflow:hidden}.formPageLong{font-size:8.6pt}.formPage:last-child{page-break-after:auto;break-after:auto}.formBuildingPages{display:contents}}