:root {
    --zui-font: -apple-system, BlinkMacSystemFont, "Segoe UI Variable", "Segoe UI", Arial, sans-serif;
    --zui-primary: #2563eb;
    --zui-primary-hover: #1d4ed8;
    --zui-muted: #536278;
    --zui-border: #d5deea;
    --zui-border-strong: #8998ad;
    --zui-surface-soft: #f3f6fb;
}

body { font-family: var(--zui-font); }

.zui-panel, .card, .panel {
    border-color: #d5deea;
    box-shadow: 0 5px 18px rgba(15, 30, 56, .055);
}

.zui-panel-header h2 { color: #14233b; }
.zui-panel-header p { color: #596a80; font-size: 11px; line-height: 1.45; }

.zui-field > span,
.filters label > span,
.form-grid label > span {
    color: #344258;
    font-size: 11px;
    font-weight: 700;
}

.zui-field input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),
.zui-field select,
.zui-field textarea,
.filters input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),
.filters select,
.filters textarea,
.form-grid input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),
.form-grid select,
.form-grid textarea,
.form-stack input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),
.form-stack select,
.form-stack textarea,
.zui-create-form .zui-editable-table input,
.zui-create-form .zui-editable-table select {
    min-height: 44px;
    height: 44px;
    padding: 0 12px;
    border: 1px solid #8998ad;
    border-radius: 10px;
    background: #fff;
    color: #142033;
    font-family: var(--zui-font);
    font-size: 13px;
    line-height: 1.35;
    box-shadow: inset 0 1px 2px rgba(15, 30, 56, .045);
    transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}

.zui-field textarea,
.filters textarea,
.form-grid textarea,
.form-stack textarea {
    height: auto;
    min-height: 104px;
    padding: 11px 12px;
}

.zui-field input::placeholder,
.zui-field textarea::placeholder,
.filters input::placeholder,
.form-grid input::placeholder,
.form-grid textarea::placeholder {
    color: #66758a;
    opacity: 1;
}

.zui-field input:focus,
.zui-field select:focus,
.zui-field textarea:focus,
.filters input:focus,
.filters select:focus,
.filters textarea:focus,
.form-grid input:focus,
.form-grid select:focus,
.form-grid textarea:focus,
.form-stack input:focus,
.form-stack select:focus,
.form-stack textarea:focus,
.zui-create-form .zui-editable-table input:focus,
.zui-create-form .zui-editable-table select:focus {
    border-color: #2563eb;
    outline: none;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .18), inset 0 1px 2px rgba(15, 30, 56, .035);
}

.zui-field input:disabled,
.zui-field select:disabled,
.zui-field textarea:disabled {
    border-color: #aab6c5;
    background: #eef2f7;
    color: #526176;
    opacity: 1;
}

.zui-section-number {
    width: 40px;
    min-width: 40px;
    height: 40px;
    border: 1px solid #d5e1f2;
    border-radius: 12px;
    background: #edf3fc;
}

.zui-section-number img {
    width: 20px;
    height: 20px;
    max-width: none;
}

.zui-button-icon {
    width: 17px;
    height: 17px;
    max-width: none;
    flex: 0 0 17px;
}

.zui-button, .primary-btn, .success-btn, .danger-btn, .ghost-btn, .link-btn, .btn {
    min-height: 40px;
    border-radius: 10px;
    font-size: 11px;
}

.zui-button-primary .zui-button-icon { filter: brightness(0) invert(1); }
.zui-file-picker { border-color: #71849d; background: #f2f6fc; color: #173b72; }
.zui-file-picker:hover { border-color: #2563eb; background: #eaf1fc; }
.zui-file-picker-label { display: inline-flex; align-items: center; justify-content: center; gap: 8px; font-size: 12px; }

.zayavki-nav-icon img {
    width: 17px;
    height: 17px;
    max-width: none;
    filter: brightness(0) invert(1);
}

@media (max-width: 800px) {
    .zui-field input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),
    .zui-field select,
    .zui-field textarea,
    .filters input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),
    .filters select,
    .filters textarea,
    .form-grid input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),
    .form-grid select,
    .form-grid textarea,
    .form-stack input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),
    .form-stack select,
    .form-stack textarea {
        min-height: 46px;
        height: 46px;
        font-size: 14px;
    }

    .zui-field textarea, .form-grid textarea, .form-stack textarea { height: auto; min-height: 104px; }
}
