@import "https://fonts.cdnfonts.com/css/sf-pro-display";
:root{--bg-app:#fbfbfd;--bg-surface:#fff;--bg-sidebar:#f5f5f7;--bg-subtle:#f5f5f7;--bg-card:#fff;--bg-hover:#f0f0f2;--bg-active:#e8e8ed;--text-primary:#1d1d1f;--text-secondary:#6e6e73;--text-tertiary:#86868b;--text-on-accent:#fff;--border-hairline:#e5e5e7;--border-subtle:#f0f0f2;--border-strong:#d2d2d7;--accent:#000;--accent-hover:#1d1d1f;--accent-soft:#0000000f;--badge-draft-bg:#f5f5f7;--badge-draft-txt:#6e6e73;--badge-sent-bg:#e5e5e7;--badge-sent-txt:#1d1d1f;--badge-won-bg:#1d1d1f;--badge-won-txt:#fff;--font-family:"SF Pro Display", "SF Pro Text", -apple-system, BlinkMacSystemFont, "SF Pro", "Helvetica Neue", Arial, sans-serif;--font-numeric:"SF Pro Display", "SF Pro Text", -apple-system, BlinkMacSystemFont, "SF Pro", "Helvetica Neue", Arial, sans-serif;--radius-xs:6px;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-pill:9999px;--shadow-sm:0 1px 3px #0000000a;--shadow-md:0 4px 16px #0000000d;--shadow-lg:0 12px 36px #00000014;--sidebar-width:240px;--transition:all .2s cubic-bezier(.16, 1, .3, 1);--glass-bg:#ffffffd1;--glass-border:#00000012;--glass-blur:blur(24px) saturate(180%)}[data-theme=dark]{--bg-app:#000;--bg-surface:#121212;--bg-sidebar:#0a0a0a;--bg-subtle:#1c1c1e;--bg-card:#161618;--bg-hover:#222225;--bg-active:#2c2c2e;--text-primary:#f5f5f7;--text-secondary:#a1a1a6;--text-tertiary:#6e6e73;--text-on-accent:#000;--border-hairline:#262629;--border-subtle:#1c1c1e;--border-strong:#3a3a3c;--accent:#fff;--accent-hover:#e5e5e7;--accent-soft:#ffffff1f;--badge-draft-bg:#222225;--badge-draft-txt:#a1a1a6;--badge-sent-bg:#2c2c2e;--badge-sent-txt:#f5f5f7;--badge-won-bg:#fff;--badge-won-txt:#000;--shadow-sm:0 1px 3px #0006;--shadow-md:0 4px 16px #0006;--shadow-lg:0 12px 36px #0009;--glass-bg:#121214d1;--glass-border:#ffffff17;--glass-blur:blur(24px) saturate(180%)}
*,:before,:after{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}html,body,button,input,select,textarea,table,th,td,h1,h2,h3,h4,h5,h6,div,span,p,a,label{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,SF Pro,-apple-system-subheadline,Helvetica Neue,Helvetica,Arial,sans-serif!important}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-pill);background:#8c8c914d;transition:background .2s}::-webkit-scrollbar-thumb:hover{background:#8c8c918c}body{background-color:var(--bg-app);color:var(--text-primary);letter-spacing:-.012em;height:100vh;font-size:13.5px;line-height:1.45;display:flex;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,SF Pro,Helvetica Neue,Helvetica,Arial,sans-serif!important}@keyframes appleWindowReveal{0%{opacity:0;filter:blur(2px);transform:scale(.992)translateY(4px)}to{opacity:1;filter:blur();transform:scale(1)translateY(0)}}.saas-layout{width:100vw;height:100vh;animation:.42s cubic-bezier(.16,1,.3,1) backwards appleWindowReveal;display:flex;overflow:hidden}
.saas-sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);border-right:1px solid var(--border-hairline);-webkit-user-select:none;user-select:none;flex-direction:column;flex-shrink:0;justify-content:space-between;padding:20px 14px;display:flex}.sidebar-header{border-bottom:1px solid var(--border-hairline);align-items:center;gap:12px;min-width:0;margin-bottom:16px;padding:6px 10px 18px;display:flex}.brand-icon{aspect-ratio:1;background:var(--text-primary);width:32px;min-width:32px;height:32px;min-height:32px;color:var(--bg-app);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:0 2px 8px #00000040}[data-theme=light] .brand-icon{box-shadow:0 2px 8px #00000014}.brand-meta{flex:1;min-width:0;overflow:hidden}.brand-meta h2{letter-spacing:-.02em;color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:700;overflow:hidden}.brand-meta p{color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.studio-avatar-badge{background:var(--bg-subtle);width:32px;min-width:32px;height:32px;min-height:32px;color:var(--text-secondary);border:1px solid var(--border-hairline);letter-spacing:.02em;-webkit-user-select:none;user-select:none;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}[data-theme=light] .studio-avatar-badge{color:#48484a;background:#f0f0f2;border-color:#e5e5e7}.sidebar-nav{flex-direction:column;flex:1;gap:3px;display:flex}.sidebar-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);padding:12px 10px 6px;font-size:10.5px;font-weight:600}.nav-link{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:11px;width:100%;padding:8px 10px;font-size:13px;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s,box-shadow .15s,transform .15s;display:flex}.nav-link:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-link.active{background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-sm);font-weight:600}.nav-link svg{stroke-width:1.75px;flex-shrink:0;width:16px;height:16px}.sidebar-badge{border-radius:var(--radius-pill);background:var(--bg-subtle);color:var(--text-secondary);margin-left:auto;padding:2px 7px;font-size:10.5px;font-weight:600}.sidebar-footer{border-top:1px solid var(--border-hairline);flex-direction:column;gap:12px;padding-top:14px;display:flex}.theme-switch-pill{background:var(--bg-subtle);border:1px solid var(--border-hairline);border-radius:var(--radius-pill);padding:2px;display:flex}.theme-btn{border-radius:var(--radius-pill);color:var(--text-secondary);cursor:pointer;transition:var(--transition);background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:6px;padding:5px 8px;font-size:11.5px;font-weight:500;display:flex}.theme-btn.active{background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-sm);font-weight:600}.saas-main{scrollbar-gutter:stable;background:var(--bg-app);flex-direction:column;flex:1;height:100vh;display:flex;overflow-y:auto}.saas-topbar{border-bottom:1px solid var(--border-hairline);background:var(--bg-surface);z-index:50;justify-content:space-between;align-items:center;height:56px;padding:0 32px;display:flex;position:sticky;top:0}.topbar-breadcrumbs{color:var(--text-tertiary);align-items:center;gap:8px;font-size:13px;display:flex}.topbar-breadcrumbs .active{color:var(--text-primary);font-weight:600}.topbar-actions{align-items:center;gap:10px;display:flex}
.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.page-title{letter-spacing:-.025em;color:var(--text-primary);font-size:24px;font-weight:700;line-height:1.2}.page-subtitle{color:var(--text-secondary);max-width:680px;margin-top:4px;font-size:13px;line-height:1.45}.workspace-shell{flex-direction:column;width:100%;display:flex}.workspace-header-bar{border-bottom:1px solid var(--border-hairline);background:var(--bg-surface);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;padding:24px 32px 18px;display:flex}.workspace-title-box{flex-direction:column;gap:4px;min-width:0;display:flex}.workspace-nav-strip{border-bottom:1px solid var(--border-hairline);background:var(--bg-subtle);align-items:center;gap:6px;padding:8px 32px;display:flex;overflow-x:auto}.workspace-tab-btn{border-radius:var(--radius-pill);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;align-items:center;gap:7px;padding:7px 14px;font-size:12.5px;font-weight:500;transition:all .15s;display:inline-flex}.workspace-tab-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.workspace-tab-btn.active{background:var(--bg-surface);color:var(--text-primary);border-color:var(--border-hairline);box-shadow:var(--shadow-sm);font-weight:600}.workspace-tab-badge{border-radius:var(--radius-pill);background:var(--bg-hover);color:var(--text-secondary);padding:1px 6px;font-size:10.5px;font-weight:600}.btn{font-family:var(--font-family);border-radius:var(--radius-pill);cursor:pointer;transition:var(--transition);white-space:nowrap;border:1px solid #0000;outline:none;justify-content:center;align-items:center;gap:7px;padding:7px 16px;font-size:13px;font-weight:500;display:inline-flex}.btn-primary{background:var(--text-primary);color:var(--bg-app);border-color:var(--text-primary)}.btn-primary:hover{opacity:.88}.btn-accent{background:var(--accent);color:var(--text-on-accent);border-color:var(--accent);font-weight:600}.btn-accent:hover{background:var(--accent-hover);color:var(--text-on-accent)}.btn-subtle{background:var(--bg-subtle);color:var(--text-primary);border-color:var(--border-hairline)}.btn-subtle:hover{background:var(--bg-hover)}.btn-sm{padding:5px 12px;font-size:12px}.page-container{width:100%;max-width:1280px;margin:0 auto;padding:32px}.page-header{justify-content:space-between;align-items:flex-end;margin-bottom:28px;display:flex}.page-title{letter-spacing:-.025em;color:var(--text-primary);font-size:26px;font-weight:600}.page-subtitle{color:var(--text-secondary);margin-top:4px;font-size:13.5px}.metrics-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:32px;display:grid}.metric-card{background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:var(--transition);padding:20px}.metric-card:hover{border-color:var(--border-strong)}.metric-label{color:var(--text-secondary);font-size:12px;font-weight:500}.metric-value{letter-spacing:-.03em;color:var(--text-primary);font-size:28px;font-weight:600;font-family:var(--font-numeric);font-variant-numeric:tabular-nums;-webkit-font-feature-settings:"tnum" 1;font-feature-settings:"tnum" 1;margin:8px 0 4px}.metric-trend{color:#30d158;align-items:center;gap:4px;font-size:11.5px;font-weight:500;display:flex}.content-card{background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);box-sizing:border-box;max-width:100%;margin-bottom:28px;overflow:hidden}.card-header-bar{border-bottom:1px solid var(--border-hairline);justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.card-heading{letter-spacing:-.015em;color:var(--text-primary);font-size:15px;font-weight:600}.table-responsive,.table-scroll-container{-webkit-overflow-scrolling:touch;box-sizing:border-box;width:100%;max-width:100%;display:block;overflow-x:auto}.apple-table{border-collapse:collapse;width:100%;font-size:13px}.apple-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);border-bottom:1px solid var(--border-hairline);background:var(--bg-subtle);padding:12px 24px;font-size:11.5px;font-weight:600}.apple-table td{border-bottom:1px solid var(--border-hairline);color:var(--text-primary);vertical-align:middle;padding:16px 24px}.apple-table tr:last-child td{border-bottom:none}.apple-table tr:hover td{background:var(--bg-hover)}.status-pill{border-radius:var(--radius-pill);align-items:center;gap:6px;padding:3px 10px;font-size:11.5px;font-weight:500;display:inline-flex}.status-pill.status-draft{background:var(--badge-draft-bg);color:var(--badge-draft-txt)}.status-pill.status-sent{background:var(--badge-sent-bg);color:var(--badge-sent-txt)}.status-pill.status-accepted{background:var(--badge-won-bg);color:var(--badge-won-txt)}.status-dropdown-wrap{display:inline-block;position:relative}.status-interactive-btn{cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #ffffff14;align-items:center;gap:5px;transition:all .18s cubic-bezier(.16,1,.3,1);display:inline-flex}.status-interactive-btn:hover{filter:brightness(1.15);border-color:#ffffff38;transform:translateY(-1px);box-shadow:0 4px 12px #00000059}.status-interactive-btn:active{transform:translateY(0)}.status-dot{background:currentColor;border-radius:50%;width:6px;height:6px;display:inline-block}.status-dropdown-menu{z-index:120;-webkit-backdrop-filter:blur(28px)saturate(180%);background:#18181bf2;border:1px solid #ffffff24;border-radius:12px;flex-direction:column;gap:3px;min-width:140px;padding:6px;animation:.18s cubic-bezier(.16,1,.3,1) modalScaleUp;display:flex;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 16px 36px #0009,0 0 0 1px #ffffff14}[data-theme=light] .status-dropdown-menu{background:#fffffff5;border-color:#0000001f;box-shadow:0 16px 36px #00000026}.status-dropdown-item{width:100%;color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:7px 10px;font-size:12px;font-weight:500;transition:all .15s;display:flex}.status-dropdown-item:hover{background:#ffffff14}[data-theme=light] .status-dropdown-item:hover{background:#0000000d}.status-dropdown-item.active{color:var(--accent);background:#ffffff14;font-weight:600}.status-dot-draft{background:#8e8e93}.status-dot-sent{background:var(--text-primary)}.status-dot-accepted{background:#30d158}.status-check{color:var(--accent);margin-left:auto;font-size:11px;font-weight:700}
.login-overlay{z-index:99999;background-color:#000;background-image:radial-gradient(circle at 50% 20%,#2997ff14,#0000 45%),radial-gradient(circle at 80% 80%,#ffffff05,#0000 40%);background-position:0 0;background-repeat:repeat;background-size:auto;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;justify-content:center;align-items:center;padding:24px;transition:opacity .3s cubic-bezier(.16,1,.3,1),visibility .3s;display:flex;position:fixed;inset:0}.login-overlay.hidden,html.is-authenticated #loginOverlay{opacity:0;visibility:hidden;pointer-events:none;display:none!important}.login-card{-webkit-backdrop-filter:blur(30px)saturate(180%);box-sizing:border-box;background:#161618d9;border:1px solid #ffffff1f;border-radius:20px;width:100%;max-width:420px;padding:38px 34px;animation:.32s cubic-bezier(.16,1,.3,1) modalScaleUp;box-shadow:0 32px 80px #000000b3,0 0 0 1px #ffffff0f}.login-card.shake{animation:.45s cubic-bezier(.36,.07,.19,.97) both appleShake}@keyframes appleShake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-6px)}40%,60%{transform:translate(6px)}}.login-header{text-align:center;margin-bottom:28px}.login-brand-icon{color:#000;background:#fff;border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:14px;font-size:26px;font-weight:300;display:inline-flex;box-shadow:0 8px 24px #ffffff40}.login-title{letter-spacing:-.025em;color:#fff;margin:0;font-size:22px;font-weight:700}.login-subtitle{color:#ffffff8c;letter-spacing:-.01em;margin:4px 0 0;font-size:12.5px}.login-form{flex-direction:column;gap:16px;display:flex}.login-input-group{flex-direction:column;gap:6px;display:flex}.login-input-group label{text-transform:uppercase;letter-spacing:.04em;color:#ffffffa6;font-size:11.5px;font-weight:600}.login-input-wrap{align-items:center;display:flex;position:relative}.login-input-icon{color:#fff6;pointer-events:none;position:absolute;left:14px}.login-text-input{color:#fff;box-sizing:border-box;background:#ffffff0f;border:1px solid #ffffff26;border-radius:10px;outline:none;width:100%;height:44px;padding:0 14px 0 38px;font-family:inherit;font-size:13.5px;transition:all .2s}.login-text-input:focus{border-color:var(--accent);background:#ffffff1a;box-shadow:0 0 0 2px #ffffff40}.login-pwd-toggle{color:#ffffff73;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:color .15s;display:inline-flex;position:absolute;right:12px}.login-pwd-toggle:hover{color:#fff}.login-error{color:#ff453a;text-align:center;background:#ff453a24;border:1px solid #ff453a47;border-radius:8px;padding:9px 14px;font-size:12.5px;font-weight:500}.login-btn{background:var(--accent);cursor:pointer;border:none;border-radius:10px;width:100%;height:44px;margin-top:4px;font-size:14px;font-weight:700;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 14px #00000059;color:var(--text-on-accent,#000)!important}.login-btn:hover{background:var(--accent-hover,#e5e5e7);transform:translateY(-1px);box-shadow:0 6px 20px #00000080;color:var(--text-on-accent,#000)!important}.login-btn:active{transform:translateY(0)}.login-demo-box{background:#ffffff0a;border:1px dashed #ffffff24;border-radius:10px;margin-top:10px;padding:12px 14px}.login-quick-fill-btn{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:5px;padding:3px 8px;font-size:11px;font-weight:600;transition:all .15s}.login-quick-fill-btn:hover{background:var(--accent);border-color:var(--accent)}.btn-sidebar-signout{border-radius:var(--radius-sm);width:100%;color:var(--text-tertiary);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;margin-top:6px;padding:6px 10px;font-size:11.5px;font-weight:500;transition:all .18s;display:flex}.btn-sidebar-signout:hover{color:#ff453a;background:#ff453a1f;border-color:#ff453a40}.launchpad-hero-card{text-align:center;background:var(--bg-card);border:1px solid var(--border-hairline);border-radius:var(--radius-lg,16px);box-shadow:var(--shadow-sm,0 2px 8px #0000000a);flex-direction:column;align-items:center;margin-bottom:32px;padding:56px 32px;display:flex}.launchpad-icon-wrap{background:var(--accent-soft,#0071e314);width:72px;height:72px;color:var(--accent,#0071e3);border-radius:50%;justify-content:center;align-items:center;margin-bottom:20px;display:flex}.launchpad-title{color:var(--text-primary);letter-spacing:-.02em;margin-bottom:8px;font-size:22px;font-weight:600}.launchpad-subtitle{color:var(--text-secondary);max-width:520px;margin-bottom:28px;font-size:14px;line-height:1.5}.launchpad-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.launchpad-recents-section{margin-top:12px}.launchpad-section-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.launchpad-section-title{letter-spacing:.06em;color:var(--text-tertiary);font-size:11px;font-weight:700}.launchpad-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.launchpad-card{background:var(--bg-card);border:1px solid var(--border-hairline);border-radius:var(--radius-md,12px);cursor:pointer;flex-direction:column;justify-content:space-between;padding:18px 20px;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex}.launchpad-card:hover{border-color:var(--border-strong);transform:translateY(-2px);box-shadow:0 4px 14px #0000000f}.launchpad-card-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.launchpad-card-title{color:var(--text-primary);font-size:15px;font-weight:600;line-height:1.3}.launchpad-card-client{color:var(--text-secondary);margin-top:2px;font-size:12px}.launchpad-card-body{border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);justify-content:space-between;margin-bottom:14px;padding:12px 0;display:flex}.launchpad-card-stat{flex-direction:column;gap:2px;display:flex}.launchpad-stat-lbl{text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);font-size:10px}.launchpad-stat-val{color:var(--text-secondary);font-size:13px;font-family:var(--font-numeric,inherit)}.launchpad-card-footer{justify-content:flex-end;display:flex}.launchpad-open-link{color:var(--accent,#0071e3);font-size:13px;font-weight:500;transition:transform .15s}.launchpad-card:hover .launchpad-open-link{transform:translate(3px)}
.builder-layout{grid-template-columns:280px minmax(0,1fr) 340px;align-items:start;gap:24px;display:grid}.builder-layout>div{min-width:0}.builder-sidebar-card{background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);z-index:10;padding:20px;position:sticky;top:20px}.sidebar-fin-row{justify-content:space-between;align-items:baseline;gap:12px;width:100%;display:flex}.sidebar-fin-label{min-width:0;color:var(--text-secondary);word-break:normal;flex:1;line-height:1.4}.sidebar-fin-val{white-space:nowrap;font-family:var(--font-numeric,sans-serif);font-variant-numeric:tabular-nums;-webkit-font-feature-settings:"tnum" 1;font-feature-settings:"tnum" 1;color:var(--text-primary);text-align:right;flex-shrink:0;font-weight:500}.room-nav-btn{border-radius:var(--radius-sm);width:100%;color:var(--text-secondary);cursor:pointer;transition:var(--transition);text-align:left;box-sizing:border-box;background:0 0;border:1px solid #0000;flex-direction:column;gap:6px;margin-bottom:6px;padding:10px 14px;display:flex;position:relative}.room-nav-btn:hover{background:var(--bg-subtle);color:var(--text-primary);border-color:var(--border-subtle)}.room-nav-btn.active{background:var(--bg-subtle);border-color:var(--border-hairline);color:var(--text-primary)}.room-nav-top-row{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.room-nav-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.01em;flex:1;min-width:0;font-size:13.5px;font-weight:600;overflow:hidden}.room-nav-actions{opacity:.55;flex-shrink:0;align-items:center;gap:4px;transition:opacity .15s;display:flex}.room-nav-btn:hover .room-nav-actions,.room-nav-btn.active .room-nav-actions{opacity:1}.room-action-icon-btn,.btn-room-rename,.btn-room-delete{width:22px;height:22px;color:var(--text-tertiary);cursor:pointer;opacity:.65;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.room-nav-btn:hover .room-action-icon-btn,.room-nav-btn.active .room-action-icon-btn,.room-nav-btn:hover .btn-room-rename,.room-nav-btn.active .btn-room-rename,.room-nav-btn:hover .btn-room-delete,.room-nav-btn.active .btn-room-delete{opacity:1}.room-action-icon-btn:hover,.btn-room-rename:hover{background:var(--bg-surface);color:var(--accent);border-color:var(--border-subtle);transform:scale(1.08)}.room-action-icon-btn.danger:hover,.btn-room-delete:hover{color:#ff453a;background:#ff453a24;border-color:#ff453a40;transform:scale(1.08)}.room-nav-bottom-row{justify-content:space-between;align-items:center;width:100%;font-size:11.5px;display:flex}.room-nav-specs{color:var(--text-tertiary);font-weight:400}.room-nav-price{font-family:var(--font-numeric,sans-serif);font-variant-numeric:tabular-nums;-webkit-font-feature-settings:"tnum" 1;font-feature-settings:"tnum" 1;color:var(--text-primary);letter-spacing:-.01em;font-weight:600}.btn-room-banner-rename{border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(14px);color:#fff;cursor:pointer;transition:var(--transition);background:#00000073;border:1px solid #ffffff38;align-items:center;gap:6px;padding:5px 12px;font-size:12px;font-weight:500;display:inline-flex}.btn-room-banner-rename:hover{background:#000000b3;border-color:#fff6;transform:translateY(-1px)}.room-hero-banner{border-radius:var(--radius-md);background:#000;height:200px;margin-bottom:18px;position:relative;overflow:hidden}.room-hero-banner img{object-fit:cover;opacity:.85;width:100%;height:100%}.room-hero-banner .hero-caption{color:#fff;background:linear-gradient(#0000 0%,#000000bf 100%);justify-content:space-between;align-items:flex-end;padding:20px;display:flex;position:absolute;bottom:0;left:0;right:0}.hero-caption h3{letter-spacing:-.02em;font-size:22px;font-weight:600}.hero-caption p{opacity:.8;font-size:12px}
.assembly-row{background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-md);transition:var(--transition);box-sizing:border-box;margin-bottom:12px;padding:16px 20px;overflow:hidden}.assembly-row:hover{border-color:var(--border-strong)}.assembly-top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.assembly-info{flex:1;align-items:flex-start;gap:12px;min-width:0;display:flex}.apple-toggle{appearance:none;cursor:pointer;box-sizing:border-box;background:#ffffff12;border:1.5px solid #ffffff38;border-radius:6px;outline:none;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;margin-top:2px;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex;position:relative}.apple-toggle:hover{background:#ffffff1f;border-color:#fff6;transform:scale(1.06)}.apple-toggle:checked{box-shadow:0 0 10px #ffffff73;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000000' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5l3 3 6-6'/%3E%3C/svg%3E") 50%/11px 11px no-repeat!important;border-color:#fff!important}[data-theme=light] .apple-toggle:checked{box-shadow:0 0 8px #0003;background:#000 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23ffffff' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5l3 3 6-6'/%3E%3C/svg%3E")!important;border-color:#000!important}.apple-toggle:focus-visible{box-shadow:0 0 0 2px var(--bg-main), 0 0 0 4px var(--accent)}.apple-toggle:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.assembly-title{color:var(--text-primary);word-break:break-word;font-size:14.5px;font-weight:600}.assembly-desc{color:var(--text-secondary);word-break:break-word;margin-top:2px;font-size:12px}.assembly-price{color:var(--text-primary);font-size:16px;font-weight:600;font-family:var(--font-numeric);font-variant-numeric:tabular-nums;-webkit-font-feature-settings:"tnum" 1;font-feature-settings:"tnum" 1;letter-spacing:-.02em;white-space:nowrap}.assembly-controls{border-top:1px solid var(--border-hairline);box-sizing:border-box;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 14px;width:100%;margin-top:12px;padding-top:12px;font-size:12px;display:flex}.spec-input-cluster{flex-wrap:wrap;align-items:center;gap:8px 12px;min-width:0;display:flex}.spec-action-cluster{flex-shrink:0;align-items:center;gap:6px;margin-left:auto;display:flex}.field-group{flex-shrink:0;align-items:center;gap:5px;display:flex}.field-group label{color:var(--text-tertiary);font-size:11.5px;font-weight:500}.field-input{border-radius:var(--radius-xs);border:1px solid var(--border-hairline);background:var(--bg-subtle);color:var(--text-primary);font-family:var(--font-numeric);font-variant-numeric:tabular-nums;text-align:center;box-sizing:border-box;transition:var(--transition);outline:none;padding:4px 6px;font-size:12px;font-weight:500}.field-input:focus{border-color:var(--accent);background:var(--bg-surface)}.field-input-dim{width:54px}.field-input-qty{width:44px}.field-input-unit{width:64px;font-size:11px}.field-input-rate{text-align:right;width:74px}.spec-action-btn{border-radius:var(--radius-xs);background:var(--bg-subtle);border:1px solid var(--border-hairline);color:var(--text-secondary);cursor:pointer;transition:var(--transition);box-sizing:border-box;align-items:center;gap:4px;padding:4px 8px;font-size:11px;font-weight:500;line-height:1;display:inline-flex}.spec-action-btn:hover{background:var(--bg-surface);color:var(--text-primary);border-color:var(--border-strong)}.spec-action-btn.danger{color:#ff453a;border-color:#ff453a33}.spec-action-btn.danger:hover{color:#ff453a;background:#ff453a1f;border-color:#ff453a}.spec-locked-strip{border-top:1px solid var(--border-hairline);margin-top:12px;padding-top:12px}.spec-badge-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.spec-badge{background:var(--bg-subtle);border:1px solid var(--border-hairline);border-radius:var(--radius-pill);color:var(--text-secondary);font-size:11.5px;font-weight:500;font-family:var(--font-numeric,sans-serif);font-variant-numeric:tabular-nums;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.spec-badge svg{color:var(--text-tertiary);flex-shrink:0}.spec-badge-frozen{border-radius:var(--radius-pill);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;background:#8e8e931f;align-items:center;gap:4px;margin-left:auto;padding:3px 9px;font-size:10.5px;font-weight:600;display:inline-flex}.tier-segmented{background:var(--bg-subtle);border-radius:var(--radius-pill);border:1px solid var(--border-hairline);padding:3px;display:inline-flex}.tier-btn{border-radius:var(--radius-pill);color:var(--text-secondary);cursor:pointer;transition:var(--transition);background:0 0;border:none;padding:5px 14px;font-size:12px;font-weight:500}.tier-btn.active{background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-sm);font-weight:600}.apple-modal-overlay{-webkit-backdrop-filter:blur(20px)saturate(180%);z-index:1000;background:#0000008c;justify-content:center;align-items:center;padding:24px;animation:.22s cubic-bezier(.16,1,.3,1) modalFadeIn;display:none;position:fixed;inset:0}.apple-modal-overlay.active{display:flex}#appConfirmModal,#guardAlertModal{z-index:3000}.apple-modal-window{background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-lg);box-shadow:0 24px 64px #00000073, 0 0 0 1px var(--border-subtle);transform-origin:50%;width:100%;max-width:740px;max-height:90vh;padding:32px;animation:.26s cubic-bezier(.16,1,.3,1) modalScaleUp;overflow-y:auto}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalScaleUp{0%{opacity:0;transform:scale(.96)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-title-row{border-bottom:1px solid var(--border-hairline);justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;display:flex}.modal-close-btn{background:var(--bg-subtle);width:30px;height:30px;color:var(--text-primary);cursor:pointer;transition:var(--transition);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:14px;display:flex}.modal-close-btn:hover{background:var(--bg-hover);transform:scale(1.06)}.modal-close-btn:active{transform:scale(.94)}.form-row{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.form-item{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.form-item label{color:var(--text-secondary);font-size:12px;font-weight:600}.text-input{border-radius:var(--radius-sm);border:1px solid var(--border-hairline);background:var(--bg-subtle);width:100%;color:var(--text-primary);font-size:13.5px;font-family:var(--font-family);transition:var(--transition);outline:none;padding:9px 12px}.text-input:focus{border-color:var(--accent);background:var(--bg-surface);box-shadow:0 0 0 3px var(--accent-soft)}
select.text-input,.apple-select,select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2386868b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:36px}[data-theme=light] select.text-input,[data-theme=light] .apple-select,[data-theme=light] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%231d1d1f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E")}select.text-input option,select option{color:#f5f5f7;background-color:#1c1c1e;padding:10px 14px}[data-theme=light] select.text-input option,[data-theme=light] select option{color:#1d1d1f;background-color:#fff}.apple-select-hidden{opacity:0!important;pointer-events:none!important;clip:rect(0, 0, 0, 0)!important;width:1px!important;height:1px!important;margin:-1px!important;position:absolute!important;overflow:hidden!important}.apple-select-wrapper{width:100%;position:relative}.apple-select-trigger{border-radius:var(--radius-sm);border:1px solid var(--border-hairline);background:var(--bg-subtle);width:100%;color:var(--text-primary);font-size:13.5px;font-family:var(--font-family);cursor:pointer;text-align:left;-webkit-user-select:none;user-select:none;transition:var(--transition);box-sizing:border-box;outline:none;justify-content:space-between;align-items:center;min-height:38px;padding:9px 32px 9px 12px;display:flex}.apple-select-trigger:focus,.apple-select-wrapper.open .apple-select-trigger{border-color:var(--accent);background:var(--bg-surface);box-shadow:0 0 0 3px var(--accent-soft)}.apple-select-trigger .apple-select-label{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.apple-select-trigger .apple-select-arrow{width:13px;height:13px;color:var(--text-secondary);flex-shrink:0;margin-left:8px;transition:transform .2s cubic-bezier(.16,1,.3,1)}.apple-select-wrapper.open .apple-select-arrow{transform:rotate(180deg)}.apple-select-menu{background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(24px)saturate(180%);z-index:2100;flex-direction:column;gap:1px;width:max-content;min-width:100%;max-width:390px;max-height:260px;padding:4px;display:none;position:absolute;top:calc(100% + 4px);left:0;overflow:hidden auto;box-shadow:0 12px 36px #00000040}.apple-select-wrapper[data-for=expSubCategory] .apple-select-menu{min-width:320px;max-width:400px;left:auto;right:0}[data-theme=light] .apple-select-menu{box-shadow:0 8px 24px #00000014}.apple-select-wrapper.open .apple-select-menu{animation:.16s cubic-bezier(.16,1,.3,1) modalScaleUp;display:flex}.apple-select-option{color:var(--text-primary);border-radius:var(--radius-xs);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:13px;transition:background .12s;display:flex;position:relative}.apple-select-option .option-text{white-space:normal;word-break:break-word;flex:1;line-height:1.35}.apple-select-option:hover{background:var(--bg-hover)}.apple-select-option.selected{background:var(--bg-active);font-weight:600}.apple-select-option .check-icon{opacity:0;width:13px;height:13px;color:var(--text-primary);flex-shrink:0}.apple-select-option.selected .check-icon{opacity:1}input[type=date].text-input,input[type=time].text-input,input[type=datetime-local].text-input,input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;cursor:pointer;position:relative}[data-theme=light] input[type=date].text-input,[data-theme=light] input[type=time].text-input,[data-theme=light] input[type=datetime-local].text-input,[data-theme=light] input[type=date]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert();opacity:.65;margin-right:4px;transition:opacity .2s,transform .2s}input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert();opacity:.65;margin-right:4px;transition:opacity .2s,transform .2s}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1;transform:scale(1.1)}input[type=time]::-webkit-calendar-picker-indicator:hover{opacity:1;transform:scale(1.1)}[data-theme=light] input[type=date]::-webkit-calendar-picker-indicator{filter:invert(0);opacity:.65}[data-theme=light] input[type=time]::-webkit-calendar-picker-indicator{filter:invert(0);opacity:.65}.apple-suggest-flyout{background:var(--bg-card);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);max-height:250px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);z-index:1000;flex-direction:column;display:flex;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.suggest-row{border-bottom:1px solid var(--border-subtle);cursor:pointer;flex-direction:column;padding:10px 14px;transition:background .15s;display:flex}.suggest-row:last-child{border-bottom:none}.suggest-row:hover,.suggest-row.selected{background:var(--bg-hover)}.suggest-create{background:var(--bg-subtle);border-top:1px dashed var(--border-hairline)}.suggest-create:hover{background:var(--bg-hover)}
.client-sheet{color:#1d1d1f;border-radius:var(--radius-lg);background:#fff;border:1px solid #e5e5e7;padding:44px}.library-matrix-container{border-radius:var(--radius-md);border:1px solid var(--border-hairline);background:var(--bg-surface);overflow-x:auto}.matrix-table{border-collapse:collapse;width:100%;min-width:900px;font-size:13px}.matrix-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);border-bottom:1px solid var(--border-hairline);background:var(--bg-subtle);z-index:10;padding:14px 20px;font-size:11px;font-weight:600;position:sticky;top:0}.matrix-table td{border-bottom:1px solid var(--border-hairline);vertical-align:middle;padding:14px 20px}.matrix-table tr:hover td{background:var(--bg-hover)}.matrix-category-divider td{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);padding:8px 18px;font-size:11px;font-weight:700;background:var(--bg-subtle)!important}.plist-col-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.plist-default-badge{background:var(--accent-soft);color:var(--accent);border-radius:var(--radius-pill);align-items:center;gap:3px;padding:2px 6px;font-size:10.5px;font-weight:600;display:inline-flex}.matrix-cell{align-items:center;min-width:130px;display:flex;position:relative}.matrix-currency{color:var(--text-tertiary);pointer-events:none;font-size:12px;position:absolute;left:8px}.matrix-input{border-radius:var(--radius-xs);width:100%;color:var(--text-primary);font-size:13.5px;font-family:var(--font-numeric);font-variant-numeric:tabular-nums;transition:var(--transition);background:0 0;border:1px solid #0000;outline:none;padding:6px 8px 6px 20px}.matrix-input:hover{background:var(--bg-subtle);border-color:var(--border-hairline)}.matrix-input:focus{background:var(--bg-surface);border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.matrix-cell.cell-empty{border:1px dashed var(--border-strong);border-radius:var(--radius-xs);cursor:text;transition:var(--transition);background:#78788014;justify-content:center;min-height:32px;padding:5px 8px}.matrix-cell.cell-empty:hover{border-color:var(--accent);background:var(--accent-soft)}.no-price-indicator{color:var(--text-tertiary);pointer-events:none;-webkit-user-select:none;user-select:none;font-size:11.5px;font-style:italic;font-weight:500}.matrix-cell.cell-empty input{padding-left:20px;display:none}.matrix-cell.cell-empty.active-editing{border-style:solid;border-color:var(--accent);background:var(--bg-surface);padding:0}.matrix-cell.cell-empty.active-editing .no-price-indicator{display:none}.matrix-cell.cell-empty.active-editing input{display:block}.dropzone{border:2px dashed var(--border-strong);border-radius:var(--radius-md);text-align:center;background:var(--bg-subtle);cursor:pointer;transition:var(--transition);padding:32px 20px}.dropzone:hover,.dropzone.dragover{border-color:var(--accent);background:var(--accent-soft)}.category-badge-pill{white-space:nowrap;color:var(--text-secondary);letter-spacing:.01em;background:#ffffff0d;border:1px solid #ffffff17;border-radius:6px;align-items:center;padding:4px 10px;font-size:11.5px;font-weight:500;line-height:1.3;display:inline-flex}[data-theme=light] .category-badge-pill{color:var(--text-secondary);background:#0000000a;border-color:#00000014}.unit-badge{text-transform:uppercase;letter-spacing:.04em;min-width:48px;color:var(--text-secondary);font-size:11px;font-weight:600;font-family:var(--font-numeric);font-variant-numeric:tabular-nums;background:#ffffff0d;border:1px solid #ffffff17;border-radius:5px;justify-content:center;align-items:center;padding:3px 8px;display:inline-flex}[data-theme=light] .unit-badge{background:#0000000a;border-color:#00000014}.action-dropdown{display:inline-block;position:relative}.action-menu-dropdown{background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);z-index:100;min-width:175px;margin-top:4px;display:none;position:absolute;top:100%;right:0;overflow:hidden}.action-menu-dropdown.show{display:block}.menu-item-btn{text-align:left;width:100%;color:var(--text-primary);cursor:pointer;transition:var(--transition);background:0 0;border:none;align-items:center;gap:8px;padding:8px 12px;font-size:12.5px;display:flex}.menu-item-btn:hover{background:var(--bg-hover)}.menu-item-btn.danger{color:#ff453a}.menu-item-btn.danger:hover{background:#ff453a1a}@media print{.saas-sidebar,.saas-topbar,.modal-title-row,.hide-on-print{display:none!important}body{background:#fff!important;height:auto!important;overflow:visible!important}.saas-main{overflow:visible!important}.client-sheet{border:none!important;padding:0!important}}
.locked-proposal-banner{border-radius:var(--radius-md);color:var(--text-primary);background:#2997ff14;border:1px solid #2997ff40;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:14px 20px;display:flex}.locked-proposal-banner .banner-icon-text{align-items:center;gap:12px;display:flex}.locked-proposal-banner .banner-icon{font-size:20px;line-height:1}.missing-prices-banner{border-radius:var(--radius-md);color:#ff9f0a;background:#ff9f0a1a;border:1px solid #ff9f0a59;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:14px 20px;display:flex}.missing-prices-banner .banner-icon-text{align-items:center;gap:12px;display:flex}.badge-overridden{color:var(--accent);border-radius:var(--radius-pill);letter-spacing:.03em;text-transform:uppercase;-webkit-user-select:none;user-select:none;background:#0071e31f;border:1px solid #0071e347;align-items:center;gap:4px;padding:2px 7px;font-size:10px;font-weight:600;display:inline-flex}.badge-missing-price{color:#ff453a;border-radius:var(--radius-pill);letter-spacing:.03em;text-transform:uppercase;-webkit-user-select:none;user-select:none;background:#ff453a1f;border:1px solid #ff453a4d;align-items:center;gap:4px;padding:2px 7px;font-size:10px;font-weight:600;display:inline-flex}.btn-revert-rate{border:1px solid var(--border-hairline);color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-xs);transition:var(--transition);background:0 0;justify-content:center;align-items:center;padding:2px 6px;font-size:11px;display:inline-flex}.btn-revert-rate:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.btn-icon-pen{border:1px solid var(--border-hairline);background:var(--bg-subtle);width:24px;height:24px;color:var(--text-secondary);cursor:pointer;transition:var(--transition);vertical-align:middle;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:6px;display:inline-flex}.btn-icon-pen:hover{background:var(--bg-hover);color:var(--accent);border-color:var(--accent);transform:scale(1.08)}.item-picker-window{flex-direction:column;max-width:700px;height:85vh;max-height:720px;padding:28px 28px 20px;display:flex;overflow:hidden!important}#itemPickerList{flex-direction:column;flex:auto;gap:10px;min-height:0;padding-bottom:24px;padding-right:6px;display:flex;overflow-y:auto}.item-picker-footer{border-top:1px solid var(--border-hairline);flex-shrink:0;justify-content:flex-end;margin-top:auto;padding-top:14px;display:flex}.picker-item-card{background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);transition:var(--transition);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.picker-item-card:hover{border-color:var(--border-strong);background:var(--bg-hover)}
.action-dropdown-wrap{justify-content:flex-end;align-items:center;gap:6px;display:inline-flex;position:relative}.btn-dots-menu{background:var(--bg-subtle);border:1px solid var(--border-hairline);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;width:30px;height:28px;transition:var(--transition);flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-dots-menu:hover,.btn-dots-menu.active{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-strong)}.action-dropdown-menu{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);min-width:140px;box-shadow:0 14px 36px #0000008c, 0 0 0 1px var(--border-hairline);z-index:9999;-webkit-backdrop-filter:blur(20px);padding:5px;display:none;position:absolute;top:calc(100% + 4px);right:0}.action-dropdown-menu.show{flex-direction:column;animation:.15s cubic-bezier(.16,1,.3,1) modalScaleUp;display:flex}.action-dropdown-item{width:100%;color:var(--text-primary);text-align:left;cursor:pointer;transition:var(--transition);white-space:nowrap;background:0 0;border:none;border-radius:4px;align-items:center;gap:8px;padding:8px 10px;font-size:12.5px;font-weight:500;display:flex}.action-dropdown-item:hover{background:var(--bg-hover)}.action-dropdown-item.danger{color:#ff453a}.action-dropdown-item.danger:hover{color:#ff453a;background:#ff453a1f}.action-dropdown-divider{background:var(--border-hairline);height:1px;margin:4px 0}.picker-category-chip{border-radius:var(--radius-pill);border:1px solid var(--border-hairline);background:var(--bg-subtle);color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:var(--transition);padding:5px 12px;font-size:11.5px;font-weight:500}.picker-category-chip:hover{border-color:var(--border-strong);color:var(--text-primary)}.picker-category-chip.active{background:var(--accent);color:#fff;border-color:var(--accent)}.template-card{border:1px solid var(--border-hairline);border-radius:var(--radius-sm);background:var(--bg-surface);transition:var(--transition);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.template-card:hover{border-color:var(--border-strong);background:var(--bg-hover)}@media (max-width:768px){.saas-app-layout{flex-direction:column!important;height:auto!important;min-height:100vh!important;overflow-y:auto!important}.sidebar{z-index:100!important;border-right:none!important;border-bottom:1px solid var(--border-hairline)!important;width:100%!important;height:auto!important;padding:10px 14px!important;position:sticky!important;top:0!important;box-shadow:0 4px 16px #00000014!important}.sidebar-brand{margin-bottom:8px!important}.sidebar-nav{-webkit-overflow-scrolling:touch!important;flex-direction:row!important;gap:6px!important;padding:4px 0!important;display:flex!important;overflow-x:auto!important}.sidebar-nav .nav-link{white-space:nowrap!important;border-radius:var(--radius-pill)!important;padding:6px 12px!important;font-size:12.5px!important}.sidebar-bottom{display:none!important}.saas-main{height:auto!important;padding:16px!important;overflow-y:visible!important}.builder-layout{grid-template-columns:1fr!important;gap:18px!important}.page-header{flex-direction:column!important;align-items:flex-start!important;gap:14px!important}.proposal-toolbar{flex-direction:column!important;gap:8px!important;width:100%!important}.proposal-toolbar select,.proposal-toolbar button{justify-content:center!important;width:100%!important}.room-hero-banner{height:140px!important}.hero-caption{padding:12px 14px!important}.hero-caption h3{font-size:16px!important}.assembly-row{padding:12px 10px!important}.assembly-top{flex-direction:column!important;align-items:flex-start!important;gap:8px!important}.assembly-price{align-self:flex-start!important;font-size:17px!important}.assembly-controls{flex-wrap:wrap!important;gap:10px 14px!important}.field-input{min-height:34px!important}.form-row{grid-template-columns:1fr!important;gap:12px!important}.apple-modal-window{max-width:calc(100vw - 20px)!important;max-height:calc(100vh - 30px)!important;margin:10px!important;padding:18px 14px!important}.item-picker-window{height:90vh!important;padding:20px 14px 14px!important}}
#toastContainer{z-index:9999;pointer-events:none;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:24px;right:24px}.toast-item{pointer-events:auto;border-radius:var(--radius-md);background:var(--bg-surface);border:1px solid var(--border-hairline);min-width:290px;max-width:440px;color:var(--text-primary);-webkit-backdrop-filter:var(--glass-blur);align-items:center;gap:12px;padding:12px 18px;font-size:13px;font-weight:500;transition:all .24s cubic-bezier(.16,1,.3,1);animation:.3s cubic-bezier(.16,1,.3,1) toastSlideIn;display:flex;box-shadow:0 16px 36px #00000047,0 2px 8px #00000014}.toast-item.toast-out{opacity:0;transform:translateY(14px)scale(.95)}.toast-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:700;display:flex}.toast-item.toast-success .toast-icon{color:#30d158;background:#34c75929}.toast-item.toast-info .toast-icon{background:var(--accent-soft);color:var(--accent)}.toast-item.toast-warning .toast-icon{color:#ff9f0a;background:#ff9f0a29}.toast-item.toast-error .toast-icon{color:#ff453a;background:#ff453a29}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(24px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}.builder-sticky-hud{z-index:45;border-radius:var(--radius-md);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-hairline);box-shadow:0 16px 36px #00000040, 0 0 0 1px var(--border-subtle);transition:var(--transition);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-top:24px;padding:14px 22px;display:flex;position:sticky;bottom:16px}.hud-stat-group{flex-wrap:wrap;align-items:center;gap:28px;display:flex}.hud-stat{flex-direction:column;gap:2px;display:flex}.hud-stat-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);font-size:11px;font-weight:600}.hud-stat-value{color:var(--text-primary);font-size:18px;font-weight:700;font-family:var(--font-numeric,sans-serif);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.hud-stat-value.accent{color:var(--accent)}.hud-actions{align-items:center;gap:10px;display:flex}.room-nav-btn{position:relative;overflow:hidden}.room-nav-btn.active:before{content:"";background:var(--accent);border-radius:0 3px 3px 0;width:3.5px;position:absolute;top:6px;bottom:6px;left:0}.picker-category-chip{transition:all .2s cubic-bezier(.16,1,.3,1)}.picker-category-chip:hover{transform:translateY(-1px)}.picker-category-chip:active{transform:translateY(0)}.btn:active{transform:scale(.97)}@media print{.saas-sidebar,.saas-topbar,.hide-on-print,.btn,#toastContainer,.builder-sticky-hud,.modal-close-btn{display:none!important}body,.saas-layout,.saas-main{color:#000!important;background:#fff!important;height:auto!important;overflow:visible!important}.client-sheet{box-shadow:none!important;border:none!important;max-width:100%!important;padding:0!important}tr,.client-sheet-section{page-break-inside:avoid;break-inside:avoid}}.custom-space-card{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:#ffffff08;margin-top:14px;padding:14px 16px}.custom-space-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.custom-space-title{color:var(--text-primary);align-items:center;gap:7px;font-size:13.5px;font-weight:600;display:flex}.custom-space-hint{color:var(--text-tertiary);font-size:11.5px}.custom-space-form{grid-template-columns:1.4fr 1.2fr auto;align-items:flex-end;gap:10px;display:grid}.custom-space-input-wrap{flex-direction:column;gap:5px;display:flex}.custom-space-label{text-transform:uppercase;color:var(--text-secondary);letter-spacing:.03em;font-size:11px;font-weight:600}.tpl-filter-bar{flex-shrink:0;gap:6px;padding-bottom:6px;display:flex;overflow-x:auto}.tpl-filter-chip{border-radius:var(--radius-pill);border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;transition:var(--transition);white-space:nowrap;padding:4px 10px;font-size:11.5px}.tpl-filter-chip.active{background:var(--accent-soft);color:var(--accent);border-color:#ffffff38;font-weight:600}.tpl-filter-chip:hover{border-color:var(--border-hairline);color:var(--text-primary)}
.spec-name-input{color:var(--text-primary);background:0 0;border:1px solid #0000;border-radius:4px;width:100%;padding:2px 6px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s}.spec-name-input:hover{border-color:var(--border-subtle);background:#ffffff0a}.spec-name-input:focus{background:var(--bg-surface);border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);outline:none}.spec-desc-input{color:var(--text-secondary);background:0 0;border:1px solid #0000;border-radius:4px;width:95%;margin-top:2px;padding:2px 6px;font-family:inherit;font-size:11.5px;transition:all .15s}.spec-desc-input:hover{border-color:var(--border-subtle);background:#ffffff0a}.spec-desc-input:focus{background:var(--bg-surface);border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);outline:none}.empty-room-state{text-align:center;border:1.5px dashed var(--border-subtle);border-radius:var(--radius-md);background:#ffffff04;margin-bottom:20px;padding:44px 24px}.btn-tpl-delete{width:26px;height:26px;color:var(--text-tertiary);cursor:pointer;transition:var(--transition);background:0 0;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;font-size:12px;display:inline-flex}.btn-tpl-delete:hover{color:#ff453a;background:#ff453a26;border-color:#ff453a4d}.modal-rates-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.modal-rate-card{background:var(--bg-subtle);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);transition:var(--transition);flex-direction:column;gap:6px;padding:10px 12px;display:flex}.modal-rate-card:focus-within{border-color:var(--accent);background:var(--bg-surface);box-shadow:0 0 0 2px var(--accent-soft)}.modal-rate-card-header{justify-content:space-between;align-items:center;display:flex}.modal-rate-name{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;font-weight:600;overflow:hidden}.modal-rate-default-badge{border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);letter-spacing:.02em;padding:1px 5px;font-size:9.5px;font-weight:600}.modal-rate-input-wrap{align-items:center;gap:4px;display:flex}.modal-rate-curr{font-family:var(--font-numeric,sans-serif);color:var(--text-tertiary);font-size:13px;font-weight:500}.modal-rate-input{width:100%;font-family:var(--font-numeric,sans-serif);font-variant-numeric:tabular-nums;color:var(--text-primary);background:0 0;border:none;outline:none;padding:2px 0;font-size:13.5px;font-weight:600}.modal-rate-input::placeholder{color:var(--text-tertiary);opacity:.45;font-weight:400}
.admin-only-element{display:none!important}html.is-admin div.admin-only-element{display:block!important}html.is-admin button.admin-only-element,html.is-admin a.admin-only-element{display:flex!important}#adminSidebarNav,#adminSidebarFooterAction{display:none!important}#clientSidebarNav,#clientSidebarFooterAction,html.is-admin #adminSidebarNav{flex-direction:column;display:flex!important}html.is-admin #adminSidebarFooterAction{display:block!important}html.is-admin #clientSidebarNav,html.is-admin #clientSidebarFooterAction{display:none!important}.tenant-impersonate-banner{color:var(--text-primary);-webkit-backdrop-filter:blur(16px);z-index:90;background:#ffffff0a;border-bottom:1px solid #ffffff2e;justify-content:space-between;align-items:center;padding:10px 24px;font-size:13px;animation:.2s fadeIn;display:flex;position:sticky;top:0}.saas-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin-bottom:24px;display:grid}.saas-kpi-card{background:var(--surface);border:1px solid var(--border-hairline);border-radius:var(--radius-md);transition:var(--transition-normal);padding:20px}.saas-kpi-card:hover{border-color:#ffffff38;transform:translateY(-2px)}.saas-kpi-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);font-size:11.5px;font-weight:600}.saas-kpi-val{font-size:26px;font-weight:700;font-family:var(--font-numeric);font-variant-numeric:tabular-nums;color:var(--text-primary);margin:6px 0 2px}.saas-kpi-sub{color:var(--text-tertiary);font-size:12px}.plan-pill{letter-spacing:-.01em;white-space:nowrap;background:var(--bg-subtle);color:var(--text-secondary);border:1px solid var(--border-hairline);text-transform:none;border-radius:5px;align-items:center;gap:5px;padding:2px 7px;font-size:11px;font-weight:500;display:inline-flex}.plan-pill-lifetime,.plan-pill-annual,.plan-pill-monthly,.plan-pill-trial{background:var(--bg-subtle);color:var(--text-secondary);border:1px solid var(--border-hairline)}.tenant-status-indicator{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:6px;font-size:12px;font-weight:500;display:inline-flex}.tenant-status-indicator .status-dot{background:#30d158;border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.tenant-status-indicator.suspended .status-dot{background:#ff453a}.tenant-status-indicator.suspended{color:var(--text-tertiary)}.tenant-status-badge{white-space:nowrap;background:var(--bg-subtle);color:var(--text-secondary);border:1px solid var(--border-hairline);border-radius:5px;align-items:center;gap:5px;padding:2px 7px;font-size:11px;font-weight:500;display:inline-flex}.tenant-status-active{color:var(--text-secondary)}.tenant-status-suspended{color:var(--text-tertiary)}.tenant-actions-cluster{justify-content:flex-end;align-items:center;gap:6px;display:flex}.credential-chip{border:1px solid var(--border-hairline);font-family:var(--font-numeric);color:var(--text-primary);background:#ffffff0d;border-radius:6px;align-items:center;gap:6px;padding:3px 8px;font-size:11.5px;display:inline-flex}.inspect-studios-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;margin-top:16px;display:grid}.inspect-studio-card{background:var(--surface);border:1px solid var(--border-hairline);border-radius:var(--radius-card);flex-direction:column;justify-content:space-between;padding:20px;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex}.inspect-studio-card:hover{border-color:#ffffff38;transform:translateY(-2px);box-shadow:0 8px 24px #0000001f}.inspect-studio-header{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.inspect-studio-name{color:var(--text-primary);margin-bottom:2px;font-size:16px;font-weight:600}.inspect-designer-name{color:var(--text-secondary);font-size:13px}.inspect-metrics-row{border:1px solid var(--border-hairline);text-align:center;background:#ffffff08;border-radius:8px;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:14px 0 16px;padding:10px;display:grid}.inspect-metric-item .lbl{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.03em;margin-bottom:4px;font-size:10.5px}.inspect-metric-item .val{font-family:var(--font-numeric);color:var(--text-primary);font-size:13.5px;font-weight:600}.saas-plans-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:16px;display:grid}.saas-plan-card{background:var(--surface);border:1px solid var(--border-hairline);border-radius:var(--radius-card);flex-direction:column;padding:24px;transition:transform .15s,border-color .15s;display:flex;position:relative}.saas-plan-card.highlighted{border-color:var(--border-medium);box-shadow:0 4px 20px #00000040}.saas-plan-badge{background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border-medium);letter-spacing:-.01em;text-transform:none;border-radius:999px;padding:2px 9px;font-size:11px;font-weight:500;position:absolute;top:-10px;right:20px}.saas-plan-name{color:var(--text-primary);margin-bottom:6px;font-size:18px;font-weight:700}.saas-plan-desc{color:var(--text-secondary);min-height:38px;margin-bottom:16px;font-size:13px}.saas-plan-price{font-family:var(--font-numeric);color:var(--text-primary);margin-bottom:2px;font-size:28px;font-weight:700}.saas-plan-cycle{color:var(--text-tertiary);margin-bottom:20px;font-size:12px}.saas-plan-features{flex:1;margin:0 0 24px;padding:0;list-style:none}.saas-plan-features li{color:var(--text-secondary);border-bottom:1px solid #ffffff08;align-items:center;gap:8px;padding:6px 0;font-size:12.5px;display:flex}.saas-plan-features li svg{color:#30d158;flex-shrink:0}
.pulse-dot{background:currentColor;border-radius:50%;width:7px;height:7px;animation:2s infinite applePulse;display:inline-block;box-shadow:0 0 #30d158b3}@keyframes applePulse{0%{transform:scale(.95);box-shadow:0 0 #30d158b3}70%{transform:scale(1);box-shadow:0 0 0 6px #30d15800}to{transform:scale(.95);box-shadow:0 0 #30d15800}}.settings-grid-2col{grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:24px;display:grid}@media (max-width:900px){.settings-grid-2col{grid-template-columns:1fr}}.settings-card{background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;justify-content:space-between;display:flex;overflow:hidden}.settings-card-header{border-bottom:1px solid var(--border-hairline);background:var(--bg-subtle);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.settings-card-title-group{align-items:center;gap:12px;display:flex}.settings-card-heading{color:var(--text-primary);letter-spacing:-.015em;font-size:14.5px;font-weight:600}.settings-card-subtitle{color:var(--text-tertiary);margin-top:1px;font-size:11.5px}.settings-rows-list{flex-direction:column;flex:1;display:flex}.settings-row{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:13px 20px;transition:background .15s;display:flex}[data-theme=light] .settings-row{border-bottom:1px solid #0000000d}.settings-row:last-child{border-bottom:none}.settings-row:hover{background:var(--bg-hover)}.settings-row-left{align-items:center;gap:12px;min-width:0;display:flex}.settings-icon-badge{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.settings-icon-blue{color:#0a84ff;background:#ffffff14}.settings-icon-purple{color:#bf5af2;background:#bf5af224}.settings-icon-green{color:#30d158;background:#30d15824}.settings-icon-amber{color:#ff9f0a;background:#ff9f0a24}.settings-icon-red{color:#ff453a;background:#ff453a24}.settings-icon-cyan{color:#64d2ff;background:#64d2ff24}.settings-row-info{flex-direction:column;min-width:0;display:flex}.settings-row-title{color:var(--text-primary);letter-spacing:-.01em;font-size:13px;font-weight:500}.settings-row-desc{color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:11px;overflow:hidden}.settings-row-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.settings-val-badge{font-family:var(--font-numeric);color:var(--text-primary);background:var(--bg-subtle);border:1px solid var(--border-hairline);border-radius:6px;padding:4px 10px;font-size:12.5px;font-weight:500}.settings-host-badge{font-family:var(--font-numeric);color:var(--text-secondary);background:var(--bg-subtle);border:1px solid var(--border-hairline);border-radius:6px;padding:4px 9px;font-size:11.5px}.settings-card-footer{background:var(--bg-subtle);border-top:1px solid var(--border-hairline);justify-content:space-between;align-items:center;gap:12px;padding:12px 20px;display:flex}.settings-db-grid{grid-template-columns:repeat(3,1fr);gap:16px;padding:20px;display:grid}@media (max-width:960px){.settings-db-grid{grid-template-columns:1fr}}.settings-db-tile{background:var(--bg-subtle);border:1px solid var(--border-hairline);border-radius:var(--radius-md);flex-direction:column;justify-content:space-between;gap:14px;padding:18px;transition:border-color .15s,box-shadow .15s;display:flex}.settings-db-tile:hover{box-shadow:var(--shadow-sm);border-color:#ffffff2e}.settings-db-tile-head{align-items:center;gap:10px;display:flex}.settings-db-tile-title{color:var(--text-primary);font-size:13.5px;font-weight:600}.settings-db-tile-desc{color:var(--text-secondary);margin-top:4px;font-size:12px;line-height:1.45}.settings-db-tile-meta{background:var(--bg-surface);border:1px solid var(--border-hairline);color:var(--text-tertiary);font-size:11.5px;font-family:var(--font-numeric);border-radius:6px;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.settings-db-tile-meta strong{color:var(--text-primary);font-weight:600}
.apple-datepicker-container{width:100%;position:relative}.apple-date-trigger{cursor:pointer;background:var(--bg-surface);border:1px solid var(--border-hairline);color:var(--text-primary);font-size:13px;font-family:var(--font-numeric);text-align:left;-webkit-user-select:none;user-select:none;border-radius:var(--radius-sm);justify-content:space-between;align-items:center;width:100%;padding:8px 12px;transition:border-color .2s,box-shadow .2s;display:flex}.apple-date-trigger:hover{border-color:#ffffff38}.apple-datepicker-popover{-webkit-backdrop-filter:blur(24px)saturate(180%);z-index:1050;color:#fff;background:#1c1c1ef5;border:1px solid #ffffff1f;border-radius:12px;width:290px;padding:14px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 16px 40px #0000008c,0 0 0 1px #ffffff14}[data-theme=light] .apple-datepicker-popover{color:#1d1d1f;background:#fffffffa;border-color:#0000001f;box-shadow:0 16px 40px #00000026,0 0 0 1px #0000000d}.dp-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.dp-header-selects{flex:1;justify-content:center;align-items:center;gap:6px;display:flex}.dp-select{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff1f;border-radius:6px;outline:none;padding:4px 8px;font-family:inherit;font-size:13px;font-weight:600;transition:all .15s}.dp-select:focus{border-color:#0a84ff;box-shadow:0 0 0 2px #ffffff2e}[data-theme=light] .dp-select{color:#1d1d1f;background:#0000000d;border-color:#0000001f}.dp-select option{color:#fff;background:#1c1c1e}[data-theme=light] .dp-select option{color:#1d1d1f;background:#fff}.dp-month-label{letter-spacing:-.01em;font-size:13.5px;font-weight:600}.dp-nav-btn{cursor:pointer;width:26px;height:26px;color:inherit;background:#ffffff14;border:1px solid #ffffff1a;border-radius:6px;justify-content:center;align-items:center;font-size:16px;line-height:1;transition:background .15s;display:flex}[data-theme=light] .dp-nav-btn{background:#0000000d;border-color:#00000014}.dp-nav-btn:hover{background:#ffffff2e}.dp-presets{flex-wrap:wrap;gap:5px;margin-bottom:12px;display:flex}.dp-preset-btn{color:var(--text-secondary);cursor:pointer;background:#ffffff0f;border:1px solid #ffffff17;border-radius:999px;padding:3px 8px;font-size:10.5px;font-weight:500;transition:all .15s}[data-theme=light] .dp-preset-btn{color:#636366;background:#0000000a;border-color:#00000014}.dp-preset-btn:hover{color:#0a84ff;background:#ffffff14;border-color:#ffffff2e}.dp-weekdays{text-align:center;color:var(--text-tertiary);grid-template-columns:repeat(7,1fr);margin-bottom:6px;font-size:11px;font-weight:600;display:grid}.dp-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.dp-day{aspect-ratio:1;font-size:12px;font-family:var(--font-numeric);cursor:pointer;color:inherit;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .15s;display:flex}.dp-day:hover:not(.disabled):not(.selected){background:#ffffff1f}[data-theme=light] .dp-day:hover:not(.disabled):not(.selected){background:#00000012}.dp-day.selected{font-weight:600;color:#fff!important;background:#0a84ff!important}.dp-day.today{box-shadow:inset 0 0 0 1.5px #0a84ff}.dp-day.empty{cursor:default;pointer-events:none}.dp-day.disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.apple-lifetime-input{border-radius:var(--radius-sm);background:var(--bg-subtle);border:1px solid var(--border-hairline);height:42px;color:var(--text-secondary);-webkit-user-select:none;user-select:none;box-sizing:border-box;align-items:center;padding:0 12px;font-size:13px;font-weight:500;display:flex}[data-theme=light] .apple-lifetime-input{color:#48484a;background:#f5f5f7;border-color:#e5e5e7}.pm-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin-top:20px;display:grid}.pm-card{background:var(--bg-card);border:1px solid var(--border-hairline);border-radius:var(--radius-md);cursor:pointer;flex-direction:column;padding:22px;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s,border-color .2s;display:flex;position:relative}.pm-card:hover{border-color:var(--accent);box-shadow:var(--shadow-md);transform:translateY(-2px)}.pm-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.pm-card-title{color:var(--text-primary);font-size:16px;font-weight:600;line-height:1.3}.pm-card-subtitle{color:var(--text-secondary);align-items:center;gap:6px;margin-top:4px;font-size:12.5px;display:flex}.pm-tag{border-radius:var(--radius-xs);letter-spacing:.01em;background:var(--bg-subtle);color:var(--text-secondary);border:1px solid var(--border-hairline);align-items:center;padding:3px 9px;font-size:11px;font-weight:500;display:inline-flex}.pm-tag-execution{color:var(--text-primary)!important;background:#ffffff14!important;border:1px solid #ffffff2e!important}[data-theme=light] .pm-tag-execution{color:var(--text-primary)!important;background:#0000000d!important;border:1px solid #0000001f!important}.pm-tag-handed-over,.pm-tag-approved{color:#30d158;background:#34c7591f;border:1px solid #34c75947}.pm-tag-estimation,.pm-tag-snagging,.pm-tag-completed{background:var(--bg-subtle);color:var(--text-secondary);border:1px solid var(--border-hairline)}
.profit-pill{border-radius:var(--radius-xs);font-size:12px;font-weight:600;font-family:var(--font-numeric);background:var(--bg-subtle);color:var(--text-primary);border:1px solid var(--border-hairline);align-items:center;gap:4px;padding:3px 8px;display:inline-flex}.profit-pill.thriving,.profit-pill.healthy,.profit-pill.warning,.profit-pill.critical{background:var(--bg-subtle);color:var(--text-primary);border:1px solid var(--border-hairline)}.workspace-shell{flex-direction:column;flex:1;display:flex}.workspace-header-bar{background:var(--bg-card);border-bottom:1px solid var(--border-hairline);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:18px 28px;display:flex}.workspace-title-box{flex-direction:column;gap:4px;display:flex}.ws-meta-chips-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.ws-meta-chip{color:var(--text-secondary);border-radius:var(--radius-xs,6px);background:var(--bg-surface);border:1px solid var(--border-hairline);align-items:center;gap:5px;padding:3px 9px;font-size:12px;line-height:1.3;display:inline-flex}.workspace-nav-strip{background:var(--bg-surface);border-bottom:1px solid var(--border-hairline);gap:8px;padding:0 28px;display:flex;overflow-x:auto}.workspace-tab-btn{color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:8px;padding:13px 18px;font-size:13.5px;font-weight:500;transition:all .15s;display:flex}.workspace-tab-btn:hover{color:var(--text-primary)}.workspace-tab-btn.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.workspace-tab-badge{border-radius:var(--radius-pill);background:var(--bg-subtle);color:var(--text-secondary);padding:1px 6px;font-size:11px}.workspace-tab-btn.active .workspace-tab-badge{background:var(--accent-soft);color:var(--accent)}.pnl-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin-bottom:24px;display:grid}.pnl-kpi-card{background:var(--bg-card);border:1px solid var(--border-hairline);border-radius:var(--radius-md);flex-direction:column;gap:6px;padding:18px 20px;display:flex}.pnl-kpi-label{text-transform:uppercase;color:var(--text-tertiary);letter-spacing:.04em;font-size:11.5px;font-weight:600}.pnl-kpi-val{color:var(--text-primary);font-size:22px;font-weight:700;font-family:var(--font-numeric);letter-spacing:-.02em}.pnl-kpi-sub{color:var(--text-secondary);align-items:center;gap:6px;font-size:12px;display:flex}
.cat-progress-box{background:var(--bg-card);border:1px solid var(--border-hairline);border-radius:var(--radius-md);margin-bottom:24px;padding:22px}.cat-bar-item{margin-bottom:16px}.cat-bar-item:last-child{margin-bottom:0}.cat-bar-labels{justify-content:space-between;margin-bottom:6px;font-size:13px;display:flex}.cat-bar-track{background:var(--bg-subtle);border-radius:var(--radius-pill);height:8px;position:relative;overflow:hidden}.cat-bar-fill{border-radius:var(--radius-pill);height:100%;transition:width .3s}.filter-chips-strip{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-chip{border-radius:var(--radius-pill);background:var(--bg-card);border:1px solid var(--border-hairline);color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;padding:6px 14px;font-size:12.5px;font-weight:500;transition:all .15s}.filter-chip:hover{border-color:var(--border-strong);color:var(--text-primary)}.filter-chip.active{background:var(--text-primary);color:var(--bg-surface);border-color:var(--text-primary);font-weight:600}.pm-table{border-collapse:separate;border-spacing:0;width:100%;font-size:13px}.pm-table th{background:var(--bg-subtle);color:var(--text-secondary);text-align:left;border-bottom:1px solid var(--border-hairline);text-transform:uppercase;letter-spacing:.04em;padding:12px 16px;font-size:11.5px;font-weight:600}.pm-table td{border-bottom:1px solid var(--border-hairline);color:var(--text-primary);vertical-align:middle;padding:14px 16px}.pm-table tr:hover td{background:var(--bg-hover)}.pm-table-empty{text-align:center;color:var(--text-tertiary);padding:48px 24px;font-size:14px}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.client-autocomplete-list{background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);z-index:1050;max-height:200px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 32px #0006}.client-autocomplete-item{cursor:pointer;color:var(--text-primary);border-bottom:1px solid var(--border-hairline);justify-content:space-between;align-items:center;padding:10px 14px;font-size:13.5px;transition:background .15s;display:flex}.client-autocomplete-item:last-child{border-bottom:none}.client-autocomplete-item:hover,.client-autocomplete-item.selected{background:var(--bg-hover)}.client-proj-chip{background:var(--bg-subtle);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;padding:5px 10px;font-size:12px;transition:all .15s;display:inline-flex}.client-proj-chip:hover{background:var(--bg-hover);border-color:var(--border-medium);transform:translateY(-1px)}.client-portfolio-kpi-card{background:var(--bg-subtle);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);padding:12px 14px}.client-portfolio-kpi-val{font-size:16px;font-weight:700;font-family:var(--font-numeric);color:var(--text-primary);margin-top:4px}.pm-client-uid-badge{font-size:11.5px;font-weight:600;font-family:var(--font-numeric);color:var(--text-secondary);background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-pill);letter-spacing:.02em;padding:2px 7px}.client-dash-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.client-dash-title-group{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.client-dash-project-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;margin-top:14px;display:grid}.client-dash-proj-card{background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-md);cursor:pointer;flex-direction:column;padding:18px 20px;transition:all .2s;display:flex}.client-dash-proj-card:hover{border-color:var(--border-medium);transform:translateY(-2px);box-shadow:0 8px 24px #00000040}.item-custom-rate-row{background:var(--bg-surface-elevated,#ffffff08);border:1px solid var(--border-hairline,#ffffff14);border-radius:var(--radius-md,8px);grid-template-columns:1fr 140px 36px;align-items:center;gap:8px;padding:8px 10px;display:grid}.item-custom-rate-row input{font-size:12.5px}.item-custom-rate-delete-btn{width:32px;height:32px;color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.item-custom-rate-delete-btn:hover{color:#ff453a;background:#ff453a26}.tier-select-card{background:var(--bg-surface-elevated,#ffffff08);border:1px solid var(--border-hairline,#ffffff14);border-radius:var(--radius-md,10px);cursor:pointer;-webkit-user-select:none;user-select:none;text-align:left;justify-content:space-between;align-items:center;padding:13px 16px;transition:all .18s cubic-bezier(.16,1,.3,1);display:flex}.tier-select-card:hover{background:var(--bg-hover,#ffffff14);border-color:var(--text-primary,#fff);transform:translateY(-1px);box-shadow:0 4px 16px #0000004d}.tier-select-card.active-default{border-color:#ffffff47}.tier-select-card-info{flex-direction:column;flex:1;gap:3px;padding-right:12px;display:flex}.tier-select-card-name{color:var(--text-primary);align-items:center;gap:8px;font-size:13.5px;font-weight:600;display:flex}.tier-select-card-tag{color:var(--text-secondary);background:#ffffff1a;border-radius:999px;padding:2px 7px;font-size:10.5px;font-weight:500}.tier-select-card-tag.custom{color:#34c759;background:#34c75926;border:1px solid #34c75940}.tier-select-card-desc{color:var(--text-tertiary);font-size:11.5px}.tier-select-card-rate{text-align:right;flex-shrink:0}.tier-select-card-price{font-family:var(--font-numeric,sans-serif);color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.tier-select-card-unit{color:var(--text-tertiary);font-size:11px}
@keyframes viewFadeSlide{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes dropdownAppear{0%{opacity:0;transform:translateY(-5px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}#saasMainContent>*,.page-container,.project-workspace,.workspace-shell,.saas-admin-container,.workspace-tab-pane,#proposalContent,#projectCardsContainer,#clientsContainer,#clientCardsContainer{animation:.26s cubic-bezier(.16,1,.3,1) both viewFadeSlide}.btn{transition:transform .15s cubic-bezier(.16,1,.3,1),background .15s,border-color .15s,box-shadow .15s,opacity .15s!important}.btn:active{transform:scale(.96)!important}.nav-link{transition:all .18s cubic-bezier(.16,1,.3,1)}.nav-link:active{transform:scale(.98)}.workspace-tab-btn{transition:all .18s cubic-bezier(.16,1,.3,1)}.workspace-tab-btn:active{transform:scale(.96)}.content-card,.metric-card,.pnl-kpi-card,.settings-card,.tier-select-card{transition:transform .24s cubic-bezier(.16,1,.3,1),box-shadow .24s cubic-bezier(.16,1,.3,1),border-color .2s}.content-card:hover{border-color:#ffffff29}[data-theme=light] .content-card:hover{border-color:#0000001f}.status-dropdown-menu,.action-dropdown-menu,.action-menu-dropdown{animation:.18s cubic-bezier(.16,1,.3,1) forwards dropdownAppear}.apple-modal-overlay.active{animation:.2s cubic-bezier(.16,1,.3,1) modalFadeIn}.trade-search-wrap{width:100%;position:relative}.trade-flyout{background:var(--bg-card);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);max-height:230px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);z-index:1050;flex-direction:column;display:flex;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.trade-item-row{border-bottom:1px solid var(--border-subtle);cursor:pointer;color:var(--text-primary);justify-content:space-between;align-items:center;padding:8px 12px;font-size:13px;transition:background .15s;display:flex;position:relative}.trade-item-row:last-child{border-bottom:none}.trade-item-row:hover{background:var(--bg-hover)}.trade-item-row.selected{background:var(--accent-soft);color:var(--accent);font-weight:500}.trade-item-text{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.trade-item-actions{align-items:center;gap:4px;display:flex}.trade-dots-btn{color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;padding:3px 6px;font-size:13px;line-height:1;transition:all .15s}.trade-dots-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.trade-mini-popover{background:var(--bg-card);border:1px solid var(--border-hairline);border-radius:var(--radius-xs);box-shadow:var(--shadow-md);z-index:1100;min-width:90px;padding:4px;animation:.15s cubic-bezier(.16,1,.3,1) forwards dropdownAppear;position:absolute;top:100%;right:8px}.trade-mini-popover-btn{color:#ff453a;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:6px;width:100%;padding:5px 8px;font-size:11.5px;transition:background .15s;display:flex}.trade-mini-popover-btn:hover{background:#ff453a1f}.trade-add-footer{background:var(--bg-subtle);border-top:1px dashed var(--border-hairline);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.trade-add-trigger-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:2px 0;font-size:12px;font-weight:500;display:flex}.trade-add-trigger-btn:hover{text-decoration:underline}.custom-subcat-inline-wrap{background:var(--bg-subtle);border:1px solid var(--border-hairline);border-radius:var(--radius-xs);margin-top:8px;padding:10px;animation:.2s cubic-bezier(.16,1,.3,1) both viewFadeSlide}
.file-upload-zone{border:1px dashed var(--border-medium);border-radius:var(--radius-sm);cursor:pointer;background:#ffffff05;justify-content:center;align-items:center;min-height:52px;padding:11px 14px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.file-upload-zone:hover{border-color:var(--accent);background:#0071e30a}.upload-placeholder{color:var(--text-secondary);pointer-events:none;align-items:center;gap:10px;font-size:12.5px;display:flex}.upload-placeholder svg{color:var(--text-tertiary);flex-shrink:0}.upload-preview{justify-content:space-between;align-items:center;gap:12px;width:100%;padding:4px 6px;display:flex}.upload-preview-left{align-items:center;gap:10px;display:flex;overflow:hidden}.upload-thumb-img{object-fit:cover;border:1px solid var(--border-hairline);border-radius:4px;flex-shrink:0;width:36px;height:36px}.upload-file-icon{width:32px;height:32px;color:var(--accent);background:#ffffff0f;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.upload-file-meta{overflow:hidden}.upload-file-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:240px;font-size:12.5px;font-weight:500;overflow:hidden}.upload-file-size{color:var(--text-tertiary);margin-top:1px;font-size:11px}.upload-remove-btn{color:#ff453a;cursor:pointer;background:#ff453a1a;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;transition:all .15s;display:flex}.upload-remove-btn:hover{color:#fff;background:#ff453a}.receipt-view-badge{color:var(--accent);cursor:pointer;background:#0071e31a;border:none;border-radius:4px;align-items:center;gap:4px;margin-top:3px;padding:2px 7px;font-size:11px;font-weight:500;transition:background .15s;display:inline-flex}.receipt-view-badge:hover{background:#0071e333}.subcat-dots-btn{opacity:.6;border-radius:3px;flex-shrink:0;margin-left:6px;padding:2px 4px;transition:all .15s}.apple-select-option:hover .subcat-dots-btn{opacity:1}.subcat-dots-btn:hover{background:var(--bg-hover);color:var(--text-primary)}[data-theme=dark] .login-btn{color:#000!important;background:#fff!important;box-shadow:0 4px 14px #00000080!important}[data-theme=dark] .login-btn:hover{color:#000!important;background:#e5e5e7!important;box-shadow:0 6px 20px #000000b3!important}[data-theme=light] .login-btn{color:#fff!important;background:#000!important;box-shadow:0 4px 14px #00000026!important}[data-theme=light] .login-btn:hover{color:#fff!important;background:#1d1d1f!important;box-shadow:0 6px 20px #00000040!important}.client-dash-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.client-dash-title-group{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.client-dash-project-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;margin-top:14px;display:grid}.client-dash-proj-card{background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-md);cursor:pointer;flex-direction:column;padding:18px 20px;transition:all .2s;display:flex}.client-dash-proj-card:hover{border-color:var(--border-medium);transform:translateY(-2px);box-shadow:0 8px 24px #00000040}.tier-select-card{background:var(--bg-surface-elevated,#ffffff08);border:1px solid var(--border-hairline,#ffffff14);border-radius:var(--radius-md,10px);cursor:pointer;-webkit-user-select:none;user-select:none;text-align:left;justify-content:space-between;align-items:center;margin-bottom:8px;padding:13px 16px;transition:all .18s cubic-bezier(.16,1,.3,1);display:flex}.tier-select-card:hover{background:var(--bg-hover,#ffffff14);border-color:var(--accent,#0071e3);transform:translateY(-1px);box-shadow:0 4px 16px #00000040}.tier-select-card.active-default{border-color:var(--accent,#0071e3);background:var(--accent-soft,#0071e31a)}.tier-select-card-info{flex-direction:column;flex:1;gap:3px;padding-right:12px;display:flex}.tier-select-card-name{color:var(--text-primary);align-items:center;gap:8px;font-size:13.5px;font-weight:600;display:flex}.tier-select-card-tag{color:var(--text-secondary);background:#ffffff1a;border-radius:999px;padding:2px 7px;font-size:10.5px;font-weight:500}.tier-select-card-tag.custom{color:#34c759;background:#34c75926;border:1px solid #34c75940}.tier-select-card-desc{color:var(--text-tertiary);font-size:11.5px}.tier-select-card-rate{text-align:right;flex-shrink:0}.tier-select-card-price{font-family:var(--font-numeric,sans-serif);color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.tier-select-card-unit{color:var(--text-tertiary);font-size:11px}.item-custom-rate-delete-btn{width:32px;height:32px;color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.item-custom-rate-delete-btn:hover{color:#ff453a;background:#ff453a26}@media print{body *{visibility:hidden}.client-presentation-sheet,.client-presentation-sheet *{visibility:visible}.client-presentation-sheet{width:100%;margin:0;padding:24px;position:absolute;top:0;left:0;color:#1d1d1f!important;background:#fff!important}.hide-on-print{display:none!important}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.98)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
.mobile-top-bar,.mobile-bottom-bar,.mobile-drawer-overlay{display:none}@media (max-width:768px){.saas-layout{flex-direction:column!important;width:100vw!important;height:100dvh!important;overflow:hidden!important}.saas-sidebar{display:none!important}.saas-main{-webkit-overflow-scrolling:touch!important;flex:1!important;width:100%!important;min-height:0!important;padding:12px 14px 75px!important;overflow-y:auto!important}.mobile-top-bar{background:var(--bg-card);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border-hairline);z-index:90;height:52px;padding:0 16px;padding-top:env(safe-area-inset-top,0px);flex-shrink:0;justify-content:space-between;align-items:center;display:flex!important}.mobile-header-btn{background:var(--bg-surface);border:1px solid var(--border-hairline);width:34px;height:34px;color:var(--text-primary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.mobile-header-btn:active{background:var(--bg-hover);transform:scale(.94)}.mobile-drawer-overlay{-webkit-backdrop-filter:blur(10px);z-index:999;background:#000000a6;animation:.2s drawerFadeIn;position:fixed;inset:0;display:block!important}.mobile-drawer-content{background:var(--bg-app);border-right:1px solid var(--border-hairline);flex-direction:column;width:82vw;max-width:310px;padding:20px 16px;animation:.25s cubic-bezier(.16,1,.3,1) drawerSlideIn;display:flex;position:absolute;top:0;bottom:0;left:0;box-shadow:20px 0 50px #0006}.mobile-drawer-header{border-bottom:1px solid var(--border-hairline);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:16px;display:flex}.mobile-drawer-nav{flex-direction:column;flex:1;gap:4px;display:flex;overflow-y:auto}.mobile-bottom-bar{background:var(--bg-card);-webkit-backdrop-filter:blur(24px);border-top:1px solid var(--border-hairline);z-index:90;height:58px;padding-bottom:env(safe-area-inset-bottom,0px);justify-content:space-around;align-items:center;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #0000001f;display:flex!important}.mobile-tab-item{height:100%;color:var(--text-tertiary);cursor:pointer;touch-action:manipulation;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;font-size:10px;font-weight:500;transition:all .15s;display:flex}.mobile-tab-item.active{color:var(--text-primary);font-weight:600}.mobile-tab-item svg{transition:transform .15s}.mobile-tab-item:active svg{transform:scale(.88)}.builder-layout{grid-template-columns:1fr!important;gap:16px!important}.builder-sidebar-card{padding:14px!important;position:static!important}.assembly-row{padding:14px!important}.spec-locked-strip{flex-direction:column!important;align-items:stretch!important;gap:10px!important}.spec-locked-strip>div:first-child{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))!important;gap:8px!important;width:100%!important;display:grid!important}.spec-locked-strip .field-group{flex-direction:column!important;align-items:flex-start!important;gap:4px!important}.spec-locked-strip .field-input{width:100%!important;height:34px!important;font-size:13px!important}.builder-col-spaces .builder-sidebar-card{box-shadow:none!important;background:0 0!important;border:none!important;padding:8px 0!important}.builder-col-spaces .spaces-list-container{-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;flex-direction:row!important;gap:8px!important;padding:4px 0 8px!important;overflow-x:auto!important}.builder-col-spaces .spaces-list-container::-webkit-scrollbar{display:none}.builder-col-spaces .room-nav-item{white-space:nowrap!important;border:1px solid var(--border-hairline)!important;background:var(--bg-surface)!important;border-radius:9999px!important;flex-shrink:0!important;padding:7px 14px!important}.builder-col-spaces .room-nav-item.active{background:var(--text-primary)!important;border-color:var(--text-primary)!important}.builder-col-spaces .room-nav-item.active div,.builder-col-spaces .room-nav-item.active span{color:var(--bg-app)!important}.workspace-nav-strip{-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;flex-wrap:nowrap!important;padding-bottom:6px!important;overflow-x:auto!important}.workspace-nav-strip::-webkit-scrollbar{display:none}.workspace-tab-btn{white-space:nowrap!important;flex-shrink:0!important;padding:10px 14px!important;font-size:12.5px!important}.metrics-grid{grid-template-columns:repeat(2,1fr)!important;gap:10px!important;margin-bottom:20px!important}.metric-card{border-radius:12px!important;padding:14px 12px!important}.metric-value{font-size:20px!important}.metric-label{font-size:11px!important}.pm-grid{grid-template-columns:1fr!important;gap:12px!important;margin-top:14px!important}.pm-card{border-radius:14px!important;padding:16px!important}.filter-chips-strip{-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;white-space:nowrap!important;padding-bottom:4px!important;overflow-x:auto!important}.filter-chips-strip::-webkit-scrollbar{display:none}html,body,.saas-layout{width:100%!important;max-width:100vw!important;overflow-x:hidden!important}.saas-main{-webkit-overflow-scrolling:touch!important;box-sizing:border-box!important;flex:1!important;width:100%!important;max-width:100vw!important;min-height:0!important;padding:12px 14px 75px!important;overflow:hidden auto!important}.page-container,.workspace-shell,.active-proposal-container{box-sizing:border-box!important;width:100%!important;max-width:100%!important;padding:14px 14px 85px!important;overflow-x:hidden!important}.content-card{-webkit-overflow-scrolling:touch!important;box-sizing:border-box!important;border-radius:12px!important;width:100%!important;max-width:100%!important;margin-bottom:18px!important;overflow-x:auto!important}.table-responsive,.table-scroll-container{-webkit-overflow-scrolling:touch!important;box-sizing:border-box!important;width:100%!important;max-width:100%!important;display:block!important;overflow-x:auto!important}.apple-table,.pm-table{width:100%!important;min-width:650px!important}.apple-table th,.apple-table td,.pm-table th,.pm-table td{white-space:nowrap!important;padding:10px 12px!important;font-size:12px!important}.apple-table td:nth-child(2),.pm-table td:nth-child(3){white-space:normal!important;min-width:150px!important;max-width:220px!important}.pnl-kpi-grid{grid-template-columns:repeat(2,1fr)!important;gap:8px!important;margin-bottom:16px!important;display:grid!important}.pnl-kpi-card{border-radius:10px!important;gap:3px!important;padding:10px 12px!important}.pnl-kpi-card:nth-child(3){grid-column:span 2!important}.pnl-kpi-label{letter-spacing:.03em!important;margin-bottom:2px!important;font-size:9.5px!important}.pnl-kpi-val{font-size:17px!important;line-height:1.2!important}.pnl-kpi-sub{font-size:10px!important}.workspace-header-bar{flex-direction:column!important;align-items:stretch!important;gap:12px!important;padding:14px 14px 12px!important}.workspace-header-bar>div:last-child{flex-wrap:wrap!important;gap:8px!important;width:100%!important;display:flex!important}.workspace-header-bar>div:last-child>button,.workspace-header-bar>div:last-child>.btn{flex:auto!important;justify-content:center!important}.ws-meta-chips-row{flex-wrap:wrap!important;gap:6px!important;margin-top:6px!important;display:flex!important}.ws-meta-chip{background:var(--bg-surface)!important;border:1px solid var(--border-hairline)!important;color:var(--text-secondary)!important;white-space:nowrap!important;border-radius:6px!important;align-items:center!important;gap:4px!important;padding:3px 8px!important;font-size:11px!important;display:inline-flex!important}.page-header{flex-direction:column!important;align-items:stretch!important;gap:12px!important;margin-bottom:16px!important}.page-header>div:last-child{flex-wrap:wrap!important;gap:8px!important;width:100%!important;display:flex!important}.page-header>div:last-child>button,.page-header>div:last-child>.btn{flex:auto!important;justify-content:center!important}.page-title{letter-spacing:-.02em!important;font-size:20px!important}.page-subtitle{font-size:12px!important;line-height:1.4!important}.btn:active,button:active,.pm-card:active{transform:scale(.98)}.apple-modal-overlay{align-items:flex-end!important;padding:0!important}.apple-modal-window{width:100vw!important;max-width:100vw!important;max-height:88vh!important;padding:20px 18px!important;padding-bottom:max(24px, env(safe-area-inset-bottom))!important;border-radius:20px 20px 0 0!important}}@keyframes drawerSlideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes drawerFadeIn{0%{opacity:0}to{opacity:1}}

