:root{--bg:#f4f6fa;--surface:#fff;--text:#1f2937;--muted:#6b7280;--primary:#1f3a8a;--primary-hover:#1a3278;--primary-weak:#e7edff;--border:#e5e7eb;--focus:#3b82f6;--sidebar-width:264px;--header-height:64px;--footer-height:44px;--radius-sm:8px;--radius-md:12px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--shadow-card:0 2px 8px #1f3a8a14}*{box-sizing:border-box}html,body,#root{height:100%}body{min-width:320px;color:var(--text);background:var(--bg);margin:0;font-family:Inter,Arial,sans-serif;font-size:15px;line-height:1.45;overflow-x:hidden}h1,h2,h3{color:var(--text);margin:0;font-weight:600}p{color:var(--text);margin:0}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.app-shell{min-height:100dvh;display:flex}.sidebar{width:var(--sidebar-width);background:var(--surface);border-right:1px solid var(--border);padding:var(--space-5) var(--space-3)}.brand{margin:0 var(--space-2) var(--space-4);color:var(--primary);font-size:16px;font-weight:700;line-height:1.3}.menu{flex-direction:column;gap:6px;display:flex}.menu-link{color:var(--text);border-radius:10px;padding:10px 12px;font-weight:500;line-height:1.3;text-decoration:none;display:block}.menu-link:hover{background:#f3f4f6}.menu-link.active{background:var(--primary-weak);color:var(--primary);font-weight:600}.app-main{flex-direction:column;flex:1;min-width:0;display:flex;overflow-x:hidden}.header{min-height:var(--header-height);background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:var(--space-4);padding:0 var(--space-5);display:flex}.page-title{font-size:20px;line-height:1.2}.profile-link{color:var(--primary);white-space:nowrap;font-weight:600;text-decoration:none}.profile-link:hover{color:var(--primary-hover);text-decoration:underline}.app-content{padding:var(--space-5);flex:1;min-width:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:var(--space-5);min-width:0}.card h2{margin-bottom:var(--space-3);font-size:20px}.card p{color:var(--muted)}.footer{min-height:var(--footer-height);border-top:1px solid var(--border);background:var(--surface);color:var(--muted);padding:0 var(--space-5);align-items:center;font-size:13px;display:flex}.auth-shell{background:var(--bg);justify-content:center;align-items:center;min-height:100dvh;padding:24px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:460px;box-shadow:var(--shadow);padding:24px}.auth-title{margin:0 0 6px;font-size:22px}.auth-subtitle{color:var(--muted);margin:0 0 18px;font-size:14px}.auth-form{flex-direction:column;gap:12px;display:flex}.auth-label{color:var(--text);flex-direction:column;gap:6px;font-size:14px;display:flex}.auth-input{border:1px solid var(--border);border-radius:10px;height:42px;padding:0 12px;font-size:15px}.auth-button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:10px;height:42px;font-weight:600}.auth-button-secondary{border:1px solid var(--border);height:42px;color:var(--text);cursor:pointer;background:#fff;border-radius:10px;font-weight:600}.auth-actions-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.auth-switch{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px;display:grid}.auth-switch-btn{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:10px;height:38px;font-weight:600}.auth-switch-btn.active{background:var(--primary-weak);color:var(--primary);border-color:var(--primary-weak)}.auth-error{color:#b42318;margin:0;font-size:13px}.auth-success{color:#027a48;margin:0;font-size:13px}.auth-links{flex-wrap:wrap;gap:12px;margin-top:14px;display:flex}.header-actions{align-items:center;gap:16px;display:flex}.auth-status-link{color:var(--text);border:1px solid var(--border);background:var(--surface);white-space:nowrap;border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-size:14px;text-decoration:none;display:inline-flex}.auth-status-link:hover{color:var(--primary);background:#f9fafb}.auth-user-icon{color:var(--primary);display:inline-flex}.cashboxes-page{gap:var(--space-4);min-width:0;display:grid}.cashboxes-head{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.cashboxes-head h2{line-height:1.2}.cashboxes-table-wrap{overscroll-behavior-x:contain;max-width:100%;overflow-x:auto}.cashboxes-table{border-collapse:collapse;width:100%;min-width:980px}.cashboxes-table th,.cashboxes-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:10px 8px}.cashboxes-table th{color:var(--muted);font-size:13px;font-weight:600}.cashboxes-table tbody tr{cursor:pointer}.cashboxes-table tbody tr:hover{background:#f9fafb}.cashboxes-table tbody tr.is-selected{background:var(--primary-weak)}.cell-subtext{color:var(--muted);margin-top:4px;font-size:12px}.status-badge{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;padding:4px 8px;font-size:12px;font-weight:600;line-height:1.2;display:inline-flex}.status-success,.status-online{color:#067647;background:#ecfdf3;border-color:#abefc6}.status-danger{color:#b42318;background:#fef3f2;border-color:#fecdca}.status-offline{color:#b54708;background:#fffaeb;border-color:#fedf89}.status-badge--success{color:#067647;background:#ecfdf3;border-color:#abefc6}.status-badge--warning{color:#b54708;background:#fffaeb;border-color:#fedf89}.status-badge--danger{color:#b42318;background:#fef3f2;border-color:#fecdca}.status-badge--info{color:#175cd3;background:#eff8ff;border-color:#b2ddff}.status-badge--neutral{color:#344054;background:#f2f4f7;border-color:#d0d5dd}.status-no-license,.status-setup-required,.status-error{color:#b42318;background:#fef3f2;border-color:#fecdca}.cashbox-details-grid{gap:var(--space-4);display:grid}.info-hint{outline:none;align-self:center;align-items:center;display:inline-flex;position:relative}.info-hint-trigger{border:1px solid var(--border);width:18px;height:18px;color:var(--primary);cursor:help;-webkit-user-select:none;user-select:none;background:#fff;border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:600;line-height:1;display:inline-flex;transform:translateY(-4px)}.info-hint-popover{z-index:20;color:#fff;opacity:0;pointer-events:none;background:#111827;border-radius:10px;width:min(460px,100vw - 32px);padding:10px 12px;transition:opacity .15s,transform .15s;position:absolute;top:24px;transform:translateY(4px);box-shadow:0 8px 24px #0003}.info-hint-popover--start{left:0;right:auto}.info-hint-popover--end{left:auto;right:0}.info-hint:hover .info-hint-popover,.info-hint:focus-within .info-hint-popover{opacity:1;pointer-events:auto;transform:translateY(0)}.info-hint-title{margin-bottom:8px;font-size:13px;display:block}.info-hint-list{gap:6px;margin:0;padding-left:16px;display:grid}.info-hint-item{font-size:12px;line-height:1.35}.header-icon-button{border:1px solid var(--border);background:var(--surface);width:36px;height:36px;color:var(--primary);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.header-icon-button:hover{color:var(--primary-hover);background:#f9fafb}.software-page{gap:var(--space-4);display:grid}.software-intro{color:var(--text)}.software-filter{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.software-filter-btn{border:1px solid var(--border);height:36px;color:var(--text);cursor:pointer;background:#fff;border-radius:10px;padding:0 12px;font-weight:600}.software-filter-btn.active{background:var(--primary-weak);color:var(--primary);border-color:var(--primary-weak)}.software-list{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.software-item{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);background:#fff;gap:10px;display:grid}.software-links{gap:8px;display:grid}.software-link{color:var(--primary);font-weight:600;text-decoration:none}.software-link:hover{color:var(--primary-hover);text-decoration:underline}.software-models{gap:4px;margin:8px 0 0;padding-left:18px;display:grid}.software-registry-date{color:#b42318}.software-note{color:var(--muted);font-style:italic}.software-empty{color:var(--muted)}.software-models-toggle{color:var(--primary);cursor:pointer;background:0 0;border:none;margin-top:8px;padding:0;font-weight:600}.software-models-toggle:hover{color:var(--primary-hover);text-decoration:underline}.licenses-page{gap:var(--space-4);min-width:0;display:grid}.licenses-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.licenses-table-wrap{overscroll-behavior-x:contain;max-width:100%;overflow-x:auto}.licenses-table{border-collapse:collapse;width:100%;min-width:920px}.licenses-table th,.licenses-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:10px 8px}.licenses-table th{color:var(--muted);font-size:13px;font-weight:600}.licenses-apply-head{align-items:center;gap:6px;display:inline-flex}.licenses-empty{gap:var(--space-4);justify-items:start;display:grid}.primary-action-button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;min-height:46px;padding:0 18px;font-weight:600;text-decoration:none;display:inline-flex}.primary-action-button:hover{background:var(--primary-hover)}.licenses-purchase-page{gap:var(--space-4);display:grid}.licenses-purchase-form{gap:var(--space-3);max-width:420px;display:grid}.licenses-purchase-field{gap:6px;font-size:14px;display:grid}.licenses-purchase-input{border:1px solid var(--border);background:#fff;border-radius:10px;height:42px;padding:0 12px;font-size:15px}.licenses-purchase-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.secondary-action-link{border:1px solid var(--border);min-height:42px;color:var(--text);background:#fff;border-radius:10px;align-items:center;padding:0 14px;font-weight:600;text-decoration:none;display:inline-flex}.secondary-action-link:hover{color:var(--primary);background:#f9fafb}.licenses-purchase-success{color:#027a48;margin:0;font-size:14px}.licenses-filters{flex-wrap:wrap;align-items:end;gap:10px 12px;margin-bottom:4px;display:flex}.licenses-filter-field{color:var(--muted);gap:6px;min-width:180px;font-size:13px;display:grid}.licenses-filter-input{border:1px solid var(--border);height:38px;color:var(--text);background:#fff;border-radius:10px;padding:0 10px;font-size:14px}.licenses-filter-check{min-height:38px;color:var(--text);align-items:center;gap:8px;padding:0 2px;font-size:14px;display:inline-flex}.secondary-action-button{border:1px solid var(--border);height:38px;color:var(--text);cursor:pointer;background:#fff;border-radius:10px;padding:0 12px;font-weight:600}.secondary-action-button:hover{color:var(--primary);background:#f9fafb}.licenses-filter-empty{color:var(--muted);margin:0}.support-page{gap:var(--space-4);display:grid}.support-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.support-table-wrap{overscroll-behavior-x:contain;max-width:100%;overflow-x:auto}.support-table{border-collapse:collapse;width:100%;min-width:860px}.support-table th,.support-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:10px 8px}.support-table th{color:var(--muted);font-size:13px;font-weight:600}.support-ticket-link{color:var(--primary);font-weight:600;text-decoration:none}.support-ticket-link:hover{color:var(--primary-hover);text-decoration:underline}.support-empty{color:var(--muted);margin:0}.support-ticket-page{gap:var(--space-4);display:grid}.support-ticket-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.support-ticket-topic{margin:0;font-weight:600}.support-ticket-meta{color:var(--muted);margin:0;font-size:14px}.support-chat-list{gap:10px;display:grid}.support-chat-item{border:1px solid var(--border);background:#fff;border-radius:10px;padding:10px 12px}.support-chat-item.is-client{background:#f8fafc}.support-chat-author{color:var(--muted);margin:0 0 6px;font-size:12px}.support-chat-text{color:var(--text);margin:0}.support-reply-form{gap:10px;display:grid}.support-reply-label{gap:6px;font-size:14px;display:grid}.support-reply-textarea{border:1px solid var(--border);resize:vertical;border-radius:10px;min-height:96px;padding:10px 12px;font-size:14px}.support-reply-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.support-success{color:#027a48;margin:0;font-size:14px}.support-modal-overlay{z-index:60;background:#1118277a;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.support-modal{border:1px solid var(--border);width:min(760px,100%);max-height:calc(100dvh - 40px);padding:var(--space-4);background:#fff;border-radius:14px;overflow:auto;box-shadow:0 20px 40px #11182733}.support-modal-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.support-create-form{gap:12px;display:grid}.support-create-label{color:var(--text);gap:6px;font-size:14px;display:grid}.support-create-input{border:1px solid var(--border);height:40px;color:var(--text);background:#fff;border-radius:10px;padding:0 10px;font-size:14px}.support-create-input-file{border:1px dashed var(--border);background:#fff;border-radius:10px;padding:10px}.support-create-fieldset{border:1px solid var(--border);border-radius:10px;margin:0;padding:10px 12px 12px}.support-create-fieldset legend{color:var(--text);padding:0 6px;font-size:14px}.support-create-checkboxes{gap:8px;display:grid}.support-create-check{align-items:center;gap:8px;font-size:14px;display:inline-flex}.support-files-list{color:var(--muted);gap:4px;margin:0;padding-left:18px;font-size:13px;display:grid}@media (width<=1024px){.sidebar{width:232px}.page-title{font-size:18px}.auth-company-name{display:none}}@media (width<=860px){.app-shell{flex-direction:column}.sidebar{border-right:none;border-bottom:1px solid var(--border);width:100%}.menu{gap:var(--space-2);flex-flow:wrap}.menu-link{border:1px solid var(--border)}.header{padding:0 var(--space-4)}.app-content{padding:var(--space-4)}.footer{padding:0 var(--space-4)}.header{min-height:auto;padding:var(--space-3) var(--space-4);row-gap:var(--space-3);flex-wrap:wrap}.header-actions{justify-content:space-between;gap:var(--space-2);width:100%}.profile-link{font-size:14px}.auth-status-link{padding:6px 8px}}@media (width<=980px){.software-list{grid-template-columns:1fr}}
