@charset "UTF-8";:root{--masar-navy-deep: #0f172a;--masar-navy: #1e3a5f;--masar-navy-light: #1d4ed8;--masar-blue: #3b82f6;--masar-blue-dark: #1d4ed8;--masar-blue-light: #dbeafe;--masar-accent: #3b82f6;--masar-ink: #1e293b;--masar-text: #334155;--masar-muted: #64748b;--masar-faint: #94a3b8;--masar-bg: #f8fafc;--masar-surface: #ffffff;--masar-surface-2: #f1f5f9;--masar-surface-3: #e2e8f0;--masar-border: #e2e8f0;--masar-border-strong: #cbd5e1;--masar-success: #22c55e;--masar-success-bg: #dcfce7;--masar-success-ink: #166534;--masar-warn: #f59e0b;--masar-warn-bg: #fef3c7;--masar-warn-ink: #92400e;--masar-danger: #ef4444;--masar-danger-bg: #fee2e2;--masar-danger-ink: #991b1b;--masar-info: #3b82f6;--masar-info-bg: #dbeafe;--masar-info-ink: #1e40af;--masar-r-sm: 10px;--masar-r-md: 14px;--masar-r-lg: 20px;--masar-r-xl: 28px;--masar-r-pill: 999px;--masar-shadow-sm: 0 1px 2px rgba(15, 23, 42, .04), 0 1px 3px rgba(15, 23, 42, .06);--masar-shadow: 0 1px 3px rgba(15, 23, 42, .08);--masar-shadow-md: 0 2px 8px rgba(15, 23, 42, .06), 0 10px 24px rgba(15, 23, 42, .1);--masar-shadow-lg: 0 16px 32px rgba(15, 23, 42, .16), 0 24px 60px rgba(15, 23, 42, .22);--masar-shadow-hover: 0 8px 20px rgba(15, 23, 42, .12), 0 3px 8px rgba(15, 23, 42, .08);--masar-focus-ring: 0 0 0 3px rgba(59, 130, 246, .18);--masar-ease: cubic-bezier(.4, 0, .2, 1);--masar-fast: .15s;--masar-base: .22s;--masar-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Tahoma, sans-serif;--masar-mono: "SF Mono", Menlo, Monaco, "Roboto Mono", monospace;--masar-text-4xl: 2rem;--masar-text-3xl: 1.75rem;--masar-text-2xl: 1.5rem;--masar-text-xl: 1.25rem;--masar-text-base: 1rem;--masar-text-sm: .875rem;--masar-text-xs: .75rem;--masar-space-1: 4px;--masar-space-2: 8px;--masar-space-3: 12px;--masar-space-4: 16px;--masar-space-5: 20px;--masar-space-6: 24px;--masar-space-8: 32px;--masar-space-10: 40px;--masar-space-12: 48px;--masar-space-16: 64px;--masar-gradient: linear-gradient( 180deg, var(--masar-navy) 0%, var(--masar-navy-deep) 100% )}*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:var(--masar-font);font-size:14px;background:var(--masar-bg);color:var(--masar-ink)}a{color:var(--masar-blue);text-decoration:none;transition:color var(--masar-fast) var(--masar-ease)}a:hover{color:var(--masar-blue-dark);text-decoration:underline}code{font-family:var(--masar-mono);font-size:.85rem;color:var(--masar-ink);background:var(--masar-surface-2);padding:.1rem .35rem;border-radius:4px}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:var(--masar-surface-3)}*::-webkit-scrollbar-thumb{background:var(--masar-border-strong);border-radius:4px}*::-webkit-scrollbar-thumb:hover{background:var(--masar-faint)}.app-shell{min-height:100vh;display:flex}.sidebar{width:264px;flex-shrink:0;background:var(--masar-gradient);color:#fff;display:flex;flex-direction:column;padding:var(--masar-space-6) var(--masar-space-4);position:sticky;top:0;align-self:flex-start;height:100vh;overflow-y:auto;box-shadow:var(--masar-shadow-lg)}.sidebar-brand{display:flex;align-items:center;gap:var(--masar-space-3);padding:0 var(--masar-space-2) var(--masar-space-6);color:inherit}.sidebar-brand:hover{color:inherit}.sidebar-brand .brand-logo{height:36px;width:auto;display:block;filter:drop-shadow(0 2px 4px rgba(0,0,0,.25))}.sidebar-brand .brand-text{display:flex;flex-direction:column;line-height:1.2;min-width:0}.sidebar-brand .brand-title{font-size:1rem;font-weight:700;letter-spacing:.08em}.sidebar-brand .brand-sub{font-size:.72rem;font-weight:500;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-nav{display:flex;flex-direction:column;gap:2px;flex:1}.sidebar-nav button,.sidebar-nav .nav-external{display:flex;align-items:center;gap:var(--masar-space-3);width:100%;text-align:left;background:transparent;border:0;border-radius:var(--masar-r-sm);padding:var(--masar-space-3);color:#ffffffb8;font-size:.9rem;font-family:var(--masar-font);cursor:pointer;text-decoration:none;transition:background var(--masar-fast) var(--masar-ease),color var(--masar-fast) var(--masar-ease)}[dir=rtl] .sidebar-nav button,[dir=rtl] .sidebar-nav .nav-external{text-align:right}.sidebar-nav .nav-icon{font-size:1rem;flex-shrink:0;width:1.4em;text-align:center}.sidebar-nav button:hover,.sidebar-nav .nav-external:hover{background:#ffffff14;color:#fff}.sidebar-nav button.active{background:#ffffff24;color:#fff;font-weight:600;box-shadow:inset 3px 0 0 var(--masar-accent)}[dir=rtl] .sidebar-nav button.active{box-shadow:inset -3px 0 0 var(--masar-accent)}.sidebar-nav .nav-external{margin-bottom:var(--masar-space-2);padding-bottom:var(--masar-space-3);border-bottom:1px solid rgba(255,255,255,.15);border-radius:0}.sidebar-footer{border-top:1px solid rgba(255,255,255,.15);padding-top:var(--masar-space-4);margin-top:var(--masar-space-4);display:flex;flex-direction:column;gap:var(--masar-space-3)}.sidebar-footer .user{display:flex;align-items:center;gap:var(--masar-space-2);font-size:.85rem;color:#ffffffd9;overflow:hidden}.sidebar-footer .user span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-footer select.lang-switch,.sidebar-footer button.logout{width:100%;justify-content:center}.mobile-topbar,.sidebar-backdrop{display:none}select.lang-switch{background:#ffffff26;border:1px solid rgba(255,255,255,.35);color:#fff;padding:.4rem .65rem;border-radius:var(--masar-r-sm);cursor:pointer;font-size:.85rem;font-family:var(--masar-font)}select.lang-switch:hover{background:#ffffff47}select.lang-switch option{color:var(--masar-ink);background:var(--masar-surface)}.content-area{flex:1;min-width:0;display:flex;flex-direction:column}.main{flex:1;padding:1.5rem 2rem;max-width:1500px;width:100%;margin:0 auto}.subtitle{color:var(--masar-muted);font-size:.9rem;margin-bottom:1rem}.breadcrumb{display:flex;align-items:center;gap:var(--masar-space-2);font-size:var(--masar-text-xs);color:var(--masar-muted);margin-bottom:var(--masar-space-2);flex-wrap:wrap}.breadcrumb a{color:var(--masar-muted)}.breadcrumb a:hover{color:var(--masar-blue);text-decoration:none}.breadcrumb .sep{opacity:.6}.breadcrumb .current{color:var(--masar-text);font-weight:600}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--masar-space-4);margin-bottom:var(--masar-space-6)}.page-header__heading{min-width:0}.page-header__title{margin:0;font-size:var(--masar-text-2xl);font-weight:700;color:var(--masar-navy);letter-spacing:-.01em;line-height:1.25}.page-header__subtitle{margin:var(--masar-space-1) 0 0;font-size:var(--masar-text-sm);color:var(--masar-muted);max-width:68ch}.page-header__actions{display:flex;align-items:center;gap:var(--masar-space-2);flex-wrap:wrap;flex-shrink:0}.muted{color:var(--masar-muted)}.muted.small,.small{font-size:.85rem}.toolbar{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}button.btn{background:var(--masar-surface);border:1px solid var(--masar-border-strong);color:var(--masar-text);padding:.5rem 1rem;border-radius:var(--masar-r-sm);cursor:pointer;font-size:.9rem;font-weight:500;font-family:var(--masar-font);display:inline-flex;align-items:center;gap:.4rem;transition:background var(--masar-fast) var(--masar-ease),border-color var(--masar-fast) var(--masar-ease),box-shadow var(--masar-fast) var(--masar-ease),transform var(--masar-fast) var(--masar-ease)}button.btn:hover{background:var(--masar-surface-2);border-color:var(--masar-faint);transform:translateY(-1px);box-shadow:var(--masar-shadow-sm)}button.btn:active{transform:translateY(0);box-shadow:none}button.btn:focus-visible{outline:none;box-shadow:var(--masar-focus-ring)}button.btn.primary{background:linear-gradient(135deg,var(--masar-blue) 0%,var(--masar-blue-dark) 100%);border-color:var(--masar-blue-dark);color:#fff;box-shadow:0 4px 12px #3b82f64d}button.btn.primary:hover{background:linear-gradient(135deg,var(--masar-blue-dark) 0%,var(--masar-navy-light) 100%);border-color:var(--masar-navy-light);box-shadow:0 6px 18px #3b82f661}button.btn.success{background:var(--masar-success);border-color:var(--masar-success);color:#fff}button.btn.success:hover{filter:brightness(.95)}button.btn.danger{background:var(--masar-danger);border-color:var(--masar-danger);color:#fff}button.btn.danger:hover{background:#dc2626}button.btn.warn{background:var(--masar-warn);border-color:var(--masar-warn);color:#fff}button.btn.warn:hover{background:#d97706}button.btn:disabled{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none!important}.btn.small{padding:.3rem .65rem;font-size:.8rem}button.btn.loading{color:transparent!important;pointer-events:none;position:relative}button.btn.loading .spinner{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}button.btn.loading .spinner:after{content:"";width:15px;height:15px;border-radius:50%;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;animation:masar-spin .7s linear infinite}button.btn:not(.primary):not(.success):not(.danger):not(.warn).loading .spinner:after{border-color:var(--masar-border-strong);border-top-color:var(--masar-blue)}.tabs{display:flex;border-bottom:2px solid var(--masar-border);margin-bottom:1.25rem}.tabs button{background:transparent;border:0;padding:.75rem 1.5rem;cursor:pointer;font-size:.95rem;font-family:var(--masar-font);color:var(--masar-muted);border-bottom:2px solid transparent;margin-bottom:-2px;border-radius:var(--masar-r-sm) var(--masar-r-sm) 0 0;transition:color var(--masar-base) var(--masar-ease),border-color var(--masar-base) var(--masar-ease),background var(--masar-base) var(--masar-ease)}.tabs button:hover{color:var(--masar-navy);background:var(--masar-surface-2)}.tabs button.active{color:var(--masar-blue);border-bottom-color:var(--masar-blue);font-weight:600}.table-wrap{background:var(--masar-surface);border-radius:var(--masar-r-md);box-shadow:var(--masar-shadow-sm);overflow:auto;max-width:100%}.table-wrap table{box-shadow:none;border-radius:0}table{width:100%;border-collapse:collapse;background:var(--masar-surface);border-radius:var(--masar-r-md);overflow:hidden;box-shadow:var(--masar-shadow-sm)}thead th{text-align:left;padding:.75rem 1rem;background:var(--masar-surface-2);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;color:var(--masar-muted);border-bottom:1px solid var(--masar-border)}.table-wrap thead th{position:sticky;top:0;z-index:1}.table-wrap.scroll{max-height:60vh}tbody td{padding:.75rem 1rem;border-bottom:1px solid var(--masar-surface-3);font-size:.9rem;color:var(--masar-text)}tbody tr:last-child td{border-bottom:0}tbody tr{transition:background var(--masar-fast) var(--masar-ease)}tbody tr:hover{background:var(--masar-surface-2)}tbody tr.selected{background:var(--masar-blue-light)}tbody tr.selected:hover{background:#bfdbfe}.num{text-align:right;font-variant-numeric:tabular-nums}.actions{display:flex;gap:.25rem}.actions button{padding:.3rem .6rem;font-size:.8rem}.page-controls{display:flex;align-items:center;justify-content:space-between;gap:var(--masar-space-4);padding:var(--masar-space-3) var(--masar-space-1);flex-wrap:wrap}.pagination{display:flex;align-items:center;gap:var(--masar-space-1)}.pagination button{min-width:32px;height:32px;padding:0 var(--masar-space-2);border-radius:var(--masar-r-sm);border:1px solid var(--masar-border-strong);background:var(--masar-surface);color:var(--masar-text);font-size:var(--masar-text-sm);cursor:pointer;transition:background var(--masar-fast) var(--masar-ease),border-color var(--masar-fast) var(--masar-ease)}.pagination button:hover:not(:disabled){background:var(--masar-surface-2);border-color:var(--masar-faint)}.pagination button.active{background:var(--masar-blue);border-color:var(--masar-blue);color:#fff}.pagination button:disabled{opacity:.45;cursor:not-allowed}.card{background:var(--masar-surface);padding:1.25rem;border-radius:var(--masar-r-md);box-shadow:var(--masar-shadow-sm);border:1px solid var(--masar-border)}.card h3{margin:0 0 .75rem;font-size:1rem;color:var(--masar-navy)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:1rem}.card-grid .card{padding:0;display:flex;flex-direction:column;overflow:hidden;transition:box-shadow var(--masar-fast) var(--masar-ease),border-color var(--masar-fast) var(--masar-ease)}.card-grid .card:hover{box-shadow:var(--masar-shadow-md);border-color:var(--masar-border-strong)}.card-head{padding:.9rem 1rem;border-bottom:1px solid var(--masar-surface-3);display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.card-body{padding:.75rem 1rem;flex:1}.card-foot{padding:.5rem 1rem;border-top:1px solid var(--masar-surface-3);background:var(--masar-surface-2);display:flex;gap:.4rem}.kv{display:flex;justify-content:space-between;padding:.25rem 0;gap:.5rem;font-size:.85rem}.kv label{color:var(--masar-muted);font-size:.8rem}.kv span{text-align:right;max-width:60%;overflow:hidden;text-overflow:ellipsis}.status-shell{max-width:480px;margin:4rem auto;padding:2rem;background:var(--masar-surface);border-radius:var(--masar-r-lg);box-shadow:var(--masar-shadow-lg);text-align:center}.status-shell h2{margin:0 0 .75rem;color:var(--masar-navy)}.status-shell .card{text-align:left;margin-top:1rem}.badge{display:inline-block;padding:.2rem .55rem;border-radius:var(--masar-r-pill);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.badge.on{background:var(--masar-success-bg);color:var(--masar-success-ink)}.badge.off,.badge.danger{background:var(--masar-danger-bg);color:var(--masar-danger-ink)}.badge.info{background:var(--masar-info-bg);color:var(--masar-info-ink)}.badge.neutral{background:var(--masar-border);color:var(--masar-text)}.tag{display:inline-flex;align-items:center;gap:.35em;padding:.15rem .6rem;border-radius:var(--masar-r-pill);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;border:1px solid transparent}.tag:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.tag.active{background:var(--masar-success-bg);color:var(--masar-success-ink);border-color:#1665341f}.tag.suspended,.tag.expired,.tag.revoked,.tag.blocked{background:var(--masar-danger-bg);color:var(--masar-danger-ink);border-color:#991b1b1f}.tag.pending_approval{background:var(--masar-warn-bg);color:var(--masar-warn-ink);border-color:#b453091f}.tag.info{background:var(--masar-info-bg);color:var(--masar-info-ink);border-color:#1e40af1f}.tag.secondary{background:var(--masar-surface-3);color:var(--masar-text);border-color:var(--masar-border)}.empty,.loading{text-align:center;padding:2.5rem 2rem;color:var(--masar-muted);background:var(--masar-surface);border-radius:var(--masar-r-md)}.empty:before{content:"🗂️";display:block;font-size:1.6rem;margin-bottom:.5rem;opacity:.6}.loading{background:transparent;display:flex;flex-direction:column;align-items:center;gap:.6rem}.loading:before{content:"";width:22px;height:22px;border-radius:50%;border:3px solid var(--masar-border);border-top-color:var(--masar-blue);animation:masar-spin .7s linear infinite}@keyframes masar-spin{to{transform:rotate(360deg)}}.skeleton{position:relative;overflow:hidden;background:var(--masar-surface-3);border-radius:var(--masar-r-sm)}.skeleton:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);animation:masar-shimmer 1.4s infinite}@keyframes masar-shimmer{to{transform:translate(100%)}}.skeleton-text{height:.9em;margin:.25rem 0}.skeleton-row td{padding:.9rem 1rem}.skeleton-row .skeleton{height:14px;width:100%}.avatar{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--masar-blue-light);color:var(--masar-blue-dark);font-size:.75rem;font-weight:700;flex-shrink:0;text-transform:uppercase}.avatar.sm{width:24px;height:24px;font-size:.65rem}.avatar.lg{width:44px;height:44px;font-size:.95rem}.input-icon{position:relative;display:flex;align-items:center}.input-icon .icon{position:absolute;left:.7rem;color:var(--masar-faint);font-size:.9rem;pointer-events:none;line-height:1}.input-icon input{padding-left:2.15rem;width:100%}[dir=rtl] .input-icon .icon{left:auto;right:.7rem}[dir=rtl] .input-icon input{padding-left:.75rem;padding-right:2.15rem}.dialog-backdrop{position:fixed;inset:0;background:#0f172a80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:50;animation:masar-fade-in var(--masar-base) var(--masar-ease)}.dialog{background:var(--masar-surface);border-radius:var(--masar-r-lg);width:600px;max-width:95vw;max-height:90vh;overflow:auto;box-shadow:var(--masar-shadow-lg);animation:masar-pop-in var(--masar-base) var(--masar-ease)}.dialog.wide{width:820px}.dialog header{padding:1.1rem 1.5rem;border-bottom:1px solid var(--masar-border);display:flex;justify-content:space-between;align-items:center}.dialog header h3{margin:0;font-size:1.1rem;font-weight:700;color:var(--masar-navy)}.dialog .body{padding:1.5rem}.dialog footer{padding:1rem 1.5rem;border-top:1px solid var(--masar-border);display:flex;justify-content:flex-end;gap:.5rem}.dialog header .x{background:transparent;border:0;font-size:1.5rem;cursor:pointer;color:var(--masar-muted);line-height:1;padding:0 .5rem;border-radius:var(--masar-r-sm);transition:color var(--masar-fast) var(--masar-ease),background var(--masar-fast) var(--masar-ease)}.dialog header .x:hover{color:var(--masar-ink);background:var(--masar-surface-2)}@keyframes masar-fade-in{0%{opacity:0}to{opacity:1}}@keyframes masar-pop-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1rem}.form-grid label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;color:var(--masar-text)}.form-grid label.full,.full-width{grid-column:span 2}input,select,textarea{font-family:var(--masar-font)}.form-grid input,.form-grid select,.form-grid textarea{padding:.55rem .65rem;border:1px solid var(--masar-border-strong);border-radius:var(--masar-r-sm);font-size:.9rem;background:var(--masar-surface);color:var(--masar-ink);transition:border-color var(--masar-fast) var(--masar-ease),box-shadow var(--masar-fast) var(--masar-ease)}.form-grid textarea{font-family:var(--masar-mono);font-size:.8rem;width:100%;min-height:250px}select{padding:.5rem .65rem;border:1px solid var(--masar-border-strong);border-radius:var(--masar-r-sm);font-size:.9rem;background:var(--masar-surface);cursor:pointer;color:var(--masar-ink)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--masar-blue);box-shadow:var(--masar-focus-ring)}.notice{padding:.75rem 1rem;background:var(--masar-blue-light);border-left:4px solid var(--masar-blue);margin-bottom:1rem;font-size:.9rem;color:var(--masar-info-ink);border-radius:var(--masar-r-sm)}.notice.warn{background:var(--masar-warn-bg);border-color:var(--masar-warn);color:var(--masar-warn-ink)}.toast{position:fixed;bottom:2rem;right:2rem;padding:1rem 1.5rem;border-radius:var(--masar-r-md);box-shadow:var(--masar-shadow-md);z-index:100;max-width:400px;display:flex;align-items:center;gap:.5rem;animation:masar-toast-in var(--masar-base) var(--masar-ease)}.toast:before{font-size:1rem;line-height:1}.toast.success:before{content:"✓"}.toast.error:before{content:"✕"}.toast.success{background:var(--masar-success-bg);color:var(--masar-success-ink)}.toast.error{background:var(--masar-danger-bg);color:var(--masar-danger-ink)}@keyframes masar-toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.25rem}.stat{background:var(--masar-surface);border:1px solid var(--masar-border);border-radius:var(--masar-r-md);padding:1.1rem 1.25rem;box-shadow:var(--masar-shadow-sm);transition:box-shadow var(--masar-base) var(--masar-ease),transform var(--masar-base) var(--masar-ease)}.stat:hover{box-shadow:var(--masar-shadow-hover);transform:translateY(-2px)}.stat .lbl{color:var(--masar-muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.stat .val{font-size:1.6rem;font-weight:700;color:var(--masar-navy);margin-top:.35rem}.stat.warn{border-left:4px solid var(--masar-warn)}.stat.ok{border-left:4px solid var(--masar-success)}.filterbar{display:flex;gap:.5rem;align-items:center;margin-bottom:1rem;flex-wrap:wrap;background:var(--masar-surface);padding:.75rem;border-radius:var(--masar-r-md);box-shadow:var(--masar-shadow-sm)}.filterbar input,.filterbar select{padding:.5rem .75rem;border:1px solid var(--masar-border-strong);border-radius:var(--masar-r-sm);font-size:.9rem;background:var(--masar-surface);transition:border-color var(--masar-fast) var(--masar-ease),box-shadow var(--masar-fast) var(--masar-ease)}.filterbar .count{color:var(--masar-muted);font-size:.85rem;font-weight:600}.filterbar .right{margin-left:auto}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}[dir=rtl] .filterbar .right{margin-left:0;margin-right:auto}[dir=rtl] .kv span{text-align:left}[dir=rtl] .notice{border-left:0;border-right:4px solid var(--masar-blue)}[dir=rtl] .notice.warn{border-color:var(--masar-warn)}[dir=rtl] .toast{right:auto;left:2rem}@media(max-width:900px){.main{padding:var(--masar-space-4)}.sidebar{position:fixed;top:0;left:0;z-index:200;transform:translate(-100%);transition:transform var(--masar-base) var(--masar-ease)}[dir=rtl] .sidebar{left:auto;right:0;transform:translate(100%)}.app-shell.sidebar-open .sidebar{transform:translate(0)}.sidebar-backdrop{display:none;position:fixed;inset:0;background:#0f172a80;z-index:150}.app-shell.sidebar-open .sidebar-backdrop{display:block}.mobile-topbar{display:flex;align-items:center;gap:var(--masar-space-3);background:var(--masar-gradient);color:#fff;padding:var(--masar-space-3) var(--masar-space-4);box-shadow:var(--masar-shadow-md);position:sticky;top:0;z-index:100}.mobile-topbar .brand-title{font-weight:700;letter-spacing:.06em;font-size:.95rem}#sidebar-toggle{background:#ffffff26;border:1px solid rgba(255,255,255,.3);color:#fff;width:36px;height:36px;flex-shrink:0;border-radius:var(--masar-r-sm);font-size:1.1rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.page-header{flex-direction:column;align-items:stretch}.page-header__actions{justify-content:flex-start}.form-grid{grid-template-columns:1fr}.form-grid label.full,.full-width{grid-column:1}}@media(max-width:640px){.filterbar{flex-direction:column;align-items:stretch}.filterbar input,.filterbar select,.filterbar .input-icon{width:100%}.filterbar .right{margin-left:0;width:100%}[dir=rtl] .filterbar .right{margin-right:0}.toolbar{flex-direction:column;align-items:stretch}.toolbar button.btn{justify-content:center}.dialog{width:100vw;max-width:100vw;height:100vh;max-height:100vh;border-radius:0}.page-controls{flex-direction:column;align-items:stretch;text-align:center}}.filterbar #f-search,.filterbar .input-icon{flex:1 1 240px;min-width:200px}.filterbar .dl{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;color:var(--masar-text)}.filterbar .dl input{padding:.4rem .5rem}.filterbar .count{margin-left:auto}.filterbar.wide{padding:.85rem}[dir=rtl] .filterbar .count{margin-left:0;margin-right:auto}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.5rem 1rem;margin-bottom:1rem;padding:.85rem 1rem;background:var(--masar-surface-2);border-radius:var(--masar-r-sm)}.detail-grid .kv-full{grid-column:1/-1;flex-direction:column;align-items:flex-start;gap:.15rem}.detail-grid .kv-full span{max-width:100%;overflow:visible;text-overflow:clip;white-space:normal;text-align:left}[dir=rtl] .detail-grid .kv-full{align-items:flex-end}[dir=rtl] .detail-grid .kv-full span{text-align:right}.form-grid .row{display:flex;gap:.5rem;align-items:center}.form-grid .row input{flex:1;padding:.45rem .6rem;border:1px solid var(--masar-border-strong);border-radius:var(--masar-r-sm)}h4{margin:.75rem 0 .4rem;font-size:.9rem;color:var(--masar-text);text-transform:uppercase;letter-spacing:.04em}.badge.on:before,.badge.off:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;margin-inline-end:.35em;vertical-align:1px}#bands-table input.band-max.invalid{border-color:var(--masar-danger);background:var(--masar-danger-bg);color:var(--masar-danger-ink)}
