:root{--portal-blue:#07f;--portal-blue-dark:color-mix(in srgb,var(--portal-blue),#000 15%);--portal-bg:#f5f7fa;--portal-text:#263238;--portal-muted:#546e7a;--portal-border:#dce3e8;--portal-hover:#f0f6ff;--ink:var(--portal-text);--muted:var(--portal-muted);--line:var(--portal-border);--soft:#f5f7fa;--paper:#f5f7fa;--white:#fff;--accent:var(--portal-blue);--primary:var(--portal-blue);--max:1320px;--ui-radius:9px;--panel-radius:12px;--font-head:"Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;--dg-navy:#11151d;--dg-navy-soft:#161c26;--dg-blue:#07f;--dg-blue-hover:#0057ff;--dg-band:#e7f0ff;--dg-card:#fff;--dg-card-shadow:0 15px 30px #2361a50f;--text-strong:var(--ink);--text-muted:var(--portal-muted);--text-faint:#90a0ac;--surface:var(--white);--surface-2:var(--soft,#f4f7f9);--border:var(--portal-border);--border-soft:color-mix(in srgb,var(--portal-border) 55%,transparent);--focus-ring:color-mix(in srgb,var(--portal-blue) 18%,transparent);--success:#1f8a4c;--success-bg:#ecf7f0;--warning:#a06a00;--warning-bg:#fdf3e0;--danger:#c0362c;--danger-bg:#fdeceb;--info:#1769aa;--info-bg:#edf6ff;--radius-sm:8px;--radius-md:var(--ui-radius,9px);--radius-lg:var(--panel-radius,12px);--radius-pill:999px;--shadow-sm:0 1px 2px #1018200a;--shadow-md:0 4px 14px #10182014;--shadow-lg:0 16px 44px #10182029;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#e7ecf0!important;--muted:#8fa0ac!important;--line:#2a343d!important;--soft:#131a20!important;--paper:#0f1418!important;--white:#171e24!important;--danger:#ff958c!important;--portal-blue:#4d9dff!important;--portal-blue-dark:#74b2ff!important;--portal-bg:#0f1418!important;--portal-text:#e7ecf0!important;--portal-muted:#8fa0ac!important;--portal-border:#2a343d!important;--portal-hover:#1d262e!important;--text-faint:#6b7883!important;--surface-2:#1a232c!important;--border-soft:#2a343d8c!important;--focus-ring:#4d9dff38!important;--success:#5cc38a!important;--success-bg:#57c98b1f!important;--warning:#e0c26a!important;--warning-bg:#d8b24a1f!important;--danger-bg:#ff958c1a!important;--info:#8cc2ff!important;--info-bg:#4d9dff1f!important;--shadow-sm:0 1px 2px #0006!important;--shadow-md:0 6px 18px #00000080!important;--shadow-lg:0 18px 48px #0009!important}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable}body{background:var(--paper);color:var(--ink);font-family:var(--font-head);-webkit-font-smoothing:antialiased;margin:0;font-size:13.5px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}main{min-height:70vh}:focus-visible{outline:2px solid var(--portal-blue);outline-offset:2px}[data-theme=dark] ::selection{background:color-mix(in srgb,var(--portal-blue) 35%,transparent)}input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]):not([type=file]),select,textarea{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--portal-text);outline:none;transition:border-color .12s,background-color .12s}input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]):not([type=file]),select{height:38px;padding:0 11px}textarea{resize:vertical;min-height:84px;padding:9px 11px;line-height:1.5}input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]):not([type=file]):focus,select:focus,textarea:focus{border-color:var(--portal-blue);box-shadow:0 0 0 3px var(--focus-ring)}input::placeholder,textarea::placeholder{color:var(--text-faint);opacity:1}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{appearance:textfield}.container{width:min(calc(100% - 48px),var(--max));margin:0 auto}@media (max-width:820px){.container{width:min(calc(100% - 28px),var(--max))}}.eyebrow{text-transform:uppercase;letter-spacing:.09em;color:var(--text-muted);margin:0 0 12px;font-size:11px;font-weight:700}.text-link,.back-link,.text-button{color:var(--portal-blue);cursor:pointer;background:0 0;border:0;padding:0;font-size:12.5px;font-weight:600;text-decoration:none;transition:color .12s}.text-link:hover,.back-link:hover,.text-button:hover{text-underline-offset:3px;text-decoration:underline}.text-link span{padding-left:4px}.image-placeholder{background:var(--surface);border:1px solid var(--border);flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;height:100%;min-height:140px;display:flex;overflow:hidden}.image-placeholder span{text-align:center;letter-spacing:.08em;text-transform:uppercase;max-width:180px;color:var(--text-muted);font-size:11px;line-height:1.5}.image-placeholder-icon{color:var(--text-faint)}.page-loading{min-height:55vh;color:var(--text-muted);padding:80px 0;font-size:13.5px}.portal-account-loading,.app-splash{background:var(--portal-bg);min-height:100vh;color:var(--portal-muted);place-items:center;font-size:13px;display:grid}.app-splash-inner{text-align:center;justify-items:center;gap:14px;display:grid}.app-splash-brand{color:var(--portal-text);align-items:center;gap:8px;font-size:15px;font-weight:700;display:inline-flex}.splash-spinner{border:2px solid var(--border);border-top-color:var(--portal-blue);border-radius:50%;width:26px;height:26px;animation:.8s linear infinite splash-spin}.legal-requirements{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);gap:10px;margin:16px 0;padding:14px;display:grid}.legal-requirements-loading{color:var(--text-muted);margin:12px 0;font-size:13px}.legal-requirements-retry{flex-wrap:wrap;align-items:center;gap:14px;margin-top:12px;display:flex}.legal-requirements-retry .form-note{margin-top:0}.legal-check-row{cursor:pointer;gap:10px;font-size:13px;line-height:1.45;align-items:flex-start!important;display:flex!important}.legal-check-row input{flex:none;margin-top:2px}.legal-check-row a{color:var(--portal-blue)}.legal-check-row a:hover{text-underline-offset:3px;text-decoration:underline}.rating-stars{vertical-align:middle;line-height:0;display:inline-flex;position:relative}.rating-stars-row{gap:2px;display:inline-flex}.rating-stars-base{color:var(--border)}.rating-stars-fill{white-space:nowrap;color:var(--warning);position:absolute;top:0;left:0;overflow:hidden}.rating-input{gap:2px;display:inline-flex}.rating-input button{color:var(--border);cursor:pointer;background:0 0;border:0;padding:2px;transition:color .12s}.rating-input button:hover,.rating-input button.is-on{color:var(--warning)}.portal-brand-mark{background:var(--portal-blue,var(--primary));clip-path:polygon(50% 0,100% 22%,91% 71%,50% 100%,9% 71%,0 22%);flex:none;width:21px;height:24px;display:inline-block}.button{border:1px solid var(--portal-blue);border-radius:var(--radius-sm);background:var(--portal-blue);color:#fff;letter-spacing:.01em;cursor:pointer;justify-content:center;align-items:center;min-height:42px;padding:0 18px;font-size:13px;font-weight:600;text-decoration:none;transition:background-color .12s,border-color .12s,color .12s,opacity .12s;display:inline-flex}.button:hover{background:var(--portal-blue-dark);border-color:var(--portal-blue-dark)}.button.light{background:var(--surface);border-color:var(--border);color:var(--portal-blue)}.button.light:hover{background:var(--surface-2);border-color:var(--portal-blue)}.button.button-small,.button-small{min-height:36px;padding:0 14px;font-size:12px}.button.full{width:100%}.button.disabled{pointer-events:none;opacity:.45}.portal-button{border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 18px;font-size:13px;font-weight:600;text-decoration:none;transition:background-color .12s,border-color .12s,color .12s,opacity .12s;display:inline-flex}.portal-button.primary{background:var(--portal-blue);border-color:var(--portal-blue);color:#fff}.portal-button.primary:hover{background:var(--portal-blue-dark);border-color:var(--portal-blue-dark)}.portal-button.neutral{background:var(--surface);border-color:var(--border);color:var(--text-strong)}.portal-button.neutral:hover{background:var(--portal-hover);border-color:var(--text-faint)}.portal-button.danger{background:var(--surface);border-color:color-mix(in srgb,var(--danger) 40%,transparent);color:var(--danger)}.portal-button.danger:hover{background:var(--danger-bg);border-color:var(--danger)}.portal-button.small{min-height:34px;padding:0 13px;font-size:12px}.portal-button.full{width:100%}.portal-button.disabled{pointer-events:none;opacity:.45}.button:focus-visible,.portal-button:focus-visible{box-shadow:0 0 0 3px var(--focus-ring);outline:none}[data-theme=dark] .button:not(.light),[data-theme=dark] .portal-button.primary{background:#1d6fe0;border-color:#1d6fe0}[data-theme=dark] .button:not(.light):hover,[data-theme=dark] .portal-button.primary:hover{background:#175bbd;border-color:#175bbd}.portal-panel,.admin-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:18px}.portal-panel-head,.admin-panel-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;padding:17px 22px;display:flex}.portal-panel-head>div,.admin-panel-head>div{min-width:0}.portal-panel-head h2,.admin-panel-head h2{letter-spacing:-.01em;color:var(--text-strong);margin:0 0 3px;font-size:16px;font-weight:600;line-height:1.25}.portal-panel-head p,.admin-panel-head p{color:var(--text-muted);margin:0;font-size:12px;line-height:1.45}.portal-panel-head>a,.admin-panel-head>a,.portal-panel-head>.portal-button,.admin-panel-head>.portal-button{flex:none}.portal-panel-head>a,.admin-panel-head>a{color:var(--portal-blue);font-size:12px;font-weight:600}.portal-panel-head>a:hover,.admin-panel-head>a:hover{text-underline-offset:3px;text-decoration:underline}.panel-count{border-radius:var(--radius-pill);background:var(--surface-2);min-width:26px;height:26px;color:var(--text-muted);place-items:center;padding:0 8px;font-size:12px;font-weight:700;display:inline-grid}.portal-notice{border:1px solid color-mix(in srgb,var(--info) 30%,transparent);border-radius:var(--radius-lg);background:var(--info-bg);color:var(--text-muted);margin-bottom:14px;padding:12px 14px;font-size:12px;line-height:1.5}.form-error{color:var(--danger);margin:8px 0;font-size:12.5px;font-weight:600;line-height:1.5}.form-error.boxed{border:1px solid color-mix(in srgb,var(--danger) 35%,transparent);border-radius:var(--radius-sm);background:var(--danger-bg);color:var(--danger);margin:10px 0;padding:11px 13px;font-size:12.5px;font-weight:500;line-height:1.5}.form-success.boxed,.portal-form-success{border:1px solid color-mix(in srgb,var(--success) 35%,transparent);border-radius:var(--radius-sm);background:var(--success-bg);color:var(--success);margin:10px 0;padding:11px 13px;font-size:12.5px;line-height:1.5}.auth-hint{color:var(--text-muted);margin-top:-8px;font-size:11px}.form-note{color:var(--text-muted);margin-top:12px;font-size:11.5px;line-height:1.5;display:block}.admin-table-wrap{overflow:auto}.admin-table{border-collapse:collapse;width:100%;min-width:820px;font-size:12.5px}.admin-table th{border-bottom:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);text-align:left;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding:11px 14px;font-size:11px;font-weight:700}.admin-table td{border-bottom:1px solid var(--border-soft);vertical-align:middle;color:var(--portal-text);padding:12px 14px}.admin-table tbody tr{transition:background-color .12s}.admin-table tbody tr:hover{background:var(--portal-hover)}.admin-table tbody tr:last-child td{border-bottom:0}.admin-table td>a{color:var(--portal-blue);font-weight:600;transition:color .12s}.admin-table td>a:hover{text-underline-offset:3px;text-decoration:underline}.admin-table td small{color:var(--text-muted);margin-top:3px;font-size:11px;display:block}.admin-table td small a{color:var(--portal-blue);font-weight:600}.admin-table td strong{color:var(--text-strong);font-size:12.5px;font-weight:600;display:block}.admin-toolbar{border-bottom:1px solid var(--border-soft);flex-wrap:wrap;align-items:center;gap:10px;padding:15px 16px;display:flex}.admin-metrics{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-bottom:16px;display:grid}.admin-metrics article,.admin-metrics>div{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);flex-direction:column;align-items:flex-start;gap:5px;padding:15px 18px;display:flex}.admin-metrics span{color:var(--text-muted);font-size:11px}.admin-metrics strong{letter-spacing:-.01em;color:var(--text-strong);font-size:21px;font-weight:700}.admin-metrics small{color:var(--text-muted);font-size:11px}@media (max-width:1050px){.admin-metrics{grid-template-columns:repeat(2,1fr)}}@media (max-width:720px){.admin-metrics{grid-template-columns:1fr}}.sort-th{font:inherit;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0;font-size:11px;font-weight:700;transition:color .12s;display:inline-flex}.sort-th:hover{color:var(--text-strong)}.sort-th.is-active{color:var(--portal-blue)}.sort-th-arrow{opacity:.7;font-size:11px}.portal-status,.finance-state{border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text-muted);white-space:nowrap;align-items:center;padding:4px 9px;font-size:11px;font-weight:600;display:inline-flex}.portal-status.new,.portal-status.confirmed,.portal-status.blue{background:var(--info-bg);color:var(--info)}.portal-status.active,.portal-status.green{background:var(--success-bg);color:var(--success)}.portal-status.completed,.portal-status.gray{background:var(--surface-2);color:var(--text-muted)}.portal-status.cancelled,.portal-status.expired,.portal-status.red{background:var(--danger-bg);color:var(--danger)}.finance-state.paid,.finance-state.refund_due{background:var(--success-bg);color:var(--success)}.finance-state.partial{background:var(--warning-bg);color:var(--warning)}.finance-state.overdue{background:var(--danger-bg);color:var(--danger)}.finance-state.overpaid,.finance-state.not_due{background:var(--info-bg);color:var(--info)}.finance-state.unpaid{background:var(--surface-2);color:var(--text-muted)}.admin-tag{border-radius:var(--radius-pill);background:color-mix(in srgb,var(--portal-blue) 12%,transparent);color:var(--portal-blue);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;align-items:center;padding:3px 9px;font-size:11px;font-weight:700;display:inline-flex}.cab-badge{border-radius:var(--radius-pill);background:color-mix(in srgb,var(--portal-blue) 12%,transparent);color:var(--portal-blue);white-space:nowrap;align-items:center;padding:4px 9px;font-size:11px;font-weight:600;display:inline-flex}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--text-faint);border-radius:6px}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--line)}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-pop{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:none}}@keyframes skeleton-wave{0%{background-position:130% 0}to{background-position:-80% 0}}@keyframes splash-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@keyframes ui-pop-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.ui-select{min-width:0;max-width:100%;display:inline-flex;position:relative}.ui-select-btn{justify-content:space-between;align-items:center;gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);text-align:left;width:100%;min-height:40px;color:var(--portal-text);cursor:pointer;padding:6px 12px;font-size:13.5px;transition:border-color .12s,background-color .12s,color .12s;display:flex}.ui-select-btn:hover:not(:disabled){border-color:color-mix(in srgb,var(--portal-blue) 45%,var(--border))}.ui-select.is-open .ui-select-btn{border-color:var(--portal-blue);box-shadow:0 0 0 3px var(--focus-ring)}.ui-select-btn:focus-visible{border-color:var(--portal-blue);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.ui-select-value,.ui-select-placeholder,.ui-date-value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ui-select-placeholder{color:var(--text-faint)}.ui-select-caret{color:var(--text-muted);flex:none}.ui-select.is-open .ui-select-caret{transform:rotate(180deg)}.ui-select.is-disabled .ui-select-btn{opacity:.55;cursor:not-allowed}.ui-select-menu{z-index:90;background:var(--surface);border:1px solid var(--border);min-width:100%;box-shadow:var(--shadow-lg);border-radius:12px;max-height:284px;margin:0;padding:5px;list-style:none;animation:.14s ui-pop-in;position:absolute;top:calc(100% + 6px);left:0;overflow:auto}.ui-select-option{border-radius:var(--radius-sm);color:var(--portal-text);cursor:pointer;white-space:nowrap;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:13.5px;transition:background-color .12s,color .12s;display:flex}.ui-select-option.is-active{background:var(--portal-hover)}.ui-select-option.is-selected{color:var(--portal-blue);font-weight:650}.ui-select-option.is-disabled{opacity:.45;cursor:not-allowed}.ui-date{min-width:0;max-width:100%;display:inline-flex;position:relative}.ui-date-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);text-align:left;width:100%;min-height:40px;color:var(--portal-text);cursor:pointer;justify-content:space-between;align-items:center;gap:9px;padding:6px 12px;font-size:13.5px;transition:border-color .12s,background-color .12s,color .12s;display:flex}.ui-date-btn:hover:not(:disabled){border-color:color-mix(in srgb,var(--portal-blue) 45%,var(--border))}.ui-date.is-open .ui-date-btn{border-color:var(--portal-blue);box-shadow:0 0 0 3px var(--focus-ring)}.ui-date-btn:focus-visible{border-color:var(--portal-blue);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.ui-date-btn svg{color:var(--text-muted);flex:none}.ui-date.is-disabled .ui-date-btn{opacity:.55;cursor:not-allowed}.ui-date-menu{z-index:90;background:var(--surface);border:1px solid var(--border);width:292px;box-shadow:var(--shadow-lg);border-radius:12px;padding:14px;animation:.14s ui-pop-in;position:absolute;top:calc(100% + 6px);left:0}.ui-date-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.ui-date-head strong{color:var(--text-strong);font-size:14px;font-weight:600}.ui-date-nav{border:1px solid var(--border);border-radius:var(--radius-sm);width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:0 0;place-items:center;transition:color .12s,border-color .12s;display:grid}.ui-date-nav:hover{color:var(--portal-blue);border-color:var(--portal-blue)}.ui-date-nav:focus-visible{border-color:var(--portal-blue);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.ui-date-week{text-align:center;letter-spacing:.04em;color:var(--text-faint);text-transform:uppercase;grid-template-columns:repeat(7,1fr);margin-bottom:4px;font-size:11px;font-weight:700;display:grid}.ui-date-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.ui-date-day{border-radius:var(--radius-sm);height:34px;color:var(--portal-text);cursor:pointer;background:0 0;border:0;place-items:center;font-size:13px;transition:background-color .12s,color .12s;display:grid}.ui-date-day:hover:not(:disabled){background:var(--portal-hover)}.ui-date-day:focus-visible{outline:2px solid var(--portal-blue);outline-offset:1px}.ui-date-day.is-out{color:var(--text-faint);opacity:.65}.ui-date-day.is-today{box-shadow:inset 0 0 0 1px var(--portal-blue);font-weight:600}.ui-date-day.is-selected{background:var(--portal-blue);color:#fff;font-weight:600}.ui-date-day.is-selected.is-today{box-shadow:none}.ui-date-day:disabled{opacity:.3;cursor:not-allowed}.ui-date-time{border-top:1px solid var(--border-soft);color:var(--text-muted);align-items:center;gap:10px;margin-top:12px;padding-top:12px;font-size:13px;display:flex}.ui-date-time input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);height:32px;color:var(--portal-text);font:inherit;outline:none;padding:0 8px;font-size:13px;transition:border-color .12s}.ui-date-time input:focus{border-color:var(--portal-blue);box-shadow:0 0 0 3px var(--focus-ring)}.ui-check,.ui-radio,.ui-switch{cursor:pointer;color:var(--portal-text);align-items:center;gap:9px;font-size:13.5px;line-height:1.35;display:inline-flex;position:relative}.ui-check input,.ui-radio input,.ui-switch input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.ui-check-label{-webkit-user-select:none;user-select:none}.ui-check.is-disabled,.ui-radio.is-disabled,.ui-switch.is-disabled{opacity:.55;cursor:not-allowed}.ui-check-box{border:1.5px solid var(--text-faint);background:var(--surface);color:#fff;border-radius:6px;flex:none;place-items:center;width:19px;height:19px;transition:background-color .12s,border-color .12s;display:grid}.ui-check-mark{opacity:0;width:11px;height:11px;transition:opacity .12s}.ui-check input:checked+.ui-check-box{background:var(--portal-blue);border-color:var(--portal-blue)}.ui-check input:checked+.ui-check-box .ui-check-mark{opacity:1}.ui-radio-dot{border:1.5px solid var(--text-faint);border-radius:var(--radius-pill);background:var(--surface);flex:none;place-items:center;width:19px;height:19px;transition:border-color .12s;display:grid}.ui-radio-dot:after{content:"";border-radius:var(--radius-pill);background:var(--portal-blue);opacity:0;width:9px;height:9px;transition:opacity .12s}.ui-radio input:checked+.ui-radio-dot{border-color:var(--portal-blue)}.ui-radio input:checked+.ui-radio-dot:after{opacity:1}.ui-switch-track{border-radius:var(--radius-pill);background:var(--border);flex:none;width:36px;height:21px;transition:background-color .12s;position:relative}.ui-switch-knob{border-radius:var(--radius-pill);width:16px;height:16px;box-shadow:var(--shadow-sm);background:#fff;position:absolute;top:2.5px;left:2.5px}.ui-switch.is-on .ui-switch-track{background:var(--portal-blue)}.ui-switch.is-on .ui-switch-knob{left:17.5px}.ui-check input:focus-visible+.ui-check-box,.ui-radio input:focus-visible+.ui-radio-dot,.ui-switch input:focus-visible+.ui-switch-track{border-color:var(--portal-blue);box-shadow:0 0 0 3px var(--focus-ring)}.fulfillment-options{margin-bottom:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.fulfillment-options .ui-radio{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-sm);grid-template-columns:20px 1fr;align-items:start;gap:2px 8px;padding:14px;transition:border-color .12s,background-color .12s;display:grid}.fulfillment-options .ui-radio.is-on{border-color:var(--portal-blue);box-shadow:inset 3px 0 0 var(--portal-blue)}.fulfillment-options .ui-radio strong,.fulfillment-options .ui-radio span{grid-column:2}.fulfillment-options .ui-radio strong{color:var(--text-strong);font-size:13.5px;font-weight:600}.fulfillment-options .ui-radio span{color:var(--text-muted);font-size:12.5px}@media (max-width:760px){.fulfillment-options{grid-template-columns:1fr}}.cart-controls .ui-date-btn,.cart-controls .ui-select-btn{min-height:36px;padding:4px 10px;font-size:12.5px}.modal-overlay{z-index:100;background:#0f172080;justify-content:center;align-items:center;padding:20px;animation:.16s modal-fade;display:flex;position:fixed;inset:0}.modal-panel{background:var(--surface);border:1px solid var(--border);width:100%;max-width:520px;box-shadow:var(--shadow-lg);border-radius:16px;gap:14px;padding:22px;animation:.18s modal-pop;display:grid}.modal-panel h3{color:var(--text-strong);margin:0;font-size:16px;font-weight:600;line-height:1.25}.modal-description{color:var(--text-muted);margin:0;font-size:13px;line-height:1.5}.modal-field{gap:7px;display:grid}.modal-field>span{color:var(--text-muted);font-size:12px;font-weight:600}.modal-field input,.modal-field textarea{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--portal-text);font:inherit;border-radius:8px;outline:none;padding:0 12px;font-size:13.5px;transition:border-color .12s}.modal-field input{height:40px}.modal-field textarea{resize:vertical;padding:10px 12px;line-height:1.5}.modal-field input::placeholder,.modal-field textarea::placeholder{color:var(--text-faint)}.modal-field input:focus,.modal-field textarea:focus{border-color:var(--portal-blue);box-shadow:0 0 0 3px var(--focus-ring)}.modal-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.toast-stack{z-index:120;gap:8px;max-width:min(380px,100vw - 36px);display:grid;position:fixed;bottom:18px;right:18px}.toast{background:var(--surface);color:var(--portal-text);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:10px;align-items:flex-start;gap:10px;padding:11px 14px;font-size:13px;line-height:1.4;animation:.18s toast-in;display:flex}.toast-mark{border-radius:var(--radius-pill);flex:none;place-items:center;width:20px;height:20px;font-size:12px;font-weight:700;display:grid}.toast-success .toast-mark{background:var(--success-bg);color:var(--success)}.toast-error .toast-mark{background:var(--danger-bg);color:var(--danger)}.table-skeleton{align-content:start;gap:11px;min-height:150px;padding:16px 13px;display:grid}.table-skeleton-row{align-items:center;gap:18px;display:flex}.table-skeleton-row span{background:linear-gradient(90deg,var(--surface-2) 25%,color-mix(in srgb,var(--border) 45%,var(--surface-2)) 45%,var(--surface-2) 65%);background-size:220% 100%;border-radius:6px;height:13px;animation:1.3s ease-in-out infinite skeleton-wave;display:block}.page-skeleton{width:min(calc(100% - 64px),var(--max));gap:13px;margin:34px auto;display:grid}.page-skeleton .table-skeleton{padding:0}.portal-panel-empty{color:var(--text-muted);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:22px;font-size:13px;display:flex}.portal-empty-rich{gap:9px;padding:26px 18px}.portal-empty-rich strong{color:var(--text-strong);font-size:14px;font-weight:600}.portal-empty-rich>span:not(.portal-empty-icon){color:var(--text-muted);font-size:12.5px;line-height:1.5}.portal-empty-rich .portal-button{margin-top:6px}.portal-empty-icon{color:var(--text-faint);display:inline-flex}.portal-empty-icon svg{width:28px;height:28px}.portal-empty-icon-danger{color:var(--danger)}.pagination-controls{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px;padding:14px 22px;display:flex}.pagination-controls span{color:var(--text-muted);font-size:12px}.pagination-pages{align-items:center;gap:4px;display:flex}.pagination-page{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-sm);min-width:30px;height:30px;color:var(--portal-text);cursor:pointer;padding:0 6px;font-size:12px;transition:color .12s,border-color .12s,background-color .12s}.pagination-page:hover:not(:disabled){border-color:var(--portal-blue);color:var(--portal-blue)}.pagination-page:focus-visible{border-color:var(--portal-blue);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.pagination-page.is-current{background:var(--portal-blue);border-color:var(--portal-blue);color:#fff;font-weight:700}.pagination-page.is-current:disabled{opacity:1;cursor:default}.pagination-page:disabled{cursor:default}.pagination-gap{color:var(--text-faint);padding:0 2px;font-size:12px}.pagination-range{margin-left:auto}.theme-toggle{border:1px solid var(--border);border-radius:var(--radius-sm);width:34px;height:34px;color:var(--text-muted);cursor:pointer;background:0 0;flex:none;justify-content:center;align-items:center;padding:0;transition:color .12s,border-color .12s;display:inline-flex}.theme-toggle:hover{color:var(--portal-blue);border-color:var(--portal-blue)}.theme-toggle:focus-visible{border-color:var(--portal-blue);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.auth-brandbar .theme-toggle,.portal-account-header .theme-toggle{margin-left:auto}.portal-account-header .theme-toggle+.portal-button{margin-left:10px}.site-header{z-index:50;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0}.header-row{align-items:center;gap:24px;height:64px;display:flex}.brand{font-family:var(--font-head);letter-spacing:.02em;color:var(--text-strong);white-space:nowrap;align-items:center;gap:8px;font-size:14px;font-weight:700;transition:color .12s;display:inline-flex}.brand:hover{color:var(--portal-blue)}.brand b{font-weight:400}.brand-mark{background:var(--portal-blue);clip-path:polygon(50% 0,100% 22%,91% 71%,50% 100%,9% 71%,0 22%);flex:none;width:19px;height:22px}.main-nav{align-items:center;gap:20px;margin-left:12px;font-size:13px;font-weight:600;display:flex}.main-nav a{color:var(--text-muted);transition:color .12s}.main-nav a:hover{color:var(--portal-blue)}.header-actions{align-items:center;gap:16px;margin-left:auto;font-size:12.5px;font-weight:600;display:flex}.header-phone{font-family:var(--font-head);color:var(--text-strong);white-space:nowrap;align-items:center;gap:7px;font-size:13.5px;font-weight:600;transition:color .12s;display:flex}.header-phone:hover{color:var(--portal-blue)}.header-account{color:var(--text-muted);font-weight:600}.cart-link{color:var(--text-strong);align-items:center;gap:7px;font-weight:600;transition:color .12s;display:flex}.cart-link:hover{color:var(--portal-blue)}.cart-link span{border-radius:var(--radius-pill);background:color-mix(in srgb,var(--portal-blue) 12%,transparent);min-width:20px;height:20px;color:var(--portal-blue);justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.header-auth{align-items:center;gap:8px;display:flex}.header-btn-register{display:inline-flex}@media (max-width:640px){.header-auth .header-btn-register{display:none}.header-auth .header-btn{padding:0 12px}}.header-btn{border-radius:var(--radius-sm);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;min-height:36px;padding:0 14px;font-size:12.5px;font-weight:600;transition:color .12s,background-color .12s,border-color .12s;display:inline-flex}.header-btn.outline{border-color:var(--portal-blue);color:var(--portal-blue)}.header-btn.outline:hover{background:color-mix(in srgb,var(--portal-blue) 8%,transparent)}.header-btn.fill{background:var(--portal-blue);border-color:var(--portal-blue);color:#fff}.header-btn.fill:hover{background:var(--portal-blue-dark);border-color:var(--portal-blue-dark)}.header-btn.ghost{color:var(--text-muted);text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:1px}.header-btn.ghost:hover{color:var(--portal-blue)}.menu-button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:36px;height:36px;padding:9px;transition:border-color .12s;display:none}.menu-button:hover{border-color:var(--portal-blue)}.menu-button i{background:var(--text-muted);border-radius:1px;height:2px;margin:5px 0;display:block}.home-hero{background:var(--dg-navy);color:#fff;text-align:center;padding:88px 0 150px;position:relative;overflow:hidden}.home-hero:before{content:"";background:color-mix(in srgb,var(--dg-blue) 45%,transparent);filter:blur(170px);opacity:.5;pointer-events:none;border-radius:50%;width:1100px;height:520px;position:absolute;top:-180px;left:50%;transform:translate(-50%)}.home-hero .container{z-index:1;max-width:960px;position:relative}.home-eyebrow{border:1px solid color-mix(in srgb,var(--portal-blue) 45%,transparent);border-radius:var(--radius-pill);color:#8cc2ff;letter-spacing:.12em;text-transform:uppercase;margin:0 0 20px;padding:6px 15px;font-size:11px;font-weight:700;display:inline-block}.home-hero h1{font-family:var(--font-head);letter-spacing:-.015em;margin:0 0 20px;font-size:clamp(32px,5vw,58px);font-weight:700;line-height:1.12}.home-lead{color:#aeb9c6;max-width:760px;margin:0 auto;font-size:clamp(14px,1.5vw,17px);line-height:1.6}.hero-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:30px;display:flex}.home-cta{border-radius:var(--radius-md);border:1px solid #0000;justify-content:center;align-items:center;min-height:48px;padding:0 28px;font-size:15px;font-weight:600;transition:color .12s,background-color .12s,border-color .12s;display:inline-flex}.home-cta.primary{background:var(--portal-blue);border-color:var(--portal-blue);color:#fff}.home-cta.primary:hover{background:var(--dg-blue-hover);border-color:var(--dg-blue-hover)}.home-cta.ghost{color:#fff;border-color:#ffffff59}.home-cta.ghost:hover{background:#ffffff12;border-color:#fff}.home-band{background:var(--dg-band);padding:0 0 80px}.home-band .container{max-width:1180px}.home-band-cards{grid-template-columns:repeat(3,1fr);gap:24px;display:grid;transform:translateY(-84px)}.band-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:24px}.band-card>h3{font-family:var(--font-head);color:var(--text-muted);margin:0 0 12px;font-size:13px;font-weight:600}.band-link{border-top:1px solid var(--border-soft);color:var(--portal-blue);justify-content:space-between;align-items:center;gap:10px;padding:10px 0;font-size:14px;font-weight:600;transition:color .12s;display:flex}.band-link:first-of-type{border-top:0}.band-link:hover{color:var(--portal-blue-dark)}.band-link b{opacity:.55;font-weight:400;transition:opacity .12s}.band-link:hover b{opacity:1}.home-stats{text-align:center;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:-44px;display:grid}.home-stats strong{font-family:var(--font-head);letter-spacing:-.02em;color:var(--text-strong);font-size:clamp(24px,2.8vw,34px);font-weight:700;display:block}.home-stats p{color:var(--text-muted);margin:6px 0 0;font-size:13px;line-height:1.45}.section-head{justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px;display:flex}.section-head h2{font-family:var(--font-head);letter-spacing:-.02em;color:var(--text-strong);margin:0;font-size:24px;font-weight:600;line-height:1.2}.section-head>a{color:var(--portal-blue);font-size:12px;font-weight:600;transition:color .12s}.section-head>a:hover{color:var(--portal-blue-dark)}.section-head.compact h2{font-size:17px}.featured-section{padding:44px 0 56px}.category-strip{padding:24px 0 36px}.category-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.category-tile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);align-content:start;gap:4px;min-height:112px;padding:15px;transition:border-color .12s,background-color .12s;display:grid}.category-tile:hover{border-color:color-mix(in srgb,var(--portal-blue) 45%,transparent)}.category-index{color:var(--text-faint);font-size:11px}.category-tile h3{font-family:var(--font-head);color:var(--text-strong);margin:0 0 4px;font-size:14px;font-weight:600}.category-tile p{color:var(--text-muted);margin:0;font-size:12px;line-height:1.45}.category-tile b{color:var(--portal-blue);font-size:13px}.product-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.product-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:0;box-shadow:var(--shadow-sm);padding:14px;transition:border-color .12s}.product-card:hover{border-color:color-mix(in srgb,var(--portal-blue) 40%,transparent)}.product-visual{aspect-ratio:1;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius-md);margin-bottom:12px;padding:12px;display:block;position:relative;overflow:hidden}.product-visual .image-placeholder{background:0 0;border:0;height:100%;min-height:0}.product-image{object-fit:contain;background:0 0;width:100%;height:100%;display:block}.product-visual .product-image{padding:12px;position:absolute;inset:0}.product-meta{letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint);justify-content:space-between;gap:10px;margin-bottom:8px;font-size:11px;display:flex}.product-title{font-family:var(--font-head);color:var(--text-strong);font-size:14px;font-weight:600;line-height:1.35;transition:color .12s}.product-title:hover{color:var(--portal-blue)}.product-rating-inline{color:var(--text-muted);align-items:center;gap:6px;margin:4px 0 2px;font-size:12px;display:inline-flex}.product-rating-inline b{color:var(--text-strong);font-weight:650}.product-desc{color:var(--text-muted);min-height:36px;margin:8px 0 14px;font-size:12px;line-height:1.5}.product-bottom{border-top:1px solid var(--border-soft);justify-content:space-between;align-items:flex-end;gap:10px;padding-top:12px;display:flex}.product-bottom strong{color:var(--text-strong);font-size:16px;font-weight:700;display:block}.product-bottom small{color:var(--text-faint);font-size:11px}.home-advantages{background:var(--dg-navy);color:#fff;padding:88px 0;position:relative;overflow:hidden}.home-advantages:after{content:"";background:radial-gradient(circle,color-mix(in srgb,var(--dg-blue) 32%,transparent),transparent 65%);pointer-events:none;width:640px;height:640px;position:absolute;top:-160px;right:-220px}.home-advantages .container{z-index:1;grid-template-columns:.85fr 1.15fr;align-items:start;gap:64px;display:grid;position:relative}.adv-copy{position:sticky;top:96px}.adv-copy .eyebrow{color:#8cc2ff}.adv-copy h2{font-family:var(--font-head);letter-spacing:-.02em;margin:0 0 16px;font-size:clamp(26px,3.2vw,38px);line-height:1.15}.adv-copy>p:last-of-type{color:#8fa0b0;max-width:460px;margin:0;font-size:14px;line-height:1.65}.adv-steps{border-top:1px solid #ffffff24;margin:0;padding:0;list-style:none}.adv-steps li{border-bottom:1px solid #ffffff24;grid-template-columns:72px 1fr;gap:18px;padding:24px 0;display:grid}.adv-steps li>span{font-family:var(--font-head);color:#8cc2ff;padding-top:2px;font-size:16px;font-weight:700}.adv-steps h3{font-family:var(--font-head);margin:0 0 6px;font-size:18px;font-weight:600}.adv-steps p{color:#8fa0b0;margin:0;font-size:14px;line-height:1.6}.home-features{background:var(--dg-band);padding:88px 0}.features-grid{grid-template-columns:repeat(3,1fr);gap:36px;display:grid}.feature-icon{border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border-soft);width:48px;height:48px;box-shadow:var(--shadow-sm);color:var(--portal-blue);justify-content:center;align-items:center;margin-bottom:16px;display:flex}.feature-card h3{font-family:var(--font-head);color:var(--text-strong);margin:0 0 8px;font-size:17px;font-weight:600}.feature-card p{color:var(--text-muted);margin:0;font-size:14px;line-height:1.6}.home-faq{background:var(--surface);padding:88px 0}.faq-head{text-align:center;margin-bottom:36px}.faq-head h2{font-family:var(--font-head);letter-spacing:-.02em;color:var(--text-strong);margin:0;font-size:clamp(24px,2.8vw,34px)}.faq-list{gap:12px;max-width:880px;margin:0 auto;display:grid}.faq-item{background:var(--surface-2);border-radius:var(--radius-lg);cursor:pointer;border:1px solid #0000;padding:18px 22px;transition:background-color .12s,border-color .12s}.faq-item:hover{border-color:var(--border-soft)}.faq-item.active{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow-md)}.faq-q{font-family:var(--font-head);color:var(--text-strong);justify-content:space-between;align-items:center;gap:16px;font-size:15px;font-weight:600;display:flex}.faq-q svg{color:var(--text-muted);flex:none;transition:color .12s}.faq-item.active .faq-q svg{color:var(--portal-blue)}.faq-a{color:var(--text-muted);padding-top:12px;font-size:13.5px;line-height:1.65}.home-contacts{background:var(--dg-navy);color:#fff;padding:80px 0}.home-contacts .container{grid-template-columns:1fr 1fr;align-items:center;gap:56px;display:grid}.home-contacts .eyebrow{color:#8cc2ff}.contacts-copy h2{font-family:var(--font-head);letter-spacing:-.02em;margin:0 0 12px;font-size:clamp(24px,2.8vw,34px)}.contacts-copy>p{color:#8fa0b0;max-width:460px;margin:0 0 24px;font-size:14px;line-height:1.65}.contact-lines{flex-direction:column;gap:12px;display:flex}.contact-lines a,.contact-lines span{color:#8cc2ff;align-items:center;gap:12px;font-size:15px;font-weight:600;display:flex}.contact-lines a{transition:color .12s,opacity .12s}.contact-lines a:hover{text-underline-offset:4px;opacity:.85;text-decoration:underline}.contact-lines svg{color:var(--portal-blue);flex:none}.contacts-card{background:var(--dg-navy-soft);border-radius:var(--radius-lg);text-align:center;border:1px solid #ffffff14;padding:32px}.contacts-card h3{font-family:var(--font-head);margin:0 0 8px;font-size:20px;font-weight:600}.contacts-card p{color:#8fa0b0;margin:0 0 22px;font-size:13.5px;line-height:1.6}.catalog-page{padding:32px 0 90px}.catalog-heading,.page-heading{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);align-items:center;margin-bottom:14px;padding:22px 24px;display:flex}.catalog-heading h1,.page-heading h1{font-family:var(--font-head);letter-spacing:-.02em;color:var(--text-strong);margin:0 0 6px;font-size:28px;line-height:1.15}.catalog-heading p:last-child,.page-heading>p:last-child{color:var(--text-muted);margin:0;font-size:12px}.catalog-toolbar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);justify-content:flex-end;gap:16px;margin-bottom:14px;padding:14px;display:flex}.catalog-toolbar label{gap:5px;display:grid}.catalog-toolbar label>span{text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);font-size:11px;font-weight:600}.catalog-toolbar .search-field{margin-right:auto}.catalog-toolbar .search-field input{width:350px}.catalog-toolbar input,.catalog-toolbar select{min-width:210px}.catalog-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:16px;display:grid}.catalog-sidebar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;align-items:stretch;height:max-content;padding:12px;display:flex}.catalog-sidebar h3{text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);margin:0 0 8px;padding:0 8px;font-size:11px;font-weight:700}.catalog-sidebar button{border-radius:var(--radius-sm);text-align:left;color:var(--text-muted);cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:10px 8px;font-size:12.5px;transition:background-color .12s,color .12s;display:flex}.catalog-sidebar button:hover{background:var(--surface-2);color:var(--text-strong)}.catalog-sidebar button.active{background:color-mix(in srgb,var(--portal-blue) 10%,transparent);color:var(--portal-blue);font-weight:600}.catalog-sidebar small{color:var(--text-faint);font-size:11px}.catalog-products{grid-template-columns:repeat(3,1fr)}.catalog-loading{text-align:center;color:var(--text-muted);padding:60px 0;font-size:13px}.catalog-more{justify-content:center;align-items:center;padding:26px 0 6px;display:flex}.catalog-more .load-more{min-height:42px;padding:0 26px}.catalog-end{color:var(--text-muted);font-size:12.5px}.empty-state{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;padding:70px 20px}.empty-state h2{font-family:var(--font-head);color:var(--text-strong);margin:0 0 10px;font-size:22px}.empty-state p{color:var(--text-muted);margin:0 0 18px;font-size:13px}.empty-state.left{text-align:left}.empty-state.left .button{margin-top:10px}.product-page{padding:18px 0 60px}.breadcrumbs{color:var(--text-muted);flex-wrap:wrap;gap:8px;padding:8px 0 16px;font-size:11px;display:flex}.breadcrumbs a{transition:color .12s}.breadcrumbs a:hover{color:var(--portal-blue)}.breadcrumbs span{color:var(--text-faint)}.product-detail-grid{grid-template-columns:1.05fr .95fr;align-items:start;gap:16px;display:grid}.product-gallery{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);grid-template-rows:1fr 92px;gap:12px;height:610px;padding:16px;display:grid}.product-gallery>.image-placeholder{min-height:0}.product-gallery.empty-gallery{grid-template-rows:1fr}.product-main-image{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-md);min-height:440px;position:relative;overflow:hidden}.product-main-image>img{object-fit:contain;background:0 0;width:100%;height:440px;padding:20px;display:block}.thumb-row,.product-thumbnails{gap:8px;min-width:0;padding-bottom:2px;display:flex;overflow-x:auto}.thumb-row .image-placeholder{min-height:0}.product-thumbnails button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;flex:none;width:76px;height:62px;padding:3px;transition:border-color .12s}.product-thumbnails button:hover{border-color:color-mix(in srgb,var(--portal-blue) 45%,transparent)}.product-thumbnails button.active{border-color:var(--portal-blue)}.product-thumbnails img{object-fit:contain;background:0 0;border-radius:4px;width:100%;height:100%;display:block}.product-info{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:26px}.product-info h1{font-family:var(--font-head);letter-spacing:-.02em;color:var(--text-strong);margin:0 0 12px;font-size:30px;line-height:1.15}.product-lead{color:var(--text-muted);margin:0;font-size:13.5px;line-height:1.6}.availability{color:var(--text-muted);align-items:center;gap:8px;margin:16px 0;font-size:12px;display:flex}.dot{border-radius:var(--radius-pill);background:var(--text-faint);flex:none;width:7px;height:7px}.dot.available{background:var(--success)}.price-line{flex-wrap:wrap;align-items:baseline;gap:10px;margin:14px 0 18px;display:flex}.price-line strong{letter-spacing:-.01em;color:var(--text-strong);font-size:26px;font-weight:700}.price-line span{color:var(--text-muted);font-size:12px}.no-deposit-badge{border-radius:var(--radius-pill);background:var(--success-bg);color:var(--success);white-space:nowrap;align-self:center;margin-left:2px;padding:3px 10px;font-size:11px;font-style:normal;font-weight:700}.rental-box{border-top:1px solid var(--border);padding:18px 0 4px}.rental-fields{grid-template-columns:1fr 1fr .7fr;gap:10px;display:grid}.rental-fields label{gap:6px;min-width:0;display:grid}.rental-fields span{text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);font-size:11px;font-weight:600}.rental-fields input,.rental-fields select{width:100%;min-width:0}.rental-fields .ui-date-btn,.rental-fields .ui-select-btn{min-height:40px;font-size:12.5px}.period-availability{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-muted);margin:12px 0 4px;padding:9px 11px;font-size:12px;line-height:1.5}.period-availability.ok{border-color:color-mix(in srgb,var(--success) 35%,transparent);background:var(--success-bg);color:var(--success)}.period-availability.bad{border-color:color-mix(in srgb,var(--danger) 35%,transparent);background:var(--danger-bg);color:var(--danger)}.availability-note{color:var(--success);margin-top:7px;font-size:11.5px}.pricing-tier-list{border-top:1px solid var(--border-soft);gap:4px;margin-top:10px;padding-top:10px;display:grid}.pricing-tier-list>span{text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint);margin-bottom:2px;font-size:11px;font-weight:600}.pricing-tier-list>div{border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--text-muted);border-left:2px solid #0000;justify-content:space-between;gap:12px;padding:5px 8px;font-size:12.5px;display:flex}.pricing-tier-list>div b{font-weight:600}.pricing-tier-list>div strong{color:var(--text-strong);font-weight:700}.pricing-tier-list>div.active{border-left-color:var(--portal-blue);background:color-mix(in srgb,var(--portal-blue) 6%,transparent);color:var(--text-strong)}.rental-total{justify-content:space-between;align-items:center;margin:16px 0 12px;display:flex}.rental-total span{color:var(--text-muted);font-size:12.5px}.rental-total strong{color:var(--text-strong);font-size:20px;font-weight:700}.rental-box>small{color:var(--text-faint);margin-top:10px;font-size:11px;line-height:1.5;display:block}.product-content-grid{grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;display:grid}.product-content-grid>div{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:0;padding:24px}.product-content-grid h2{font-family:var(--font-head);color:var(--text-strong);margin:0 0 12px;font-size:19px;font-weight:600}.product-content-grid>div>p:not(.eyebrow){color:var(--text-muted);max-width:620px;margin:0 0 10px;font-size:13px;line-height:1.65}.product-content-grid>div>p:last-child{margin-bottom:0}.feature-list{flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0;list-style:none;display:flex}.feature-list li{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-muted);padding:6px 10px;font-size:11.5px}.spec-list{margin:0}.spec-list div{border-top:1px solid var(--border-soft);grid-template-columns:1fr 1fr;gap:16px;padding:10px 0;display:grid}.spec-list div:last-child{border-bottom:1px solid var(--border-soft)}.spec-list dt{color:var(--text-muted);font-size:12.5px}.spec-list dd{color:var(--text-strong);margin:0;font-size:12.5px;font-weight:700}.reviews-loading{color:var(--text-muted);margin:0;padding:12px 0 6px;font-size:13px}.reviews-summary{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.reviews-summary strong{color:var(--text-strong);font-size:22px;font-weight:700}.reviews-summary>span{color:var(--text-muted);font-size:12.5px}.review-list{gap:12px;margin-top:16px;display:grid}.review-card{background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius-md);padding:14px 16px}.review-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;display:flex}.review-card-head strong{color:var(--text-strong);font-size:13.5px;font-weight:600}.review-card-head time{color:var(--text-faint);font-size:11.5px}.review-card p{color:var(--ink);margin:6px 0 0;font-size:13.5px;line-height:1.55}.review-form{background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius-md);gap:12px;margin-top:16px;padding:16px;display:grid}.review-form textarea{resize:vertical;width:100%;min-height:84px;padding:9px 11px;font-size:13.5px}.review-form .form-error{margin:0}@media (max-width:1100px){.product-grid{grid-template-columns:repeat(3,1fr)}.featured-section .product-grid,.category-grid,.catalog-products{grid-template-columns:repeat(2,1fr)}.product-detail-grid{gap:14px}.product-gallery{height:560px}.header-phone{display:none}.home-band-cards{grid-template-columns:1fr 1fr;transform:translateY(-64px)}.home-stats{grid-template-columns:repeat(2,1fr);gap:26px 20px;margin-top:-20px}.home-advantages .container{grid-template-columns:1fr;gap:40px}.adv-copy{position:static}.features-grid{grid-template-columns:1fr 1fr;gap:28px}.home-contacts .container{grid-template-columns:1fr;gap:40px}}@media (max-width:900px){.product-main-image,.product-main-image>img{height:320px;min-height:320px}}@media (max-width:820px){.header-row{height:60px}.main-nav{background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-md);flex-direction:column;align-items:flex-start;gap:14px;margin:0;padding:18px 20px;font-size:14px;display:none;position:absolute;top:60px;left:0;right:0}.main-nav.is-open{display:flex}.menu-button{display:block}.header-account{display:none}.home-hero{padding:60px 0 130px}.home-band{padding-bottom:64px}.home-features,.featured-section,.home-faq,.home-advantages,.home-contacts{padding:64px 0}.catalog-layout{grid-template-columns:1fr}.catalog-sidebar{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}.catalog-sidebar h3{grid-column:1/-1}.catalog-toolbar{flex-wrap:wrap}.catalog-toolbar .search-field{width:100%;margin:0}.catalog-toolbar .search-field input{width:100%}.product-detail-grid{grid-template-columns:1fr}.product-gallery{height:500px}.product-content-grid{grid-template-columns:1fr}}@media (max-width:560px){.header-row{gap:12px}.header-actions{gap:10px}.brand{font-size:12.5px}.cart-link{gap:0;font-size:0}.cart-link span{font-size:11px}.category-strip,.featured-section{padding:24px 0 36px}.category-grid,.product-grid,.catalog-products{grid-template-columns:1fr}.section-head{flex-direction:column;align-items:flex-start;gap:8px}.category-tile{min-height:96px}.product-desc{min-height:0}.home-band-cards{grid-template-columns:1fr;transform:translateY(-48px)}.home-stats{margin-top:-4px}.features-grid{grid-template-columns:1fr}.hero-actions{flex-direction:column;align-items:stretch}.adv-steps li{grid-template-columns:52px 1fr;gap:12px}.contacts-card{padding:24px 18px}.catalog-page{padding:24px 0 60px}.catalog-heading,.page-heading{padding:18px}.catalog-heading h1,.page-heading h1{font-size:24px}.catalog-toolbar label{width:100%}.catalog-toolbar input,.catalog-toolbar select{width:100%;min-width:0}.catalog-sidebar{grid-template-columns:1fr}.catalog-sidebar h3{grid-column:auto}.empty-state{padding:48px 16px}.empty-state h2{font-size:19px}.product-page{padding-bottom:48px}.product-gallery{grid-template-rows:1fr 70px;height:420px;padding:12px}.product-main-image,.product-main-image>img{height:260px;min-height:260px}.product-info{padding:18px}.product-info h1{font-size:24px}.price-line strong{font-size:22px}.rental-fields{grid-template-columns:1fr 1fr}.rental-fields label:last-child{grid-column:1/-1}.product-content-grid>div{padding:18px}}[data-theme=dark] .home-band,[data-theme=dark] .home-features{background:var(--surface-2)}[data-theme=dark] .home-faq{background:0 0}[data-theme=dark] .faq-item,[data-theme=dark] .faq-item.active{background:var(--surface)}.cart-page,.checkout-page{padding:28px 0 72px}.page-heading{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:14px;padding:20px 22px}.page-heading .eyebrow{margin:0 0 8px}.page-heading h1{letter-spacing:-.015em;color:var(--text-strong);margin:0;font-size:24px;font-weight:600;line-height:1.2}.page-heading>p:last-child{max-width:650px;color:var(--text-muted);margin:6px 0 0;font-size:12.5px;line-height:1.6}.cart-layout{grid-template-columns:1fr 320px;align-items:start;gap:14px;display:grid}.cart-items{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:0 18px}.cart-item{border-bottom:1px solid var(--border-soft);grid-template-columns:110px 1fr;gap:17px;padding:18px 0;display:grid}.cart-item:last-child{border-bottom:0}.cart-item>.image-placeholder{border-radius:var(--radius-sm);height:110px;min-height:0}.cart-item>.product-image{object-fit:contain;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:90px;height:76px;padding:6px}.cart-item .image-placeholder-icon{width:34px;height:34px}.cart-item-main{min-width:0;display:block}.cart-item-title{justify-content:space-between;gap:14px;display:flex}.cart-item-title>div{gap:4px;min-width:0;display:grid}.cart-item-title span,.cart-item-title small{letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint);font-size:11px}.cart-item-title a{color:var(--text-strong);font-size:14px;font-weight:600;transition:color .12s}.cart-item-title a:hover{color:var(--portal-blue)}.cart-item-title button{color:var(--text-muted);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;align-self:start;padding:0;font-size:11.5px;text-decoration:underline;transition:color .12s}.cart-item-title button:hover{color:var(--danger)}.cart-controls{grid-template-columns:1fr 1fr .7fr;gap:10px;margin-top:14px;display:grid}.cart-controls label{gap:5px;min-width:0;display:grid}.cart-controls label>span{letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:600}.cart-controls label>input,.cart-controls label>select{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);height:36px;color:var(--portal-text);outline:none;padding:0 10px;font-size:12px;transition:border-color .12s}.cart-controls label>input:focus,.cart-controls label>select:focus{border-color:var(--portal-blue);box-shadow:0 0 0 3px var(--focus-ring)}.cart-controls .ui-date-btn,.cart-controls .ui-select-btn{border-radius:var(--radius-sm);min-height:36px;padding:4px 10px;font-size:12px}.cart-line-total{border-top:1px dashed var(--border);color:var(--text-muted);justify-content:space-between;gap:12px;margin-top:13px;padding-top:12px;font-size:12px;display:flex}.cart-line-total strong{color:var(--text-strong);font-size:14px;font-weight:700}.cart-item-main>.form-error{margin:8px 0 0}.cart-summary{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:20px;position:sticky;top:82px}.cart-summary h2{letter-spacing:-.01em;color:var(--text-strong);margin:0 0 14px;font-size:16px;font-weight:600}.cart-summary>div{border-top:1px solid var(--border-soft);color:var(--text-muted);justify-content:space-between;gap:12px;padding:9px 0;font-size:12.5px;display:flex}.cart-summary>div strong{color:var(--text-strong);font-size:14px;font-weight:700}.cart-summary p{color:var(--text-muted);margin:14px 0;font-size:11.5px;line-height:1.5}.cart-summary .back-link{text-align:center;margin-top:14px;display:block}.empty-cart{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-align:center;padding:64px 20px}.empty-cart>span{font-family:var(--font-head);letter-spacing:-.04em;color:var(--text-faint);font-size:40px;font-weight:700;display:block}.empty-cart h1{letter-spacing:-.015em;color:var(--text-strong);margin:12px 0 10px;font-size:24px;font-weight:600}.empty-cart p{color:var(--text-muted);margin:0 0 22px;font-size:13px;line-height:1.55}.checkout-grid{grid-template-columns:1fr 360px;align-items:start;gap:14px;display:grid}.checkout-steps{flex-wrap:wrap;gap:10px 26px;margin:0 0 14px;padding:0;list-style:none;display:flex}.checkout-steps li{color:var(--text-muted);align-items:center;gap:9px;font-size:12.5px;font-weight:600;display:flex}.checkout-steps li b{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);width:26px;height:26px;color:var(--text-muted);place-items:center;font-size:12px;font-weight:700;display:grid}.checkout-steps li.done{color:var(--text-strong)}.checkout-steps li.done b{background:var(--portal-blue);border-color:var(--portal-blue);color:#fff}.checkout-login-hint{background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius-sm);color:var(--text-muted);margin:0 0 14px;padding:12px 16px;font-size:12.5px;line-height:1.55}.checkout-login-hint a{color:var(--portal-blue);font-weight:600}.checkout-login-hint a:hover{text-underline-offset:3px;text-decoration:underline}.checkout-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:22px}.checkout-form h2{letter-spacing:-.01em;color:var(--text-strong);margin:0 0 16px;font-size:16px;font-weight:600}.checkout-form label{gap:7px;min-width:0;display:grid}.checkout-form label>span{color:var(--text-muted);font-size:12px;font-weight:600}.checkout-form label>input:not([type=checkbox]):not([type=radio]),.checkout-form label>textarea{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--portal-text);outline:none;font-size:13px;transition:border-color .12s}.checkout-form label>input:not([type=checkbox]):not([type=radio]){height:40px;padding:0 12px}.checkout-form label>textarea{resize:vertical;padding:10px 12px;line-height:1.5}.checkout-form label>input:not([type=checkbox]):not([type=radio]):focus,.checkout-form label>textarea:focus{border-color:var(--portal-blue);box-shadow:0 0 0 3px var(--focus-ring)}.checkout-form input::placeholder,.checkout-form textarea::placeholder{color:var(--text-faint)}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-grid .wide{grid-column:1/-1}.form-grid .form-note{align-self:end;margin:0}.checkout-section{border-top:1px solid var(--border-soft);margin-top:20px;padding-top:20px}.checkout-section h2{margin:0 0 12px}.textarea-field{gap:7px;margin:18px 0;display:grid}.checkout-form .form-note{color:var(--text-muted);margin-top:12px;font-size:11.5px;line-height:1.5}.checkout-form>.button{margin-top:14px}.block-reason{color:var(--warning);margin-top:10px;font-weight:600}.fulfillment-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.fulfillment-options .ui-radio{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);grid-template-columns:20px 1fr;gap:2px 8px;padding:14px;transition:border-color .12s,background-color .12s;display:grid}.fulfillment-options .ui-radio:hover{border-color:color-mix(in srgb,var(--portal-blue) 45%,var(--border))}.fulfillment-options .ui-radio.is-on{border-color:var(--portal-blue);background:color-mix(in srgb,var(--portal-blue) 4%,var(--surface));box-shadow:inset 3px 0 0 var(--portal-blue)}.fulfillment-options .ui-radio .ui-radio-dot{grid-row:1/3;align-self:start;margin-top:3px}.fulfillment-options .ui-radio .ui-check-label{display:contents}.fulfillment-options .ui-check-label strong{color:var(--text-strong);grid-column:2;font-size:13px;font-weight:600}.fulfillment-options .ui-check-label span{color:var(--text-muted);grid-column:2;font-size:12px;font-weight:400}.checkout-summary{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:22px}.checkout-summary h2{letter-spacing:-.01em;color:var(--text-strong);margin:0 0 14px;font-size:16px;font-weight:600}.checkout-line{border-bottom:1px solid var(--border-soft);justify-content:space-between;gap:20px;padding:11px 0;display:flex}.checkout-line>div{gap:4px;min-width:0;display:grid}.checkout-line strong{color:var(--text-strong);font-size:13px;font-weight:600}.checkout-line span{color:var(--text-muted);font-size:11.5px}.checkout-line b{color:var(--text-strong);white-space:nowrap;font-size:13px;font-weight:700}.checkout-totals{border-top:1px solid var(--border);margin-top:14px}.checkout-totals div{border-bottom:1px solid var(--border-soft);color:var(--text-muted);justify-content:space-between;gap:12px;padding:10px 0;font-size:12.5px;display:flex}.checkout-totals div:last-child{border-bottom:0}.checkout-totals strong{color:var(--text-strong);font-weight:700}.checkout-summary>p{color:var(--text-muted);margin:12px 0 0;font-size:11.5px;line-height:1.5}@media (min-width:900px){.checkout-summary{position:sticky;top:96px}}.success-state{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:min(100% - 48px,760px);min-height:350px;box-shadow:var(--shadow-sm);flex-direction:column;justify-content:center;align-items:flex-start;padding:34px;display:flex}.success-mark{border-radius:var(--radius-pill);background:var(--success-bg);width:46px;height:46px;color:var(--success);place-items:center;margin-bottom:22px;display:grid}.success-state h1{letter-spacing:-.02em;color:var(--text-strong);margin:0 0 12px;font-size:26px;font-weight:600;line-height:1.2}.success-state>p:not(.eyebrow){color:var(--text-muted);max-width:650px;margin:0 0 10px;font-size:13.5px;line-height:1.6}.success-state>strong{color:var(--text-strong);margin:2px 0 10px;font-size:15px;font-weight:700}.success-state>.form-error.boxed,.success-state>.form-success.boxed{align-self:stretch;margin:10px 0 0}.success-state>.form-note{margin:8px 0 0}.success-state>.text-link{margin-top:12px}.success-state>.button{margin-top:14px}.success-state>div{flex-wrap:wrap;align-items:center;gap:18px;margin-top:20px;display:flex}.success-state .online-payment-actions{align-self:stretch;margin:16px 0 0}.online-payment-actions .form-note{flex-basis:100%;margin:2px 0 0}.success-state .checkout-form{width:100%;box-shadow:none;background:0 0;border:0;margin:16px 0 0;padding:0}.success-state .checkout-form>.button{margin-top:14px}.portal-auth-page{background:var(--portal-bg);min-height:100vh;color:var(--portal-text)}.auth-brandbar{background:var(--surface);border-bottom:1px solid var(--border);align-items:center;height:64px;padding:0 max(24px,50vw - 550px);display:flex}.auth-brandbar .theme-toggle{margin-left:auto}.portal-brand{letter-spacing:.02em;color:var(--text-strong);align-items:center;gap:8px;font-size:14px;display:inline-flex}.portal-brand b{font-weight:800}.portal-brand>span:last-child{color:var(--text-muted);font-weight:500}.portal-auth-shell{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:min(100% - 48px,960px);min-height:560px;box-shadow:var(--shadow-sm);grid-template-columns:360px 1fr;margin:56px auto;display:grid;overflow:hidden}.portal-auth-aside{background:color-mix(in srgb,var(--portal-blue) 6%,var(--surface));border-right:1px solid color-mix(in srgb,var(--portal-blue) 16%,var(--border));flex-direction:column;justify-content:space-between;padding:44px 38px;display:flex}.portal-auth-aside h2{letter-spacing:-.02em;color:var(--text-strong);margin:13px 0 0;font-size:22px;font-weight:600;line-height:1.25}.portal-auth-aside p{color:var(--text-muted);margin:0;font-size:13px;line-height:1.65}.auth-aside-index{text-transform:uppercase;letter-spacing:.08em;color:var(--portal-blue);font-size:11px;font-weight:700}.portal-auth-panel{flex-direction:column;justify-content:center;padding:48px 56px;display:flex}.portal-auth-title h1{letter-spacing:-.015em;color:var(--text-strong);margin:0 0 8px;font-size:24px;font-weight:600;line-height:1.2}.portal-auth-title p{color:var(--text-muted);margin:0 0 26px;font-size:13px;line-height:1.5}.portal-auth-form{flex-direction:column;gap:16px;display:flex}.portal-auth-form>label{gap:7px;display:grid}.portal-auth-form>label>span{color:var(--text-muted);font-size:12px;font-weight:600}.portal-auth-form input:not([type=checkbox]):not([type=radio]){border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);height:42px;color:var(--portal-text);outline:none;padding:0 12px;font-size:13px;transition:border-color .12s}.portal-auth-form input:not([type=checkbox]):not([type=radio]):focus{border-color:var(--portal-blue);box-shadow:0 0 0 3px var(--focus-ring)}.portal-auth-form input::placeholder{color:var(--text-faint)}.auth-form-row{justify-content:space-between;align-items:center;gap:10px;font-size:12.5px;display:flex}.auth-form-row>a{color:var(--portal-blue);font-weight:600;transition:color .12s}.auth-form-row>a:hover,.auth-switch a:hover{text-underline-offset:3px;text-decoration:underline}.check-line{color:var(--text-muted);font-size:12.5px}.auth-switch{text-align:center;color:var(--text-muted);margin:4px 0 0;font-size:12.5px}.auth-switch a{color:var(--portal-blue);font-weight:600;transition:color .12s}.auth-hint{color:var(--text-faint);margin:-6px 0 0;font-size:11.5px;line-height:1.45}.auth-divider{color:var(--text-faint);align-items:center;gap:12px;margin:2px 0;font-size:11.5px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.social-auth{margin:2px 0 0;display:grid}.social-auth-buttons{grid-template-columns:1fr 1fr;gap:10px;display:grid}.social-button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);height:42px;color:var(--text-strong);justify-content:center;align-items:center;gap:8px;font-size:12.5px;font-weight:600;transition:border-color .12s,background-color .12s,color .12s;display:flex}.social-button:hover{border-color:color-mix(in srgb,var(--portal-blue) 40%,var(--border));background:var(--portal-hover);color:var(--portal-blue)}.social-button span{font-size:14px;font-weight:800}.social-button.yandex span{color:#e53935}.social-button.vk span{color:var(--portal-blue)}.auth-legal-links{border-top:1px solid var(--border-soft);flex-wrap:wrap;gap:8px 14px;margin-top:20px;padding-top:14px;font-size:12px;display:flex}.auth-legal-links a{color:var(--text-muted);transition:color .12s}.auth-legal-links a:hover{color:var(--portal-blue)}.auth-callback-state{gap:14px;padding:4px 0;display:grid}.auth-loading-line{color:var(--text-muted);padding:18px 0;font-size:13px}.site-footer{background:var(--surface);border-top:1px solid var(--border);color:var(--portal-text);padding:36px 0 20px}.footer-grid{grid-template-columns:2fr repeat(3,minmax(130px,1fr));gap:44px;display:grid}.portal-footer-grid>div{min-width:0}.footer-brand .brand{color:var(--text-strong)}.footer-brand p{color:var(--text-muted);max-width:340px;margin:14px 0 0;font-size:12.5px;line-height:1.6}.footer-grid>div:not(.footer-brand){flex-direction:column;gap:10px;font-size:12.5px;display:flex}.footer-grid h3{letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);margin:0 0 4px;font-size:11.5px;font-weight:700}.footer-grid a{color:var(--text-muted);transition:color .12s}.footer-grid a:hover{color:var(--portal-blue)}.footer-grid span,.portal-footer-grid span{color:var(--text-muted);line-height:1.55}.footer-bottom{border-top:1px solid var(--border-soft);color:var(--text-faint);justify-content:space-between;gap:12px;margin-top:32px;padding-top:16px;font-size:11.5px;display:flex}.content-page{padding:28px 0 72px}.content-page-inner{max-width:980px}.content-page-header{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:14px;padding:26px 28px}.content-page-header h1{letter-spacing:-.02em;color:var(--text-strong);margin:0 0 10px;font-size:24px;font-weight:600;line-height:1.2}.content-page-header p{color:var(--text-muted);max-width:720px;margin:0;font-size:12.5px;line-height:1.6}.content-page-body{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:28px}.content-page-body>p{color:var(--portal-text);white-space:pre-wrap;margin:0 0 16px;font-size:13.5px;line-height:1.7}.content-page-body>p:last-child{margin-bottom:0}.contact-details{border:1px solid var(--border);border-radius:var(--radius-sm);grid-template-columns:1fr 1fr;margin-top:24px;display:grid;overflow:hidden}.contact-details>div{border-right:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);gap:5px;padding:15px 18px;display:grid}.contact-details>div:nth-child(2n){border-right:0}.contact-details>div:nth-last-child(-n+2){border-bottom:0}.contact-details span,.legal-details dt{color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:600}.contact-details a,.contact-details strong{color:var(--text-strong);font-size:13px;font-weight:600}.contact-details a{transition:color .12s}.contact-details a:hover{color:var(--portal-blue)}.legal-details{border-top:1px solid var(--border-soft);margin-top:26px;padding-top:22px}.legal-details h2{color:var(--text-strong);margin:0 0 12px;font-size:16px;font-weight:600}.legal-details dl{margin:0;display:grid}.legal-details dl>div{border-top:1px solid var(--border-soft);grid-template-columns:160px 1fr;gap:18px;padding:8px 0;display:grid}.legal-details dd{color:var(--text-strong);margin:0;font-size:12.5px}.legal-document-page .content-page-inner{max-width:860px}.legal-document-body{white-space:pre-line}.legal-document-hash{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--portal-text);gap:6px;margin-top:24px;padding:14px 16px;font-size:12.5px;display:grid}.legal-document-hash span{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:11px;font-weight:600}.legal-document-hash code{word-break:break-all;color:var(--text-strong)}.privacy-intro{margin-bottom:16px}.privacy-document-list{margin:4px 20px 8px;display:grid}.privacy-document-row{border-top:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:20px;padding:13px 0;display:flex}.privacy-document-row:first-child{border-top:0}.privacy-document-row>div:first-child{gap:4px;min-width:0;display:grid}.privacy-document-row strong{color:var(--text-strong);font-size:13px;font-weight:600}.privacy-document-row span{color:var(--text-muted);font-size:11.5px}.privacy-document-row .rental-actions{border-top:0;flex:none;padding:0}@media (max-width:1050px){.footer-grid{grid-template-columns:1.6fr 1fr 1fr;gap:34px}.footer-grid>div:last-child{grid-column:2/-1}}@media (max-width:760px){.content-page-header,.content-page-body{padding:20px}.content-page-header h1{font-size:22px}.contact-details{grid-template-columns:1fr}.contact-details>div{border-right:0}.legal-details dl>div{grid-template-columns:1fr;gap:4px}.privacy-document-row{flex-direction:column;align-items:flex-start;gap:10px}.auth-legal-links{display:grid}.fulfillment-options{grid-template-columns:1fr}}@media (max-width:900px){.portal-auth-shell{grid-template-columns:290px 1fr}.portal-auth-panel{padding:40px 36px}.portal-auth-aside{padding:36px 28px}}@media (max-width:720px){.portal-auth-shell{grid-template-columns:1fr;width:min(100% - 28px,520px);min-height:0;margin:24px auto}.portal-auth-aside{display:none}.portal-auth-panel{padding:32px 24px}.social-auth-buttons{grid-template-columns:1fr}.auth-brandbar{height:60px;padding:0 16px}}@media (max-width:820px){.cart-layout,.checkout-grid{grid-template-columns:1fr}.cart-summary{position:static}.checkout-summary{order:-1}}@media (max-width:560px){.cart-page,.checkout-page{padding:20px 0 56px}.page-heading h1{font-size:22px}.cart-controls{grid-template-columns:1fr 1fr}.cart-controls label:last-child{grid-column:1/-1}.cart-item{grid-template-columns:84px 1fr;gap:14px}.cart-item>.image-placeholder{height:84px}.cart-item>.product-image{width:84px;height:70px}.cart-line-total{flex-direction:column;align-items:flex-start;gap:6px}.form-grid{grid-template-columns:1fr}.checkout-form,.checkout-summary{padding:18px}.success-state{width:calc(100% - 28px);min-height:0;padding:26px 20px}.success-state h1{font-size:22px}.footer-grid{grid-template-columns:1fr;gap:28px}.footer-brand,.footer-grid>div:last-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:6px}}.cab-layout{background:var(--portal-bg);min-height:100vh;color:var(--portal-text)}.cab-sidebar{z-index:80;background:var(--surface);border-right:1px solid var(--border);flex-direction:column;width:240px;display:flex;position:fixed;inset:0 auto 0 0}.cab-sidebar-logo{border-bottom:1px solid var(--border);flex:none;align-items:center;height:64px;padding:0 20px;display:flex}.cab-sidebar-logo a{letter-spacing:.02em;color:var(--text-strong);align-items:center;gap:8px;font-size:14px;display:inline-flex}.cab-sidebar-logo b{white-space:nowrap;text-overflow:ellipsis;font-weight:800;overflow:hidden}.cab-sidebar-scroll{flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.cab-sidebar-top{border-bottom:1px solid var(--border-soft);gap:6px;padding:16px 12px 12px;display:grid}.cab-sidebar-body{flex-direction:column;gap:2px;padding:10px 12px;display:flex}.cab-sidebar-section{border-top:1px solid var(--border-soft);flex-direction:column;gap:2px;padding:10px 12px;display:flex}.cab-sidebar-bottom{border-top:1px solid var(--border-soft);flex-direction:column;gap:2px;margin-top:auto;padding:10px 12px 14px;display:flex}.cab-sidebar-toggler{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);width:26px;height:26px;color:var(--text-muted);cursor:pointer;z-index:2;place-items:center;transition:color .12s,border-color .12s;display:grid;position:absolute;top:76px;right:-13px}.cab-sidebar-toggler:hover{color:var(--portal-blue);border-color:var(--portal-blue)}.cab-sidebar-toggler svg{display:block}.cab-user{border-radius:var(--radius-md);align-items:center;gap:11px;min-width:0;padding:8px 10px;transition:background-color .12s;display:flex}.cab-user:hover{background:var(--surface-2)}.cab-user-avatar{border-radius:var(--radius-pill);background:color-mix(in srgb,var(--portal-blue) 12%,transparent);width:36px;height:36px;color:var(--portal-blue);flex:none;place-items:center;font-size:14px;font-weight:700;display:grid}.cab-user-name{color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.cab-user-meta{gap:2px;min-width:0;display:grid}.cab-user-meta strong{color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.cab-user-meta small{color:var(--text-muted);font-size:11px}.cab-nav-title{letter-spacing:.07em;text-transform:uppercase;color:var(--text-faint);padding:0 13px 6px;font-size:11px;font-weight:700}.cab-item{border-radius:var(--radius-md);width:100%;min-height:42px;color:var(--text-muted);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:0 13px;font-size:13px;font-weight:500;transition:background-color .12s,color .12s;display:flex;position:relative}.cab-item:hover{background:var(--surface-2);color:var(--text-strong)}.cab-item.is-active{background:color-mix(in srgb,var(--portal-blue) 10%,transparent);color:var(--portal-blue);font-weight:600}.cab-item-icon{flex:none;place-items:center;width:18px;display:grid}.cab-item-icon svg{display:block}.cab-item-title{text-overflow:ellipsis;white-space:nowrap;align-items:baseline;gap:6px;min-width:0;display:flex;overflow:hidden}.cab-item--balance .cab-balance{color:var(--text-strong);font-size:13px;font-weight:700}.cab-item--balance small{color:var(--text-muted);font-size:11px}.cab-layout.is-collapsed .cab-sidebar{width:68px}.cab-layout.is-collapsed .cab-main{margin-left:68px}.cab-layout.is-collapsed .cab-sidebar-logo{justify-content:center;padding:0}.cab-layout.is-collapsed .cab-sidebar-logo b,.cab-layout.is-collapsed .cab-sidebar-logo .admin-tag,.cab-layout.is-collapsed .cab-user-name,.cab-layout.is-collapsed .cab-user-meta,.cab-layout.is-collapsed .cab-item-title,.cab-layout.is-collapsed .cab-nav-title{display:none}.cab-layout.is-collapsed .cab-item{justify-content:center;padding:0}.cab-layout.is-collapsed .cab-user{justify-content:center;padding:6px 0}.cab-layout.is-collapsed .cab-sidebar-toggler svg{transform:rotate(180deg)}.cab-main{flex-direction:column;min-height:100vh;margin-left:240px;display:flex}.cab-header{z-index:40;background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:14px;height:64px;padding:0 24px;display:flex;position:sticky;top:0}.cab-menu-button{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-sm);width:38px;height:38px;color:var(--text-muted);display:none}.cab-button-icon{align-items:center;display:inline-flex}.cab-header-right{align-items:center;gap:10px;margin-left:auto;display:flex}.cab-bell{border-radius:var(--radius-pill);width:38px;height:38px;color:var(--text-muted);background:0 0;border:0;place-items:center;transition:background-color .12s,color .12s;display:grid;position:relative}.cab-bell:hover{background:var(--surface-2);color:var(--portal-blue)}.cab-bell-dot{border-radius:var(--radius-pill);background:var(--danger);border:2px solid var(--surface);width:8px;height:8px;position:absolute;top:7px;right:8px}.cab-content{flex:1;width:min(100% - 48px,1180px);margin:0 auto;padding:26px 0 34px}.admin-shell .cab-content{width:min(100% - 48px,1440px);padding-bottom:34px}.cab-title{letter-spacing:-.02em;color:var(--text-strong);margin:0 0 18px;font-size:24px;font-weight:600;line-height:1.2}.cab-footer{border-top:1px solid var(--border);background:var(--surface);gap:8px;padding:16px 24px 18px;display:grid}.cab-footer-links{color:var(--text-muted);flex-wrap:wrap;gap:6px 20px;font-size:12px;display:flex}.cab-footer-links a{transition:color .12s}.cab-footer-links a:hover{color:var(--portal-blue)}.cab-footer-copy{color:var(--text-faint);font-size:11px}.cab-navbar,.cab-overlay{display:none}.cab-layout .portal-panel>.portal-muted{margin:0;padding:16px 22px;font-size:12.5px}.cab-content>.form-error.boxed,.cab-content>.portal-form-success{margin:0 0 14px}.cab-user-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px;padding:18px 20px;display:flex}.cab-user-card-main{gap:7px;min-width:0;display:grid}.cab-user-card-name{letter-spacing:-.01em;color:var(--text-strong);font-size:18px;font-weight:600}.cab-user-card-meta{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.cab-user-card-actions{flex:none;gap:8px;display:flex}.cab-copy{color:var(--text-muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:4px 2px;font-size:11px;transition:color .12s;display:inline-flex;position:relative}.cab-copy:hover{color:var(--portal-blue)}.cab-copy em{color:var(--success);white-space:nowrap;font-size:11px;font-style:normal;position:absolute;top:calc(100% + 2px);left:0}.cab-alert{background:var(--warning-bg);border:1px solid color-mix(in srgb,var(--warning) 30%,transparent);border-radius:var(--radius-lg);align-items:flex-start;gap:12px;margin-bottom:16px;padding:14px 16px;display:flex}.cab-alert-icon{border-radius:var(--radius-pill);background:color-mix(in srgb,var(--warning) 16%,transparent);width:26px;height:26px;color:var(--warning);flex:none;place-items:center;margin-top:1px;display:grid}.cab-alert-text{gap:3px;min-width:0;display:grid}.cab-alert-text b{color:var(--text-strong);font-size:13px}.cab-alert-text span{color:var(--text-muted);font-size:12px;line-height:1.45}.cab-alert-buttons{flex:none;gap:8px;margin-left:auto;display:flex}.portal-button.ghost-warning{color:var(--warning);background:0 0;border-color:#0000}.portal-button.ghost-warning:hover{background:color-mix(in srgb,var(--warning) 12%,transparent)}.portal-button.outline-warning{border-color:color-mix(in srgb,var(--warning) 45%,transparent);color:var(--warning);background:0 0}.portal-button.outline-warning:hover{background:color-mix(in srgb,var(--warning) 10%,transparent)}.account-metrics{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:0 0 16px;display:grid}.account-metrics article{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;align-items:flex-start;gap:5px;padding:15px 18px;display:flex}.account-metrics span{color:var(--text-muted);font-size:12px}.account-metrics strong{letter-spacing:-.01em;color:var(--text-strong);font-size:21px;font-weight:700}.account-metrics.cab-metrics{grid-template-columns:repeat(4,1fr)}.finance-account-metrics{grid-template-columns:repeat(3,1fr)}.cab-content .finance-danger{color:var(--danger);font-weight:600}.cab-finance-grid{grid-template-columns:repeat(4,1fr);display:grid}.cab-finance-grid>div{border-right:1px solid var(--border);align-content:start;gap:4px;padding:15px 18px;display:grid}.cab-finance-grid>div:last-child{border-right:0}.cab-finance-grid span{text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);font-size:11px}.cab-finance-grid strong{letter-spacing:-.01em;color:var(--text-strong);font-size:17px;font-weight:700}.cab-finance-grid a{color:var(--portal-blue);font-size:11.5px;font-weight:600}.cab-services-head{align-items:flex-start}.cab-services-all{color:var(--portal-blue);white-space:nowrap;font-size:12px;font-weight:600}.cab-services-all:hover{text-underline-offset:3px;text-decoration:underline}.cab-product-grid{grid-template-columns:repeat(auto-fit,minmax(255px,1fr));gap:14px;padding:16px 22px;display:grid}.cab-product-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);align-content:start;gap:12px;padding:16px;display:grid}.cab-product-icon{border-radius:var(--radius-sm);background:color-mix(in srgb,var(--portal-blue) 10%,transparent);width:52px;height:52px;color:var(--portal-blue);place-items:center;display:grid}.cab-product-details{gap:5px;display:grid}.cab-product-details h3{color:var(--text-strong);margin:0;font-size:14px;font-weight:600}.cab-product-details p{color:var(--text-muted);margin:0;font-size:12.5px;line-height:1.5}.cab-product-card .portal-button{justify-self:start}.rental-table-wrap{overflow-x:auto}.portal-table{border-collapse:collapse;width:100%;font-size:12.5px}.portal-table th{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);background:var(--surface-2);text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:11px 17px;font-size:11px;font-weight:700}.portal-table td{border-bottom:1px solid var(--border-soft);color:var(--portal-text);vertical-align:middle;padding:13px 17px}.portal-table tbody tr:last-child td{border-bottom:0}.portal-table tbody tr{transition:background-color .12s}.portal-table tbody tr:hover{background:var(--surface-2)}.portal-table td small{color:var(--text-muted);margin-top:3px;font-size:11px;display:block}.portal-table td strong{color:var(--text-strong)}.rental-number{color:var(--portal-blue);font-weight:650}.rental-number:hover{text-underline-offset:3px;text-decoration:underline}.rental-detail-top{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px;padding:20px 22px;display:flex}.rental-detail-top a{color:var(--text-muted);font-size:11.5px;transition:color .12s}.rental-detail-top a:hover{color:var(--portal-blue)}.rental-detail-top h2{letter-spacing:-.01em;color:var(--text-strong);margin:8px 0;font-size:22px;font-weight:600;line-height:1.25}.rental-detail-total{text-align:right;gap:3px;display:grid}.rental-detail-total span,.rental-detail-total small{color:var(--text-muted);font-size:11.5px}.rental-detail-total strong{letter-spacing:-.01em;color:var(--text-strong);font-size:24px;font-weight:700}.rental-stepper{flex-wrap:wrap;margin:2px 0 6px;padding:0;list-style:none;display:flex}.rental-stepper li{color:var(--text-muted);align-items:center;gap:7px;padding:6px 0;font-size:11.5px;display:flex}.rental-stepper li:not(:last-child):after{content:"";background:var(--border);width:26px;height:1px;margin:0 12px}.rental-stepper .step-dot{border-radius:var(--radius-pill);border:1.5px solid var(--border);background:0 0;flex:none;width:9px;height:9px}.rental-stepper li.done{color:var(--text-strong)}.rental-stepper li.done .step-dot{background:var(--portal-blue);border-color:var(--portal-blue)}.rental-stepper li.current{color:var(--portal-blue);font-weight:600}.rental-stepper li.current .step-dot{border-color:var(--portal-blue);box-shadow:inset 0 0 0 2.5px var(--portal-blue)}.rental-edit-list{padding:4px 22px 8px}.rental-edit-list article{border-bottom:1px solid var(--border-soft);grid-template-columns:minmax(180px,.7fr) 1.3fr;gap:24px;padding:15px 0;display:grid}.rental-edit-list article:last-child{border-bottom:0}.rental-edit-list article>div:first-child{align-content:start;gap:4px;display:grid}.rental-edit-list strong{color:var(--text-strong);font-size:13px}.rental-edit-list small{color:var(--text-muted);font-size:11px}.rental-edit-fields{grid-template-columns:1fr 1fr 96px;gap:10px;display:grid}.rental-edit-fields label{gap:6px;display:grid}.rental-edit-fields span{color:var(--text-muted);font-size:11px;font-weight:600}.rental-edit-fields input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);height:38px;color:var(--portal-text);outline:none;padding:0 10px;font-size:12.5px;transition:border-color .12s}.rental-edit-fields input:focus{border-color:var(--portal-blue);box-shadow:0 0 0 3px var(--focus-ring)}.rental-static-period{color:var(--text-muted);justify-content:flex-end;align-items:baseline;gap:18px;font-size:12.5px;display:flex}.rental-static-period strong{color:var(--text-strong)}.rental-actions{border-top:1px solid var(--border-soft);flex-wrap:wrap;align-items:center;gap:8px;padding:16px 22px;display:flex}.portal-panel-empty .rental-actions{border-top:0;justify-content:center;padding:0}.rental-events{padding:4px 22px 8px;display:grid}.rental-events>div{border-bottom:1px solid var(--border-soft);grid-template-columns:180px minmax(0,1fr);gap:20px;padding:11px 0;display:grid}.rental-events>div:last-child{border-bottom:0}.rental-events span{color:var(--text-muted);font-size:11.5px}.rental-events strong{color:var(--text-strong);font-size:12.5px;font-weight:600}.extension-request-form{grid-template-columns:minmax(190px,240px) 1fr auto;align-items:end;gap:12px;padding:16px 22px;display:grid}.extension-request-form label{gap:6px;display:grid}.extension-request-form span{color:var(--text-muted);font-size:11.5px;font-weight:600}.extension-request-form input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);height:40px;color:var(--portal-text);outline:none;padding:0 12px;font-size:12.5px;transition:border-color .12s}.extension-request-form input:focus{border-color:var(--portal-blue);box-shadow:0 0 0 3px var(--focus-ring)}.extension-request-form input::placeholder{color:var(--text-faint)}.extension-history{border-top:1px solid var(--border-soft);margin:0;padding:4px 22px 10px;display:grid}.extension-history>div{border-bottom:1px solid var(--border-soft);grid-template-columns:190px 170px minmax(0,1fr);gap:16px;padding:12px 0;font-size:12.5px;display:grid}.extension-history>div:last-child{border-bottom:0}.extension-history strong{color:var(--text-strong);font-size:12.5px}.extension-history small{color:var(--text-muted);font-size:11px}.online-payment-actions{flex-wrap:wrap;gap:8px;margin:14px 22px;display:flex}.account-finance-list .online-payment-actions{margin:12px 20px}.gateway-payment-list{border-top:1px solid var(--border-soft);padding:0 22px;display:grid}.account-finance-list .gateway-payment-list{padding:0 20px}.gateway-payment-list>div{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:14px;padding:11px 0;font-size:12px;display:flex}.gateway-payment-list>div:last-child{border-bottom:0}.gateway-payment-list span{color:var(--text-strong);gap:3px;display:grid}.gateway-payment-list small{color:var(--text-muted);font-size:11px}.gateway-payment-list strong{color:var(--success);font-size:12px}.gateway-payment-list button{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-sm);height:32px;color:var(--portal-text);cursor:pointer;padding:0 12px;font-size:11.5px;font-weight:600;transition:border-color .12s,color .12s,background-color .12s}.gateway-payment-list button:hover{border-color:var(--portal-blue);color:var(--portal-blue)}.finance-client-panel{margin-bottom:16px}.finance-client-note{border-top:1px solid var(--border-soft);background:var(--surface-2);color:var(--text-muted);margin:0;padding:12px 22px;font-size:12px;line-height:1.5}.finance-client-payments{border-top:1px solid var(--border-soft);padding:4px 22px 10px;display:grid}.finance-client-payments>div{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:14px;padding:10px 0;font-size:12px;display:flex}.finance-client-payments>div:last-child{border-bottom:0}.finance-client-payments span{color:var(--text-strong);gap:2px;display:grid}.finance-client-payments small{color:var(--text-muted);font-size:11px}.finance-client-payments strong{color:var(--text-strong);font-size:12.5px}.finance-client-payments a{color:var(--portal-blue);white-space:nowrap;font-size:11.5px;font-weight:600}.account-finance-list>article{border-bottom:1px solid var(--border-soft)}.account-finance-list>article:last-child{border-bottom:0}.account-finance-order{grid-template-columns:1.2fr repeat(3,1fr);align-items:center;gap:16px;padding:16px 20px;display:grid}.account-finance-order>div{gap:3px;display:grid}.account-finance-order a{color:var(--portal-blue);font-size:12.5px;font-weight:650}.account-finance-order a:hover{text-underline-offset:3px;text-decoration:underline}.account-finance-order span,.account-finance-order small{color:var(--text-muted);font-size:11px}.account-finance-order strong{color:var(--text-strong);font-size:13px}.account-payment-history{background:var(--surface-2);padding:2px 20px 8px}.account-payment-history>div{border-top:1px solid var(--border-soft);grid-template-columns:minmax(0,1fr) 120px 60px;align-items:center;gap:10px;padding:9px 0;font-size:12px;display:grid}.account-payment-history small{color:var(--text-muted);margin-top:2px;font-size:11px;display:block}.account-payment-history strong{color:var(--text-strong);text-align:right;font-size:12.5px}.account-payment-history a{color:var(--portal-blue);text-align:right;font-size:11.5px;font-weight:600}.wallet-balance-row{grid-template-columns:minmax(180px,260px) 1fr;align-items:start;gap:20px;padding:16px 22px;display:grid}.wallet-balance-amount{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-2);gap:5px;padding:16px;display:grid}.wallet-balance-amount span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:11px}.wallet-balance-amount strong{letter-spacing:-.01em;color:var(--text-strong);font-size:26px;font-weight:700}.wallet-balance-note{color:var(--text-muted);gap:8px;font-size:12.5px;line-height:1.55;display:grid}.wallet-balance-note p{margin:0}.wallet-entries{display:grid}.wallet-entry{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:14px;padding:13px 22px;display:flex}.wallet-entry:last-child{border-bottom:0}.wallet-entry-main{align-items:center;gap:12px;min-width:0;display:flex}.wallet-entry-main>div{gap:2px;min-width:0;display:grid}.wallet-entry-main strong{color:var(--text-strong);font-size:13px}.wallet-entry-main small{color:var(--text-muted);font-size:11px}.wallet-entry-sum{text-align:right;gap:2px;display:grid}.wallet-entry-sum strong{font-size:13.5px;font-weight:700}.wallet-entry-sum small{color:var(--text-muted);font-size:11px}.wallet-positive{color:var(--success)}.wallet-negative{color:var(--text-strong)}.wallet-footnote{color:var(--text-muted);margin:2px 2px 0;font-size:12px}.notification-list{padding:4px 22px 8px;display:grid}.notification-list article{border-bottom:1px solid var(--border-soft);border-radius:var(--radius-sm);cursor:pointer;justify-content:space-between;align-items:flex-start;gap:20px;padding:14px 12px;transition:background-color .12s;display:flex}.notification-list article:last-child{border-bottom:0}.notification-list article:hover{background:var(--surface-2)}.notification-list article.unread{background:color-mix(in srgb,var(--portal-blue) 6%,transparent)}.notification-list article>div{gap:4px;min-width:0;display:grid}.notification-list article strong{color:var(--text-strong);font-size:13px}.notification-list article span{color:var(--text-muted);font-size:12.5px;line-height:1.5}.notification-list article a{color:var(--portal-blue);font-size:12px;font-weight:600}.notification-list time{color:var(--text-faint);white-space:nowrap;font-size:11.5px}.portal-settings-form{flex-direction:column;gap:16px;margin:0;padding:20px 22px;display:flex}.portal-settings-form>label{gap:7px;display:grid}.portal-settings-form label>span{color:var(--text-muted);font-size:12px;font-weight:600}.portal-settings-form label>small{color:var(--text-faint);font-size:11px;line-height:1.45}.portal-settings-form input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);height:40px;color:var(--portal-text);outline:none;padding:0 12px;font-size:13px;transition:border-color .12s}.portal-settings-form input:focus{border-color:var(--portal-blue);box-shadow:0 0 0 3px var(--focus-ring)}.portal-settings-form input::placeholder{color:var(--text-faint)}.portal-settings-form .form-error,.portal-settings-form .portal-form-success{margin:0}.portal-settings-form .portal-button{align-self:flex-start}.security-grid{grid-template-columns:1fr 1fr;align-items:start;gap:16px;margin-bottom:16px;display:grid}.security-grid>.portal-panel{margin-bottom:0}.provider-settings{gap:12px;padding:16px 22px;display:grid}.provider-row{border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:12px;padding:12px 14px;display:flex}.provider-row>div{gap:2px;min-width:0;display:grid}.provider-row strong{color:var(--text-strong);font-size:13px}.provider-row small{color:var(--text-muted);font-size:11px}.provider-row .portal-button{flex:none;margin-left:auto}.provider-code{border-radius:var(--radius-sm);background:color-mix(in srgb,var(--portal-blue) 10%,transparent);width:36px;height:36px;color:var(--portal-blue);flex:none;place-items:center;font-size:12px;font-weight:700;display:grid}.provider-disabled{color:var(--text-muted);margin:0;font-size:12.5px}.session-panel{margin-top:2px}.session-list{flex-direction:column;display:flex}.session-row{border-top:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:20px;padding:15px 22px;display:flex}.session-row:first-child{border-top:0}.session-row-main{flex-direction:column;gap:4px;min-width:0;display:flex}.session-row-main strong{color:var(--text-strong);font-size:13.5px}.session-row-main span{color:var(--text-muted);font-size:12px;line-height:1.45}.session-row-main small{text-overflow:ellipsis;white-space:nowrap;max-width:760px;color:var(--text-faint);font-size:11px;line-height:1.45;overflow:hidden}.status-pill{border-radius:var(--radius-pill);white-space:nowrap;background:var(--surface-2);color:var(--text-muted);align-items:center;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.status-pill.success{background:var(--success-bg);color:var(--success)}[data-theme=dark] .notification-list article.unread{background:color-mix(in srgb,var(--portal-blue) 12%,transparent)}[data-theme=dark] .cab-sidebar{box-shadow:none}@media (max-width:1100px){.cab-product-grid,.account-metrics.cab-metrics,.finance-account-metrics{grid-template-columns:1fr 1fr}}@media (max-width:900px){.security-grid{grid-template-columns:1fr}}@media (max-width:860px){.cab-sidebar{width:264px;box-shadow:var(--shadow-lg);transform:translate(-102%)}.cab-sidebar.is-open{transform:translate(0)}.cab-sidebar-toggler{display:none}.cab-overlay{z-index:70;background:#0f172080;border:0;display:block;position:fixed;inset:0}.cab-main,.cab-layout.is-collapsed .cab-main{margin-left:0}.cab-menu-button{place-items:center;display:grid}.cab-header{padding:0 16px}.cab-content{width:min(100% - 32px,1180px);padding-bottom:86px}.admin-shell .cab-content{width:min(100% - 32px,1440px);padding-bottom:82px}.cab-user-card,.cab-alert{flex-wrap:wrap}.cab-alert-buttons{width:100%;margin-left:0}.cab-navbar{z-index:60;background:var(--surface);border-top:1px solid var(--border);padding:6px 4px calc(6px + env(safe-area-inset-bottom));grid-template-columns:repeat(5,1fr);display:grid;position:fixed;inset:auto 0 0}.cab-navbar a,.cab-navbar button{color:var(--text-muted);cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;font-size:11px;transition:color .12s;display:flex}.cab-navbar a.is-active,.cab-navbar a:hover,.cab-navbar button:hover{color:var(--portal-blue)}}@media (max-width:760px){.account-finance-order{grid-template-columns:1fr 1fr}.account-payment-history>div{grid-template-columns:minmax(0,1fr) auto}.account-payment-history a{text-align:left;grid-column:1/-1}.notification-list article{gap:6px;display:grid}.camera-live-grid{grid-template-columns:1fr}}@media (max-width:720px){.wallet-balance-row{grid-template-columns:1fr}.cab-finance-grid{grid-template-columns:repeat(2,1fr)}.cab-finance-grid>div:nth-child(2){border-right:0}.cab-finance-grid>div:nth-child(-n+2){border-bottom:1px solid var(--border)}}@media (max-width:700px){.rental-detail-top{gap:14px;display:grid}.rental-detail-total{text-align:left}.rental-edit-list article{grid-template-columns:1fr;gap:12px}.rental-edit-fields{grid-template-columns:1fr 1fr}.rental-static-period{justify-content:flex-start}.rental-events>div{grid-template-columns:1fr;gap:3px}.extension-request-form{grid-template-columns:1fr}.extension-history>div{grid-template-columns:1fr;gap:4px}.session-row{flex-direction:column;align-items:flex-start}.session-row .portal-button{width:100%}.session-row-main small{white-space:normal;max-width:100%}}@media (max-width:560px){.cab-product-grid{grid-template-columns:1fr;padding:12px}.account-metrics.cab-metrics,.finance-account-metrics{grid-template-columns:1fr}.gateway-payment-list>div{flex-direction:column;align-items:flex-start;gap:8px}.finance-client-payments>div{flex-direction:column;align-items:flex-start;gap:6px}}@media (max-width:520px){.cab-finance-grid{grid-template-columns:1fr}.cab-finance-grid>div{border-right:0;border-bottom:1px solid var(--border)}.cab-finance-grid>div:last-child{border-bottom:0}}.cab-sidebar-logo .admin-tag{letter-spacing:.07em;text-transform:uppercase;color:var(--portal-blue);background:color-mix(in srgb,var(--portal-blue) 12%,transparent);border-radius:var(--radius-pill);white-space:nowrap;padding:3px 9px;font-size:11px;font-weight:700}.admin-shell .form-note{color:var(--text-muted);font-size:11.5px;line-height:1.55}.admin-shell input[type=checkbox],.admin-shell input[type=radio]{accent-color:var(--portal-blue)}.admin-kpi-delta{gap:var(--space-3);margin:0 0 var(--space-4);grid-template-columns:repeat(2,1fr);display:grid}.kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-4) 18px;gap:var(--space-2);align-content:start;display:grid}.kpi-card-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.kpi-card-head span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:11px;font-weight:600}.kpi-card strong{letter-spacing:-.01em;color:var(--text-strong);font-size:24px;font-weight:700}.kpi-card small{color:var(--text-faint);font-size:11px}.kpi-delta{border-radius:var(--radius-pill);white-space:nowrap;padding:2px 9px;font-size:11px;font-style:normal;font-weight:700}.kpi-delta.up{background:var(--success-bg);color:var(--success)}.kpi-delta.down{background:var(--danger-bg);color:var(--danger)}.kpi-delta.flat{background:var(--surface-2);color:var(--text-muted)}.sparkline{display:block}.attention-panel>.attention-list{padding:var(--space-1) 0}.attention-list{display:grid}.attention-item{align-items:center;gap:var(--space-3);padding:11px var(--space-5);border-bottom:1px solid var(--border-soft);color:var(--portal-text);text-decoration:none;transition:background-color .12s,color .12s;display:flex}.attention-item:last-child{border-bottom:0}.attention-item:hover{background:var(--portal-hover)}.attention-main{flex:1;gap:2px;min-width:0;display:grid}.attention-main strong{color:var(--text-strong);font-size:13px;font-weight:600}.attention-main small{color:var(--text-muted);font-size:11px}.attention-item>b{color:var(--text-strong);white-space:nowrap;font-size:13px;font-weight:700}.attention-danger>b{color:var(--danger)}.admin-table input,.admin-table select,.admin-toolbar input,.admin-toolbar select{height:34px;min-height:34px;font-size:12.5px}.admin-table input{min-width:95px;max-width:190px}.admin-toolbar input{width:320px;max-width:100%}.admin-toolbar select{min-width:180px}.admin-toolbar .ui-select{min-width:170px}.admin-table code{background:var(--surface-2);color:var(--text-muted);border-radius:6px;padding:2px 7px;font-family:inherit;font-size:11px}.admin-table thead .sort-th{text-align:left;justify-content:flex-start;width:100%}.users-table{min-width:880px}.inventory-table input{min-width:140px}.catalog-admin-table td:first-child input{min-width:180px}.catalog-admin-table .ui-check{font-size:12px}.admin-table td .ui-check+.ui-check,.admin-table td .ui-radio+.ui-radio{margin-left:var(--space-3)}.portal-panel>.admin-metrics,.admin-panel>.admin-metrics{padding:var(--space-4) var(--space-5) var(--space-2);margin-bottom:0}.row-dirty{background:color-mix(in srgb,var(--warning) 7%,transparent)}.row-dirty td:first-child{box-shadow:inset 3px 0 0 var(--warning)}.row-clickable{cursor:pointer}.row-clickable:hover td:first-child{box-shadow:inset 3px 0 0 var(--portal-blue)}.dirty-hint{color:var(--warning);background:var(--warning-bg);border:1px solid color-mix(in srgb,var(--warning) 35%,transparent);border-radius:var(--radius-pill);white-space:nowrap;align-self:center;padding:4px 12px;font-size:11px;font-weight:600}.toolbar-select{align-items:center;gap:var(--space-2);min-width:0;display:inline-flex}.toolbar-select span{color:var(--text-muted);white-space:nowrap;font-size:12px}.table-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.table-actions button:not(.portal-button){border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-sm);color:var(--portal-text);cursor:pointer;padding:6px 11px;font-size:11.5px;font-weight:600;transition:border-color .12s,color .12s,background-color .12s}.table-actions button:not(.portal-button):hover{border-color:var(--portal-blue);color:var(--portal-blue)}.operations-panel>.admin-table-wrap{padding:0 var(--space-5) var(--space-5)}.operations-table{width:100%;min-width:0;max-width:660px}.ops-chip{border-radius:var(--radius-pill);white-space:nowrap;align-items:center;gap:6px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.ops-chip.ok{background:var(--success-bg);color:var(--success)}.ops-chip.warn{background:var(--warning-bg);color:var(--warning)}.ops-chip.err{background:var(--danger-bg);color:var(--danger)}.ops-chip.muted{background:var(--surface-2);color:var(--text-muted)}.ops-runtime-cell{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:inline-flex}.ops-runtime-cell small{color:var(--text-muted);font-size:11px}.admin-form-grid{gap:var(--space-4);padding:var(--space-5);grid-template-columns:1fr 1fr;display:grid}.admin-form-grid label{gap:6px;min-width:0;display:grid}.admin-form-grid label>span{color:var(--text-muted);font-size:12px;font-weight:600}.admin-form-grid input,.admin-form-grid select{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;height:38px;font:inherit;color:var(--portal-text);padding:0 11px;font-size:13px;transition:border-color .12s}.admin-form-grid textarea{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;font:inherit;color:var(--portal-text);resize:vertical;padding:9px 11px;font-size:13px;line-height:1.5}.admin-form-grid .wide{grid-column:1/-1}.admin-form-checks{gap:var(--space-5);padding-bottom:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.admin-form-checks label{color:var(--portal-text);cursor:pointer;align-items:center;gap:7px;font-size:12.5px;display:flex}.admin-form-checks input[type=checkbox],.admin-form-grid input[type=checkbox],.admin-form-grid input[type=radio],.admin-table input[type=checkbox],.admin-table input[type=radio],.admin-toolbar input[type=checkbox],.admin-toolbar input[type=radio]{width:16px;min-width:0;max-width:none;height:16px;box-shadow:none;background:0 0;border:0;flex:none;padding:0}.admin-settings-form>.admin-form-checks{padding:var(--space-4) var(--space-5) 4px}.admin-shell .rental-actions{gap:var(--space-2);padding:var(--space-4) var(--space-5);border-top:1px solid var(--border-soft);flex-wrap:wrap;align-items:center;display:flex}.admin-shell .portal-panel-empty .rental-actions{padding:var(--space-3) 0 0;border-top:0;margin-top:0}.admin-product-form{max-width:980px}.admin-product-form>.rental-actions{padding:0 var(--space-5) var(--space-5);border-top:0}.admin-product-form>.form-error,.admin-product-form>.portal-form-success{margin:0 var(--space-5) var(--space-3)}.admin-settings-form>.rental-actions{padding:var(--space-4) var(--space-5) var(--space-5);border-top:1px solid var(--border)}.admin-settings-form>.form-note{padding:0 var(--space-5);margin-top:var(--space-3)}.admin-definition{grid-template-columns:repeat(4,1fr);gap:0;display:grid}.admin-definition>div{padding:var(--space-4) var(--space-5);border-right:1px solid var(--border-soft)}.admin-definition>div:last-child{border-right:0}.admin-definition span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:11px;display:block}.admin-definition strong{color:var(--text-strong);overflow-wrap:anywhere;font-size:13px;font-weight:600}.admin-order-items article{padding:18px var(--space-5);border-bottom:1px solid var(--border-soft)}.admin-order-items article:last-child{border-bottom:0}.admin-order-item-head{justify-content:space-between;gap:var(--space-5);display:flex}.admin-order-item-head strong{color:var(--text-strong);font-size:13px;font-weight:600}.admin-order-item-head small{color:var(--text-muted);margin-top:4px;font-size:11px;display:block}.admin-order-item-head b{color:var(--text-strong);font-size:13px;font-weight:700}.assigned-unit-list{margin-top:var(--space-3);flex-wrap:wrap;gap:6px;display:flex}.assigned-unit-list span{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);padding:4px 9px;font-size:11px}.unit-editor{margin-top:var(--space-3);align-items:flex-start;gap:var(--space-2);flex-direction:column;display:flex}.unit-options{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;padding:var(--space-3);align-self:stretch;gap:var(--space-2);grid-template-columns:repeat(3,1fr);display:grid}.unit-options label{border:1px solid var(--border);border-radius:var(--radius-sm);grid-template-columns:18px 1fr;align-items:center;column-gap:5px;padding:9px 10px;transition:border-color .12s;display:grid}.unit-options label:hover{border-color:var(--portal-blue)}.unit-options label.disabled{opacity:.45}.unit-options .unit-option.is-disabled-opt{opacity:.5}.unit-options label span{color:var(--text-strong);font-size:12px;font-weight:600}.unit-options label small{color:var(--text-muted);grid-column:2;font-size:11px}.unit-options .portal-button{grid-column:1/-1;justify-self:start}.unit-options .ui-check{align-items:flex-start;width:100%}.unit-options .ui-check-label{gap:2px;display:grid}.unit-options .ui-check-box{margin-top:1px}.role-checkboxes{gap:var(--space-2);flex-wrap:wrap;display:flex}.role-checkboxes label{white-space:nowrap;cursor:pointer;align-items:center;gap:5px;font-size:12px;display:flex}.admin-role-text{color:var(--text-muted);font-size:12px}.admin-category-list{display:grid}.admin-category-list>div{gap:var(--space-2);padding:11px var(--space-4);border-bottom:1px solid var(--border-soft);grid-template-columns:1.4fr 1fr 74px auto 84px auto auto;align-items:center;display:grid}.admin-category-list span{color:var(--text-muted);font-size:11px}.admin-category-list input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);height:36px;color:var(--portal-text);padding:0 9px;font-size:12.5px;transition:border-color .12s}.admin-inline-create{gap:var(--space-2);padding:var(--space-4);flex-wrap:wrap;display:flex}.admin-inline-create input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-width:200px;height:36px;color:var(--portal-text);padding:0 9px;font-size:12.5px;transition:border-color .12s}.admin-product-create{padding:18px var(--space-5);border-top:1px solid var(--border);gap:var(--space-2);grid-template-columns:180px repeat(5,minmax(120px,1fr)) auto;align-items:center;display:grid}.admin-product-create h3{color:var(--text-strong);grid-column:1/-1;margin:0;font-size:13px;font-weight:700}.admin-product-create input,.admin-product-create select{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);height:36px;color:var(--portal-text);min-width:0;padding:0 9px;font-size:12.5px;transition:border-color .12s}.admin-empty{text-align:center;color:var(--text-muted);padding:38px;font-size:12.5px}.admin-settings-form{max-width:1100px}.admin-settings-tabs{margin-bottom:var(--space-4);border-bottom:1px solid var(--border);flex-wrap:wrap;gap:2px;display:flex}.admin-settings-tabs button{color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:11px 15px;font-size:13px;font-weight:500;transition:color .12s,border-color .12s}.admin-settings-tabs button:hover{color:var(--portal-text)}.admin-settings-tabs button.active{color:var(--portal-blue);border-bottom-color:var(--portal-blue);font-weight:650}.admin-settings-subhead{padding:var(--space-4) var(--space-5) 0;border-top:1px solid var(--border-soft)}.admin-settings-subhead h3{color:var(--text-strong);margin:0;font-size:13px;font-weight:700}.settings-savebar{bottom:var(--space-3);z-index:40;margin:var(--space-4) 0 0;padding:var(--space-3) var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);position:sticky}.settings-savebar-inner{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.settings-dirty{color:var(--text-muted);font-size:12.5px;font-weight:600}.settings-dirty.is-dirty{color:var(--warning)}.settings-dirty.is-dirty:before{content:"● ";color:var(--warning)}.theme-editor-grid{gap:var(--space-3);padding:var(--space-5);grid-template-columns:repeat(3,1fr);display:grid}.theme-editor-grid>label{gap:6px;display:grid}.theme-editor-grid>label>span{color:var(--text-muted);font-size:11px;font-weight:600}.theme-editor-grid>label>div{grid-template-columns:42px 1fr;gap:7px;display:grid}.theme-editor-grid input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);height:38px;color:var(--portal-text);min-width:0;padding:4px 9px;font-size:12px;transition:border-color .12s}.admin-settings-form input[type=color]{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;flex:none;width:42px;height:42px;padding:0}.admin-settings-form input[type=color]::-webkit-color-swatch-wrapper{padding:3px}.admin-settings-form input[type=color]::-webkit-color-swatch{border:0;border-radius:4px}.admin-settings-form input[type=color]::-moz-color-swatch{border:0;border-radius:4px}.theme-preview{margin:0 var(--space-5) var(--space-5);padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.theme-preview>div{max-width:560px;padding:var(--space-5);border-radius:var(--radius-lg);border:1px solid}.theme-preview span{text-transform:uppercase;letter-spacing:.05em;font-size:11px}.theme-preview h3{color:inherit;margin:7px 0;font-size:20px}.theme-preview p{margin:0 0 var(--space-4);font-size:12.5px;line-height:1.55}.theme-preview button{border-radius:var(--radius-sm);color:#fff;height:36px;margin-right:var(--space-3);cursor:pointer;border:1px solid;padding:0 14px;font-size:12px;font-weight:600}.theme-preview a{font-size:12px;font-weight:650}.admin-pages-layout{gap:var(--space-3);grid-template-columns:300px minmax(0,1fr);align-items:start;display:grid}.admin-page-list{overflow:hidden}.admin-page-list>.admin-panel-head{padding:13px var(--space-4)}.admin-page-list>button{border:0;border-top:1px solid var(--border-soft);background:var(--surface);width:100%;padding:12px var(--space-4);text-align:left;cursor:pointer;font:inherit;color:inherit;grid-template-columns:1fr auto;gap:3px 8px;transition:background-color .12s,color .12s;display:grid}.admin-page-list>button:hover,.admin-page-list>button.active{background:var(--portal-hover)}.admin-page-list>button.active{box-shadow:inset 3px 0 var(--portal-blue)}.admin-page-list strong{color:var(--text-strong);font-size:12.5px;font-weight:600}.admin-page-list span{color:var(--text-muted);font-size:11px}.admin-page-list small{color:var(--text-faint);grid-area:1/2/-1;align-self:center;font-size:11px}.finance-metrics article:nth-child(2) strong,.finance-danger,.admin-table td.finance-danger,.admin-table td strong.finance-danger,.admin-metrics strong.finance-danger,.admin-metrics>div strong.finance-danger{color:var(--danger)}.finance-table .finance-danger{font-weight:700}.finance-summary-grid{border-top:1px solid var(--border-soft);border-left:1px solid var(--border-soft);grid-template-columns:repeat(4,1fr);display:grid}.finance-summary-grid>div{padding:var(--space-4) 18px;border-right:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);align-content:start;gap:4px;display:grid}.finance-summary-grid span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:11px}.finance-summary-grid strong{color:var(--text-strong);font-size:14.5px;font-weight:700}.finance-summary-grid small{color:var(--text-faint);font-size:11px}.finance-summary-grid .danger strong,.finance-summary-grid .danger small{color:var(--danger)}.finance-terms-form{padding:var(--space-4) var(--space-5);gap:var(--space-3);border-top:1px solid var(--border-soft);grid-template-columns:180px 180px 1fr auto;align-items:end;display:grid}.finance-entry-form{padding:var(--space-4) var(--space-5);gap:var(--space-3);border-top:1px solid var(--border-soft);grid-template-columns:120px 120px 150px 130px 180px 1fr;align-items:end;display:grid}.finance-entry-form .wide{grid-column:1/-2}.finance-entry-form>div{gap:5px;min-width:0;display:grid}.finance-entry-form .table-actions{justify-content:flex-start}.finance-entry-form button{align-self:end}.finance-terms-form label,.finance-entry-form label{gap:5px;min-width:0;display:grid}.finance-terms-form span,.finance-entry-form span{color:var(--text-muted);font-size:11px}.finance-terms-form input,.finance-entry-form input,.finance-entry-form select{width:100%;min-width:0;height:38px;font-size:12.5px}.finance-terms-form textarea{resize:vertical;width:100%;min-width:0;min-height:38px;font-size:12.5px}.finance-terms-form .ui-select,.finance-terms-form .ui-date,.finance-entry-form .ui-select,.finance-entry-form .ui-date{width:100%}.payment-list{display:grid}.payment-row{padding:var(--space-3) var(--space-5);border-top:1px solid var(--border-soft);gap:var(--space-3);grid-template-columns:100px 130px 130px 160px minmax(0,1fr) auto;align-items:center;font-size:12.5px;display:grid}.payment-row:first-child{border-top:0}.payment-row small{color:var(--text-muted);margin-top:2px;font-size:11px;display:block}.payment-row.voided{opacity:.55;text-decoration:line-through}.payment-amount{color:var(--text-strong);font-size:13px;font-weight:700}.payment-amount.payment{color:var(--text-strong)}.payment-amount.refund{color:var(--danger)}.payment-actions{flex-wrap:wrap;gap:6px;display:flex}.payment-actions button{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-sm);color:var(--portal-text);cursor:pointer;padding:6px 10px;font-size:11.5px;font-weight:600;transition:border-color .12s,color .12s,background-color .12s}.payment-actions button:hover{border-color:var(--portal-blue);color:var(--portal-blue)}.fiscal-pill{border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text-muted);white-space:nowrap;align-items:center;padding:3px 9px;font-size:11px;font-weight:600;display:inline-flex}.fiscal-pill.issued{background:var(--success-bg);color:var(--success)}.fiscal-pill.failed,.fiscal-pill.pending{background:var(--warning-bg);color:var(--warning)}.gateway-admin-block{padding:var(--space-4) var(--space-5);border-top:1px solid var(--border-soft)}.gateway-admin-block h3{margin:0 0 var(--space-3);color:var(--text-strong);font-size:13px;font-weight:700}.gateway-admin-list{display:grid}.gateway-admin-list>div{justify-content:space-between;align-items:center;gap:var(--space-3);border-bottom:1px solid var(--border-soft);flex-wrap:wrap;padding:11px 0;font-size:12.5px;display:flex}.gateway-admin-list>div:last-child{border-bottom:0}.gateway-admin-list>div>div:first-child{gap:3px;min-width:0;display:grid}.gateway-admin-list strong{color:var(--text-strong);font-size:12.5px;font-weight:600}.gateway-admin-list small{color:var(--text-muted);font-size:11px}.gateway-admin-list button{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-sm);height:32px;color:var(--portal-text);cursor:pointer;padding:0 11px;font-size:11.5px;font-weight:600;transition:border-color .12s,color .12s,background-color .12s}.gateway-admin-list button:hover{border-color:var(--portal-blue);color:var(--portal-blue)}.gateway-refund-history{color:var(--text-muted);flex-wrap:wrap;gap:6px 12px;font-size:11px;display:flex}.gateway-refund-history span{white-space:nowrap}.admin-filter-row{gap:var(--space-3) var(--space-4);margin:0 0 var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.portal-panel>.admin-filter-row,.admin-panel>.admin-filter-row{padding:var(--space-4) var(--space-5) 0;margin-bottom:var(--space-4)}.admin-filter-row label{align-items:center;gap:var(--space-2);min-width:0;display:flex}.admin-filter-row label>span{color:var(--text-muted);white-space:nowrap;font-size:12px;font-weight:500}.admin-filter-row select,.admin-filter-row label>input{min-width:150px;height:38px;font-size:13px}.admin-filter-row .filter-buttons{align-items:center;gap:var(--space-2);display:flex}.admin-filter-row .ui-select,.admin-filter-row .ui-date{min-width:170px}.admin-filter-row .ui-select-btn,.admin-filter-row .ui-date-btn{min-height:38px;font-size:13px}.analytics-split{background:var(--border-soft);border-top:1px solid var(--border-soft);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.analytics-split>div{background:var(--surface);padding:var(--space-4) var(--space-5);justify-content:space-between;align-items:center;display:flex}.analytics-split span{color:var(--text-muted);font-size:12px}.analytics-split strong{color:var(--text-strong);font-size:16px;font-weight:700}.trend-chart-wrap{padding:var(--space-2) var(--space-4) var(--space-4)}.trend-chart{width:100%;height:auto;display:block}.trend-grid{stroke:var(--border);stroke-width:1px}.trend-axis-text{fill:var(--text-muted);font-size:11px}.trend-bar{fill:var(--portal-blue);opacity:.85;transition:opacity .12s}.trend-bar:hover{opacity:1}.trend-line{stroke:var(--warning);fill:none}.trend-legend{gap:var(--space-4);padding:var(--space-3) 4px 0;color:var(--text-muted);flex-wrap:wrap;font-size:11.5px;display:flex}.trend-legend-item{align-items:center;gap:7px;display:inline-flex}.trend-legend-bar{background:var(--portal-blue);opacity:.85;border-radius:3px;width:12px;height:12px}.trend-legend-line{border-top:2px solid var(--warning);width:16px;height:0}.compliance-checklist{padding:6px var(--space-5) var(--space-3);display:grid}.compliance-checklist>div{gap:var(--space-3);border-top:1px solid var(--border-soft);align-items:flex-start;padding:13px 0;display:flex}.compliance-checklist>div:first-child{border-top:0}.compliance-checklist b{border:1px solid var(--border);border-radius:var(--radius-pill);width:24px;height:24px;color:var(--success);flex:none;place-items:center;display:grid}.compliance-checklist span{color:var(--portal-text);font-size:13px;line-height:1.5}.incident-list,.legal-version-list{margin:var(--space-4) var(--space-5) var(--space-2);border-top:1px solid var(--border-soft);display:grid}.incident-list button,.legal-version-list button{gap:var(--space-3);text-align:left;border:0;border-bottom:1px solid var(--border-soft);font:inherit;color:inherit;cursor:pointer;background:0 0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;padding:12px 0;transition:color .12s;display:grid}.incident-list button:hover,.legal-version-list button:hover{color:var(--portal-blue)}.incident-list strong,.legal-version-list strong{font-size:12.5px;font-weight:600}.incident-list span,.incident-list small,.legal-version-list span,.legal-version-list small{color:var(--text-muted);font-size:11.5px}.text-danger,.admin-table td.text-danger{color:var(--danger);font-weight:600}.reviews-admin-table{min-width:980px}.review-comment-cell{overflow-wrap:anywhere;max-width:340px}.camera-live-panel{min-width:0}.camera-live-grid{gap:var(--space-4);padding:var(--space-4) var(--space-5);grid-template-columns:repeat(auto-fill,minmax(420px,1fr));display:grid}.camera-live-card{gap:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-3);background:var(--surface);display:grid}.camera-live-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.camera-live-head strong{color:var(--text-strong);font-size:13px;font-weight:600}.camera-live-head small{color:var(--text-muted);margin-top:2px;font-size:11px;display:block}.camera-live-frame{aspect-ratio:16/9;border:1px solid var(--border);border-radius:var(--radius-sm);background:#000;width:100%;display:block}.product-media-admin{padding-bottom:var(--space-4)}.product-image-upload{gap:var(--space-3);padding:var(--space-4) 18px;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto;align-items:end;display:grid}.product-image-upload label{gap:5px;min-width:0;display:grid}.product-image-upload label>span{color:var(--text-muted);font-size:11px;font-weight:600}.product-image-upload input{width:100%;min-height:36px;padding:6px 9px;font-size:12px}.product-image-admin-grid{gap:var(--space-3);grid-template-columns:repeat(4,minmax(140px,1fr));padding:0 18px 18px;display:grid}.product-image-admin-grid article{border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-2);background:var(--surface);gap:var(--space-2);display:grid}.product-image-admin-grid article>img{aspect-ratio:4/3;object-fit:contain;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:6px;width:100%}.product-image-admin-grid label{gap:4px;display:grid}.product-image-admin-grid label>span{color:var(--text-muted);font-size:11px}.product-image-admin-grid input{width:100%;min-width:0;height:32px;font-size:11.5px}.product-image-admin-grid article>div{flex-wrap:wrap;gap:6px;display:flex}.admin-table .ui-select-btn,.admin-toolbar .ui-select-btn,.admin-form-grid .ui-select-btn,.admin-product-create .ui-select-btn,.admin-inline-create .ui-select-btn,.admin-category-list .ui-select-btn,.admin-table .ui-date-btn{min-height:34px;padding-top:4px;padding-bottom:4px;font-size:12.5px}.admin-form-grid .ui-select-btn,.admin-form-grid .ui-date-btn{min-height:38px;padding-top:6px;padding-bottom:6px;font-size:13px}.admin-table .ui-select-menu{font-size:12.5px}.admin-table .ui-select,.admin-table .ui-date{min-width:120px}[data-theme=dark] .admin-table code{color:#cdd8e0;background:#1d262e}[data-theme=dark] .kpi-card{box-shadow:none}[data-theme=dark] .row-dirty{background:color-mix(in srgb,var(--warning) 10%,transparent)}@media (max-width:1100px){.finance-summary-grid{grid-template-columns:repeat(2,1fr)}.finance-terms-form{grid-template-columns:1fr 1fr}.finance-terms-form label:nth-child(3){grid-column:1/-1}.finance-entry-form{grid-template-columns:1fr 1fr 1fr}.finance-entry-form .wide{grid-column:1/-1}.payment-row{grid-template-columns:1fr 1fr 1fr}}@media (max-width:1050px){.admin-metrics,.admin-definition{grid-template-columns:repeat(2,1fr)}.admin-category-list>div,.admin-product-create{grid-template-columns:1fr 1fr}.admin-product-create h3{grid-column:1/-1}.unit-options,.theme-editor-grid{grid-template-columns:repeat(2,1fr)}.admin-pages-layout{grid-template-columns:240px minmax(0,1fr)}}@media (max-width:900px){.payment-row{gap:var(--space-2);grid-template-columns:1fr 1fr}.finance-entry-form,.finance-terms-form,.product-image-admin-grid,.product-image-upload{grid-template-columns:1fr 1fr}.product-image-upload button{grid-column:1/-1}}@media (max-width:860px){.admin-shell .cab-content{width:min(100% - 32px,1440px);padding-bottom:30px}}@media (max-width:760px){.admin-pages-layout,.theme-editor-grid{grid-template-columns:1fr}.legal-version-list button,.incident-list button{grid-template-columns:1fr;gap:5px}.camera-live-grid{grid-template-columns:1fr}}@media (max-width:720px){.admin-metrics,.admin-definition{grid-template-columns:1fr}.admin-definition>div{border-right:0;border-bottom:1px solid var(--border-soft)}.admin-definition>div:last-child{border-bottom:0}.admin-category-list>div{grid-template-columns:1fr}.admin-inline-create{grid-template-columns:1fr;display:grid}.admin-inline-create button{justify-self:start}.admin-product-create,.unit-options,.admin-form-grid{grid-template-columns:1fr}.admin-form-grid .wide{grid-column:auto}.admin-kpi-delta,.analytics-split{grid-template-columns:1fr}}@media (max-width:680px){.finance-summary-grid,.finance-terms-form,.finance-entry-form{grid-template-columns:1fr}.finance-terms-form label:nth-child(3),.finance-entry-form .wide{grid-column:auto}.payment-row{grid-template-columns:1fr 1fr}.payment-actions{grid-column:1/-1}}@media (max-width:560px){.gateway-admin-list>div{flex-direction:column;align-items:flex-start}.product-image-admin-grid,.product-image-upload{grid-template-columns:1fr}}.favicon-editor{padding:var(--space-5);flex-wrap:wrap;align-items:center;gap:18px;display:flex}.favicon-preview{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);flex:none;place-items:center;width:64px;height:64px;display:grid}.favicon-preview img{object-fit:contain;background:var(--surface);border-radius:6px;width:48px;height:48px}.favicon-preview>span{color:var(--text-faint);font-size:11px}.favicon-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.favicon-upload{cursor:pointer;position:relative;overflow:hidden}.favicon-upload input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0}@media (max-width:560px){.favicon-editor{gap:12px}}.row-order-controls{gap:4px;display:inline-flex}.row-order-controls .portal-button{min-width:32px;padding:0 8px}.role-permissions-grid{gap:var(--space-4);padding:0 var(--space-5);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.role-permissions-group{border:1px solid var(--border-soft);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);background:var(--surface);align-content:start;gap:8px;display:grid}.role-permissions-group h4{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0;font-size:11px;font-weight:700}@media (max-width:720px){.role-permissions-grid{grid-template-columns:1fr}}.impersonation-banner{z-index:45;background:var(--warning-bg);border-bottom:1px solid color-mix(in srgb,var(--warning) 45%,transparent);color:var(--text-strong);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:9px 24px;font-size:12.5px;line-height:1.4;display:flex;position:sticky;top:0}.impersonation-banner b{color:var(--warning)}@media (max-width:600px){.impersonation-banner{padding:9px 16px}}
