:root{color-scheme:light;--bg: #f5f7fb;--panel: #ffffff;--text: rgb(34, 34, 34);--muted: #6e7a8a;--line: #d9e1ea;--accent: #0f766e;--accent-2: #155eef;--chip: #e9f7f4;--shadow: 0 12px 30px rgba(16, 24, 40, .08);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{overflow-x:hidden}body{margin:0;overflow-x:hidden;background:#2e3b62;color:var(--text);font-size:14px;font-weight:400;line-height:19.6px}a{color:inherit;text-decoration:none}.shell{height:100vh;overflow:hidden;display:grid;grid-template-columns:290px 1fr}.sidebar{min-width:0;height:100vh;overflow-y:auto;padding:20px;background:#1a2b3c;border-right:1px solid var(--line)}.brand{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.brand__logo{height:68px;width:auto;display:block}.sidebar__close{display:none;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:none;background:#ffffff1a;color:#fff;cursor:pointer;flex-shrink:0}.hamburger-button{display:none;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;border:1px solid var(--line);background:#fff;color:var(--text);cursor:pointer;flex-shrink:0}.header__left{display:flex;align-items:center;gap:12px;min-width:0}.header__title,.card h2,.form-section h3{margin:0}.brand__sub,.muted,.header__eyebrow{color:var(--muted)}.brand__sub{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.nav{display:grid;gap:8px}.nav__item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid transparent;color:#fff!important}.nav__item-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:28px;height:28px;border-radius:8px;background:#fff}.nav__item-label{flex:1;color:#fff!important}.nav__item--active{background:var(--accent-2);border-color:var(--accent-2);color:#fff!important;font-weight:600}.main{min-width:0;height:100vh;display:flex;flex-direction:column}.header{flex-shrink:0;padding:14px 24px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--line);background:#fff}.license-banner{flex-shrink:0;display:flex;align-items:center;gap:10px;padding:10px 24px;font-size:13px;font-weight:600}.license-banner--grace{background:#fef3c7;color:#92400e}.license-banner--suspended,.license-banner--renewal,.license-banner--expired{background:#fee2e2;color:#991b1b}.license-banner--vendor-warning{background:#ffedd5;color:#9a3412}.license-banner__dismiss{margin-left:auto;border:0;background:transparent;color:inherit;cursor:pointer;display:inline-flex;padding:4px;border-radius:6px;opacity:.75}.license-banner__dismiss:hover{opacity:1;background:#0000000f}.license-reminder-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1400;display:flex;align-items:center;justify-content:center;padding:20px;background:#0f172a80}.license-reminder-dialog{width:min(420px,100%);background:#fff;border-radius:16px;padding:28px 24px 22px;box-shadow:0 24px 48px #0f172a33;text-align:center}.license-reminder-dialog__icon{width:56px;height:56px;margin:0 auto 14px;border-radius:999px;display:flex;align-items:center;justify-content:center}.license-reminder-dialog__icon.is-renewal,.license-reminder-dialog__icon.is-expired{background:#fee2e2;color:#991b1b}.license-reminder-dialog__icon.is-warning{background:#ffedd5;color:#9a3412}.license-reminder-dialog__title{margin:0 0 8px;font-size:18px;font-weight:700;color:#0f172a}.license-reminder-dialog__message{margin:0 0 8px;font-size:14px;line-height:1.5;color:#334155}.license-reminder-dialog__hint{margin:0 0 18px;font-size:13px;color:#64748b}.license-reminder-dialog__ok{min-width:120px}.license-reminder-dialog__actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:4px}.subscription-days-left{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap;flex-shrink:0}.subscription-days-left--ok{background:#dcfce7;color:#166534}.subscription-days-left--warning{background:#fef3c7;color:#92400e}.subscription-days-left--expired{background:#fee2e2;color:#991b1b}.header__eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:12px}.header__title{font-size:26px}.header__meta{padding:6px 12px;border-radius:999px;background:#fff;border:1px solid var(--line)}.content{flex:1;overflow-y:auto;padding:28px;max-width:1800px;margin:0 auto;width:100%;min-width:0}.page{display:grid;gap:20px;min-width:0}.grid{display:grid;gap:16px}.cards{grid-template-columns:repeat(4,minmax(0,1fr))}.two-col{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.nav-tiles{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.nav-tile{display:flex;align-items:center;gap:16px;padding:20px 22px;text-align:left;border:1px solid var(--line);font:inherit;color:inherit;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.nav-tile:hover{transform:translateY(-2px);border-color:var(--nav-tile-color, var(--line));box-shadow:0 16px 34px #1018281a}.nav-tile__icon{flex-shrink:0;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:color-mix(in srgb,var(--nav-tile-color, var(--accent-2)) 14%,white)}.nav-tile__body{display:grid;gap:4px}.nav-tile__body strong{font-size:18px;color:var(--text)}.nav-tile__body span{font-size:14px;color:var(--muted)}.card{background:var(--panel);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);min-width:0}.stat{--stat-color: #155eef;position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:12px 12px 12px 14px;overflow:hidden;transition:transform .14s ease,box-shadow .14s ease}.stat:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--stat-color)}.stat:hover{transform:translateY(-2px);box-shadow:0 14px 28px #1018281a}.stat--clickable{cursor:pointer}.stat--clickable:focus-visible{outline:2px solid var(--stat-color);outline-offset:2px}.stat__icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;margin-bottom:6px;background:color-mix(in srgb,var(--stat-color) 14%,white);color:var(--stat-color)!important}.stat__icon svg{color:var(--stat-color)!important}.stat__label{color:var(--muted);font-size:12px}.stat__value{margin-top:2px;font-size:22px;font-weight:700}.panel{padding:20px}.panel__header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:0}.panel__header>div:first-child{min-width:0;flex:1 1 auto}.panel__header>.button{flex:0 0 auto;white-space:nowrap;align-self:flex-start}.panel__header--wrap{flex-wrap:wrap;row-gap:10px}.panel__header--wrap h2{flex:1 1 140px;white-space:nowrap}.status-period-filter{width:auto;flex:0 0 auto;min-width:0;max-width:96px;padding:4px 8px;font-size:12px;margin-left:auto;align-self:center}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0f172a8c;display:flex;align-items:center;justify-content:center;overflow-y:auto;padding:40px 40px 40px 330px}@media (max-width: 1100px){.modal-overlay{padding:16px;align-items:flex-start}.modal-overlay__panel{max-width:100%}.modal-overlay__panel .panel{max-height:calc(100vh - 32px);padding-top:48px}.modal-overlay__panel--narrow,.modal-overlay__panel--dashboard-stage{width:100%;max-width:100%}}.modal-overlay__panel{position:relative;width:100%;max-width:1280px;margin:0}.modal-overlay__panel--narrow{width:fit-content;max-width:min(760px,calc(100vw - 100px))}.modal-overlay__panel--dashboard-stage{width:min(920px,calc(100vw - 48px));max-width:min(920px,calc(100vw - 48px))}.dashboard-stage-table{table-layout:fixed;width:100%}.dashboard-stage-table th,.dashboard-stage-table td{overflow:hidden;text-overflow:ellipsis}.dashboard-stage-table th:nth-child(1),.dashboard-stage-table td:nth-child(1){width:18%}.dashboard-stage-table th:nth-child(2),.dashboard-stage-table td:nth-child(2){width:28%}.dashboard-stage-table th:nth-child(3),.dashboard-stage-table td:nth-child(3){width:34%}.dashboard-stage-table th:nth-child(4),.dashboard-stage-table td:nth-child(4){width:20%}.modal-overlay__panel .panel{max-height:calc(100vh - 80px);overflow-y:auto;padding-top:54px}.modal-overlay__close{position:absolute;top:14px;right:14px;z-index:1;width:32px;height:32px;border-radius:50%;border:none;background:#f1f5f9;color:#0f172a;font-size:18px;line-height:1;display:grid;place-items:center;cursor:pointer}.modal-overlay__close:hover{background:#f1f5f9}.success-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;background:#0f172a66;display:flex;align-items:center;justify-content:center;padding:20px}.success-dialog{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:340px;background:#fff;border-radius:16px;padding:28px 28px 24px;text-align:center;box-shadow:0 24px 60px #0f172a47}.success-dialog__icon{width:52px;height:52px;border-radius:50%;background:#dcfce7;display:grid;place-items:center}.success-dialog__message{margin:0;font-size:15px;font-weight:600;color:#0f172a;line-height:1.4}.success-dialog__ok{min-width:96px;padding:8px 20px}.error-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;background:#0f172a66;display:flex;align-items:center;justify-content:center;padding:20px}.error-dialog{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:340px;background:#fff;border-radius:16px;padding:28px 28px 24px;text-align:center;box-shadow:0 24px 60px #0f172a47}.error-dialog__icon{width:52px;height:52px;border-radius:50%;background:#fee2e2;display:grid;place-items:center}.error-dialog__message{margin:0;font-size:15px;font-weight:600;color:#0f172a;line-height:1.4}.error-dialog__ok{min-width:96px;padding:8px 20px}.discount-stepper{display:flex;align-items:center;gap:8px}.discount-stepper__button{flex-shrink:0;width:32px;height:32px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--text);font-size:18px;line-height:1;cursor:pointer;display:grid;place-items:center}.discount-stepper__button:hover:not(:disabled){background:var(--chip);border-color:var(--accent-2)}.discount-stepper__button:disabled{opacity:.4;cursor:not-allowed}.discount-stepper__input{flex:1;min-width:0;text-align:center}.confirm-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;background:#0f172a66;display:flex;align-items:center;justify-content:center;padding:20px}.confirm-dialog{display:flex;flex-direction:column;gap:20px;width:100%;max-width:360px;background:#fff;border-radius:16px;padding:26px 26px 22px;box-shadow:0 24px 60px #0f172a47}.confirm-dialog__message{margin:0;font-size:15px;font-weight:600;color:#0f172a;line-height:1.5;text-align:center}.confirm-dialog__actions{display:flex;justify-content:center;gap:12px}.confirm-dialog__actions .button{min-width:100px}.placeholder{margin-top:14px;min-height:140px;border-radius:16px;border:1px dashed #cbd5e1;background:linear-gradient(180deg,#fbfdff,#f7fafc);display:grid;place-items:center;color:var(--muted);padding:16px;text-align:center}.bar-chart{margin-top:14px;display:grid;gap:14px}.bar-chart__row{display:grid;grid-template-columns:110px 1fr 36px;align-items:center;gap:10px}.bar-chart__label{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-chart__track{height:10px;border-radius:999px;background:#eef1f6;overflow:hidden}.bar-chart__fill{height:100%;border-radius:999px;transition:width .4s ease}.bar-chart__value{font-size:13px;font-weight:700;text-align:right}.bar-chart--vertical{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-top:16px;padding-top:0;height:auto;align-self:start;width:100%}.bar-chart__column{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.bar-chart__track--vertical{height:160px;width:28px;border-radius:8px;background:#eef1f6;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;overflow:hidden}.bar-chart__fill--vertical{width:100%;min-height:4px;border-radius:8px 8px 0 0;transition:height .4s ease}.bar-chart--vertical .bar-chart__label{white-space:normal;text-align:center;line-height:1.25;max-width:100%}.bar-chart--vertical .bar-chart__value{text-align:center}.button,.input,.text-link{font:inherit}.button{border:1px solid #2f3b62;background:#fff;color:#2f3b62;padding:10px 14px;border-radius:12px;cursor:pointer}.button--primary{background:#2f3b62;color:#fff!important;border-color:#2f3b62}.button--ghost{background:#f8fafc;color:#2f3b62;border-color:#2f3b62}.button--minimal{background:#2f3b62;color:#fff!important;border-color:#2f3b62}.button--danger-soft{background:#fff1f2;border-color:#fecdd3;color:#e11d48}.button:disabled{opacity:.6;cursor:not-allowed}.toolbar,.header-actions,.sticky-actions,.row-actions,.mini-stats{display:flex;gap:12px;flex-wrap:wrap}.module-toolbar{margin-top:18px;display:grid;grid-template-columns:minmax(280px,2fr) repeat(3,minmax(160px,1fr));gap:12px}.toolbar{margin:18px 0}.input{width:100%;border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px 12px;color:var(--text)}.input--textarea{min-height:120px;resize:vertical}.input-with-prefix{display:flex;align-items:stretch;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.input-with-prefix__prefix{display:flex;align-items:center;padding:0 10px;background:#f8fafc;border-right:1px solid var(--line);color:var(--muted);font-weight:600;font-size:14px}.input-with-prefix .input{border:none;border-radius:0}.input-with-prefix .input:focus{outline:none}.password-input{position:relative;display:flex;align-items:stretch;width:100%}.password-input__field{width:100%;padding-right:44px}.password-input__toggle{position:absolute;top:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;width:44px;margin:0;padding:0;border:none;border-radius:0 12px 12px 0;background:transparent;color:var(--muted);cursor:pointer}.password-input__toggle:hover:not(:disabled){color:var(--text)}.password-input__toggle:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.password-input__toggle:disabled{cursor:not-allowed;opacity:.5}.field{display:grid;gap:8px}.input--search-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:left;cursor:pointer;font:inherit;color:var(--text)}.input--search-trigger span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.input--search-trigger:disabled{cursor:not-allowed;opacity:.6}.input--search-trigger__icon{flex-shrink:0;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#eef2ff;color:#4f6df5;font-size:11px;font-weight:700}.module-form-stack{display:grid;gap:16px;margin-top:18px}.module-form-section{padding:18px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#fcfdff,#f8fbff)}.module-form-section h3{padding-bottom:10px;border-bottom:1px solid #e6edf7}.module-form-section .form-grid{margin-top:14px}.field span{font-size:13px;color:var(--muted)}.field__required{color:#d92d20!important}.field-note{font-size:12px;color:var(--muted)}.field-note--success{color:#027a48}.field--full{grid-column:1 / -1}.field--constrained{max-width:min(100%,480px)}.field--invalid .input,.field--invalid input,.field--invalid select{border-color:#d92d20!important;background:#fef3f2}.field--has-history .input,.field--has-history input{border-color:#12b76a!important;background:#ecfdf3}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px}.field-row-3{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:14px}.form-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid--4{grid-template-columns:repeat(4,minmax(0,1fr));max-width:min(100%,820px)}.customer-card{display:grid;gap:12px;padding:14px;border:1px solid #dfe7f3;border-radius:18px;background:linear-gradient(180deg,#fbfcff,#f7f9fe)}.customer-card__type{display:grid;gap:10px;justify-items:center;padding:8px 0 12px;border-bottom:1px solid #e7edf7}.customer-card__type-label{font-size:13px;color:var(--muted);font-weight:600;text-align:center}.radio-group{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.radio-group--center{justify-content:center}.radio-option{display:inline-flex;align-items:center;gap:8px;color:var(--text);font-size:14px}.radio-option input{margin:0}.customer-card__body{display:grid;gap:12px;padding:12px;background:#fff;border:1px solid #e5ecf5;border-radius:16px}.quotation-card__heading{display:flex;gap:12px;align-items:center;padding:16px 18px;border-bottom:1px solid #edf2f7}.quotation-card__heading-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#2f3b62;color:#fff;flex:0 0 auto;box-shadow:0 6px 14px #2f3b6240}.quotation-card__heading .quotation-card__title{margin:0;padding:0;border-bottom:none;font-size:16px}.quotation-card__subtitle{color:var(--muted);font-size:12px;margin:2px 0 0}.dismantle-media{display:grid;gap:12px}.dismantle-media__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dismantle-media__button{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border:1px solid #e6edf7;border-radius:12px;background:#f8fafc;color:var(--text);font:inherit;font-weight:600;font-size:13px;cursor:pointer;transition:border-color .14s ease,background .14s ease}.dismantle-media__button svg{color:var(--accent-2)}.dismantle-media__button:hover:not(:disabled){border-color:var(--accent-2);background:#eef4ff}.dismantle-media__button:disabled{opacity:.6;cursor:not-allowed}.dismantle-media__count{margin-left:auto;padding:4px 10px;border-radius:999px;background:#eef2ff;color:#4f6df5;font-size:12px;font-weight:700}.dismantle-media__list{display:flex;gap:12px;flex-wrap:wrap}.dismantle-media__thumb{position:relative;width:112px;height:88px;border-radius:14px;border:1px solid #e4ebf5;background:linear-gradient(180deg,#f8faff,#eef3ff);display:grid;place-items:center;padding:8px;text-align:center;color:#5f6c80;font-size:12px;overflow:visible}.dismantle-media__open{width:100%;height:100%;padding:0;border:none;background:transparent;cursor:zoom-in;border-radius:10px;overflow:hidden}.dismantle-media__image{width:100%;height:100%;object-fit:cover;border-radius:10px;display:block;pointer-events:none}.dismantle-media__legacy{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.dismantle-media__remove{position:absolute;top:-8px;right:-8px;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:2px solid #fff;border-radius:999px;background:#e11d48;color:#fff!important;font-size:18px;font-weight:700;line-height:1;box-shadow:0 2px 10px #0f172a59;cursor:pointer}.dismantle-media__remove:hover{background:#be123c}.dismantle-media__hint{margin:0;color:#8a94a6;font-size:12px}.dismantle-preview{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:grid;place-items:center;padding:24px}.dismantle-preview__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:none;background:#0f172ab8;cursor:zoom-out}.dismantle-preview__panel{position:relative;z-index:1;width:min(92vw,960px);max-height:90vh;display:grid;gap:12px;padding:16px;border-radius:18px;background:#fff;box-shadow:0 24px 60px #0f172a47}.dismantle-preview__image{width:100%;max-height:calc(90vh - 120px);object-fit:contain;border-radius:12px;background:#f8fafc}.dismantle-preview__toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.dismantle-preview__caption{margin:0;color:#334155;font-size:13px;font-weight:600;text-align:left;word-break:break-word;flex:1;min-width:0}.dismantle-preview__close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:2px solid #fff;border-radius:999px;background:#e11d48;color:#fff!important;font-size:22px;font-weight:700;line-height:1;box-shadow:0 2px 12px #0f172a47;cursor:pointer}.dismantle-preview__close:hover{background:#be123c}.dismantle-media__thumb--placeholder{gap:6px;border-style:dashed;border-color:#cbd5e1;background:#fbfdff;color:#8a94a6}.accessories-block{display:grid;gap:12px;padding:0;background:transparent}.accessories-block__header{display:flex;align-items:center;gap:12px}.accessories-block__title{font-size:13px;font-weight:600;color:var(--text)}.accessories-block__add{justify-self:start;width:auto;color:var(--accent-2);border-color:var(--accent-2);padding:6px 12px;font-size:13px}.accessories-block__list{display:grid;gap:8px}.accessories-block__row{display:flex;align-items:center;gap:10px;max-width:min(100%,400px)}.accessories-block__row--wide{max-width:min(100%,560px)}.accessories-block__index{flex-shrink:0;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--chip);color:var(--accent-2);font-size:12px;font-weight:700}.accessories-block__field{flex:1;min-width:0}.accessories-block__remove{flex-shrink:0;display:grid;place-items:center;width:30px;height:30px;border:1px solid #fecdd3;border-radius:50%;background:#fff1f2;color:#e11d48;font-size:16px;line-height:1;cursor:pointer}.accessories-block__remove:disabled{opacity:.4;cursor:not-allowed}.model-picker-trigger{display:flex;align-items:center;justify-content:space-between;text-align:left}.model-picker-trigger__caret{color:var(--muted);flex:0 0 auto;margin-left:8px}.picker-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:24px}.picker-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:#0f172a59;cursor:pointer}.picker-modal__sheet{position:relative;width:min(100%,510px);max-height:min(72vh,620px);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:14px;padding:18px 16px 16px;border-radius:22px;background:#eef5f2;box-shadow:0 24px 48px #0f172a2e;overflow:hidden}.picker-modal__sheet--spare{width:min(96%,920px);max-height:min(88vh,780px);padding:20px 16px 14px;border:1px solid rgba(207,225,220,.9);background:radial-gradient(circle at top left,#fffffff2,#eef5f2f5 34%),linear-gradient(180deg,#eef5f2,#edf4f0);gap:16px;display:flex;flex-direction:column;min-height:0}.picker-modal__sheet--spare>*{flex-shrink:0}.spare-modal-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:12px}.picker-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.picker-modal__eyebrow{color:#6f7d74;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px}.picker-modal__title{font-size:18px;font-weight:700;color:#233146}.picker-modal__count{padding:8px 10px;border-radius:999px;background:#ffffffe6;border:1px solid #dbe6ef;color:#5f6c80;font-size:12px;font-weight:600}.picker-modal__note{margin:8px 2px 0;font-size:12px;color:#5f6c80}.picker-modal__note--spare{margin:8px 2px 12px}.picker-modal__mode-switch{display:flex;gap:4px;padding:4px;border-radius:14px;background:#eef2f7;border:1px solid #cbd5e1}.problem-statement-mode{max-width:420px;margin-bottom:16px}.picker-modal__mode{flex:1;border:1px solid transparent;border-radius:10px;background:transparent;color:#64748b;font-weight:600;padding:10px 12px;cursor:pointer;transition:background .14s ease,color .14s ease,box-shadow .14s ease,border-color .14s ease}.picker-modal__mode:hover:not(.is-active){background:#ffffff8c;color:#334155}.picker-modal__mode.is-active{background:var(--accent-2);color:#fff;border-color:var(--accent-2);box-shadow:0 2px 10px #155eef47;font-weight:700}.picker-modal__search{position:relative;display:block}.picker-modal__search--inline{display:flex;align-items:center;padding:12px 14px;border-radius:14px;border:1px solid #d4e2ef;background:#fff;box-shadow:inset 0 1px #ffffffbf}.picker-modal__search .input{padding:12px 14px;background:#fff;border-color:#d4e2ef;box-shadow:inset 0 1px #ffffffbf}.picker-modal__search--inline .input{padding:0;border:0;box-shadow:none;background:transparent;min-width:0;flex:1}.spare-catalog-search{display:block;margin-top:2px}.spare-catalog-search__input{width:100%;padding:12px 14px;border-radius:14px;background:#fff;border:1px solid #d4e2ef;box-shadow:inset 0 1px #ffffffbf}.spare-catalog-search__input:focus{outline:none;border-color:#b8d0ff;box-shadow:0 0 0 3px #4f6df524}.picker-modal__list{display:grid;gap:8px;min-height:0;overflow:auto;padding-right:4px;align-content:start}.picker-modal__list--spare{gap:10px;padding:2px 6px 2px 2px}.picker-modal__option{width:100%;padding:14px 14px 13px;border:1px solid #d9e6f2;border-radius:16px;background:#fff;text-align:left;color:var(--text);cursor:pointer;box-shadow:0 8px 20px #94a3b814;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease,background .14s ease}.picker-modal__option:hover{border-color:#b8d0ff;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 12px 24px #4f6df51f;transform:translateY(-1px)}.picker-modal__option--spare{display:grid;gap:5px}.picker-modal__option--spare strong{color:#2f3b52;font-size:16px}.picker-modal__option--spare span{color:#8a94a6;font-size:12px;line-height:1.45}.picker-modal__option--spare small{color:#4f6df5;font-size:12px;font-weight:600}.picker-modal__empty{padding:18px 12px;border-radius:14px;background:#fff;color:var(--muted);text-align:center}.manual-spare-panel{flex:1 1 auto;display:grid;align-content:start;gap:16px;min-height:0;overflow:auto;padding-right:4px}.manual-spare-autocomplete{position:relative;z-index:2}.manual-spare-panel__heading{display:grid;gap:4px}.manual-spare-panel__title{color:#233146;font-size:16px;font-weight:700}.manual-spare-panel__subtitle{color:#5f6c80;font-size:12px;line-height:1.45}.manual-spare-suggestions{display:grid;gap:10px;max-height:168px;overflow:auto;padding-right:4px}.manual-spare-dropdown{position:relative;left:auto;right:auto;top:auto;z-index:1;display:grid;gap:10px;max-height:220px;overflow:auto;padding:12px;margin-top:8px;margin-bottom:12px;border:1px solid #b8d0ff;border-radius:18px;background:#fffffffa;box-shadow:0 18px 34px #4f6df52e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.manual-spare-dropdown .picker-modal__empty{background:transparent;padding:8px 6px}.manual-spare-suggestion{cursor:pointer}.manual-spare-grid{align-items:start}.spare-picker-table-wrap{flex:1 1 auto;min-height:0;overflow:auto;border-radius:14px;border:1px solid #d9e6f2;background:#fff}.spare-picker-table{width:100%;border-collapse:collapse;font-size:13px}.spare-picker-table thead th{position:sticky;top:0;background:#f3f7fb;color:#5f6c80;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-align:left;padding:10px 12px;border-bottom:1px solid #d9e6f2;z-index:1}.spare-picker-table tbody td{padding:10px 12px;border-bottom:1px solid #eef2f7;color:var(--text);vertical-align:middle}.spare-picker-table tbody tr:last-child td{border-bottom:0}.spare-picker-table tbody tr.is-selected{background:#f3f8ff}.spare-picker-table tbody tr:hover{background:#f8fbff}.spare-picker-table__check,.spare-picker-table__qty,.spare-picker-table__price{width:1%;white-space:nowrap;text-align:center}.spare-picker-table__check input[type=checkbox]{width:16px;height:16px;cursor:pointer}.spare-picker-table__qty-input{width:64px;padding:6px 8px;text-align:center}.spare-picker-table__selected-count{margin-right:auto;font-size:12px;font-weight:600;color:#5f6c80}.spare-picker-table--edit{table-layout:fixed}.spare-picker-table--edit .spare-picker-table__col-component{width:32%}.spare-picker-table--edit .spare-picker-table__col-item{width:auto}.spare-picker-table--edit .spare-picker-table__col-price{width:112px}.spare-picker-table--edit thead th.spare-picker-table__price{text-align:right}.spare-picker-table--edit tbody td .input{width:100%;box-sizing:border-box}.spare-picker-table--edit tbody td.spare-picker-table__price .input{text-align:right}.spare-picker-table--edit .spare-picker-table__price{width:112px;text-align:right;white-space:nowrap}.picker-modal__footer{display:flex;align-items:center;gap:10px;justify-content:flex-end;padding-top:2px}.picker-modal__cancel{min-width:94px;color:#0f766e}.section-label{font-size:13px;color:var(--muted);font-weight:600}.stack{display:grid;gap:10px}.record-row,.timeline-row,.bom-row{border:1px solid var(--line);border-radius:14px;padding:12px;background:#fbfdff}.timeline-row{display:grid;gap:6px}.record-row{display:flex;align-items:center;flex-wrap:wrap;gap:18px}.record-row>div{white-space:nowrap}.bom-table-group{display:grid;gap:12px}.bom-table-group+.bom-table-group{margin-top:24px}.bom-table-group__title{margin:0;font-size:15px;font-weight:600}.bom-table{margin-top:12px;border:1px solid var(--line);border-radius:16px;padding:8px;background:#fff;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.bom-table__tools,.bom-search-results{display:grid;gap:10px;margin-top:12px}.bom-search-results__item{width:100%;display:grid;gap:4px;padding:12px 14px;border:1px solid #dbe4ff;border-radius:14px;background:#f8faff;text-align:left;cursor:pointer}.bom-search-results__item strong{color:#2f4fd7}.bom-search-results__item span,.bom-search-results__item small{color:var(--muted)}.bom-table__head{display:grid;grid-template-columns:.4fr 1.4fr 1fr .6fr .6fr .7fr .5fr;gap:10px;padding:10px 12px;border-radius:14px;background:#eef3ff;font-size:12px;font-weight:700;color:#4f6df5;letter-spacing:.04em;margin-bottom:10px;text-align:center;min-width:640px}.bom-table__body{display:grid;gap:10px;min-width:640px}.bom-table__row{display:grid;grid-template-columns:.4fr 1.4fr 1fr .6fr .6fr .7fr .5fr;gap:10px;align-items:center;padding:0}.bom-table__action{display:flex;justify-content:center}.bom-table__serial{display:flex;align-items:center;justify-content:center;font-weight:600;color:var(--muted)}.bom-table__footer{padding:12px 0 0;display:flex;justify-content:flex-end;gap:12px}.job-card-bom-table,.job-card-bom-table__viewport{width:100%}.job-card-bom-table__head,.job-card-bom-table__row{grid-template-columns:.4fr 1.4fr 1fr .6fr .6fr .7fr .5fr;width:100%;min-width:0;margin:0}.job-card-bom-table--rewinding .job-card-bom-table__head,.job-card-bom-table--rewinding .job-card-bom-table__row{grid-template-columns:.35fr 1.15fr .95fr .75fr .5fr .55fr .6fr .45fr}.job-card-bom-table--labour .job-card-bom-table__head,.job-card-bom-table--labour .job-card-bom-table__row{grid-template-columns:.4fr 1.8fr .6fr .6fr .7fr .5fr}.bom-table-group__hint{margin:0;font-size:13px}.job-card-bom-table .bom-table__head{margin-bottom:10px}.job-card-bom-table .bom-table__body{min-width:0;width:100%}.job-card-bom-table__empty{margin:0;padding:16px 12px;text-align:center}.bom-table__summary{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:12px 12px 0;border-top:1px solid var(--line);margin-top:12px;font-size:14px}.bom-table__summary strong{font-size:15px;color:#2f4fd7}@media (max-width: 720px){.job-card-bom-table__viewport{min-width:680px}.job-card-bom-table--rewinding .job-card-bom-table__viewport{min-width:860px}}.table-wrap{overflow:auto;margin-top:14px;min-width:0;scrollbar-width:thin;scrollbar-color:#c3cde0 transparent}.table-wrap::-webkit-scrollbar{height:8px}.table-wrap::-webkit-scrollbar-track{background:transparent}.table-wrap::-webkit-scrollbar-thumb{background:#c3cde0;border-radius:999px}.table-wrap::-webkit-scrollbar-thumb:hover{background:#a8b6cf}.table-wrap--menu-open{overflow:visible}.table{border-collapse:collapse}.table th,.table td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.table th.table__actions-head,.table th.table__technician-head,.table td.table__technician-cell,.table th.table__status-head,.table td.table__status-cell{text-align:center}.job-cards-table{table-layout:fixed;min-width:1120px;width:100%}.job-cards-register{margin-top:4px;overflow:hidden}.job-cards-register .table-wrap{border:0;border-radius:0}.job-cards-table thead th{padding:16px 18px;background:#f8fbff;border-bottom:1px solid #e7edf7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"system-ui",Segoe UI,sans-serif;font-size:14px;font-weight:400;line-height:21px;color:#222;text-transform:uppercase;text-align:center}.job-cards-table tbody td{border-bottom:1px solid #e7edf7;text-align:center}.job-cards-table tbody tr:last-child td{border-bottom:0}.job-cards-table th,.job-cards-table td{padding:14px 16px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.job-cards-table th:nth-child(1),.job-cards-table td:nth-child(1){width:9%}.job-cards-table th:nth-child(2),.job-cards-table td:nth-child(2){width:10%}.job-cards-table th:nth-child(3),.job-cards-table td:nth-child(3){width:14%}.job-cards-table th:nth-child(4),.job-cards-table td:nth-child(4){width:12%}.job-cards-table th:nth-child(5),.job-cards-table td:nth-child(5){width:16%}.job-cards-table th:nth-child(6),.job-cards-table td:nth-child(6){width:11%}.job-cards-table th:nth-child(7),.job-cards-table td:nth-child(7){width:10%}.job-cards-table th:nth-child(8),.job-cards-table td:nth-child(8),.job-cards-table th.table__actions-head,.job-cards-table td.table__actions-cell{width:260px;min-width:260px;overflow:visible;white-space:nowrap}.job-cards-table td.table__actions-cell .module-register__actions,.job-cards-table td:nth-child(8) .module-register__actions{flex-wrap:nowrap;width:max-content;max-width:none;justify-content:center;margin:0 auto;gap:6px}.job-cards-table td.table__actions-cell .module-action-button,.job-cards-table td:nth-child(8) .module-action-button{flex-shrink:0;min-width:64px;padding:0 12px}.service-tracking-table{table-layout:fixed;width:100%}.service-tracking-table th,.service-tracking-table td{padding:14px 16px;overflow:hidden;text-overflow:ellipsis}.service-tracking-table th:nth-child(1),.service-tracking-table td:nth-child(1){width:14%}.service-tracking-table th:nth-child(2),.service-tracking-table td:nth-child(2){width:20%}.service-tracking-table th:nth-child(3),.service-tracking-table td:nth-child(3){width:26%}.service-tracking-table th:nth-child(4),.service-tracking-table td:nth-child(4){width:16%;overflow:visible;text-align:center}.service-tracking-table th:nth-child(5),.service-tracking-table td:nth-child(5){width:24%;overflow:visible;text-align:center}.service-tracking-table td:nth-child(5) select{display:block;width:auto;max-width:200px;margin:0 auto}.service-tracking-table td:nth-child(5) .muted{display:block;text-align:center}@media (max-width: 900px){.service-tracking-table thead{display:none}.service-tracking-table,.service-tracking-table tbody,.service-tracking-table tr,.service-tracking-table td{display:block;width:100%!important}.service-tracking-table tr{margin-bottom:12px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fff}.service-tracking-table td{padding:6px 0;border-bottom:none;overflow:visible;white-space:normal}.service-tracking-table td:before{content:attr(data-label);display:block;margin-bottom:4px;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}}.table td .module-register__actions{justify-content:center}.text-link{border:0;background:transparent;color:var(--accent-2);cursor:pointer;padding:0;font-weight:600!important}.text-link--view{color:#155eef!important}.text-link--edit{color:#7c3aed!important}.text-link--close{color:#16a34a!important}.text-link--take{color:#0f766e!important}.text-link--pdf{color:#f97316!important}.text-link--danger{color:#b42318!important}.status-chip--draft{background:#eef1f5;color:#64748b}.status-chip--open{background:#fef3e2;color:#f59e0b}.status-chip--in_progress{background:#f3e8ff;color:#7c3aed}.status-chip--taken{background:#e6f5f3;color:#0f766e}.status-chip--closed{background:#e5e8eb;color:#334155}.status-chip--pending{background:#fef3c7;color:#b45309}.status-chip--sent{background:#e0f2fe;color:#0369a1}.status-chip--approved{background:#dcfce7;color:#15803d}.status-chip--rejected{background:#fee2e2;color:#b91c1c}.status-chip--issued{background:#ede9fe;color:#6d28d9}.status-chip--reconciled{background:#cffafe;color:#0e7490}.status-chip--returned{background:#fee2e2;color:#b91c1c}.status-chip--dispatched{background:#fef3c7;color:#b45309}.status-chip--delivered{background:#dcfce7;color:#15803d}.status-chip--submitted{background:#e0f2fe;color:#0369a1}.status-chip--reviewed,.status-chip--paid{background:#dcfce7;color:#15803d}.mini-stats{margin-top:12px}.mini-stats__item{--mini-stat-color: #155eef;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;flex:1 1 150px;border:1px solid var(--line);background:#fff;border-radius:14px;padding:12px 14px 12px 16px;overflow:hidden;transition:transform .14s ease,box-shadow .14s ease}.mini-stats__item--clickable{cursor:pointer;font:inherit;color:inherit;width:100%}.mini-stats__item:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--mini-stat-color)}.mini-stats__item:hover{transform:translateY(-1px);box-shadow:0 10px 20px #10182814}.mini-stats__item--clickable:focus-visible{outline:2px solid color-mix(in srgb,var(--mini-stat-color) 55%,white);outline-offset:2px}.mini-stats__icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9px;background:color-mix(in srgb,var(--mini-stat-color) 14%,white);color:var(--mini-stat-color)!important}.mini-stats__icon svg{color:var(--mini-stat-color)!important}.mini-stats__label{color:var(--muted);font-size:12px;text-align:center}.mini-stats__value{margin-top:2px;font-size:20px;font-weight:700;text-align:center}.job-cards-toolbar{align-items:stretch}.job-cards-search{flex:0 1 360px;max-width:min(100%,360px);min-width:0;position:relative;display:flex;align-items:center}.job-cards-search svg{position:absolute;left:14px;color:var(--muted);pointer-events:none}.job-cards-search .input{padding-left:38px}.products-list-search{display:flex;max-width:100%;width:100%}.products-table{table-layout:fixed;width:100%}.products-table th,.products-table td{overflow:hidden;text-overflow:ellipsis;white-space:normal;vertical-align:middle}.products-table th:nth-child(1),.products-table td:nth-child(1){width:8%}.products-table th:nth-child(2),.products-table td:nth-child(2){width:16%}.products-table th:nth-child(3),.products-table td:nth-child(3){width:40%}.products-table th:nth-child(4),.products-table td:nth-child(4){width:14%}.products-table th:nth-child(5),.products-table td:nth-child(5){width:10%}.products-table th:nth-child(6),.products-table td:nth-child(6){width:12%;overflow:visible}.products-table td.table__actions-cell .row-actions{justify-content:center;flex-wrap:nowrap}.job-cards-status-filter{width:auto;min-width:0;flex:0 1 180px}.error-box{margin-top:12px;padding:12px 14px;border-radius:14px;border:1px solid #fecaca;background:#fef2f2;color:#991b1b}.spare-upload-card__back{display:inline-flex;align-items:center;gap:6px;margin-bottom:14px;padding:8px 14px;font-size:13px}.spare-upload-card__heading{display:flex;align-items:flex-start;gap:14px;margin-bottom:22px}.spare-upload-card__heading-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#14b8a6,#0d9488);flex:0 0 auto;box-shadow:0 8px 18px #0d948847}.spare-upload-card__heading h2{margin:0 0 4px}.spare-upload-grid__main{display:grid;gap:18px;max-width:460px;margin:0 auto}.custom-fields-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;align-items:end;padding:18px;margin-bottom:20px;border-radius:16px;border:1px solid var(--line);background:#f9fbfd}.custom-fields-form__options{grid-column:1 / -1}.custom-fields-form__mandatory{display:flex;align-items:center;gap:8px;padding-bottom:10px}.custom-fields-form__mandatory input{width:16px;height:16px}.custom-fields-form__actions{display:flex;gap:10px}.spare-dropzone{display:block;cursor:pointer;border:2px dashed #cfd9e6;border-radius:16px;padding:28px 20px;text-align:center;background:#f9fbfd;transition:border-color .14s ease,background .14s ease}.spare-dropzone:hover{border-color:#99c2ff;background:#f4f9ff}.spare-dropzone--active{border-color:#4f6df5;background:#eef3ff}.spare-dropzone--filled{cursor:default;border-style:solid;border-color:#bfe6df;background:#f0fdfa}.spare-dropzone__empty{display:grid;justify-items:center;gap:6px;color:#64748b}.spare-dropzone__empty strong{color:#233146;font-size:15px}.spare-dropzone__empty span{font-size:13px}.spare-dropzone__file{display:flex;align-items:center;gap:12px;text-align:left}.spare-dropzone__file-info{display:grid;gap:2px;flex:1 1 auto;min-width:0}.spare-dropzone__file-info strong{color:#233146;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spare-dropzone__file-info span{color:#64748b;font-size:12px}.spare-dropzone__clear{border:0;background:#fff;border-radius:999px;width:28px;height:28px;display:grid;place-items:center;color:#64748b;cursor:pointer;box-shadow:0 2px 6px #0f172a1f;flex:0 0 auto}.spare-dropzone__clear:hover{color:#b91c1c}.spare-upload-card__actions{display:flex;justify-content:center;gap:10px}.spare-upload-card__actions .button{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.spare-upload-card__result{padding:12px 14px;border-radius:14px;border:1px solid #bbf7d0;background:#f0fdf4;color:#166534;font-size:14px}.spare-uploads-table,.custom-fields-table{table-layout:fixed;width:100%}.spare-uploads-table td,.spare-uploads-table th,.custom-fields-table td,.custom-fields-table th{overflow:hidden;text-overflow:ellipsis}.table th.spare-uploads-table__actions-head,.table td.spare-uploads-table__actions-cell{text-align:center}.spare-uploads-table__actions-cell .module-register__actions{display:inline-flex;width:auto}@media (max-width: 900px){.spare-uploads-table thead,.custom-fields-table thead{display:none}.spare-uploads-table,.spare-uploads-table tbody,.spare-uploads-table tr,.spare-uploads-table td,.custom-fields-table,.custom-fields-table tbody,.custom-fields-table tr,.custom-fields-table td{display:block;width:100%!important}.spare-uploads-table tr,.custom-fields-table tr{margin-bottom:12px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fff}.spare-uploads-table td,.custom-fields-table td{padding:8px 0;border-bottom:none;overflow:visible;white-space:normal;text-overflow:unset}.spare-uploads-table td:before,.custom-fields-table td:before{content:attr(data-label);display:block;margin-bottom:4px;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.spare-uploads-table__actions-cell .module-register__actions,.custom-fields-table .module-register__actions{justify-content:flex-start}}.success-box{margin-bottom:14px;padding:12px 14px;border-radius:14px;border:1px solid #bbf7d0;background:#f0fdf4;color:#166534;font-weight:600}.sticky-actions{position:sticky;bottom:0;margin-top:20px;padding-top:16px;background:linear-gradient(180deg,#fffc,#fff);border-top:1px solid var(--line)}.sticky-actions--end{justify-content:flex-end}.status-chip{padding:8px 12px;border-radius:999px;font-weight:600}.jobcard-layout{margin-top:20px}.jobcard-form{display:grid;gap:16px}.quotation-screen{margin-top:0}.quotation-screen__header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin-bottom:8px;min-width:0}.quotation-screen__spacer{min-width:140px}.quotation-screen__title{margin:0;text-align:center;font-size:26px}.quotation-approval-date{display:flex;flex-direction:column;align-items:flex-end;gap:4px;min-width:140px;padding:10px 14px;border-radius:14px;border:1px solid #d9e6f2;background:linear-gradient(180deg,#fff,#f5f9ff)}.quotation-approval-date__label{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#5f6c80}.quotation-approval-date__value{font-size:15px;color:#23406b}.quotation-card{padding:0;overflow:hidden}.quotation-card__title{margin:0;padding:16px 18px;border-bottom:1px solid #edf2f7;font-size:18px;color:#455468}.quotation-card .form-grid{padding:16px 18px 18px}.quotation-bom-placeholder{margin:16px 18px 18px;padding:16px 14px;border:1px solid #e3eaf5;border-radius:14px;background:#f6f9ff;color:#7b8794}.jmr-table{padding:0 0 8px;border:0;background:transparent}.jmr-table__head{grid-template-columns:1fr 1.4fr .9fr .9fr;margin:16px 18px 10px}.jmr-table__row{grid-template-columns:1fr 1.4fr .9fr .9fr;margin:0 18px}.umr-table{padding:0 0 8px;border:0;background:transparent}.umr-table__head{grid-template-columns:1fr 1.3fr .9fr .9fr 1fr .9fr .9fr 1fr .9fr;margin:16px 18px 10px}.invoice-table{padding:0 0 8px;border:0;background:transparent}.invoice-table__head{grid-template-columns:1.4fr .8fr 1fr 1fr .7fr;margin:16px 18px 10px}.invoice-table__row{grid-template-columns:1.4fr .8fr 1fr 1fr .7fr;margin:0 18px}.quotation-bom-table{padding:8px;border:1px solid var(--line);border-radius:16px;background:#fff;margin:12px 18px 18px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.quotation-bom-table__head{grid-template-columns:.5fr 1.4fr 1fr .7fr .7fr .8fr;margin:0 0 10px;text-align:center;min-width:560px}.quotation-bom-table__row{grid-template-columns:.5fr 1.4fr 1fr .7fr .7fr .8fr;margin:0;text-align:center}.quotation-bom-table .bom-table__body{min-width:560px}.service-report-spare-bom{padding:8px;border:1px solid var(--line);border-radius:16px;background:#fff;margin:12px 18px 18px;width:auto;max-width:none;overflow-x:auto}.service-report-spare-bom__head,.service-report-spare-bom__row{grid-template-columns:1.4fr 1.6fr .7fr .7fr .7fr;min-width:0;width:100%;margin:0;text-align:left}.service-report-spare-bom .bom-table__body{min-width:0;width:100%}.service-report-spare-bom__row{padding:10px 12px;border-radius:12px;background:#fbfdff}.service-report-spare-table-wrap{margin:12px 18px 18px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fbfdff;width:auto}.service-report-spare-table{margin-top:0;width:100%!important;table-layout:fixed}.service-report-spare-table th{background:#eef3ff;color:#4f6df5;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.service-report-spare-table th:nth-child(1),.service-report-spare-table td:nth-child(1){width:26%}.service-report-spare-table th:nth-child(2),.service-report-spare-table td:nth-child(2){width:34%}.service-report-spare-table th:nth-child(3),.service-report-spare-table td:nth-child(3),.service-report-spare-table th:nth-child(4),.service-report-spare-table td:nth-child(4),.service-report-spare-table th:nth-child(5),.service-report-spare-table td:nth-child(5){width:13.333%}.service-report-spare-table td{white-space:normal;word-break:break-word;color:var(--text)}.service-report-spare-table__empty{text-align:center;color:var(--muted);padding:18px 12px}.umr-table__row{grid-template-columns:1fr 1.3fr .9fr .9fr 1fr .9fr .9fr 1fr .9fr;margin:0 18px}.technician-tracking__refresh{margin-top:10px;display:flex;justify-content:flex-end}.form-section{border:1px solid var(--line);border-radius:18px;padding:18px;background:#fff}.form-section--compact{width:fit-content;max-width:100%}.form-section--accordion{padding:0;overflow:hidden}.form-section__toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border:0;background:#fff;cursor:pointer}.form-section__toggle h3{font-size:15px;color:#4b5565;text-align:left}.form-section__icon{color:#7b8794;font-size:14px;line-height:1}.form-section__body{padding:0 18px 18px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a52;display:grid;place-items:center;padding:24px;z-index:50}.modal-card{width:min(100%,720px);max-height:min(86vh,820px);overflow:auto;border-radius:20px;background:var(--panel);border:1px solid var(--line);box-shadow:0 24px 60px #0f172a33}.modal-card--spare{padding:16px}.modal-card--spare .modal-card__header,.modal-card--spare .modal-card__footer{padding:4px 4px 12px}.modal-card--spare .modal-card__body{padding:0 4px}.modal-card__header{position:relative;display:flex;align-items:flex-start;gap:14px;padding:26px 56px 20px 28px;border-bottom:1px solid var(--line)}.modal-card__icon{flex-shrink:0;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;font-size:18px;font-weight:700}.modal-card__icon svg{display:block}.modal-card__icon--signup{background:linear-gradient(135deg,#0d9488,#2563eb);box-shadow:0 8px 20px #2563eb38}.modal-card__header h3{margin:0;font-size:20px;font-weight:700;color:var(--text)}.modal-card__header .panel__subtitle{margin:4px 0 0}.modal-card__close{position:absolute;top:18px;right:18px;width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:#f8fafc;color:var(--muted);display:grid;place-items:center;font-size:15px;line-height:1;cursor:pointer}.modal-card__close:hover{background:#eef2f7;color:var(--text)}.modal-card__body{padding:22px 28px 6px}.modal-card__footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 28px 24px;margin-top:4px;border-top:1px solid var(--line)}.modal-card .bom-search-results__item{background:#fff;border-color:#e5edf8}.module-page{gap:18px}.module-hero,.module-search-toolbar,.module-register{padding:18px 20px}.module-hero{position:relative;overflow:hidden;padding:14px 20px;background:linear-gradient(135deg,#fffefb,#fff 60%,#f4f7ff)}.module-hero:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#155eef,#7c3aed,#fd2175)}.module-hero__topline{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.module-hero__body{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px}.module-hero__heading{display:flex;align-items:center;gap:14px;min-width:0;flex:1 1 240px}.module-hero__content{min-width:0;flex:1 1 240px}.module-hero__content p{overflow-wrap:break-word}.module-hero__icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:14px;background:#2f3b62;color:#fff!important;box-shadow:0 10px 20px #2f3b624d}.module-hero__icon svg{color:#fff!important}.module-hero__content h2{margin:0;font-size:22px}.module-hero__meta{margin-top:6px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;min-width:0}.module-hero__badge{display:inline-flex;align-items:center;padding:7px 14px;border-radius:999px;background:linear-gradient(135deg,#eef2ff,#f3e8ff);color:#5b21b6;font-size:12px;font-weight:700}.module-hero__meta .muted{margin:0;white-space:normal;overflow-wrap:anywhere}.module-hero__actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.module-hero__create,.module-hero__download{white-space:nowrap;padding-inline:18px}.module-search-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.module-search-toolbar__search{position:relative;display:block;flex:2 1 280px;min-width:0}.module-search-toolbar__search .input{padding-left:42px;border-radius:14px;height:46px}.module-search-toolbar__search-icon{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.module-search-toolbar__filters{display:flex;flex-wrap:wrap;gap:12px;flex:3 1 480px}.module-search-toolbar__filter{flex:1 1 180px;display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid #e6edf7;border-radius:14px;background:#f8fafc;transition:border-color .14s ease,background .14s ease}.module-search-toolbar__filter:focus-within{border-color:var(--accent-2);background:#fff}.module-search-toolbar__filter-icon{flex-shrink:0;color:var(--accent-2)}.module-search-toolbar__filter-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.module-search-toolbar__filter-label{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#8290a4}.module-search-toolbar__filter-select{border:0;padding:0;background:transparent;font-size:14px;color:#1f2937;width:100%}.module-search-toolbar__filter-select:focus{outline:none}.module-register__header{margin-bottom:14px}.module-register__table{border:1px solid #e7edf7;border-radius:22px;overflow:visible;background:linear-gradient(180deg,#fff,#fbfdff)}.module-register__head,.module-register__row{display:grid;grid-template-columns:.8fr .9fr 1.5fr .9fr 1.4fr;gap:16px;align-items:center}.module-register__head{padding:16px 18px;background:#f8fbff;border-bottom:1px solid #e7edf7;color:#8a94a6;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.module-register__head-cell{text-align:center;display:flex;align-items:center;justify-content:center}.module-register__head-cell--record,.module-register__head-cell--details{justify-content:center;text-align:center}.module-register__head-cell--actions{justify-content:center}.module-register__head-cell:nth-child(2),.module-register__head-cell:nth-child(4),.module-register__head-cell:nth-child(5){width:100%}.module-register__body{display:grid}.module-register__row{--activity-color: #155eef;position:relative;padding:18px 18px 18px 22px;border-bottom:1px solid #edf2f7;transition:background .14s ease}.module-register__row:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--activity-color)}.module-register__row:hover{background:#fafbff}.module-register__row:last-child{border-bottom:0}.module-register__cell{min-width:0;color:#475467;font-size:14px;display:flex;align-items:center;justify-content:center;text-align:center}.module-register__cell--record,.module-register__cell--details{display:flex;flex-direction:column;justify-content:center;text-align:center;align-items:center}.module-register__row>.module-register__cell:nth-child(2),.module-register__row>.module-register__cell:nth-child(4),.module-register__row>.module-register__cell:nth-child(5){width:100%}.module-register__cell--record{flex-direction:row;align-items:center;gap:12px}.module-register__avatar{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:color-mix(in srgb,var(--activity-color) 14%,white);color:var(--activity-color)!important;font-size:12px;font-weight:700;text-transform:uppercase}.module-register__cell--record strong{display:block;color:#2f4fd7;font-size:16px;line-height:1.1}.module-register__cell--record span{display:block;margin-top:4px;color:#7b8794;font-size:13px}.module-register__cell--details{display:grid;gap:6px}.module-register__cell--details span{display:block;color:#667085;font-size:13px;line-height:1.45}.module-register__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;width:100%}.module-action-menu{position:relative}.module-action-button{display:inline-flex;align-items:center;justify-content:center;min-width:72px;height:36px;padding:0 14px;border-radius:999px;border:1px solid #dfe7f2;background:linear-gradient(180deg,#fff,#f8fbff);color:#344054;font:inherit;font-size:13px;font-weight:600;text-align:center;text-decoration:none;cursor:pointer;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease,background .14s ease}.module-action-button:hover{border-color:#bfd2ff;box-shadow:0 10px 18px #4f6df51a;transform:translateY(-1px)}.module-action-button--subtle{color:#667085}.module-action-button--danger{color:#b42318;border-color:#fecdd3}.module-action-button--danger:hover{border-color:#fda4af;background:#fff1f2}.module-action-menu__dropdown{position:absolute;top:calc(100% + 10px);right:0;min-width:180px;padding:8px;border-radius:18px;border:1px solid #e6edf7;background:#fff;box-shadow:0 20px 36px #0f172a24;z-index:20;display:grid;gap:4px}.module-action-menu__item{border:0;background:transparent;text-align:left;padding:12px 14px;border-radius:12px;color:#344054;font:inherit;font-size:14px;cursor:pointer}.module-action-menu__item:hover{background:#f8fbff}.module-action-menu__item--danger{color:#b42318}.module-register__footer{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px;border-top:1px solid #edf2f7;color:#7b8794;font-size:13px}.module-pagination{display:flex;gap:8px;align-items:center}.module-pagination__button{min-width:34px;height:34px;border:1px solid #dfe7f2;border-radius:12px;background:#fff;color:#667085}.module-pagination__button--active{background:var(--accent-2);color:#fff!important;border-color:var(--accent-2)}.dashboard-page{gap:20px}.dashboard-page .two-col>.card.panel{height:auto;align-self:start}.dashboard-page .bar-chart{margin-top:12px}.dashboard-page .bar-chart--vertical{margin-top:12px;min-height:0}.dashboard-tracking{margin-top:12px;margin-bottom:12px}.dashboard-tracking h2{margin-bottom:14px}.dashboard-hero{background:radial-gradient(circle at top right,rgba(215,230,255,.8),transparent 28%),linear-gradient(180deg,#fffefb,#fff)}.dashboard-stats{display:flex;flex-wrap:wrap;justify-content:center}.dashboard-stats .stat{background:linear-gradient(180deg,#fff,#f9fbff);flex:1 1 calc(25% - 12px);max-width:calc(25% - 12px)}@media (max-width: 900px){.dashboard-stats .stat{flex:1 1 calc(50% - 8px);max-width:calc(50% - 8px)}}@media (max-width: 560px){.dashboard-stats .stat{flex:1 1 100%;max-width:100%}}.dashboard-register .module-register__cell--record strong{font-size:28px}.activity-list,.branch-list{display:grid;gap:10px;margin-top:14px}.activity-item{--activity-color: #155eef;position:relative;display:flex;align-items:center;gap:12px;padding:12px 12px 12px 16px;border:1px solid var(--line);border-radius:14px;background:#fbfdff;overflow:hidden;transition:transform .14s ease,box-shadow .14s ease}.activity-item:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--activity-color)}.activity-item:hover{transform:translateY(-1px);box-shadow:0 10px 20px #10182814}.activity-item__icon{flex:none;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--activity-color) 14%,white);color:var(--activity-color)!important;font-size:12px;font-weight:700;text-transform:uppercase}.activity-item__body{flex:1;min-width:0;display:grid;gap:2px}.activity-item__body strong{font-size:14px;color:var(--text)}.activity-item__body span{font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.branch-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fbfdff}.branch-item__body{display:grid;gap:2px}.branch-item__body strong{font-size:14px;color:var(--text)}.branch-item__body span{font-size:12px;color:var(--muted)}.branch-item__count{flex:none;display:grid;justify-items:center;min-width:64px;padding:6px 12px;border-radius:12px;background:var(--chip)}.branch-item__count-value{font-size:18px;font-weight:700;color:var(--accent);line-height:1.1}.branch-item__count-label{font-size:10px;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.04em}@media (max-width: 1400px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 1100px){.shell,.cards,.two-col,.form-grid,.form-grid--3,.form-grid--4,.field-row-3,.module-toolbar{grid-template-columns:1fr}.module-search-toolbar{flex-direction:column;align-items:stretch}.module-search-toolbar__search{flex-basis:auto}.module-search-toolbar__filters{flex-basis:auto;width:100%}.shell{height:auto;overflow:visible}.main{height:auto}.content{overflow-y:visible}.module-hero__body,.module-register__footer{flex-direction:column;align-items:stretch}.bom-table__footer{flex-direction:column}.bom-table__footer .button{width:100%}.modal-card__header h3{font-size:24px}.sidebar{position:fixed;top:0;left:0;bottom:0;width:280px;max-width:85vw;z-index:1200;transform:translate(-100%);transition:transform .25s ease;box-shadow:12px 0 32px #0f172a47;border-right:none}.sidebar--open{transform:translate(0)}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1190;background:#0f172a80}.sidebar__close,.hamburger-button{display:inline-flex!important}}@media (max-width: 900px){.content{padding:20px}.header{padding:18px 20px}.header__title{font-size:21px}.sidebar{padding:14px}.brand{margin-bottom:12px}.brand__logo{height:52px}.module-register__head{display:none}.module-register__row{grid-template-columns:1fr;gap:10px}.module-register__actions{justify-content:flex-start}.module-register__cell[data-label]{flex-direction:row;justify-content:flex-start;align-items:center;text-align:left;gap:8px}.module-register__cell[data-label]:before{content:attr(data-label);flex-shrink:0;min-width:100px;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.module-register__cell--details{grid-template-columns:1fr;justify-items:start;align-items:flex-start;text-align:left}}@media (max-width: 560px){.content{padding:14px}.page{gap:14px}.header{flex-direction:column;align-items:stretch;gap:10px;padding:16px}.header__title{font-size:19px}.header__user{justify-content:space-between}.panel,.card.panel{padding:16px}.panel__header{flex-direction:column;align-items:stretch}.panel__header h2,.panel__header--wrap h2{flex:0 0 auto;white-space:normal}.panel__header>.button{width:auto;align-self:flex-start}.status-period-filter{margin-left:0;max-width:none;width:100%}.form-actions{flex-direction:column-reverse}.form-actions .button{width:100%}.row-actions{flex-wrap:wrap}.modal-backdrop{padding:0;align-items:stretch;place-items:stretch}.modal-card{width:100%;max-width:100%;max-height:none;min-height:100dvh;border-radius:0}.modal-card__header{padding:20px 48px 16px 16px}.modal-card__icon{width:44px;height:44px;font-size:18px}.modal-card__body{padding:16px 16px 4px}.modal-card__footer{padding:14px 16px 18px;flex-direction:column-reverse}.modal-card__footer .button{width:100%;min-height:48px}.modal-card .input,.modal-card select.input{min-height:44px;padding:12px 14px;font-size:16px!important}.nav-tile{padding:18px 16px}.nav-tile__icon{width:46px;height:46px;font-size:20px}.module-hero__actions{width:100%;flex-direction:column}.module-hero__create,.module-hero__download{width:100%}.stat__value{font-size:24px}}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:linear-gradient(180deg,#eef4ff 0%,var(--bg) 24%,var(--bg) 100%)}.login-card{width:100%;max-width:380px;padding:32px}.login-card__brand{flex-direction:column;align-items:center;gap:10px;margin-bottom:24px;text-align:center}.login-card__brand .brand__logo{height:110px}.login-card__error{color:#b42318;background:#fef3f2;border:1px solid #fecdca;border-radius:8px;padding:10px 12px;font-size:13px}.login-card .button--primary{width:100%;margin-top:4px}.login-card__secondary-action{width:100%;margin-top:10px}.login-card__secondary-actions{display:flex;flex-direction:column;gap:8px;margin-top:4px}.login-card__signup,.login-card__demo{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%}.demo-mode-banner{flex-shrink:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;padding:10px 24px;background:linear-gradient(90deg,#eff6ff,#f0fdf4);border-bottom:1px solid #bfdbfe;color:#1e3a5f;font-size:13px}.demo-mode-banner__exit{flex-shrink:0;font-size:13px}.demo-view-shield{flex:1;min-height:0;display:flex;flex-direction:column;overflow:auto}.shell--demo .demo-view-shield input,.shell--demo .demo-view-shield textarea,.shell--demo .demo-view-shield select{cursor:default;background:#f8fafc!important}.shell--demo .demo-view-shield button:disabled,.shell--demo .demo-view-shield .button:disabled{opacity:.5;cursor:not-allowed}.login-card__switch{margin:16px 0 0;text-align:center;color:var(--muted);font-size:13px}.login-card__switch a{color:var(--accent-2);font-weight:600;text-decoration:none}.login-card__switch a:hover{text-decoration:underline}.signup-modal{z-index:1300}.signup-modal__card{width:min(100%,680px);max-height:min(92vh,880px)}.signup-modal__form{margin-top:0}.signup-modal__form .module-form-section{margin:0}.signup-modal__form .module-form-section h3{margin:0;font-size:15px;font-weight:700;color:var(--text)}.signup-modal__address{min-height:88px}.signup-modal__footer{margin-top:8px;padding-top:18px}.signup-modal__location-grid{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}.signup-modal__location-grid .field{min-width:0}.signup-modal__pincode-note{margin:-4px 0 0;grid-column:1 / -1}@media (max-width: 640px){.signup-modal__card .form-grid,.signup-modal__location-grid{grid-template-columns:1fr}}.subscription-blocked-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:linear-gradient(180deg,#fef2f2 0%,var(--bg) 28%,var(--bg) 100%)}.subscription-blocked-card{width:100%;max-width:440px;padding:36px 32px 28px;background:#fff;border-radius:20px;box-shadow:var(--shadow);text-align:center}.subscription-blocked-card__brand{display:flex;justify-content:center;margin-bottom:20px}.subscription-blocked-card__brand .brand__logo{height:88px}.subscription-blocked-card__icon{margin:0 auto 16px}.subscription-blocked-card__title{margin:0 0 12px;font-size:24px;font-weight:800;letter-spacing:-.02em;color:#991b1b}.subscription-blocked-card__message{margin:0 0 10px;font-size:15px;line-height:1.55;color:var(--text)}.subscription-blocked-card__hint{margin:0 0 22px;font-size:13px;line-height:1.45;color:var(--muted)}.subscription-blocked-card__signout{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:160px}.header__user{display:flex;align-items:center;gap:10px}.header__user-avatar{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#2f3b62;color:#fff!important;font-size:13px;font-weight:700;text-transform:uppercase}.header__user-name{font-size:14px;font-weight:600;color:var(--text)}.header__signout{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:#fff;color:#b42318!important;font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:border-color .14s ease,background .14s ease}.header__signout svg{color:#b42318!important}.header__signout:hover{background:#fef3f2;border-color:#fecdca}.roles-layout{display:grid;grid-template-columns:300px 1fr;gap:20px;align-items:start;min-width:0}.roles-layout>*{min-width:0}.roles-list-panel{position:sticky;top:20px}@media (max-width: 1100px){.roles-layout{grid-template-columns:1fr}.roles-list-panel{position:static}}.roles-list__new{width:100%;margin-top:14px}.role-list{display:grid;gap:8px;margin-top:14px}.role-list__row{display:flex;align-items:stretch;gap:8px}.role-list__item{flex:1;display:grid;gap:4px;text-align:left;border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:#fff;cursor:pointer;font:inherit}.role-list__delete{flex:none;width:38px;border:1px solid var(--line);border-radius:14px;background:#fff;color:#b42318;display:grid;place-items:center;cursor:pointer}.role-list__delete:hover{background:#fef2f2;border-color:#fecaca}.role-list__delete:disabled{opacity:.5;cursor:not-allowed}.role-list__item:hover{border-color:#bfd2ff}.role-list__item.is-active{border-color:var(--accent-2);background:var(--chip)}.role-list__name{font-weight:700;font-size:14px;color:var(--text)}.role-list__meta{font-size:12px;color:var(--muted)}.permission-groups{display:grid;gap:24px;margin-top:4px}.permission-group__title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding-bottom:10px;border-bottom:2px solid var(--line)}.permission-group__rows{display:grid;gap:10px;margin-top:12px}.permission-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border-radius:14px;background:#fff;border:1px solid var(--line);flex-wrap:wrap;transition:border-color .14s ease,box-shadow .14s ease}.permission-row:hover{border-color:#cbd5e1;box-shadow:0 4px 14px #1018280f}.permission-row__label{font-size:13px;font-weight:600;color:var(--text)}.permission-row__pills{display:flex;gap:8px;flex-wrap:wrap}.permission-pill{border:1px solid transparent;background:#f1f5f9;border-radius:999px;padding:6px 14px;font-size:12px;font-weight:600;color:#94a3b8;cursor:pointer;transition:background .14s ease,color .14s ease,transform .14s ease}.permission-pill:hover:not(:disabled){transform:translateY(-1px)}.permission-row__pills>.permission-pill:nth-child(1).is-active{background:#0ea5e9;color:#fff!important}.permission-row__pills>.permission-pill:nth-child(2).is-active{background:#22c55e;color:#fff!important}.permission-row__pills>.permission-pill:nth-child(3).is-active{background:#f59e0b;color:#fff!important}.permission-row__pills>.permission-pill:nth-child(4).is-active{background:#ef4444;color:#fff!important}.permission-pill--full{background:#f1f5f9;color:#64748b;font-weight:700}.permission-pill--full.is-active{background:#2f3b62;color:#fff!important}.permission-pill:disabled{opacity:.5;cursor:not-allowed}.permission-matrix__locked{font-size:12px}.panel__subtitle{margin-top:4px}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px;padding-top:18px;border-top:1px solid var(--line)}.input--compact{width:auto;min-width:170px}.table td{vertical-align:middle}.users-table{table-layout:fixed;width:100%}.users-table th,.users-table td{overflow:hidden;white-space:normal}.users-table td:last-child{overflow:visible}.users-table td:last-child .row-actions{justify-content:center}.users-table td:first-child .user-cell{width:min(240px,100%);margin:0 auto}.users-table td:nth-child(2){overflow:hidden}.users-table td:nth-child(3){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.users-table__role-select,.users-table td:nth-child(2) select{display:block;width:100%;min-width:0;max-width:100%;margin:0 auto;box-sizing:border-box}.table th.th-center{text-align:center}@media (max-width: 900px){.users-table thead{display:none}.users-table,.users-table tbody,.users-table tr,.users-table td{display:block;width:100%!important}.users-table tr{margin-bottom:12px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fff}.users-table td{padding:8px 0;border-bottom:none;overflow:visible;white-space:normal}.users-table td:before{content:attr(data-label);display:block;margin-bottom:4px;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.users-table td:first-child .user-cell{width:100%;margin:0}.users-table td:nth-child(2) select,.users-table__role-select{max-width:none;margin:0}.users-table td:last-child .row-actions{justify-content:flex-start}}.user-cell{display:flex;align-items:center;gap:12px;min-width:0}.avatar{flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#2f3b62;color:#fff!important;font-size:14px;font-weight:700}.user-cell__body{min-width:0;display:grid;gap:2px}.user-cell__body strong{font-size:14px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-cell__body span{font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table__cell-muted{color:var(--muted)}.status-chip--active{background:#ecfdf3;color:#067647}.status-chip--inactive{background:#fef3f2;color:#b42318}.settings-hub__header-panel{padding:20px 24px}.settings-hub__title-row{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.settings-hub__title{display:flex;align-items:center;gap:12px}.settings-hub__title h2{margin:0}.settings-hub__title p{margin:2px 0 0}.settings-hub__search{position:relative;display:flex;align-items:center;min-width:0;flex:1 1 220px}.settings-hub__search svg{position:absolute;left:14px;color:var(--muted);pointer-events:none}.settings-hub__search .input{width:100%;padding-left:40px}.settings-hub__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:18px;margin-top:18px}.settings-hub__modules-panel .settings-hub__grid{margin-top:14px}.settings-hub-card{padding:18px}.settings-hub-card__header{display:flex;align-items:center;gap:10px;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--line)}.settings-hub-card__icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;flex-shrink:0;color:var(--settings-hub-color, var(--accent-2));background:color-mix(in srgb,var(--settings-hub-color, var(--accent-2)) 16%,white)}.settings-hub-card__header strong{font-size:15px;color:var(--text)}.settings-hub-card__list{display:grid;gap:2px}.settings-hub-card__item{border:0;background:transparent;text-align:left;padding:8px 6px;border-radius:8px;cursor:pointer;color:var(--text);font:inherit}.settings-hub-card__item:hover{background:color-mix(in srgb,var(--accent-2) 8%,white);color:var(--accent-2)}*{font-size:14px!important;font-weight:400!important;line-height:21px!important;color:#222!important}h1,h2,h3,h4,h5,h6{font-size:18px!important;font-weight:400!important}.picker-modal__mode.is-active{color:#fff!important}.job-cards-table thead th{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"system-ui",Segoe UI,sans-serif!important;font-size:14px!important;font-weight:400!important;line-height:21px!important;color:#222!important}@media (max-width: 1100px){.shell{grid-template-columns:1fr}.module-hero__body,.module-hero__actions,.module-register__footer,.spare-upload-card__actions,.settings-hub__title-row{flex-direction:column;align-items:stretch}.module-hero__heading,.module-hero__content{flex:1 1 auto;width:100%}.module-hero__create,.module-hero__download{width:auto;align-self:flex-start}.spare-upload-card__actions .button{width:100%}}@media (max-width: 900px){.permission-row{flex-direction:column;align-items:stretch}.permission-row__pills{width:100%}.module-search-toolbar__filter{flex:1 1 100%}.job-cards-toolbar{flex-direction:column}.job-cards-search,.job-cards-status-filter{width:100%;max-width:none;flex:1 1 auto}.panel__header{flex-direction:column;align-items:stretch}.panel__header>.button{width:auto;align-self:flex-start}.panel__header--wrap h2{white-space:normal}.record-row{flex-wrap:wrap}.record-row>div{white-space:normal}}@media (max-width: 560px){.quotation-screen__header{grid-template-columns:1fr;justify-items:start}.quotation-screen__title{text-align:left}.settings-hub__search{width:100%;flex-basis:100%}.bar-chart__row{grid-template-columns:1fr;gap:4px}.input--compact{min-width:0;width:100%}.modal-overlay{padding:0;align-items:stretch}.modal-overlay__panel{width:100%;max-width:100%;min-height:100%;display:flex;flex-direction:column}.modal-overlay__panel .panel,.modal-overlay__panel .card.panel{max-height:none;min-height:100dvh;border-radius:0;padding:48px 14px 20px;box-shadow:none}.modal-overlay__close{top:10px;right:10px;width:40px;height:40px;font-size:22px}.modal-overlay__panel--narrow,.modal-overlay__panel--dashboard-stage{width:100%;max-width:100%}.modal-overlay__panel .quotation-screen__title{font-size:22px!important;font-weight:600!important;text-align:left}.modal-overlay__panel .quotation-card__title{padding:14px;font-size:16px!important;font-weight:600!important}.modal-overlay__panel .quotation-card .form-grid{padding:14px;gap:12px}.modal-overlay__panel .field span,.modal-overlay__panel .field>span{font-size:13px!important;font-weight:600!important}.modal-overlay__panel .input,.modal-overlay__panel select.input{min-height:44px;padding:12px 14px;font-size:16px!important}.modal-overlay__panel .sticky-actions{display:flex;flex-direction:column-reverse;gap:10px;margin-top:16px;padding:14px 0 0}.modal-overlay__panel .sticky-actions .button{width:100%;min-height:48px;font-size:16px!important;font-weight:600!important}.modal-overlay__panel .jobcard-form{gap:12px}.modal-overlay__panel .jobcard-layout{margin-top:0}}.job-cards-table td.table__actions-cell .module-register__actions{flex-wrap:nowrap!important;width:max-content!important}
