.saas-container{min-height:100vh;background-color:#f8fafc;display:flex;flex-direction:column;font-family:system-ui,-apple-system,sans-serif;overflow-x:hidden}.login-container{align-items:center;justify-content:center;padding:3rem 1.5rem}.saas-header{text-align:center;margin-bottom:2rem}.saas-icon-container{display:flex;justify-content:center;color:#1e293b;margin-bottom:1rem}.saas-title{font-size:1.875rem;font-weight:800;color:#0f172a;margin:0}.saas-subtitle{font-size:.875rem;color:#475569;margin-top:.5rem}.saas-card{background-color:#fff;padding:2rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;border-radius:.5rem;border:1px solid #e2e8f0;width:100%;max-width:400px}.saas-form-group{margin-bottom:1.5rem}.saas-label{display:block;font-size:.875rem;font-weight:500;color:#334155;margin-bottom:.5rem}.saas-input-wrapper{position:relative}.saas-input-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#94a3b8;display:flex;align-items:center}.saas-input{width:100%;padding:.5rem .75rem .5rem 2.5rem;border:1px solid #cbd5e1;border-radius:.375rem;font-size:.875rem;box-sizing:border-box;transition:border-color .2s,box-shadow .2s}.saas-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.saas-btn{width:100%;display:flex;justify-content:center;padding:.625rem 1rem;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;color:#fff;background-color:#0f172a;cursor:pointer;transition:background-color .2s}.saas-btn:hover{background-color:#1e293b}.saas-btn:disabled{opacity:.5;cursor:not-allowed}.saas-error{background-color:#fef2f2;border-left:4px solid #ef4444;padding:1rem;margin-bottom:1.5rem;color:#b91c1c;font-size:.875rem}.saas-footer{text-align:center;margin-top:1rem;font-size:.75rem;color:#94a3b8}.dash-nav{background-color:#fff;border-bottom:1px solid #e2e8f0;padding:.875rem 1.5rem;display:flex;justify-content:space-between;align-items:center;flex-shrink:0;position:sticky;top:0;z-index:100}.swal2-container{z-index:100000!important}.dash-nav-logo{display:flex;align-items:center;gap:.5rem;color:#1e293b;font-weight:700;font-size:1.25rem;white-space:nowrap;flex-shrink:0}.dash-nav-user{display:flex;align-items:center;gap:.75rem;font-size:.875rem;color:#475569;flex-wrap:wrap;justify-content:flex-end}.dash-logout{background:none;border:none;color:#64748b;cursor:pointer;display:flex;align-items:center}.dash-logout:hover{color:#0f172a}.dash-main{max-width:1152px;width:100%;margin:2rem auto;padding:0 1.5rem 2rem;box-sizing:border-box;flex:1 1 auto}.dash-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem;width:100%;flex-wrap:wrap}.dash-title{font-size:1.5rem;font-weight:700;color:#0f172a;margin:0}.dash-subtitle{color:#64748b;font-size:.875rem;margin-top:.25rem}.dash-btn-new{display:flex;align-items:center;gap:.5rem;background-color:#0f172a;color:#fff;padding:.5rem 1rem;border-radius:.375rem;border:none;cursor:pointer;font-size:.875rem;font-weight:500;white-space:nowrap;flex-shrink:0}.dash-btn-new:hover{background-color:#1e293b}.dash-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.dash-card{background:#fff;border-radius:.5rem;border:1px solid #e2e8f0;overflow:hidden;box-shadow:0 1px 2px #0000000d}.dash-card-img{height:8rem;background-color:#f1f5f9;display:flex;align-items:center;justify-content:center;border-bottom:1px solid #f1f5f9;position:relative}.dash-card-tag{font-size:.75rem;font-weight:700;color:#94a3b8}.dash-card-body{padding:1rem}.dash-card-title{font-weight:600;color:#0f172a;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-card-meta{display:flex;justify-content:space-between;color:#64748b;font-size:.875rem;margin-top:.5rem}.dash-card-actions{display:flex;gap:.5rem;margin-top:1rem}.dash-btn-edit{flex:1;display:flex;align-items:center;justify-content:center;gap:.25rem;background-color:#f1f5f9;color:#334155;border:none;padding:.5rem;border-radius:.25rem;font-size:.875rem;font-weight:500;cursor:pointer}.dash-btn-edit:hover{background-color:#e2e8f0}.dash-btn-del{display:flex;align-items:center;justify-content:center;background-color:#fef2f2;color:#dc2626;border:none;padding:.5rem .75rem;border-radius:.25rem;cursor:pointer}.dash-btn-del:hover{background-color:#fee2e2}.dash-empty{text-align:center;padding:5rem 0;background:#fff;border-radius:.5rem;border:1px dashed #cbd5e1}.dash-empty-icon{color:#cbd5e1;margin-bottom:1rem;display:flex;justify-content:center}@media (max-width: 900px){.dash-nav{padding:.75rem 1rem}.dash-nav-logo{font-size:1rem}.dash-nav-user{gap:.5rem}.dash-main{margin:1.25rem auto;padding:0 1rem 1.5rem}.dash-header{margin-bottom:1.25rem}.dash-title{font-size:1.25rem}.dash-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}}@media (max-width: 600px){.dash-nav{padding:.625rem .875rem;flex-wrap:nowrap}.dash-nav-logo span{display:none}.dash-nav-user{gap:.375rem;font-size:.75rem}.dash-nav-user>span{display:none}.dash-main{margin:1rem auto;padding:0 .875rem 1.5rem}.dash-header{margin-bottom:1rem;gap:.75rem}.dash-title{font-size:1.125rem}.dash-subtitle{font-size:.8rem}.dash-grid{grid-template-columns:1fr;gap:.875rem}.dash-btn-new{font-size:.8rem;padding:.4rem .75rem}.dash-empty{padding:3rem 1rem}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.admin-tabs{display:flex;gap:0;border-bottom:1.5px solid #e2e8f0;background:#fff;padding:0 1.5rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;position:sticky;top:57px;z-index:99}.admin-tabs::-webkit-scrollbar{display:none}.admin-tab{display:flex;align-items:center;gap:7px;padding:14px 20px;font-size:13px;font-weight:600;color:#64748b;border:none;background:none;cursor:pointer;border-bottom:2.5px solid transparent;margin-bottom:-1.5px;transition:color .15s,border-color .15s}.admin-tab:hover{color:#0f172a}.admin-tab.active{color:#0f172a;border-bottom-color:#0f172a}.admin-tab-badge{background:#f1f5f9;color:#64748b;font-size:11px;font-weight:700;padding:1px 7px;border-radius:99px;margin-left:2px}.admin-tab.active .admin-tab-badge{background:#0f172a;color:#fff}.admin-kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem;margin-bottom:2rem}.admin-kpi-card{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;padding:1.25rem 1.5rem;display:flex;align-items:center;gap:1rem;box-shadow:0 1px 3px #0000000a}.admin-kpi-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.admin-kpi-label{font-size:12px;color:#64748b;margin:0 0 4px;font-weight:500}.admin-kpi-value{font-size:1.75rem;font-weight:800;color:#0f172a;margin:0;line-height:1}.admin-section-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;margin-bottom:.75rem}.admin-order-row{background:#fff;border:1px solid #e2e8f0;border-radius:.375rem;padding:.875rem 1rem;display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.admin-order-name{font-weight:600;color:#0f172a;font-size:14px;margin:0}.admin-order-meta{font-size:12px;color:#94a3b8;margin:2px 0 0}.admin-order-price{font-weight:700;font-size:15px;color:#0f172a;white-space:nowrap}.admin-status-badge{display:inline-block;padding:3px 10px;border-radius:99px;font-size:12px;font-weight:600;white-space:nowrap}.admin-role-badge{display:inline-block;padding:2px 10px;border-radius:4px;font-size:11px;font-weight:700;letter-spacing:.05em}.admin-table-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;box-shadow:0 1px 3px #0000000a}.admin-table{width:100%;border-collapse:collapse;font-size:14px}.admin-table thead tr{background:#f8fafc;border-bottom:1.5px solid #e2e8f0}.admin-table th{padding:11px 16px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#64748b}.admin-table tbody tr{border-bottom:1px solid #f1f5f9;transition:background .1s}.admin-table tbody tr:last-child{border-bottom:none}.admin-table tbody tr:hover{background:#f8fafc}.admin-table td{padding:13px 16px;vertical-align:middle}.admin-icon-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;border:1px solid #e2e8f0;background:#f8fafc;color:#475569;cursor:pointer;transition:all .15s}.admin-icon-btn:hover{background:#f1f5f9;border-color:#cbd5e1;color:#0f172a}.admin-loading{text-align:center;padding:3rem 0;color:#94a3b8;font-size:14px}.admin-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:9999;display:flex;align-items:center;justify-content:center;animation:fadeIn .15s ease}.admin-modal{background:#fff;border-radius:.75rem;width:100%;max-width:440px;box-shadow:0 20px 40px #00000026;animation:slideUp .2s cubic-bezier(.16,1,.3,1)}.admin-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0}.admin-modal-header h3{font-size:1rem;font-weight:700;color:#0f172a;margin:0}.admin-modal-close{background:none;border:none;color:#94a3b8;cursor:pointer;display:flex;align-items:center;border-radius:6px;padding:4px;transition:all .15s}.admin-modal-close:hover{color:#0f172a;background:#f1f5f9}.admin-modal-body{padding:1.5rem}.admin-modal .saas-input{padding-left:.75rem}.admin-modal .saas-input-wrapper .saas-input{padding-right:2.25rem}@keyframes slideUp{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.admin-switch{position:relative;width:40px;height:22px;border-radius:99px;border:none;cursor:pointer;padding:0;flex-shrink:0;transition:background .25s ease}.admin-switch.on{background:#10b981}.admin-switch.off{background:#cbd5e1}.admin-switch.disabled{opacity:.4;cursor:not-allowed}.admin-switch-thumb{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .25s cubic-bezier(.4,0,.2,1);display:block}.admin-switch.on .admin-switch-thumb{transform:translate(18px)}.admin-search-bar{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;padding:10px 14px;margin-bottom:1.25rem;box-shadow:0 1px 2px #0000000a}.admin-search-input{flex:1;border:none;outline:none;font-size:14px;color:#0f172a;background:transparent}.admin-search-input::placeholder{color:#94a3b8}.admin-search-clear{background:none;border:none;color:#94a3b8;cursor:pointer;display:flex;align-items:center;border-radius:4px;padding:2px;transition:color .15s}.admin-search-clear:hover{color:#475569}.admin-status-pill{padding:4px 12px;border-radius:99px;border:1.5px solid;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap}.admin-status-pill:hover{opacity:.85}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}.admin-modal-footer{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:1rem 1.5rem;border-top:1px solid #e2e8f0}.admin-btn-secondary{border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:.375rem;padding:.625rem 1rem;font-size:.875rem;font-weight:600;cursor:pointer}.admin-btn-secondary:hover{background:#f8fafc}.pass-toggle-btn{position:absolute;top:50%;right:10px;transform:translateY(-50%);border:none;background:transparent;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center}.pass-toggle-btn:hover{color:#0f172a}.admin-bell-badge{position:absolute;top:2px;right:2px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;min-width:16px;height:16px;border-radius:99px;display:flex;align-items:center;justify-content:center;padding:0 4px;line-height:1}.admin-bell-dropdown{position:absolute;top:calc(100% + 10px);right:0;width:340px;background:#fff;border:1px solid #e2e8f0;border-radius:.625rem;box-shadow:0 12px 32px #0000001f;z-index:1000;overflow:hidden;animation:slideUp .18s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;max-height:420px}.admin-bell-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid #f1f5f9;cursor:pointer;transition:background .1s;flex-shrink:0}.admin-bell-list{overflow-y:auto;flex:1}.admin-bell-footer{border-top:1px solid #e2e8f0;padding:10px 14px;background:#f8fafc;display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;font-weight:600;color:#3b82f6;cursor:pointer;transition:background .15s;flex-shrink:0}.admin-bell-footer:hover{background:#eff6ff}.admin-bell-row-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;border:none;background:#fef3c7;color:#d97706;cursor:pointer;transition:all .15s}.order-sort-bar{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:1rem}.order-sort-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;margin-right:4px;white-space:nowrap}.order-sort-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:99px;border:1.5px solid #e2e8f0;background:#fff;font-size:12px;font-weight:600;color:#64748b;cursor:pointer;transition:all .15s;white-space:nowrap}.order-sort-btn:hover{border-color:#cbd5e1;color:#0f172a;background:#f8fafc}.order-sort-btn.active{border-color:#0f172a;background:#0f172a;color:#fff}.order-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.order-card{background:#fff;border:1px solid #e2e8f0;border-radius:.625rem;padding:1rem 1.125rem;box-shadow:0 1px 3px #0000000a;display:flex;flex-direction:column;gap:.625rem;cursor:pointer;transition:box-shadow .15s,transform .1s;position:relative}.order-card:hover{box-shadow:0 4px 14px #00000017;transform:translateY(-1px)}.order-card--new{border-left:3px solid #f59e0b;background:#fffdf5}.order-card-header{display:flex;align-items:center;gap:8px}.order-card-num{font-family:monospace;font-size:12px;font-weight:700;color:#475569;background:#f1f5f9;padding:2px 8px;border-radius:4px;white-space:nowrap}.order-card-name{font-size:15px;font-weight:600;color:#0f172a;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.order-card-associate{display:flex;flex-direction:column;gap:1px}.order-card-associate-name{font-size:13px;font-weight:500;color:#334155;margin:0}.order-card-associate-email{font-size:11px;color:#94a3b8;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.order-card-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #f1f5f9;padding-top:.625rem;margin-top:.125rem}.order-card-date{font-size:12px;color:#94a3b8}.order-card-price{font-size:15px;font-weight:700;color:#0f172a}.user-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:1.25rem}.user-filter-chips{display:flex;gap:6px;flex-wrap:wrap}.user-view-toggle{display:flex;border:1.5px solid #e2e8f0;border-radius:6px;overflow:hidden;flex-shrink:0}.user-view-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#fff;border:none;color:#94a3b8;cursor:pointer;transition:all .15s}.user-view-btn:hover{background:#f8fafc;color:#475569}.user-view-btn.active{background:#0f172a;color:#fff}.user-list-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;overflow:hidden;box-shadow:0 1px 3px #0000000a}.user-list-header{display:flex;align-items:center;gap:12px;padding:9px 16px;background:#f8fafc;border-bottom:1.5px solid #e2e8f0}.user-list-col{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#64748b;flex:1;min-width:0}.user-list-row{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid #f1f5f9;transition:background .1s}.user-list-row:last-child{border-bottom:none}.user-list-row:hover{background:#f8fafc}.user-list-avatar{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:700;flex-shrink:0}.user-list-identity{display:flex;flex-direction:column;gap:1px;flex:1.5;min-width:0}.user-list-company{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.user-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.user-card{background:#fff;border:1px solid #e2e8f0;border-radius:.625rem;padding:1.125rem;box-shadow:0 1px 3px #0000000a;display:flex;flex-direction:column;gap:.875rem;transition:box-shadow .15s}.user-card:hover{box-shadow:0 4px 12px #00000014}.user-card-header{display:flex;align-items:center;gap:.75rem}.user-card-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:700;flex-shrink:0;letter-spacing:.03em}.user-card-identity{flex:1;min-width:0}.user-card-name{font-size:14px;font-weight:600;color:#0f172a;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-card-email{font-size:12px;color:#94a3b8;margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-card-details{display:flex;gap:1rem;flex-wrap:wrap;background:#f8fafc;border-radius:.375rem;padding:.625rem .75rem}.user-card-detail-item{display:flex;flex-direction:column;gap:2px;min-width:0}.user-card-detail-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8}.user-card-detail-value{font-size:13px;color:#475569;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-card-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #f1f5f9;padding-top:.75rem;margin-top:.125rem}@media (max-width: 900px){.admin-tabs{padding:0 1rem;top:53px}.admin-tab{padding:12px 14px;font-size:12px;white-space:nowrap}.admin-kpi-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.user-card-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.order-card-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.admin-table th,.admin-table td{padding:10px 12px;font-size:13px}.admin-modal{max-width:calc(100vw - 2rem);margin:1rem}.profile-grid{grid-template-columns:1fr;gap:0}.admin-bell-dropdown{width:min(340px,calc(100vw - 2rem));right:-8px}}@media (max-width: 600px){.admin-tabs{padding:0 .875rem;top:49px}.admin-tab{padding:10px 12px;font-size:12px}.admin-tab-badge{margin-left:0}.admin-kpi-grid{grid-template-columns:1fr 1fr;gap:.75rem}.user-card-grid,.order-card-grid{grid-template-columns:1fr}.admin-kpi-card{padding:1rem;gap:.75rem}.admin-kpi-icon{width:40px;height:40px}.admin-kpi-value{font-size:1.4rem}.admin-table th,.admin-table td{padding:8px 10px;font-size:12px}.admin-order-row{flex-direction:column;align-items:flex-start;gap:.5rem}.admin-modal{max-width:100vw;margin:0;border-radius:.75rem .75rem 0 0;position:fixed;bottom:0;left:0;right:0;width:100%}.admin-modal-overlay{align-items:flex-end}.profile-grid{grid-template-columns:1fr;gap:0}.admin-modal-footer{flex-direction:column-reverse;gap:8px;padding:1rem}.admin-modal-footer>*{width:100%;justify-content:center;text-align:center}.admin-bell-dropdown{width:calc(100vw - 1rem);right:-.5rem}.admin-search-bar{margin-bottom:1rem}.user-view-toggle{display:none}.user-toolbar{gap:8px}.user-filter-chips{gap:4px}.user-list-header{display:none}.user-list-row{flex-wrap:wrap;gap:8px;padding:12px 14px}.user-list-identity,.user-list-company{flex:unset;width:calc(50% - 30px)}}.client-profile-card{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;padding:2rem;box-shadow:0 1px 3px #0000000a;max-width:720px}.client-profile-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #f1f5f9}.client-profile-section:last-of-type{border-bottom:none;margin-bottom:1.5rem}.client-section-title{font-size:14px;font-weight:700;color:#0f172a;margin:0 0 1.25rem;display:flex;align-items:center;gap:8px}.client-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 1.25rem}.client-order-num{position:absolute;top:8px;left:8px;background:#0f172ab3;color:#fff;font-size:11px;font-weight:700;font-family:monospace;padding:2px 8px;border-radius:4px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.admin-bell-btn{position:relative;background:none;border:none;color:#64748b;cursor:pointer;display:flex;align-items:center;padding:6px;border-radius:8px;transition:all .15s}.admin-bell-btn:hover{background:#f1f5f9;color:#0f172a}.admin-bell-badge{position:absolute;top:2px;right:2px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;min-width:16px;height:16px;border-radius:99px;display:flex;align-items:center;justify-content:center;padding:0 4px;line-height:1;animation:bellPulse 2s ease-in-out infinite}@keyframes bellPulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.admin-status-select{padding:5px 10px;border:1.5px solid #e2e8f0;border-radius:6px;font-size:13px;font-weight:600;background:#fff;cursor:pointer;outline:none;transition:border-color .15s}.admin-status-select:focus{border-color:#94a3b8}.admin-bell-dropdown{position:absolute;top:calc(100% + 10px);right:0;width:340px;background:#fff;border:1px solid #e2e8f0;border-radius:.625rem;box-shadow:0 12px 32px #0000001f;z-index:1000;overflow:hidden;animation:slideUp .18s cubic-bezier(.16,1,.3,1)}.admin-bell-dropdown-header{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#f8fafc;border-bottom:1px solid #e2e8f0;font-size:12px;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.05em}.admin-bell-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid #f1f5f9;cursor:pointer;transition:background .1s}.admin-bell-item:last-child{border-bottom:none}.admin-bell-item:hover{background:#f8fafc}.admin-bell-row-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;border:none;background:#fef3c7;color:#d97706;cursor:pointer;transition:all .15s;animation:bellRing 1.5s ease-in-out infinite}.admin-bell-row-btn:hover{background:#fde68a}@keyframes bellRing{0%,to{transform:rotate(0)}20%{transform:rotate(-12deg)}40%{transform:rotate(12deg)}60%{transform:rotate(-6deg)}80%{transform:rotate(6deg)}}.client-readonly-grid{display:flex;flex-wrap:wrap;gap:1rem 2rem}.client-readonly-field{display:flex;flex-direction:column;gap:3px;min-width:180px}.client-readonly-label{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8}.client-readonly-value{font-size:14px;font-weight:600;color:#1e293b}@media (max-width: 900px){.client-profile-card{max-width:100%}.client-form-grid{grid-template-columns:1fr;gap:0}.profile-container{padding:0}}@media (max-width: 600px){.client-profile-card{max-width:100%;padding:1.25rem}.client-form-grid{grid-template-columns:1fr;gap:0}.client-readonly-grid{gap:.75rem 1rem}.client-readonly-field{min-width:140px}.admin-bell-dropdown{width:calc(100vw - 1rem);right:-.5rem}}.wizard-layout{width:100%;height:100%;display:flex;flex-direction:column;background:var(--bg-base)}.app-error-shell{width:100%;min-height:100dvh;display:grid;place-items:center;padding:24px;overflow:auto;background:var(--bg-base)}.btn:disabled{cursor:not-allowed;opacity:.48;transform:none}.wizard-error-fallback{width:min(100%,620px);min-height:280px;margin:18px auto;padding:36px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;border:1px solid var(--border);border-radius:16px;background:var(--bg-surface);box-shadow:var(--shadow-md)}.wizard-error-fallback__icon{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:#fef2f2;color:#b91c1c;font-size:22px;font-weight:800}.wizard-error-fallback h1,.wizard-error-fallback h2,.wizard-error-fallback p{margin:0}.wizard-error-fallback h1,.wizard-error-fallback h2{color:var(--text-primary);font-size:22px}.wizard-error-fallback p,.wizard-error-fallback small{max-width:500px;color:var(--text-secondary)}.wizard-error-fallback__actions{display:flex;justify-content:center;gap:10px;margin-top:8px}@media (max-width: 520px){.wizard-error-fallback{min-height:250px;padding:26px 18px}.wizard-error-fallback__actions{width:100%;flex-direction:column}}.wizard-header{display:flex;align-items:center;justify-content:space-between;padding:14px 32px;border-bottom:1.5px solid var(--border);background:var(--bg-surface);box-shadow:var(--shadow-sm);flex-shrink:0}.wizard-logo{display:flex;align-items:center;gap:10px}.wizard-logo__icon{width:36px;height:36px;background:linear-gradient(135deg,var(--primary),var(--accent));border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px}.wizard-logo__name{font-size:18px;font-weight:700;background:linear-gradient(135deg,var(--primary-light),var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.step-indicator{display:flex;align-items:center;gap:0}.step-indicator__item{display:flex;align-items:center;gap:8px}.step-indicator__dot{width:30px;height:30px;border-radius:50%;background:var(--bg-elevated);border:2px solid var(--border-strong);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--text-muted);transition:all var(--transition);flex-shrink:0}.step-indicator__dot.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:var(--glow-primary)}.step-indicator__dot.done{background:var(--accent);border-color:var(--accent);color:#fff}.step-indicator__label{font-size:12px;font-weight:500;color:var(--text-muted);white-space:nowrap;transition:color var(--transition)}.step-indicator__label.active{color:var(--text-primary)}.step-indicator__line{width:40px;height:2px;background:var(--border);margin:0 4px;border-radius:99px;transition:background var(--transition)}.step-indicator__line.done{background:var(--accent)}.wizard-body{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:40px 24px;overflow-y:auto}.wizard-card{width:100%;max-width:1000px;margin:auto;background:var(--bg-surface);border:1.5px solid var(--border);border-radius:4px;padding:48px;box-shadow:var(--shadow-md);animation:fadeUp .4s ease}.wizard-card__eyebrow{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--primary);margin-bottom:8px}.wizard-card__title{font-size:28px;font-weight:800;color:var(--text-primary);margin-bottom:8px;line-height:1.2}.wizard-card__subtitle{font-size:14px;color:var(--text-secondary);margin-bottom:40px}.layout-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:40px}@media (max-width: 600px){.layout-grid{grid-template-columns:repeat(2,1fr)}}.layout-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px 12px 20px;background:var(--bg-surface);border:2px solid var(--border-strong);border-radius:4px;cursor:pointer;transition:all .2s ease;text-align:center;min-height:160px}.layout-card:hover:not(.coming-soon){border-color:var(--accent);background:var(--bg-elevated);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.layout-card.selected{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:var(--shadow-md);transform:translateY(-2px)}.layout-card.coming-soon{opacity:.55;cursor:not-allowed}.layout-card__icon{line-height:0;color:currentColor}.layout-card__label{font-size:13px;font-weight:700;color:currentColor}.layout-info{margin-top:-20px;margin-bottom:26px;padding:14px 16px;border:1.5px solid var(--border);border-radius:8px;background:var(--bg-base)}.layout-info__title{font-size:14px;font-weight:800;color:var(--text-primary);margin-bottom:6px}.layout-info__desc{font-size:13px;color:var(--text-secondary);margin-bottom:8px}.layout-info__meta{font-size:12px;color:var(--text-muted);line-height:1.35}.layout-card__check{position:absolute;top:8px;left:10px;width:20px;height:20px;background:var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;color:#fff;line-height:1}.layout-card__soon{position:absolute;top:6px;right:8px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;background:var(--bg-elevated);color:var(--text-muted);border-radius:99px;padding:2px 6px;border:1px solid var(--border-strong)}.option-grid{display:grid;gap:16px;margin-bottom:40px}.option-grid--3{grid-template-columns:repeat(3,1fr)}.option-grid--2{grid-template-columns:repeat(2,1fr)}.option-grid--5{grid-template-columns:repeat(5,1fr)}.option-card{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px 16px;background:var(--bg-base);border:2px solid var(--border);border-radius:4px;cursor:pointer;transition:all var(--transition);text-align:center}.option-card:hover{border-color:var(--accent);background:#f191440d;transform:translateY(-2px);box-shadow:var(--shadow-sm)}.option-card.selected{border-color:var(--primary);background:#1a1a1a0f;box-shadow:var(--glow-primary)}.option-card__icon{font-size:36px;line-height:1}.option-card__label{font-size:13px;font-weight:700;color:var(--text-primary)}.option-card__desc{font-size:11px;color:var(--text-muted);line-height:1.4}.dim-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:40px}.dim-item{display:flex;flex-direction:column;gap:10px}.dim-item__title{font-size:13px;font-weight:600;color:var(--text-primary)}.dim-item__inputs{display:flex;gap:8px}.dim-sub-input{flex:1;display:flex;flex-direction:column;gap:4px}.dim-tag{font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}.finish-grid{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:40px}.finish-swatch{display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;padding:8px;border-radius:12px;border:2px solid transparent;transition:all var(--transition)}.finish-swatch:hover{border-color:var(--border-strong)}.finish-swatch.selected{border-color:var(--primary);background:#7c5cfc1a}.finish-swatch__color{width:52px;height:52px;border-radius:50%;border:3px solid rgba(255,255,255,.1);box-shadow:var(--shadow-sm);transition:transform var(--transition)}.finish-swatch:hover .finish-swatch__color{transform:scale(1.1)}.finish-swatch__label{font-size:11px;font-weight:500;color:var(--text-secondary)}.wizard-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:8px}.info-note{display:flex;gap:10px;align-items:flex-start;background:#6b46f50f;border:1.5px solid rgba(107,70,245,.18);border-radius:12px;padding:14px 16px;margin-bottom:32px;font-size:13px;color:var(--text-secondary)}.info-note__icon{flex-shrink:0}.dim-summary{display:flex;justify-content:center;gap:10px;flex-wrap:nowrap;margin-bottom:32px}.dim-chip{display:flex;align-items:center;justify-content:center;gap:6px;background:var(--bg-base);border:1.5px solid var(--border-strong);border-radius:99px;padding:6px 14px;font-size:13px;min-width:auto;flex:1;white-space:nowrap}.dim-chip__icon{font-size:14px}.dim-chip__label{color:var(--text-secondary);font-weight:500}.dim-chip__val{color:var(--primary);font-weight:700;font-variant-numeric:tabular-nums;display:inline-block;min-width:3.5ch;text-align:right}.dim-chip__unit{font-size:11px;color:var(--text-muted);margin-left:1px}.dim-chip--opening{background:#4a90d90f;border-color:#4a90d94d}.dim-chip--opening .dim-chip__val{color:#4a90d9}.autopopulate-cta{display:flex;gap:12px;margin-bottom:16px}.wizard-body--editor{padding:0;align-items:stretch;justify-content:stretch}.btn-volver-dashboard{background:transparent;color:var(--text-primary);border:1.5px solid var(--text-primary);border-radius:4px;padding:7px 16px;font-size:12px;font-weight:600;letter-spacing:.03em;cursor:pointer;white-space:nowrap;transition:background .2s ease,color .2s ease;flex-shrink:0}.btn-volver-dashboard:hover{background:var(--text-primary);color:#fff}@media (max-width: 1280px){.wizard-header{padding:12px 20px}.wizard-logo__name{font-size:15px}.wizard-body{padding:16px}.wizard-card{padding:24px;max-width:100%}.wizard-card__title{font-size:22px}.wizard-card__subtitle{margin-bottom:16px;font-size:13px}.layout-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:28px}.dim-grid{gap:16px;margin-bottom:28px}.option-grid--3{grid-template-columns:repeat(2,1fr)}.option-grid--5{grid-template-columns:repeat(3,1fr)}.step-indicator__label{display:none}.step-indicator__line{width:24px}.finish-grid{gap:8px}.finish-swatch__color{width:44px;height:44px}.dim-summary{flex-wrap:wrap;gap:8px;margin-bottom:20px}.info-note{margin-bottom:20px;padding:10px 14px}.dim-chip{flex:0 1 auto;font-size:11px;padding:4px 10px}.dim-chip__icon{font-size:12px}.dim-chip__unit{font-size:9px}}@media (max-width: 768px){.wizard-header{padding:10px 14px}.wizard-logo__icon{width:30px;height:30px;font-size:15px}.wizard-body{padding:16px 12px}.wizard-card{padding:20px 16px;border-radius:8px}.wizard-card__title{font-size:18px}.wizard-card__subtitle{font-size:12px;margin-bottom:20px}.dim-grid{grid-template-columns:1fr}.option-grid--3,.option-grid--5{grid-template-columns:repeat(2,1fr)}.wizard-nav{flex-direction:column-reverse;gap:10px}.wizard-nav .btn{width:100%;justify-content:center}.layout-card{min-height:120px;padding:16px 8px 14px}.btn-volver-dashboard{font-size:11px;padding:5px 10px}.dim-chip{font-size:10px;padding:4px 8px}}.floorplan-wrap{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;margin-bottom:28px}.floorplan-custom-toolbar{width:100%;display:flex;align-items:center;gap:10px;justify-content:center;flex-wrap:wrap}.floorplan-custom-toolbar .btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.custom-toolbar-btn{width:100%;display:flex;align-items:center;justify-content:center;background:var(--bg-base);border:1.5px solid var(--border-strong);border-radius:8px;padding:10px 14px;font-size:12px;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s ease}.custom-toolbar-btn:hover:not(:disabled){border-color:var(--accent);background:var(--accent);color:#fff;transform:translateY(-1px)}.custom-toolbar-btn:disabled{opacity:.5;cursor:not-allowed}.custom-toolbar-box{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-base);border:1.5px solid var(--border-strong);border-radius:8px;padding:10px 14px;transition:all .2s ease}.floorplan-custom-help{display:flex;flex-direction:column;gap:3px;margin-bottom:10px;font-size:12px;color:var(--text-secondary)}.floorplan-custom-help strong{color:var(--text-primary);font-size:13px;font-weight:650}.floorplan-custom-help__heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.custom-tour-launch{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:5px 10px;border:1px solid #c7d2fe;border-radius:8px;background:#eef2ff;color:#4338ca;font-size:10.5px;font-weight:750;cursor:pointer}.custom-tour-launch:hover{border-color:#818cf8;background:#e0e7ff}.custom-tour-launch:focus-visible{outline:3px solid rgba(79,70,229,.2);outline-offset:2px}.floorplan-custom-help span{color:#5b4bd8}.custom-plan-layout{display:grid;grid-template-columns:minmax(0,1fr) 284px;align-items:start;gap:18px;width:100%}.custom-plan-workspace{min-width:0}.custom-plan-canvas{position:relative}.custom-plan-toolrail{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;padding:7px;border:1px solid #dbe3ee;border-radius:11px;background:#f8fafc}.custom-plan-toolgroup{display:inline-flex;align-items:center;gap:4px}.custom-plan-toolgroup+.custom-plan-toolgroup{padding-left:8px;border-left:1px solid #dbe3ee}.custom-plan-toolgroup button,.custom-reference-panel button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:32px;padding:5px 9px;border:1px solid #d7dee8;border-radius:8px;background:#fff;color:#475569;font-size:10px;font-weight:750;cursor:pointer;transition:border-color .12s ease,background .12s ease,color .12s ease}.custom-plan-toolgroup button:hover:not(:disabled),.custom-reference-panel button:hover:not(:disabled){border-color:#93c5fd;background:#eff6ff;color:#1d4ed8}.custom-plan-toolgroup button.is-active,.custom-reference-panel button.is-active{border-color:#2563eb;background:#2563eb;color:#fff}.custom-plan-toolgroup button:disabled{opacity:.38;cursor:not-allowed}.custom-plan-toolgroup .custom-plan-zoom-value{min-width:50px;padding-inline:7px;color:#172033;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-variant-numeric:tabular-nums}.custom-plan-snap-tools small{max-width:72px;color:#64748b;font-size:8.5px;line-height:1.15}.custom-plan-file-input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.custom-reference-panel{display:grid;grid-template-columns:minmax(150px,1fr) minmax(145px,.8fr) minmax(145px,.8fr) auto;align-items:center;gap:12px;margin-bottom:8px;padding:8px 10px;border:1px solid #f2c879;border-radius:10px;background:#fff8e8;box-shadow:inset 3px 0 #e9a23b}.custom-reference-panel__identity{display:flex;align-items:center;min-width:0;gap:8px;color:#9a5a10}.custom-reference-panel__identity>div{display:flex;min-width:0;flex-direction:column}.custom-reference-panel__identity strong{color:#713f12;font-size:10px}.custom-reference-panel__identity span{overflow:hidden;color:#9a6a27;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.custom-reference-panel label{display:flex;min-width:0;flex-direction:column;gap:3px}.custom-reference-panel label span{color:#713f12;font-size:9px;font-weight:700}.custom-reference-panel input[type=range]{width:100%;accent-color:#d97706}.custom-reference-panel__actions{display:flex;gap:4px}.custom-reference-panel__actions button{width:33px;padding:0}.custom-reference-panel__actions button.is-danger{color:#b91c1c}.custom-reference-panel__note{grid-column:1 / -1;margin:-3px 0 0;padding-top:6px;border-top:1px solid rgba(217,119,6,.2);color:#8a5a1e;font-size:9px;line-height:1.35}.custom-plan-canvas.is-pan-mode .floorplan-svg,.custom-plan-canvas.is-pan-mode .custom-anchor,.custom-plan-canvas.is-pan-mode .custom-segment-hit,.custom-plan-canvas.is-pan-mode .custom-segment-measure,.custom-plan-canvas.is-pan-mode .custom-opening-measure{cursor:grab}.custom-plan-canvas.is-panning .floorplan-svg,.custom-plan-canvas.is-panning .custom-anchor,.custom-plan-canvas.is-panning .custom-segment-hit,.custom-plan-canvas.is-panning .custom-segment-measure,.custom-plan-canvas.is-panning .custom-opening-measure{cursor:grabbing}.custom-snap-guides line{stroke:#0ea5e9;stroke-width:1.4;stroke-dasharray:6 5;vector-effect:non-scaling-stroke}.custom-snap-guides text{fill:#0369a1;stroke:#f7f9fc;stroke-width:4;paint-order:stroke;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;font-weight:800}.custom-plan-canvas.is-placing .floorplan-svg{cursor:crosshair;box-shadow:0 0 0 3px #2563eb24,var(--shadow-sm)}.custom-plan-placement-banner{position:absolute;z-index:40;top:12px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;width:max-content;max-width:calc(100% - 24px);padding:8px 10px 8px 12px;border:1px solid #93c5fd;border-radius:999px;background:#eff6fff5;box-shadow:0 8px 20px #1e40af21;color:#1e3a8a;font-size:12px;font-weight:650;pointer-events:none}.custom-plan-placement-banner button{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:0;border-radius:50%;background:#dbeafe;color:#1e40af;cursor:pointer;pointer-events:auto}.custom-plan-status{display:flex;align-items:center;gap:8px;min-height:36px;margin-top:10px;padding:8px 12px;border:1px solid var(--border);border-radius:9px;background:var(--bg-base);color:var(--text-secondary);font-size:11.5px}.custom-plan-status__dot{width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:#2563eb;box-shadow:0 0 0 4px #2563eb1c}.custom-segment-hit{cursor:pointer}.custom-segment-hit:focus{outline:none;stroke:#2563eb6b;stroke-width:9}.custom-segment-measure,.custom-opening-measure{cursor:pointer}.custom-measure-box{fill:#fff;stroke:#cbd5e1;stroke-width:1.4;filter:drop-shadow(0 1px 2px rgba(15,23,42,.08));transition:fill .12s ease,stroke .12s ease}.custom-measure-leader{stroke:#94a3b8;stroke-width:1.5;stroke-dasharray:4 3}.custom-measure-leader__origin{fill:#fff;stroke:#64748b;stroke-width:1.5}.custom-segment-measure.is-active .custom-measure-leader,.custom-opening-measure.is-active .custom-measure-leader,.custom-segment-measure.is-active .custom-measure-leader__origin,.custom-opening-measure.is-active .custom-measure-leader__origin{stroke:#2563eb;stroke-width:2}.custom-segment-measure:hover .custom-measure-box,.custom-opening-measure:hover .custom-measure-box{fill:#eff6ff;stroke:#60a5fa}.custom-segment-measure.is-active .custom-measure-box,.custom-opening-measure.is-active .custom-measure-box{fill:#eff6ff;stroke:#2563eb;stroke-width:2}.custom-opening-measure:focus{outline:none}.custom-opening-measure:focus .custom-measure-box{fill:#eff6ff;stroke:#2563eb;stroke-width:2}.custom-opening-preview__erase{stroke:#f7f9fc;stroke-width:11;stroke-linecap:round}.custom-opening-preview__gap{stroke:#2563eb;stroke-width:3.5;stroke-linecap:round;stroke-dasharray:9 6}.custom-opening-preview circle{fill:#2563eb;stroke:#fff;stroke-width:2}.custom-opening-preview rect{fill:#1d4ed8;stroke:#fff;stroke-width:1.5}.custom-opening-measure.is-closing .custom-measure-box{filter:none}.custom-opening-preview text{fill:#fff;font-size:10.5px;font-weight:750;letter-spacing:.01em}.custom-measure-value{fill:#172033;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;font-weight:750;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none}.custom-measure-name{fill:#64748b;font-size:10px;font-weight:700;letter-spacing:.02em;-webkit-user-select:none;user-select:none}.custom-anchor{cursor:grab}.custom-anchor:active{cursor:grabbing}.custom-anchor__halo{fill:#e53e3e24;transition:fill .12s ease}.custom-anchor__dot{fill:#e53e3e;stroke:#fff;stroke-width:2.5}.custom-anchor__label{fill:#475569;font-size:11px;font-weight:750;-webkit-user-select:none;user-select:none;pointer-events:none}.custom-anchor.is-active .custom-anchor__halo{fill:#2563eb38}.custom-anchor:focus{outline:none}.custom-anchor:focus .custom-anchor__halo{fill:#2563eb38}.custom-anchor:focus .custom-anchor__dot{fill:#2563eb}.custom-anchor.is-active .custom-anchor__dot{fill:#2563eb}.custom-anchor.is-active .custom-anchor__label{fill:#1d4ed8}.custom-segment-add{color:#fff;cursor:pointer;outline:none}.custom-segment-add circle{fill:#2563eb;stroke:#fff;stroke-width:3;filter:drop-shadow(0 4px 7px rgba(37,99,235,.3));transition:fill .12s ease,transform .12s ease;transform-box:fill-box;transform-origin:center}.custom-segment-add:hover circle,.custom-segment-add:focus circle{fill:#1d4ed8;transform:scale(1.08)}.custom-segment-add svg{color:#fff;pointer-events:none}.custom-plan-inspector{overflow:hidden;border:1px solid #cbd5e1;border-radius:12px;background:#fff;box-shadow:0 10px 30px #0f172a14}.custom-plan-inspector__header{display:flex;align-items:center;gap:10px;padding:13px 14px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.custom-plan-inspector__header>div:last-child{display:flex;flex-direction:column;gap:1px}.custom-plan-inspector__header strong{color:#172033;font-size:12px;font-weight:750}.custom-plan-inspector__header span{color:#64748b;font-size:10.5px}.custom-plan-inspector__icon{display:grid;place-items:center;width:32px;height:32px;flex:0 0 auto;border-radius:8px;background:#e0e7ff;color:#4338ca}.custom-height-card{display:grid;grid-template-columns:1fr auto;grid-template-areas:"label value" "minimum value";align-items:center;width:calc(100% - 24px);margin:12px;padding:10px 11px;border:1px solid #d8dee8;border-radius:9px;background:#f8fafc;color:#172033;text-align:left;cursor:pointer;transition:border-color .12s ease,background .12s ease}.custom-height-card:hover,.custom-height-card.is-active{border-color:#60a5fa;background:#eff6ff}.custom-height-card>span{grid-area:label;color:#64748b;font-size:10px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.custom-height-card small{grid-area:minimum;margin-top:3px;color:#2563eb;font-size:9px;font-weight:750;letter-spacing:.02em}.custom-height-card strong{grid-area:value;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;font-variant-numeric:tabular-nums}.custom-plan-inspector__body{min-height:258px;padding:0 12px 12px}.custom-inspector-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:236px;padding:20px;color:#94a3b8;text-align:center}.custom-inspector-empty strong{margin-top:10px;color:#475569;font-size:12px}.custom-inspector-empty p{max-width:210px;margin:5px 0 0;font-size:10.5px;line-height:1.45}.custom-inspector-section{padding-top:2px}.custom-inspector-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:2px}.custom-inspector-title span{color:#172033;font-size:13px;font-weight:750}.custom-inspector-title strong{color:#1d4ed8;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;font-variant-numeric:tabular-nums}.custom-inspector-meta{margin:0 0 10px;color:#64748b;font-size:10.5px}.custom-inspector-note{margin:7px 1px 0;color:#64748b;font-size:10px;line-height:1.4}.imperial-editor{padding:10px;border:1px solid #dbe3ee;border-radius:10px;background:#f8fafc}.imperial-editor__fields{display:flex;align-items:end;justify-content:center;gap:5px}.imperial-editor__fields label{display:flex;flex-direction:column;align-items:center;gap:3px}.imperial-editor__fields label span,.imperial-editor__fractions legend{color:#64748b;font-size:9px;font-weight:750;letter-spacing:.07em;text-transform:uppercase}.imperial-editor__fields input{width:118px;height:38px;padding:0 4px;border:1.5px solid #c7d2fe;border-radius:8px;outline:none;background:#fff;color:#172033;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:16px;font-weight:750;text-align:center;font-variant-numeric:tabular-nums}.imperial-editor__fields input:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51f}.imperial-editor__separator{padding-bottom:7px;color:#6366f1;font-size:19px;font-weight:800}.imperial-editor__fractions{margin:10px 0 0;padding:0;border:0}.imperial-editor__fractions legend{margin-bottom:5px}.imperial-editor__fractions>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.imperial-editor__fractions button{min-width:0;height:35px;padding:0;border:1px solid #dbe3ee;border-radius:7px;background:#fff;color:#475569;font-size:13px;font-weight:750;cursor:pointer}.imperial-editor__fractions button:hover{border-color:#818cf8}.imperial-editor__fractions button.is-active{border-color:#4f46e5;background:#4f46e5;color:#fff}.imperial-editor__error{margin:7px 0 0;color:#b91c1c;font-size:10px;line-height:1.35}.imperial-editor__actions{display:grid;grid-template-columns:.8fr 1.2fr;gap:6px;margin-top:9px}.measure-action,.custom-primary-action,.custom-danger-action,.custom-opening-move-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;border-radius:8px;font-size:10.5px;font-weight:700;cursor:pointer}.measure-action{border:1px solid transparent}.measure-action--secondary{border-color:#d7dee8;background:#fff;color:#475569}.measure-action--primary,.custom-primary-action{border-color:#2563eb;background:#2563eb;color:#fff}.measure-action--primary:hover,.custom-primary-action:hover:not(:disabled){background:#1d4ed8}.custom-primary-action,.custom-danger-action,.custom-opening-move-action{width:100%;margin-top:9px;border:1px solid}.custom-opening-move-action{border-color:#93c5fd;background:#eff6ff;color:#1d4ed8}.custom-opening-move-action:hover:not(:disabled){border-color:#3b82f6;background:#dbeafe}.custom-danger-action{border-color:#fecaca;background:#fff7f7;color:#b91c1c}.custom-danger-action:hover:not(:disabled){background:#fee2e2}.custom-primary-action:disabled,.custom-danger-action:disabled,.custom-opening-move-action:disabled{opacity:.48;cursor:not-allowed}.custom-opening-move-editor{padding:10px;border:1px solid #93c5fd;border-radius:10px;background:linear-gradient(180deg,#eff6ff,#f8fafc)}.custom-opening-move-editor__heading{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#1d4ed8}.custom-opening-move-editor__heading>div{display:flex;flex-direction:column;gap:1px}.custom-opening-move-editor__heading span,.custom-opening-move-editor>p:first-of-type{color:#64748b;font-size:9px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.custom-opening-move-editor__heading strong{color:#172033;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:15px}.custom-opening-move-editor>p:first-of-type{margin:11px 0 6px}.custom-opening-alignments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.custom-opening-alignments button{min-width:0;min-height:34px;padding:5px 3px;border:1px solid #d7dee8;border-radius:7px;background:#fff;color:#475569;font-size:9px;font-weight:700;cursor:pointer}.custom-opening-alignments button.is-active{border-color:#2563eb;background:#2563eb;color:#fff}.custom-opening-alignments button:disabled{opacity:.4;cursor:not-allowed}.custom-opening-offset{display:flex;flex-direction:column;gap:5px;margin-top:10px}.custom-opening-offset span{color:#475569;font-size:10px;font-weight:650}.custom-opening-offset input{width:100%;accent-color:#2563eb;cursor:ew-resize}.custom-opening-move-error{margin:7px 0 0;padding:6px 7px;border-radius:6px;background:#fef2f2;color:#b91c1c;font-size:9.5px;line-height:1.35}.custom-opening-move-editor__note{margin:8px 0 0;color:#475569;font-size:9.5px;line-height:1.4}.custom-opening-move-editor__actions{display:grid;grid-template-columns:.8fr 1.2fr;gap:6px;margin-top:9px}.custom-opening-move-editor__actions button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:36px;border:1px solid #d7dee8;border-radius:8px;background:#fff;color:#475569;font-size:9.5px;font-weight:750;cursor:pointer}.custom-opening-move-editor__actions button.is-primary{border-color:#2563eb;background:#2563eb;color:#fff}.custom-opening-move-editor__actions button:disabled{opacity:.45;cursor:not-allowed}.custom-height-minimum-note{display:flex;align-items:flex-start;gap:7px;margin:8px 0 0;padding:7px 8px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#1e3a8a;font-size:9.5px;line-height:1.4}.custom-height-minimum-note span{display:grid;place-items:center;width:24px;height:24px;flex:0 0 auto;border-radius:7px;background:#2563eb;color:#fff;font-size:8px;font-weight:800}.custom-height-quick{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.custom-height-quick button{height:34px;border:1px solid #d7dee8;border-radius:8px;background:#fff;color:#334155;font-size:11px;font-weight:700;cursor:pointer}.custom-height-quick button:hover{border-color:#60a5fa;background:#eff6ff}.custom-height-quick button:disabled{opacity:.42;cursor:not-allowed}.custom-topology-warning{margin:0 12px 10px;padding:8px 9px;border:1px solid #fde68a;border-radius:8px;background:#fffbeb;color:#92400e;font-size:9.5px;line-height:1.4}.custom-plan-inspector__utilities{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:10px 12px;border-top:1px solid #e2e8f0;background:#f8fafc}.custom-plan-inspector__utilities button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:35px;border:1px solid #d7dee8;border-radius:8px;background:#fff;color:#334155;font-size:10px;font-weight:700;cursor:pointer}.custom-plan-inspector__utilities button:hover:not(:disabled){border-color:#94a3b8;background:#f1f5f9}.custom-plan-inspector__utilities button:disabled{opacity:.42;cursor:not-allowed}.custom-tour-layer{position:fixed;z-index:10000;top:0;right:0;bottom:0;left:0;pointer-events:none}.custom-tour-shield{position:fixed;z-index:0;top:0;right:0;bottom:0;left:0;background:transparent;pointer-events:auto}.custom-tour-layer.has-no-target .custom-tour-shield{background:#0f172aad}.custom-tour-spotlight{position:fixed;z-index:1;border:2px solid #60a5fa;border-radius:14px;box-shadow:0 0 0 9999px #0f172aad,0 0 0 6px #60a5fa2e;pointer-events:none;transition:top .18s ease,left .18s ease,width .18s ease,height .18s ease}.custom-tour-panel{position:fixed;z-index:2;bottom:24px;left:50%;width:min(430px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;padding:20px;border:1px solid rgba(148,163,184,.45);border-radius:16px;outline:none;background:#fff;box-shadow:0 24px 70px #0f172a57;color:#172033;transform:translate(-50%);pointer-events:auto}.custom-tour-panel.is-top{top:24px;bottom:auto}.custom-tour-panel:focus-visible{box-shadow:0 24px 70px #0f172a57,0 0 0 4px #60a5fa59}.custom-tour-panel__close{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:8px;background:#f1f5f9;color:#475569;cursor:pointer}.custom-tour-panel__close:hover{background:#e2e8f0}.custom-tour-panel__eyebrow{padding-right:36px;color:#2563eb;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.custom-tour-panel__progress{display:grid;grid-template-columns:repeat(auto-fit,minmax(24px,1fr));gap:5px;margin:10px 0 15px}.custom-tour-panel__progress span{height:4px;border-radius:999px;background:#e2e8f0}.custom-tour-panel__progress span.is-active{background:#2563eb}.custom-tour-panel h2{margin:0;color:#0f172a;font-size:21px;line-height:1.2}.custom-tour-panel p{margin:8px 0 0;color:#475569;font-size:13px;line-height:1.55}.custom-tour-panel__actions{display:flex;justify-content:space-between;gap:10px;margin-top:18px}.custom-tour-panel__actions button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:40px;padding:8px 14px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#475569;font-size:11px;font-weight:750;cursor:pointer}.custom-tour-panel__actions button:disabled{opacity:.38;cursor:not-allowed}.custom-tour-panel__actions .custom-tour-panel__next{border-color:#2563eb;background:#2563eb;color:#fff}.custom-tour-panel button:focus-visible{outline:3px solid rgba(37,99,235,.25);outline-offset:2px}.floorplan-svg{display:block;height:auto;max-width:100%;border-radius:12px;border:1.5px solid var(--border-strong);box-shadow:var(--shadow-sm);overflow:visible;touch-action:none;-webkit-user-select:none;user-select:none}.floorplan-hint{display:flex;align-items:center;gap:4px;font-size:11.5px;color:var(--text-secondary);background:var(--bg-base);border:1.5px solid var(--border);border-radius:99px;padding:5px 14px}.floorplan-hint__dot{color:#e53e3e;font-size:9px}.unit-badge{display:inline-flex;align-items:center;margin-left:8px;background:#6b46f514;border:1.5px solid rgba(107,70,245,.2);border-radius:99px;padding:2px 10px;font-size:11px;font-weight:700;color:var(--primary);letter-spacing:.04em}.dim-chip__unit{font-size:11px;color:var(--text-muted);margin-left:2px}.dim-chip__minimum{margin-left:3px;padding:2px 6px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:9px;font-weight:750;white-space:nowrap}@media (max-width: 1280px){.floorplan-wrap{margin-bottom:16px}.floorplan-hint{font-size:10px;padding:4px 10px}}@media (max-width: 1050px){.custom-plan-layout{grid-template-columns:1fr}.custom-plan-toolrail{justify-content:flex-start;flex-wrap:wrap}.custom-reference-panel{grid-template-columns:minmax(150px,1fr) minmax(130px,1fr) minmax(130px,1fr) auto}.custom-plan-inspector{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(280px,1.3fr);grid-template-areas:"header body" "height body" "utilities body" "warning body"}.custom-plan-inspector__header{grid-area:header}.custom-height-card{grid-area:height;align-self:start}.custom-plan-inspector__body{grid-area:body;min-height:0;padding-top:12px;border-left:1px solid #e2e8f0}.custom-plan-inspector__utilities{grid-area:utilities}.custom-topology-warning{grid-area:warning}.custom-inspector-empty{min-height:220px}}@media (max-width: 768px){.floorplan-hint{font-size:9px;padding:4px 8px;border-radius:12px}.custom-plan-layout{gap:12px}.custom-plan-toolrail{align-items:stretch}.custom-plan-toolgroup{flex:1 1 auto}.custom-plan-toolgroup+.custom-plan-toolgroup{padding-left:0;border-left:0}.custom-plan-snap-tools small{display:none}.custom-reference-panel{grid-template-columns:minmax(130px,1fr) auto}.custom-reference-panel>label{grid-column:1 / -1}.custom-reference-panel__actions{grid-column:2;grid-row:1}.custom-plan-inspector{display:block}.custom-plan-inspector__body{min-height:0;padding-top:2px;border-left:0}.custom-inspector-empty{min-height:150px}.imperial-editor__fractions button{height:44px}.custom-plan-placement-banner{border-radius:10px;font-size:10.5px}.floorplan-custom-help__heading{align-items:flex-start}.custom-tour-launch{flex:0 0 auto}.custom-tour-panel{top:auto;bottom:16px;width:calc(100vw - 24px);max-height:min(58vh,440px);padding:17px;border-radius:14px}.custom-tour-panel.is-top{top:16px;bottom:auto}.custom-tour-panel h2{font-size:18px}.custom-tour-panel p{font-size:12px}}@media (prefers-reduced-motion: reduce){.custom-tour-spotlight{transition:none}}.editor-layout{width:100%;height:100%;display:flex;flex-direction:column;background:var(--bg-base)}.editor-header{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;border-bottom:1.5px solid var(--border);background:var(--bg-surface);box-shadow:var(--shadow-sm);flex-shrink:0;z-index:10}.editor-header__logo{display:flex;align-items:center;gap:10px}.editor-header__logo-icon{width:32px;height:32px;background:var(--primary);border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:16px}.editor-header__logo-name{font-size:16px;font-weight:700;color:var(--primary);letter-spacing:.03em}.editor-header__info{font-size:12px;color:var(--text-secondary);display:flex;gap:8px;flex-wrap:wrap}.editor-header__tag{display:flex;align-items:center;gap:5px;background:var(--bg-base);padding:4px 10px;border-radius:2px;border:1.5px solid var(--border-strong);font-weight:500;color:var(--text-secondary)}.editor-body{flex:1;display:flex;overflow:hidden}.editor-canvas-wrap{flex:1;position:relative;overflow:hidden}.editor-canvas-hint{position:absolute;bottom:16px;left:50%;transform:translate(-50%);background:#ffffffd9;border:1.5px solid var(--border-strong);border-radius:99px;padding:6px 18px;font-size:12px;color:var(--text-secondary);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;z-index:5;box-shadow:var(--shadow-sm)}.sidebar{width:var(--editor-sidebar-w);flex-shrink:0;background:var(--bg-surface);border-left:1.5px solid var(--border);display:flex;flex-direction:column;overflow:hidden;box-shadow:-2px 0 12px #0000000f}.sidebar__header{padding:16px 16px 0;border-bottom:1px solid var(--border)}.sidebar__tabs{display:flex;gap:4px}.sidebar__tab{flex:1;padding:10px 8px;font-size:12px;font-weight:600;color:var(--text-muted);border-radius:8px 8px 0 0;border-bottom:2px solid transparent;transition:all var(--transition)}.sidebar__tab.active{color:var(--accent);border-bottom-color:var(--accent)}.sidebar__tab:hover:not(.active){color:var(--text-secondary);background:var(--bg-base)}.sidebar__content{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:4px}.sidebar__section{margin-bottom:16px}.sidebar__section-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:8px;padding:0 4px}.sidebar__autopop{width:100%;font-size:12px;padding:10px 12px}.wall-tabs{display:flex;gap:4px;flex-wrap:nowrap}.wall-tab{flex:1;padding:6px 2px;font-size:10px;text-align:center;font-weight:600;border-radius:2px;background:var(--bg-elevated);color:var(--text-secondary);border:1.5px solid var(--border-strong);transition:all var(--transition)}.wall-tab.active{background:var(--primary);color:#fff;border-color:var(--primary)}.wall-tab:hover:not(.active){background:var(--bg-hover);color:var(--text-primary)}.module-list{display:flex;flex-direction:column;gap:8px}.module-item{display:flex;flex-direction:row;align-items:center;gap:12px;padding:10px 12px;background:var(--bg-base);border:1.5px solid var(--border);border-radius:4px;cursor:pointer;transition:all var(--transition);text-align:left;position:relative;overflow:hidden}.module-item:hover{border-color:var(--accent);background:#f191440d;transform:translate(2px);box-shadow:var(--shadow-sm)}.module-item__icon{font-size:20px;flex-shrink:0}.module-item__info{width:100%;display:flex;flex-direction:column;gap:2px}.module-item__label{font-size:12px;font-weight:600;color:var(--text-primary)}.module-item__desc{font-size:10px;color:var(--text-muted);line-height:1.3}.module-item__accent{width:3px;height:100%;border-radius:0 4px 4px 0;position:absolute;right:0;top:0;bottom:0}.module-item--active{border-color:var(--accent);background:#f1914414;box-shadow:var(--glow-accent)}.module-item__widths{color:var(--accent);font-weight:600}.width-picker-section{background:#f191440d;border:1.5px solid rgba(241,145,68,.25);border-radius:4px;padding:12px}.width-picker{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.width-btn{flex:1;min-width:40px;padding:8px 6px;font-size:13px;font-weight:700;border-radius:2px;border:2px solid var(--border-strong);background:var(--bg-base);color:var(--text-secondary);transition:all var(--transition)}.width-btn:hover{border-color:var(--accent);color:var(--accent)}.width-btn.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:var(--glow-primary)}.width-picker-actions{display:flex;flex-direction:column;gap:6px}.width-confirm{width:100%;font-size:12px;padding:10px}.width-cancel{width:100%;font-size:11px;padding:6px}.pref-swatch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.pref-swatch{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border-radius:4px;border:2px solid var(--border);transition:all var(--transition);cursor:pointer}.pref-swatch.selected{border-color:var(--accent);background:#f1914414}.pref-swatch:hover:not(.selected){border-color:var(--border-strong)}.pref-swatch__color{width:36px;height:36px;border-radius:50%;border:2px solid rgba(255,255,255,.1)}.pref-swatch__label{font-size:10px;color:var(--text-secondary);font-weight:500}.sidebar__selection{padding:12px;border-top:1.5px solid var(--border);background:var(--bg-base)}.selection-card{background:var(--bg-surface);border:2px solid var(--accent);border-radius:4px;padding:14px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--glow-accent)}.selection-card__type{font-size:14px;font-weight:700;color:var(--text-primary)}.selection-card__meta{font-size:11px;color:var(--text-secondary)}.selection-card__remove{width:100%;font-size:12px;padding:8px;margin-top:4px}.sidebar__footer{padding:12px;border-top:1px solid var(--border)}.sidebar__footer .btn{width:100%;font-size:12px}.price-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;background:var(--bg-surface);border-top:1.5px solid var(--border);box-shadow:0 -2px 12px #0000000f;flex-shrink:0;z-index:10;gap:16px}.price-bar__left{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary)}.price-bar__count{font-weight:700;color:var(--text-primary)}.price-bar__sep{color:var(--text-muted)}.price-bar__right{display:flex;align-items:center;gap:16px}.price-bar__label{font-size:12px;color:var(--text-secondary)}.price-bar__total{font-size:24px;font-weight:800;color:var(--accent)}.price-bar__cta{font-size:13px;padding:10px 20px}.autopopulate-cta{display:flex;gap:12px}.dim-item--disabled{opacity:.35;pointer-events:none}.sidebar__actions{display:flex;flex-direction:row;gap:8px}.drawer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:9999;animation:fadeIn .2s ease-out}.drawer-panel{position:fixed;top:0;right:0;bottom:0;width:400px;background:var(--bg-surface);box-shadow:-4px 0 24px #0000001a;z-index:10000;display:flex;flex-direction:column;animation:slideLeft .3s cubic-bezier(.16,1,.3,1)}.drawer-header{padding:20px 24px;border-bottom:1.5px solid var(--border);display:flex;align-items:center;justify-content:space-between}.drawer-header h2{font-size:18px;font-weight:800;color:var(--text-primary);letter-spacing:.03em;text-transform:uppercase;margin:0}.drawer-header .close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-secondary);transition:color var(--transition)}.drawer-header .close-btn:hover{color:var(--accent)}.drawer-content{flex:1;overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;gap:16px}.drawer-item{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:16px;border-bottom:1px dashed var(--border);gap:12px}.drawer-item:last-child{border-bottom:none}.drawer-item__qty{font-weight:700;color:var(--text-secondary);min-width:20px}.drawer-item__details{flex:1;display:flex;flex-direction:column}.drawer-item__title{font-weight:700;font-size:14px;color:var(--text-primary)}.drawer-item__sub{font-size:12px;color:var(--text-muted);margin-top:2px}.drawer-item__price{font-weight:700;font-size:14px;color:var(--text-primary)}.drawer-footer{padding:24px;border-top:1.5px solid var(--border);background:var(--bg-elevated)}.drawer-footer__total{display:flex;justify-content:space-between;align-items:center;font-size:20px;font-weight:800;color:var(--accent);margin-bottom:16px}@keyframes slideLeft{0%{transform:translate(100%)}to{transform:translate(0)}}.btn-cotizacion{background:transparent;color:var(--text-primary);border:2px solid var(--accent-light);border-radius:4px;padding:8px 18px;font-size:13px;font-weight:700;letter-spacing:.04em;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}.btn-cotizacion:hover{background:var(--accent-light);color:#fff;border-color:var(--accent-light)}.btn--secondary{background:#fff!important;color:#000!important;border:2px solid #000000!important;transition:all .2s ease!important}.btn--secondary:hover:not(:disabled){background:#000!important;color:#fff!important}.btn--primary{background:var(--accent)!important;color:#fff!important;border:2px solid transparent!important;transition:all .2s ease!important}.btn--primary:hover:not(:disabled){background:var(--accent-dark)!important;transform:translateY(-2px);box-shadow:var(--glow-accent)}.swal2-container{z-index:999999!important}.tour-target-active{position:relative;z-index:202!important;box-shadow:0 0 0 3px #f19144fa,0 18px 48px #0f172a47!important}.editor-tour{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;pointer-events:none}.editor-tour__backdrop,.editor-tour__backdrop-piece{position:fixed;z-index:200;background:#0f172aad;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:auto}.editor-tour__backdrop{top:0;right:0;bottom:0;left:0}.editor-tour__spotlight{position:fixed;z-index:201;border:3px solid var(--accent);border-radius:14px;box-shadow:0 0 0 4px #f191442e;pointer-events:none}.editor-tour__card{position:fixed;z-index:204;padding:20px;color:var(--text-primary);background:#fffdfa;border:1px solid rgba(241,145,68,.38);border-radius:18px;box-shadow:0 24px 64px #0f172a47;pointer-events:auto}.editor-tour__close{position:absolute;top:10px;right:10px;width:32px;height:32px;display:grid;place-items:center;color:var(--text-secondary);background:#f8fafc;border:0;border-radius:50%;cursor:pointer}.editor-tour__close:hover{color:var(--text-primary);background:#f1f5f9}.editor-tour__eyebrow{margin:0 36px 6px 0;color:var(--accent-dark);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.editor-tour__title{margin:0 36px 8px 0;font-size:19px;line-height:1.2}.editor-tour__body{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.5}.editor-tour__actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:18px}.editor-tour__btn{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:8px 13px;border-radius:999px;font-size:12px;font-weight:750;cursor:pointer}.editor-tour__btn--ghost{color:var(--text-secondary);background:#fff;border:1px solid #d7dee8}.editor-tour__btn--ghost:hover:not(:disabled){color:var(--text-primary);border-color:#aeb8c7}.editor-tour__btn--ghost:disabled{opacity:.42;cursor:default}.editor-tour__btn--primary{color:#fff;background:var(--accent);border:1px solid var(--accent)}.editor-tour__btn--primary:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.editor-help-button{position:relative}.editor-help-button--pulse{color:var(--accent-dark)!important;border-color:var(--accent)!important;animation:editor-help-pulse 1.5s ease-in-out 3}.editor-help-button--pulse:after{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border:2px solid rgba(241,145,68,.66);border-radius:50%;animation:editor-help-ring 1.5s ease-out 3}.editor-toggle-hint{position:fixed;top:50%;z-index:180;max-width:220px;padding:10px 12px;color:#fff;background:#0f172af0;border-radius:10px;box-shadow:0 12px 28px #0f172a3d;font-size:12px;line-height:1.35;transform:translateY(-50%)}.editor-toggle-hint--left{left:62px}.editor-toggle-hint--right{right:62px}@keyframes editor-help-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes editor-help-ring{0%{opacity:.9;transform:scale(.82)}to{opacity:0;transform:scale(1.35)}}.sidebar-toggle{display:none}@media (max-width: 1280px){.editor-tour__card{max-width:min(320px,calc(100vw - 32px))}.sidebar{position:absolute;top:0;bottom:0;z-index:30;transition:transform .3s cubic-bezier(.16,1,.3,1);box-shadow:4px 0 24px #00000026;width:var(--editor-sidebar-w)!important}.sidebar--left{left:0;border-right:1.5px solid var(--border);border-left:none;transform:translate(-100%)}.sidebar--right{right:0;border-left:1.5px solid var(--border);border-right:none;transform:translate(100%)}.sidebar--left.sidebar--open,.sidebar--right.sidebar--open{transform:translate(0)}.editor-canvas-wrap{flex:1;width:100%;position:relative}.editor-body{position:relative}.sidebar-backdrop{display:none;position:absolute;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:29;animation:fadeIn .2s ease}.sidebar-backdrop--visible{display:block}.sidebar-toggle{display:flex;align-items:center;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);z-index:25;width:36px;height:64px;background:var(--bg-surface);border:1.5px solid var(--border-strong);border-radius:0 8px 8px 0;cursor:pointer;box-shadow:2px 0 8px #0000001a;transition:background .2s ease,box-shadow .2s ease;flex-direction:column;gap:4px;padding:0;color:var(--text-secondary)}.sidebar-toggle:hover{background:var(--bg-elevated);box-shadow:2px 0 12px #00000026;color:var(--accent)}.sidebar-toggle--left{left:0;border-radius:0 8px 8px 0;border-left:none}.sidebar-toggle--right{right:0;border-radius:8px 0 0 8px;border-right:none}.sidebar-toggle__bar{display:block;width:14px;height:2px;background:currentColor;border-radius:2px;transition:transform .2s}.price-bar{padding:8px 16px;gap:10px;flex-wrap:wrap}.sidebar{overflow-x:hidden}.wall-tabs{flex-wrap:wrap}.sidebar__actions{flex-direction:column}.sidebar__actions .btn{width:100%!important;flex:none!important}.price-bar__left{font-size:11px;gap:6px}.price-bar__right{gap:10px}.price-bar__total{font-size:20px}.price-bar__cta{padding:8px 14px;font-size:11px}.editor-header{padding:10px 16px;flex-wrap:wrap;gap:6px}.editor-header__info{flex-wrap:wrap;gap:6px}.editor-header__tag{font-size:11px;padding:3px 8px}.drawer-panel{width:min(400px,92vw)}}@media (max-width: 768px){.editor-tour__card{padding:17px;border-radius:15px}.editor-tour__actions{flex-wrap:wrap}.editor-tour__actions .editor-tour__btn:first-child{margin-right:auto}.editor-toggle-hint{top:auto;bottom:118px;transform:none}.editor-toggle-hint--left{left:12px}.editor-toggle-hint--right{right:12px}.sidebar{top:auto;bottom:0;left:0!important;right:0!important;width:100%!important;max-height:65vh;border-radius:16px 16px 0 0;border-top:1.5px solid var(--border);border-right:none!important;border-left:none!important;box-shadow:0 -4px 24px #00000026;transform:translateY(110%)}.sidebar--left.sidebar--open,.sidebar--right.sidebar--open{transform:translateY(0)}.sidebar--left,.sidebar--right{transform:translateY(110%)}.sidebar-toggle{position:fixed;bottom:60px;top:auto;transform:none;width:48px;height:48px;border-radius:50%;border:1.5px solid var(--border-strong);box-shadow:0 4px 12px #0000001f;z-index:25}.sidebar-toggle--left{left:12px;border-radius:50%}.sidebar-toggle--right{right:12px;border-radius:50%}.sidebar:before{content:"";display:block;width:40px;height:4px;background:var(--border-strong);border-radius:99px;margin:12px auto 0}.price-bar{padding:8px 12px}.price-bar__right{width:100%;justify-content:space-between}.price-bar__left{width:100%;justify-content:flex-start}.drawer-panel{width:100%;border-radius:0}.editor-header__info .editor-header__tag:nth-child(n+4){display:none}}.module-item:disabled{cursor:not-allowed;opacity:.42;transform:none;box-shadow:none}.module-item:disabled:hover{border-color:var(--border);background:var(--bg-base);transform:none}.short-wall-module-warning{display:flex;flex-direction:column;gap:4px;margin:10px 0 12px;padding:11px 12px;color:#9a3412;background:#fff7ed;border:1px solid #fdba74;border-radius:8px;font-size:12px;line-height:1.4}.short-wall-module-warning strong{color:#7c2d12;font-size:12px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-display: "Montserrat", "Inter", system-ui, sans-serif;--primary: #1A1A1A;--primary-light: #3D3D3D;--primary-dark: #000000;--accent: #F19144;--accent-light: #F5AB6A;--accent-dark: #D4742A;--danger: #C0392B;--warning: #E67E22;--success: #27AE60;--bg-base: #F0EFEB;--bg-surface: #FFFFFF;--bg-elevated: #E8E6E0;--bg-hover: #DDDBD4;--border: rgba(0,0,0,.08);--border-strong: rgba(0,0,0,.18);--text-primary: #0F0F0F;--text-secondary: #5A5A5A;--text-muted: #9A9A9A;--wizard-sidebar-w: 320px;--editor-sidebar-w: 420px;--editor-sidebar-tablet-w: 300px;--transition: .2s ease;--transition-slow: .4s ease;--shadow-sm: 0 2px 8px rgba(0,0,0,.06);--shadow-md: 0 6px 20px rgba(0,0,0,.09);--shadow-lg: 0 14px 40px rgba(0,0,0,.11);--glow-primary: 0 4px 20px rgba(0,0,0,.15);--glow-accent: 0 4px 20px rgba(241,145,68,.3)}html,body,#root{width:100%;height:100%;overflow:hidden;background:var(--bg-base);color:var(--text-primary);font-family:var(--font-sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}#root.dashboard-active{overflow-y:auto;overflow-x:hidden}button{cursor:pointer;font-family:var(--font-sans);border:none;outline:none;background:none}input{font-family:var(--font-sans);outline:none}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#00000026;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#00000047}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 24px;border-radius:0;font-family:var(--font-display);font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:uppercase;transition:all var(--transition);white-space:nowrap}.btn-primary{background:var(--primary);color:#fff;border:2.5px solid var(--primary);box-shadow:var(--glow-primary)}.btn-primary:hover{background:var(--accent);border-color:var(--accent);transform:translateY(-1px);box-shadow:var(--glow-accent)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:transparent;color:var(--primary);border:2.5px solid var(--primary)}.btn-secondary:hover{background:var(--primary);color:#fff}.btn-ghost{color:var(--text-secondary);background:transparent;padding:11px 24px;border:2.5px solid var(--primary);border-radius:0;transition:all .2s ease}.btn-ghost:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.btn-accent{background:var(--accent);color:#fff;font-weight:700;border:2.5px solid var(--accent);box-shadow:var(--glow-accent)}.btn-accent:hover{background:var(--accent-dark);border-color:var(--accent-dark);transform:translateY(-1px);box-shadow:0 6px 24px #f1914466}.glass{background:#ffffffd1;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:4px}.input-group{display:flex;flex-direction:column;gap:6px}.input-label{font-size:12px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em}.input-field{background:var(--bg-surface);border:1.5px solid var(--border-strong);border-radius:0;padding:10px 14px;color:var(--text-primary);font-size:14px;font-weight:500;transition:border-color var(--transition),box-shadow var(--transition);width:100%}.input-field:focus{border-color:var(--accent);box-shadow:0 0 0 3px #f1914426}.input-field::placeholder{color:var(--text-muted)}.select-field{background:var(--bg-surface);border:1.5px solid var(--border-strong);border-radius:0;padding:10px 14px;color:var(--text-primary);font-size:14px;font-weight:500;transition:all var(--transition);width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.select-field:focus{border-color:var(--accent);box-shadow:0 0 0 3px #f1914426}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fadeUp{animation:fadeUp .5s ease forwards}.animate-fadeIn{animation:fadeIn .3s ease forwards}@media (max-width: 1280px){:root{--editor-sidebar-w: 300px;--wizard-sidebar-w: 280px}}@media (max-width: 768px){:root{--editor-sidebar-w: 100vw}html,body,#root{font-size:13px}}.rotate-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;background:var(--primary);flex-direction:column;align-items:center;justify-content:center;gap:20px;color:#fff;text-align:center;padding:32px}.rotate-overlay__icon{font-size:64px;animation:rotateHint 2s ease-in-out infinite}.rotate-overlay__title{font-family:var(--font-display);font-size:20px;font-weight:800;letter-spacing:.02em}.rotate-overlay__sub{font-size:14px;color:#ffffffb3;max-width:260px;line-height:1.5}@keyframes rotateHint{0%,to{transform:rotate(0)}40%{transform:rotate(90deg)}60%{transform:rotate(90deg)}}@media (max-width: 600px) and (orientation: portrait){.rotate-overlay{display:flex}}
