@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Playfair+Display:wght@600;700&display=swap";:root{font-family:DM Sans,Segoe UI,sans-serif;color:#f7f2e9;background:#07111e;font-synthesis:none;--navy: #07111e;--navy-soft: #0c1d31;--panel: rgba(9, 22, 36, .82);--gold: #d8b66d;--gold-light: #f2da9d;--teal: #41c7be;--muted: #abb6c3;--border: rgba(216, 182, 109, .24)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-width:0;min-height:100%}body{min-height:100vh;overflow-x:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}.partner-login-page{position:relative;isolation:isolate;min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,480px);align-items:center;gap:clamp(42px,8vw,120px);padding:clamp(24px,5vw,76px);overflow:hidden;background:radial-gradient(circle at 15% 15%,rgba(58,169,162,.2),transparent 28%),radial-gradient(circle at 85% 10%,rgba(216,182,109,.16),transparent 26%),linear-gradient(135deg,#050b13,#0a1727 48%,#15130f)}.partner-login-page:before{content:"";position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;opacity:.24;background-image:linear-gradient(rgba(216,182,109,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(216,182,109,.12) 1px,transparent 1px);background-size:58px 58px;-webkit-mask-image:linear-gradient(90deg,black,transparent 76%);mask-image:linear-gradient(90deg,black,transparent 76%)}.partner-login-intro{max-width:720px}.partner-brand img{width:clamp(190px,23vw,260px)}.partner-kicker,.partner-login-card__heading>span,.partner-topbar>div>span,.partner-welcome-card>div>span,.partner-section-title span{display:block;color:var(--gold);font-size:12px;font-weight:800;letter-spacing:1.7px;text-transform:uppercase}.partner-kicker{margin-top:38px}.partner-login-intro h1{max-width:680px;margin-top:14px;color:#fff9ed;font-family:Playfair Display,Georgia,serif;font-size:clamp(38px,5vw,68px);line-height:1.06}.partner-login-intro>p{max-width:620px;margin-top:22px;color:#c5ced8;font-size:clamp(16px,1.5vw,19px);line-height:1.75}.partner-trust-line{display:inline-flex;align-items:center;gap:10px;margin-top:28px;padding:11px 16px;border:1px solid rgba(65,199,190,.24);border-radius:999px;background:#41c7be14;color:#a6e9e4;font-weight:700}.partner-login-card{width:100%;padding:clamp(25px,4vw,42px);border:1px solid var(--border);border-radius:26px;background:radial-gradient(circle at 100% 0%,rgba(216,182,109,.13),transparent 34%),#07101bc4;box-shadow:0 35px 90px #0000007a;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.partner-login-card__heading h2{margin-top:5px;color:#fff8e9;font-family:Playfair Display,Georgia,serif;font-size:45px}.partner-login-card__heading p{margin-top:8px;color:var(--muted);line-height:1.55}.partner-login-card form{display:grid;gap:10px;margin-top:28px}.partner-login-card label{margin-top:6px;color:var(--gold-light);font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.partner-input{position:relative;display:flex;align-items:center;gap:10px;min-width:0;border:1px solid rgba(216,182,109,.3);border-radius:13px;background:#02080fb3;color:var(--gold);transition:.2s ease}.partner-input:focus-within{border-color:var(--teal);background:#0d3438a3;box-shadow:0 0 0 4px #41c7be1f}.partner-input>svg{flex:0 0 auto;margin-left:14px}.partner-input input{min-width:0;width:100%;min-height:52px;padding:12px 10px 12px 0;border:0;outline:0;background:transparent;color:#fff;font-size:15px}.partner-input input::placeholder{color:#778695}.partner-password-eye{flex:0 0 42px;display:grid;place-items:center;height:42px;margin-right:5px;border:0;border-radius:9px;background:transparent;color:var(--gold)}.partner-password-eye:hover,.partner-password-eye:focus-visible{outline:0;background:#41c7be1f;color:#91eee7}.partner-login-error{margin-top:5px;padding:11px 13px;border:1px solid rgba(248,113,113,.3);border-radius:10px;background:#7f1d1d42;color:#fecaca;font-size:13px}.partner-login-submit{min-height:52px;margin-top:12px;border:1px solid rgba(255,255,255,.22);border-radius:13px;background:linear-gradient(135deg,#f1d995,#d1a653 60%,#a7722e);color:#181108;font-weight:900;box-shadow:0 18px 36px #0000004d}.partner-login-submit:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.partner-login-submit:disabled{cursor:wait;opacity:.66}.portal-loading{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:16px;background:var(--navy);color:var(--muted)}.portal-spinner{width:42px;height:42px;border:3px solid rgba(216,182,109,.2);border-top-color:var(--gold);border-radius:50%;animation:partner-spin .8s linear infinite}.partner-portal{min-height:100vh;display:grid;grid-template-columns:278px minmax(0,1fr);background:radial-gradient(circle at 88% 5%,rgba(216,182,109,.11),transparent 28%),linear-gradient(135deg,#07111e,#0a1a2c 52%,#0a121d)}.partner-sidebar{position:sticky;top:0;z-index:20;height:100vh;display:flex;flex-direction:column;padding:22px 16px;border-right:1px solid var(--border);background:#050d17e0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.partner-sidebar__brand{display:flex;align-items:center;justify-content:space-between;min-height:72px;padding:5px 7px 18px;border-bottom:1px solid rgba(216,182,109,.15)}.partner-sidebar__brand img{width:192px}.partner-sidebar__brand button{display:none}.partner-sidebar nav{display:grid;gap:7px;margin-top:22px}.partner-sidebar nav button,.partner-sidebar__logout{position:relative;display:flex;align-items:center;gap:11px;width:100%;min-height:48px;padding:10px 12px;border:1px solid transparent;border-radius:11px;background:transparent;color:#aeb9c5;text-align:left;font-weight:700}.partner-sidebar nav button.active{border-color:#d8b66d45;background:linear-gradient(135deg,#d8b66d29,#41c7be14);color:#f5dda3}.partner-sidebar nav button.future-module{padding-right:68px;opacity:.67}.future-module small{position:absolute;right:8px;color:#71808f;font-size:8px;text-transform:uppercase}.partner-sidebar__logout{margin-top:auto;color:#f3b8b8}.partner-sidebar__logout:hover{border-color:#f8717133;background:#7f1d1d2e}.partner-main{min-width:0}.partner-topbar{position:sticky;top:0;z-index:10;min-height:82px;display:flex;align-items:center;gap:14px;padding:13px clamp(18px,3vw,38px);border-bottom:1px solid rgba(216,182,109,.17);background:#06101cc7;-webkit-backdrop-filter:blur(17px);backdrop-filter:blur(17px)}.partner-topbar>div{display:grid;gap:2px;min-width:0}.partner-topbar strong{overflow:hidden;color:#fff7e8;font-size:18px;text-overflow:ellipsis;white-space:nowrap}.partner-menu-button{display:none}.partner-topbar-logout,.partner-menu-button,.partner-sidebar__brand button{align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 13px;border:1px solid var(--border);border-radius:10px;background:#ffffff0b;color:#ead39c}.partner-topbar-logout{display:flex;margin-left:auto;font-weight:800}.partner-site-switcher{display:grid;gap:3px;min-width:min(310px,34vw);margin-left:auto}.partner-site-switcher span{color:#aa9465;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.partner-site-switcher select{width:100%;min-height:38px;border:1px solid rgba(216,182,109,.3);border-radius:9px;background:#0d1b29;color:#fff5dc;padding:0 34px 0 11px;font-weight:750}.partner-content{width:min(1380px,100%);margin-inline:auto;padding:clamp(18px,3vw,38px)}.partner-welcome-card,.partner-stat-grid article,.partner-site-card{border:1px solid var(--border);background:linear-gradient(145deg,#ffffff0e,#ffffff03),#081625c7;box-shadow:0 24px 65px #00000038;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.partner-welcome-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:clamp(22px,4vw,42px);border-radius:20px}.partner-welcome-card h1{margin-top:6px;font-family:Playfair Display,Georgia,serif;font-size:clamp(28px,4vw,46px)}.partner-welcome-card p{margin-top:8px;color:var(--muted)}.site-code-badge{flex:0 0 auto;display:grid;place-items:center;min-width:112px;min-height:82px;padding:12px;border:1px solid rgba(216,182,109,.36);border-radius:16px;background:#d8b66d1f;color:var(--gold-light);font-size:20px;font-weight:900;letter-spacing:1px}.partner-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-top:18px}.partner-stat-grid article{min-width:0;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:5px 10px;padding:19px;border-radius:15px}.partner-stat-grid article>svg{grid-row:span 2;color:var(--gold)}.partner-stat-grid article span{color:#cbd4de;font-weight:700}.partner-stat-grid article strong{color:#fff;font-size:27px}.partner-stat-grid article small{grid-column:1 / -1;margin-top:7px;color:#748291;line-height:1.4}.partner-site-card{margin-top:18px;padding:clamp(20px,3vw,30px);border-radius:18px}.partner-section-title{display:flex;align-items:center;gap:13px}.partner-section-title>svg{color:var(--gold)}.partner-section-title h2{margin-top:2px;font-size:24px}.partner-site-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}.partner-assigned-sites{display:grid;gap:15px;margin-top:22px}.partner-assigned-site{padding:16px;border:1px solid rgba(216,182,109,.17);border-radius:15px;background:#02091057;transition:border-color .2s ease,background .2s ease}.partner-assigned-site.is-selected{border-color:#41c7be80;background:linear-gradient(135deg,rgba(65,199,190,.08),transparent 44%),#0209107a;box-shadow:inset 3px 0 #41c7bec2}.partner-assigned-site__heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.partner-assigned-site__heading span{color:var(--gold);font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.partner-assigned-site__heading h3{margin-top:3px;color:#fff8ea;font-size:20px}.partner-assigned-site__heading button{flex:0 0 auto;min-height:38px;padding:8px 13px;border:1px solid rgba(216,182,109,.3);border-radius:9px;background:#d8b66d1a;color:var(--gold-light);font-weight:850}.partner-assigned-site__heading button:hover{border-color:var(--teal);background:#41c7be1f;color:#a7f3ed}.partner-assigned-site .partner-site-details{margin-top:14px}.partner-site-details>div{min-width:0;padding:14px;border:1px solid rgba(216,182,109,.17);border-radius:12px;background:#02091066}.partner-site-details>div.wide{grid-column:1 / -1}.partner-site-details span{display:block;margin-bottom:5px;color:#82909e;font-size:11px;font-weight:800;text-transform:uppercase}.partner-site-details strong{overflow-wrap:anywhere;color:#f2eee5}.sidebar-scrim{display:none}.visitor-summary-page{display:grid;gap:18px}.partner-page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:clamp(22px,3vw,34px);border:1px solid var(--border);border-radius:20px;background:radial-gradient(circle at 92% 12%,rgba(216,182,109,.15),transparent 28%),#081625d1;box-shadow:0 24px 65px #00000038}.partner-page-heading>div:first-child>span,.visitor-section-heading span{color:var(--gold);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.partner-page-heading h1{margin-top:5px;color:#fff9ed;font-family:Playfair Display,Georgia,serif;font-size:clamp(30px,4vw,44px)}.partner-page-heading p{max-width:780px;margin-top:7px;color:var(--muted);line-height:1.55}.partner-page-heading p strong{color:var(--gold-light)}.visitor-site-pill{flex:0 0 auto;display:flex;align-items:center;gap:8px;padding:12px 15px;border:1px solid rgba(216,182,109,.36);border-radius:999px;background:#d8b66d1a;color:var(--gold-light);font-weight:900}.visitor-summary-form{display:grid;gap:16px}.visitor-form-section{padding:clamp(18px,3vw,28px);border:1px solid var(--border);border-radius:18px;background:#081625c7;box-shadow:0 20px 55px #0000002e}.visitor-section-heading{display:flex;align-items:center;gap:11px;margin-bottom:20px}.visitor-section-heading>svg{color:var(--gold)}.visitor-section-heading h2{margin-top:2px;color:#fff8e9;font-size:22px}.visitor-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.visitor-form-grid.requirement-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.visitor-field{display:grid;align-content:start;gap:7px;min-width:0}.visitor-field.wide{grid-column:1 / -1}.visitor-field>span{color:#dec98f;font-size:11px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.visitor-field input,.visitor-field select,.visitor-field textarea{width:100%;min-width:0;min-height:48px;padding:10px 12px;border:1px solid rgba(216,182,109,.25);border-radius:11px;outline:0;background:#020910ad;color:#fff8eb;transition:.18s ease}.visitor-field textarea{min-height:94px;resize:vertical;font:inherit}.visitor-field input:focus,.visitor-field select:focus,.visitor-field textarea:focus{border-color:var(--teal);background:#0a2d328f;box-shadow:0 0 0 3px #41c7be1f}.visitor-field input[readonly],.visitor-field select:disabled{color:#aeb9c5;cursor:not-allowed;opacity:.82}.visitor-search-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.visitor-search-control button,.visitor-save-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 18px;border:1px solid rgba(255,255,255,.18);border-radius:11px;background:linear-gradient(135deg,#efd890,#c99942);color:#181108;font-weight:900}.visitor-search-control button:disabled,.visitor-save-button:disabled{cursor:wait;opacity:.65}.visitor-client-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.visitor-client-preview>div{position:relative;min-width:0;min-height:72px;padding:12px 14px;border:1px solid rgba(216,182,109,.16);border-radius:11px;background:#0209106b}.visitor-client-preview>div.wide{grid-column:1 / -1}.visitor-client-preview svg{position:absolute;top:12px;right:12px;color:var(--gold)}.visitor-client-preview span{display:block;margin-bottom:5px;color:#82909e;font-size:10px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.visitor-client-preview strong{color:#f4f0e8;overflow-wrap:anywhere}.visitor-icon-input{position:relative}.visitor-icon-input svg{position:absolute;z-index:1;top:50%;left:12px;transform:translateY(-50%);color:var(--gold);pointer-events:none}.visitor-icon-input input{padding-left:38px}.visitor-form-message{padding:13px 15px;border-radius:11px;font-weight:750}.visitor-form-message.success{border:1px solid rgba(74,222,128,.3);background:#1665343d;color:#bbf7d0}.visitor-form-message.error{border:1px solid rgba(248,113,113,.3);background:#7f1d1d40;color:#fecaca}.visitor-report-card{min-width:0;padding:clamp(16px,2.4vw,26px);border:1px solid var(--border);border-radius:18px;background:#081625d1;box-shadow:0 20px 55px #0003}.visitor-report-filters{display:grid;grid-template-columns:minmax(190px,1.15fr) repeat(2,minmax(145px,.75fr)) minmax(220px,1.4fr) auto;align-items:end;gap:12px;margin-bottom:18px}.visitor-report-load{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 17px;border:1px solid rgba(255,255,255,.18);border-radius:11px;background:linear-gradient(135deg,#efd890,#c99942);color:#181108;font-weight:900;white-space:nowrap}.visitor-report-load:disabled{cursor:wait;opacity:.68}.visitor-report-table-wrap{width:100%;overflow-x:auto;border:1px solid rgba(216,182,109,.22);border-radius:13px}.visitor-report-table{width:100%;min-width:1280px;border-collapse:collapse;background:#02091073}.visitor-report-table th{padding:13px 11px;background:linear-gradient(135deg,#ead17e,#b98632);color:#171008;font-size:11px;font-weight:950;letter-spacing:.04em;text-align:left;text-transform:uppercase;white-space:nowrap}.visitor-report-table td{max-width:250px;padding:12px 11px;border-top:1px solid rgba(216,182,109,.13);color:#f4efe4;vertical-align:top}.visitor-report-table tbody tr:nth-child(2n) td{background:#ffffff06}.visitor-report-table tbody tr:hover td{background:#41c7be12}.visitor-report-table td strong,.visitor-report-table td small{display:block;overflow-wrap:anywhere}.visitor-report-table td strong{color:#fff7e7}.visitor-report-table td small{margin-top:4px;color:#92a1af;line-height:1.35}.visitor-report-empty{padding:30px!important;color:#aab6c1!important;text-align:center;font-weight:800}@keyframes partner-spin{to{transform:rotate(360deg)}}.visitor-form-message.warning{border:1px solid rgba(251,191,36,.3);background:#78350f3d;color:#fde68a}.visitor-form-actions{display:flex;justify-content:flex-end}.visitor-save-button{min-width:230px}.sale-report-table{min-width:1720px}.amount-received{color:#7dd3fc!important}.amount-balance{color:#fcd34d!important}.amount-paid{color:#86efac!important}.instalment-loading{display:flex;align-items:center;gap:9px;margin-top:14px;color:var(--gold-light);font-weight:800}.instalment-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}.instalment-summary-grid article{min-width:0;padding:16px;border:1px solid rgba(216,182,109,.2);border-radius:13px;background:#02091080}.instalment-summary-grid span{display:block;margin-bottom:7px;color:#8795a3;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.instalment-summary-grid strong{display:block;overflow-wrap:anywhere;color:#fff7e7;font-size:clamp(18px,2vw,25px)}.instalment-entry-grid{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end}.instalment-entry-grid .visitor-save-button{min-width:180px}.instalment-paid-message{display:flex;align-items:center;gap:10px;padding:15px 17px;border:1px solid rgba(74,222,128,.3);border-radius:12px;background:#1665343d;color:#bbf7d0;font-weight:850}.instalment-history-table{min-width:760px}.instalment-report-filters{display:grid;grid-template-columns:minmax(170px,1fr) minmax(160px,.85fr) repeat(2,minmax(140px,.7fr)) minmax(210px,1.2fr) auto;align-items:end;gap:11px;margin-bottom:14px}.instalment-report-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px;padding:12px 15px;border:1px solid rgba(65,199,190,.25);border-radius:11px;background:#14696721}.instalment-report-summary span{color:#9fb4bd;font-size:11px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.instalment-report-summary strong{color:#7dd3fc;font-size:21px}.instalment-report-table{min-width:1600px}.brokerage-save-action{margin-top:18px}.brokerage-history-table{min-width:980px}.brokerage-report-table{min-width:1850px}.spin{animation:partner-spin .8s linear infinite}.partner-portal{grid-template-columns:242px minmax(0,1fr)}.partner-sidebar{padding:14px 12px}.partner-sidebar__brand{min-height:54px;padding:2px 5px 10px}.partner-sidebar__brand img{width:160px}.partner-sidebar nav{gap:4px;margin-top:12px}.partner-sidebar nav button,.partner-sidebar__logout{min-height:40px;padding:7px 10px;border-radius:9px;font-size:13px}.partner-topbar{min-height:64px;padding:8px clamp(14px,2vw,26px)}.partner-topbar strong{font-size:16px}.partner-content{width:min(1460px,100%);padding:clamp(12px,2vw,22px)}.partner-welcome-card{gap:14px;padding:clamp(16px,2vw,24px);border-radius:15px}.partner-welcome-card h1{margin-top:3px;font-size:clamp(24px,3vw,34px)}.partner-welcome-card p{margin-top:4px;font-size:13px}.site-code-badge{min-width:78px;min-height:54px;padding:8px;border-radius:11px;font-size:15px}.partner-stat-grid{gap:10px;margin-top:12px}.partner-stat-grid article{gap:3px 8px;padding:12px;border-radius:11px}.partner-stat-grid article strong{font-size:21px}.partner-stat-grid article small{margin-top:3px;font-size:10px}.partner-site-card{margin-top:12px;padding:clamp(14px,2vw,20px);border-radius:14px}.partner-section-title{gap:9px}.partner-section-title h2{font-size:19px}.partner-assigned-sites{gap:10px;margin-top:13px}.partner-assigned-site{padding:12px;border-radius:11px}.partner-assigned-site__heading h3{font-size:17px}.partner-assigned-site .partner-site-details,.partner-site-details{gap:8px;margin-top:10px}.partner-site-details>div{padding:9px 10px;border-radius:9px}.partner-site-details span{margin-bottom:3px;font-size:9px}.partner-site-details strong{font-size:13px}.visitor-summary-page{gap:12px}.partner-page-heading{gap:12px;padding:15px 17px;border-radius:14px}.partner-page-heading h1{margin-top:2px;font-size:clamp(25px,3vw,32px)}.partner-page-heading p{margin-top:3px;font-size:12px;line-height:1.4}.partner-page-actions{flex:0 0 auto;display:flex;align-items:center;gap:8px}.partner-page-action{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 12px;border:1px solid rgba(65,199,190,.36);border-radius:9px;background:#41c7be1a;color:#a7f3ed;font-size:12px;font-weight:850;white-space:nowrap}.visitor-site-pill{padding:9px 11px;font-size:12px}.visitor-summary-form{gap:10px}.visitor-form-section{padding:15px 16px;border-radius:13px}.visitor-section-heading{gap:8px;margin-bottom:12px}.visitor-section-heading h2{font-size:18px}.visitor-form-grid{gap:10px}.visitor-field{gap:5px}.visitor-field input,.visitor-field select{min-height:42px;padding:8px 10px;border-radius:9px;font-size:13px}.visitor-search-control button,.visitor-save-button{min-height:42px;padding:8px 14px;border-radius:9px;font-size:13px}.visitor-client-preview{gap:8px;margin-top:10px}.visitor-client-preview>div{min-height:54px;padding:9px 11px;border-radius:9px}.visitor-client-preview svg{top:9px;right:9px}.visitor-report-card{padding:15px;border-radius:13px}.visitor-report-filters{gap:9px;margin-bottom:12px}.visitor-report-load{min-height:42px;padding:8px 13px;border-radius:9px;font-size:12px}.visitor-report-table th{padding:10px 9px;font-size:10px}.visitor-report-table td{padding:9px;font-size:12px}.visitor-report-empty{padding:20px!important}@media(max-width:1050px){.partner-stat-grid,.partner-site-details,.visitor-form-grid.requirement-grid,.instalment-summary-grid,.instalment-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.instalment-report-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.partner-login-page{grid-template-columns:1fr;gap:28px;padding:24px;overflow-y:auto}.partner-login-intro{text-align:center}.partner-brand img,.partner-login-intro>p{margin-inline:auto}.partner-login-intro h1{margin-inline:auto;font-size:clamp(32px,8vw,48px)}.partner-kicker{margin-top:20px}.partner-login-card{max-width:520px;margin-inline:auto}.partner-portal{display:block}.partner-sidebar{position:fixed;left:0;transform:translate(-102%);width:min(290px,86vw);transition:transform .23s ease}.partner-sidebar.is-open{transform:translate(0)}.partner-sidebar__brand button,.partner-menu-button{display:flex}.sidebar-scrim{position:fixed;z-index:15;top:0;right:0;bottom:0;left:0;display:block;border:0;background:#00000094;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}}@media(max-width:680px){.partner-site-switcher{min-width:0;flex:1;margin-left:0}.partner-site-switcher span{display:none}.visitor-report-filters{grid-template-columns:1fr}.instalment-report-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.visitor-report-load{width:100%}.partner-page-heading{flex-direction:column;align-items:stretch}.partner-page-actions{width:100%}.partner-page-action{flex:1}}@media(max-width:560px){.partner-login-page{align-items:start;padding:17px 12px}.partner-login-intro>p,.partner-trust-line{display:none}.partner-brand img{width:180px}.partner-login-intro h1{font-size:29px}.partner-login-card{padding:22px 17px;border-radius:19px}.partner-login-card__heading h2{font-size:38px}.partner-topbar{min-height:58px;padding:7px 10px}.partner-topbar-logout span{display:none}.partner-topbar-logout{width:42px;padding:0}.partner-content{padding:12px}.partner-welcome-card{align-items:flex-start;padding:14px}.site-code-badge{min-width:72px;min-height:52px;font-size:13px}.partner-stat-grid,.partner-site-details{grid-template-columns:1fr}.partner-site-details>div.wide{grid-column:auto}.partner-assigned-site{padding:10px}.partner-assigned-site__heading{align-items:flex-start}.partner-assigned-site__heading button{padding-inline:10px;font-size:12px}.partner-page-heading{align-items:flex-start;padding:13px}.visitor-site-pill{padding:9px 11px}.visitor-form-section{padding:12px}.visitor-form-grid,.visitor-form-grid.requirement-grid,.visitor-client-preview,.instalment-summary-grid,.instalment-entry-grid,.instalment-report-filters{grid-template-columns:1fr}.visitor-field.wide,.visitor-client-preview>div.wide{grid-column:auto}.visitor-search-control{grid-template-columns:1fr}.visitor-save-button{width:100%}}
