/* Shared appearance */
:root{--surface:#fffefa;--surface-soft:#f3f7f1;--surface-raised:#fff;--text-main:#263d36;--text-soft:#657970;--border-soft:#dce5dd;--focus:#4c8a72;--shadow-soft:0 10px 32px #203d2910;color-scheme:light}
html[data-theme=dark]{--surface:#1b302b;--surface-soft:#233c35;--surface-raised:#28473e;--text-main:#e4efe8;--text-soft:#afc5b9;--border-soft:#38574b;--focus:#a7d7ba;--shadow-soft:0 10px 32px #0003;color-scheme:dark}
body{--ink:var(--text-main);--muted:var(--text-soft);--line:var(--border-soft);--accent:#39785f;color:var(--text-main);background:radial-gradient(ellipse at 4% 4%,#e8f1e6a8,transparent 56%) fixed,radial-gradient(ellipse at 94% 4%,#f4ecdaa8,transparent 48%) fixed,url('/property-neighbourhood.svg?v=1') right bottom / min(1180px,100vw) auto fixed no-repeat,#f5f7f3!important}
body,button,input,select,textarea{font-family:'DM Sans','Segoe UI',sans-serif}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border-soft);border-radius:30px;background:var(--surface);color:var(--text-main);padding:9px 13px;min-height:40px;cursor:pointer;font-size:12px;font-weight:600;white-space:nowrap;box-shadow:0 3px 10px #23462d06}
.theme-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.theme-sun{display:none}html[data-theme=dark] .theme-sun{display:block}html[data-theme=dark] .theme-moon{display:none}
.role-selector{max-width:420px}.business-tenant-fields{padding:22px 22px 0;border:1px solid #d9e6dc;border-radius:16px;background:linear-gradient(120deg,#eef5ec,#f8f2df);margin-bottom:22px}
.section-heading{display:flex;align-items:center;gap:14px;margin-bottom:24px}.section-heading .hint{margin:5px 0 0}
.portal-access-setup{margin-top:24px}.field label{font-size:13px}.hint,.permission-note{font-size:12px;line-height:1.55}.panel-head p{font-size:12px}.role-selector .select-trigger{font-size:14px;min-height:48px}
.panel,.stat,.record-card,.plan-stage{box-shadow:var(--shadow-soft)}.panel,.stat,.record-card{background:var(--surface)}
.btn,.nav-item,.theme-toggle,.select-choice,.fixture-choice{transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}
.btn:focus-visible,.theme-toggle:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
@view-transition{navigation:auto}
::view-transition-old(root){animation:ez-page-out 140ms ease both}
::view-transition-new(root){animation:ez-page-in 220ms cubic-bezier(.2,.65,.3,1) both}
@keyframes ez-page-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
@keyframes ez-page-out{to{opacity:0}}
@supports not (view-transition-name:root){main{animation:ez-page-in 180ms ease-out}}
html[data-theme=dark] body{--accent:#a2d4b6;--mint:#294b3c;--sky:#294655;--lav:#45425c;--gold:#e3c883;background:radial-gradient(ellipse at 4% 4%,#23473855,transparent 56%) fixed,radial-gradient(ellipse at 94% 4%,#45452e22,transparent 48%) fixed,url('/property-neighbourhood-night.svg?v=1') right bottom / min(1180px,100vw) auto fixed no-repeat,#142721!important}
html[data-theme=dark] :is(.panel,.stat,.record-card,.sidebar,.topbar,.tenant-header,.tenant-nav,.signup-header,.public-header,.auth,.registration-form,.registration-rail,.plan-stage,.plan-inspector,.layout-document,.select-menu,.calendar-popover,dialog,.modal-card,.tenant-card,.document-card,.listing-card){background:var(--surface)!important;color:var(--text-main);border-color:var(--border-soft)}
html[data-theme=dark] :is(.btn,input,select,textarea,.select-trigger,.select-choice,.fixture-choice,.quick,.searchbar,.group-card,.account-scope,.workspace,.permission-table th,th,.date-chip,.plan-stage-head,.settings-banner,.tenant-summary,.portal-access-setup,.role-selector,.calendar-head,.calendar-grid button){background:var(--surface-soft)!important;color:var(--text-main)!important;border-color:var(--border-soft)!important}
html[data-theme=dark] :is(.hero,.auth-art,.business-tenant-fields,.record-selection,.utility-service-fields,.utility-provider-card,.tenancy-term-panel,.deposit-summary,.rent-summary,.account-scope,.access-boundaries>div,.rail-note,.review-summary,.rent-setup,.deposit-setup){background:linear-gradient(130deg,#284738,#233d3b)!important;color:var(--text-main);border-color:var(--border-soft)}
html[data-theme=dark] :is(.hint,.subtitle,.muted,.permission-note,.panel-head p,.nav-label,.nav-item,.stat-head,.stat-note,.profile small,.workspace small,.registration-rail p,.auth-form p,.field small,footer,.tenant-footer){color:var(--text-soft)!important}
html[data-theme=dark] :is(h1,h2,h3,h4,strong,summary,label,.stat-value,.section-heading,.plan-stage-head){color:var(--text-main)}
html[data-theme=dark] :is(.btn.primary,.nav-item.selected,.tenant-nav a.selected,.select-choice[aria-selected=true]){background:#426c55!important;color:#f0f9ee!important;border-color:#63886c!important}
html[data-theme=dark] :is(.btn:hover,.quick:hover,.select-choice:hover,.fixture-choice:hover){background:var(--surface-raised)!important}
html[data-theme=dark] :is(.badge,.stat-icon,.account-boundaries,.avatar){background:#344f43;color:#cee8d6}
html[data-theme=dark] :is(.badge.warn,.stat-icon.peach){background:#55462c;color:#f4dbab}
html[data-theme=dark] :is(.badge.lav,.stat-icon.lav){background:#46405b;color:#e0d5f5}
html[data-theme=dark] :is(.badge.sky,.stat-icon.sky){background:#294657;color:#c3dce9}
html[data-theme=dark] :is(.notice.success,.notice.error){background:#293f36;color:#e0eee2;border-color:#61846a}
html[data-theme=dark] :is(td,th,details,hr,.form-footer,.group-card){border-color:var(--border-soft)!important}
html[data-theme=dark] :is(.select-search,input:focus,textarea:focus){background:#254137!important;color:var(--text-main)!important;box-shadow:0 0 0 3px #9fd1b321}
html[data-theme=dark] ::placeholder{color:#92ab9c}
html[data-theme=dark] .brand img,html[data-theme=dark] .tenant-brand img,html[data-theme=dark] .signup-logo img,html[data-theme=dark] .auth-form>img{background:white;border-radius:12px;padding:4px}
html[data-theme=dark] .plan-canvas-wrap{background:#dce5db}
html[data-theme=dark] .select-choice:disabled{color:#849a8e!important}
html[data-theme=dark] .auth-art p{color:var(--text-soft)}
@media(max-width:600px){.theme-toggle{padding:9px;flex-shrink:0}.theme-toggle span{display:none}.top-actions .avatar{display:none}.top-actions .sky-select{max-width:145px}.tenant-account>span:not(.avatar){display:none}.business-tenant-fields{padding:16px 16px 0}.role-selector{max-width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}::view-transition-old(root),::view-transition-new(root){animation:none!important}}
@media print{body{background:white!important}html[data-theme=dark] body{color:#222!important}html[data-theme=dark] :is(.panel,.layout-document){background:white!important;color:#222!important}.theme-toggle{display:none!important}}

html[data-theme=dark] .ring:before{background:var(--surface)}html[data-theme=dark] .hero p,html[data-theme=dark] .hero .eyebrow,html[data-theme=dark] .chart-legend,html[data-theme=dark] .legend{color:var(--text-soft)}

html[data-theme=dark] :is(.ez-calendar,.clause-editor,.token-button,.agreement-summary>div,.compose-tabs button,.agreement-field textarea[readonly],.deposit-input-row,.deposit-stat,.tax-tenant-list a,.tax-status-grid a,.billing-table tr,.unit-chips a,.person-drag,.person-drag button,.property-panel-head,.unit-place,.unit-place.partition,.partition-parent,.review-person,.group-drop,.group-drop.new-group,.sublease-authority,.group-admin-fields,.unit-address-area,.date-square,.utility-note,.service-types a,.address-picker,.rent-timeline span,.rent-stats section,.rent-system,.rent-invoice-meta,.rent-receipts,.signup-choice,.step-note,.document-guidance,.capture-preview,.video-card,.document-upload,.privacy-note,.camera-dialog,.review-note,.utility-editor,.provider-preview,.usage-output,.access-workspace details,.access-workspace summary,.permission-table tr:nth-child(even)){background:var(--surface-soft)!important;color:var(--text-main)!important;border-color:var(--border-soft)!important}
html[data-theme=dark] :is(.agreement-banner,.tenancy-term,.deposit-banner,.tax-hero,.ownership-banner,.partition-setup,.sublease-flow,.balance-card,.rent-banner,.choice-picture,.commercial-picture){background:linear-gradient(130deg,#294637,#33453a)!important;color:var(--text-main)!important;border-color:var(--border-soft)!important}
html[data-theme=dark] :is(.paper-preview,.paper-mini,.legal-document){background:#fff!important;color:#283831!important}html[data-theme=dark] :is(.paper-preview,.paper-mini,.legal-document) :is(h1,h2,h3,h4,strong,p,label,span,td,th){color:#283831!important}
html[data-theme=dark] .provider-brand,html[data-theme=dark] .select-choice-logo{background:#fff;border-radius:8px;padding:3px}
html[data-theme=dark] .ez-calendar :is(button,select,input){color:var(--text-main);background:var(--surface-soft)}

[hidden]{display:none!important}
