:root{--ink:#17211d;--muted:#65716b;--paper:#f4f1e9;--white:#fffdf8;--green:#184d3a;--lime:#c9ef75;--line:#d9ddd6;--orange:#e66a3c;--shadow:0 20px 60px rgba(23,33,29,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;line-height:1.55}a{color:inherit}.shell{width:min(1160px,calc(100% - 40px));margin-inline:auto}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:16px;top:16px;background:#fff;padding:12px;z-index:10}.site-header{height:84px;width:min(1160px,calc(100% - 40px));margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(23,33,29,.14)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font:800 20px Manrope}.brand-mark{display:grid;place-items:center;width:35px;height:35px;background:var(--green);color:var(--lime);border-radius:50%}.site-header nav{display:flex;gap:30px}.site-header nav a{text-decoration:none;color:var(--muted);font-weight:600}.site-header nav a:hover,.site-header nav a[aria-current=page]{color:var(--ink)}.hero{padding:110px 0 95px}.eyebrow,.section-kicker{font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--green)}.eyebrow{display:flex;align-items:center;gap:10px}.eyebrow span{width:28px;height:2px;background:var(--orange)}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.05;margin-top:0}.hero h1,.page-intro h1{font-size:clamp(54px,8vw,104px);letter-spacing:-.06em;margin:25px 0 30px;max-width:1050px}.hero h1 em,.page-intro h1 em{font-style:normal;color:var(--green)}.hero-copy{font-size:20px;max-width:660px;color:var(--muted)}.hero-actions{display:flex;gap:12px;margin:36px 0}.button{display:inline-flex;align-items:center;gap:20px;padding:15px 22px;border:1px solid var(--ink);text-decoration:none;font-weight:700}.button.primary{background:var(--ink);color:#fff}.button.primary:hover{background:var(--green)}.button.secondary:hover{background:var(--white)}.trust-row{display:flex;gap:30px;color:var(--muted);font-size:14px;margin-top:52px}.reality-band{background:var(--green);color:white;padding:78px 0}.split-heading{display:grid;grid-template-columns:1fr 2fr;gap:50px}.reality-band .section-kicker{color:var(--lime)}.split-heading h2,.section-heading h2{font-size:clamp(38px,5vw,64px);letter-spacing:-.045em;margin-bottom:18px}.split-heading p:last-child{color:#d3dfd8;font-size:18px;max-width:650px}.feature-section{padding:100px 0}.section-heading{margin-bottom:45px}.featured-tool{background:var(--white);border:1px solid var(--line);padding:45px;display:grid;grid-template-columns:70px 1fr 310px;gap:35px;align-items:center;box-shadow:var(--shadow)}.tool-number{font:800 52px Manrope;color:#ccd3ce;align-self:start}.tag{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:var(--green)}.featured-tool h3{font-size:35px;margin:8px 0 14px}.featured-tool p{color:var(--muted);max-width:570px}.text-link{font-weight:800;text-decoration:none;border-bottom:1px solid;margin-top:12px;display:inline-block}.mini-result{background:var(--ink);color:white;padding:28px}.mini-result p{font-size:10px;letter-spacing:.12em;color:#aebbb5}.mini-result strong{font:800 48px Manrope;display:block;color:var(--lime)}.mini-result span{font-size:13px;color:#b9c2bd}.mini-meter{height:5px;background:#39443f;margin-top:23px}.mini-meter i{display:block;width:72%;height:100%;background:var(--lime)}.principles{border-top:1px solid var(--line);padding:70px 0 110px;display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.principles b{color:var(--orange)}.principles h3{margin:18px 0 10px}.principles p{color:var(--muted)}footer{background:var(--ink);color:white;padding:55px max(20px,calc((100% - 1160px)/2))}.footer-brand{width:max-content}.footer-brand .brand-mark{background:var(--lime);color:var(--green)}footer p{color:#aeb8b3}.fine-print{font-size:12px}.page-intro{padding:90px 0 55px}.page-intro h1{font-size:clamp(52px,7vw,86px);margin-bottom:20px}.page-intro>p:last-child{font-size:19px;color:var(--muted)}.tools-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding-bottom:110px}.tool-card{min-height:360px;padding:30px;border:1px solid var(--line);background:rgba(255,255,255,.42);display:flex;flex-direction:column;text-decoration:none}.tool-card.available{background:var(--white);box-shadow:var(--shadow)}.tool-card.available:hover{transform:translateY(-4px);transition:.2s}.tool-index{font:800 38px Manrope;color:#c9cfcb}.tool-card .tag{margin:30px 0 18px}.tool-card h2{font-size:28px}.tool-card p{color:var(--muted)}.card-action{margin-top:auto;font-weight:800}.coming{opacity:.68}.calculator-hero{padding:65px 0 42px}.back-link{text-decoration:none;color:var(--muted);font-weight:700;display:inline-block;margin-bottom:35px}.calculator-hero h1{font-size:clamp(46px,6vw,76px);letter-spacing:-.05em;margin:12px 0}.calculator-hero>p:last-child{font-size:18px;color:var(--muted)}.calculator-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:26px;align-items:start;padding-bottom:100px}.calculator-form{background:var(--white);border:1px solid var(--line);padding:34px}.calculator-form fieldset{border:0;padding:0 0 35px;margin:0 0 32px;border-bottom:1px solid var(--line)}.calculator-form fieldset:last-of-type{margin-bottom:18px}.calculator-form legend{font:800 22px Manrope;margin-bottom:24px}.calculator-form legend span{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--green);color:var(--lime);font-size:13px;margin-right:10px}.field-help{margin:-14px 0 22px;color:var(--muted);font-size:14px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid label{font-size:13px;font-weight:700;color:#46514c}.input-wrap{display:flex;margin-top:8px;background:#f6f5f0;border:1px solid #d8dcd6;align-items:center}.input-wrap:focus-within{border-color:var(--green);box-shadow:0 0 0 3px rgba(24,77,58,.12)}.input-wrap input{width:100%;border:0;background:transparent;padding:13px 12px;font:700 16px "DM Sans";outline:0;color:var(--ink)}.prefix:before{content:"$";padding-left:13px;color:var(--muted)}.suffix:after{content:"min";padding-right:12px;color:var(--muted);font-weight:500}.suffix.miles:after{content:"mil"}.suffix.mpg:after{content:"mpg"}.toggle-label{display:flex;align-items:center;justify-content:space-between;align-self:end;height:49px}.toggle input{position:absolute;opacity:0}.toggle i{display:block;width:48px;height:26px;background:#cbd1cd;border-radius:20px;position:relative;cursor:pointer}.toggle i:after{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;background:white;border-radius:50%;transition:.2s}.toggle input:checked+i{background:var(--green)}.toggle input:checked+i:after{transform:translateX(22px)}.reset-button{border:0;background:none;text-decoration:underline;color:var(--muted);cursor:pointer;padding:6px 0}.results{background:var(--ink);color:white;position:sticky;top:20px}.verdict{padding:17px 25px;background:#755728;display:flex;justify-content:space-between;align-items:center}.verdict[data-state=good]{background:var(--green)}.verdict[data-state=bad]{background:#8a352d}.verdict span{font-weight:800}.verdict small{color:rgba(255,255,255,.75)}.primary-result{padding:34px 30px;border-bottom:1px solid #3c4642}.primary-result p{margin:0;color:#b1bcb7;font-size:13px}.primary-result strong{display:block;font:800 clamp(50px,6vw,76px) Manrope;color:var(--lime);letter-spacing:-.06em}.primary-result span{color:#aeb8b3;font-size:13px}.result-grid{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #3c4642}.result-grid div{padding:22px 25px;border-right:1px solid #3c4642;border-bottom:1px solid #3c4642}.result-grid div:nth-child(even){border-right:0}.result-grid span{display:block;color:#aeb8b3;font-size:12px}.result-grid strong{font:700 23px Manrope}.cost-breakdown{padding:26px 30px}.cost-breakdown h2{font-size:17px}.cost-breakdown dl{margin:0}.cost-breakdown dl div{display:flex;justify-content:space-between;padding:8px 0;color:#bcc6c1}.cost-breakdown dd{margin:0;color:white}.result-note{margin:0;padding:0 30px 28px;color:#929f99;font-size:12px}
@media(max-width:850px){.featured-tool{grid-template-columns:55px 1fr}.mini-result{grid-column:1/-1}.principles,.tools-grid{grid-template-columns:1fr}.calculator-layout{grid-template-columns:1fr}.results{position:static}.split-heading{grid-template-columns:1fr}.tools-grid{gap:12px}.tool-card{min-height:280px}}
@media(max-width:560px){.site-header{height:70px}.site-header nav{gap:18px}.hero{padding:70px 0}.hero h1{font-size:49px}.hero-actions,.trust-row{flex-direction:column;align-items:stretch}.trust-row{gap:8px}.button{justify-content:center}.featured-tool{padding:25px;grid-template-columns:1fr}.tool-number{font-size:35px}.mini-result{grid-column:auto}.principles{gap:25px}.form-grid{grid-template-columns:1fr}.calculator-form{padding:22px}.verdict{align-items:flex-start;gap:5px;flex-direction:column}.calculator-hero{padding-top:42px}}

/* Account, community, and expanded tool surfaces */
.site-header{height:auto;min-height:84px;padding:18px 0}.site-header nav{align-items:center;flex-wrap:wrap;justify-content:flex-end}.nav-form{margin:0}.nav-form button{border:0;background:none;color:var(--muted);font:600 14px "DM Sans";cursor:pointer;padding:0}.nav-join{background:var(--ink);color:white!important;padding:9px 14px}.messages{width:min(1160px,calc(100% - 40px));margin:16px auto}.message{padding:12px 16px;background:var(--lime);color:var(--green);font-weight:700}.tools-grid.expanded{grid-template-columns:repeat(3,1fr)}.tool-card.plus{background:var(--green);color:white}.tool-card.plus p{color:#cedbd4}.tool-card.plus .tag{color:var(--lime)}.tool-card.plus .tool-index{color:#5f806f}.django-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:28px}.django-form-grid label,.stack-form label{font-size:13px;font-weight:700;color:#46514c}.form-control,.stack-form input,.stack-form select,.stack-form textarea{display:block;width:100%;border:1px solid #d8dcd6;background:#f6f5f0;padding:13px 12px;font:600 15px "DM Sans";color:var(--ink);margin-top:7px}.stack-form input[type=checkbox],.stack-form input[type=radio]{display:inline;width:auto;margin-right:8px}.form-control:focus,.stack-form input:focus,.stack-form select:focus,.stack-form textarea:focus{outline:0;border-color:var(--green);box-shadow:0 0 0 3px rgba(24,77,58,.12)}.django-form-grid small,.stack-form .helptext{display:block;color:var(--muted);font-weight:400;margin-top:4px}.errorlist{color:#a63d31;margin:5px 0;padding-left:18px}.data-note{font-size:12px;color:var(--muted);margin-top:22px}.result-list{padding:16px 28px}.result-list div{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid #3c4642}.result-list span{color:#aeb8b3}.empty-result{padding:50px 32px;min-height:340px}.empty-result .section-kicker{color:var(--lime)}.narrow-page{max-width:760px;padding:75px 0 110px}.narrow-page h1{font-size:clamp(45px,7vw,72px);letter-spacing:-.05em}.stack-form{background:var(--white);border:1px solid var(--line);padding:34px;box-shadow:var(--shadow)}.stack-form p{margin:0 0 20px}.lead{color:var(--muted);font-size:18px}.account-status{display:flex;gap:12px;margin:20px 0}.account-status>*{background:var(--lime);padding:5px 11px}.compact{padding:65px 0 38px}.compact h1{font-size:clamp(43px,6vw,70px);margin:10px 0 16px}.dashboard-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px;padding-bottom:100px}.dashboard-card{background:var(--white);border:1px solid var(--line);padding:30px}.dashboard-card:last-child{grid-column:1/-1}.dashboard-card.dark{background:var(--ink);color:white}.dashboard-card.dark .tag{color:var(--lime)}.dashboard-card.dark a{display:block;color:white;padding:11px 0;border-bottom:1px solid #3d4943;text-decoration:none}.activity-row{padding:15px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px}.activity-row span{color:var(--muted)}.table-wrap{overflow:auto;padding-bottom:100px}table{width:100%;border-collapse:collapse;background:var(--white)}th,td{text-align:left;padding:15px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.metric-strip{display:flex;gap:12px;margin:30px 0}.metric-strip div{background:var(--white);border:1px solid var(--line);padding:18px 25px;min-width:170px}.metric-strip span,.report-grid span{display:block;color:var(--muted);font-size:12px}.metric-strip strong,.report-grid strong{font:800 26px Manrope}.two-column{display:grid;grid-template-columns:.8fr 1.2fr;gap:20px;padding-bottom:100px}.report-page{padding:80px 0 110px}.report-page h1{font-size:clamp(42px,6vw,70px)}.report-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:40px 0}.report-grid div{background:var(--white);border:1px solid var(--line);padding:25px}.report-grid .accent{background:var(--green);color:white}.report-grid .accent span{color:#cbd9d1}.membership-hero{padding:100px 0}.membership-hero h1{font-size:clamp(50px,7vw,90px);letter-spacing:-.055em}.membership-hero h1 em{font-style:normal;color:var(--green)}.membership-hero>p:last-child{max-width:760px;font-size:19px;color:var(--muted)}.data-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-bottom:100px}.data-principles b{color:var(--orange)}.data-principles p{color:var(--muted)}.pricing-section{background:#e9e7df;padding:90px 0}.pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.pricing-grid article{background:var(--white);padding:40px;border:1px solid var(--line)}.pricing-grid h3{font-size:54px;margin:20px 0 5px}.pricing-grid h3 small{font-size:16px}.pricing-grid li{margin:10px 0}.featured-price{border-top:5px solid var(--green)!important}.dev-note{display:block;color:var(--muted);margin-top:15px}.forum-list{padding-bottom:100px}.forum-list>a{background:var(--white);border:1px solid var(--line);padding:25px 30px;display:flex;justify-content:space-between;align-items:center;text-decoration:none;margin-bottom:10px}.forum-list h2{margin-bottom:7px}.forum-list p{margin:0;color:var(--muted)}.empty-state{background:var(--white);padding:40px;border:1px solid var(--line)}.thread-posts{padding-bottom:100px}.thread-posts article{background:var(--white);border:1px solid var(--line);padding:25px;margin-bottom:12px}.thread-posts header{display:flex;gap:12px;align-items:center}.thread-posts header span{background:var(--lime);padding:2px 7px;font-size:11px;font-weight:800}.thread-posts time{margin-left:auto;color:var(--muted);font-size:12px}.read-only-note{background:var(--green);color:white;padding:25px;display:flex;justify-content:space-between}.read-only-note a{color:var(--lime)}
@media(max-width:900px){.tools-grid.expanded{grid-template-columns:1fr 1fr}.site-header{display:block}.site-header .brand{margin-bottom:15px}.site-header nav{justify-content:flex-start}.dashboard-grid,.two-column{grid-template-columns:1fr}.dashboard-card:last-child{grid-column:auto}.report-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.tools-grid.expanded,.django-form-grid,.pricing-grid,.data-principles,.report-grid{grid-template-columns:1fr}.metric-strip{display:grid}.site-header nav{gap:12px;font-size:13px}.activity-row,.forum-list>a,.read-only-note{align-items:flex-start;flex-direction:column}.thread-posts header{flex-wrap:wrap}.thread-posts time{margin-left:0;width:100%}}
@media print{.site-header,footer,.no-print{display:none}.report-page{padding:0}.report-grid{grid-template-columns:repeat(2,1fr)}}
.profile-forest{border-top:8px solid var(--green)}.profile-night-shift{border-top:8px solid #293c58}.profile-high-mileage{border-top:8px solid var(--orange)}
.annotated-input{display:flex;align-items:stretch;margin-top:7px;border:1px solid #d8dcd6;background:#f6f5f0}.annotated-input:focus-within{border-color:var(--green);box-shadow:0 0 0 3px rgba(24,77,58,.12)}.annotated-input .form-control{min-width:0;margin:0;border:0;box-shadow:none;background:transparent}.annotated-input .form-control:focus{box-shadow:none}.input-prefix,.input-suffix{display:flex;align-items:center;padding:0 11px;color:var(--muted);font-size:13px;font-weight:800;white-space:nowrap}.input-prefix{padding-right:0}.input-suffix{padding-left:0}
.rating-key{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:28px}.rating-key span{background:var(--white);border:1px solid var(--line);padding:12px;font-size:11px;color:var(--muted)}.rating-key b{display:block;color:var(--ink);margin-bottom:4px}@media(max-width:850px){.rating-key{grid-template-columns:1fr 1fr}}@media(max-width:520px){.rating-key{grid-template-columns:1fr}}

.offer-summary-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding:17px 0;border-bottom:1px solid var(--line)}
.offer-summary-row span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.offer-summary-row strong{display:block;margin-top:3px;overflow-wrap:anywhere}
.dashboard-secondary-link{margin-left:18px}
.metric-strip>div{text-align:center}
.rating-key{grid-template-columns:repeat(4,1fr)}
@media(max-width:700px){.offer-summary-row{grid-template-columns:1fr 1fr}.dashboard-secondary-link{display:block;margin-left:0}}


/* Dashboard summary metric alignment */
.dashboard-metrics,
section.metric-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  width:min(1160px,calc(100% - 40px));
  margin:30px auto;
  align-items:stretch;
}
.dashboard-metrics>*,
section.metric-strip>div{
  display:grid;
  place-content:center;
  min-width:0;
  width:100%;
  min-height:112px;
  padding:20px;
  text-align:center;
}
.dashboard-metrics span,
section.metric-strip>div span,
.dashboard-metrics strong,
section.metric-strip>div strong{
  width:100%;
  text-align:center;
}
@media(max-width:760px){
  .dashboard-metrics,
  section.metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:440px){
  .dashboard-metrics,
  section.metric-strip{grid-template-columns:1fr}
}


/* Compact app navigation and access-aware tool picker */
.primary-nav{display:flex;align-items:center;gap:24px;margin-left:auto}
.primary-nav>a{text-decoration:none;color:var(--muted);font-weight:700}
.primary-nav>a:hover,.primary-nav>a[aria-current=page]{color:var(--ink)}

.app-menu {
  position: relative;
}

.app-menu > summary {
  display: flex;
  align-items: center;
  gap: 7px;
  min-height: auto;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--muted);
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}

.app-menu > summary::-webkit-details-marker {
  display: none;
}

.app-menu > summary:hover,
.app-menu[open] > summary {
  background: transparent;
  color: var(--ink);
}

.app-menu[open] > summary span {
  transform: rotate(180deg);
}

.app-menu-panel{position:absolute;right:0;top:calc(100% + 10px);z-index:50;width:min(380px,calc(100vw - 24px));padding:12px;background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow)}
.app-menu-panel>a,.menu-logout button{display:block;width:100%;padding:14px 12px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);font:700 15px "DM Sans";text-align:left;text-decoration:none;cursor:pointer}
.account-menu {
  position: relative;
}

.account-menu > summary {
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--muted);
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}

.account-menu > summary::-webkit-details-marker {
  display: none;
}

.account-menu > summary:hover,
.account-menu[open] > summary {
  color: var(--ink);
}

.account-menu[open] > summary span {
  transform: rotate(180deg);
}

.account-menu-panel {
  position: absolute;
  z-index: 60;
  top: calc(100% + 14px);
  right: 0;
  width: min(280px, calc(100vw - 24px));
  padding: 8px;
  background: var(--white);
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
}

.account-menu-list {
  display: grid;
}

.account-menu-item,
.account-menu-logout button {
  display: block;
  width: 100%;
  padding: 13px 14px;
  border: 0;
  border-bottom: 1px solid var(--line);
  background: transparent;
  color: var(--ink);
  font: 700 14px "DM Sans";
  text-align: left;
  text-decoration: none;
  cursor: pointer;
}

.account-menu-item:hover,
.account-menu-logout button:hover {
  background: var(--paper);
  color: var(--green);
}

.account-menu-logout {
  margin: 0;
}

.account-menu-logout button {
  border-bottom: 0;
  color: #8a352d;
}

@media (max-width: 900px) {
  .account-menu {
    position: static;
  }

  .account-menu-panel {
    position: fixed;
    top: 76px;
    right: 12px;
    max-height: calc(100dvh - 88px);
    overflow-y: auto;
  }
}
.tool-picker>summary{display:flex;justify-content:space-between;padding:14px 12px;background:var(--green);color:white;font-weight:800;cursor:pointer;list-style:none}
.tool-picker[open]>summary span{transform:rotate(180deg)}
.tool-menu-list{display:grid;gap:6px;padding:8px 0}
.tool-menu-item{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:12px;text-decoration:none;border:1px solid var(--line);background:var(--white)}
.tool-menu-item strong{font:800 14px Manrope}
.tool-menu-item small{grid-column:1;color:var(--muted)}
.tool-menu-item .access-label{grid-column:2;grid-row:1/3;align-self:center;font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--green);font-weight:800}
.tool-menu-item.locked{opacity:.52;background:#eeece6}
.tool-menu-item.locked:hover{opacity:.75}
.tool-menu-item.locked .access-label{color:#7a5342}

/* Shared phone results sheet for standard calculators */
.mobile-results-close{display:none}
@media(max-width:700px){
  body.mobile-results-open{overflow:hidden}
  .mobile-sheet-results.has-result:not(.mobile-results-dismissed){
    display:block;position:fixed;z-index:100;left:0;right:0;bottom:0;top:auto;
    max-height:min(82vh,760px);overflow-y:auto;overscroll-behavior:contain;
    border-radius:22px 22px 0 0;box-shadow:0 -16px 55px rgba(0,0,0,.32);
    animation:results-sheet-in .22s ease-out
  }
  .mobile-sheet-results.has-result:not(.mobile-results-dismissed)::before{
    content:"";display:block;width:44px;height:5px;margin:10px auto 2px;border-radius:4px;background:#75817b
  }
  .mobile-sheet-results.mobile-results-dismissed{display:none}
  .mobile-results-close{display:grid;place-items:center;position:sticky;z-index:2;top:10px;margin:0 12px -42px auto;width:38px;height:38px;border:0;border-radius:50%;background:white;color:var(--ink);font-size:27px;cursor:pointer}
}
@keyframes results-sheet-in{from{transform:translateY(100%)}to{transform:translateY(0)}}
@media(max-width:560px){
  .site-header{display:flex;padding:12px 0}
  .site-header .brand{margin:0}
  .primary-nav{gap:12px}
  .primary-nav>a{font-size:13px}
  .primary-nav .nav-join{display:none}
}


/* Keep app navigation on one row and its panel inside the viewport */
@media(max-width:900px){
  .site-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap}
  .site-header .brand{margin:0;flex:0 0 auto}
  .primary-nav{margin-left:auto;justify-content:flex-end;flex-wrap:nowrap;min-width:0}
  .app-menu{position:static}
  .app-menu-panel{
    position:fixed;
    top:76px;
    right:12px;
    left:auto;
    width:min(380px,calc(100vw - 24px));
    max-height:calc(100dvh - 88px);
    overflow-y:auto;
    overscroll-behavior:contain
  }
}
@media(max-width:480px){
  .site-header>.brand>span:last-child{display:none}
  .primary-nav{gap:9px}
  .primary-nav>a{font-size:12px}
}

/* Data collection notice */
.data-notice-dialog{width:min(620px,calc(100% - 28px));padding:0;border:0;border-radius:18px;background:var(--white);color:var(--ink);box-shadow:0 24px 90px rgba(0,0,0,.34)}
.data-notice-dialog::backdrop{background:rgba(10,20,16,.72);backdrop-filter:blur(3px)}
.data-notice-body{padding:32px}.data-notice-body h2{font-size:clamp(28px,5vw,42px);margin:8px 0 16px}.data-notice-body p{color:var(--muted)}
.data-notice-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:26px}.data-notice-actions a{font-weight:800}
.tool-card.locked{opacity:.58}.tool-card.locked:hover{opacity:.78}
@media(max-width:520px){.data-notice-body{padding:24px}.data-notice-actions{align-items:stretch;flex-direction:column}.data-notice-actions .button{width:100%}}


/* Account security and News */
.account-security-card{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:22px;padding:26px;background:var(--white);border:1px solid var(--line)}
.account-security-card h2{margin:5px 0 8px}.account-security-card p:last-child{margin:0;color:var(--muted)}
.news-hero{padding:105px 0 85px;background:var(--ink);color:white}
.news-hero .section-kicker{color:var(--lime)}.news-hero h1{max-width:950px;margin:18px 0 25px;font-size:clamp(50px,8vw,94px);letter-spacing:-.055em}
.news-hero p:last-child{max-width:720px;color:#bdc8c2;font-size:20px}
.news-purpose{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:85px 0}
.news-purpose article{padding-top:22px;border-top:3px solid var(--green)}.news-purpose span{font:800 13px Manrope;color:var(--orange)}.news-purpose h2{margin:18px 0 12px;font-size:25px}.news-purpose p{color:var(--muted)}
.news-caution{padding:80px 0;background:var(--green);color:white}.news-caution .section-kicker{color:var(--lime)}.news-caution p{color:#d5e1da}.news-caution .text-link{color:var(--lime)}
.news-feed{padding:95px 0 110px}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.news-card{padding:28px;background:var(--white);border:1px solid var(--line)}.news-card time{color:var(--muted);font-size:12px}.news-card h3{margin:15px 0 12px;font-size:26px}.news-card h3 a{text-decoration:none}.news-card>p:not(.tag){color:var(--muted)}
.news-article{max-width:800px;padding:85px 0 110px}.news-article h1{margin:16px 0 22px;font-size:clamp(44px,7vw,76px);letter-spacing:-.045em}.news-deck{font-size:21px;color:var(--muted)}.news-article time{display:block;margin:24px 0;color:var(--muted)}.news-body{padding-top:25px;border-top:1px solid var(--line);font-size:18px}.news-body p{margin:0 0 22px}
footer a{color:inherit}
@media(max-width:760px){.news-purpose,.news-grid{grid-template-columns:1fr}.account-security-card{align-items:flex-start;flex-direction:column}.news-hero{padding:70px 0}.news-purpose{padding:60px 0}.news-feed{padding:70px 0}}

/* Private income and expense tracker */
.tracker-heading{display:flex;align-items:end;justify-content:space-between;gap:30px}.tracker-heading h1{margin-bottom:16px}.tracker-heading p{max-width:720px;color:var(--muted)}
.tracker-warning{padding:12px 16px;background:#fff3d5;border-left:4px solid var(--orange);color:#654b20}.tracker-section{padding:35px 0 80px}.tracker-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.tracker-table{padding-bottom:0}.danger-link{color:#9b3028}
.tracker-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.tracker-chart-card{padding:28px;background:var(--white);border:1px solid var(--line)}.tracker-chart-card h3{margin-bottom:24px}.bar-row{display:grid;grid-template-columns:minmax(90px,.8fr) minmax(100px,1.4fr) auto;gap:12px;align-items:center;margin:13px 0}.bar-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.bar-row>i{height:10px;background:#e1e4df;border-radius:8px;overflow:hidden}.bar-row>i>b{display:block;height:100%;background:var(--green);border-radius:8px}.bar-row>strong{font-size:13px}
.decision-chart{grid-column:1/-1;display:grid;grid-template-columns:160px 1fr;column-gap:32px;align-items:center}.decision-chart h3{grid-column:1/-1}.decision-pie{width:150px;aspect-ratio:1;border-radius:50%;background:conic-gradient(var(--green) calc(var(--accepted) * 1%),#b84a3e 0);box-shadow:inset 0 0 0 22px var(--white)}.pie-key{display:grid;gap:15px}.pie-key span{display:grid;grid-template-columns:14px 1fr auto;gap:10px;align-items:center}.pie-key i{width:12px;height:12px;border-radius:50%}.accepted-key{background:var(--green)}.declined-key{background:#b84a3e}.decision-chart>small{grid-column:2;color:var(--muted)}
.tracker-expense-band{background:#e9e7df}.tracker-plan-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:22px;align-items:start}.tracker-plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:28px}.tracker-plan-form>small{display:block;margin-top:14px;color:var(--muted)}.tracker-plan-summary{position:sticky;top:20px}.tracker-plan-summary h3{font-size:30px;margin:10px 0 20px}.tracker-available{margin-top:12px;padding-top:20px;border-top:3px solid var(--green)}.tracker-available strong{color:var(--green)}
@media(max-width:850px){.tracker-heading{align-items:flex-start;flex-direction:column}.tracker-chart-grid,.tracker-plan-layout{grid-template-columns:1fr}.decision-chart{grid-column:auto}.tracker-plan-summary{position:static}}
@media(max-width:600px){.tracker-plan-grid{grid-template-columns:1fr}.decision-chart{grid-template-columns:110px 1fr;column-gap:18px}.decision-pie{width:105px;box-shadow:inset 0 0 0 16px var(--white)}.bar-row{grid-template-columns:minmax(80px,.8fr) 1fr}.bar-row>strong{grid-column:2;text-align:right}.decision-chart>small{grid-column:1/-1;margin-top:16px}}

.preference-floor-card{margin:1.25rem 0;padding:1rem;border:1px solid #cdd8cf;background:#edf6e7}.preference-floor-card>span{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;color:#596b61}.preference-floor-card>strong{display:block;margin:.3rem 0;font:800 2rem Manrope,sans-serif;color:#184d3a}.preference-floor-card p{color:#5d6d65}

/* Community and account notifications */
.community-notice{background:#fff7dc;border-left:4px solid var(--orange);padding:16px 18px;margin:24px 0;color:var(--ink)}.official-label,.notification-badge{display:inline-block;background:var(--lime);color:var(--green);padding:2px 7px;font-size:11px;font-weight:800}.post-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:16px;font-size:13px;font-weight:700}.reply-context{font-size:13px;color:var(--muted)}.removed-content{font-style:italic;color:var(--muted)}.reply-depth-1{margin-left:28px}.reply-depth-2{margin-left:56px}.reply-depth-3{margin-left:84px}.notification-list{padding-bottom:100px}.notification-item{display:flex;justify-content:space-between;gap:24px;background:var(--white);border:1px solid var(--line);padding:24px;margin-bottom:10px}.notification-item.unread{border-left:5px solid var(--green)}.notification-item h2{margin:4px 0}.notification-item p{margin:5px 0}.notification-item time{color:var(--muted);font-size:12px}
.post-actions form{margin:0}.link-button{border:0;background:none;padding:0;color:var(--green);font:inherit;text-decoration:underline;cursor:pointer}
@media(max-width:600px){.reply-depth-1,.reply-depth-2,.reply-depth-3{margin-left:16px}.notification-item{flex-direction:column}}

/* Referral rewards */
.referral-page {
  max-width: 860px;
  padding-block: clamp(2rem, 5vw, 4rem);
}
.referral-intro {
  max-width: 680px;
  color: var(--muted, #526879);
  font-size: 1.08rem;
}
.referral-card,
.referral-terms {
  margin-top: 1.25rem;
  padding: clamp(1.2rem, 3vw, 2rem);
  border: 1px solid #d7e1dd;
  border-radius: 18px;
  background: #fffdf8;
  box-shadow: 0 12px 28px rgba(7, 49, 42, 0.07);
}
.referral-card h2,
.referral-terms h2 {
  margin-top: 0;
}
.referral-copy-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.75rem;
  align-items: center;
}
.referral-copy-row input {
  min-width: 0;
}
.referral-code {
  margin-bottom: 0;
  color: #385e55;
}
.referral-progress {
  display: grid;
  grid-template-columns: repeat(3, minmax(64px, 1fr));
  gap: 0.75rem;
  max-width: 420px;
  margin: 1rem 0;
}
.referral-progress-slot {
  display: grid;
  min-height: 72px;
  place-items: center;
  border: 2px solid #b9cbc5;
  border-radius: 14px;
  background: #f4f2ea;
  color: #526879;
  font-size: 1.5rem;
  font-weight: 800;
}
.referral-progress-slot.earned {
  border-color: #087852;
  background: #d9f5e9;
  color: #006840;
}
.referral-activity-list {
  display: grid;
  gap: 0.75rem;
}
.referral-activity-list article {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding-block: 0.85rem;
  border-bottom: 1px solid #dfe6e2;
}
.referral-activity-list article:last-child {
  border-bottom: 0;
}
.referral-activity-list article div {
  display: grid;
  gap: 0.2rem;
}
.referral-activity-list article div:last-child {
  justify-items: end;
  color: #526879;
  font-size: 0.92rem;
}
.referral-terms li + li {
  margin-top: 0.55rem;
}
@media (max-width: 620px) {
  .referral-copy-row {
    grid-template-columns: 1fr;
  }
  .referral-copy-row .button {
    width: 100%;
  }
  .referral-activity-list article {
    display: grid;
  }
  .referral-activity-list article div:last-child {
    justify-items: start;
  }
}

