@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap');
:root{--navy:#14243a;--navy2:#203954;--gold:#c7a45e;--ink:#1f2937;--muted:#6b7280;--line:#e4e8ee;--paper:#fff;--bg:#f4f6f9}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 'DM Sans',Arial,sans-serif}.top{height:70px;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(calc((100% - 1120px)/2),24px);gap:20px}.brand{color:white;text-decoration:none;font-weight:700;letter-spacing:.2px}.brandmark{color:var(--gold);font-size:24px;margin-right:10px}.top nav{display:flex;gap:22px}.top nav a{color:#e4eaf0;text-decoration:none;font-size:13px}.top nav a:hover{color:#fff}.wrap{max-width:1120px;margin:34px auto;padding:0 22px;min-height:70vh}h1,h2,h3,p{margin-top:0}h1{font:700 34px/1.2 'Playfair Display',Georgia,serif;color:var(--navy);margin-bottom:10px}h2{font-size:20px;color:var(--navy)}h3{font-size:16px;color:var(--navy);margin-bottom:8px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:#a07e3d;margin-bottom:10px}.muted,small{color:var(--muted)}.small{font-size:12px}.hero{background:linear-gradient(120deg,#14243a,#284766);color:white;border-radius:18px;padding:34px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px}.hero h1{color:white}.hero p{color:#dbe3ec;margin:0}.hero .eyebrow{color:#dfc17e}.btn{border:0;border-radius:9px;background:var(--gold);color:#17263a;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;font-weight:700;font-size:13px;cursor:pointer}.btn:hover{filter:brightness(1.04)}.btn.secondary{background:#edf1f5;color:var(--navy)}.btn.full{width:100%;margin-top:12px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:22px}.stat,.panel,.form-card,.auth-card{background:white;border:1px solid var(--line);border-radius:14px;padding:22px}.stat span{display:block;color:var(--muted);font-size:12px}.stat b{display:block;font-size:30px;color:var(--navy);margin:4px 0}.stat small{font-size:11px}.panel{padding:0;overflow:hidden}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;border-bottom:1px solid var(--line)}.panel-head h2{margin:0}.panel-head a,.textlink{color:#9a7535;text-decoration:none;font-weight:700;font-size:13px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;padding:13px 18px;border-bottom:1px solid #edf0f3;white-space:nowrap}th{color:#667085;font-size:11px;text-transform:uppercase;letter-spacing:.7px;background:#fafbfc}.empty{padding:32px;color:var(--muted);text-align:center}.note{background:#fbf7ed;border:1px solid #eee2c6;border-left:4px solid var(--gold);padding:15px 18px;border-radius:9px;margin-top:18px;font-size:13px}.page-title{margin-bottom:24px}.page-title p{margin:0}.row-between{display:flex;justify-content:space-between;align-items:center;gap:20px}.form-card{max-width:760px;padding:28px}.field{margin-bottom:18px}.field label,.auth-card label{display:block;font-size:13px;font-weight:700;color:var(--navy);margin-bottom:7px}.field input,.field select,.auth-card input,.searchbar input{width:100%;padding:12px 13px;border:1px solid #d8dee7;border-radius:8px;font:inherit;background:#fff}.field small{display:block;margin-top:5px;font-size:11px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.alert{background:#fff0ef;color:#a33228;border:1px solid #f1c6c2;padding:11px 13px;border-radius:8px;margin-bottom:16px;font-size:13px}.auth-card{max-width:440px;margin:50px auto;padding:32px}.auth-card h1{font-size:29px}.auth-card input{margin-bottom:15px}.searchbar{display:flex;gap:10px;margin-bottom:18px;max-width:600px}.searchbar input{flex:1}footer{text-align:center;padding:25px;color:#7c8795;font-size:11px}footer span{display:block;margin-top:3px}.report-actions{display:flex;justify-content:space-between;max-width:850px;margin:0 auto 16px}.report{max-width:850px;margin:0 auto;background:white;box-shadow:0 8px 35px #1c2d4010}.report-cover{background:linear-gradient(140deg,#14243a,#274664);color:white;padding:54px 48px 42px}.report-cover h1{color:white;font-size:42px}.report-cover p{color:#e0e8f0}.report-cover .eyebrow{color:#e0c17c}.number-row{display:flex;gap:12px;margin:28px 0 20px}.number-row div{border:1px solid #8e9ca9;border-radius:12px;padding:13px 22px;min-width:105px;background:#ffffff0b}.number-row small{display:block;color:#d9c18a;font-size:9px;letter-spacing:1px}.number-row b{font:700 34px 'Playfair Display',Georgia,serif}.cover-note{font-size:12px!important;margin:0}.report-section{padding:28px 42px;border-bottom:1px solid #edf0f3}.report-section h2{font:700 21px 'Playfair Display',Georgia,serif;border-bottom:1px solid #e7dfce;padding-bottom:11px;margin-bottom:18px}.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.insight{background:#f7f8fa;border:1px solid #e8ebef;border-radius:11px;padding:16px;margin-bottom:12px;font-size:13px}.insight p{margin-bottom:9px}.insight p:last-child{margin-bottom:0}.insight b{color:#334155}.tag{font-size:10px;letter-spacing:.7px;color:#997438;font-weight:700;margin-bottom:9px}.lineitem{padding:12px 0;border-bottom:1px solid #edf0f3;font-size:13px}.lineitem:last-child{border:0}.lineitem h3{margin-bottom:4px}.lineitem h3 small{font-weight:400}.grid9{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;max-width:340px;margin:16px 0}.gridcell{border:1px solid #e1e5eb;background:#f7f8fa;border-radius:8px;min-height:62px;padding:7px;text-align:center}.gridcell small{display:block;font-size:10px}.gridcell b{font-size:17px;color:var(--navy);letter-spacing:3px}.report-section ul,.report-section ol{padding-left:20px;font-size:13px}.report-section li{margin-bottom:8px}.report-disclaimer{padding:20px 42px;color:#707987;font-size:10px;background:#fafbfc}.no-print{display:flex}
@media(max-width:700px){.top{padding:0 16px;height:auto;min-height:64px;align-items:flex-start;flex-direction:column;padding-top:12px;padding-bottom:12px}.top nav{gap:14px;flex-wrap:wrap}.wrap{padding:0 14px;margin:22px auto}.hero{display:block;padding:25px}.hero .btn{margin-top:20px}.stats{grid-template-columns:1fr}.form-grid,.two{grid-template-columns:1fr}.form-card{padding:19px}.row-between{align-items:flex-start;flex-direction:column}.report-cover{padding:35px 24px}.report-cover h1{font-size:34px}.number-row{gap:7px;flex-wrap:wrap}.number-row div{padding:10px 14px;min-width:85px}.report-section{padding:22px 20px}.report-disclaimer{padding:18px 20px}.report-actions{padding:0 4px}.report-actions .btn{padding:10px 12px}.searchbar{flex-direction:column}}
@media print{body{background:white}.top,footer,.no-print{display:none!important}.wrap{max-width:none;margin:0;padding:0}.report{box-shadow:none;max-width:none}.report-section{break-inside:avoid}.report-cover{print-color-adjust:exact;-webkit-print-color-adjust:exact}.insight,.gridcell{print-color-adjust:exact;-webkit-print-color-adjust:exact}.report-disclaimer{print-color-adjust:exact;-webkit-print-color-adjust:exact}}

/* Report redesign: midnight indigo, teal and warm copper. No deity artwork is used. */
.report{max-width:900px;border:1px solid #e7eaf0;border-radius:4px;overflow:hidden}
.cover{min-height:920px;padding:64px 62px 48px;background:radial-gradient(circle at 80% 15%,#e3f2f0 0,#f8fafb 36%,#fff 75%);position:relative;color:#172b49;display:flex;flex-direction:column;align-items:flex-start}
.cover:before{content:"";position:absolute;inset:22px;border:1px solid #b7d2ce;pointer-events:none}
.cover-brand{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700;letter-spacing:2px;color:#173c55}
.brand-symbol{font-size:44px;color:#b17a48;line-height:1}
.cover-brand small{font-size:9px;letter-spacing:1.3px;font-weight:500;color:#687a87}
.cover-rule{width:100%;height:1px;background:linear-gradient(90deg,#b17a48,transparent);margin:35px 0 75px}
.cover-kicker,.section-kicker{font-size:10px;font-weight:700;letter-spacing:2px;color:#a36e43}
.cover h1{font-size:54px;line-height:1.1;color:#172b49;margin:14px 0 28px}
.cover h1 em{font-weight:600;color:#2b7775}
.cover-subtitle{font-size:14px;color:#667782;margin-top:20px}
.client-name{font:700 30px 'Playfair Display',Georgia,serif;color:#172b49;margin:8px 0 30px}
.cover-numbers{display:flex;gap:14px;margin:5px 0 38px}
.cover-numbers div{background:#173c55;color:white;border-radius:12px;padding:16px 23px;min-width:112px;box-shadow:0 8px 20px #173c5517}
.cover-numbers small{display:block;color:#bfe0db;font-size:9px;letter-spacing:1px}
.cover-numbers b{display:block;font:700 36px 'Playfair Display',Georgia,serif}
.cover-details{display:grid;grid-template-columns:1fr 1fr;gap:0;width:100%;border:1px solid #dfe8e8;border-radius:10px;overflow:hidden;background:#ffffffc9}
.cover-details div{padding:13px 15px;border-bottom:1px solid #e7eeee}
.cover-details div:nth-child(odd){border-right:1px solid #e7eeee}
.cover-details span{display:block;font-size:9px;letter-spacing:1px;color:#70818b}
.cover-details b{font-size:12px;color:#253c4d}
.cover-footer{margin-top:auto;padding-top:34px;font-size:11px;color:#71818a}
.index-page{padding:50px 52px;min-height:700px;background:#fff}
.index-page h2{font:700 30px 'Playfair Display',Georgia,serif;margin:5px 0 30px}
.index-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.index-group{border:1px solid #e6ecef;border-radius:12px;overflow:hidden;break-inside:avoid}
.index-group h3{margin:0;padding:12px 15px;background:#173c55;color:white;font-size:11px;letter-spacing:1px}
.index-group div{display:flex;justify-content:space-between;gap:12px;padding:9px 14px;border-bottom:1px solid #eef1f3;font-size:11px;color:#485a66}
.index-group div:last-child{border:0}
.index-group b{color:#b17a48}
.index-note{margin-top:35px;font-size:11px;color:#74828a;border-top:1px solid #e7ecef;padding-top:18px}
.section-heading{display:flex;align-items:center;gap:13px;border-bottom:1px solid #dce9e7;padding-bottom:13px;margin-bottom:20px}
.section-heading>span{width:34px;height:34px;border-radius:50%;background:#2b7775;color:white;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}
.section-heading h2{font:700 23px 'Playfair Display',Georgia,serif;margin:0;color:#173c55}
.report-section{padding:34px 45px}
.section-intro{font-size:12px;color:#71808a;margin:-5px 0 18px}
.report-card{background:#fbfcfc;border:1px solid #e3e9eb;border-radius:11px;padding:17px 19px;margin:12px 0;break-inside:avoid;font-size:12px}
.report-card h3,.concern-card h3,.library-recommendation h3{font-size:15px;color:#173c55}
.report-card p{margin-bottom:8px}
.report-card b{color:#2d5d63}
.tint-blue{background:#eef4fa;border-color:#dce7f1}.tint-green{background:#edf6f2;border-color:#dcebe4}
.card-label{font-size:9px;letter-spacing:1.1px;font-weight:700;color:#2b7775}
.big-number{font:700 52px 'Playfair Display',Georgia,serif;color:#173c55}
.metric-line{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e8edef;font-size:12px}
.metric-line:last-child{border:0}
.compat-row{display:flex;gap:12px;margin:12px 0}
.compat-row div{flex:1;background:#f0f5f5;padding:12px;border-radius:8px}
.compat-row small{display:block;font-size:9px;color:#6d7e83}
.compat-row b{font-size:23px;color:#2b7775}
.number-tiles,.summary-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}
.number-tiles div,.summary-tiles div{background:#173c55;color:white;border-radius:10px;padding:14px;text-align:center}
.number-tiles b,.summary-tiles b{display:block;font:700 30px 'Playfair Display',Georgia,serif}
.number-tiles span,.summary-tiles small{display:block;font-size:9px;color:#c8dedc;letter-spacing:.4px}
.pill{display:inline-block;background:#e8f2f0;color:#276966;border-radius:20px;padding:5px 10px;font-size:9px;font-weight:700;margin-bottom:8px}
.grid9{max-width:390px}
.gridcell{min-height:68px;background:#eff5f4;border-color:#dbe7e4}
.gridcell b{color:#205d5c}
.concern-card{border:1px solid #e5e9ed;border-left:4px solid #2b7775;border-radius:10px;padding:17px;margin:14px 0;break-inside:avoid;background:#fcfdfd}
.concern-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px}
.concern-top span{font-size:9px;font-weight:700;letter-spacing:1px;color:#2b7775}
.concern-top small{font-size:9px}
.remedy-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.remedy-columns>div{background:#f3f6f6;padding:10px;border-radius:8px;font-size:11px}
.remedy-columns b{color:#2b7775;font-size:10px}
.library-recommendation{display:grid;grid-template-columns:34px 1fr;gap:13px;padding:15px 0;border-bottom:1px solid #e8edef;break-inside:avoid}
.crystal-dot{width:28px;height:38px;background:linear-gradient(145deg,#9bd3cb,#2b7775);clip-path:polygon(50% 0,90% 22%,83% 78%,50% 100%,17% 78%,10% 22%);margin-top:10px}
.library-recommendation p{font-size:12px;margin-bottom:7px}
.remedy-card{border-left:3px solid #b17a48}
.action-list{border:1px solid #e3e9eb;border-radius:10px;padding:18px;margin-top:15px}
.action-list h3{font-size:15px}
.action-list label{display:block;padding:9px 0;border-bottom:1px solid #eef1f3;font-size:12px}
.action-list input{accent-color:#2b7775;margin-right:8px}
.report-disclaimer{background:#f4f7f7;color:#697a82;padding:20px 40px;font-size:10px}
.library-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.library-card{display:block;background:#fff;border:1px solid #e4e9ed;border-radius:13px;padding:20px;text-decoration:none;color:inherit;transition:.15s}
.library-card:hover{transform:translateY(-2px);box-shadow:0 10px 25px #14243a12}
.lib-icon{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border-radius:10px;background:#eaf3f1;color:#2b7775;font-size:20px}
.library-card h3{margin:14px 0 7px}.library-card p{font-size:12px;color:#74818a;min-height:54px}.library-card b{font-size:11px;color:#a36e43}
.library-detail{margin-top:24px}.library-content{padding:18px}.library-content details{border:1px solid #e6ecef;border-radius:8px;margin-bottom:10px;padding:12px}.library-content summary{cursor:pointer;font-weight:700;color:#173c55}.library-content summary span{float:right;color:#9a7a4c;font-size:11px}.library-item{padding:10px 0;border-bottom:1px solid #eef1f3;font-size:12px}.library-item small{display:block}.library-item p{margin:5px 0 0}
@media(max-width:700px){.cover{min-height:750px;padding:42px 28px}.cover h1{font-size:40px}.cover-numbers{gap:7px;flex-wrap:wrap}.cover-numbers div{min-width:88px;padding:12px}.cover-details{grid-template-columns:1fr}.cover-details div:nth-child(odd){border-right:0}.index-page{padding:30px 22px}.index-grid,.library-grid{grid-template-columns:1fr}.report-section{padding:25px 20px}.number-tiles,.summary-tiles{grid-template-columns:repeat(2,1fr)}.remedy-columns{grid-template-columns:1fr}.compat-row{flex-wrap:wrap}.compat-row div{min-width:28%}}
@media print{.report{border:0}.cover{print-color-adjust:exact;-webkit-print-color-adjust:exact;min-height:265mm;page-break-after:always}.index-page{page-break-after:always}.report-section{break-inside:auto}.report-card,.concern-card,.library-recommendation{break-inside:avoid}.section-heading{break-after:avoid}.report-disclaimer{print-color-adjust:exact;-webkit-print-color-adjust:exact}.report-actions{display:none!important}}

.flag-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:10px}.flag-option{background:#f4f7f7;border:1px solid #e1e9e8;padding:10px;border-radius:8px;font-size:12px!important;font-weight:500!important}.flag-option input{accent-color:#2b7775;margin-right:7px}
