:root{--green-950:#053426;--green-900:#064b31;--green-800:#006b3c;--green-700:#087d42;--green-600:#11934e;--lime:#23d568;--gold:#e3d954;--red:#ef1824;--ink:#14261d;--muted:#64736b;--line:#dfe7e2;--surface:#f4f8f5;--white:#fff;--shadow:0 18px 50px rgba(6,75,49,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--surface);line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:min(1180px,92%);margin:auto}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:99;background:#fff;padding:.7rem 1rem;border-radius:.6rem}.skip-link:focus{top:1rem}.topbar{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav{display:flex;align-items:center;justify-content:space-between;min-height:84px}.brand{display:flex;align-items:center;gap:12px;color:var(--ink)}.brand img{width:64px;height:58px;object-fit:contain}.brand span{display:flex;flex-direction:column;line-height:1.2}.brand b{font-size:1.05rem}.brand small{margin-top:5px;color:var(--green-800);font-size:.69rem;font-weight:900;letter-spacing:.09em}.navlinks{display:flex;align-items:center;gap:8px;font-weight:700}.navlinks>a:not(.btn){padding:10px 11px;border-radius:9px}.navlinks>a:not(.btn):hover,.navlinks>a.active{color:var(--green-800);background:#edf7f0}.nav-toggle{display:none;border:1px solid var(--line);background:#fff;font-size:25px;width:44px;height:44px;border-radius:11px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 20px;border-radius:11px;background:var(--green-800);color:#fff;font-weight:850;border:1px solid transparent;cursor:pointer;transition:transform .18s ease,background .18s ease}.btn:hover{background:var(--green-900);transform:translateY(-1px)}.btn.gold{background:var(--gold);color:var(--ink)}.btn.red{background:var(--red)}.btn.lime{background:var(--lime);color:var(--green-950)}.btn.ghost{background:transparent;border-color:rgba(255,255,255,.45)}.btn.outline{background:transparent;border-color:var(--green-800);color:var(--green-800)}.btn.entrepreneur-login{background:#fff;border-color:var(--gold);color:var(--green-950);box-shadow:0 8px 24px rgba(0,25,13,.24)}.btn.entrepreneur-login:hover,.btn.entrepreneur-login:focus-visible{background:var(--gold);border-color:#fff;color:var(--green-950)}.btn.small{padding:9px 14px}.btn.wide{width:100%;margin-top:20px}.hero{position:relative;overflow:hidden;padding:86px 0;background:linear-gradient(135deg,#004b2f 0%,#00743c 58%,#079847 100%);color:#fff}.hero:after{content:"";position:absolute;width:460px;height:460px;border:90px solid rgba(255,255,255,.07);border-radius:50%;right:-160px;top:-180px}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:62px;align-items:center}.eyebrow{font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.15em;color:var(--green-700)}.eyebrow.light{color:#d6ffe4}.hero h1{max-width:740px;font-size:clamp(2.55rem,6vw,5.3rem);line-height:1.01;letter-spacing:-.055em;margin:.18em 0}.hero p{font-size:1.15rem;color:rgba(255,255,255,.83);max-width:680px}.hero-logo{width:100%;max-width:430px}.hero-visual{position:relative}.logo-panel{display:flex;justify-content:center;align-items:center;background:#fff;border-radius:28px;padding:24px;box-shadow:0 25px 70px rgba(0,25,13,.22)}.impact-card{position:absolute;right:-18px;bottom:-26px;display:flex;flex-direction:column;min-width:220px;padding:18px 20px;border-radius:16px;background:var(--gold);color:var(--green-950);box-shadow:var(--shadow)}.impact-card strong{text-transform:uppercase;font-size:.72rem;letter-spacing:.12em}.impact-card span{font-size:1.45rem;font-weight:900}.impact-card small{font-weight:700}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.hero-proof{display:flex;gap:20px;flex-wrap:wrap;margin-top:30px;font-size:.85rem;font-weight:800;color:rgba(255,255,255,.82)}.hero-proof span:before{content:"✓";margin-right:7px;color:var(--gold)}.section{padding:70px 0}.section h2,.section-heading h2{font-size:clamp(1.8rem,4vw,3rem);letter-spacing:-.035em;line-height:1.08;margin:.14em 0 .5em}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.section-heading>p{max-width:500px;color:var(--muted)}.section-heading.compact{align-items:center;margin-bottom:20px}.section-heading.compact h2{font-size:1.5rem;margin:.15em 0}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:25px;box-shadow:0 10px 30px rgba(6,75,49,.045)}.card h3{margin-top:0}.numbered .card{position:relative;padding-top:58px}.card-number{position:absolute;top:20px;right:22px;font-size:1.7rem;font-weight:950;color:#d8e8de}.muted{color:var(--muted)}.band{background:var(--green-950);color:#fff;padding:58px 0}.band .btn{background:var(--gold);color:var(--ink)}.flash{padding:12px 0;border-bottom:1px solid}.flash.info{background:#fff4c9;border-color:#ead675;color:#4d420f}.flash.success{background:#dcf8e6;border-color:#8bd1a4;color:#07552d}.flash.error{background:#ffe4e6;border-color:#f4a9ae;color:#8a1018}.app-shell{display:grid;grid-template-columns:268px minmax(0,1fr);min-height:calc(100vh - 84px)}.sidebar{background:linear-gradient(180deg,var(--green-950),#062b21);color:#fff;padding:24px 16px}.sidebar nav>a{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-radius:10px;margin:4px 0;color:rgba(255,255,255,.78);font-weight:750}.sidebar nav>a:hover,.sidebar nav>a.active{background:rgba(255,255,255,.11);color:#fff}.sidebar nav small{opacity:.45}.user-card{display:flex;align-items:center;gap:12px;padding:12px 8px 22px;border-bottom:1px solid rgba(255,255,255,.14);margin-bottom:14px}.user-card small{display:block;opacity:.65}.user-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--gold);color:var(--green-950);font-weight:950}.app-main{padding:34px;overflow:auto}.page-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:28px}.page-head h1{font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.045em;line-height:1;margin:.18em 0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stat{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:16px;padding:21px}.stat b{display:block;font-size:1.75rem;color:var(--green-800);letter-spacing:-.03em;margin:5px 0}.stat small{color:var(--muted)}.stat.highlight{background:var(--green-800);color:#fff;border-color:var(--green-800)}.stat.highlight b,.stat.highlight small{color:#fff}.dashboard-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:20px;margin-top:22px}.health-card{display:flex;flex-direction:column;justify-content:space-between}.score-ring{display:flex;align-items:baseline;justify-content:center;width:84px;height:84px;padding-top:22px;border-radius:50%;background:#e8f6ed;color:var(--green-800)}.score-ring strong{font-size:1.55rem}.score-ring span{font-size:.75rem}.health{height:12px;background:#e8ece9;border-radius:999px;overflow:hidden}.health span{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--lime));border-radius:inherit}.quick{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.quick a{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px;font-weight:800}.quick a:hover{border-color:#9dc6ac;background:#fff}.quick span{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#e5f5ea;color:var(--green-800)}.pipeline{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:10px;margin:20px 0}.pipeline div{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px}.pipeline span{font-size:.82rem;color:var(--muted)}.pipeline i{color:#94a69c}.panel{margin-bottom:20px}.panel[hidden]{display:none}.icon-button{border:0;background:#eef4f0;width:38px;height:38px;border-radius:10px;font-size:1.5rem;cursor:pointer}.table-wrap{overflow:auto;background:#fff;border-radius:15px;border:1px solid var(--line)}.table{width:100%;border-collapse:collapse;min-width:700px}.table th,.table td{text-align:left;padding:13px 15px;border-bottom:1px solid #edf1ee}.table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:#f9fbfa}.empty-state{display:flex;flex-direction:column;align-items:center;padding:25px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.field label{display:block;font-weight:750;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:12px 13px;border:1px solid #cbd8d0;border-radius:10px;background:#fff;color:var(--ink)}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid rgba(0,107,60,.13);border-color:var(--green-800)}.field.full{grid-column:1/-1}.auth-wrap{width:min(760px,92%);margin:54px auto}.auth-card{background:#fff;padding:32px;border-radius:20px;border:1px solid var(--line);box-shadow:var(--shadow)}.auth-card .logo-panel{box-shadow:none;padding:8px}.registration-wrap{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:22px;width:min(1120px,92%)}.registration-wrap .auth-card{margin:0}.registration-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:30px}.registration-head h1{font-size:clamp(2rem,4vw,3rem);line-height:1;margin:.2em 0}.fee-card{display:flex;flex-direction:column;min-width:160px;padding:15px;border-radius:14px;background:var(--green-950);color:#fff}.fee-card small,.fee-card span{color:rgba(255,255,255,.72)}.fee-card strong{font-size:1.7rem;color:var(--gold)}fieldset{border:0;padding:0;margin:0 0 30px}legend{width:100%;padding-bottom:10px;margin-bottom:16px;border-bottom:1px solid var(--line);font-size:1.15rem;font-weight:900;color:var(--green-900)}.consent{display:flex;align-items:flex-start;gap:11px;padding:16px;border-radius:12px;background:#f0f6f2}.consent input{margin-top:5px}.registration-aside{display:flex;flex-direction:column;gap:16px}.check-list{list-style:none;padding:0;margin:15px 0 0}.check-list li{position:relative;padding:8px 0 8px 28px;border-bottom:1px solid #eef2ef}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--green-700);font-weight:950}.metric{font-size:2rem;font-weight:900;color:var(--green-800)}.pill{display:inline-block;border-radius:999px;background:#e8f4ec;color:var(--green-900);padding:5px 9px;font-size:.79rem;font-weight:750}.pill.strong{padding:7px 12px}.footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:32px}footer{padding:48px 0 22px;background:#0b241b;color:#dce8e0;margin-top:35px}footer a:hover{color:#fff}.footer-logo{width:150px;background:#fff;border-radius:13px;padding:5px}.footer-motto{font-size:.78rem;font-weight:900;letter-spacing:.1em;color:var(--gold)}.footer-link{font-weight:800;color:var(--gold)}.footer-base{display:flex;justify-content:space-between;gap:20px;padding-top:22px;margin-top:24px;border-top:1px solid rgba(255,255,255,.12);font-size:.82rem;color:#9db0a6}
.cards-list{display:grid;gap:16px}.application-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.application-summary h2{margin:.35rem 0 0}.application-actions,.inline-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.inline-form select{min-width:140px;padding:8px;border:1px solid var(--line);border-radius:9px;background:#fff}.application-card details{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.application-card summary{cursor:pointer;font-weight:800;color:var(--green-800)}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}.detail-grid div{display:flex;flex-direction:column;padding:12px;border-radius:10px;background:var(--surface)}.detail-grid small{color:var(--muted)}.btn.danger{background:var(--red)}.status-active{background:#d9f7e4;color:#07552d}.status-rejected{background:#ffe4e6;color:#8a1018}.priority-high,.priority-urgent{background:#fff0d6;color:#7a4300}.priority-urgent{background:#ffe4e6;color:#8a1018}.narrow-card{max-width:620px}.narrow-card .field{margin-bottom:15px}
.stat-link{display:block;transition:transform .18s ease,border-color .18s ease}.stat-link:hover{transform:translateY(-2px);border-color:#9dc6ac}.client-stats{grid-template-columns:repeat(2,minmax(0,280px));margin-bottom:20px}.client-filter{margin-bottom:10px}.client-filter .actions{margin-top:16px}.client-section{padding-top:28px}.client-table small{color:var(--muted)}.client-table a:hover{color:var(--green-800);text-decoration:underline}.client-table .empty-state{gap:10px}
.client-table .btn:hover{text-decoration:none;color:#fff}.client-edit-card{max-width:820px}.client-edit-card .actions{margin-top:22px}.profile-reference{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;margin-bottom:22px;border-radius:11px;background:var(--surface);border:1px solid var(--line)}.profile-reference small{color:var(--muted)}.profile-reference strong{color:var(--green-800)}
.client-record-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.client-record-head div{display:flex;flex-direction:column}.client-record-head small{color:var(--muted)}.client-record-head strong{font-size:1.35rem;color:var(--green-800)}.client-edit-card{max-width:none}.client-system-card{margin-top:20px}.record-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.record-grid div{display:flex;flex-direction:column;min-width:0;padding:13px;border-radius:10px;background:var(--surface)}.record-grid small{color:var(--muted)}.record-grid strong{overflow-wrap:anywhere}.client-full-grid .field.full{grid-column:1/-1}
.subscription-stats{margin-bottom:22px}.subscription-section{padding-top:25px}.subscription-actions{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:22px}.amount-due{color:#a31d24}.paid-up{color:var(--green-700);font-weight:850}.overdue-stat{background:#fff1f2;border-color:#f1b6ba}.overdue-stat b{color:#a31d24}.receipt-toolbar{display:flex;justify-content:flex-end;gap:10px;margin-bottom:18px}.receipt{max-width:760px;margin:auto;padding:40px}.receipt>header{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:22px;border-bottom:2px solid var(--green-800)}.receipt>header img{width:120px;height:90px;object-fit:contain}.receipt>header div{text-align:right}.receipt>header h1{margin:0}.receipt-meta{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:28px 0}.receipt-meta>div{display:flex;flex-direction:column;padding:17px;background:var(--surface);border-radius:12px}.receipt-meta small{color:var(--muted)}.receipt-total{display:flex;align-items:center;justify-content:space-between;padding:22px;border-radius:14px;background:var(--green-950);color:#fff}.receipt-total strong{font-size:2rem;color:var(--gold)}.receipt dl>div{display:flex;justify-content:space-between;gap:25px;padding:12px 0;border-bottom:1px solid var(--line)}.receipt dt{color:var(--muted)}.receipt dd{margin:0;font-weight:750;text-align:right}.receipt footer{display:flex;flex-direction:column;margin:35px 0 0;padding:20px 0 0;background:none;color:var(--ink);border-top:1px solid var(--line)}.receipt footer span{color:var(--green-800);font-weight:800}.receipt footer small{margin-top:12px;color:var(--muted)}
.admin-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.password-reset-panel{min-width:290px;margin-top:12px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.password-reset-panel[hidden]{display:none}.password-reset-panel .field{margin-top:10px}.password-reset-panel small{display:block;margin:8px 0;color:var(--muted)}
.field-stats,.field-client-stats{margin-bottom:24px}.field-section{padding:30px 0}.field-case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.field-case-card{display:flex;flex-direction:column}.field-case-card h3{margin:.8rem 0 .25rem}.field-case-card p{flex:1}.case-meta{display:flex;justify-content:space-between;gap:8px}.field-case-card dl{margin:15px 0 0}.field-case-card dl div{display:flex;justify-content:space-between;gap:20px;padding:8px 0;border-top:1px solid var(--line)}.field-case-card dt{color:var(--muted)}.field-case-card dd{margin:0;font-weight:750;text-align:right}.service-nav{position:sticky;top:84px;z-index:10;display:flex;gap:8px;overflow:auto;margin:0 -34px 24px;padding:12px 34px;background:rgba(244,248,245,.97);border-block:1px solid var(--line)}.service-nav a{white-space:nowrap;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:750;color:var(--green-800)}.field-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field-form-grid .card{scroll-margin-top:150px}.field-form-grid .section-heading h2{font-size:1.45rem}.score-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:18px 0}.field .consent{height:100%;align-items:center}.field small{display:block;color:var(--muted);margin-top:5px}.timeline{position:relative;margin-left:12px;padding-left:25px;border-left:2px solid #c6dccf}.timeline-item{position:relative;margin-bottom:18px}.timeline-marker{position:absolute;left:-33px;top:24px;width:14px;height:14px;border-radius:50%;background:var(--green-700);border:3px solid var(--surface)}.timeline-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.timeline-head h3{margin:.2rem 0}.review-form{display:flex;align-items:end;gap:8px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.review-form .field{flex:1;min-width:220px}.status-approved{background:#d9f7e4;color:#07552d}.status-returned{background:#ffe4e6;color:#8a1018}.evidence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.evidence-card{display:flex;align-items:center;gap:15px;padding:18px}.evidence-card:hover{border-color:#9dc6ac}.evidence-card div{display:flex;flex-direction:column;min-width:0}.evidence-card strong{overflow-wrap:anywhere}.evidence-card small{color:var(--muted)}.file-icon{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:12px;background:#e5f5ea;color:var(--green-800);font-size:1.25rem;font-weight:900}
.entrepreneur-head{margin-bottom:12px}.entrepreneur-section{padding:32px 0;scroll-margin-top:145px}.entrepreneur-stats{margin-bottom:15px}.cashbook-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(230px,.5fr);gap:18px}.cashbook-summary{display:flex;flex-direction:column;gap:14px}.cashbook-tip{background:var(--green-950);color:#fff}.cashbook-tip p{color:#d5e5dc}.cashbook-table,.profile-request-table{margin-top:20px}.money{white-space:nowrap;font-weight:900}.money.income{color:var(--green-700)}.money.expense{color:#a31d24}.finance-income{background:#d9f7e4;color:#07552d}.finance-expense{background:#ffe4e6;color:#8a1018}.voided-row{opacity:.62}.voided-row .money{text-decoration:line-through}.void-form{display:flex;gap:7px;align-items:center;margin-top:8px}.void-form input{min-width:180px;padding:8px;border:1px solid var(--line);border-radius:8px}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:20px}.action-card{display:flex;justify-content:space-between;align-items:center;gap:20px}.action-card form,.goal-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.action-card input,.action-card select,.goal-form input,.goal-form select{padding:9px;border:1px solid var(--line);border-radius:9px;background:#fff}.goal-card .health{margin:10px 0}.progress-label{display:flex;justify-content:space-between;gap:15px}.progress-label span{color:var(--green-800);font-weight:900}.entrepreneur-nav{margin-bottom:22px}
.finance-client-picker,.finance-filter,.finance-entry{margin-bottom:22px}.finance-client-picker form{display:flex;align-items:end;gap:12px}.finance-client-picker .field{flex:1;margin:0}.finance-filter .form-grid{grid-template-columns:repeat(2,minmax(0,220px));margin-bottom:12px}.finance-stats{margin-bottom:22px}.finance-empty{margin-top:22px}.finance-entry .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.request-update{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.request-update .full{grid-column:1/-1}.request-card h3{margin:.7rem 0 .2rem}
.receipt-link{margin:0 7px 7px 0}.entrepreneur-receipt{position:relative;overflow:hidden}.receipt-watermark{position:absolute;inset:42% auto auto 50%;transform:translate(-50%,-50%) rotate(-20deg);font-size:7rem;font-weight:950;color:rgba(239,24,36,.14);border:10px solid rgba(239,24,36,.14);padding:0 24px;z-index:2;pointer-events:none}.receipt-voided .receipt-total{background:#7d1a21}
@media print{.topbar,.sidebar,.receipt-toolbar,body>footer,.flash{display:none!important}.app-shell{display:block}.app-main{padding:0}.receipt{box-shadow:none;border:0;max-width:none}.receipt footer{display:flex!important}.receipt-total{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
@media(max-width:1060px){.navlinks{gap:2px}.navlinks>a:not(.btn){padding:9px 7px;font-size:.9rem}.stats{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.registration-wrap{grid-template-columns:1fr}.registration-aside{display:grid;grid-template-columns:1fr 1fr}.field-case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field-form-grid{grid-template-columns:1fr}}
@media(max-width:900px){.nav-toggle{display:block}.navlinks{display:none;position:absolute;top:84px;left:0;right:0;background:#fff;padding:18px 4%;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.navlinks.open{display:flex}.hero-grid,.grid3,.footer-grid{grid-template-columns:1fr}.hero-visual{max-width:520px}.app-shell{grid-template-columns:1fr}.sidebar{padding:9px 4%;overflow:auto}.sidebar .user-card{display:none}.sidebar nav{display:flex;gap:6px}.sidebar nav>a{white-space:nowrap}.sidebar nav small{display:none}.app-main{padding:24px}.pipeline{grid-template-columns:repeat(4,1fr)}.pipeline i{display:none}.section-heading{align-items:flex-start;flex-direction:column;gap:4px}.section-heading.compact{flex-direction:row;align-items:center}}
@media(max-width:620px){.brand span{display:none}.hero{padding:58px 0}.hero h1{font-size:2.75rem}.hero-proof{gap:10px 18px}.impact-card{position:relative;right:auto;bottom:auto;margin-top:12px}.stats,.quick,.form-grid,.registration-aside,.detail-grid,.record-grid,.subscription-actions,.receipt-meta,.field-case-grid,.score-grid,.evidence-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.app-main{padding:18px 14px}.page-head,.application-summary,.client-record-head,.timeline-head{align-items:flex-start;flex-direction:column}.pipeline{grid-template-columns:1fr 1fr}.registration-head{flex-direction:column}.fee-card{width:100%}.auth-card{padding:23px}.footer-base{flex-direction:column}.section{padding:52px 0}.field-section{padding:25px 0}.service-nav{top:84px;margin:0 -14px 20px;padding:10px 14px}.receipt{padding:22px}.receipt>header{align-items:flex-start;flex-direction:column}.receipt>header div{text-align:left}}
@media(max-width:1060px){.cashbook-layout{grid-template-columns:1fr}.cashbook-summary{display:grid;grid-template-columns:1fr 1fr}.cashbook-tip{grid-column:1/-1}}
@media(max-width:620px){.two-column,.cashbook-summary,.finance-entry .form-grid,.finance-filter .form-grid{grid-template-columns:1fr}.action-card,.finance-client-picker form{align-items:stretch;flex-direction:column}.finance-client-picker .btn{width:100%}.entrepreneur-section{padding:25px 0}.sidebar nav{scroll-snap-type:x proximity}.sidebar nav>a{scroll-snap-align:center}}
.inventory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:22px 0}.inventory-stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:22px}.inventory-grid .card{min-width:0}.stock-low{color:#a31d24;font-weight:900}.invoice-toolbar{display:flex;justify-content:flex-end;gap:10px;margin-bottom:18px}.invoice-document{max-width:900px;margin:auto;padding:34px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.invoice-header{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;padding-bottom:20px;border-bottom:2px solid var(--green-800)}.invoice-header img{width:105px;height:82px;object-fit:contain}.invoice-header h1{margin:0;font-size:2.25rem}.invoice-header>div:last-child{text-align:right}.invoice-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.invoice-meta div,.invoice-parties>div{display:flex;flex-direction:column;padding:14px;border-radius:11px;background:var(--surface)}.invoice-meta small,.invoice-parties small{color:var(--muted)}.invoice-parties{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px}.invoice-lines{width:100%;border-collapse:collapse}.invoice-lines th,.invoice-lines td{padding:10px;border-bottom:1px solid var(--line);text-align:left}.invoice-lines th{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.invoice-lines .number{text-align:right;white-space:nowrap}.invoice-totals{display:flex;flex-direction:column;width:min(390px,100%);margin:18px 0 24px auto}.invoice-totals>span{display:flex;justify-content:space-between;gap:20px;padding:7px 0;border-bottom:1px solid var(--line)}.invoice-totals .grand-total{padding:13px;color:#fff;background:var(--green-950);border-radius:10px;border:0}.invoice-totals .grand-total strong{color:var(--gold)}.invoice-payment{margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}
@media(max-width:900px){.inventory-grid{grid-template-columns:1fr}.inventory-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-meta{grid-template-columns:1fr}.invoice-parties{grid-template-columns:1fr}.invoice-document{padding:22px}.invoice-header h1{font-size:1.75rem}}
@media(max-width:560px){.inventory-stats{grid-template-columns:1fr}.invoice-header{flex-direction:column}.invoice-header>div:last-child{text-align:left}.invoice-document{padding:16px;border-radius:12px}.invoice-lines{font-size:.82rem}.invoice-lines th,.invoice-lines td{padding:7px 5px}}
@media print{.topbar,.sidebar,footer,.no-print,.flash{display:none!important}.app-shell,.app-main{display:block!important;margin:0!important;padding:0!important}.invoice-document{max-width:none;padding:0;border:0;border-radius:0;box-shadow:none}.invoice-payment{display:none!important}body{background:#fff}@page{size:A4;margin:12mm}}
/* Consultations and Field Visits v2.9 */
.consultation-stats,.consultation-detail-stats{margin-bottom:24px}.consultation-form{margin-bottom:28px}.consultation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.consultation-card{display:flex;flex-direction:column;gap:12px}.consultation-card h3{margin:0}.consultation-card dl{display:grid;gap:8px;margin:4px 0}.consultation-card dl div{display:grid;grid-template-columns:100px 1fr;gap:10px}.consultation-card dt{color:var(--muted,#66756f);font-weight:700}.consultation-card dd{margin:0}.consultation-filters{display:flex;gap:8px;flex-wrap:wrap}.consultation-filters select{min-width:150px}.consultation-detail{align-items:start}.record-status-text,.record-name-text{font-size:1.05rem!important;line-height:1.35;overflow-wrap:anywhere}.check-row label{display:flex;align-items:center;gap:8px}.check-row input{width:auto}
@media(max-width:760px){.consultation-grid{grid-template-columns:1fr}.consultation-filters{width:100%}.consultation-filters select,.consultation-filters .btn{width:100%}.consultation-card dl div{grid-template-columns:86px 1fr}}
/* v3.0 consolidation: the former Field Operations entry now lives inside Consultations. */
.sidebar a[href="/field-operations"]{display:none}.training-stats{margin-bottom:24px}.training-admin{align-items:start;margin-bottom:28px}.training-course-grid,.training-session-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.training-course{display:flex;flex-direction:column;gap:12px}.training-course .btn{margin-top:auto}.training-progress{width:140px;max-width:100%;height:8px;background:#e5eee8;border-radius:999px;overflow:hidden;margin-bottom:4px}.training-progress i{display:block;height:100%;background:var(--green-700,#087b49);border-radius:inherit}.training-admin .field{margin-bottom:14px}
@media(max-width:900px){.training-course-grid,.training-session-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.training-course-grid,.training-session-grid{grid-template-columns:1fr}.training-admin{grid-template-columns:1fr}.training-stats{grid-template-columns:1fr 1fr}}
/* v3.1 Spaza Business Network */
.sbn-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.sbn-stat{background:#fff;border:1px solid #dce7e1;border-radius:18px;padding:1.15rem}.sbn-stat small{display:block;color:#5b6c63}.sbn-stat strong{font-size:1.65rem;color:#064b34}.sbn-linkbox{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;background:#eef7f2;border:1px solid #cce2d6;border-radius:14px;padding:1rem}.sbn-linkbox code{overflow-wrap:anywhere;flex:1}.sbn-badge{display:inline-block;padding:.25rem .6rem;border-radius:999px;background:#e8f4ed;color:#075c3d;font-weight:700;font-size:.78rem}.sbn-tree{border-left:3px solid #0a7a4b;padding-left:1rem}.sbn-tree .node{margin:.6rem 0;padding:.7rem 1rem;background:#fff;border:1px solid #e0e7e3;border-radius:12px}.table-scroll{overflow:auto}.sbn-tabs{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.sbn-tabs a{padding:.55rem .8rem;border-radius:10px;background:#edf3f0;text-decoration:none}.sbn-tabs a.active{background:#075c3d;color:#fff}@media(max-width:900px){.sbn-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.sbn-grid{grid-template-columns:1fr}}
/* v3.1.1 Spaza Business Network mobile responsiveness */
.sbn-responsive-table table{width:100%;min-width:720px}
.sbn-responsive-table th,.sbn-responsive-table td{vertical-align:top}
.sbn-responsive-table form{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap}
.sbn-responsive-table select,.sbn-responsive-table input{max-width:100%}
@media(max-width:620px){
  .sbn-badge{white-space:normal;line-height:1.45}
  .sbn-responsive-table{overflow:visible}
  .sbn-responsive-table table,.sbn-responsive-table tbody,.sbn-responsive-table tr,.sbn-responsive-table td{display:block;width:100%;min-width:0}
  .sbn-responsive-table thead{display:none}
  .sbn-responsive-table tbody{display:grid;gap:14px}
  .sbn-responsive-table tr{background:#fff;border:1px solid var(--line);border-radius:14px;padding:8px 14px;box-shadow:0 8px 24px rgba(6,75,49,.05);overflow:hidden}
  .sbn-responsive-table td{display:grid;grid-template-columns:minmax(105px,38%) minmax(0,1fr);gap:10px;padding:10px 0!important;border:0!important;border-bottom:1px solid #edf2ef!important;overflow-wrap:anywhere}
  .sbn-responsive-table td:last-child{border-bottom:0!important}
  .sbn-responsive-table td:before{content:attr(data-label);font-size:.74rem;line-height:1.35;text-transform:uppercase;letter-spacing:.045em;font-weight:900;color:var(--green-800)}
  .sbn-responsive-table td form{width:100%;display:grid;grid-template-columns:1fr;gap:8px}
  .sbn-responsive-table td form select,.sbn-responsive-table td form input,.sbn-responsive-table td form .btn{width:100%;min-width:0}
  .sbn-responsive-table td[data-label="Amount"]{font-weight:900;color:var(--green-800)}
  .sbn-responsive-table td[data-label="Status"]{font-weight:800}
  .card{max-width:100%;overflow:hidden}
}

/* v3.1.2 Spaza Business Network mobile UX */

/* v3.2 Marketplace (Mmarakeng) */
.marketplace-page h1{max-width:820px}.marketplace-form{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(300px,1.3fr);gap:28px;margin:28px 0}.marketplace-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:34px 0 18px}.marketplace-heading h2{margin-bottom:0}.marketplace-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.offer-card{display:flex;flex-direction:column;gap:14px;overflow:hidden}.offer-gallery{display:grid;gap:4px;height:220px;margin:-1.5rem -1.5rem 0}.offer-gallery img{width:100%;height:100%;object-fit:cover;min-width:0;min-height:0}.offer-gallery-2{grid-template-columns:1fr 1fr}.offer-gallery-3{grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr}.offer-gallery-3 img:first-child{grid-row:1/3}.offer-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.offer-price{font-size:1.25rem;color:var(--green,#007a46)}.offer-description{white-space:normal;flex:1}.offer-business{border-top:1px solid #dce6df;padding-top:14px;display:flex;flex-direction:column;gap:7px}.offer-business a{color:var(--green,#007a46);overflow-wrap:anywhere}.offer-business span{color:#5f6f67}@media(max-width:760px){.marketplace-form{grid-template-columns:1fr}.marketplace-heading{align-items:center}.marketplace-grid{grid-template-columns:1fr}.offer-gallery{height:210px}}
.sbn-empty{margin-top:1rem;padding:1.15rem;border:1px dashed #bdd6c8;border-radius:14px;background:#f5faf7;display:grid;gap:.35rem;color:#53665c}
.sbn-empty strong{color:#123c2d;font-size:1rem}.sbn-empty span{line-height:1.55}
@media(max-width:620px){
  .sbn-section{padding:20px 18px!important}
  .sbn-section h2{font-size:1.65rem;line-height:1.15;margin-bottom:.75rem}
  .sbn-section>p{font-size:1rem;line-height:1.55;margin-bottom:1rem}
  .sbn-empty{margin-top:.7rem;padding:1rem}
  .sbn-compensation .form-grid{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
  .sbn-compensation .field,.sbn-compensation input,.sbn-compensation .btn{width:100%;min-width:0}
  .sbn-responsive-table table{min-width:0!important}
}
.nav-logout{display:inline-flex;margin:0}.nav-logout button{appearance:none;border:0;background:transparent;color:inherit;font:inherit;font-weight:700;cursor:pointer;padding:.65rem .85rem}.nav-logout button:hover{text-decoration:underline}
.language-switcher{display:inline-flex;gap:.2rem;align-items:center}.language-switcher a{border:1px solid rgba(0,107,60,.28);border-radius:7px;padding:.35rem .5rem;background:#fff;color:#064;text-decoration:none;font-size:.78rem;font-weight:800}.language-switcher a:hover{background:#eaf7ef}@media(max-width:900px){.language-switcher{padding:.35rem 0}}
.one-column{display:grid;grid-template-columns:1fr}.document-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px}.document-actions form{margin:0}
.entrepreneur-manual-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 24px;padding:24px 28px;background:linear-gradient(135deg,var(--green-950),var(--green-700));color:#fff}.entrepreneur-manual-banner h2{margin:.2rem 0 .45rem;color:#fff}.entrepreneur-manual-banner p{margin:0;color:#e3f1e8;max-width:720px}.entrepreneur-manual-banner .eyebrow{color:var(--gold)}.entrepreneur-manual-banner .btn{flex:0 0 auto}@media(max-width:620px){.entrepreneur-manual-banner{align-items:flex-start;flex-direction:column;padding:22px}.entrepreneur-manual-banner .btn{width:100%;text-align:center}}
.subscription-search{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(420px,1.2fr);gap:24px;align-items:end;margin:0 0 22px}.subscription-search h2{margin:.15rem 0}.subscription-search p{margin:0}.subscription-search-form{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:10px;align-items:end}.subscription-search-form .btn{min-height:49px}.subscription-search-status{grid-column:1/-1;font-weight:800;color:var(--green-800)}tr[hidden]{display:none}@media(max-width:900px){.subscription-search{grid-template-columns:1fr}.subscription-search-form{grid-template-columns:1fr 1fr}.subscription-search-field{grid-column:1/-1}}@media(max-width:520px){.subscription-search-form{grid-template-columns:1fr}.subscription-search-field{grid-column:auto}.subscription-search-form .btn{width:100%}}
.role-manual-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px;background:linear-gradient(135deg,var(--green-950),var(--green-700));color:#fff}.role-manual-banner h2{margin:.2rem 0;color:#fff}.role-manual-banner p{margin:0;color:#e3f1e8}.role-manual-banner .eyebrow{color:var(--gold)}.role-manual-banner .actions{margin:0;flex-wrap:nowrap}.text-link{display:inline-block;margin-left:12px;color:var(--green-800);font-weight:800}.certificate-actions{display:flex;justify-content:space-between;gap:16px;margin:0 auto 20px;max-width:1050px}.completion-certificate{position:relative;max-width:1050px;min-height:700px;margin:auto;padding:44px 54px;background:#fff;border:12px solid var(--green-950);outline:3px solid var(--gold);outline-offset:-22px;box-shadow:var(--shadow);text-align:center}.completion-certificate header{display:flex;align-items:center;justify-content:center;gap:18px}.completion-certificate header img{width:115px;height:90px;object-fit:contain}.completion-certificate header strong{display:block;color:var(--green-800);font-size:.8rem;letter-spacing:.08em}.certificate-body{padding:28px 0}.certificate-kicker{color:var(--gold);font-weight:950;text-transform:uppercase;letter-spacing:.2em}.completion-certificate h1{font-family:Georgia,serif;font-size:3.3rem;color:var(--green-950);margin:.15em 0}.completion-certificate h2{font-family:Georgia,serif;font-size:2.45rem;color:var(--green-800);margin:.25em 0;border-bottom:2px solid var(--gold);display:inline-block;padding:0 40px 8px}.completion-certificate h3{font-size:1.55rem;margin:.4em 0 1.4em}.certificate-meta{display:flex;justify-content:center;gap:42px;flex-wrap:wrap}.certificate-meta div{display:flex;flex-direction:column}.certificate-meta span{font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}.completion-certificate footer{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-top:28px}.signature{min-width:220px;display:flex;flex-direction:column}.signature span{border-top:1px solid var(--ink);margin-bottom:8px}.signature small{color:var(--muted)}.seal{display:grid;place-items:center;width:86px;height:86px;border:4px double var(--gold);border-radius:50%;font-weight:950;color:var(--green-800)}.seal small{font-size:.65rem}@media(max-width:700px){.role-manual-banner{align-items:flex-start;flex-direction:column}.role-manual-banner .actions{width:100%;flex-wrap:wrap}.completion-certificate{padding:32px 25px}.completion-certificate h1{font-size:2.2rem}.completion-certificate h2{font-size:1.7rem;padding:0 8px 6px}.completion-certificate footer{flex-direction:column;align-items:center}.signature{width:100%}}@media print{.topbar,.sidebar,footer.site-footer,.certificate-actions{display:none!important}.app-shell{display:block}.app-main{padding:0}.completion-certificate{box-shadow:none;margin:0;max-width:none;min-height:190mm;page-break-inside:avoid}body{background:#fff}}
.client-recovery-bottom{margin-top:32px}
.company-finance-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0}.company-finance-actions details>summary{cursor:pointer;margin-bottom:1rem}.statement-header{display:flex;align-items:center;gap:1.25rem;margin-bottom:1.5rem}.statement-header img{width:90px;height:90px;object-fit:contain}.statement-signatures{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem;padding-top:1.5rem;border-top:1px solid #d8dedb}@media(max-width:760px){.company-finance-actions{grid-template-columns:1fr}.statement-signatures{grid-template-columns:1fr;gap:1rem}}@media print{header,.sidebar,footer,.print-hide,.flash{display:none!important}.app-shell,.app-main{display:block!important;margin:0!important;padding:0!important}.card{box-shadow:none!important;border:0!important}.table{font-size:10px}}
