.toast-host[data-v-4c662bac]{z-index:100;flex-direction:column;gap:10px;max-width:calc(100vw - 40px);display:flex;position:fixed;top:20px;right:20px}.toast[data-v-4c662bac]{border:1px solid var(--border);min-width:280px;box-shadow:var(--shadow-lg);background:#fff;border-radius:10px;align-items:center;gap:10px;padding:12px 14px;font-size:14px;display:flex}.toast--success[data-v-4c662bac]{color:var(--primary)}.toast--error[data-v-4c662bac]{color:var(--danger)}.toast--info[data-v-4c662bac]{color:var(--link)}.toast span[data-v-4c662bac]{color:var(--text);flex:1}.toast__close[data-v-4c662bac]{color:var(--muted);display:flex}.toast-enter-active[data-v-4c662bac],.toast-leave-active[data-v-4c662bac]{transition:all .25s}.toast-enter-from[data-v-4c662bac],.toast-leave-to[data-v-4c662bac]{opacity:0;transform:translate(20px)}:root{--primary:#137355;--primary-hover:#0f5f46;--primary-soft:#e7f3ee;--link:#1d4ed8;--danger:#dc2626;--danger-soft:#fdecec;--warning:#b45309;--warning-soft:#fdf3e3;--bg:#f5f7fb;--surface:#fff;--surface-muted:#f1f4f9;--border:#dfe4ec;--text:#0f172a;--muted:#475569;--subtle:#94a3b8;--radius:10px;--radius-lg:16px;--shadow:0 1px 2px #0f172a0a, 0 1px 3px #0f172a0f;--shadow-lg:0 10px 30px #0f172a14;color:var(--text);-webkit-font-smoothing:antialiased;font-family:Plus Jakarta Sans,system-ui,-apple-system,Segoe UI,sans-serif}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;margin:0}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:0;padding:0}input,select,textarea{font:inherit;color:inherit}a{color:var(--link);text-decoration:none}h1,h2,h3,h4{letter-spacing:-.02em;margin:0}p{margin:0}.btn{border-radius:var(--radius);white-space:nowrap;justify-content:center;align-items:center;gap:8px;height:42px;padding:0 18px;font-size:14px;font-weight:600;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn--primary{background:var(--primary);color:#fff}.btn--primary:hover:not(:disabled){background:var(--primary-hover)}.btn--outline{border:2px solid var(--primary);color:var(--primary);background:#fff}.btn--outline:hover:not(:disabled){background:var(--primary-soft)}.btn--ghost{border:1px solid var(--border);color:var(--text);background:#fff}.btn--ghost:hover:not(:disabled){background:var(--surface-muted)}.btn--danger{background:var(--danger);color:#fff}.btn--danger:hover:not(:disabled){background:#b91c1c}.btn--block{width:100%}.btn--lg{height:58px;font-size:16px}.btn--sm{height:34px;padding:0 12px;font-size:13px}.btn--icon{border-radius:8px;width:34px;height:34px;padding:0}.field{flex-direction:column;gap:6px;display:flex}.field__label{color:var(--text);font-size:14px;font-weight:500}.field__hint{color:var(--muted);font-size:12.5px}.field__error{color:var(--danger);font-size:12.5px}.input{border:1px solid var(--border);border-radius:var(--radius);background:#fff;outline:none;width:100%;height:44px;padding:0 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.input::placeholder{color:var(--subtle)}.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1373551f}.input--invalid{border-color:var(--danger)}textarea.input{resize:vertical;height:auto;padding:10px 14px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.badge{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.badge--green{background:var(--primary-soft);color:var(--primary)}.badge--blue{color:var(--link);background:#e8effd}.badge--amber{background:var(--warning-soft);color:var(--warning)}.badge--gray{background:var(--surface-muted);color:var(--muted)}.badge--red{background:var(--danger-soft);color:var(--danger)}.dot{background:currentColor;border-radius:50%;width:8px;height:8px;display:inline-block}.spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.cms-toolbar{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;display:flex}.cms-toolbar__title{align-items:center;gap:12px;display:flex}.cms-toolbar h2{font-size:17px}.cms-toolbar p{color:var(--muted);margin-top:2px;font-size:13px}.cms-icon{background:var(--primary-soft);width:42px;height:42px;color:var(--primary);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.cms-filters{flex-wrap:wrap;gap:12px;padding:16px 22px;display:flex}.cms-filters>*{flex:0 0 180px}.cms-filters .cms-search{flex:260px}.cms-search{position:relative}.cms-search svg{color:var(--subtle);position:absolute;top:50%;left:14px;transform:translateY(-50%)}.cms-search .input{padding-left:40px}.cms-table-wrap{overflow-x:auto}.cms-table{border-collapse:collapse;width:100%;font-size:14px}.cms-table th{text-align:left;background:var(--surface-muted);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;padding:12px 22px;font-size:12px;font-weight:600}.cms-table td{border-top:1px solid var(--border);vertical-align:top;padding:14px 22px}.cms-table td small{color:var(--muted);margin-top:3px;font-size:12.5px;display:block}.cms-table tbody tr:hover{background:#fafbfd}.cms-table .right{text-align:right}.cms-table .nowrap{white-space:nowrap}.cms-table .empty{text-align:center;color:var(--muted);padding:40px}.cms-table--compact th,.cms-table--compact td{padding-left:12px;padding-right:12px}.cms-table--compact th:first-child,.cms-table--compact td:first-child{padding-left:22px}.cms-actions{gap:6px;display:inline-flex}.btn--icon.is-danger{color:var(--danger)}.btn--icon.is-danger:hover:not(:disabled){background:var(--danger-soft)}.text-green{color:var(--primary)}.text-red{color:var(--danger)}.form-grid{grid-template-columns:1fr 1fr;gap:16px 18px;display:grid}.form-grid .span-2{grid-column:span 2}.check{cursor:pointer;align-items:center;gap:10px;height:44px;font-size:14px;display:inline-flex}.check input{width:18px;height:18px;accent-color:var(--primary)}@media (width<=720px){.cms-toolbar,.cms-filters{padding:14px 16px}.cms-filters>*{flex:100%}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:span 1}}
