:root{--ink:#10213a;--muted:#64748b;--brand:#3aaee8;--brand2:#087bb8;--line:#dbe6ef;--soft:#eef8fd;--paper:#fff;--danger:#e45b69;--warn:#e4a837;--good:#27a47d;font-family:Pretendard,"Noto Sans KR","Malgun Gothic",sans-serif;color:var(--ink);background:#eaf0f5;font-synthesis:none}*{box-sizing:border-box}body{margin:0;font-size:16px}.topbar{height:72px;background:#fff;border-bottom:1px solid #dce5ec;display:flex;align-items:center;padding:0 28px;gap:24px;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:10px;font-weight:800;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:linear-gradient(145deg,#1a9dde,#70cdf5);color:#fff;letter-spacing:-1px}.theme-switcher{display:flex;gap:8px;margin:auto}.theme-chip{border:1px solid #d6e0e8;background:#f7fafc;color:#41536a;border-radius:12px;padding:9px 13px;font-weight:700;cursor:pointer}.theme-chip b{display:inline-grid;place-items:center;width:21px;height:21px;border-radius:6px;background:#e8eef3;margin-right:5px}.theme-chip.active{background:#10213a;color:#fff;border-color:#10213a}.theme-chip.active b{background:var(--brand);color:#fff}.top-actions{display:flex;gap:8px}.top-actions button,.mini{border:0;border-radius:10px;padding:11px 15px;font-weight:800;cursor:pointer}.primary{background:#109bd9;color:#fff}.ghost{background:#edf2f6;color:#34465e}.workspace{display:grid;grid-template-columns:350px minmax(700px,1fr);min-height:calc(100vh - 72px)}.editor-panel{background:#fff;border-right:1px solid #dce5ec;padding:28px 24px;height:calc(100vh - 72px);overflow:auto;position:sticky;top:72px}.panel-head{padding-bottom:24px;border-bottom:1px solid #e5ebf0}.eyebrow,.kicker{display:block;color:var(--brand2);font-size:13px;font-weight:900;letter-spacing:.12em}.panel-head h1{font-size:24px;line-height:1.35;letter-spacing:-.04em;margin:8px 0}.panel-head p{font-size:14px;color:#66788c;line-height:1.6;margin:0}.form-section{padding:22px 0;border-bottom:1px solid #e5ebf0}.form-section h2{font-size:16px;margin:0 0 14px}.section-title-row{display:flex;align-items:center;justify-content:space-between}.mini{padding:7px 10px;background:#e9f6fc;color:#087bb8;font-size:12px}.form-section label{display:block;font-size:13px;font-weight:700;color:#526276;margin-top:12px}.form-section input,.form-section textarea{width:100%;margin-top:6px;border:1px solid #ccd8e2;border-radius:9px;background:#fbfdfe;color:#17283f;padding:10px 11px;font:inherit;font-size:14px;outline:none}.form-section input:focus,.form-section textarea:focus,.amount-input:focus{border-color:#36aee7;box-shadow:0 0 0 3px #dff4fe}.form-section textarea{min-height:82px;resize:vertical;line-height:1.5}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.contract-card{position:relative;background:#f5f8fb;border:1px solid #dce5ec;border-radius:12px;padding:12px;margin-top:10px}.contract-card .remove{position:absolute;right:9px;top:8px;border:0;background:transparent;color:#9aabb9;font-size:18px;cursor:pointer}.contract-card input{background:#fff;margin-top:7px}.preview-area{padding:24px 32px 60px;overflow:auto}.preview-toolbar{max-width:900px;margin:0 auto 14px;display:flex;justify-content:space-between;color:#617386;font-size:14px}.preview-toolbar strong{color:#14263d}.preview-toolbar span{margin-left:8px}.save-state{color:#208a70!important}.document{max-width:900px;margin:auto}.paper{position:relative;background:var(--paper);width:100%;min-height:1273px;margin-bottom:28px;padding:62px 66px 58px;box-shadow:0 15px 50px rgba(29,50,70,.13);overflow:hidden}.doc-masthead,.page-heading{display:flex;align-items:flex-start;justify-content:space-between;border-bottom:2px solid var(--ink);padding-bottom:17px}.doc-brand{font-weight:900;letter-spacing:.08em}.doc-brand span{display:inline-grid;place-items:center;width:36px;height:30px;background:var(--ink);color:#fff;border-radius:6px;margin-right:8px}.doc-number{font-size:12px;color:var(--muted);letter-spacing:.12em}.cover-title{margin-top:112px}.cover-title h2{font-size:58px;line-height:1.16;letter-spacing:-.06em;margin:14px 0 22px}.cover-title p{font-size:18px;color:#63758a}.profile-strip{margin-top:88px;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0}.profile-strip div{padding:0 18px;border-right:1px solid var(--line)}.profile-strip div:first-child{padding-left:0}.profile-strip div:last-child{border:0}.profile-strip small{display:block;color:var(--muted);font-size:13px;margin-bottom:7px}.profile-strip strong{font-size:17px}.cover-summary{display:grid;grid-template-columns:180px 1fr;gap:28px;margin-top:54px}.score-ring{height:180px;border-radius:50%;border:18px solid #dff3fc;border-top-color:var(--brand);display:flex;flex-direction:column;align-items:center;justify-content:center}.score-ring span{font-size:12px;color:var(--muted)}.score-ring b{font-size:47px;line-height:1}.score-ring em{font-size:12px;color:var(--muted);font-style:normal}.summary-copy{border-radius:18px;background:var(--soft);padding:31px;display:flex;flex-direction:column;justify-content:center}.summary-copy span,.diagnosis-box span,.memo-box span{font-size:13px;color:var(--brand2);font-weight:900;margin-bottom:12px}.summary-copy strong{font-size:24px;line-height:1.55;letter-spacing:-.03em}.doc-footer{position:absolute;left:66px;right:66px;bottom:30px;border-top:1px solid var(--line);padding-top:13px;display:flex;justify-content:space-between;color:#8493a4;font-size:12px}.page-heading h2{font-size:38px;letter-spacing:-.05em;margin:8px 0 0}.page-customer{font-weight:800;margin-top:22px}.legend{display:flex;align-items:center;gap:18px;margin:25px 0 15px;font-size:13px;color:#66788c}.legend i{width:9px;height:9px;display:inline-block;border-radius:50%;margin-right:5px}.legend em{font-style:normal;margin-left:auto}.good{background:var(--good)}.warn{background:var(--warn)}.lack{background:var(--danger)}.coverage-table{width:100%;border-collapse:separate;border-spacing:0;font-size:15px}.coverage-table th{background:var(--ink);color:#fff;padding:16px 12px;font-size:13px}.coverage-table th:first-child{border-radius:10px 0 0 0}.coverage-table th:last-child{border-radius:0 10px 0 0}.coverage-table td{border-bottom:1px solid var(--line);padding:12px 10px;text-align:center}.coverage-table td:first-child{text-align:left;font-weight:800}.coverage-table tbody tr:nth-child(even){background:#f7fafc}.amount-input{width:82px;border:1px solid transparent;border-radius:7px;background:transparent;text-align:right;padding:7px 5px;font:inherit;font-weight:700;color:inherit;outline:none}.total-cell{font-weight:900;color:var(--brand2)}.status-pill{display:inline-flex;border-radius:20px;padding:5px 9px;font-size:12px;font-weight:800}.status-good{background:#e3f6ef;color:#167b5d}.status-warn{background:#fff2d7;color:#a16b04}.status-lack{background:#fde8eb;color:#b73f4c}.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}.insight{padding:20px 18px;border:1px solid var(--line);border-radius:14px;min-height:160px}.insight span{font-size:12px;color:var(--muted)}.insight strong{display:block;font-size:19px;margin:8px 0}.insight p{font-size:13px;line-height:1.55;color:#63758a;margin:0}.diagnosis-box{background:var(--ink);color:#fff;border-radius:18px;padding:31px;margin-top:34px}.diagnosis-box span{display:block;color:#7ed4fa}.diagnosis-box strong{font-size:25px;line-height:1.55}.priority-list{list-style:none;padding:0;margin:32px 0}.priority-list li{display:grid;grid-template-columns:62px 1fr;gap:18px;padding:24px 0;border-bottom:1px solid var(--line)}.priority-list li>span{font-size:28px;font-weight:900;color:#a6dcf4}.priority-list b{font-size:19px}.priority-list p{font-size:15px;color:#63758a;margin:8px 0 0;line-height:1.6}.memo-box{background:var(--soft);border-left:5px solid var(--brand);padding:24px 26px}.memo-box span{display:block}.memo-box p{font-size:17px;line-height:1.7;margin:0}.signature-row{display:grid;grid-template-columns:1fr 1fr;gap:46px;margin-top:60px}.signature-row div{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:end}.signature-row i{display:block;border-bottom:1px solid #8c9aaa}.signature-row b{font-size:16px}.disclaimer{font-size:12px;line-height:1.6;color:#8190a0;margin-top:52px}
body[data-theme="cards"]{--ink:#123755;--brand:#27a9dc;--brand2:#157ba6;--soft:#eaf7fc}.cards .noop{display:none}body[data-theme="cards"] .paper{border-radius:24px}body[data-theme="cards"] .doc-masthead,body[data-theme="cards"] .page-heading{border-bottom:0}body[data-theme="cards"] .cover-page{background:linear-gradient(160deg,#f8fdff 0 68%,#dff4fc 68%)}body[data-theme="cards"] .cover-title{margin-top:70px;background:#fff;border:1px solid #d9edf5;border-radius:28px;padding:45px;box-shadow:0 15px 50px rgba(25,119,156,.1)}body[data-theme="cards"] .cover-title h2{font-size:51px}body[data-theme="cards"] .profile-strip{background:#123755;color:#fff;border:0;border-radius:18px;padding:22px;margin-top:30px}body[data-theme="cards"] .profile-strip small{color:#9bcbe0}body[data-theme="cards"] .insight{border:0;background:#eef8fc}body[data-theme="cards"] .coverage-table{border-spacing:0 8px}body[data-theme="cards"] .coverage-table th{background:transparent;color:#4d6a7b;border-bottom:2px solid #123755}body[data-theme="cards"] .coverage-table td{background:#f1f8fb;border:0}body[data-theme="cards"] .coverage-table td:first-child{border-radius:10px 0 0 10px}body[data-theme="cards"] .coverage-table td:last-child{border-radius:0 10px 10px 0}body[data-theme="cards"] .diagnosis-box{background:linear-gradient(135deg,#0c658f,#25a8d9)}body[data-theme="cards"] .priority-list li{border:1px solid #dcecf3;border-radius:16px;margin-bottom:13px;padding:20px}body[data-theme="cards"] .memo-box{border:0;border-radius:16px}
body[data-theme="matrix"]{--ink:#17242f;--brand:#46b6ef;--brand2:#0074ad;--soft:#edf7fb}.matrix .noop{display:none}body[data-theme="matrix"] .paper{border-top:10px solid var(--brand)}body[data-theme="matrix"] .doc-masthead,body[data-theme="matrix"] .page-heading{border-bottom:4px solid var(--brand)}body[data-theme="matrix"] .cover-title{margin-top:80px;border-left:12px solid var(--brand);padding-left:38px}body[data-theme="matrix"] .cover-title h2{font-size:54px}body[data-theme="matrix"] .profile-strip{margin-top:55px;background:#f1f5f8;padding:25px}body[data-theme="matrix"] .cover-summary{grid-template-columns:1fr;margin-top:38px}body[data-theme="matrix"] .score-ring{display:none}body[data-theme="matrix"] .summary-copy{border-radius:0;border-top:5px solid var(--ink);background:#fff;border-left:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}body[data-theme="matrix"] .coverage-table th{background:#0876ad;border-right:1px solid #4fa9d5}body[data-theme="matrix"] .coverage-table td{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}body[data-theme="matrix"] .coverage-table td:first-child{border-left:1px solid var(--line)}body[data-theme="matrix"] .insight{border-radius:0;border-top:4px solid var(--brand)}body[data-theme="matrix"] .diagnosis-box{border-radius:0;border-left:10px solid var(--brand)}body[data-theme="matrix"] .priority-list{counter-reset:item}body[data-theme="matrix"] .priority-list li{grid-template-columns:88px 1fr;background:#f4f7f9;margin-bottom:2px;padding:25px}body[data-theme="matrix"] .priority-list li>span{color:#0074ad}
@media(max-width:1100px){.workspace{grid-template-columns:300px minmax(620px,1fr)}.theme-chip{font-size:0}.theme-chip b{font-size:13px;margin:0}.preview-area{padding:20px}.paper{padding:48px 45px}.doc-footer{left:45px;right:45px}.cover-title h2{font-size:48px}}
@media(max-width:800px){.topbar{padding:0 14px}.brand span:last-child{display:none}.workspace{display:block}.editor-panel{position:static;height:auto}.preview-area{padding:16px;overflow:hidden}.document{transform-origin:top left}.paper{min-height:auto;padding:38px 28px}.cover-title{margin-top:55px}.cover-title h2{font-size:39px}.profile-strip{grid-template-columns:1fr 1fr;gap:18px}.profile-strip div{border:0;padding:0}.cover-summary{grid-template-columns:1fr}.score-ring{display:none}.insight-grid{grid-template-columns:1fr}.doc-footer{position:static;margin-top:55px}.theme-switcher{margin-left:auto}.top-actions .ghost{display:none}}
@media print{@page{size:A4 portrait;margin:0}body{background:#fff;-webkit-print-color-adjust:exact;print-color-adjust:exact}.topbar,.editor-panel,.preview-toolbar{display:none!important}.workspace,.preview-area,.document{display:block;padding:0;margin:0;max-width:none}.paper{width:210mm;height:297mm;min-height:297mm;margin:0;box-shadow:none;border-radius:0!important;padding:15mm 16mm 14mm;page-break-after:always}.paper:last-child{page-break-after:auto}.doc-footer{left:16mm;right:16mm;bottom:8mm}.cover-title h2{font-size:42pt}.page-heading h2{font-size:28pt}.coverage-table{font-size:12pt}.coverage-table th{font-size:10pt}.amount-input{font-size:11pt}.insight p,.priority-list p{font-size:11pt}.diagnosis-box strong{font-size:18pt}}

/* B형 상담 디자인의 비교 가독성 및 사용자 설정 */
.settings-btn{background:#10213a!important;color:#fff}.target-cell{font-weight:900;color:#285a73;background:#dff1f8!important}.achievement{display:block;font-size:11px;color:#657e8e;margin-top:4px;white-space:nowrap}.coverage-table th.target-head{background:#0c5f82!important}.coverage-table th.total-head{background:#087ead!important}body[data-theme="cards"] .coverage-table th{background:#123755;color:#fff;border-bottom:0}body[data-theme="cards"] .coverage-table th:first-child{border-radius:10px 0 0 10px}body[data-theme="cards"] .coverage-table th:last-child{border-radius:0 10px 10px 0}body[data-theme="cards"] .coverage-table td:first-child{border-left:5px solid #29a9dc}body[data-theme="cards"] .coverage-table tbody tr{filter:drop-shadow(0 3px 6px rgba(20,71,94,.07))}
.modal-backdrop{position:fixed;inset:0;background:rgba(9,24,38,.58);z-index:100;display:grid;place-items:center;padding:24px}.modal-backdrop[hidden]{display:none}.settings-modal{width:min(900px,100%);max-height:88vh;overflow:auto;background:#fff;border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.28);padding:30px}.settings-head{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #dce8ef;padding-bottom:20px}.settings-head h2{font-size:26px;letter-spacing:-.04em;margin:6px 0}.settings-head p{margin:0;color:#6a7c8e;font-size:14px}.modal-close{width:40px;height:40px;border:0;border-radius:50%;background:#edf3f7;color:#3a5366;font-size:26px;cursor:pointer}.settings-columns,.setting-row{display:grid;grid-template-columns:120px minmax(240px,1fr) 150px 46px;gap:10px;align-items:center}.settings-columns{padding:20px 7px 8px;color:#728496;font-size:13px;font-weight:800}.setting-row{padding:8px 0;border-bottom:1px solid #edf1f4}.setting-row input,.setting-row select{width:100%;border:1px solid #cad8e2;border-radius:10px;padding:12px;font:inherit;font-size:15px;background:#fff}.setting-row input:focus,.setting-row select:focus{outline:0;border-color:#29a9dc;box-shadow:0 0 0 3px #dff4fe}.setting-row button{width:40px;height:40px;border:0;border-radius:10px;background:#fdecef;color:#c54353;font-size:19px;cursor:pointer}.settings-actions{display:flex;justify-content:space-between;margin-top:22px}.settings-actions button{border:0;border-radius:11px;padding:12px 17px;font-weight:900;cursor:pointer}.add-row{background:#e9f6fc;color:#087ba9}@media(max-width:700px){.settings-columns{display:none}.setting-row{grid-template-columns:110px 1fr 42px}.setting-row .setting-name{grid-column:1/4;grid-row:1}.setting-row select{grid-column:1}.setting-row>input{grid-column:2}.settings-modal{padding:22px}.settings-head h2{font-size:22px}}@media print{.modal-backdrop{display:none!important}}

/* 보장항목명은 항상 가로 한 줄로 읽히도록 고정 */
.coverage-table-wrap{overflow-x:auto;padding-bottom:4px}.coverage-table{min-width:760px}.coverage-table th:first-child,.coverage-table td:first-child{width:190px;min-width:190px;max-width:190px;white-space:nowrap;word-break:keep-all;line-height:1.35}.coverage-table td:first-child{font-size:14px;letter-spacing:-.025em}.coverage-table th:not(:first-child),.coverage-table td:not(:first-child){min-width:76px}.coverage-table .amount-input{width:64px;padding-left:2px;padding-right:2px}.coverage-table th{white-space:nowrap}
@media(max-width:800px){.coverage-table th:first-child,.coverage-table td:first-child{position:sticky;left:0;z-index:2}.coverage-table td:first-child{background:#eef8fc!important;box-shadow:5px 0 9px rgba(20,71,94,.08)}.coverage-table th:first-child{z-index:3}}
@media print{.coverage-table{min-width:0;width:100%;font-size:10pt}.coverage-table th:first-child,.coverage-table td:first-child{width:38mm;min-width:38mm;max-width:38mm;white-space:nowrap;font-size:9.5pt}.coverage-table th:not(:first-child),.coverage-table td:not(:first-child){min-width:0}.coverage-table .amount-input{width:13mm;font-size:9.5pt}}
.analysis-mode{display:inline-flex;align-items:center;background:#e8f8f2;color:#187b60;border-radius:20px;padding:6px 9px;font-size:12px;font-weight:800;margin-bottom:4px}.analysis-mode.manual{background:#fff1dc;color:#9b650c}
.method-note{margin:18px 0 4px;padding:16px 18px;border-radius:14px;background:#edf8fd;border:1px solid #cdeaf7}.method-note b{font-size:14px;color:#0b6f9c}.method-note p,.source-note{font-size:12px;line-height:1.65;color:#627789;margin:7px 0 0}.setting-name small{display:block;color:#708595;font-size:11px;line-height:1.45;margin-top:5px}.source-note{border-top:1px solid #e5edf2;padding-top:14px;margin-top:18px}
.source-note a{color:#087cab;font-weight:800}
.coverage-table .group-row td{padding:8px 12px;background:#eaf6fc!important;color:#17648a;font-size:12px;font-weight:900;letter-spacing:.08em;border-left:0!important;border-bottom:1px solid #cfe8f4;text-align:left}
#analysisPages{display:contents}.analysis-page .page-heading h2 small{font-size:14px;color:#7890a2;letter-spacing:0;margin-left:8px}.analysis-page .coverage-table td{padding-top:10px;padding-bottom:10px}.analysis-page .insight-grid{margin-top:22px}.analysis-page .insight{min-height:140px;padding:17px 16px}
.contract-pager{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}.contract-page-btn{border:1px solid #cddde6;background:#fff;color:#526b7b;border-radius:10px;padding:10px 14px;font:inherit;font-size:14px;font-weight:800;cursor:pointer}.contract-page-btn.active{background:#123755;color:#fff;border-color:#123755}.page-customer small{display:block;margin-top:5px;color:#71899a;font-size:12px}
@media print{.contract-pager{display:none!important}.analysis-page[hidden]{display:block!important}.analysis-page{overflow:hidden}.analysis-page .coverage-table td{padding-top:7px;padding-bottom:7px}.analysis-page .coverage-table{border-spacing:0 5px}.analysis-page .insight{min-height:31mm}.analysis-page .insight-grid{margin-top:6mm}}

/* 공식 브랜드 로고와 고정형 컨설팅 리포트 */
.topbar{justify-content:space-between}.brand{min-width:0}.brand>img{display:block;width:174px;height:auto}.studio-name{padding-left:14px;border-left:1px solid #d8e4ec;color:#3e5569;font-size:14px;letter-spacing:-.02em}.top-actions{margin-left:auto}.advisor-field small{display:block;margin-top:7px;color:#7a8b9b;font-size:11px;font-weight:500;line-height:1.45}.doc-brand-logo{display:block;width:205px;height:auto}.cover-watermark{position:absolute;right:-75px;top:210px;width:390px;height:auto;opacity:.035;pointer-events:none}.cover-title,.profile-strip,.cover-summary{position:relative;z-index:1}.footer-brand img{display:block;width:112px;height:auto}.doc-footer{align-items:center}
@media(max-width:800px){.brand>img{width:145px}.studio-name{display:none}.doc-brand-logo{width:175px}.cover-watermark{width:300px;right:-90px}}
@media print{.doc-brand-logo{width:46mm}.footer-brand img{width:29mm}.cover-watermark{width:95mm;right:-18mm;top:52mm}}
