:root{--navy:#152e44;--teal:#126b65;--teal-dark:#0e514e;--mint:#e8f2eb;--bg:#f4f6f6;--line:#dfe7e6;--muted:#71828b;--orange:#ac6b34;--red:#aa4b45}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Tahoma,Arial,sans-serif;color:var(--navy);background:var(--bg);font-size:14px;line-height:1.9}button,input,select{font:inherit}button,a,input,select,summary{outline-offset:4px}button{border:1px solid var(--line);background:white;color:var(--navy);padding:9px 16px;border-radius:8px;cursor:pointer;transition:background .15s}button:hover{border-color:#7ca6a1;background:#f0f7f4}button:disabled{cursor:not-allowed;opacity:.5}button.primary{background:var(--teal);color:white;border-color:var(--teal)}button.primary:hover{background:var(--teal-dark)}button.link-button{padding:0;border:0;color:var(--teal);background:transparent}a{color:var(--teal)}aside{position:fixed;width:238px;inset:0 0 0 auto;padding:32px 22px;background:white;border-left:1px solid var(--line);z-index:3}.brand{text-decoration:none;display:flex;align-items:center;gap:12px;color:var(--navy);font-size:23px;font-weight:bold;line-height:1.6}.brand b{color:var(--teal)}.brand small{display:block;font-size:10px;font-weight:normal;color:var(--muted)}.brand-icon{font-size:34px;color:var(--teal);border:1px solid #cbded9;border-radius:9px;padding:0 6px}.nav-label{margin:45px 12px 12px;color:#92a1a5;font-size:10px}nav{display:grid;gap:7px}nav button{display:flex;gap:11px;text-align:right;border-color:transparent;background:transparent;font-size:12px;padding:11px 13px}nav button.active{background:#e8f2ef;color:var(--teal);font-weight:bold}nav button span{width:20px;font-size:17px;line-height:1.4}.aside-foot{position:absolute;bottom:28px;font-size:11px;color:var(--muted)}.aside-foot small{display:block;margin-right:15px}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#42a07c;margin-left:5px}.app{margin-right:238px}header{height:82px;background:#ffffffb8;border-bottom:1px solid var(--line);padding:0 36px;display:flex;justify-content:space-between;align-items:center;gap:15px}.breadcrumb,#saveStatus{font-size:11px;color:var(--muted)}.header-actions{display:flex;align-items:center;gap:16px}header strong{font-size:12px}main{max-width:1530px;margin:auto;padding:0 36px}.hero{display:flex;justify-content:space-between;align-items:center;padding:42px 0 30px;gap:25px}.eyebrow{font-size:11px;color:var(--teal);font-weight:bold;letter-spacing:.2px}h1{font-size:38px;line-height:1.55;letter-spacing:-.5px;margin:10px 0 14px}h1 em{color:var(--teal);font-style:normal}h2{font-size:17px;line-height:1.7;margin:0 0 20px}h3{font-size:14px;margin:16px 0 10px}p{color:#647783;margin:12px 0}.hero p{font-size:13px}.hero-actions{display:flex;gap:10px;margin-top:22px}.hero-art{position:relative;width:300px;height:240px;border-radius:16px;background:linear-gradient(145deg,#e3ede8,#f0f3ed);overflow:hidden;flex-shrink:0}.hero-art:after{content:'';position:absolute;width:200px;height:200px;border:1px solid #cbded6;border-radius:50%;left:-80px;top:-80px}.art-label{position:absolute;top:20px;left:20px;color:#76968b;font:11px monospace;direction:ltr}.building{position:absolute;bottom:0;border:1px solid #b5ccc2;border-bottom:0;background:repeating-linear-gradient(0deg,transparent 0 24px,#aecbc0 24px 25px),repeating-linear-gradient(90deg,#d3e4d9 0 25px,#b6cdc2 25px 26px);transform:skewY(-5deg)}.b1{left:30px;width:70px;height:135px}.b2{left:103px;width:80px;height:185px}.b3{left:186px;width:50px;height:115px}.art-badge{position:absolute;right:16px;bottom:25px;border-radius:10px;background:var(--teal);color:white;padding:12px 18px;font-size:13px;transform:rotate(3deg)}.example-note{background:#f9f6e9;border:1px solid #e8e2c9;color:#8b7947;padding:9px 15px;border-radius:8px;font-size:11px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:24px 0 14px}.section-head h2{margin:0}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}.metric{border:1px solid var(--line);background:white;border-radius:11px;padding:18px;min-width:0}.metric small{color:var(--muted);font-size:11px;display:block}.metric strong{display:block;font-size:25px;line-height:1.6;margin-top:8px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.metric .unit{font-size:10px;color:var(--muted);font-weight:normal}.metric.featured{background:var(--teal);color:white;border-color:var(--teal)}.metric.featured small,.metric.featured .unit{color:#cce0d9}.metric .sub{font-size:10px;color:var(--muted)}.grid-two{display:grid;grid-template-columns:1.1fr 1fr;gap:20px;align-items:start}article{border:1px solid var(--line);background:white;border-radius:12px;padding:24px;margin-bottom:22px;min-width:0}.chip{background:#ecf4ef;color:var(--teal);border-radius:5px;padding:3px 9px;font-size:10px;white-space:nowrap}.price-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.price-trio div{border-left:1px solid var(--line);padding-left:8px}.price-trio div:last-child{border:0}.price-trio small{font-size:10px;color:var(--muted)}.price-trio strong{display:block;font-size:21px;margin:8px 0}.hint{font-size:11px;color:var(--muted)}.alert{border:1px solid #d5e4de;border-radius:8px;background:#edf5f0;padding:12px 16px;font-size:12px;color:#456d61;margin:16px 0}.alert.danger{border-color:#e4beb6;background:#fff0eb;color:#9d4e3f}.decision-status{padding:4px 10px;border-radius:5px;background:#ebf3ed;color:var(--teal);display:inline-block;font-size:12px}.decision-status.review{background:#fbf3e6;color:#957034}.decision-status.bad{background:#fbefea;color:#a44f45}.decision-main{font-size:26px;margin:14px 0;color:var(--navy);font-weight:bold}.decision-reasons{display:grid;gap:10px}.reason{display:flex;justify-content:space-between;border-bottom:1px solid #eff1f0;padding-bottom:6px;font-size:12px}.chart{min-height:130px;display:grid;gap:12px}.chart-row{display:flex;align-items:center;gap:12px;width:100%;padding:0;border:0;background:transparent!important;text-align:right;border-radius:0;font-size:11px}.chart-row span:first-child{width:80px;flex-shrink:0}.chart-track{height:16px;flex:1;background:#eef3f1;border-radius:4px;overflow:hidden}.chart-fill{height:100%;background:#539a8c;border-radius:4px;min-width:2px}.chart-row b{width:95px;font-size:11px;direction:ltr;text-align:left;font-weight:normal}.chart-row.selected .chart-track{outline:2px solid var(--teal)}.negative{color:var(--red)}.return-row{display:flex;align-items:center;gap:15px;margin:18px 0}.return-row strong{font-size:32px;color:var(--teal);min-width:100px}.return-row p{margin:0;font-size:12px}.page-intro{padding:30px 0 20px}.page-intro h1{font-size:31px}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.cols3{grid-template-columns:repeat(3,minmax(0,1fr))}label{display:block;font-size:11px;color:#506b78}input,select{display:block;width:100%;padding:10px 12px;border-radius:7px;border:1px solid #d8e2e2;background:#fbfcfc;color:var(--navy);margin-top:6px;min-width:0}input:focus,select:focus{outline:2px solid #7db5a6;border-color:transparent}input:invalid:not(:placeholder-shown){border-color:#d2a69d}input[type=number]{direction:ltr;text-align:right}input[type=checkbox]{display:inline-block;width:auto;margin:0 0 0 8px;accent-color:var(--teal)}input:disabled,select:disabled{opacity:.55;background:#edf0ee}.check-label{display:flex;align-items:center;margin-top:16px}.step{font-size:11px;border:1px solid #c9ded5;background:#eef5ef;padding:4px 7px;border-radius:6px;color:var(--teal);margin-left:10px}.summary-line{background:#f0f5f3;padding:12px 15px;border-radius:7px;font-size:12px;margin-top:18px}.separator{height:1px;background:var(--line);margin:20px 0}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;white-space:nowrap;font-size:11px}th,td{padding:12px;border-bottom:1px solid var(--line);text-align:right;vertical-align:top}th{background:#f3f7f5;color:#637d83;font-weight:normal}td small{display:block;color:var(--muted);font-size:10px}td button{padding:4px 8px;font-size:10px;margin:2px}td.wrap{white-space:normal;min-width:150px}table strong{font-size:13px}.fair-hero{background:var(--teal);color:white;border-radius:14px;padding:30px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center;gap:20px}.fair-hero small{color:#c5ded4}.fair-hero strong{display:block;font-size:45px;line-height:1.5}.fair-hero p{color:#d1e4da}.fair-hero .chip{background:#ffffff24;color:white}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.dcf-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.dcf-steps>div{background:#f5f8f5;padding:16px;border-radius:9px}.dcf-steps strong{display:block;font-size:23px;color:var(--teal)}.dcf-steps small{font-size:11px}.platform-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}.platform{background:#f4f7f5;border:1px solid var(--line);border-radius:8px;padding:12px}.platform strong{display:block;font-size:12px;direction:ltr;text-align:right}.platform small{font-size:10px;color:var(--muted)}.platform a{font-size:11px;margin-left:12px}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0 22px}.file-label{border:1px dashed #a9c6bd;background:#f4f8f5;padding:8px 15px;border-radius:7px}.file-label input{padding:0;border:0;background:transparent;font-size:11px;max-width:220px}summary{cursor:pointer;color:var(--teal);font-size:13px;font-weight:bold}details p{font-size:12px}hr{border:0;border-top:1px solid var(--line);margin:24px 0}.saved-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.saved-grid article{padding:20px}.saved-grid p{font-size:11px}.saved-grid strong{font-size:24px;display:block}.risk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.risk-grid>div{padding:14px;background:#f5f7f6;border-radius:8px}.risk-grid b{font-size:12px}.risk-grid p{font-size:11px;margin:6px 0 0}.report-title{padding-bottom:22px;border-bottom:2px solid var(--teal)}.report-title h1{font-size:28px}.report-title small{font-size:11px;color:var(--muted)}.report-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.report-grid div{border-bottom:1px solid var(--line);padding:8px;font-size:11px}.report-grid b{display:block}.report-status{padding:16px;border-radius:8px;background:#edf4ef}footer{margin-top:24px;padding:28px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}footer b{color:var(--teal)}#toast{display:none;position:fixed;bottom:25px;left:25px;max-width:360px;border-radius:9px;padding:12px 20px;background:#173a40;color:white;z-index:10;box-shadow:0 10px 35px #1233;font-size:12px}[hidden]{display:none!important}.test-pass{color:var(--teal)}.test-fail{color:var(--red)}#selfTests{font-size:12px;margin-top:15px}select#chartMode{font-size:10px;max-width:175px;margin:0;padding:5px}.page{animation:appear .18s ease}@keyframes appear{from{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:none}}@media(min-width:1600px){main{padding:0 50px}.hero{padding-top:55px}.hero-art{width:360px}}@media(max-width:1150px){aside{width:205px;padding:25px 16px}.app{margin-right:205px}main{padding:0 22px}header{padding:0 22px}.brand{font-size:19px}.metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-two{grid-template-columns:1fr}.hero-art{width:230px;height:230px}h1{font-size:32px}.cols3{grid-template-columns:repeat(2,minmax(0,1fr))}.metric strong{font-size:23px}.saved-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){aside{position:sticky;top:0;width:100%;padding:12px 16px;border-left:0;border-bottom:1px solid var(--line)}.brand{font-size:20px}.brand small{display:none}.brand-icon{font-size:24px}.nav-label,.aside-foot{display:none}nav{display:flex;overflow-x:auto;gap:6px;margin-top:10px;scrollbar-width:thin}nav button{white-space:nowrap;flex-shrink:0;padding:7px 10px;font-size:11px;gap:5px}nav button span{font-size:14px;width:15px}.app{margin:0}header{height:65px;padding:0 16px}.breadcrumb,#saveStatus{display:none}header button{font-size:11px;padding:7px 10px}main{padding:0 16px}.hero{padding-top:28px}.hero-art{display:none}h1{font-size:31px}.hero-actions button{font-size:11px;padding:8px 11px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric{padding:14px}.metric strong{font-size:22px}.metric small{font-size:10px}article{padding:18px;margin-bottom:16px}.section-head{margin-top:20px}.price-trio{gap:8px}.price-trio strong{font-size:16px}.fields,.cols3{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}label{font-size:10px}input,select{padding:10px 8px;font-size:13px}.page-intro h1{font-size:27px}p{font-size:12px}.fair-hero{padding:22px;display:block}.fair-hero strong{font-size:36px}.fair-hero .chip{margin-top:12px}.dcf-steps{grid-template-columns:1fr}.three{grid-template-columns:1fr}.platform-grid{grid-template-columns:1fr 1fr}.saved-grid{grid-template-columns:1fr}.risk-grid{grid-template-columns:1fr 1fr}.toolbar button{font-size:11px}.report-grid{grid-template-columns:1fr 1fr}footer span{font-size:9px}.hero p{font-size:12px}.chart-row span:first-child{width:65px}.chart-row b{width:85px}.section-head h2{font-size:15px}.section-head .chip{font-size:9px}header strong{font-size:11px}#toast{left:16px;right:16px;bottom:16px}.report-title h1{font-size:22px}}
@media print{@page{size:A4;margin:14mm}body{background:white;color:#172e3b;font-size:10px;line-height:1.6}aside,header,footer,.no-print,.page:not(#report),#toast{display:none!important}.app,main{margin:0;padding:0;max-width:none}#report{display:block!important}article{padding:12px;border:1px solid #ccc;margin:12px 0;break-inside:avoid;border-radius:0}.metrics{grid-template-columns:repeat(4,1fr);gap:8px}.metric{padding:10px}.metric strong{font-size:18px}h1,h2{break-after:avoid}h2{font-size:15px}.report-grid{grid-template-columns:repeat(3,1fr)}.report-title{margin-top:0}th,td{font-size:9px;padding:6px;white-space:normal}.table-wrap{overflow:visible}.metric.featured{color:var(--navy);background:white}.metric.featured small{color:var(--muted)}a{color:inherit;text-decoration:none}.risk-grid{grid-template-columns:repeat(3,1fr)}.report-source{overflow-wrap:anywhere;white-space:normal}.report-status{background:white;border:1px solid #aaa}}

@media(max-width:700px){input,select{font-size:16px;min-height:44px}nav button{min-height:40px}}

.admin-value{display:block;padding:12px;border-radius:10px;background:#eef5f3;color:#355953;font-size:.92rem}.admin-link{display:block;padding:14px;color:inherit;text-decoration:none;border-top:1px solid #d7e4df}
