:root{--navy:#1e3a5f;--navy-dark:#132b47;--amber:#f5a623;--paper:#f5f5f7;--card:#fff;--ink:#1d1d1f;--ink-soft:#6e6e73;--line:#e5e5ea;--line-soft:#f0f0f2;--radius:16px;--radius-sm:10px;--shadow-sm:0 1px 2px #0000000a, 0 1px 1px #00000008;--shadow-md:0 4px 16px #0000000f, 0 1px 3px #0000000a;--shadow-lg:0 12px 32px #0000001a, 0 2px 8px #0000000d}*{box-sizing:border-box}body{color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.01em;background:linear-gradient(#edf1f7 0%,#f5f5f7 35%,#f1eef6 100%) fixed;min-height:100vh;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Inter,sans-serif;font-size:16.5px}h2,h3{letter-spacing:-.02em;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Inter,sans-serif}h2{font-size:27px;font-weight:700}h3{color:var(--ink-soft);margin-top:28px;margin-bottom:12px;font-size:18px;font-weight:600}.topbar{-webkit-backdrop-filter:saturate(180%)blur(20px);color:var(--ink);z-index:20;border-bottom:1px solid var(--line-soft);background:#ffffffb8;padding:16px 24px;position:sticky;top:0}.topbar h1{letter-spacing:-.02em;color:var(--ink);margin:0;font-size:18px;font-weight:700}.topbar nav{flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;display:flex}.nav-tab{color:var(--ink-soft);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:980px;align-items:center;padding:8px 16px;font-size:13.5px;font-weight:600;line-height:1.2;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.nav-tab:hover{color:var(--ink);background:#0000000d}.nav-tab.active{background:var(--navy);color:#fff}.nav-tab-wrapper{display:inline-flex;position:relative}main{max-width:680px;margin:0 auto;padding:28px 20px 60px}main.wide{max-width:1100px}.card{-webkit-backdrop-filter:blur(24px)saturate(180%);background:#ffffff9e;border:1px solid #ffffffb3;border-radius:20px;margin-bottom:16px;padding:26px;transition:box-shadow .2s,transform .15s;box-shadow:0 8px 30px #1f293712,inset 0 1px #ffffff80}a .card:hover,.card.clickable:hover{box-shadow:0 12px 36px #1f29371a,inset 0 1px #ffffff80}.btn{background:var(--navy);color:#fff;cursor:pointer;letter-spacing:-.01em;box-shadow:var(--shadow-sm);border:none;border-radius:980px;min-height:50px;padding:15px 26px;font-size:16px;font-weight:600;transition:transform .12s,opacity .15s,box-shadow .15s}.btn:hover{opacity:.9;box-shadow:var(--shadow-md)}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.amber{background:var(--amber);color:var(--navy-dark)}.btn.full{width:100%}label{letter-spacing:.02em;text-transform:uppercase;color:var(--ink-soft);margin:20px 0 8px;font-size:13.5px;font-weight:600;display:block}input,select,textarea{border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;color:var(--ink);background:#fff;min-height:52px;padding:15px 16px;font-family:inherit;font-size:17px;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--navy);outline:none;box-shadow:0 0 0 3px #1e3a5f1a}input[type=checkbox]{width:auto;accent-color:var(--navy)}input[type=file]{background:var(--line-soft);border-style:dashed;padding:9px 12px;font-size:13.5px}.price-display{background:linear-gradient(135deg,var(--navy) 0%, var(--navy-dark) 100%);color:#fff;border-radius:var(--radius);box-shadow:var(--shadow-md);margin-top:22px;padding:20px 22px}.price-display .amount{letter-spacing:-.02em;font-size:34px;font-weight:700}.price-display .note{color:#c9d6e4;margin-top:6px;font-size:12.5px}table{font-family:inherit}th{letter-spacing:.01em;font-weight:600}.step{position:relative}.card.step{border:1.5px solid var(--line)}.step-header{border-bottom:2px solid var(--line-soft);align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;display:flex}.step-blue .step-header{border-bottom-color:#0071e359}.step-green .step-header{border-bottom-color:#34c75959}.step-amber .step-header{border-bottom-color:#f5a62373}.step-navy .step-header{border-bottom-color:#1e3a5f59}.step-number{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:700;display:flex}.step-blue .step-number{background:#0071e3}.step-green .step-number{background:#34c759}.step-amber .step-number{background:var(--amber);color:var(--navy-dark)}.step-navy .step-number{background:var(--navy)}.step-title{letter-spacing:-.02em;color:var(--ink);font-size:17px;font-weight:700}.step-blue .step-title{color:#0071e3}.step-green .step-title{color:#1f7a3d}.step-amber .step-title{color:#8a5a00}.step-navy .step-title{color:var(--navy)}.step-subtitle{color:var(--ink-soft);margin-top:1px;font-size:12.5px}.alpha-bar{flex-wrap:wrap;gap:3px;margin-top:14px;display:flex}.alpha-bar button{min-width:30px;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px 4px;font-family:inherit;font-size:12.5px;font-weight:600;transition:background .12s,color .12s}.alpha-bar button:hover:not(:disabled){color:var(--ink);background:#0000000d}.alpha-bar button.active{background:var(--navy);color:#fff}.alpha-bar button:disabled{opacity:.28;cursor:default}.segmented{background:#0000000d;border-radius:12px;gap:2px;padding:3px;display:inline-flex}.segmented button{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:9px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:600;transition:background .15s,color .15s,box-shadow .15s}.segmented button.active{color:var(--ink);background:#fff;box-shadow:0 1px 4px #0000001a}.grid-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (max-width:520px){.grid-2{grid-template-columns:1fr}}.grid-2 label{margin-top:0}.unit-badge{background:var(--navy);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;margin-right:8px;font-size:12.5px;font-weight:700;display:inline-flex}.unit-card{border:1px solid var(--line-soft);background:linear-gradient(#fbfbfd 0%,#fff 100%);position:relative}.section-divider{border:none;border-top:1px solid var(--line);margin:26px 0 18px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#d2d2d7;border-radius:10px}::-webkit-scrollbar-track{background:0 0}.xl-form label{margin-top:30px;margin-bottom:10px;font-size:15px}.xl-form input,.xl-form select,.xl-form textarea{min-height:56px;padding:17px 18px;font-size:18.5px}.xl-form .btn{min-height:56px;padding:17px 28px;font-size:17.5px}.xl-form h2{font-size:29px}.xl-form .step-title{font-size:20px;font-weight:600}.xl-form .step-subtitle{font-size:14px}.xl-form .unit-badge{width:30px;height:30px;font-size:14px}.xl-form .field-block{margin-bottom:8px}.xl-form .tile-select{margin-top:2px;margin-bottom:8px}.field-dot{border-radius:2px;flex-shrink:0;width:9px;height:9px;margin-left:8px;display:inline-block}.field-dot.required{background:#639922}.field-dot.optional{background:var(--border-strong)}.completion-legend{color:var(--text-secondary,#5b6470);gap:20px;margin:8px 0 18px;font-size:12.5px;display:flex}.completion-legend span{align-items:center;gap:6px;display:flex}.completion-badge{border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:12.5px;font-weight:600;display:inline-flex}.completion-badge.complete{color:#27500a;background:#eaf3de}.completion-badge.incomplete{color:#633806;background:#faeeda}.tile-select{grid-template-columns:1fr;gap:8px;display:grid}.tile-select button{border:2px solid var(--line);color:var(--ink);cursor:pointer;text-align:left;background:#fff;border-radius:14px;justify-content:space-between;align-items:center;padding:15px 18px;font-family:inherit;font-size:16px;font-weight:500;transition:border-color .15s,background .15s;display:flex}.tile-select button.selected{border-color:var(--navy);background:#1e3a5f0f;font-weight:700}.tile-select button .code{color:var(--ink-soft);margin-right:10px;font-family:monospace;font-size:13px}.tile-select button.selected .code{color:var(--navy)}.tile-select .checkmark{border:2px solid var(--line);border-radius:50%;flex-shrink:0;width:20px;height:20px}.tile-select button.selected .checkmark{border-color:var(--navy);background:var(--navy);position:relative}.tile-select button.selected .checkmark:after{content:"✓";color:#fff;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex;position:absolute;inset:0}.report-table-wrap{-webkit-overflow-scrolling:touch;border-radius:16px;overflow-x:auto}.report-table-wrap table{min-width:920px}.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.sortable-th:hover{color:var(--ink)}.sortable-th .arrow{opacity:.5;margin-left:4px;font-size:10px}.form-with-guide{justify-content:center;align-items:flex-start;gap:28px;display:flex}.form-with-guide>main.xl-form{margin:0}.section-guide{display:none}@media (min-width:1180px){.section-guide{flex-shrink:0;width:280px;display:block;position:sticky;top:90px}}.section-guide-box{-webkit-backdrop-filter:blur(20px)saturate(180%);border:1px solid var(--line);box-shadow:var(--shadow-md);background:#ffffffb3;border-radius:16px;padding:20px}.section-guide-title{color:var(--navy);letter-spacing:-.01em;margin-bottom:8px;font-size:15px;font-weight:700}.section-guide-text{color:var(--ink-soft);margin:0;font-size:13.5px;line-height:1.6}
