/* Care Solar — page-level styles */

/* ================= HOME ================= */
.hcalc-wrap{position:relative}
.hcalc{display:grid;gap:16px;padding:32px;border-radius:var(--r-2xl)}
.hcalc__label{font-size:var(--fs-sm);color:var(--d2);font-weight:500}
.hcalc__bill{display:flex;align-items:baseline;gap:8px;margin-top:-8px}
.hcalc__bill .num{font-family:var(--ff-head);font-size:var(--fs-3xl);font-weight:600;letter-spacing:-.03em;color:#fff}
.hcalc__bill .xs{color:var(--d3)}
.hcalc .range::-webkit-slider-runnable-track,.on-dark .range::-webkit-slider-runnable-track{background:linear-gradient(90deg,var(--sun-400) var(--p),rgba(255,255,255,.18) var(--p))}
.hcalc .range::-moz-range-track,.on-dark .range::-moz-range-track{background:rgba(255,255,255,.18)}
.seg--dark span{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);color:var(--d1)}
.seg--dark label:hover span{border-color:rgba(255,255,255,.34)}
.seg--dark input:checked+span{background:rgba(255,138,31,.16);border-color:var(--sun-400);color:#fff;box-shadow:0 0 0 3px rgba(255,138,31,.2)}
.hcalc__out{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.hcalc__out>div{padding:12px 16px;border-radius:var(--r-lg);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);min-width:0}
.hcalc__out span{display:block;font-size:var(--fs-xs);color:var(--d3)}
.hcalc__out b{display:block;font-family:var(--ff-head);font-size:var(--fs-xl);font-weight:600;color:#fff;margin-top:4px;letter-spacing:-.02em}
.hcalc__out small{display:block;font-size:var(--fs-xs);color:var(--sun-300);margin-top:2px;min-height:1.3em;line-height:1.3}
.float-pill{position:absolute;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:var(--r-pill);font-size:var(--fs-sm);white-space:nowrap}
.float-pill .dot{width:8px;height:8px;border-radius:50%;flex:none}
.float-pill b{font-weight:700}
.float-pill--a{top:-20px;left:-24px}
.float-pill--b{bottom:-18px;right:-16px}
.float-pill--b .ico{color:var(--sun-300)}
.float-pill--c{bottom:48px;right:-8px;color:var(--t1)}
@media (max-width:1180px){.float-pill--a{left:8px}.float-pill--b{right:8px}}
@media (max-width:560px){.hcalc{padding:24px 16px;border-radius:var(--r-xl)}.float-pill--a,.float-pill--b{display:none}.hcalc__out b{font-size:var(--fs-lg)}.hcalc__out>div{padding:12px}}

.facts-wrap{position:relative;z-index:3;margin-top:-56px}
.facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:8px}
.facts.glass{background:rgba(255,255,255,.94)}
.fact{padding:24px;border-right:1px solid var(--line);min-width:0}
.fact:last-child{border-right:0}
.fact b{display:block;font-family:var(--ff-head);font-size:clamp(1.563rem,2.6vw,2.2rem);font-weight:600;letter-spacing:-.03em;line-height:1.15}
.fact span{display:block;font-size:var(--fs-sm);color:var(--t3);margin-top:4px;line-height:1.45}
.fact b span{display:inline;font-size:inherit;color:inherit;margin:0}
@media (max-width:900px){.facts{grid-template-columns:repeat(2,minmax(0,1fr))}.fact:nth-child(2){border-right:0}.fact:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media (max-width:560px){.facts-wrap{margin-top:-32px}.fact{padding:16px 12px}}

.svc-card{padding:12px 12px 24px;display:flex;flex-direction:column}
.svc-card .media{border-radius:var(--r-lg)}
.svc-card__ic{margin:-28px 0 0 12px;position:relative;z-index:1;box-shadow:inset 0 1px 0 #fff,0 6px 16px rgba(163,70,4,.2)}
.svc-card h3{margin:16px 12px 0}
.svc-card p{margin:8px 12px 0;font-size:var(--fs-sm);color:var(--t3);line-height:1.5}
.svc-card__go{position:absolute;right:24px;top:24px;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.88);color:var(--t1);box-shadow:var(--sh-1);transition:all var(--t-med) var(--ease);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.svc-card:hover .svc-card__go{background:var(--sun-500);color:var(--ink-900);transform:rotate(-45deg)}

.ai-card{display:flex;flex-direction:column;gap:16px;padding:24px;border-radius:var(--r-xl);transition:transform var(--t-med) var(--ease),border-color var(--t-med)}
.ai-card:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.3)}
.ai-card p{color:var(--d2);font-size:var(--fs-sm);line-height:1.6}
.ai-card .btn--link{margin-top:auto;align-self:flex-start}
.ai-vis{position:relative;height:140px;border-radius:var(--r-lg);background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.1);overflow:hidden;padding:16px}
.ai-vis em{position:absolute;right:12px;top:12px;font-style:normal;font-size:var(--fs-xs);font-weight:700;padding:4px 10px;border-radius:var(--r-pill);background:var(--sun-grad);color:var(--ink-900)}
.ai-vis--calc{display:flex;align-items:flex-end;gap:10px}
.ai-vis--calc span{flex:1;height:var(--h);border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,var(--sun-400),rgba(255,138,31,.2))}
.ai-vis--bill i{display:block;height:8px;border-radius:4px;background:rgba(255,255,255,.14);margin:8px 0 12px;width:80%}
.ai-vis--bill i:nth-child(2){width:55%}.ai-vis--bill i:nth-child(3){width:70%}.ai-vis--bill i:nth-child(4){width:40%}
.ai-vis--bill b{position:absolute;left:0;right:0;top:10%;height:2px;background:linear-gradient(90deg,transparent,var(--sun-400),transparent);box-shadow:0 0 16px var(--sun-400);animation:scan 2.8s var(--ease) infinite}
@keyframes scan{0%,100%{top:10%}50%{top:86%}}
.ai-vis--chat{display:flex;flex-direction:column;gap:8px;justify-content:center}
.ai-vis--chat span{max-width:82%;padding:8px 12px;border-radius:12px;font-size:var(--fs-xs)}
.ai-vis--chat .me{align-self:flex-end;background:rgba(255,255,255,.14);color:#fff;border-bottom-right-radius:4px}
.ai-vis--chat .bot{align-self:flex-start;background:var(--sun-grad);color:var(--ink-900);font-weight:600;border-bottom-left-radius:4px}

.sub-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:64px;align-items:center}
.sub-card{padding:32px}
.sub-kws{margin:16px 0 24px}
.sub-bars{display:grid;gap:8px;margin-bottom:16px}
.sub-bar{height:12px;border-radius:6px;background:var(--paper-2);overflow:hidden}
.sub-bar i{display:block;height:100%;width:0;border-radius:6px;background:linear-gradient(90deg,var(--ink-500),var(--ink-900));transition:width 600ms var(--ease)}
.sub-bar--sub i{background:linear-gradient(90deg,#34D17A,#0B7A55)}
.sub-green{color:var(--ok)}
@media (max-width:900px){.sub-grid{grid-template-columns:minmax(0,1fr);gap:40px}}
@media (max-width:560px){.sub-card{padding:24px 16px}}

.app-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:64px;align-items:center}
.phone-wrap{position:relative;display:flex;justify-content:center}
.phone{position:relative;width:290px;height:590px;border-radius:44px;padding:12px;background:linear-gradient(160deg,#1B2A4D,#070F24);box-shadow:0 2px 4px rgba(10,21,48,.2),0 30px 60px rgba(10,21,48,.25),0 60px 120px rgba(10,21,48,.15),inset 0 0 0 2px rgba(255,255,255,.08)}
.phone__notch{position:absolute;top:20px;left:50%;transform:translateX(-50%);width:90px;height:24px;border-radius:12px;background:#050B19;z-index:2}
.phone__scr{height:100%;border-radius:34px;background:var(--paper);padding:52px 14px 14px;display:flex;flex-direction:column;gap:10px;overflow:hidden}
.ph-top{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:600;color:var(--t2)}
.ph-gauge{position:relative;background:var(--surface);border-radius:20px;padding:14px 16px 10px;box-shadow:var(--sh-1);text-align:center}
.ph-gauge svg{width:100%;height:auto}
.ph-gauge b{display:block;font-family:var(--ff-head);font-size:1.5rem;margin-top:-30px;letter-spacing:-.02em}
.ph-gauge small{font-size:11px;color:var(--t3)}
.ph-kpis{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ph-kpis div{background:var(--surface);border-radius:16px;padding:10px 12px;box-shadow:var(--sh-1)}
.ph-kpis b{display:block;font-family:var(--ff-head);font-size:1.05rem}
.ph-kpis small{font-size:10px;color:var(--t3)}
.ph-bars{display:flex;align-items:flex-end;gap:6px;height:72px;background:var(--surface);border-radius:16px;padding:12px;box-shadow:var(--sh-1)}
.ph-bars i{flex:1;height:var(--h);border-radius:4px;background:linear-gradient(180deg,var(--sun-400),var(--sun-600))}
.ph-row{display:flex;justify-content:space-between;align-items:center;background:var(--surface);border-radius:12px;padding:9px 12px;font-size:12px;font-weight:600;box-shadow:var(--sh-1)}
.ph-row small{color:var(--t3);font-weight:500}
@media (max-width:900px){.app-grid{grid-template-columns:minmax(0,1fr);gap:48px}.phone-wrap{order:2}}
@media (max-width:560px){.phone{width:262px;height:540px}.float-pill--c{right:0;bottom:24px}}

.proj-card{padding:12px;cursor:pointer}
.proj-card .media{border-radius:var(--r-lg)}
.proj-card__type{position:absolute;left:12px;top:12px}
.proj-card__kw{position:absolute;right:12px;bottom:12px;padding:6px 12px;border-radius:var(--r-pill);background:var(--sun-grad);color:var(--ink-900);font-weight:700;font-size:var(--fs-sm);box-shadow:var(--sh-sun)}
.proj-card__body{padding:16px 8px 8px}
.proj-card__stat{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:var(--fs-sm);font-weight:600;color:var(--ok)}
.proj-card__meta{display:flex;flex-wrap:wrap;gap:16px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);font-size:var(--fs-xs);color:var(--t3)}

.rev-card{margin:0;display:flex;flex-direction:column;gap:16px}
.stars{display:flex;gap:2px;color:#F5A524}
.rev-card blockquote{margin:0;font-size:var(--fs-md);line-height:1.65;color:var(--t2);flex:1}
.rev-card figcaption{display:flex;align-items:center;gap:12px;padding-top:16px;border-top:1px solid var(--line)}
.rev-av{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:linear-gradient(145deg,var(--ink-600),var(--ink-900));color:var(--sun-300);font-weight:700;font-size:var(--fs-sm);flex:none}
.rev-card figcaption b{display:block;font-size:var(--fs-sm)}
.rev-card figcaption span span{display:block;font-size:var(--fs-xs);color:var(--t3)}

.area-strip{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;align-items:center}
@media (max-width:900px){.area-strip{grid-template-columns:minmax(0,1fr);gap:24px}}
.faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;align-items:start}
@media (max-width:900px){.faq-grid{grid-template-columns:minmax(0,1fr);gap:32px}}
.cta-form{display:grid;gap:16px;padding:32px;border-radius:var(--r-xl)}
@media (max-width:560px){.cta-form{padding:24px 16px}.cta-band{border-radius:var(--r-xl)}}

/* ================= SERVICE ================= */
.phero--photo .container{position:relative}
.phero__h1{margin-top:16px;max-width:880px}
.ben{display:flex;flex-direction:column;gap:12px}
.ben p{font-size:var(--fs-sm);color:var(--t3);line-height:1.55}
.svc-detail{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:48px;align-items:start}
.price-card{position:sticky;top:calc(var(--hdr-h) + 24px)}
.price-card__v{display:flex;flex-direction:column;gap:4px;margin-top:8px}
.price-card__v b{font-family:var(--ff-head);font-size:var(--fs-3xl);font-weight:600;letter-spacing:-.03em;line-height:1.1}
.price-card__v span{font-size:var(--fs-sm);color:var(--t3)}
.tbl--spec{min-width:0}
.tbl--spec th{width:38%;background:#F8FAFE;text-transform:none;letter-spacing:0;font-size:var(--fs-sm);color:var(--t2)}
.tbl--cmp td:first-child{white-space:nowrap}
.mini-svc{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.mini-svc__a{display:flex;align-items:center;gap:12px;min-height:64px;padding:12px 16px;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);font-weight:600;font-size:var(--fs-sm);transition:all var(--t-fast) var(--ease)}
.mini-svc__a .ic-tile{width:40px;height:40px;border-radius:12px;flex:none}
.mini-svc__a>.ico:last-child{margin-left:auto;color:var(--t3);transition:transform var(--t-fast)}
.mini-svc__a:hover{border-color:var(--line-2);box-shadow:var(--sh-2)}
.mini-svc__a:hover>.ico:last-child{transform:translateX(3px);color:var(--sun-600)}
.mini-svc__a:active{transform:scale(.98)}
@media (max-width:1024px){.mini-svc{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){.svc-detail{grid-template-columns:minmax(0,1fr)}.price-card{position:static}}
@media (max-width:560px){.mini-svc{grid-template-columns:minmax(0,1fr)}.tbl--spec th{width:42%}}

/* ================= CALCULATOR ================= */
.calc{display:grid;grid-template-columns:minmax(0,400px) minmax(0,1fr);gap:32px;align-items:start}
.calc__form{position:sticky;top:calc(var(--hdr-h) + 24px);display:grid;gap:24px;padding:24px}
.seg--sm label{min-width:84px}
.seg--sm span{min-height:44px;font-size:var(--fs-xs)}
.calc__adv summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;cursor:pointer;font-weight:600;font-size:var(--fs-sm);list-style:none;color:var(--t2)}
.calc__adv summary::-webkit-details-marker{display:none}
.calc__adv[open] summary .ico{transform:rotate(180deg)}
.calc__billlink{display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--r-lg);background:linear-gradient(120deg,#FFF6EB,#FFEBD3);border:1px solid #FFE0BC;transition:transform var(--t-fast) var(--ease)}
.calc__billlink b{display:block;font-size:var(--fs-sm)}
.calc__billlink span span{display:block;font-size:var(--fs-xs);color:var(--t3)}
.calc__billlink>.ico{margin-left:auto;flex:none}
.calc__billlink:hover{transform:translateY(-1px)}
.calc__billlink:active{transform:scale(.99)}
.calc__out{display:grid;gap:24px;min-width:0}
.res-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;background:linear-gradient(135deg,var(--ink-900),var(--ink-700));color:var(--d1);border:0;overflow:hidden;isolation:isolate}
.res-hero::before{content:"";position:absolute;right:-80px;top:-120px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(255,138,31,.4),transparent 70%);z-index:-1}
.res-hero .eyebrow{color:var(--sun-300)}
.res-hero__kw{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-top:8px}
.res-hero__kw b{font-family:var(--ff-head);font-size:clamp(2.441rem,5vw,3.6rem);font-weight:600;letter-spacing:-.04em;line-height:1}
.res-hero__kw span{color:var(--d2);font-weight:500}
.res-hero p{color:var(--d2);margin-top:12px}
.res-hero .chip--sun{background:rgba(255,138,31,.14);border-color:rgba(255,170,82,.35);color:var(--sun-200);white-space:normal;text-align:left}
.ring{position:relative;width:132px;height:132px;display:grid;place-items:center;align-content:center;text-align:center}
.ring svg{position:absolute;inset:0;transform:rotate(-90deg)}
.ring__bg{fill:none;stroke:rgba(255,255,255,.12);stroke-width:10}
.ring__fg{fill:none;stroke:var(--sun-400);stroke-width:10;stroke-linecap:round}
.ring b{font-family:var(--ff-head);font-size:var(--fs-2xl);font-weight:600;line-height:1}
.ring span{font-size:11px;color:var(--d3);display:block;max-width:84px;line-height:1.3;margin-top:4px}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.kpi{position:relative;display:flex;flex-direction:column;gap:4px;padding:16px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh-1);min-width:0}
.kpi__ic{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--paper-2);color:var(--t2);margin-bottom:4px}
.kpi__l{font-size:var(--fs-xs);color:var(--t3);font-weight:500;line-height:1.35}
.kpi__v{font-family:var(--ff-head);font-size:var(--fs-xl);font-weight:600;letter-spacing:-.02em;line-height:1.2;overflow-wrap:anywhere}
.kpi__s{font-size:var(--fs-xs);color:var(--t3);line-height:1.35}
.kpi--ok .kpi__ic{background:var(--ok-bg);color:var(--ok)}.kpi--ok .kpi__v{color:var(--ok)}
.kpi--hl{background:linear-gradient(145deg,#FFF6EB,#FFE9CF);border-color:#FFD9AE}
.kpi--hl .kpi__ic{background:#fff;color:var(--sun-700)}
@media (max-width:1180px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
.chart{position:relative;height:200px;margin-top:24px}
.chart svg{width:100%;height:100%;overflow:visible}
.chart .bar{fill:#FF9A3C;transition:fill var(--t-fast)}
.chart .bar:hover{fill:var(--sun-600)}
.chart .use{stroke:var(--ink-700);stroke-width:2;stroke-dasharray:6 6;vector-effect:non-scaling-stroke}
.chart__use{position:absolute;right:0;transform:translateY(-130%);font-size:var(--fs-xs);font-weight:600;color:var(--ink-700);background:var(--surface);padding:2px 8px;border-radius:var(--r-pill);box-shadow:var(--sh-1)}
.chart__x{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));margin-top:8px;font-size:11px;color:var(--t3);text-align:center}
.chart__x--yrs{display:flex;justify-content:space-between}
.legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:12px;font-size:var(--fs-xs);color:var(--t2)}
.legend span{display:inline-flex;align-items:center;gap:6px}
.legend i{width:12px;height:12px;border-radius:3px}
.lg-gen{background:#FF9A3C}
.legend .lg-use{width:16px;height:0;border-radius:0;border-top:2px dashed var(--ink-700)}
.chart--life .zero{stroke:rgba(10,21,48,.25);stroke-width:1;vector-effect:non-scaling-stroke;stroke-dasharray:4 4}
.chart--life .life{fill:none;stroke:var(--sun-600);stroke-width:3}
.chart__be{position:absolute;transform:translate(-50%,-50%);z-index:1}
.chart__be i{display:block;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--ok);box-shadow:0 0 0 4px rgba(11,122,85,.15)}
.chart__be b{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%);white-space:nowrap;font-size:var(--fs-xs);font-weight:600;color:var(--ok);background:var(--ok-bg);padding:2px 8px;border-radius:var(--r-pill)}
.chart__ymax,.chart__ymin{position:absolute;left:0;font-size:11px;color:var(--t3);background:rgba(255,255,255,.85);padding:0 4px;border-radius:4px}
.chart__ymax{top:0}.chart__ymin{bottom:0}
.billbars{display:grid;gap:16px;margin-top:16px}
.billbars>div{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:12px;align-items:center;font-size:var(--fs-sm)}
.billbars span{color:var(--t3)}
.billbar{height:14px;border-radius:7px;background:var(--paper-2);overflow:hidden}
.billbar i{display:block;height:100%;border-radius:7px;background:linear-gradient(90deg,var(--ink-500),var(--ink-800))}
.billbar--after i{background:linear-gradient(90deg,#34D17A,#0B7A55)}
.emi-v{font-family:var(--ff-head);font-size:var(--fs-2xl);font-weight:600;margin-top:8px;letter-spacing:-.02em}
.ai-box{background:linear-gradient(145deg,#F4F7FF,#FFF7EE);border-color:#E3E9F7}
.ai-text{margin-top:12px;line-height:1.7;color:var(--t2);white-space:pre-wrap}
.env{display:grid;gap:16px;margin-top:16px}
.env>div{display:flex;align-items:center;gap:12px}
.env b{font-weight:600}
.res-actions{display:flex;flex-wrap:wrap;gap:12px}
.assume summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;min-height:32px}
.assume summary::-webkit-details-marker{display:none}
.assume[open] summary .ico{transform:rotate(180deg)}
.assume ul{margin-top:16px}
.assume .list-check .ico{color:var(--t3)}
.print-head,.print-in{display:none}
@media (max-width:1024px){.calc{grid-template-columns:minmax(0,1fr)}.calc__form{position:static}}
@media (max-width:560px){.res-hero{grid-template-columns:minmax(0,1fr)}.ring{width:112px;height:112px}.kpis{gap:8px}.kpi{padding:12px}.kpi__v{font-size:var(--fs-lg)}.res-actions .btn{width:100%}.billbars>div{grid-template-columns:76px minmax(0,1fr) auto}}
@media print{
  .calc{display:block}.calc-page .phero{display:none}
  .print-head{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #0A1530;padding-bottom:12px;margin-bottom:12px}
  .print-head .lg{width:36px;height:36px}
  .print-head>div{text-align:right}.print-head>div b{display:block}.print-head>div span{font-size:12px;color:#56617C}
  .print-in{display:block;font-size:12px;margin-bottom:12px}
  .card,.kpi{box-shadow:none!important;break-inside:avoid}
  .res-hero,.kpi--hl,.billbar i,.chart .bar{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .section{padding:0!important}
  .calc__out{gap:12px}
}
.kpi__v small{font-size:var(--fs-sm);font-weight:500;color:var(--t3);letter-spacing:0}
.seg--sm label{flex:1 1 calc(50% - 4px)}

/* ================= BILL ANALYSIS ================= */
.bill-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:48px;align-items:end}
.bill-how{display:grid;gap:8px}
.bill-how li{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--r-lg);background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.9);box-shadow:var(--sh-1);font-size:var(--fs-sm)}
.bill-how span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--sun-grad);color:var(--ink-900);font-weight:700;font-size:var(--fs-xs);flex:none}
.bill{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:32px;align-items:start}
.bill__up{position:sticky;top:calc(var(--hdr-h) + 24px);display:grid;gap:16px;padding:24px}
.drop{display:grid;place-items:center;gap:8px;text-align:center;padding:40px 24px;border-radius:var(--r-xl);border:2px dashed var(--line-2);background:linear-gradient(145deg,#F8FAFE,#FFF8F0);cursor:pointer;transition:all var(--t-fast) var(--ease)}
.drop:hover,.drop.is-over{border-color:var(--sun-500);background:#FFF6EB}
.drop:active{transform:scale(.99)}
.drop:focus-within{outline:2px solid var(--sun-500);outline-offset:2px}
.drop__ic{display:grid;place-items:center;width:64px;height:64px;border-radius:20px;background:var(--surface);box-shadow:var(--sh-2);color:var(--sun-600);margin-bottom:8px}
.bill__file{display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--paper)}
.fpv{width:56px;height:56px;border-radius:12px;overflow:hidden;flex:none;display:grid;place-items:center;background:var(--paper-2)}
.fpv img{width:100%;height:100%;object-fit:cover}
.fmeta{min-width:0;flex:1}
.fmeta b{display:block;font-size:var(--fs-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fmeta span{font-size:var(--fs-xs);color:var(--t3)}
.bill__btns{gap:8px}
.bill__btns .btn{padding:0 12px}
.bill__out{min-width:0}
.bill-empty{display:grid;justify-items:center;text-align:center;gap:12px;padding:48px 32px}
.bill-mock{position:relative;width:180px;height:220px;border-radius:12px;background:var(--surface);box-shadow:var(--sh-2);padding:24px;display:grid;align-content:start;gap:12px;margin-bottom:16px;overflow:hidden}
.bill-mock i{display:block;height:8px;border-radius:4px;background:var(--paper-2)}
.bill-mock i:nth-child(1){width:70%;background:#FFE2C0}.bill-mock i:nth-child(2){width:50%}.bill-mock i:nth-child(3){width:85%}
.bill-mock__tbl{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:8px}
.bill-mock__tbl span{height:16px;border-radius:4px;background:var(--paper-2)}
.bill-mock b{position:absolute;left:0;right:0;top:20%;height:2px;background:linear-gradient(90deg,transparent,var(--sun-500),transparent);box-shadow:0 0 12px var(--sun-400);animation:scan 2.8s var(--ease) infinite}
.scan{display:grid;grid-template-columns:200px minmax(0,1fr);gap:32px;align-items:center;padding:32px}
.scan__doc{position:relative;height:240px;border-radius:12px;overflow:hidden;background:var(--paper-2);box-shadow:var(--sh-2)}
.scan__doc img{width:100%;height:100%;object-fit:cover;filter:saturate(.8)}
.scan__doc .bill-mock{width:100%;height:100%;margin:0;box-shadow:none}
.scan__line{position:absolute;left:0;right:0;top:10%;height:3px;background:linear-gradient(90deg,transparent,var(--sun-500),transparent);box-shadow:0 0 18px var(--sun-400);animation:scan 2.2s var(--ease) infinite}
.scan__steps{display:grid;gap:16px}
.scan__steps li{display:flex;align-items:center;gap:12px;color:var(--t3);font-weight:500;transition:color var(--t-med)}
.scan__dot{width:20px;height:20px;border-radius:50%;border:2px solid var(--line-2);flex:none;position:relative;transition:all var(--t-med)}
.scan__steps li.is-on{color:var(--t1)}
.scan__steps li.is-on .scan__dot{border-color:var(--sun-500);border-top-color:transparent;animation:spin .8s linear infinite}
.scan__steps li.is-done{color:var(--ok)}
.scan__steps li.is-done .scan__dot{border-color:var(--ok);background:var(--ok)}
.scan__steps li.is-done .scan__dot::after{content:"";position:absolute;left:5px;top:2px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.rep{padding:0;overflow:hidden}
.rep__head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;padding:24px 32px;border-bottom:1px solid var(--line);background:linear-gradient(120deg,#F8FAFE,#FFF8F0)}
.rep__sec{padding:24px 32px;border-bottom:1px solid var(--line)}
.rep-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}
.rep-f{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:var(--r-md);background:var(--paper);min-width:0}
.rep-f span{font-size:var(--fs-xs);color:var(--t3)}
.rep-f b{font-weight:600;font-size:var(--fs-sm);overflow-wrap:anywhere}
.rep-f--edit{background:#FFF6EB;border:1px solid #FFD9AE}
.rep-f--edit .input{min-height:44px;padding:8px 12px}
.hbars{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:6px;height:160px;margin-top:32px;align-items:end}
.hbar{display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;justify-content:flex-end;min-width:0}
.hbar i{position:relative;display:block;width:100%;max-width:32px;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,var(--ink-500),var(--ink-800))}
.hbar:last-child i{background:var(--sun-grad)}
.hbar em{position:absolute;left:50%;top:-18px;transform:translateX(-50%);font-style:normal;font-size:10px;color:var(--t3)}
.hbar span{font-size:10px;color:var(--t3);white-space:nowrap}
.rep-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}
.rep-stats>div{padding:16px;border-radius:var(--r-lg);border:1px solid var(--line)}
.rep-stats span{display:block;font-size:var(--fs-xs);color:var(--t3)}
.rep-stats b{display:block;font-family:var(--ff-head);font-size:var(--fs-lg);margin-top:4px}
.rep__sug{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:32px;align-items:center;background:linear-gradient(135deg,var(--ink-900),var(--ink-700));color:var(--d1)}
.rep__sug .eyebrow{color:var(--sun-300)}
.rep__sug .res-hero__kw b{font-family:var(--ff-head);font-size:clamp(2.441rem,5vw,3.4rem);font-weight:600;letter-spacing:-.04em;line-height:1}
.rep__sug .res-hero__kw span{color:var(--d2)}
.rep__sug p.small{color:var(--d2);margin-top:8px}
.rep__sug .note{background:rgba(255,138,31,.12);border-color:rgba(255,170,82,.3);color:var(--sun-200)}
.rep-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.rep-kpis>div{padding:12px;border-radius:var(--r-md);background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);min-width:0}
.rep-kpis span{display:block;font-size:var(--fs-xs);color:var(--d3)}
.rep-kpis b{display:block;font-family:var(--ff-head);font-weight:600;margin-top:4px;color:#fff}
.rep-kpis b.ok{color:#5BE3A1}
.rep__act{display:flex;flex-wrap:wrap;gap:12px;padding:24px 32px;align-items:center}
@media (max-width:1024px){.bill{grid-template-columns:minmax(0,1fr)}.bill__up{position:static}.bill-hero{grid-template-columns:minmax(0,1fr);gap:24px}.bill-how{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.rep-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rep__sug{grid-template-columns:minmax(0,1fr)}.scan{grid-template-columns:minmax(0,1fr);padding:24px}.scan__doc{height:180px}}
@media (max-width:560px){.rep__head,.rep__sec,.rep__act{padding:24px 16px}.rep-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.rep-stats{grid-template-columns:minmax(0,1fr)}.hbars{gap:3px}.hbar em{display:none}.hbar span{font-size:9px}.rep__act .btn{width:100%}.bill-how li{padding:8px 12px}}
@media print{.bill-page .phero{display:none}.bill{display:block}.rep__sug,.hbar i{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* ================= SITE PAGES ================= */
.psum{display:flex;flex-wrap:wrap;gap:48px;margin-top:40px}
.psum .stat b{color:#fff}
.tm-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:48px;align-items:end}
.tm-sum{display:flex;align-items:center;gap:16px;padding:24px}
.tm-sum>b{font-family:var(--ff-head);font-size:var(--fs-4xl);font-weight:600;letter-spacing:-.03em;line-height:1}
.area-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:48px;align-items:center}
.radar{position:relative;aspect-ratio:1;max-width:320px;width:100%;justify-self:end;border-radius:50%;background:radial-gradient(circle,rgba(255,138,31,.18),rgba(255,138,31,0) 70%)}
.radar>i{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(255,255,255,.14)}
.radar>i:nth-child(2){inset:16%}.radar>i:nth-child(3){inset:32%}
.radar__c{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:6px 14px;border-radius:var(--r-pill);background:var(--sun-grad);color:var(--ink-900);font-weight:700;font-size:var(--fs-sm);box-shadow:var(--sh-sun)}
.radar>b{position:absolute;left:var(--x);top:var(--y);width:10px;height:10px;border-radius:50%;background:var(--sun-300);box-shadow:0 0 0 6px rgba(255,170,82,.18)}
.area-sec .chips .chip{min-height:40px}
.contact{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:32px;align-items:start}
.contact__form{padding:32px}
.contact__side{display:grid;gap:12px}
.ccard{display:flex;align-items:center;gap:16px;padding:16px 24px;text-align:left;width:100%;font:inherit;color:inherit;min-height:72px}
.ccard b{display:block;font-size:var(--fs-md)}
.ccard--ai{background:linear-gradient(135deg,var(--ink-900),var(--ink-700));color:var(--d1);border:0;cursor:pointer}
.ab-q{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.prose{max-width:760px}
.prose h2{font-size:var(--fs-xl);margin-top:40px}
.prose p,.prose li{color:var(--t2);margin-top:12px;line-height:1.7}
.prose ul{list-style:disc;padding-left:24px}
.nf{min-height:70vh;display:grid;place-items:center;text-align:center}
.nf b{display:block;font-family:var(--ff-head);font-size:clamp(4rem,14vw,8rem);font-weight:700;letter-spacing:-.05em;line-height:1}
@media (max-width:900px){.tm-hero,.area-hero,.contact,.ab-q{grid-template-columns:minmax(0,1fr);gap:32px}.radar{justify-self:start;max-width:240px}}
@media (max-width:560px){.contact__form{padding:24px 16px}.psum{gap:24px}.radar{display:none}.ccard{padding:16px}}

/* ================= PLATFORM ================= */
.pf-demos .pf-d{display:flex;flex-direction:column;gap:12px;padding:24px}
.pf-d b{font-size:var(--fs-md)}
.pf-d>span:last-child{font-size:var(--fs-sm);color:var(--t3)}
.pf-journey{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:8px}
.pf-journey li{position:relative;display:flex;flex-direction:column;gap:6px;padding:16px 12px;border-radius:var(--r-lg);background:var(--paper);border:1px solid var(--line);min-width:0}
.pf-journey b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--sun-grad);color:var(--ink-900);font-size:12px}
.pf-journey span{font-weight:600;font-size:var(--fs-sm)}
.pf-journey small{font-size:11px;color:var(--t3);line-height:1.4}
@media (max-width:1180px){.pf-journey{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:560px){.pf-journey{grid-template-columns:repeat(2,minmax(0,1fr))}}
.arch{display:grid;gap:8px}
.arch__l{display:grid;grid-template-columns:180px minmax(0,1fr);gap:16px;align-items:center;padding:12px;border-radius:var(--r-lg);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12)}
.arch__t{font-family:var(--ff-head);font-weight:600;color:#fff;padding-left:8px}
.arch__l>div{display:flex;flex-wrap:wrap;gap:8px}
.arch__l i{font-style:normal;font-size:var(--fs-sm);padding:8px 12px;border-radius:var(--r-md);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:var(--d1)}
.arch__l--gw{background:linear-gradient(90deg,rgba(255,138,31,.2),rgba(255,138,31,.05));border-color:rgba(255,170,82,.4)}
.arch__l--ai i{border-color:rgba(255,170,82,.35)}
.arch__l--db{background:rgba(91,140,255,.1);border-color:rgba(91,140,255,.3)}
@media (max-width:760px){.arch__l{grid-template-columns:minmax(0,1fr);gap:8px}.arch__t{padding-left:0}}
.pf-cov td:first-child{color:var(--t3);font-weight:600}
.st{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--r-pill);font-size:11px;font-weight:700;white-space:nowrap}
.st--live{background:var(--ok-bg);color:var(--ok)}.st--soon{background:var(--warn-bg);color:var(--warn)}
.pf-own{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:start}
@media (max-width:900px){.pf-own{grid-template-columns:minmax(0,1fr)}}
.pf-road p{font-size:var(--fs-sm);color:var(--t2);margin-top:8px;line-height:1.55}
