:root{--ink:#142e52;--teal:#2563b8;--cream:#f2f6fc;--muted:#677b94;--line:#dce5f1;--terra:#397bd0;--bs-body-color:var(--ink);--bs-body-font-family:ui-rounded,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--bs-primary:#2563b8;--bs-border-color:var(--line)}
body{background:var(--cream);font-size:15px}h1,h2,h3,.serif{font-family:Georgia,"Times New Roman",serif;color:var(--ink)}h1{font-size:clamp(2rem,3vw,2.9rem);letter-spacing:-1px}h2{font-size:1.65rem}a{color:var(--teal)}button,a,input,select,textarea{touch-action:manipulation}.btn{border-radius:12px;padding:.7rem 1.05rem;font-weight:600;font-size:.9rem;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-sm{padding:.45rem .75rem;font-size:.8rem}.btn-primary{--bs-btn-bg:var(--teal);--bs-btn-border-color:var(--teal);--bs-btn-hover-bg:#1c4f98;--bs-btn-hover-border-color:#1c4f98;--bs-btn-active-bg:#183f78;--bs-btn-disabled-bg:#839dbf;--bs-btn-disabled-border-color:#839dbf}.btn-soft{background:#e8f0fc;color:var(--teal);border:1px solid #d4e2f5}.btn-soft:hover{background:#dce9fb;color:var(--ink)}.btn-outline-secondary{--bs-btn-color:var(--teal);--bs-btn-border-color:#c6d6ec;--bs-btn-hover-bg:#e8f0fc;--bs-btn-hover-color:var(--ink);--bs-btn-hover-border-color:#9ab7dd}.btn-link{color:var(--teal);text-decoration:none}.text-muted,.text-secondary{color:var(--muted)!important}.eyebrow{font-size:.66rem;font-weight:700;letter-spacing:2.8px;text-transform:uppercase;color:var(--teal)}.icon{width:21px;height:21px;flex-shrink:0;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}.brand img{width:64px;height:64px;object-fit:contain;border-radius:13px}.brand strong{font-family:Georgia,serif;font-size:1.5rem;letter-spacing:1px}.brand small{font-size:.55rem;letter-spacing:1.6px;display:block;color:var(--muted)}.shell{display:grid;grid-template-columns:242px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:30px 22px;background:#fbfdff;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:20}.sidebar .brand{margin:4px 8px 43px}.nav-caption{font-size:.62rem;letter-spacing:1.9px;color:#7b8da6;margin:0 14px 12px;font-weight:700}.nav-item-btn{display:flex;align-items:center;gap:13px;padding:13px 15px;width:100%;border:0;background:transparent;color:#607590;border-radius:12px;text-align:left;margin-bottom:5px;font-size:.88rem;font-weight:500}.nav-item-btn.active{background:var(--teal);color:#fff}.nav-item-btn:hover:not(.active){background:#eaf1fc}.sidebar-bottom{margin-top:auto}.sidebar-note{border-radius:16px;padding:18px;background:#eaf1fc;margin-bottom:22px}.sidebar-note h3{font-size:1.15rem}.sidebar-note p{font-size:.75rem;color:var(--muted);line-height:1.6}.account-chip{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding-top:20px;width:100%;background:none;border-right:0;border-left:0;border-bottom:0;text-align:left}.avatar{width:36px;height:36px;border-radius:50%;background:#e4edfb;color:var(--teal);display:inline-flex;align-items:center;justify-content:center;font-weight:600}.topbar{height:82px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 42px;background:#fbfdffcc;gap:15px}.breadcrumb-text{font-size:.78rem;color:var(--muted)}.top-actions{display:flex;align-items:center;gap:16px}.connection{font-size:.72rem;display:flex;align-items:center;gap:7px}.connection:before{content:"";width:6px;height:6px;border-radius:50%;background:#478c75}.workspace{padding:34px 42px 55px;max-width:1520px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:25px}.page-heading p{margin:9px 0 0;color:var(--muted);font-size:.9rem}.property-select{max-width:270px;border-radius:10px;font-size:.85rem;background-color:#fbfdff}.panel{background:#ffffff;border:1px solid var(--line);border-radius:20px;padding:23px}.hero-panel{position:relative;overflow:hidden;border-radius:20px;min-height:215px;display:flex;align-items:center;background:var(--ink);margin-bottom:25px}.hero-panel>img{position:absolute;right:0;width:58%;height:100%;object-fit:cover;object-position:50% 55%}.hero-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#142e52 28%,#142e52ba 54%,#142e5200)}.hero-copy{position:relative;z-index:1;padding:30px 32px;max-width:64%;color:#fff}.hero-copy h2{color:#fff;font-size:2rem;line-height:1.2}.hero-copy p{color:#d6e3f6;font-size:.85rem;max-width:330px;line-height:1.7}.hero-copy .eyebrow{color:#b3d0fb;margin-bottom:12px}.hero-copy .btn{background:#f4f8ff;color:var(--ink);font-size:.78rem}.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:30px}.stat{padding:20px;display:flex;gap:15px;align-items:center}.icon-box{display:inline-flex;align-items:center;justify-content:center;background:#e4edfb;width:44px;height:44px;color:var(--teal);border-radius:13px;flex-shrink:0}.icon-box.sand{background:#f4eade;color:#a16c46}.stat strong{font-size:1.6rem;font-weight:600;line-height:1.2;display:block}.stat small{color:var(--muted);font-size:.72rem}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.section-heading h2{margin:0}.section-heading p{font-size:.78rem;color:var(--muted);margin:5px 0 0}.content-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(260px,1fr);gap:26px}.card-row{display:flex;align-items:center;gap:14px;padding:18px 0;border-top:1px solid var(--line)}.card-row:first-child{border-top:0}.card-row .row-main{flex:1;min-width:0}.row-main strong{font-size:.88rem;font-weight:600;display:block}.row-main small{font-size:.72rem;color:var(--muted)}.edit-row{width:100%;background:none;border:0;display:flex;align-items:center;gap:14px;text-align:left;color:var(--ink);padding:0}.card-row .icon-box{width:40px;height:40px}.badge{padding:7px 10px;border-radius:7px;font-size:.65rem;font-weight:500;white-space:nowrap}.badge-published,.badge-active{color:#387357;background:#e8f1e8}.badge-draft,.badge-scheduled{color:#a47432;background:#f8efdc}.badge-expired{color:#677b94;background:#eef0ee}.badge-revoked{color:#ac514c;background:#fae9e4}.badge-scope{background:#edf3fc;color:#58749a}.small-link{font-size:.78rem;padding:4px;color:var(--teal);background:none;border:0;font-weight:600}.unit-tile{padding:14px 0;border-top:1px solid var(--line);display:flex;align-items:center;gap:12px}.unit-tile:first-of-type{border-top:0}.unit-tile button{margin-left:auto}.unit-tile p{margin:0;font-size:.86rem}.unit-tile small{color:var(--muted);font-size:.7rem}.empty-state{text-align:center;padding:45px 20px}.empty-state .icon-box{width:62px;height:62px;margin-bottom:16px}.empty-state h3{font-size:1.5rem}.empty-state p{color:var(--muted);font-size:.85rem;max-width:360px;margin:12px auto 22px}.toolbar{display:flex;gap:12px;align-items:center;margin-bottom:20px}.search-box{position:relative;flex:1}.search-box>.icon{position:absolute;left:13px;top:12px;color:var(--muted);width:18px}.search-box input{padding-left:40px;border-radius:12px;background:#ffffff}.toolbar select{width:auto;max-width:185px}.form-control,.form-select{border-color:#d4e0ef;padding:.7rem .85rem;border-radius:10px;color:var(--ink);font-size:.88rem}.form-control:focus,.form-select:focus{border-color:var(--teal);box-shadow:0 0 0 3px #2563b81f}.form-label{font-size:.78rem;font-weight:600;margin-bottom:7px}.form-text{font-size:.74rem;color:var(--muted)}.form-section{border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:22px}.form-section:last-child{border-bottom:0}.form-section h3{font-size:1.25rem;margin-bottom:17px}.field{margin-bottom:16px}.field:last-child{margin-bottom:0}.form-check-input:checked{background-color:var(--teal);border-color:var(--teal)}.modal-content{border:0;border-radius:20px;background:#fbfdff}.modal-header,.modal-footer{padding:20px 25px}.modal-body{padding:25px}.modal-footer{gap:8px}.notice{position:fixed;bottom:25px;right:25px;max-width:min(440px,90vw);z-index:2000;border-radius:14px;padding:16px 24px;background:var(--ink);color:#fff;box-shadow:0 8px 30px #142e5225}.notice.error{background:#8d3d37}.auth-layout{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-picture{position:relative;background:var(--ink);overflow:hidden}.auth-picture>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.auth-picture:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#142e5200 35%,#142e52d9)}.auth-quote{position:absolute;bottom:9%;left:11%;right:12%;color:#fff;z-index:1}.auth-quote h2{color:#fff;font-size:clamp(2rem,3vw,3.5rem);line-height:1.18}.auth-quote p{color:#dce7f8;line-height:1.7;max-width:340px}.auth-main{padding:40px 8%;display:flex;flex-direction:column}.auth-form{width:100%;max-width:410px;margin:auto;padding:50px 0}.auth-form h1{margin:17px 0}.auth-form>p{color:var(--muted);line-height:1.8;margin-bottom:28px}.auth-form .btn{width:100%;padding:.9rem}.auth-footer{font-size:.7rem;color:var(--muted);display:flex;justify-content:space-between;gap:10px}.auth-divider{display:flex;align-items:center;gap:15px;color:var(--muted);font-size:.7rem;margin:22px 0}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:var(--line)}.step-dots{display:flex;justify-content:center;gap:9px;margin:24px}.step-dots span{width:7px;height:7px;border-radius:50%;background:#c9d9f1}.step-dots .active{background:var(--teal);width:22px;border-radius:5px}.onboarding-icon{width:80px;height:80px;border-radius:24px;background:#e4edfb;display:flex;align-items:center;justify-content:center;color:var(--teal);margin-bottom:28px}.onboarding-icon .icon{width:42px;height:42px}.demo-banner{background:#f5eacf;border:1px solid #ebdcba;color:#806329;border-radius:12px;padding:11px 16px;font-size:.78rem;margin-bottom:23px;display:flex;gap:10px;align-items:center}.demo-banner .btn{margin-left:auto;white-space:nowrap}.stay-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.stay-top{display:flex;align-items:center;gap:12px;margin-bottom:20px}.stay-top .badge{margin-left:auto}.stay-dates{font-size:.78rem;color:var(--muted);padding:14px 0;border-top:1px solid var(--line);margin-bottom:12px}.stay-actions{display:flex;gap:10px;flex-wrap:wrap}.pin-value{font-family:ui-monospace,monospace;font-size:2rem;letter-spacing:5px;color:var(--teal);padding:24px 0;text-align:center}.pin-box{background:#eaf1fc;border-radius:16px;padding:22px;text-align:center;margin:20px 0}.pin-box img{margin:18px auto;display:block;max-width:170px}.preview-card{margin:18px 0;padding:22px;border:1px solid var(--line);background:white;border-radius:16px}.preview-card h3{font-size:1.4rem}.preview-card p,.preview-card li{white-space:pre-wrap;line-height:1.7}.preview-card .warning{padding:14px;background:#fcf0dc;border-radius:10px}.preview-card img,.preview-card video{width:100%;max-height:340px;object-fit:contain;border-radius:12px}.preview-card figcaption{font-size:.75rem;color:var(--muted);margin:8px 0}.list-editor{padding:15px;background:#eaf1fc;border-radius:12px;margin-bottom:12px}.loading-screen{height:100vh;display:grid;place-items:center;color:var(--teal)}.skip-link{position:fixed;top:-70px;left:15px;z-index:3000;background:white;padding:12px}.skip-link:focus{top:10px}.mobile-nav{display:none}.error-inline{color:#a34338;background:#fbeae4;padding:13px;border-radius:10px;font-size:.85rem;margin:15px 0}.footer-note{font-size:.68rem;color:#7b8da6;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin-top:36px}.preview-toolbar{display:flex;gap:12px;margin-bottom:20px}.preview-toolbar select{max-width:210px}button:focus-visible,a:focus-visible{outline:3px solid #397bd0;outline-offset:3px}.text-prewrap{white-space:pre-wrap}.quick-help{font-size:.78rem;line-height:1.7;color:var(--muted)}
@media(min-width:1600px){.workspace{padding-top:45px}.hero-panel{min-height:250px}}
@media(max-width:1150px){.shell{grid-template-columns:205px 1fr}.sidebar{padding:25px 15px}.workspace{padding:25px}.topbar{padding:0 25px}.stat-row{gap:10px}.stat{padding:15px;gap:10px}.stat .icon-box{width:34px;height:34px}.content-grid{grid-template-columns:1fr}.hero-copy{max-width:75%}}
@media(max-width:767px){.shell{display:block}.sidebar{display:none}.topbar{height:70px;padding:0 20px}.workspace{padding:22px 18px 95px}.topbar .breadcrumb-text{font-family:Georgia,serif;font-size:1.15rem;color:var(--ink)}.top-actions{gap:12px}.connection{display:none}.page-heading{align-items:flex-start;flex-wrap:wrap}.page-heading p{font-size:.8rem}.page-heading h1{font-size:2rem}.page-heading>.btn{padding:.6rem .8rem}.stat-row{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:25px}.stat strong{font-size:1.4rem}.hero-panel{min-height:220px}.hero-copy{padding:25px;max-width:85%}.hero-copy h2{font-size:1.7rem}.hero-panel>img{width:100%}.hero-panel:after{background:linear-gradient(90deg,#142e52f0,#142e5240)}.hero-copy p{max-width:230px;font-size:.78rem}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fbfdfff5;backdrop-filter:blur(12px);border-top:1px solid var(--line);z-index:900;justify-content:space-around;padding:10px 5px max(10px,env(safe-area-inset-bottom))}.mobile-nav button{border:0;background:none;color:var(--muted);display:flex;flex-direction:column;align-items:center;gap:4px;font-size:.6rem;padding:2px 8px}.mobile-nav button.active{color:var(--teal);font-weight:700}.auth-layout{display:block}.auth-picture{display:none}.auth-main{min-height:100vh;padding:25px}.auth-form{padding:40px 0}.stay-grid{grid-template-columns:1fr}.panel{padding:19px}.toolbar{flex-wrap:wrap}.toolbar .search-box{min-width:100%}.toolbar select{flex:1;max-width:none}.card-row{gap:10px}.badge-scope{display:none}.card-row .badge{font-size:.6rem}.row-main strong{font-size:.82rem}.modal-dialog{margin:12px}.modal-body{padding:20px}.modal-footer{padding:15px}.footer-note span:last-child{display:none}.demo-banner{flex-wrap:wrap}.notice{bottom:85px}.content-grid{gap:20px}.preview-toolbar{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.password-input{position:relative}.password-input .form-control{padding-right:3.25rem}.password-toggle{position:absolute;right:2px;top:2px;bottom:2px;width:44px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:transparent;color:var(--muted);padding:0;cursor:pointer}.password-toggle:hover{color:var(--teal);background:#e8f0fc}.password-input input::-ms-reveal{display:none}

.cover-photo{display:block;width:100%;max-height:280px;object-fit:cover;border-radius:16px;margin-bottom:16px}.unit-photo{width:56px;height:56px;object-fit:cover;border-radius:12px;flex-shrink:0}

@media(max-width:767px){.mobile-nav button{padding-inline:4px;min-width:0;flex:1}.mobile-nav button .icon{width:20px;height:20px}}

.admin-table{font-size:.82rem;min-width:740px}.admin-table th{font-weight:600}.admin-table td,.admin-table th{padding:15px 10px}.admin-actions{display:flex;flex-wrap:wrap;gap:6px;min-width:240px}.impersonation-banner{position:sticky;top:8px;z-index:30}.shell>div{min-width:0}

.media-thumbnail{position:relative;width:240px;max-width:100%;aspect-ratio:8/5;border-radius:12px;overflow:hidden;background:#dce5f1}.media-thumbnail-content{width:100%;height:100%;display:flex;align-items:center;justify-content:center;text-align:center;padding:0}.media-thumbnail-content>img,.media-thumbnail-content>video{display:block;width:100%;height:100%;object-fit:contain}.media-thumbnail .media-remove{position:absolute;right:8px;bottom:8px;width:40px;height:40px;padding:0;background:#ffffffed;box-shadow:0 2px 8px #142e5233;z-index:1}.media-thumbnail .media-remove:hover{background:#fff;color:#a34338}.media-thumbnail-label{position:absolute;top:8px;left:8px;padding:3px 8px;border-radius:6px;background:#142e52cc;color:#fff;font-size:.7rem;pointer-events:none}
.card-row>.edit-row{flex:1;min-width:0}.card-row>[data-action="card-notifications"]{flex-shrink:0}@media(max-width:575px){.card-row:has(>[data-action="card-notifications"]){flex-wrap:wrap}.card-row>[data-action="card-notifications"]{margin-left:54px!important}}

.schedule-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px}.schedule-time{font-size:1.5rem;color:var(--teal)}
@media(max-width:767px){.mobile-nav{overflow-x:auto;justify-content:flex-start}.mobile-nav button{flex:0 0 auto;min-width:58px}.schedule-grid{grid-template-columns:1fr}}
