/* PlaceTab Property UI v3 | Presentation-only layer, no application state, no external dependencies.
   Scopes: .pt-skin in the four shared layouts.  Existing Dashboard V2 remains authoritative.
   Use normal CSS cascade instead of rewriting classes or altering Livewire DOM. */
:root{
  --pt3-ink:#172945;--pt3-ink-soft:#526785;--pt3-subtle:#8190a5;
  --pt3-primary:#3167ed;--pt3-primary-strong:#174bc0;--pt3-cyan:#11bcd4;
  --pt3-line:#e3eaf4;--pt3-line-strong:#d0deef;--pt3-surface:#fff;
  --pt3-canvas:#f3f7fd;--pt3-light:#eef4ff;--pt3-radius:16px;
  --pt3-elevate:0 4px 18px rgba(24,44,83,.045),0 16px 45px rgba(24,44,83,.025);
  --pt3-font:Inter,"Plus Jakarta Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
}
body.pt-skin{font-family:var(--pt3-font);font-size:14px;line-height:1.53;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.pt-skin :where(button,input,select,textarea){font:inherit}
body.pt-skin :where(button,a,input,select,textarea):focus-visible{outline:2px solid #4b86ff;outline-offset:2px}
body.pt-skin :where(button,a,input,select,textarea):disabled{cursor:not-allowed;opacity:.62}
body.pt-skin :where(svg,img){vertical-align:middle}
body.pt-skin :where(h1,h2,h3,h4){letter-spacing:-.018em}
body.pt-skin :where(.text-xs){line-height:1.45}
body.pt-skin :where(.rounded-lg){border-radius:13px}
body.pt-skin :where(.rounded-xl){border-radius:16px}
body.pt-skin :where(.rounded-2xl){border-radius:20px}

/* Working navigation/dashboard V2: strengthen surfaces but do not alter the Livewire markup. */
body.pt-skin #main-content{background:linear-gradient(180deg,#f0f5fc 0,#f7f9fd 36%,#f6f9fd 100%)!important;color:var(--pt3-ink)}
body.pt-skin #main-content main{min-width:0;max-width:100%}
body.pt-skin #main-content main>div:not(.pt-v2-dashboard):not(.pt-hero){min-width:0}
body.pt-skin nav.fixed.z-30{background:rgba(255,255,255,.97);border-bottom:1px solid #e3eaf4;box-shadow:0 2px 14px rgba(26,50,92,.04);backdrop-filter:blur(12px)}
body.pt-skin nav.fixed.z-30 :where(button,a){transition:background-color .18s ease,color .18s ease}
body.pt-skin nav.fixed.z-30 img{object-fit:contain}
body.pt-skin #sidebar{--pt3-side:#111e31}
body.pt-skin #sidebar :where(a,button){min-height:39px;border-radius:11px;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease}
body.pt-skin #sidebar :where(a,button) svg{width:18px;height:18px;flex-shrink:0;opacity:.91}
body.pt-skin #sidebar :where(a,button):focus-visible{outline:2px solid #86b9ff;outline-offset:1px}
body.pt-skin #sidebar ul{scrollbar-color:#6a7a91 transparent;scrollbar-width:thin}
@media(min-width:1024px){
  body.pt-skin #sidebar>div,body.pt-skin #sidebar>div>div,body.pt-skin #sidebar>div>div>div{background:#111f33!important}
  body.pt-skin #sidebar :where(a,button){color:#d2ddee!important;font-weight:570;font-size:13px}
  body.pt-skin #sidebar :where(a,button):hover{background:#243c5c!important;color:#fff!important}
  body.pt-skin #sidebar :where(a.bg-gray-700,button.bg-gray-700){background:linear-gradient(95deg,#285fe2,#3982f2)!important;box-shadow:0 4px 15px rgba(24,90,209,.24);color:white!important}
  body.pt-skin #sidebar li>ul{border-inline-start:1px solid #38516e;margin-inline-start:11px;padding-inline-start:7px}
}

/* Module surfaces: intentionally exclude main dashboard cards and specialist banking widgets. */
body.pt-skin #main-content main :is(.bg-white.shadow-sm,.bg-white.shadow-md,.bg-white.rounded-lg,.bg-white.rounded-xl,.bg-white.rounded-2xl):not(.pt-v2-stat):not(.pt-v2-action):not(.pt-v2-panel){border:1px solid var(--pt3-line);box-shadow:var(--pt3-elevate)}
body.pt-skin #main-content main>div:not(.pt-v2-dashboard) :is(h1,h2){color:var(--pt3-ink);font-weight:760}
body.pt-skin #main-content main>div:not(.pt-v2-dashboard) h1{letter-spacing:-.035em}
body.pt-skin #main-content main :is(.bg-gray-50,.bg-slate-50):not(.pt-v2-dashboard):not(.pt-v2-stat){border-color:#e8eef7}
body.pt-skin #main-content :is(.border-gray-200,.border-slate-200){border-color:var(--pt3-line)}
body.pt-skin #main-content :is(.shadow-sm,.shadow-md):not(.pt-v2-stat):not(.pt-v2-action):not(.pt-v2-panel){box-shadow:var(--pt3-elevate)}
body.pt-skin #main-content .text-gray-500{color:#70809a}
body.pt-skin #main-content .text-gray-600{color:#526580}
body.pt-skin #main-content :where(.rounded-lg,.rounded-xl).border{border-color:var(--pt3-line)}

/* Controls: style commonly used Tailwind/Jetstream/Livewire controls without changing their names, values, or events. */
body.pt-skin #main-content :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),select,textarea),
body.pt-skin.pt-auth :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),select,textarea){
  max-width:100%;min-height:41px;border-radius:11px;border-color:#d9e3ef;background-color:#fff;color:#243953;
  box-shadow:0 1px 3px rgba(28,55,99,.025);transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease
}
body.pt-skin #main-content :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea):focus,
body.pt-skin.pt-auth :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea):focus{
  border-color:#6296f9;box-shadow:0 0 0 3px rgba(61,124,238,.12)
}
body.pt-skin #main-content :is(input,textarea)::placeholder,body.pt-skin.pt-auth :is(input,textarea)::placeholder{color:#96a3b6;opacity:1}
body.pt-skin #main-content :is(input[type=checkbox],input[type=radio]),body.pt-skin.pt-auth :is(input[type=checkbox],input[type=radio]){accent-color:#326bed}
body.pt-skin #main-content :is(input[type=file]){border:1px dashed #cbd9eb;background:#f8fbff;border-radius:12px;padding:7px;font-size:12px;max-width:100%}
body.pt-skin #main-content input[type=file]::file-selector-button{border:1px solid #cbd8e9;background:#e8f1ff;color:#2450a2;border-radius:9px;padding:7px 12px;margin-inline-end:12px;font-weight:650;cursor:pointer}
body.pt-skin #main-content :is(select,textarea){line-height:1.5}
body.pt-skin #main-content textarea{min-height:88px}
body.pt-skin #main-content :where(label){font-weight:550}
body.pt-skin #main-content :is(input[placeholder*="search" i],input[wire\:model*="search" i],input[wire\:model\.live*="search" i]){background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23748db3' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='10.7' cy='10.7' r='6.7'/%3E%3Cpath d='m15.8 15.8 5.4 5.4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:12px center;background-size:17px 17px;padding-inline-start:38px}
[dir=rtl] body.pt-skin #main-content :is(input[placeholder*="search" i],input[wire\:model*="search" i]){background-position:right 12px center}
body.pt-skin #main-content :is(.bg-gray-50,.bg-slate-50).p-4:has(input,select,button){background:#f8faff;border:1px solid #e5edf8;border-radius:15px;gap:12px}

/* Buttons: preserve danger/warning semantics, disabled state, and Livewire loading state. */
body.pt-skin #main-content :is(button,[role=button],a[class*="bg-indigo"],a[class*="bg-blue"],input[type=submit]){border-radius:11px;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease,transform .15s ease}
body.pt-skin #main-content :is(button[class*="bg-indigo-"],button[class*="bg-blue-"],a[class*="bg-indigo-"],a[class*="bg-blue-"],input[type=submit][class*="bg-indigo-"]){box-shadow:0 4px 11px rgba(42,95,221,.13);font-weight:650}
body.pt-skin #main-content :is(button[class*="bg-indigo-"],button[class*="bg-blue-"],a[class*="bg-indigo-"],a[class*="bg-blue-"]):not(:disabled):hover{box-shadow:0 7px 18px rgba(42,95,221,.2);transform:translateY(-1px)}
body.pt-skin #main-content :is(button[class*="bg-red-"],button[class*="bg-rose-"]){box-shadow:none}
body.pt-skin #main-content button:not(:disabled):active{transform:translateY(1px)}
body.pt-skin #main-content :where(a):not(.pt-v2-action):not(.pt-v2-hero-link):hover{text-underline-offset:3px}
body.pt-skin #main-content [wire\:loading]{transition:opacity .15s ease}

/* Table-heavy workflows: crisp headers, subtle row bands, and horizontal scroll where already present. */
body.pt-skin #main-content :where(.overflow-x-auto){scrollbar-width:thin;scrollbar-color:#bed1ea transparent}
body.pt-skin #main-content table{font-variant-numeric:tabular-nums;max-width:100%;border-collapse:separate;border-spacing:0;font-size:13px}
body.pt-skin #main-content table :is(th,td){vertical-align:middle;border-color:#ebeff6}
body.pt-skin #main-content table th{font-weight:700;font-size:11.5px;text-transform:none;letter-spacing:.018em;color:#5b718e;background:#f3f7fd;white-space:nowrap}
body.pt-skin #main-content table td{color:#364b68}
body.pt-skin #main-content table tbody tr{transition:background-color .13s ease}
body.pt-skin #main-content table tbody tr:hover{background:#f3f7ff}
body.pt-skin #main-content table tbody tr:nth-child(even){background-color:rgba(247,250,255,.65)}
body.pt-skin #main-content table tbody tr:nth-child(even):hover{background-color:#f2f7ff}
body.pt-skin #main-content :is(nav[role=navigation],.pagination){gap:4px}
body.pt-skin #main-content nav[role=navigation] a,body.pt-skin #main-content nav[role=navigation] span{border-radius:8px}

/* Dropdowns/overlays: respect the existing Alpine/Livewire show, focus-trap and z-index mechanics. */
body.pt-skin .jetstream-modal>div:nth-child(2){border:1px solid #dde6f2;border-radius:20px;box-shadow:0 25px 80px rgba(8,24,49,.24)}
body.pt-skin .jetstream-modal .bg-gray-500.opacity-75{background-color:#11253e;opacity:.62}
body.pt-skin .jetstream-modal :where(input,select,textarea){border-radius:10px}
body.pt-skin .jetstream-modal .bg-gray-100{background-color:#f3f7fd}
body.pt-skin .jetstream-modal .text-lg.font-medium{font-size:18px;font-weight:750;letter-spacing:-.025em}
body.pt-skin :where([role=menu],[role=listbox]){border-radius:12px}
body.pt-skin #main-content [x-cloak]{display:none!important}

/* Identity, OTP, login: real Blade form, preserved CSRF/reCAPTCHA/submission/OTP flow. */
body.pt-skin.pt-auth{min-height:100svh;background:linear-gradient(125deg,#e9f1fd 0%,#f6f9ff 48%,#e8f6fa 100%)}
body.pt-skin.pt-auth .pt-auth-stage{display:flex;justify-content:center;align-items:center;gap:0;min-height:100svh;padding:28px 18px;background:transparent!important}
body.pt-skin.pt-auth .pt-auth-form-stack{width:min(100%,510px);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;z-index:1}
body.pt-skin.pt-auth .pt-auth-form-stack>div:first-child{margin:0 0 4px;max-width:100%;text-align:center}
body.pt-skin.pt-auth .pt-auth-form-stack>div:first-child img{height:44px;max-width:180px;object-fit:contain}
body.pt-skin.pt-auth .pt-auth-form-stack>div:first-child a{font-weight:800;color:#1b3560;letter-spacing:-.025em}
body.pt-skin.pt-auth .pt-auth-form-stack>.w-full{width:100%;max-width:500px;margin-top:21px;padding:30px 31px;border-radius:24px!important;background:#fff;border:1px solid #dce7f5;box-shadow:0 24px 70px rgba(20,50,94,.12)!important;animation:pt3-enter .32s ease-out both}
body.pt-skin.pt-auth .pt-auth-form-stack>.w-full label{color:#304460;font-weight:650;font-size:12.5px}
body.pt-skin.pt-auth .pt-auth-form-stack>.w-full :where(input:not([type=checkbox]):not([type=radio]):not([type=hidden])){min-height:46px;background:#fafdff;border-radius:12px}
body.pt-skin.pt-auth .pt-auth-form-stack>.w-full button[type=submit]{min-height:44px;border-radius:11px;font-weight:750}
body.pt-skin.pt-auth .pt-auth-form-stack>.w-full a{color:#285bc5;text-underline-offset:3px}
body.pt-skin.pt-auth .pt-auth-stage .otp-box{min-width:0}
body.pt-skin.pt-auth-login .pt-auth-stage{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(390px,.9fr);max-width:1400px;margin:auto;padding:25px 30px;gap:clamp(22px,4vw,75px)}
body.pt-skin.pt-auth-login .pt-auth-showcase{position:relative;isolation:isolate;min-height:min(770px,calc(100svh - 50px));max-height:850px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;border-radius:32px;padding:30px 34px 26px;color:#fff;background:linear-gradient(152deg,#0c2244 0%,#183e76 56%,#126f92 100%);box-shadow:0 24px 65px rgba(15,40,79,.2)}
body.pt-skin.pt-auth-login .pt-auth-showcase::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 12% 16%,rgba(49,159,251,.33),transparent 47%),radial-gradient(ellipse at 95% 90%,rgba(16,217,199,.26),transparent 50%),linear-gradient(120deg,transparent 40%,rgba(255,255,255,.035));z-index:-1}
body.pt-skin.pt-auth-login .pt-auth-showcase::after{content:"";position:absolute;width:550px;height:550px;bottom:19%;right:-180px;z-index:-1;border:1px solid rgba(211,235,255,.14);border-radius:50%;box-shadow:0 0 0 60px rgba(211,235,255,.025),0 0 0 125px rgba(211,235,255,.022)}
body.pt-skin.pt-auth-login .pt-auth-showcase__top{display:flex;align-items:center;gap:10px;color:#bbd8f7;font-size:11px;letter-spacing:.15em;font-weight:750}
body.pt-skin.pt-auth-login .pt-auth-showcase__marker{width:34px;height:34px;border-radius:10px;background:#56cbf3;color:#0e3562;display:grid;place-items:center;font-size:20px}
body.pt-skin.pt-auth-login .pt-auth-showcase__intro{position:relative;z-index:1;margin-top:35px;max-width:500px}
body.pt-skin.pt-auth-login .pt-auth-showcase__eyebrow{display:inline-block;margin-bottom:13px;color:#9ce7eb;font-size:10px;letter-spacing:.17em;font-weight:800}
body.pt-skin.pt-auth-login .pt-auth-showcase h1{font-size:clamp(33px,3.4vw,52px);font-weight:850;line-height:1.13;letter-spacing:-.048em;max-width:515px;color:#fff;margin:0 0 15px}
body.pt-skin.pt-auth-login .pt-auth-showcase p{font-size:14px;line-height:1.7;color:#d2e4f5;max-width:420px}
body.pt-skin.pt-auth-login .pt-auth-showcase__image{position:relative;z-index:0;display:block;align-self:center;width:100%;height:32%;min-height:175px;max-height:310px;object-fit:cover;object-position:center 60%;border-radius:19px;border:1px solid rgba(255,255,255,.21);mask-image:linear-gradient(0deg,rgba(0,0,0,.85),#000 35%);-webkit-mask-image:linear-gradient(0deg,rgba(0,0,0,.85),#000 35%);box-shadow:0 15px 30px rgba(3,20,49,.22)}
body.pt-skin.pt-auth-login .pt-auth-showcase__features{display:flex;flex-wrap:wrap;gap:7px;position:relative;z-index:1}
body.pt-skin.pt-auth-login .pt-auth-showcase__features span{border:1px solid rgba(217,236,255,.23);background:rgba(255,255,255,.085);color:#d7eefe;padding:8px 11px;border-radius:999px;font-size:10.5px;font-weight:650}
body.pt-skin.pt-auth-login .pt-auth-form-stack{max-width:530px;justify-self:center}
body.pt-skin.pt-auth-login .pt-auth-form-stack>.w-full{max-width:510px;padding:35px 36px}

/* Society guest pages and front-end site: gentle visual harmonization only. */
body.pt-skin.pt-guest{background:#f5f8fd}
body.pt-skin.pt-guest #main-content{background:#fff;border:1px solid var(--pt3-line);border-radius:16px;min-height:55svh}
body.pt-skin.pt-guest footer{border-color:var(--pt3-line)}
body.pt-skin.pt-landing{background:#f8faff}
body.pt-skin.pt-landing :is(input,select,textarea){border-radius:11px}
body.pt-skin.pt-landing button{border-radius:11px}
body.pt-skin.pt-landing :is(.shadow-lg,.shadow-md){box-shadow:var(--pt3-elevate)}

/* Explicit dark palette: maintain readability (don't repaint receipts/print templates). */
html.dark body.pt-skin{--pt3-ink:#e9f1fd;--pt3-ink-soft:#b3c3d9;--pt3-line:#33475f;--pt3-canvas:#111b2b;--pt3-surface:#1a2a3e;--pt3-elevate:0 9px 30px rgba(0,0,0,.15)}
html.dark body.pt-skin #main-content{background:linear-gradient(180deg,#101c2e,#121d2b)!important;color:#e8f0ff}
html.dark body.pt-skin nav.fixed.z-30{background:#18263a;border-color:#2e4059}
html.dark body.pt-skin #main-content main :is(.bg-white.shadow-sm,.bg-white.shadow-md,.bg-white.rounded-lg,.bg-white.rounded-xl,.bg-white.rounded-2xl):not(.pt-v2-stat):not(.pt-v2-action):not(.pt-v2-panel){background-color:#1c2c42!important;border-color:#334a67;color:#e9f1fc}
html.dark body.pt-skin #main-content main>div:not(.pt-v2-dashboard) :is(h1,h2){color:#eff6ff}
html.dark body.pt-skin #main-content :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){background-color:#202f43;color:#ebf2fd;border-color:#3b506e}
html.dark body.pt-skin #main-content .text-gray-500{color:#a6bad5}
html.dark body.pt-skin #main-content .text-gray-600{color:#bfcee2}
html.dark body.pt-skin #main-content table th{background:#263650;color:#cedaf0}
html.dark body.pt-skin #main-content table td{color:#e5eefc}
html.dark body.pt-skin #main-content table tbody tr:nth-child(even){background:#1d2a3c}
html.dark body.pt-skin #main-content table tbody tr:hover{background:#253953}
html.dark body.pt-skin #main-content :is(.bg-gray-50,.bg-slate-50).p-4:has(input,select,button){background:#1a2c43;border-color:#324862}
html.dark body.pt-skin.pt-auth{background:#101d30}
html.dark body.pt-skin.pt-auth .pt-auth-form-stack>.w-full{background:#1c2d44;border-color:#344862}
html.dark body.pt-skin.pt-auth .pt-auth-form-stack>.w-full label{color:#d5e3f5}
html.dark body.pt-skin.pt-auth .pt-auth-form-stack>.w-full :where(input:not([type=checkbox]):not([type=radio]):not([type=hidden])){background:#213550;color:#e8f0ff;border-color:#405577}
html.dark body.pt-skin.pt-auth .pt-auth-form-stack>div:first-child a{color:#e5efff}
html.dark body.pt-skin.pt-guest{background:#101c2b}
html.dark body.pt-skin.pt-guest #main-content{background:#1a2b41;border-color:#31465e}

/* Small devices: preserve existing Livewire/mobile sidebar behavior, never hide functional controls. */
@media(max-width:1000px){
  body.pt-skin.pt-auth-login .pt-auth-stage{grid-template-columns:minmax(0,1fr);gap:0;padding:38px 18px}
  body.pt-skin.pt-auth-login .pt-auth-showcase{display:none}
  body.pt-skin.pt-auth-login .pt-auth-form-stack{width:min(100%,520px)}
  body.pt-skin #main-content main{overflow-wrap:break-word}
}
@media(max-width:640px){
  body.pt-skin #main-content main :is(.p-6,.px-6){padding-inline:15px}
  body.pt-skin #main-content main :where(table){font-size:12px}
  body.pt-skin #main-content main :where(.overflow-x-auto){-webkit-overflow-scrolling:touch}
  body.pt-skin #main-content :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){font-size:16px}
  body.pt-skin #main-content button{max-width:100%}
  body.pt-skin .jetstream-modal{padding-inline:10px}
  body.pt-skin .jetstream-modal>div:nth-child(2){border-radius:16px}
  body.pt-skin.pt-auth .pt-auth-stage{padding:28px 12px}
  body.pt-skin.pt-auth .pt-auth-form-stack>.w-full,body.pt-skin.pt-auth-login .pt-auth-form-stack>.w-full{padding:24px 20px;border-radius:19px!important;margin-top:16px}
  body.pt-skin.pt-guest #main-content{border-radius:0}
}
@keyframes pt3-enter{from{opacity:.68;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){body.pt-skin *,body.pt-skin *::before,body.pt-skin *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media print{body.pt-skin,body.pt-skin #main-content{background:#fff!important;color:#000!important}body.pt-skin #sidebar,body.pt-skin nav.fixed.z-30,body.pt-skin .pt-auth-showcase{display:none!important}body.pt-skin #main-content{margin:0!important;overflow:visible!important}body.pt-skin #main-content table{border-collapse:collapse}}
