:root{
  --bg:#f6f8fb;--surface:#ffffff;--surface-2:#eef3f8;--ink:#122033;--muted:#617086;--line:#dce4ec;
  --brand:#1167d8;--brand-2:#0a4fae;--brand-soft:#e8f1ff;--green:#0e9f6e;--green-soft:#e9f8f2;--amber:#b7791f;--amber-soft:#fff6df;--red:#c2413b;--red-soft:#fff0ef;
  --dark:#0c1727;--dark-2:#13233a;--shadow:0 18px 50px rgba(21,42,74,.10);--shadow-sm:0 8px 24px rgba(21,42,74,.08);
  --radius:18px;--radius-sm:12px;--max:1180px;--header:72px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-size:16px;line-height:1.55}body.modal-open{overflow:hidden}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{width:min(var(--max),calc(100% - 40px));margin:0 auto}.page{min-height:70vh}.section{padding:78px 0}.section.tight{padding:52px 0}.section.dark{background:var(--dark);color:#fff}.muted{color:var(--muted)}.eyebrow{font-size:.78rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--brand)}.dark .eyebrow{color:#79b2ff}.display{font-size:clamp(2.5rem,6vw,5.2rem);line-height:.98;letter-spacing:-.055em;margin:18px 0 22px;max-width:900px}.page-title{font-size:clamp(2rem,4vw,3.6rem);line-height:1.02;letter-spacing:-.045em;margin:10px 0 16px}.section-title{font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.08;letter-spacing:-.035em;margin:10px 0 14px}.lead{font-size:1.14rem;color:var(--muted);max-width:760px}.dark .lead{color:#c4cfdd}.gradient-text{background:linear-gradient(110deg,var(--brand),#31a0e7);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-nowrap{display:inline-block;white-space:nowrap}.kicker-row{display:flex;align-items:center;gap:10px}.dot{width:8px;height:8px;border-radius:999px;background:var(--green);display:inline-block}.stack{display:grid;gap:16px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:28px}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.four-col{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.split{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:42px;align-items:center}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card-pad{padding:24px}.soft-card{background:var(--surface-2);border-radius:var(--radius);padding:24px}.dark-card{background:var(--dark-2);color:#fff;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);padding:24px}.tag,.status,.development-tag{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 10px;font-size:.77rem;font-weight:800}.tag{background:var(--surface-2);color:var(--muted)}.status.good{background:var(--green-soft);color:var(--green)}.status.warn{background:var(--amber-soft);color:var(--amber)}.status.bad{background:var(--red-soft);color:var(--red)}.development-tag{background:#fff0c9;color:#865b00;border:1px solid #efd99b}.divider{height:1px;background:var(--line);margin:22px 0}
.site-header{height:var(--header);position:sticky;top:0;z-index:40;background:rgba(246,248,251,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(220,228,236,.82)}.nav-shell{height:100%;display:flex;align-items:center;gap:24px}.brand{display:inline-flex;align-items:center;gap:10px;min-width:max-content}.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--brand),#1591e8);color:#fff;display:grid;place-items:center;box-shadow:0 8px 20px rgba(17,103,216,.22);overflow:hidden}.brand-mark svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.brand span:last-child{display:grid;line-height:1.05}.brand b{font-size:1rem}.brand small{font-size:.68rem;color:var(--muted);margin-top:4px}.main-nav{display:flex;align-items:center;gap:4px;margin-left:auto;min-width:0}.main-nav a{padding:9px 11px;border-radius:10px;color:#46556a;font-weight:700;font-size:.9rem;white-space:nowrap}.main-nav a:hover,.main-nav a.active{background:#fff;color:var(--brand);box-shadow:var(--shadow-sm)}.nav-actions{display:flex;gap:8px;align-items:center;flex:0 0 auto}
.primary-btn,.secondary-btn,.ghost-btn,.text-btn{border:0;border-radius:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.18s ease}.primary-btn{background:var(--brand);color:#fff;padding:12px 16px;box-shadow:0 8px 18px rgba(17,103,216,.18)}.primary-btn:hover{background:var(--brand-2);transform:translateY(-1px)}.secondary-btn{background:var(--dark);color:#fff;padding:12px 16px}.ghost-btn{background:#fff;color:var(--ink);border:1px solid var(--line);padding:11px 14px}.ghost-btn:hover{border-color:#aec8e7;color:var(--brand)}.text-btn{background:transparent;color:var(--brand);padding:8px 0}.compact{padding:9px 12px;border-radius:10px;font-size:.88rem}.button-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.hero{padding:82px 0 68px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(380px,.94fr);align-items:center;gap:42px}.hero-copy .lead{max-width:690px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.hero-proof{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.hero-proof span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 11px;color:var(--muted);font-size:.82rem;font-weight:700}.product-window{background:#fff;border:1px solid #d7e2ef;border-radius:26px;box-shadow:0 28px 80px rgba(20,52,91,.16);overflow:hidden;transform:rotate(1deg)}.window-bar{height:46px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:7px;padding:0 16px;background:#f9fbfd}.window-dot{width:8px;height:8px;border-radius:99px;background:#c7d3df}.window-content{padding:20px}.mini-search{display:flex;gap:8px;background:var(--surface-2);padding:8px;border-radius:14px}.mini-search div{flex:1;background:#fff;border-radius:9px;padding:10px;font-weight:800;color:#44556a}.mini-search span{background:var(--brand);color:#fff;border-radius:9px;padding:10px 14px;font-weight:800}.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.metric-mini{padding:14px;border:1px solid var(--line);border-radius:13px}.metric-mini small{color:var(--muted);display:block}.metric-mini b{font-size:1.22rem}.timeline-preview{display:grid;gap:10px}.timeline-preview div{display:flex;gap:10px;align-items:flex-start}.timeline-preview i{width:10px;height:10px;border-radius:99px;background:var(--brand);margin-top:7px;box-shadow:0 0 0 5px var(--brand-soft)}.timeline-preview span{display:grid}.timeline-preview small{color:var(--muted)}.floating-note{position:absolute;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;padding:13px 15px;display:grid;gap:2px}.hero-visual{position:relative}.floating-note.a{right:-18px;top:38px}.floating-note.b{left:-20px;bottom:50px}.floating-note small{color:var(--muted)}
.module-strip{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.module-grid{display:grid;grid-template-columns:repeat(6,1fr)}.module-grid a{padding:20px 12px;border-right:1px solid var(--line);display:grid;gap:7px}.module-grid a:last-child{border-right:0}.module-grid b{font-size:.9rem}.module-grid span{color:var(--muted);font-size:.78rem}.module-grid i{font-style:normal;font-size:1.15rem}
.page-hero{padding:58px 0 34px;background:linear-gradient(180deg,#f9fbfe,transparent)}.page-hero .container{display:flex;justify-content:space-between;align-items:flex-end;gap:28px}.page-hero-actions{display:flex;gap:9px;flex-wrap:wrap}.development-notice{display:flex;gap:12px;align-items:center;padding:11px 14px;border:1px solid #edd28c;background:#fff8df;border-radius:12px;color:#694f16;margin:16px 0}.development-notice span{font-size:.7rem;font-weight:900;letter-spacing:.1em;background:#f6d36b;padding:5px 7px;border-radius:6px}.development-notice p{margin:0;font-size:.86rem}
.form-shell{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow-sm)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.stack-form{display:grid;gap:14px}.stack-form label,.form-grid label{display:grid;gap:7px;color:#39495f;font-size:.87rem;font-weight:800}.stack-form input,.stack-form select,.stack-form textarea,.form-grid input,.form-grid select,.form-grid textarea,.search-input{width:100%;border:1px solid #ccd7e3;background:#fff;border-radius:11px;padding:12px 13px;outline:none;color:var(--ink)}.stack-form input:focus,.stack-form select:focus,.stack-form textarea:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.search-input:focus{border-color:#7fb0e9;box-shadow:0 0 0 4px var(--brand-soft)}textarea{min-height:110px;resize:vertical}.form-help{font-size:.78rem;color:var(--muted)}.field-inline{display:flex;gap:9px}.field-inline input{flex:1}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 11px;font-size:.82rem;font-weight:800;color:#4c5f75}.chip:hover,.chip.active{border-color:#8bb6e8;background:var(--brand-soft);color:var(--brand)}
.report-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:24px}.metric-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:17px}.metric-card span{color:var(--muted);font-size:.78rem}.metric-card strong{font-size:1.45rem;display:block;margin-top:6px}.metric-card small{font-size:.72rem;color:var(--muted)}.source-list{display:grid;gap:10px}.source-row{display:flex;justify-content:space-between;gap:12px;border-bottom:1px dashed var(--line);padding-bottom:9px}.source-row:last-child{border-bottom:0}.source-row span{color:var(--muted);font-size:.8rem}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);font-size:.86rem}.data-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.trend{font-weight:900}.trend.up{color:var(--green)}.trend.down{color:var(--red)}.crime-bars{display:grid;gap:13px}.crime-row{display:grid;grid-template-columns:150px 1fr 70px;gap:12px;align-items:center;font-size:.84rem}.bar-track{height:8px;background:#e8edf3;border-radius:99px;overflow:hidden}.bar-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,#5e9be6,var(--brand))}
.module-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;display:flex;flex-direction:column;min-height:210px;box-shadow:var(--shadow-sm);transition:.18s ease}.module-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.module-card .module-icon{width:44px;height:44px;border-radius:13px;background:var(--brand-soft);display:grid;place-items:center;font-size:1.2rem}.module-card h3{margin:18px 0 7px;font-size:1.1rem}.module-card p{color:var(--muted);font-size:.9rem;margin:0 0 18px}.module-card a{margin-top:auto;color:var(--brand);font-weight:900;font-size:.88rem}
.service-layout{display:grid;grid-template-columns:280px 1fr;gap:24px}.filter-panel{position:sticky;top:92px;align-self:start}.service-list{display:grid;gap:14px}.provider-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;display:grid;grid-template-columns:1fr auto;gap:16px}.provider-main{display:grid;gap:8px}.provider-title{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.provider-title h3{margin:0}.verified{color:var(--green);font-weight:900;font-size:.78rem}.provider-meta{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:.8rem}.provider-actions{display:flex;gap:8px;align-items:flex-start}.service-category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.service-category{border:1px solid var(--line);background:#fff;border-radius:14px;padding:16px;text-align:left}.service-category:hover,.service-category.active{border-color:#86b5ea;background:var(--brand-soft)}.service-category span{font-size:1.2rem}.service-category b{display:block;margin-top:8px}
.wizard{max-width:850px;margin:0 auto}.progress{display:flex;gap:8px;margin-bottom:22px}.progress span{height:7px;background:#dce4ed;border-radius:99px;flex:1}.progress span.active{background:var(--brand)}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.choice{border:1px solid var(--line);background:#fff;border-radius:14px;padding:18px;text-align:left;min-height:116px}.choice:hover,.choice.active{border-color:#86b5ea;background:var(--brand-soft)}.choice i{font-style:normal;font-size:1.35rem}.choice b{display:block;margin-top:10px}.safety-alert{background:var(--red-soft);border:1px solid #efb5b1;color:#80302c;border-radius:14px;padding:16px}.result-panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px}.route-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.route-line span{background:var(--surface-2);padding:8px 10px;border-radius:10px;font-size:.8rem;font-weight:800}.route-line i{color:var(--brand);font-style:normal;font-weight:900}
.dashboard-shell{display:grid;grid-template-columns:260px 1fr;gap:24px}.dash-nav{background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px;align-self:start;position:sticky;top:92px}.dash-nav button{width:100%;border:0;background:transparent;padding:11px 12px;border-radius:10px;text-align:left;font-weight:800;color:#536479}.dash-nav button.active,.dash-nav button:hover{background:var(--brand-soft);color:var(--brand)}.dash-main{min-width:0}.home-summary{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.timeline{display:grid;gap:0}.timeline-item{position:relative;padding:0 0 22px 28px;border-left:2px solid #dce6f1}.timeline-item:last-child{border-left-color:transparent}.timeline-item:before{content:"";position:absolute;width:12px;height:12px;border-radius:99px;background:var(--brand);left:-7px;top:5px;box-shadow:0 0 0 4px var(--brand-soft)}.timeline-item h4{margin:0 0 4px}.timeline-item p{margin:3px 0;color:var(--muted);font-size:.86rem}.timeline-item small{color:var(--muted)}.list-row{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid var(--line)}.list-row:last-child{border-bottom:0}.list-row .left{display:grid;gap:3px}.list-row small{color:var(--muted)}.empty-state{text-align:center;padding:48px 22px;border:1px dashed #becbd9;background:#fbfcfe;border-radius:18px}.empty-state .big{font-size:2rem}.empty-state p{color:var(--muted);max-width:520px;margin:10px auto 20px}.home-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.home-tab{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 11px;font-weight:800}.home-tab.active{background:var(--dark);color:#fff;border-color:var(--dark)}.ask-box{background:linear-gradient(135deg,#0c1727,#16315a);color:#fff;border-radius:18px;padding:20px}.ask-row{display:flex;gap:8px;margin-top:14px}.ask-row input{flex:1;border:0;border-radius:10px;padding:12px}.ask-response{margin-top:12px;color:#d8e5f6;font-size:.88rem}
.guide-toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:20px}.guide-search{max-width:420px;flex:1}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.guide-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;display:flex;flex-direction:column;min-height:220px}.guide-card h3{font-size:1.08rem;margin:12px 0 8px}.guide-card p{color:var(--muted);font-size:.9rem}.guide-card button{margin-top:auto;align-self:flex-start}.article-body{display:grid;gap:18px}.article-body h3{margin:0}.article-body p{margin:0;color:#42536a}.article-note{background:var(--amber-soft);border:1px solid #efd897;padding:14px;border-radius:12px;color:#6f5522}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}.stat strong{display:block;font-size:1.5rem}.stat span{color:var(--muted);font-size:.8rem}.portfolio-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.property-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}.property-head{display:flex;justify-content:space-between;gap:12px}.property-card p{color:var(--muted);font-size:.85rem}.spend-bar{height:8px;border-radius:99px;background:#edf1f5;overflow:hidden}.spend-bar span{display:block;height:100%;background:var(--brand)}
.admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.admin-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}.health-dot{width:10px;height:10px;border-radius:99px;display:inline-block}.health-dot.ok{background:var(--green)}.health-dot.warn{background:#e4a11b}.health-dot.off{background:#a3afbd}.code-box{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;background:#0e1726;color:#c7d9ed;border-radius:14px;padding:16px;overflow:auto;white-space:pre-wrap}
.cta-band{background:linear-gradient(135deg,#0e2039,#0f579e);color:#fff;border-radius:26px;padding:38px;display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center}.cta-band p{color:#d7e6f7}.cta-band .button-row{justify-content:flex-end}
.modal-backdrop{display:none;position:fixed;inset:0;background:rgba(4,12,24,.64);z-index:100;padding:24px;overflow:auto}.modal-backdrop.open{display:grid;place-items:center}.modal-card{position:relative;background:#fff;border-radius:22px;width:min(720px,100%);padding:28px;box-shadow:0 30px 90px rgba(0,0,0,.3);max-height:calc(100vh - 48px);overflow:auto}.modal-close{position:absolute;right:14px;top:12px;width:38px;height:38px;border-radius:10px;border:1px solid var(--line);background:#fff;font-size:1.3rem}.modal-head h2{font-size:1.8rem;line-height:1.1;letter-spacing:-.03em;margin:8px 35px 10px 0}.modal-head p{color:var(--muted)}.login-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:20px 0}.login-option{border:1px solid var(--line);background:#fff;border-radius:12px;padding:13px;text-align:left;display:flex;align-items:center;gap:10px}.login-option:hover{background:var(--surface-2)}.login-option span{width:30px;height:30px;border-radius:8px;background:var(--surface-2);display:grid;place-items:center;font-weight:900}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,30px);opacity:0;pointer-events:none;background:#0b1727;color:#fff;border-radius:12px;padding:12px 16px;z-index:140;box-shadow:var(--shadow);transition:.2s ease;max-width:min(520px,90vw);text-align:center;font-size:.88rem}.toast.show{opacity:1;transform:translate(-50%,0)}
.site-footer{background:#0b1422;color:#d6e0ec;padding:50px 0 18px;margin-top:70px}.footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:32px}.footer-grid>div{display:flex;flex-direction:column;gap:9px}.footer-grid b{color:#fff}.footer-grid a,.footer-grid span,.footer-grid p{font-size:.83rem;color:#aab8c9}.footer-grid a:hover{color:#fff}.footer-brand b{color:#fff}.footer-brand small{color:#9db0c4}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:30px;padding-top:17px;display:flex;justify-content:space-between;color:#8091a5;font-size:.78rem}
.feature-line{display:flex;gap:12px;align-items:flex-start}.feature-line .circle{width:38px;height:38px;border-radius:12px;background:var(--brand-soft);display:grid;place-items:center;color:var(--brand);font-weight:900;flex:0 0 auto}.feature-line h4{margin:0 0 4px}.feature-line p{margin:0;color:var(--muted);font-size:.88rem}.callout{border-left:4px solid var(--brand);padding:14px 16px;background:#eef5ff;border-radius:0 12px 12px 0}.inline-note{font-size:.8rem;color:var(--muted)}.danger-note{font-size:.8rem;color:var(--red)}.right{text-align:right}.center{text-align:center}.hidden{display:none!important}.mb0{margin-bottom:0}.mt0{margin-top:0}.mt12{margin-top:12px}.mt20{margin-top:20px}.mt30{margin-top:30px}.w100{width:100%}
@media(max-width:980px){.site-header{height:auto}.nav-shell{height:auto;min-height:72px;display:flex;flex-wrap:wrap;gap:8px 14px;padding:9px 0}.brand{order:1}.nav-actions{order:2;margin-left:auto}.main-nav{order:3;width:100%;margin-left:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding:1px 0 4px}.main-nav::-webkit-scrollbar{display:none}.main-nav a{flex:0 0 auto;padding:8px 10px;font-size:.86rem}.hero-grid,.split,.report-grid,.dashboard-shell,.service-layout,.home-summary{grid-template-columns:1fr}.hero-visual{max-width:700px}.filter-panel,.dash-nav{position:static}.module-grid{grid-template-columns:repeat(3,1fr)}.module-grid a:nth-child(3){border-right:0}.module-grid a:nth-child(-n+3){border-bottom:1px solid var(--line)}.four-col,.metric-cards,.stat-grid{grid-template-columns:repeat(2,1fr)}.three-col,.guide-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}.cta-band{grid-template-columns:1fr}.cta-band .button-row{justify-content:flex-start}}
@media(max-width:720px){.container{width:min(100% - 28px,var(--max))}.section{padding:55px 0}.page-hero{padding:38px 0 22px}.page-hero .container{display:block}.page-hero-actions{margin-top:18px}.display{font-size:clamp(2.4rem,13vw,3.6rem)}.hero{padding-top:52px}.hero-grid{grid-template-columns:1fr}.floating-note{position:static;margin-top:10px}.product-window{transform:none}.metric-row{grid-template-columns:1fr 1fr}.module-grid{grid-template-columns:repeat(2,1fr)}.module-grid a:nth-child(2n){border-right:0}.module-grid a{border-bottom:1px solid var(--line)}.two-col,.three-col,.four-col,.form-grid,.metric-cards,.guide-grid,.portfolio-grid,.admin-grid{grid-template-columns:1fr}.choice-grid,.service-category-grid{grid-template-columns:1fr 1fr}.provider-card{grid-template-columns:1fr}.provider-actions{flex-wrap:wrap}.crime-row{grid-template-columns:110px 1fr 52px}.login-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-grid>div:last-child{grid-column:auto}.cta-band{padding:28px}.field-inline{flex-direction:column}.guide-toolbar{align-items:stretch;flex-direction:column}.guide-search{max-width:none}.modal-backdrop{padding:10px}.modal-card{padding:22px}.right{text-align:left}}
@media(max-width:450px){.display{font-size:clamp(2.1rem,11.2vw,3rem)}.choice-grid,.service-category-grid,.metric-row{grid-template-columns:1fr}.module-grid{grid-template-columns:1fr}.module-grid a{border-right:0}.nav-shell{gap:10px}.brand small{display:none}.brand-mark{width:34px;height:34px}.ghost-btn.compact{padding:8px 9px}.crime-row{grid-template-columns:1fr}.bar-track{order:3;grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* ===== Core functional modules (introduced v1.3, retained in v1.31) ===== */
.workspace-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:20px;margin-bottom:20px}.workspace-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px}.workspace-card h3{margin:0 0 8px}.workspace-card p{margin:0;color:var(--muted);font-size:.9rem}.mini-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.mini-kpi{background:var(--surface-2);padding:13px;border-radius:12px}.mini-kpi strong{display:block;font-size:1.2rem}.mini-kpi span{font-size:.75rem;color:var(--muted)}
.segmented{display:flex;gap:6px;flex-wrap:wrap;padding:6px;background:#edf2f7;border-radius:14px}.segment-btn{border:0;background:transparent;padding:9px 12px;border-radius:10px;font-weight:800;color:#536479}.segment-btn.active{background:#fff;color:var(--brand);box-shadow:var(--shadow-sm)}
.report-toolbar{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap}.report-tabs{display:flex;gap:7px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:18px}.report-tab{border:0;background:transparent;padding:9px 11px;border-radius:10px;font-weight:800;color:#64758b}.report-tab.active{background:var(--brand-soft);color:var(--brand)}
.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.info-tile{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}.info-tile strong{display:block;font-size:1.25rem;margin-top:3px}.info-tile span,.info-tile small{color:var(--muted)}.info-tile small{display:block;margin-top:6px}.metric-help{font-size:.73rem;color:var(--muted);margin-top:6px}
.progress-bar{height:9px;background:#e9eef4;border-radius:999px;overflow:hidden}.progress-bar>span{display:block;height:100%;background:linear-gradient(90deg,var(--brand),#2e9ae9);border-radius:999px}.progress-label{display:flex;justify-content:space-between;gap:12px;font-size:.78rem;color:var(--muted);margin-bottom:7px}
.price-chart{display:flex;align-items:flex-end;gap:12px;height:190px;padding:18px 6px 4px;border-bottom:1px solid var(--line)}.price-bar{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:7px;height:100%}.price-bar i{display:block;width:min(54px,80%);background:linear-gradient(180deg,#45a1ec,var(--brand));border-radius:9px 9px 3px 3px;min-height:16px}.price-bar b{font-size:.76rem}.price-bar small{font-size:.7rem;color:var(--muted)}
.action-list{display:grid;gap:10px}.action-card{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:14px;background:#fff}.action-card .action-icon{width:36px;height:36px;border-radius:10px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;font-weight:900}.action-card h4{margin:0}.action-card p{margin:2px 0 0;color:var(--muted);font-size:.82rem}
.source-detail{display:grid;grid-template-columns:1.3fr .8fr .8fr;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.source-detail:last-child{border-bottom:0}.source-detail small{color:var(--muted)}
.filter-toolbar{display:grid;grid-template-columns:minmax(220px,1.2fr) repeat(3,minmax(140px,.5fr));gap:10px}.filter-toolbar input,.filter-toolbar select{width:100%;border:1px solid #ccd7e3;background:#fff;border-radius:11px;padding:11px 12px}.compare-dock{position:sticky;bottom:14px;z-index:20;background:#0c1727;color:#fff;border-radius:16px;padding:12px 14px;box-shadow:0 18px 50px rgba(0,0,0,.18);display:none;align-items:center;justify-content:space-between;gap:12px}.compare-dock.show{display:flex}.compare-chips{display:flex;gap:7px;flex-wrap:wrap}.compare-chip{background:rgba(255,255,255,.1);border-radius:999px;padding:7px 10px;font-size:.78rem}.provider-score-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.provider-score{background:var(--surface-2);padding:12px;border-radius:11px}.provider-score strong{display:block}.provider-score small{color:var(--muted)}.provider-card.selected{border-color:#78ade8;box-shadow:0 0 0 3px var(--brand-soft)}.provider-card.saved{box-shadow:inset 4px 0 0 var(--brand)}.provider-select{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:800;color:var(--muted)}
.wizard-shell{max-width:920px;margin:0 auto}.wizard-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:15px}.wizard-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.wizard-step{height:6px;border-radius:99px;background:#dce5ee}.wizard-step.active{background:var(--brand)}.symptom-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.symptom-btn{border:1px solid var(--line);border-radius:13px;background:#fff;padding:14px;text-align:left;font-weight:800}.symptom-btn.active,.symptom-btn:hover{background:var(--brand-soft);border-color:#8bb8ea;color:var(--brand)}.upload-box{border:1px dashed #aebccc;background:#fbfcfe;border-radius:14px;padding:18px}.upload-box input{width:100%}.result-route{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.result-route .route-card{border:1px solid var(--line);background:#fff;border-radius:14px;padding:16px}.route-card b{display:block;margin-bottom:5px}.route-card p{margin:0;color:var(--muted);font-size:.83rem}.critical-panel{border:1px solid #e8aaa7;background:#fff3f2;border-radius:18px;padding:22px}.critical-panel h3{color:#922e2a;margin-top:0}
.shop-layout{display:grid;grid-template-columns:1fr 330px;gap:22px}.shop-sidebar{position:sticky;top:92px;align-self:start}.problem-selector{display:flex;gap:8px;overflow:auto;padding-bottom:8px}.problem-pill{white-space:nowrap;border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 12px;font-weight:800}.problem-pill.active{background:var(--dark);color:#fff;border-color:var(--dark)}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.product-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;display:grid;gap:12px}.product-icon{width:48px;height:48px;border-radius:14px;background:var(--brand-soft);display:grid;place-items:center;font-size:1.35rem}.product-card h3{margin:0}.product-card p{margin:0;color:var(--muted);font-size:.86rem}.product-price{font-size:1.35rem;font-weight:900}.cart-row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}.qty-control{display:flex;align-items:center;gap:6px}.qty-control button{width:28px;height:28px;border:1px solid var(--line);background:#fff;border-radius:8px;font-weight:900}.compat-result{padding:12px;background:var(--surface-2);border-radius:12px;margin-top:12px}
.guide-layout{display:grid;grid-template-columns:240px 1fr;gap:22px}.guide-filters{position:sticky;top:92px;align-self:start}.bookmark-badge{position:absolute;right:14px;top:14px}.guide-card{position:relative}.guide-meta{display:flex;gap:7px;flex-wrap:wrap}.tool-card{background:linear-gradient(135deg,#eff6ff,#fff);border:1px solid #cfe0f4;border-radius:16px;padding:20px}.checklist{display:grid;gap:8px}.check-item{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.check-item input{margin-top:5px}.quote-checker{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.quote-output{background:#0c1727;color:#fff;border-radius:14px;padding:16px}.quote-output p{color:#cbd8e7}.article-section{border-left:3px solid #d6e5f6;padding-left:16px}.article-section h3{margin:0 0 6px}.article-section p{margin:0;color:#4b5d74}
.home-topbar{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.home-switcher{display:flex;gap:8px;align-items:center}.home-switcher select{border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 12px;min-width:220px}.home-health{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.health-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px}.health-card strong{display:block;font-size:1.3rem}.health-card small{color:var(--muted)}.signal-list{display:grid;gap:9px}.signal-item{display:flex;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:12px}.timeline-filter{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0}.table-actions{display:flex;gap:6px;justify-content:flex-end}.home-team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.team-card{border:1px solid var(--line);background:#fff;border-radius:14px;padding:16px}.permission-grid{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.permission{font-size:.72rem;background:var(--surface-2);border-radius:999px;padding:5px 8px}.record-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.record-detail{background:var(--surface-2);border-radius:11px;padding:12px}.record-detail small{display:block;color:var(--muted)}.record-detail b{display:block;margin-top:3px}.home-due{border-left:4px solid var(--amber);padding:12px 14px;background:var(--amber-soft);border-radius:0 12px 12px 0}.home-complete{border-left-color:var(--green);background:var(--green-soft)}
.skeleton{background:linear-gradient(90deg,#edf2f7,#f8fafc,#edf2f7);background-size:200% 100%;animation:fangShimmer 1.2s infinite;border-radius:10px;height:16px}@keyframes fangShimmer{to{background-position:-200% 0}}
@media(max-width:980px){.filter-toolbar{grid-template-columns:1fr 1fr}.shop-layout,.guide-layout{grid-template-columns:1fr}.shop-sidebar,.guide-filters{position:static}.home-health,.provider-score-grid{grid-template-columns:repeat(2,1fr)}.workspace-intro{grid-template-columns:1fr}.info-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.filter-toolbar,.quote-checker,.record-detail-grid{grid-template-columns:1fr}.info-grid,.result-route,.product-grid,.home-health,.home-team-grid,.provider-score-grid{grid-template-columns:1fr}.symptom-grid{grid-template-columns:1fr}.source-detail{grid-template-columns:1fr}.action-card{grid-template-columns:auto 1fr}.action-card>a,.action-card>button{grid-column:1/-1}.compare-dock{align-items:flex-start;flex-direction:column}.shop-sidebar{order:-1}.home-switcher{width:100%}.home-switcher select{min-width:0;flex:1}}
@media print{.site-header,.site-footer,.page-hero-actions,.report-toolbar .button-row,.development-notice{display:none!important}.page-hero{padding:20px 0}.section{padding:20px 0}.card{box-shadow:none}.container{width:100%}}

/* ===== v1.31 live integration layer ===== */
.live-notice{display:flex;align-items:flex-start;gap:12px;background:var(--green-soft);border:1px solid #a9dec0;border-radius:14px;padding:13px 15px;margin-bottom:18px}.live-notice span{font-size:.72rem;font-weight:900;color:#1d7446;white-space:nowrap}.live-notice p{margin:0;color:#426554;font-size:.84rem}.integration-hero{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;background:linear-gradient(135deg,#0c1b2d,#143f70);color:#fff;border-radius:20px;padding:26px}.integration-hero h2{font-size:clamp(1.5rem,3vw,2.2rem);margin:8px 0}.integration-hero p{color:#c6d6e8;max-width:760px}.integration-score{min-width:150px;text-align:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);padding:20px;border-radius:16px}.integration-score strong{display:block;font-size:2.1rem}.integration-score span{font-size:.78rem;color:#c6d6e8}.integration-table{display:grid}.integration-row{display:grid;grid-template-columns:minmax(220px,1.4fr) auto minmax(220px,.8fr);gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.integration-row:last-child{border-bottom:0}.integration-row small{display:block;color:var(--muted);margin-top:4px}.sync-pill{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:800;padding:6px 9px;border-radius:999px;background:var(--surface-2);color:var(--muted)}
@media(max-width:720px){.live-notice{display:block}.live-notice span{display:block;margin-bottom:6px}.integration-hero{grid-template-columns:1fr}.integration-score{min-width:0}.integration-row{grid-template-columns:1fr}.integration-row .status{justify-self:start}}

/* v1.32 static feature library */
.static-feature-block{margin-top:52px;padding-top:44px;border-top:1px solid var(--border,#e6ebf2)}
.feature-heading{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:24px}.feature-heading .section-title{margin:6px 0 10px}.feature-count{white-space:nowrap;padding:10px 14px;border-radius:999px;background:#eef5ff;color:#1167d8;font-weight:700;font-size:13px}.tool-search{max-width:620px;margin-bottom:18px}.tool-search input,.title-input{width:100%;border:1px solid #d7dfeb;border-radius:12px;padding:13px 14px;font:inherit;background:#fff}.title-input{font-weight:800;font-size:18px;margin-bottom:16px}.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.filter-chip{border:1px solid #dce4ef;background:#fff;border-radius:999px;padding:8px 12px;cursor:pointer}.filter-chip.active{background:#1167d8;color:#fff;border-color:#1167d8}.library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.library-card{display:block;text-align:left;border:1px solid #e1e7ef;background:#fff;border-radius:18px;padding:20px;color:inherit;box-shadow:0 8px 28px rgba(19,45,79,.05)}button.library-card{width:100%;cursor:pointer;font:inherit}.library-card:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(19,45,79,.09)}.library-card h3{margin:14px 0 8px}.library-card p{color:#5d6b7c;line-height:1.65}.library-card-top,.library-meta,.report-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px}.library-meta{margin-top:16px;padding-top:14px;border-top:1px solid #edf1f5;font-size:12px;color:#667789}.status.danger{background:#fff0f0;color:#b42318}.status.warn{background:#fff7e6;color:#9a6700}.status.good{background:#eaf8ef;color:#18794e}.clean-list{margin:10px 0 0;padding-left:20px}.clean-list li{margin:6px 0}.detail-stack{display:grid;gap:16px}.service-symbol{width:42px;height:42px;border-radius:12px;background:#edf5ff;display:grid;place-items:center;font-size:20px}.soft-inline{background:#f7f9fc;border-radius:12px;padding:12px 14px;display:grid;gap:5px;font-size:13px}.soft-inline span{color:#617083}.weight-panel{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:18px}.weight-panel label{background:#fff;border:1px solid #e1e7ef;border-radius:14px;padding:14px}.weight-panel label span{display:flex;justify-content:space-between;font-size:12px;margin-bottom:8px}.weight-panel input{width:100%}.decision-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.compact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ranking-list{display:grid;gap:10px}.ranking-row{display:grid;grid-template-columns:40px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #edf1f5}.ranking-row small{display:block;color:#6d7785;margin-top:4px}.rank-no{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#edf5ff;color:#1167d8;font-weight:800}.template-grid,.tool-launch-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.template-card,.tool-launch-grid a{border:1px solid #e1e7ef;border-radius:16px;padding:18px;background:#fff;color:inherit;text-align:left;display:flex;flex-direction:column;gap:8px;cursor:pointer;font:inherit}.template-card span,.tool-launch-grid a>span{width:36px;height:36px;border-radius:10px;background:#edf5ff;color:#1167d8;display:grid;place-items:center;font-weight:800}.template-card small,.tool-launch-grid small{color:#718093}.project-row{display:grid;grid-template-columns:1fr 140px auto;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid #edf1f5}.project-row small{display:block;color:#748091;margin-top:4px}.progress-mini{height:8px;background:#edf1f6;border-radius:999px;overflow:hidden}.progress-mini i{display:block;height:100%;background:#1167d8}.check-row{display:flex;gap:10px;align-items:flex-start;padding:11px 0;border-bottom:1px solid #edf1f5}.check-row input{margin-top:3px}.danger-link{border:0;background:none;color:#b42318;cursor:pointer;font:inherit}.planner-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.planner-tabs button{border:1px solid #dce4ef;border-radius:999px;background:#fff;padding:9px 13px;cursor:pointer}.planner-tabs button.active{background:#1167d8;color:#fff;border-color:#1167d8}.component-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.component-health{border:1px solid #e0e6ee;border-radius:16px;background:#fff;padding:18px;text-align:left;display:grid;gap:7px;cursor:pointer}.component-health.good{border-left:4px solid #38a169}.component-health.attention{border-left:4px solid #d97706}.component-health.unknown{border-left:4px solid #94a3b8}.component-health small{color:#7a8795}.maintenance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.maintenance-item{display:flex;gap:10px;padding:14px;border:1px solid #e1e7ef;border-radius:14px;background:#fff}.maintenance-item span{display:grid;gap:4px}.maintenance-item small{color:#687789}.maintenance-item.done{opacity:.62;background:#f5f7fa}.toggle-grid{display:flex;gap:16px;flex-wrap:wrap;margin-top:18px}.tool-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.tool-panel{border:1px solid #e1e7ef;border-radius:20px;background:#fff;padding:24px}.tool-panel h2{margin-top:0}.checklist-group{margin-top:18px}.checklist-group h4{margin-bottom:5px}.checklist-progress{height:10px;background:#edf2f7;border-radius:999px;overflow:hidden;margin:12px 0 16px}.checklist-progress i{display:block;height:100%;background:#1167d8}.quote-total{font-size:34px;font-weight:850;color:#0f4fa8}.quote-breakdown{display:grid;gap:8px;margin-top:14px}.quote-breakdown div{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #edf1f5}.glossary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.glossary-card{border:1px solid #e1e7ef;border-radius:14px;padding:16px;background:#fff}.glossary-card h4{margin:0 0 4px}.glossary-card small{color:#1167d8;font-weight:700}.glossary-card p{color:#657385;margin:8px 0 0;line-height:1.55}
@media(max-width:960px){.library-grid,.decision-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.weight-panel{grid-template-columns:repeat(2,1fr)}.template-grid,.tool-launch-grid,.component-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-page-grid{grid-template-columns:1fr}.project-row{grid-template-columns:1fr auto}.project-row .progress-mini{grid-column:1/-1;grid-row:2}}
@media(max-width:620px){.feature-heading{align-items:flex-start;flex-direction:column}.library-grid,.decision-grid,.template-grid,.tool-launch-grid,.component-grid,.maintenance-grid,.glossary-grid,.weight-panel{grid-template-columns:1fr}.compact-grid{grid-template-columns:1fr}.project-row{grid-template-columns:1fr auto}.static-feature-block{margin-top:36px;padding-top:30px}}


/* ===== v1.33 content & scenario depth ===== */
.content-page{padding:28px 0 72px}.content-breadcrumb{display:flex;gap:9px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:.84rem;margin:12px 0 28px}.content-breadcrumb a:hover{color:var(--brand)}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:36px;align-items:start}.content-main{min-width:0}.content-hero{background:linear-gradient(135deg,#fff,#f5f9ff);border:1px solid var(--line);border-radius:24px;padding:34px;margin-bottom:20px}.content-hero h1{font-size:clamp(2.2rem,5vw,4.1rem);line-height:1.02;letter-spacing:-.048em;margin:14px 0}.content-section{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;margin:16px 0}.content-section h2{font-size:1.55rem;line-height:1.15;margin:8px 0 16px}.content-section.safety-danger{border-left:5px solid var(--red);background:linear-gradient(90deg,var(--red-soft),#fff 40%)}.sticky-card{position:sticky;top:calc(var(--header) + 22px)}.sticky-card h3{line-height:1.25}.sticky-card hr{border:0;border-top:1px solid var(--line);margin:20px 0}.number-list{list-style:none;counter-reset:item;margin:18px 0 0;padding:0;display:grid;gap:12px}.number-list li{counter-increment:item;display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start}.number-list li:before{content:counter(item);width:30px;height:30px;border-radius:10px;background:var(--brand-soft);color:var(--brand);font-size:.8rem;font-weight:900;display:grid;place-items:center}.phrase-box blockquote{margin:18px 0;padding:18px 20px;border-left:4px solid var(--brand);background:var(--brand-soft);border-radius:0 14px 14px 0;font-size:1.18rem;font-weight:750}.content-cta{display:flex;justify-content:space-between;gap:24px;align-items:center;background:var(--dark);color:#fff;border-radius:22px;padding:28px;margin-top:20px}.content-cta h2{margin:6px 0}.content-cta p{color:#c8d5e4;margin:0;max-width:650px}.content-cta .ghost-btn{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);color:#fff}.related-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.related-link{display:flex;justify-content:space-between;gap:10px;border:1px solid var(--line);padding:13px 14px;border-radius:12px;background:#fff}.related-link:hover{border-color:#adc7e7;color:var(--brand)}.compact-lead{font-size:1rem}.area-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.area-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:var(--shadow-sm)}.area-card:hover{transform:translateY(-2px);border-color:#b9cee8}.area-card h3{font-size:1.45rem;margin:8px 0}.area-card p{color:var(--muted)}.area-hero{margin-bottom:24px}.knowledge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.knowledge-card{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}.knowledge-card:hover{border-color:#b9cee8;box-shadow:var(--shadow-sm)}.knowledge-card small{color:var(--muted);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.area-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.area-mini{display:flex;justify-content:space-between;border:1px solid var(--line);background:#fff;border-radius:13px;padding:14px}.mt36{margin-top:36px}.mt28{margin-top:28px}.mt12{margin-top:12px}.journey-top{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:28px;align-items:end;margin-bottom:18px}.journey-home-name{width:100%;margin-top:8px;border:1px solid var(--line);border-radius:13px;padding:13px 14px;font:inherit;font-weight:800}.journey-progress>div:first-child{display:flex;align-items:end;gap:8px}.journey-progress b{font-size:2rem;color:var(--brand)}.journey-progress span,.journey-progress small{color:var(--muted)}.progress-track{height:9px;background:var(--surface-2);border-radius:999px;overflow:hidden;margin:7px 0}.progress-track i{display:block;height:100%;background:var(--brand);border-radius:inherit}.journey-shell{display:grid;grid-template-columns:260px minmax(0,1fr);gap:18px}.journey-nav{display:grid;gap:8px;align-content:start}.journey-nav button{border:1px solid var(--line);background:#fff;border-radius:13px;padding:13px;text-align:left;display:flex;justify-content:space-between;gap:10px;font:inherit;cursor:pointer}.journey-nav button small{color:var(--muted)}.journey-nav button.active{border-color:#aac7eb;background:var(--brand-soft);color:var(--brand);font-weight:800}.journey-stage h2{font-size:2rem;margin:8px 0}.journey-tasks{display:grid;gap:8px;margin:22px 0}.journey-task{display:flex;gap:11px;align-items:flex-start;border:1px solid var(--line);border-radius:12px;padding:13px;background:#fff}.journey-task input{margin-top:4px}.journey-task.done{background:var(--green-soft);opacity:.72}.journey-task.done span{text-decoration:line-through}.journey-note{display:grid;gap:7px;font-weight:700}.journey-note textarea{min-height:110px;border:1px solid var(--line);border-radius:12px;padding:12px;font:inherit;font-weight:400;resize:vertical}.journey-actions{justify-content:flex-end;margin-top:18px}
@media(max-width:980px){.content-layout{grid-template-columns:1fr}.content-aside{order:-1}.sticky-card{position:static}.knowledge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-shell{grid-template-columns:1fr}.journey-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.journey-nav button{display:grid}.journey-top{grid-template-columns:1fr}.area-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.content-page{padding-top:14px}.content-hero,.content-section{padding:21px}.content-cta{align-items:flex-start;flex-direction:column}.related-grid,.area-grid,.knowledge-grid,.area-mini-grid{grid-template-columns:1fr}.journey-nav{grid-template-columns:1fr 1fr}.journey-stage h2{font-size:1.6rem}}

/* ===== v1.34 My Home depth ===== */
.v134-health .health-score-card strong{display:flex;align-items:baseline;gap:3px}.v134-health .health-score-card strong span{font-size:.8rem;color:var(--muted);font-weight:800}.health-meter{height:7px;background:var(--surface-2);border-radius:999px;overflow:hidden;margin:10px 0 8px}.health-meter i{display:block;height:100%;background:var(--brand);border-radius:inherit}.health-score-card em{font-style:normal;font-size:.8rem;font-weight:800}.health-score-card em.good{color:var(--green)}.health-score-card em.warn{color:var(--amber)}.health-score-card em.bad{color:var(--red)}
.cost-bars{display:grid;gap:14px}.cost-bar-row{display:grid;gap:6px}.cost-bar-row>div:first-child{display:flex;justify-content:space-between;gap:14px;align-items:center}.cost-bar-row span{color:var(--muted);font-size:.9rem}.cost-bar-track{height:9px;background:var(--surface-2);border-radius:999px;overflow:hidden}.cost-bar-track i{display:block;height:100%;background:linear-gradient(90deg,var(--brand),#45a0ec);border-radius:inherit}.month-bars{height:230px;display:grid;grid-template-columns:repeat(12,1fr);gap:7px;align-items:end;padding-top:10px}.month-bar{height:100%;display:grid;grid-template-rows:1fr auto;gap:8px;align-items:end;text-align:center}.month-bar i{display:block;width:100%;min-height:2px;background:linear-gradient(180deg,#4d9fea,var(--brand));border-radius:8px 8px 3px 3px}.month-bar small{color:var(--muted);font-size:.68rem}.cost-ledger{display:grid}.cost-ledger-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;padding:17px 0;border-top:1px solid var(--line);align-items:center}.cost-ledger-row:first-child{border-top:0}.cost-ledger-row small{display:block;color:var(--muted);margin-top:3px}.cost-ledger-row p{margin:6px 0 0;color:var(--muted);font-size:.9rem}.cost-ledger-amount{display:grid;justify-items:end;gap:4px}.cost-ledger-amount>b{font-size:1.06rem}
.quote-set-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:var(--shadow-sm)}.quote-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}.quote-compare-table{width:100%;border-collapse:collapse;min-width:850px}.quote-compare-table th,.quote-compare-table td{padding:13px 12px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top;font-size:.9rem}.quote-compare-table th{background:#f7f9fc;color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.04em}.quote-compare-table tbody tr:last-child td{border-bottom:0}.quote-compare-table td small{display:block;color:var(--muted);margin-top:4px;max-width:180px}.selected-quote{background:var(--green-soft)}.mini-insight{display:block;width:max-content;margin-top:5px;background:var(--brand-soft);color:var(--brand);border-radius:999px;padding:3px 6px;font-size:.65rem;font-weight:850}.quote-actions{display:flex;align-items:center;gap:7px}.quote-selected-note{display:flex;justify-content:space-between;gap:14px;margin-top:14px;padding:12px 14px;border-radius:12px;background:var(--green-soft);color:#17684b}
.project-template-row{display:flex;gap:8px;flex-wrap:wrap}.project-template-row button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 13px;font-weight:750;color:#4b5c70}.project-template-row button:hover{border-color:#aac7eb;color:var(--brand)}.project-board{display:grid;gap:18px}.project-card-v134{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:var(--shadow-sm)}.project-card-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start}.project-card-head h3{font-size:1.45rem;margin:10px 0 6px}.project-card-head p{color:var(--muted);margin:0}.project-status-box{min-width:78px;text-align:center;background:var(--brand-soft);border-radius:15px;padding:11px}.project-status-box b{display:block;color:var(--brand);font-size:1.35rem}.project-status-box small{color:var(--muted);font-size:.72rem}.project-money{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0 13px}.project-money>div{background:var(--surface-2);border-radius:12px;padding:12px}.project-money small{display:block;color:var(--muted);font-size:.72rem}.project-money b{display:block;margin-top:2px}.project-progress-line{height:8px;background:var(--surface-2);border-radius:999px;overflow:hidden}.project-progress-line i{display:block;height:100%;background:var(--brand)}.project-task-list{margin-top:14px}.project-task-v134{display:flex;gap:10px;align-items:flex-start;padding:11px 0;border-bottom:1px solid var(--line)}.project-task-v134 input{margin-top:4px}.project-task-v134 span{display:grid;gap:2px}.project-task-v134 small{color:var(--muted)}.project-task-v134.done{opacity:.58}.project-task-v134.done b{text-decoration:line-through}.project-card-footer{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:16px;color:var(--muted);font-size:.85rem}.project-mini{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:12px 0;display:grid;grid-template-columns:minmax(0,1fr) 120px 42px;gap:12px;align-items:center;text-align:left}.project-mini:last-child{border-bottom:0}.project-mini small{display:block;color:var(--muted);margin-top:3px}.project-mini strong{text-align:right;color:var(--brand)}
@media(max-width:960px){.project-money{grid-template-columns:repeat(2,1fr)}.month-bars{height:190px}.project-card-footer{align-items:flex-start;flex-direction:column}.project-mini{grid-template-columns:minmax(0,1fr) 90px 40px}}
@media(max-width:620px){.cost-ledger-row{grid-template-columns:1fr}.cost-ledger-amount{justify-items:start}.project-money{grid-template-columns:1fr 1fr}.project-card-head{grid-template-columns:1fr}.project-status-box{width:max-content}.quote-set-card,.project-card-v134{padding:18px}.month-bars{gap:3px;height:150px}.month-bar small{font-size:.58rem}.project-mini{grid-template-columns:1fr}.project-mini strong{text-align:left}}
.compact-select{border:1px solid var(--line);background:#fff;border-radius:11px;padding:10px 12px;color:var(--ink);font-weight:750}

/* ===== v1.35 two-sided marketplace ===== */
.workspace-bar{display:flex;justify-content:space-between;gap:24px;align-items:center}.workspace-switch label{display:grid;gap:7px;color:var(--muted);font-size:.78rem;font-weight:800}.workspace-switch select{min-width:300px;border:1px solid var(--line);background:#fff;border-radius:11px;padding:10px 12px;color:var(--ink);font-weight:750}.workspace-tabs{display:flex;gap:8px;overflow:auto;padding-bottom:3px}.workspace-tabs button{border:1px solid var(--line);background:#fff;color:#4b5c70;border-radius:999px;padding:9px 14px;font-weight:800;white-space:nowrap}.workspace-tabs button.active,.workspace-tabs button:hover{border-color:#9fc0e8;background:var(--brand-soft);color:var(--brand)}
.pipeline-strip{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--line);border-radius:15px;overflow:hidden}.pipeline-strip>div{padding:13px 14px;background:#f9fbfd;border-right:1px solid var(--line)}.pipeline-strip>div:last-child{border-right:0}.pipeline-strip small{display:block;color:var(--muted);font-size:.7rem}.pipeline-strip b{font-size:1.3rem}.workspace-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--line);background:#fff;border-radius:13px;padding:12px 13px}.workspace-row:hover{border-color:#a9c6e8;box-shadow:var(--shadow-sm)}.workspace-row-icon{width:38px;height:38px;border-radius:11px;background:var(--brand-soft);display:grid;place-items:center;color:var(--brand);font-weight:900}.workspace-row span:nth-child(2){display:grid}.workspace-row small{color:var(--muted);margin-top:2px}.big-number{display:block;font-size:2rem;color:var(--brand);margin:8px 0}.big-number.small{font-size:1.3rem}.small-lead{font-size:1rem}.empty-inline{border:1px dashed #cbd8e6;background:#f9fbfd;border-radius:13px;padding:18px;color:var(--muted);text-align:center}.lead-table,.job-board,.quote-review-grid{display:grid;gap:13px}.lead-card,.job-card,.quote-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;justify-content:space-between;gap:18px;align-items:center}.lead-main,.job-main{min-width:0;flex:1}.lead-card h3,.job-card h3,.quote-card h3{margin:10px 0 5px}.lead-card p{margin:5px 0 10px}.job-card{justify-content:flex-start}.job-date{width:58px;height:64px;border-radius:14px;background:var(--brand-soft);display:grid;place-items:center;align-content:center;color:var(--brand);flex:0 0 auto}.job-date b{font-size:1.45rem;line-height:1}.job-date small{font-size:.68rem;text-transform:uppercase;margin-top:4px}.job-card .provider-actions{margin-left:auto}.quote-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-card{display:block}.quote-total{font-size:2rem;font-weight:900;letter-spacing:-.04em;color:var(--ink);margin:8px 0}.quote-total.large{font-size:2.5rem;white-space:nowrap}.quote-breakdown{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.quote-breakdown span{display:grid;gap:2px;background:var(--surface-2);border-radius:10px;padding:9px;color:var(--muted);font-size:.72rem}.quote-breakdown b{color:var(--ink);font-size:.86rem}.quote-breakdown.large{grid-template-columns:repeat(3,1fr)}.quote-breakdown.large span{padding:13px}.property-kpis{display:grid;grid-template-columns:1fr 1fr;gap:8px}.property-kpis span{background:var(--surface-2);border-radius:10px;padding:9px;display:grid}.property-kpis small{color:var(--muted);font-size:.68rem}.certificate-row{display:flex;justify-content:space-between;gap:14px;align-items:center;border-bottom:1px solid var(--line);padding:13px 0}.certificate-row:last-child{border-bottom:0}.certificate-row>div:first-child{display:grid}.certificate-row small{color:var(--muted);margin-top:3px}.table-shell{overflow:auto;border:1px solid var(--line);border-radius:14px}.data-table{width:100%;border-collapse:collapse;min-width:720px}.data-table th,.data-table td{padding:13px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.data-table th{background:#f7f9fc;color:var(--muted);font-size:.74rem;text-transform:uppercase}.data-table tr:last-child td{border-bottom:0}.data-table td small{display:block;color:var(--muted);margin-top:3px}
.detail-breadcrumb a{color:var(--brand);font-weight:800}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start}.detail-layout aside{position:sticky;top:94px}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.record-id{background:var(--surface-2);padding:12px;border-radius:12px;display:grid;min-width:150px}.record-id small{color:var(--muted)}.record-id b{font-size:.78rem;overflow-wrap:anywhere}.mini-timeline{display:grid;gap:13px}.mini-timeline>div{display:flex;gap:11px;align-items:flex-start}.mini-timeline i{width:9px;height:9px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 5px var(--brand-soft);margin:7px 3px 0}.mini-timeline span{display:grid}.mini-timeline small{color:var(--muted)}.checklist-static{display:grid;gap:9px}.checklist-static span{border-bottom:1px solid var(--line);padding:8px 0;color:#3d4d61}.checklist-static span:last-child{border-bottom:0}.job-status-track{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.job-status-track>div{position:relative;display:grid;place-items:center;gap:7px;color:var(--muted);font-size:.75rem;font-weight:800;text-align:center}.job-status-track>div:before{content:"";position:absolute;top:15px;left:-50%;right:50%;height:3px;background:var(--line);z-index:0}.job-status-track>div:first-child:before{display:none}.job-status-track i{width:30px;height:30px;border-radius:50%;background:var(--surface-2);display:grid;place-items:center;font-style:normal;position:relative;z-index:1}.job-status-track .done i{background:var(--brand);color:#fff}.job-status-track .done:before{background:var(--brand)}.flow-chain{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:9px;align-items:center}.flow-chain>a,.flow-chain>div{border:1px solid var(--line);border-radius:13px;padding:12px;display:grid;gap:2px;min-height:90px}.flow-chain>a:hover{border-color:#a9c6e8}.flow-chain .active{background:var(--brand-soft);border-color:#a7c6eb}.flow-chain span{width:24px;height:24px;border-radius:50%;background:var(--surface-2);display:grid;place-items:center;font-size:.68rem;font-weight:900}.flow-chain .active span{background:var(--brand);color:#fff}.flow-chain small{color:var(--muted)}.flow-chain>i{font-style:normal;color:#91a2b6}.check-line{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:9px!important}.check-line input{width:auto!important}
@media(max-width:980px){.workspace-bar{align-items:flex-start;flex-direction:column}.workspace-switch,.workspace-switch label,.workspace-switch select{width:100%;min-width:0}.pipeline-strip{grid-template-columns:repeat(3,1fr)}.pipeline-strip>div:nth-child(3){border-right:0}.quote-review-grid{grid-template-columns:1fr}.detail-layout{grid-template-columns:1fr}.detail-layout aside{position:static}.detail-grid{grid-template-columns:repeat(2,1fr)}.flow-chain{grid-template-columns:1fr}.flow-chain>i{transform:rotate(90deg);justify-self:center}.quote-breakdown.large{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.pipeline-strip{grid-template-columns:repeat(2,1fr)}.pipeline-strip>div{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.lead-card,.job-card{align-items:flex-start;flex-direction:column}.lead-card .provider-actions,.job-card .provider-actions{width:100%;margin-left:0}.lead-card .provider-actions>* ,.job-card .provider-actions>*{flex:1}.workspace-row{grid-template-columns:38px minmax(0,1fr)}.workspace-row>:last-child{grid-column:2}.detail-grid,.quote-breakdown,.quote-breakdown.large{grid-template-columns:1fr 1fr}.report-toolbar{align-items:flex-start}.quote-total.large{font-size:2rem}.certificate-row{align-items:flex-start;flex-direction:column}}
/* v1.36 local-first account / data tools */
.metric-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.metric{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;padding:13px}.metric small{display:block;color:var(--muted);font-size:.75rem}.metric b{display:block;font-size:1.1rem;margin-top:5px}.permission-preview{display:flex;gap:8px;flex-wrap:wrap}.data-map{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.data-map span{background:var(--surface-2);border:1px solid var(--line);padding:9px 11px;border-radius:10px;font-weight:700;font-size:.82rem}.data-map i{font-style:normal;color:var(--muted)}.divider-label{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.78rem;font-weight:700}.divider-label:before,.divider-label:after{content:"";height:1px;background:var(--line);flex:1}.form-shell select{width:100%}
@media(max-width:980px){.metric-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:620px){.metric-grid{grid-template-columns:repeat(2,1fr)}}

/* ===== v1.36 shop desktop width fix ===== */
body[data-page="shop"] #shopApp{width:100%;max-width:100%;min-width:0;overflow:visible}
body[data-page="shop"] .shop-layout{
  width:100%;
  max-width:100%;
  min-width:0;
  grid-template-columns:minmax(0,1fr) minmax(280px,320px);
  align-items:start;
}
body[data-page="shop"] .shop-layout>div,
body[data-page="shop"] .shop-sidebar,
body[data-page="shop"] .form-shell,
body[data-page="shop"] .problem-selector,
body[data-page="shop"] .product-grid,
body[data-page="shop"] .product-card{min-width:0;max-width:100%}
body[data-page="shop"] .shop-sidebar{width:100%;max-width:320px;justify-self:end}
body[data-page="shop"] .field-inline{min-width:0;max-width:100%}
body[data-page="shop"] .field-inline .search-input{min-width:0;width:auto;flex:1 1 0}
body[data-page="shop"] .problem-selector{width:100%;overflow-x:auto;overflow-y:hidden}
body[data-page="shop"] .product-card h3,
body[data-page="shop"] .product-card p,
body[data-page="shop"] .cart-row b,
body[data-page="shop"] .cart-row small{overflow-wrap:anywhere;word-break:break-word}
@media(max-width:980px){
  body[data-page="shop"] .shop-layout{grid-template-columns:1fr}
  body[data-page="shop"] .shop-sidebar{max-width:none;justify-self:stretch;position:static}
}

/* ===== v1.36.2 shop hard width containment ===== */
body[data-page="shop"] .section.tight>.container{overflow:hidden}
body[data-page="shop"] .shop-main{min-width:0;width:100%;max-width:100%;overflow:hidden}
body[data-page="shop"] .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
body[data-page="shop"] .shop-sidebar{width:280px;max-width:280px}
@media(max-width:1180px){body[data-page="shop"] .shop-layout{grid-template-columns:minmax(0,1fr)}body[data-page="shop"] .shop-sidebar{position:static;width:100%;max-width:none;justify-self:stretch}}

/* v1.36.3 — interactive Eircode report inside the homepage hero */
.home-quick-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;background:var(--surface-2);padding:8px;border-radius:14px;min-width:0}.home-quick-search input{min-width:0;width:100%;border:1px solid transparent;background:#fff;border-radius:10px;padding:11px 13px;font:inherit;font-weight:750;color:var(--ink);outline:none}.home-quick-search input:focus{border-color:#9fc6f5;box-shadow:0 0 0 3px rgba(17,103,216,.10)}.home-quick-search button{border:0;background:var(--brand);color:#fff;border-radius:10px;padding:11px 16px;font:inherit;font-weight:850;cursor:pointer;white-space:nowrap}.home-quick-search button:hover{filter:brightness(.97)}.home-quick-search button:disabled{opacity:.7;cursor:wait}.home-report-preview{min-height:150px}.home-report-compact{margin-top:13px;animation:homeReportIn .22s ease-out}.home-report-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:2px 2px 11px}.home-report-heading>div{display:grid;gap:4px;min-width:0}.home-report-heading b{font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-report-heading a{font-size:.76rem;font-weight:850;color:var(--brand);white-space:nowrap}.home-report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:11px}.home-report-tile{min-width:0;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff;display:grid;gap:3px}.home-report-tile small{font-size:.7rem;color:var(--muted);line-height:1.25}.home-report-tile strong{font-size:1.02rem;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-report-tile strong small{display:inline;font-size:.62rem;margin-left:2px}.home-report-tile span{font-size:.64rem;color:#8390a0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-report-loading,.home-report-error{min-height:150px;margin-top:12px;border:1px dashed #cbd9e8;border-radius:14px;background:#f9fbfd;display:flex;align-items:center;justify-content:center;gap:9px;padding:20px;text-align:center;color:var(--muted)}.home-report-loading i{width:16px;height:16px;border-radius:50%;border:2px solid #cbd9e8;border-top-color:var(--brand);animation:homeSpin .8s linear infinite}.home-report-error{display:grid;gap:5px}.home-report-error small{color:var(--muted)}@keyframes homeSpin{to{transform:rotate(360deg)}}@keyframes homeReportIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media(max-width:900px){.home-report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.home-quick-search{grid-template-columns:1fr}.home-quick-search button{width:100%}.home-report-grid{grid-template-columns:1fr 1fr}.home-report-heading{align-items:flex-start;flex-direction:column}.home-report-loading,.home-report-error{min-height:120px}}

/* v1.36 homepage quick-search report polish */
.home-full-report{margin-top:12px;border-top:1px solid var(--line);padding-top:12px;animation:homeReportIn .22s ease-out;min-width:0}
.home-full-report-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px;min-width:0}
.home-full-report-head>div{min-width:0}.home-full-report-head h4{margin:4px 0 0;font-size:1.02rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-report-tabs{margin:0 0 10px;padding-bottom:8px;gap:4px;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.home-report-tabs::-webkit-scrollbar{display:none}.home-report-tabs .report-tab{padding:7px 9px;font-size:.72rem;white-space:nowrap;flex:0 0 auto}
.home-report-body{max-height:365px;overflow:auto;padding:1px 3px 4px 1px;scrollbar-width:thin;min-width:0}
.home-report-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.home-report-info-grid .info-tile{padding:11px;border-radius:12px;min-width:0}.home-report-info-grid .info-tile span,.home-report-info-grid .info-tile small{font-size:.67rem}.home-report-info-grid .info-tile strong{font-size:1.05rem;line-height:1.15;overflow-wrap:anywhere}.home-report-info-grid .progress-bar{height:7px}
.home-report-note{display:grid;gap:3px;margin-top:10px;padding:10px 11px;border-radius:11px;background:var(--surface-2);font-size:.72rem;color:var(--muted)}.home-report-note b{color:var(--ink);font-size:.76rem}
.home-report-table-wrap{overflow:auto;width:100%}.home-report-table{min-width:620px}.home-report-table th,.home-report-table td{padding:8px 7px;font-size:.72rem}.home-report-table th{font-size:.64rem}
.home-report-market{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(120px,.55fr);gap:10px;align-items:start}.home-report-market h4,.home-report-body>div>h4{margin:2px 0 8px}.home-report-price-chart{height:170px;gap:7px;padding:12px 4px 4px}.home-report-price-chart .price-bar b{font-size:.65rem}.home-report-price-chart .price-bar small{font-size:.62rem}.home-report-side-stats{display:grid;gap:8px}.home-report-side-stats .info-tile{padding:10px;border-radius:12px}.home-report-side-stats .info-tile strong{font-size:1rem}.home-report-side-stats .info-tile span,.home-report-side-stats .info-tile small{font-size:.65rem}
.home-report-crime .crime-row{grid-template-columns:105px minmax(100px,1fr) 50px;gap:8px;font-size:.7rem}.home-report-sources .source-detail{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:9px 0}.home-report-sources .source-detail small{display:block;margin-top:2px;font-size:.66rem}.home-report-sources .tag{font-size:.63rem}.home-report-empty{padding:22px 12px}
@media(max-width:980px){.home-report-body{max-height:none}.home-report-market{grid-template-columns:1fr}.home-report-side-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.home-full-report-head{display:block}.home-full-report-head>.tag{margin-top:7px}.home-report-info-grid{grid-template-columns:1fr 1fr}.home-report-body{max-height:none}.home-report-crime .crime-row{grid-template-columns:88px minmax(80px,1fr) 44px}.home-report-side-stats{grid-template-columns:1fr}}

/* v1.36 homepage Eircode search: preserve the original hero card visual */
.home-search-form{align-items:stretch}
.home-search-form input{min-width:0;flex:1;width:100%;border:0;outline:0;background:#fff;border-radius:9px;padding:10px 12px;font:inherit;font-weight:800;color:#44556a;box-shadow:none}
.home-search-form input::placeholder{color:#7b8998;font-weight:700;opacity:1}
.home-search-form button{border:0;outline:0;background:var(--brand);color:#fff;border-radius:9px;padding:10px 16px;font:inherit;font-weight:800;cursor:pointer;white-space:nowrap;box-shadow:0 7px 18px rgba(17,103,216,.16);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}
.home-search-form button:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(17,103,216,.22)}
.home-search-form button:focus-visible,.home-search-form input:focus-visible{box-shadow:0 0 0 3px rgba(17,103,216,.16)}
@media(max-width:450px){.home-search-form{display:grid;grid-template-columns:minmax(0,1fr) auto}.home-search-form button{padding-inline:12px}}

/* ===== v1.37 platform experience loop ===== */
.nav-icon-btn{position:relative;width:38px;height:38px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#33445b;display:grid;place-items:center;font-weight:900;font-size:1.08rem;line-height:1}.nav-icon-btn:hover{border-color:#aec8e7;color:var(--brand);box-shadow:var(--shadow-sm)}.notification-trigger{font-size:1rem}.notification-badge{position:absolute;right:-5px;top:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--red);color:#fff;border:2px solid var(--bg);font-size:.62rem;font-weight:900;display:none;place-items:center}.notification-badge.show{display:grid}.global-search-box{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;border:1px solid #bcd0e7;background:#f8fbff;border-radius:15px;padding:9px 12px;box-shadow:0 0 0 4px rgba(17,103,216,.05)}.global-search-box span{font-size:1.25rem;color:var(--brand);font-weight:900}.global-search-box input{width:100%;min-width:0;border:0;background:transparent;padding:8px 2px;font:inherit;font-weight:700;color:var(--ink);outline:0}.search-suggestions{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.search-suggestions button{border:1px solid var(--line);background:#fff;color:#4b5d72;border-radius:999px;padding:7px 10px;font-size:.76rem;font-weight:800}.search-suggestions button:hover{border-color:#9dbde0;color:var(--brand)}.global-search-results{display:grid;gap:7px;margin-top:16px;max-height:56vh;overflow:auto;padding-right:3px}.global-search-result{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;border:1px solid transparent;border-radius:13px;padding:11px 12px;background:#f8fafc}.global-search-result:hover{background:#fff;border-color:#bdd3ec;box-shadow:var(--shadow-sm)}.global-search-result>span:nth-child(2){min-width:0;display:grid;gap:2px}.global-search-result b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.global-search-result small{color:var(--muted);font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.global-search-result i{font-style:normal;color:var(--brand);font-weight:900}.search-type{background:var(--brand-soft);color:var(--brand);border-radius:8px;padding:5px 7px;font-size:.65rem;font-weight:900;min-width:46px;text-align:center}.search-empty{padding:28px 18px;text-align:center;border:1px dashed var(--line);border-radius:14px;color:var(--muted)}.search-empty b{display:block;color:var(--ink);margin-bottom:5px}.notification-list{display:grid;gap:7px;max-height:58vh;overflow:auto}.notification-item{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:10px;align-items:start;padding:12px;border-radius:13px;border:1px solid transparent;background:#f8fafc}.notification-item:hover{background:#fff;border-color:#c4d8ee}.notification-item.unread{background:#eef5ff}.notification-item.priority{border-left:3px solid var(--amber)}.notification-dot{width:7px;height:7px;border-radius:50%;background:#bac6d3;margin-top:7px}.notification-item.unread .notification-dot{background:var(--brand);box-shadow:0 0 0 4px var(--brand-soft)}.notification-item>span:nth-child(2){display:grid;gap:2px;min-width:0}.notification-item small{color:var(--muted);font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-item em{font-style:normal;color:#8a98aa;font-size:.67rem}.notification-item i{font-style:normal;color:var(--brand);margin-top:4px}.onboarding-head{text-align:center}.onboarding-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.onboarding-grid button{border:1px solid var(--line);background:#fff;border-radius:16px;padding:18px;text-align:left;display:grid;grid-template-columns:42px minmax(0,1fr);grid-template-rows:auto auto;gap:3px 12px;color:var(--ink)}.onboarding-grid button:hover{border-color:#9fc0e5;background:#f8fbff;box-shadow:var(--shadow-sm)}.onboarding-grid button>span{grid-row:1/3;width:42px;height:42px;border-radius:13px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;font-size:1.1rem;font-weight:900}.onboarding-grid b{font-size:.92rem}.onboarding-grid small{color:var(--muted);font-size:.75rem}.onboarding-skip{display:block;margin:15px auto 0}.onboarding-path{display:grid;gap:10px}.onboarding-path>div{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;padding:12px;background:var(--surface-2);border-radius:12px}.onboarding-path i{width:34px;height:34px;border-radius:50%;background:#fff;color:var(--brand);font-style:normal;font-weight:900;display:grid;place-items:center}

.job-diary{display:grid;gap:12px}.diary-entry{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;position:relative}.diary-entry:not(:last-child):after{content:"";position:absolute;left:20px;top:42px;bottom:-12px;width:1px;background:var(--line)}.diary-icon{width:42px;height:42px;border-radius:13px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;font-weight:900;z-index:1}.diary-body{border:1px solid var(--line);border-radius:13px;background:#fff;padding:12px 14px;min-width:0}.diary-head{display:flex;gap:8px;align-items:center;justify-content:space-between}.diary-head small{color:var(--muted)}.diary-body p{margin:7px 0 0;color:#44566d}.diary-attachments{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.diary-attachments button,.diary-attachments span{border:1px solid var(--line);background:var(--surface-2);border-radius:9px;padding:5px 8px;font-size:.7rem;color:#44566d}.trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.trust-tile{border:1px solid var(--line);border-radius:13px;padding:13px;background:#fff}.trust-tile small{display:block;color:var(--muted);font-size:.7rem}.trust-tile b{display:block;margin-top:4px;font-size:.9rem}.trust-stage{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:.72rem;font-weight:900;background:var(--brand-soft);color:var(--brand)}.verified-review{border-left:3px solid var(--green);padding:10px 12px;background:#f7fbf9;border-radius:10px}.verified-review small{color:var(--muted)}.review-score-row{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:10px;align-items:center}.review-score-row input[type="range"]{width:100%}.review-score-row output{font-weight:900;color:var(--brand)}

.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.calendar-month-switch{display:flex;align-items:center;gap:8px}.calendar-month-switch button{width:36px;height:36px;border:1px solid var(--line);background:#fff;border-radius:10px;font-weight:900}.calendar-month-switch b{min-width:150px;text-align:center}.maintenance-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden}.calendar-weekday{background:var(--surface-2);padding:9px 6px;text-align:center;font-size:.68rem;font-weight:900;color:var(--muted)}.calendar-day{background:#fff;min-height:112px;padding:8px;min-width:0}.calendar-day.outside{background:#f8fafc;color:#a7b2c0}.calendar-day.today{box-shadow:inset 0 0 0 2px var(--brand)}.calendar-day-number{font-size:.73rem;font-weight:900;margin-bottom:5px}.calendar-events{display:grid;gap:4px}.calendar-event{display:block;border:0;border-radius:7px;background:var(--brand-soft);color:#24548a;padding:5px 6px;font-size:.62rem;font-weight:800;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-event.done{opacity:.5;text-decoration:line-through}.calendar-event.warranty{background:var(--amber-soft);color:#77520d}.calendar-event.document{background:var(--green-soft);color:#176d52}.calendar-agenda{display:grid;gap:7px}.calendar-agenda-row{display:grid;grid-template-columns:82px minmax(0,1fr) auto;gap:10px;align-items:center;border-bottom:1px solid var(--line);padding:9px 0}.calendar-agenda-row:last-child{border-bottom:0}.calendar-agenda-row small{color:var(--muted)}

@media(max-width:1080px){.nav-icon-btn{width:36px;height:36px}.trust-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.onboarding-grid{grid-template-columns:1fr}.maintenance-calendar{grid-template-columns:repeat(7,minmax(62px,1fr));min-width:620px}.calendar-scroll{overflow:auto}.calendar-day{min-height:95px}.global-search-result small{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.nav-icon-btn{flex:0 0 auto}.main-nav{overflow-x:auto;scrollbar-width:none}.main-nav::-webkit-scrollbar{display:none}}
@media(max-width:520px){.trust-grid{grid-template-columns:1fr 1fr}.calendar-agenda-row{grid-template-columns:72px minmax(0,1fr)}.calendar-agenda-row>:last-child{grid-column:2}.global-search-result{grid-template-columns:auto minmax(0,1fr)}.global-search-result>i{display:none}}
.nav-icon-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
/* v1.38 Active Home Management */
.alert-grid-v138{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.home-alert-v138{border:1px solid var(--border);background:#fff;border-radius:16px;padding:14px;text-align:left;display:grid;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;gap:12px;cursor:pointer;color:var(--text)}.home-alert-v138>span{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;font-weight:900;background:#eef5ff;color:var(--blue)}.home-alert-v138.high>span{background:#fff0f0;color:#bb1e2d}.home-alert-v138.medium>span{background:#fff7df;color:#9b6900}.home-alert-v138 b,.home-alert-v138 small{display:block}.home-alert-v138 small{color:var(--muted);margin-top:4px}.home-alert-v138 i{font-style:normal}.proactive-card{border-color:#d8e8fb}.protection-list{display:grid;gap:10px}.protection-row{border:1px solid var(--border);border-radius:14px;padding:14px;display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.protection-row b,.protection-row small{display:block}.protection-row small{margin-top:5px;color:var(--muted)}.protection-row p{margin:7px 0 0;color:var(--muted);font-size:.9rem}.budget-grid-v138{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;align-items:end}.budget-grid-v138 label{display:grid;gap:7px;font-weight:700}.budget-grid-v138 label small{color:var(--muted);font-weight:500}.budget-grid-v138 input{width:100%;min-width:0}.budget-save-v138{grid-column:span 5;display:flex;justify-content:flex-end}.reno-total-v138{border:1px solid #cfe0f5;background:#f5f9ff;border-radius:14px;padding:14px}.reno-total-v138 strong{font-size:1.25rem;margin-left:6px}.decision-result-v138{border:1px solid var(--border);background:#f8fafc;border-radius:16px;padding:16px;min-height:130px}.decision-result-v138 ul{margin:14px 0 0;padding-left:20px;color:var(--muted)}.decision-metrics-v138{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.decision-metrics-v138>div{border-radius:12px;background:#fff;border:1px solid var(--border);padding:12px}.decision-metrics-v138 small,.decision-metrics-v138 b{display:block}.decision-metrics-v138 b{font-size:1.25rem;margin-top:4px}@media(max-width:1100px){.budget-grid-v138{grid-template-columns:repeat(3,minmax(0,1fr))}.budget-save-v138{grid-column:span 3}}@media(max-width:760px){.alert-grid-v138{grid-template-columns:1fr}.protection-row{flex-direction:column}.budget-grid-v138{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-save-v138{grid-column:span 2}}@media(max-width:480px){.budget-grid-v138{grid-template-columns:1fr}.budget-save-v138{grid-column:span 1}.decision-metrics-v138{grid-template-columns:1fr}}
