:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f2f7f8;color:#102131;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #f2f7f8;--paper: #fbfefd;--panel: #ffffff;--panel-strong: #f3f9f9;--border: #cfdee2;--border-strong: #96afb6;--text: #102131;--muted: #5e7078;--primary: #0aa8b2;--primary-strong: #087b89;--primary-soft: #edfafa;--accent: #65d8dc;--accent-soft: #e4fbfc;--navy: #031d47;--ink: #07192c;--danger: #b42318;--danger-soft: #fee4e2;--warning: #ad5c00;--warning-soft: #fff1d6;--warm: #c9862e;--blue: #06386f;--shadow: 0 18px 44px rgb(20 45 56 / 9%);--shadow-soft: 0 8px 22px rgb(20 45 56 / 6%)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,#f5f9fa,#f1f7f8)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}.app-shell{display:grid;grid-template-columns:286px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:14px;border-right:1px solid #c9d8dc;background:linear-gradient(180deg,#fff,#f7fbfb 54%,#eff7f8)}.sidebar-inner{display:flex;flex-direction:column;gap:22px;height:100%;padding:14px 10px}.sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.sidebar-head .brand{flex:1 1 auto}.sidebar-menu-toggle{display:none;flex:0 0 auto;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border:1px solid var(--border-strong);border-radius:6px;color:var(--ink);background:#fff;cursor:pointer}.sidebar-menu-toggle:hover{border-color:#0aa8b4;color:var(--primary-strong)}.brand{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:64px;padding:10px 10px 14px 12px;border:0;border-bottom:1px solid var(--border);color:inherit;background:transparent;text-align:left;cursor:pointer}.brand:hover{background:#f8fcfc}.brand:focus-visible{outline:2px solid rgba(26,190,199,.35);outline-offset:3px;border-radius:6px}.brand-mark{display:grid;place-items:center;width:48px;height:48px;border:0;border-radius:0;background:transparent}.brand-mark img{display:block;width:100%;height:100%;object-fit:contain}.brand-copy{min-width:0}.brand strong,.brand span{display:block}.brand strong{font-size:1.08rem;color:var(--navy);letter-spacing:0;line-height:1.15}.brand span{color:var(--muted);font-size:.82rem}.brand-kicker{margin-bottom:2px;color:var(--primary-strong)!important;font-size:.67rem!important;font-weight:800;text-transform:uppercase}.navigation{display:flex;flex-direction:column;gap:5px}.nav-item{position:relative;display:flex;align-items:center;gap:10px;width:100%;min-height:40px;padding:0 12px 0 14px;border:1px solid transparent;border-radius:6px;color:#526870;background:transparent;text-align:left;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.nav-item:hover{border-color:#cadcde;color:var(--text);background:#fff}.nav-item.is-active{border-color:#aee6e9;color:var(--navy);background:#fff;box-shadow:inset 3px 0 0 var(--primary),var(--shadow-soft)}.nav-item.is-active svg{color:var(--primary)}.sidebar-footer{margin-top:auto;padding:12px 12px 8px;border-top:1px solid var(--border)}.sidebar-footer span,.sidebar-footer strong{display:block}.sidebar-footer span{color:var(--muted);font-size:.76rem}.sidebar-footer strong{margin-top:2px;color:var(--navy);font-size:.88rem}.sidebar-logout{display:inline-flex;align-items:center;gap:7px;margin-top:14px;color:var(--muted);font-size:.8rem;text-decoration:none}.sidebar-logout:hover{color:var(--navy)}.main-area{min-width:0;padding:34px 28px 36px}.page-stack{display:flex;flex-direction:column;gap:18px;max-width:1320px;margin:0 auto}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;min-height:64px}.page-header h1{margin:4px 0 0;font-size:1.85rem;line-height:1.15}.eyebrow{color:var(--primary-strong);font-size:.78rem;font-weight:700;text-transform:uppercase}.page-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.building-board{display:grid;grid-template-columns:minmax(260px,1.1fr) minmax(420px,1.4fr);gap:14px;align-items:stretch;border:1px solid #c4d8dd;border-radius:6px;background:linear-gradient(90deg,#fff,#f9fdfd 48%,#eefafa);box-shadow:var(--shadow-soft)}.building-board-main{padding:18px;border-right:1px solid #d6e5e8}.building-board-label{display:block;color:var(--primary-strong);font-size:.74rem;font-weight:800;text-transform:uppercase}.building-board h2{margin:5px 0 8px;color:var(--ink);font-size:1.35rem;line-height:1.2}.building-board p{display:flex;align-items:center;gap:6px;margin:0;color:var(--muted);font-size:.9rem}.building-board p svg{color:var(--primary-strong)}.building-board-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;padding:10px}.building-board-stats div{display:grid;gap:5px;align-content:center;min-height:112px;padding:12px;border-left:1px solid #d6e5e8}.building-board-stats svg{color:var(--primary-strong)}.building-board-stats span{color:var(--muted);font-size:.76rem;font-weight:800;text-transform:uppercase}.building-board-stats strong{color:var(--ink);font-size:1rem;line-height:1.25}.summary-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:14px}.summary-card,.content-panel,.action-panel{border:1px solid var(--border);border-radius:6px;background:var(--panel)}.summary-card{display:flex;flex-direction:column;gap:10px;min-height:138px;overflow:hidden;padding:17px 16px 16px;background:linear-gradient(180deg,#fff,#fbfefd);box-shadow:var(--shadow-soft)}.summary-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:24px;color:var(--muted);font-size:.86rem}.summary-topline svg{width:30px;height:30px;padding:6px;border:1px solid #d5e6e9;border-radius:6px;color:var(--primary-strong);background:#f5fbfb}.summary-card strong{color:var(--ink);font-size:1.48rem;line-height:1.18}.summary-card small{color:var(--muted);line-height:1.4}.summary-positive{border-color:#a9d9ce}.summary-warning{border-color:#efcc8f;background:#fffdf7}.content-panel{padding:16px;background:linear-gradient(180deg,#fff,#fbfefd);box-shadow:var(--shadow-soft)}.mobile-quick-actions{display:none}.compact-panel{padding:14px 16px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.section-heading h2,.action-panel h2{margin:0;color:var(--ink);font-size:1rem}.section-heading span,.action-panel span,.snapshot-note span{color:var(--muted);font-size:.88rem}.table-wrap{width:100%;overflow-x:auto;border:1px solid var(--border);border-radius:6px;background:#fff}table{width:100%;min-width:760px;border-collapse:collapse}th,td{padding:12px 14px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top;font-size:.92rem}th{color:#4f6670;background:#f2f8f8;font-size:.78rem;font-weight:800;text-transform:uppercase}tbody tr:last-child td{border-bottom:0}tbody tr{transition:background-color .14s ease}tbody tr:hover td{background:#fbfefd}tbody td:first-child{box-shadow:inset 0 0 0 transparent}tbody tr:hover td:first-child{box-shadow:inset 3px 0 #65d8dc}td strong,.cell-subtitle{display:block}.cell-subtitle{margin-top:3px;color:var(--muted);font-size:.82rem}.actions-column{width:112px}.row-actions{display:flex;align-items:center;gap:4px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:0 14px;border:1px solid var(--border-strong);border-radius:6px;color:#183141;background:#fff;box-shadow:inset 0 -1px #07192c14;font-weight:700;line-height:1;white-space:nowrap;transition:background-color .14s ease,border-color .14s ease,color .14s ease}.button:hover{border-color:#7fa1aa;background:#f8fcfc}.button-primary{border-color:#79d6db;border-bottom-color:#1baeb8;color:#082e43;background:linear-gradient(180deg,#f2ffff,#dff8fa)}.button-primary:hover{border-color:#2fc0c9;color:#062b46;background:linear-gradient(180deg,#fff,#cff2f5)}.button-primary:active{border-color:#22b9c1;background:#c2edf0}.button-danger{border-color:var(--danger);color:#fff;background:var(--danger)}.button-danger:hover{border-color:#8d1d15;background:#8d1d15}.button-ghost{min-width:36px;border-color:transparent;color:var(--muted);box-shadow:none;background:transparent}.button-ghost:hover{border-color:var(--border);color:var(--text);background:#fff}.button-icon-only{width:38px;padding:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;padding:20px;background:#1d252c6b}.modal{width:min(720px,100%);max-height:min(760px,calc(100vh - 40px));overflow:auto;border:1px solid var(--border);border-radius:6px;background:linear-gradient(180deg,#fff,#fbfefd);box-shadow:var(--shadow)}.modal-header{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;border-bottom:1px solid var(--border);background:#fff}.modal-header h2{margin:0;color:var(--ink);font-size:1.1rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field span{color:var(--muted);font-size:.82rem;font-weight:800}input,select,textarea{width:100%;min-height:40px;border:1px solid var(--border-strong);border-radius:6px;color:var(--text);background:#fffefe;box-shadow:inset 0 1px #07192c0a}input,select{padding:0 10px}textarea{min-height:86px;padding:10px;resize:vertical}input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid rgb(101 216 220 / 48%);outline-offset:2px}.toggle-field{display:flex;align-items:center;gap:8px;min-height:40px}.toggle-field input{width:18px;min-height:18px}.form-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.form-error,.form-success{grid-column:1 / -1;margin:0;padding:10px 12px;border-radius:6px;font-size:.9rem;font-weight:700}.form-error{border:1px solid #f6b3ad;color:var(--danger);background:var(--danger-soft)}.form-hint{color:var(--muted);font-size:.76rem;line-height:1.35}.form-success{border:1px solid #a9d9ce;color:var(--navy);background:var(--primary-soft)}.inline-form{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.inline-form .field{min-width:min(260px,100%)}.filter-bar{display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(150px,1fr)) auto;gap:12px;align-items:end;margin-bottom:16px}.filter-count{display:flex;flex-direction:column;justify-content:center;min-width:118px;min-height:40px;padding:7px 10px;border:1px solid var(--border);border-radius:6px;background:#f7fbfb;box-shadow:inset 3px 0 #c8ecee}.filter-count strong,.filter-count span{display:block}.filter-count strong{font-size:.92rem}.filter-count span{color:var(--muted);font-size:.78rem}.snapshot-note{display:flex;align-items:baseline;gap:6px;min-height:40px;padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:#f7fbfb}.status-pill{display:inline-flex;align-items:center;min-height:26px;padding:0 8px;border-radius:999px;border:1px solid transparent;font-size:.8rem;font-weight:800}.selected-row td{background:#effafa}.report-summary-grid{grid-template-columns:repeat(4,minmax(160px,1fr))}.maintenance-summary-grid{grid-template-columns:repeat(3,minmax(160px,1fr))}.document-summary-grid{grid-template-columns:repeat(4,minmax(160px,1fr))}.assembly-workbench{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.55fr);gap:18px;align-items:start}.assembly-list{padding:10px}.assembly-detail{display:grid;gap:18px}.assembly-note{padding:12px 14px;border-left:3px solid #37bfc8;background:#f2fbfc}.assembly-note strong{color:var(--ink)}.assembly-note p{margin:6px 0 0;color:var(--muted);white-space:pre-wrap}.assembly-status-held,.decision-status-completed{background:#edf8f4;color:#176453}.assembly-status-scheduled,.decision-status-open{background:#eef9fa;color:#176579}.assembly-status-cancelled,.decision-status-cancelled{background:#f4f5f5;color:#68777c}.document-filter-bar{grid-template-columns:minmax(240px,1.4fr) repeat(2,minmax(150px,.8fr)) auto}.document-type{display:inline-flex;align-items:center;min-height:26px;padding:3px 8px;border:1px solid #c8e1e5;border-radius:4px;background:#f2fafb;color:#176579;font-size:.78rem;font-weight:700}.document-type-quote,.document-type-contract,.document-type-minutes{background:#f7f8ee;border-color:#dde3bb;color:#5c661e}.document-type-receipt,.document-type-invoice{background:#edf8f4;border-color:#bee3d4;color:#176453}.document-source{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:.84rem;white-space:nowrap}.document-connection{max-width:260px}.file-selection{color:var(--muted);font-size:.76rem;line-height:1.35}.maintenance-priority{display:inline-flex;align-items:center;min-height:26px;font-size:.8rem;font-weight:800}.priority-low,.priority-normal{color:#49636b}.priority-high{color:#a35900}.priority-urgent{color:#b3293a}.maintenance-status-reported,.maintenance-status-inProgress{color:#0c6774;border-color:#a9dfe4;background:#eaf8f9}.maintenance-status-scheduled{color:#52616c;border-color:#d5dfe1;background:#f5f8f8}.maintenance-status-resolved{color:#216a50;border-color:#b8dfcf;background:#eff9f4}.maintenance-status-cancelled{color:#6c5d63;border-color:#dfd6d9;background:#faf7f8}.maintenance-attention-panel .section-heading{align-items:center}.maintenance-attention-panel .section-heading>svg{color:var(--primary-strong)}.maintenance-attention-list{display:grid;border-top:1px solid var(--border)}.maintenance-attention-list>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--border)}.maintenance-attention-list>div:last-child{border-bottom:0}.maintenance-attention-list strong,.maintenance-attention-list span{display:block}.maintenance-attention-list span{color:var(--muted);font-size:.84rem}.maintenance-attention-list>div>span{flex:0 0 auto;color:#50666d;font-weight:700}.project-workbench{display:grid;grid-template-columns:minmax(440px,.95fr) minmax(520px,1.05fr);gap:14px;align-items:start}.project-workbench>.content-panel,.project-detail-panel,.project-detail-grid,.project-detail-grid section{min-width:0}.project-filter-bar{grid-template-columns:minmax(0,1fr) minmax(150px,180px)}.project-filter-bar .field{min-width:0}.project-filter-bar .filter-count{grid-column:1 / -1;flex-direction:row;align-items:center;justify-content:flex-start;gap:6px;width:fit-content;min-width:0;min-height:32px;padding:5px 9px;box-shadow:none}.project-empty-panel{display:flex;min-height:320px}.project-empty-panel .empty-state{width:100%;min-height:286px;padding:30px}.project-list{display:grid;gap:10px}.project-list-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px 12px;min-width:0;width:100%;padding:12px;border:1px solid var(--border);border-radius:6px;color:var(--text);background:#fff;text-align:left;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.project-list-item:hover,.project-list-item.is-selected{border-color:#a8e1df;background:#f2fbfb}.project-list-item.is-selected{box-shadow:inset 3px 0 0 var(--primary)}.project-list-main{display:grid;gap:4px;min-width:0}.project-list-main strong,.project-list-main span{overflow-wrap:anywhere}.project-list-main span{color:var(--muted);font-size:.86rem}.project-list-item .status-pill{justify-self:end;white-space:nowrap}.project-list-meta{display:flex;grid-column:1 / -1;flex-wrap:wrap;gap:7px}.project-list-meta span{max-width:100%;padding:3px 7px;border:1px solid #d6e7e9;border-radius:999px;color:var(--muted);background:#f8fcfc;font-size:.75rem;font-weight:700;overflow-wrap:anywhere}.announcement-filter-bar{grid-template-columns:minmax(240px,1.5fr) repeat(2,minmax(150px,.8fr)) auto}.project-detail-panel{display:flex;flex-direction:column;gap:16px}.project-snapshot{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.project-snapshot div{display:grid;gap:5px;min-height:88px;padding:12px;border:1px solid var(--border);border-radius:6px;background:#f8fcfc}.project-snapshot svg{color:var(--primary-strong)}.project-snapshot span{color:var(--muted);font-size:.76rem;font-weight:800;text-transform:uppercase}.project-snapshot strong{color:var(--ink);font-size:1.05rem}.project-detail-grid{display:grid;gap:18px}.settings-form{max-width:920px}.subscription-panel{max-width:1120px}.subscription-panel>.section-heading>svg{color:var(--primary-strong)}.subscription-details{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.subscription-details>div{min-height:76px;padding:12px;border:1px solid var(--border);border-radius:6px;background:#f7fbfb}.subscription-details span:not(.status-pill),.subscription-details strong{display:block}.subscription-details span:not(.status-pill){margin-bottom:7px;color:var(--muted);font-size:.76rem;font-weight:800;text-transform:uppercase}.subscription-details strong{color:var(--ink);font-size:.92rem}.subscription-status-active{color:#176453;background:#edf8f4;border-color:#b9e1d4}.subscription-status-trial{color:#155d74;background:#eaf8fb;border-color:#b7dfe7}.subscription-status-grace_period{color:#855000;background:#fff7e8;border-color:#efcc8f}.subscription-status-expired,.subscription-status-suspended,.subscription-status-cancelled{color:#8c3128;background:#fff1ef;border-color:#f0c6c0}.subscription-note{margin:14px 0 0;color:var(--muted);font-size:.86rem}.hosting-strip{display:grid;grid-template-columns:auto minmax(220px,1fr) auto auto;gap:14px;align-items:center;padding:14px 16px;border:1px solid #b9dfe2;border-radius:6px;background:#f4fbfb}.hosting-strip>svg{color:var(--primary-strong)}.hosting-strip div span,.hosting-strip div strong{display:block}.hosting-strip div span{color:var(--muted);font-size:.78rem;font-weight:700}.hosting-strip code{padding:5px 8px;border:1px solid #d2e6e8;border-radius:4px;color:#35535d;background:#fff}.hosting-count{min-width:76px;padding-left:14px;border-left:1px solid #cde2e4;text-align:right}.access-role-administrator,.access-role-manager{border-color:#a9dfe4;color:#0c6774;background:#eaf8f9}.access-role-owner,.access-role-tenant{border-color:#bee3d4;color:#176453;background:#edf8f4}.access-role-contributor{border-color:#dde3bb;color:#5c661e;background:#f7f8ee}.role-contributor button[aria-label^=Επεξεργασία],.role-contributor button[aria-label^=Διαγραφή],.role-contributor button[aria-label^=Ολοκλήρωση]{display:none}.restricted-workspace{display:grid;place-content:center;justify-items:start;gap:10px;min-height:100vh;padding:32px;color:var(--muted);background:#f3f8f8}.restricted-workspace>svg,.restricted-workspace>span{color:var(--primary-strong)}.restricted-workspace>span{font-size:.78rem;font-weight:800;text-transform:uppercase}.restricted-workspace h1,.restricted-workspace p{margin:0}.restricted-workspace h1{color:var(--ink)}.restricted-workspace p{max-width:58ch;line-height:1.6}.resident-header,.resident-main{width:min(100%,1080px)}.resident-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0 28px;border-bottom:1px solid var(--border)}.resident-brand,.resident-logout,.resident-intro p,.resident-card-heading{display:flex;align-items:center;gap:9px}.resident-brand img{width:34px;height:34px}.resident-logout{color:var(--primary-strong);font-size:.88rem;font-weight:700;text-decoration:none}.resident-main{display:grid;gap:24px;padding:44px 0 60px}.resident-intro{display:grid;gap:9px;max-width:720px}.resident-intro>svg,.resident-intro>span,.resident-card-heading>svg{color:var(--primary-strong)}.resident-intro>span{font-size:.78rem;font-weight:800;text-transform:uppercase}.resident-intro h1,.resident-intro p,.resident-intro small,.resident-card h2,.resident-card p{margin:0}.resident-intro h1{color:var(--ink);font-size:clamp(2rem,5vw,3.4rem)}.resident-intro p{color:var(--muted)}.resident-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.resident-card{display:grid;align-content:start;gap:12px}.resident-card-heading h2{font-size:1.05rem}.resident-apartment-code{color:var(--ink);font-size:1.55rem}.resident-card>span,.resident-list span,.resident-card p{color:var(--muted)}.resident-list{display:grid;gap:12px}.resident-list>div{display:grid;gap:4px;padding-top:12px;border-top:1px solid var(--border)}.resident-list>div:first-child{padding-top:0;border-top:0}.resident-list-spaced{margin-top:6px}.resident-document-link{width:fit-content;color:var(--primary-strong);font-size:.86rem;font-weight:700;text-decoration:none}.resident-list p{line-height:1.5}@media (max-width: 720px){.restricted-workspace{place-content:start;padding:18px}.resident-header{padding-top:0}.resident-main{padding-top:28px}.resident-grid{grid-template-columns:1fr}}.platform-summary{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:12px}.platform-summary>div{display:grid;gap:6px;padding:14px 16px;border:1px solid var(--border);border-radius:6px;background:#fff}.platform-summary span{color:var(--muted);font-size:.8rem;font-weight:700}.platform-summary strong{color:var(--ink);font-size:1.35rem}.request-status-pending{border-color:#e5d2a6;color:#6c4a0c;background:#fff8e7}.request-status-approved{border-color:#bee3d4;color:#176453;background:#edf8f4}.request-status-rejected{border-color:#dfd6d9;color:#6c5d63;background:#faf7f8}.customer-table input,.customer-table select{min-width:120px}.billing-preview-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:16px;align-items:start}.billing-preview-card,.billing-preview-steps{display:grid;gap:16px}.billing-preview-card{min-height:520px;align-content:center;justify-items:start;padding:clamp(24px,5vw,56px)}.billing-preview-card h2,.billing-preview-steps h2{margin:0}.billing-preview-brand{display:flex;align-items:center;gap:8px;color:var(--primary-strong);font-weight:800}.billing-preview-muted{max-width:640px;color:var(--muted);line-height:1.6}.billing-preview-price{display:flex;align-items:baseline;gap:8px;margin-top:4px}.billing-preview-price strong{color:var(--ink);font-size:2.2rem}.billing-preview-price span{color:var(--muted)}.billing-preview-summary{display:grid;gap:5px;width:100%;max-width:520px;padding:14px 16px;border:1px solid var(--border);border-radius:6px;background:var(--surface-soft)}.billing-preview-summary strong{color:var(--primary-strong);font-size:.85rem}.billing-preview-summary small{color:var(--muted);font-size:.82rem}.billing-preview-external{display:grid;gap:12px;width:100%;max-width:520px;padding:16px;border:1px solid var(--border);border-radius:6px;background:#f8fbfb}.billing-preview-field{display:grid;gap:6px;color:var(--muted);font-size:.82rem;font-weight:700}.billing-preview-field input,.billing-preview-fake-input{width:100%;min-height:42px;box-sizing:border-box;padding:10px 12px;border:1px solid var(--border-strong);border-radius:5px;color:var(--ink);background:#fff;font:inherit;font-weight:500}.billing-preview-fake-input{display:flex;align-items:center;justify-content:space-between;gap:12px}.billing-preview-fake-input small{color:var(--muted);font-size:.72rem;font-weight:500}.billing-preview-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.billing-preview-actions .button{width:auto}.billing-preview-link{padding:9px 4px;border:0;color:var(--muted);background:transparent;cursor:pointer;font:inherit}.billing-preview-link:hover{color:var(--ink)}.billing-preview-notice{display:flex;align-items:center;gap:8px}.billing-preview-result{display:grid;gap:14px;justify-items:start}.billing-preview-result>svg{color:var(--primary-strong)}.billing-preview-failure>svg{color:#9d6213}.billing-preview-processing>svg{color:var(--primary-strong)}.billing-preview-spinner{animation:billing-preview-spin 1s linear infinite}@keyframes billing-preview-spin{to{transform:rotate(360deg)}}.billing-preview-cancelled>svg{color:var(--muted)}.billing-preview-details{display:grid;gap:0;width:100%;max-width:520px;margin:4px 0;border-top:1px solid var(--border)}.billing-preview-details div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--border)}.billing-preview-details dt{color:var(--muted)}.billing-preview-details dd{margin:0;color:var(--ink);font-weight:800;text-align:right}.billing-preview-steps ol{display:grid;gap:0;margin:0;padding:0;list-style:none}.billing-preview-steps li{display:grid;gap:4px;padding:16px 0 16px 28px;border-left:2px solid var(--border);color:var(--muted)}.billing-preview-steps li.is-active{border-left-color:var(--primary);color:var(--ink)}.billing-preview-steps li.is-complete{border-left-color:var(--primary-strong)}.billing-preview-steps li strong{color:inherit}@media (max-width: 820px){.billing-preview-layout{grid-template-columns:1fr}.billing-preview-card{min-height:0}}.request-page{min-height:100vh;color:var(--text);background:#f3f8f8}.public-page{min-height:100vh;color:var(--text);background:#fff}.demo-banner{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;padding:9px 20px;color:#d7e6ec;background:#082c4c;font-size:.85rem}.demo-banner-actions{display:flex;align-items:center;gap:16px}.demo-banner-actions a{color:#fff;font-weight:700;text-decoration:none;white-space:nowrap}.demo-banner-actions a:hover{text-decoration:underline}.demo-banner-cta{padding:5px 12px;border-radius:5px;color:#04222c!important;background:#22b8c3}.demo-banner-cta:hover{background:#3fc6d0;text-decoration:none!important}.public-site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:74px;padding:12px max(20px,calc((100% - 1120px)/2));border-bottom:1px solid var(--border);background:#fffffff5}.public-brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}.public-brand img{width:40px;height:40px}.public-brand .public-wordmark{width:142px;height:40px;object-fit:contain}.public-brand strong{font-size:1.05rem}.public-site-header nav{display:flex;align-items:center;gap:26px;margin-left:auto}.public-site-header nav a{color:var(--muted);font-size:.9rem;font-weight:700;text-decoration:none}.public-site-header nav a:hover{color:var(--primary-strong)}.public-header-actions{display:flex;align-items:center;gap:9px}.public-menu-toggle{display:none;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border:1px solid var(--border-strong);border-radius:6px;color:var(--ink);background:#fff;cursor:pointer}.public-menu-toggle:hover{border-color:#0aa8b4;color:var(--primary-strong)}.public-mobile-menu{position:absolute;top:100%;left:0;right:0;z-index:30;display:grid;gap:16px;padding:18px 20px 22px;border-bottom:1px solid var(--border);background:#fff;box-shadow:0 18px 30px #082c4c1f}.public-mobile-menu nav{display:grid;gap:4px;margin-left:0}.public-mobile-menu nav a{font-size:1rem}.public-mobile-menu nav a{padding:12px 6px;border-bottom:1px solid var(--border);color:var(--ink);font-weight:700;text-decoration:none}.public-mobile-menu nav a:hover{color:var(--primary-strong)}.public-login-action{display:inline-flex;min-height:42px;align-items:center;justify-content:center;padding:10px 15px;border:1px solid var(--border-strong);border-radius:6px;color:var(--ink);background:#fff;font-weight:800;text-decoration:none}.public-login-action:hover{border-color:#0aa8b4;color:var(--primary-strong);background:#f3fbfb}.public-header-action,.public-primary-action,.public-secondary-action{display:inline-flex;min-height:42px;align-items:center;justify-content:center;padding:10px 18px;border-radius:6px;font-weight:800;text-decoration:none}.public-header-action,.public-primary-action{border:1px solid #0aa8b4;color:var(--navy);background:#dff8f8}.public-header-action:hover,.public-primary-action:hover{background:#c9f1f2}.public-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(340px,.9fr) minmax(0,1.1fr);gap:44px;min-height:620px;align-items:center;overflow:hidden;padding:72px max(20px,calc((100% - 1120px)/2));background:linear-gradient(180deg,#f3f8f8,#eaf4f4)}.public-hero:before{display:none}.public-hero-content{position:relative;z-index:1;max-width:570px}.public-hero-visual{display:flex;min-width:0;align-items:center;justify-content:flex-start}.public-hero-frame{width:max(100%,560px);border:1px solid #d4e2e4;border-radius:12px;background:#fff;box-shadow:0 24px 60px #082c4c29;overflow:hidden}.public-hero-frame-bar{display:flex;gap:6px;padding:11px 14px;border-bottom:1px solid #e3edee;background:#f0f6f6}.public-hero-frame-bar span{width:10px;height:10px;border-radius:50%;background:#d2dfe1}.public-hero-frame img{display:block;width:100%;height:auto}.public-hero-content>span,.public-section-heading>span,.public-final-cta span{color:var(--primary-strong);font-size:.78rem;font-weight:800;text-transform:uppercase}.public-hero h1{max-width:14ch;margin:14px 0 20px;color:var(--ink);font-size:clamp(2.1rem,1.1rem + 2.6vw,3.35rem);line-height:1.08;text-wrap:balance}.public-hero p{max-width:52ch;margin:0;color:var(--muted);font-size:1.08rem;line-height:1.65}.public-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.public-secondary-action{border:1px solid var(--border-strong);color:var(--text);background:#ffffffd1}.public-inline-action{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:10px 2px;color:var(--primary-strong);font-weight:800;text-decoration:none}.public-inline-action span{transition:transform .16s ease}.public-inline-action:hover span{transform:translate(3px)}.public-section{padding:76px max(20px,calc((100% - 1120px)/2));scroll-margin-top:74px}.public-section-heading{display:grid;gap:7px;margin-bottom:28px}.public-section-heading h2,.public-final-cta h2{margin:0;color:var(--ink);font-size:1.85rem}.public-benefits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.public-benefits-grid article,.public-process-grid article{min-width:0;padding:22px;border:1px solid var(--border);border-radius:6px;background:#fbfefd}.public-benefits-grid svg,.public-process-grid article>span{color:var(--primary-strong)}.public-benefits-grid h3,.public-process-grid h3{margin:14px 0 8px;color:var(--ink);font-size:1.02rem}.public-benefits-grid p,.public-process-grid p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.58}.public-process{border-block:1px solid var(--border);background:#f3f8f8}.public-pricing-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.public-pricing-grid article{display:grid;gap:6px;min-width:0;padding:22px;border:1px solid var(--border);border-radius:6px;background:#fbfefd}.public-price-calculator{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(360px,1.1fr);gap:28px;align-items:stretch;margin:28px 0 22px;padding:28px;border:1px solid var(--border);border-radius:6px;background:#f8fcfc}.public-price-calculator-copy{display:grid;align-content:center;gap:10px}.public-price-calculator-copy>span{color:var(--primary-strong);font-size:.76rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.public-price-calculator-copy h3{margin:0;color:var(--ink);font-size:1.45rem}.public-price-calculator-copy p{margin:0;color:var(--muted);line-height:1.55}.public-price-calculator-copy label{margin-top:8px;color:var(--ink);font-size:.86rem;font-weight:800}.public-price-input{display:flex;align-items:center;gap:10px;max-width:300px}.public-price-input input{width:120px;min-height:46px;padding:10px 12px;border:1px solid var(--border-strong);border-radius:6px;background:#fff;color:var(--ink);font:inherit;font-weight:800}.public-price-input span{color:var(--muted);font-size:.9rem}.public-price-result{display:grid;align-content:center;gap:14px;padding:22px;border:1px solid #bfe7e9;border-radius:6px;background:#fff}.public-price-result-highlight{display:grid;gap:4px}.public-price-result-highlight span,.public-price-result-row span{color:var(--muted);font-size:.86rem;font-weight:700}.public-price-result-highlight strong{color:var(--primary-strong);font-size:2rem;line-height:1.1}.public-price-result-highlight small,.public-price-result-caption{color:var(--muted);font-size:.82rem}.public-price-result-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:12px;border-top:1px solid var(--border)}.public-price-result-row strong{color:var(--ink);font-size:1.1rem}.public-price-result>.public-primary-action{justify-self:start;margin-top:4px}.public-pricing-grid article>span{color:var(--muted);font-size:.9rem;font-weight:700}.public-pricing-grid strong{color:var(--ink);font-size:1.45rem;line-height:1.2}.public-pricing-grid small{color:var(--muted);font-size:.82rem}.public-pricing-note{margin:16px 0 0;color:var(--muted);font-size:.85rem}.public-pricing-trial{max-width:620px;margin:8px auto 0;color:var(--primary-strong);font-weight:700;text-align:center}.public-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.public-process-grid article>span{font-size:.82rem;font-weight:900}.public-final-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:56px max(20px,calc((100% - 1120px)/2));background:#082c4c}.public-final-cta h2{max-width:620px;margin-top:8px;color:#fff}.public-final-cta p{margin:10px 0 0;color:#a9bdc9}.public-final-cta-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:12px}.public-ghost-action{display:inline-flex;min-height:42px;align-items:center;justify-content:center;padding:10px 18px;border:1px solid rgba(255,255,255,.45);border-radius:6px;color:#fff;background:transparent;font-weight:800;text-decoration:none}.public-ghost-action:hover{border-color:#ffffffbf;background:#ffffff14}.public-final-cta .public-primary-action{border-color:transparent;color:#04222c;background:#22b8c3}.public-final-cta .public-primary-action:hover{background:#3fc6d0}.public-site-footer{display:grid;gap:22px;padding:38px max(20px,calc((100% - 1120px)/2)) 30px;color:#a9bdc9;background:#061f36}.public-footer-main{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;flex-wrap:wrap}.public-footer-brand{display:grid;gap:6px}.public-footer-brand strong{color:#fff;font-size:1.1rem}.public-footer-main nav{display:flex;flex-wrap:wrap;gap:8px 26px}.public-footer-main nav a{color:#a9bdc9;font-size:.9rem;font-weight:700;text-decoration:none}.public-footer-main nav a:hover{color:#fff}.public-footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;padding-top:18px;border-top:1px solid rgba(255,255,255,.12)}.public-site-footer small{color:#7f9aa9}.public-footer-credit{display:inline-flex;align-items:baseline;gap:6px;margin:0;color:#7f9aa9;font-size:.8rem}.public-footer-credit a{display:inline-flex;align-items:baseline;font-weight:900;font-size:1em;letter-spacing:-.01em;text-transform:uppercase;text-decoration:none;transition:opacity .16s ease}.public-footer-credit a:hover{opacity:.85}.redhair-red{color:#f8f4eb}.redhair-accent{color:#ee2135}.redhair-dot{display:inline-block;animation:redhair-pulse 1.4s ease-in-out infinite}@keyframes redhair-pulse{0%,to{opacity:1}50%{opacity:.25}}@media (prefers-reduced-motion: reduce){.redhair-dot{animation:none}}.request-layout{display:grid;grid-template-columns:minmax(240px,.55fr) minmax(520px,1fr);gap:36px;width:min(1120px,calc(100% - 40px));margin:0 auto;padding:54px 0 72px;align-items:start}.request-intro{display:grid;gap:10px;padding-top:8px}.request-intro svg,.request-intro>span{color:var(--primary-strong)}.request-intro>span{font-size:.78rem;font-weight:800;text-transform:uppercase}.request-intro h1,.request-intro p{margin:0}.request-intro h1{color:var(--ink);font-size:2rem}.request-intro p{color:var(--muted);line-height:1.65}.request-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:20px;border:1px solid var(--border);border-radius:6px;background:#fff;box-shadow:var(--shadow-soft)}.request-wide,.request-turnstile,.request-consent,.request-form>.form-error{grid-column:1 / -1}.request-consent{display:flex;align-items:flex-start;gap:9px;color:var(--muted);font-size:.84rem;line-height:1.45}.request-consent input{flex:0 0 auto;width:18px;min-height:18px;margin-top:2px}.request-success{display:grid;place-content:center;justify-items:start;gap:10px;min-height:calc(100vh - 150px);width:min(680px,calc(100% - 40px));margin:0 auto}.request-success svg,.request-success>span{color:#176453}.request-success>span{font-size:.8rem;font-weight:800;text-transform:uppercase}.request-success h1,.request-success p{margin:0}.request-success p{color:var(--muted);line-height:1.6}.status-open{border-color:#bdebed;color:var(--navy);background:var(--primary-soft)}.status-closed{border-color:#d7dde0;color:#47515a;background:#eceff1}.status-draft{border-color:#e5d2a6;color:#6c4a0c;background:#fff8e7}.text-warning{color:var(--warning);font-weight:700}.empty-state{display:flex;flex-direction:column;gap:6px;min-height:160px;align-items:center;justify-content:center;border:1px dashed var(--border-strong);border-radius:6px;color:var(--muted);background:#fbfefd;padding:18px;text-align:center}.empty-state strong{color:var(--text)}.empty-state span{max-width:58ch;line-height:1.55}.action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.action-panel{display:flex;flex-direction:column;justify-content:space-between;gap:20px;min-height:178px;padding:16px;background:linear-gradient(180deg,#fff,#fbfefd);box-shadow:var(--shadow-soft)}.notice{margin:0;padding:12px 14px;border:1px solid #bedfe3;border-radius:6px;color:#145264;background:#effafb}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-message{display:grid;place-content:center;gap:8px;min-height:100vh;padding:24px;color:var(--muted);text-align:center}.app-message strong{color:var(--text)}@media (max-width: 1360px){.project-workbench,.assembly-workbench{grid-template-columns:1fr}}@media (max-width: 1120px){.building-board,.project-workbench{grid-template-columns:1fr}.building-board-main{border-right:0;border-bottom:1px solid #d6e5e8}.summary-grid,.action-grid,.filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.project-filter-bar,.announcement-filter-bar,.document-filter-bar{grid-template-columns:1fr}.subscription-details{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 980px){.public-hero{grid-template-columns:1fr;min-height:0;gap:36px;padding-block:56px}.public-hero h1{max-width:20ch}.public-hero-content{max-width:640px}.public-hero-visual{justify-content:center}.public-hero-frame{width:100%;max-width:640px}}@media (max-width: 840px){.subscription-details{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:12px;border-right:0;border-bottom:1px solid var(--border)}.sidebar-inner{height:auto;gap:14px;padding:0}.sidebar-footer{display:none}.brand{min-height:42px;padding:2px 4px;border-bottom:0}.sidebar-menu-toggle{display:inline-flex}.sidebar .navigation{display:none}.sidebar.is-open .navigation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.sidebar-inner{gap:8px}.nav-item{justify-content:center;min-height:44px;padding:0 8px;text-align:center}.main-area{padding:18px 12px 24px}.page-header{align-items:flex-start;flex-direction:column}.page-actions{justify-content:flex-start}.summary-grid,.building-board-stats,.project-snapshot,.action-grid{grid-template-columns:1fr}.mobile-quick-actions{display:block;padding:14px 16px 16px;border:1px solid #bfe7e9;border-radius:6px;background:#f5fcfc}.mobile-quick-actions .section-heading{margin-bottom:10px}.mobile-quick-actions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mobile-quick-actions-grid .button{justify-content:flex-start;min-height:46px}.maintenance-attention-list>div{align-items:flex-start;flex-direction:column;gap:4px}.building-board-stats div{min-height:84px;border-left:0;border-top:1px solid #d6e5e8}.filter-bar,.form-grid{grid-template-columns:1fr}.hosting-strip{grid-template-columns:auto 1fr}.hosting-strip code,.hosting-count{grid-column:2}.hosting-count{padding-left:0;border-left:0;text-align:left}.platform-summary,.request-layout,.request-form{grid-template-columns:1fr}.request-layout{gap:24px;padding-top:32px}.request-wide,.request-turnstile,.request-consent,.request-form>.form-error{grid-column:1}.public-benefits-grid,.public-pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-price-calculator,.public-process-grid{grid-template-columns:1fr}.public-site-header>nav{display:none}.public-menu-toggle{display:inline-flex}.public-header-actions .public-login-action{display:none}.public-final-cta,.public-site-footer{align-items:flex-start;flex-direction:column}}@media (max-width: 560px){.subscription-details{grid-template-columns:1fr}.sidebar.is-open .navigation{grid-template-columns:repeat(2,minmax(0,1fr))}.nav-item{justify-content:flex-start}.page-header h1{font-size:1.45rem}.button{width:100%}.row-actions .button,.modal-header .button,.button-icon-only{width:38px}.public-benefits-grid,.public-pricing-grid{grid-template-columns:1fr}.public-price-calculator{padding:20px}.public-price-result-row{align-items:flex-start;flex-direction:column;gap:4px}.mobile-quick-actions-grid{grid-template-columns:1fr}.demo-banner{gap:6px 12px;padding:8px 12px;font-size:.78rem}.demo-banner-actions{width:100%;justify-content:space-between;gap:8px}.mobile-card-table{overflow:visible;border:0;background:transparent}.mobile-card-table table{display:block;min-width:0}.mobile-card-table thead{display:none}.mobile-card-table tbody{display:grid;gap:10px}.mobile-card-table tr{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;padding:14px;border:1px solid var(--border);border-radius:6px;background:#fff;box-shadow:var(--shadow-soft)}.mobile-card-table td{display:grid;grid-template-columns:minmax(90px,.7fr) minmax(0,1.3fr);gap:10px;padding:0;border:0;font-size:.88rem}.mobile-card-table td:before{content:attr(data-label);color:var(--muted);font-size:.76rem;font-weight:800;text-transform:uppercase}.mobile-card-table td.actions-cell{display:flex;grid-column:1;justify-content:flex-end;padding-top:8px;border-top:1px solid var(--border)}.mobile-card-table td.actions-cell:before{display:none}.mobile-card-table .row-actions{gap:8px}.mobile-card-table .row-actions .button{width:42px;min-height:42px}.modal-backdrop{place-items:end center;padding:0}.modal{width:100%;max-height:calc(100vh - 10px);border-radius:12px 12px 0 0}.modal-header{padding:14px 16px}.form-actions{display:grid;grid-template-columns:1fr 1fr;position:sticky;bottom:0;z-index:1;margin:0 -16px -16px;padding:12px 16px 16px;border-top:1px solid var(--border);background:#fff}input,select,textarea{font-size:16px}.public-site-header{gap:12px}.public-header-action,.public-login-action{min-height:38px;padding:8px 11px;font-size:.78rem}.public-header-actions{gap:6px}.public-hero{padding-block:44px}.public-hero h1{max-width:16ch}.public-section,.public-final-cta{padding-block:52px}.public-section-heading h2,.public-final-cta h2{font-size:1.5rem}.inline-form{align-items:stretch;flex-direction:column}}
