@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Sora:wght@600;700&display=swap";:root{--bg-0: #eef2f8;--bg-1: #f8fafd;--card: #ffffff;--ink-1: #0f172a;--ink-2: #334155;--ink-3: #64748b;--line: #dbe3ee;--line-strong: #c9d6e6;--primary: #445ee9;--primary-hover: #334dd8;--accent: #6f4cff;--accent-hover: #5e3df0;--neutral: #7f8798;--neutral-hover: #6c7383;--ok: #16a34a;--warn: #ca8a04;--error: #dc2626;--radius-lg: 16px;--radius-md: 10px;--radius-sm: 8px;--shadow-1: 0 12px 36px rgba(15, 23, 42, .08)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:Manrope,Segoe UI,sans-serif;color:var(--ink-1);background:radial-gradient(1200px 500px at 0% -10%,#dbe7ff 0%,transparent 55%),radial-gradient(900px 450px at 100% -20%,#efe2ff 0%,transparent 55%),linear-gradient(180deg,var(--bg-1) 0%,var(--bg-0) 100%)}.dashboard-page{padding:20px 16px}.dashboard-card{width:min(1320px,100%);margin:0 auto;background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-1);padding:16px 18px 12px}.dashboard-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px}.dashboard-title-row h1{margin:0;font-family:Sora,Manrope,sans-serif;font-size:28px;line-height:1.15;letter-spacing:-.02em}.dashboard-title-row p{margin:4px 0 0;color:var(--ink-3);font-weight:800;font-size:13px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;flex-wrap:wrap}.toolbar-left,.toolbar-mid,.toolbar-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.toolbar-left{padding-right:12px;border-right:1px solid var(--line)}.toolbar-mid{flex:1;min-width:260px;margin-left:4px}input,select,textarea{border:1px solid var(--line-strong);background:#fff;color:var(--ink-1);border-radius:var(--radius-sm);font:inherit}.toolbar input,.toolbar select{height:38px;padding:0 12px;font-size:13.5px}.toolbar input{width:220px}.toolbar select{min-width:120px}textarea{width:100%;min-height:78px;resize:vertical;padding:9px 10px;line-height:1.35}input:focus,select:focus,textarea:focus{outline:2px solid #c9d8ff;outline-offset:1px;border-color:#9fb6ff}.btn{border:0;border-radius:var(--radius-sm);height:38px;padding:0 14px;color:#fff;font:inherit;font-size:13.5px;font-weight:800;letter-spacing:.01em;cursor:pointer;transition:transform .12s ease,filter .12s ease,background .12s ease}.btn:hover{transform:translateY(-1px);filter:saturate(1.04)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.58;cursor:not-allowed;transform:none;filter:none}.btn-primary{background:var(--primary)}.btn-primary:hover{background:var(--primary-hover)}.btn-muted{background:#64748b}.btn-muted:hover{background:#536277}.btn-accent{background:linear-gradient(135deg,#8d6af8,#6a4cff)}.btn-accent:hover{background:linear-gradient(135deg,#7a58f5,#5838eb)}.btn-save{background:linear-gradient(135deg,#6f83f5,#445ee9);width:76px;height:38px;border-radius:var(--radius-sm);font-weight:800;letter-spacing:.02em;box-shadow:0 4px 12px #445ee959}.btn-save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 18px #445ee973;filter:brightness(1.05)}.btn-save:active:not(:disabled){transform:translateY(0);box-shadow:0 3px 8px #445ee94d}.btn-save:disabled{background:#cbd5e1;box-shadow:none}.table-wrap{overflow:visible;border:1px solid var(--line);border-radius:12px}table{width:100%;border-collapse:collapse;table-layout:auto;background:#fff}.checkbox-col{width:36px}.url-col{width:auto}.mini-col{width:140px}.proxy-col{width:180px}.custom-col{width:74px}.center-col,thead th.center-col{text-align:center}td.center-col .toggle-cell,td.center-col .inherited-proxy-box,td.center-col.message-cell-compact{justify-content:center}td.center-col .original-status-pill{margin:0 auto}thead th{background:#f6f8fc;font-size:12.5px;font-weight:800;text-align:left;padding:10px;border-bottom:1px solid var(--line);border-right:1px solid #e6edf7}thead th:last-child{border-right:0}tbody td{padding:9px 10px;vertical-align:middle;border-bottom:1px solid #e9eff7;overflow-wrap:break-word;font-size:13.5px}tbody tr:last-child td{border-bottom:0}.data-row{background:#fff;transition:background .12s ease}.data-row:hover{background:#f7f9ff}tr.pending-row{background:#eef1f4;outline:1px solid #d7dde6;cursor:not-allowed}tr.pending-row td,tr.pending-row .hostname-text,tr.pending-row .status-text,tr.pending-row .original-status-pill{color:#6b7280}tr.pending-row .original-status-pill{background:#e5e7eb;color:#667085}tr.pending-row .switch .slider{background:#d1d5db}tr.pending-row .switch input:checked+.slider{background:#c4c9d1}tr.pending-row .switch input:checked+.slider:before{transform:translate(0)}tr.pending-row .audit-info-icon{background:linear-gradient(135deg,#b7bec9,#8b93a3);box-shadow:none}tr.pending-row:hover{background:#ebeff5}tr.pending-row .pending-lock{background:#6b72801f;color:#6b7280;opacity:1;transform:translateY(0)}tr.pending-row input:disabled,tr.pending-row textarea:disabled,tr.pending-row button:disabled{cursor:not-allowed;opacity:.75}.status-text{margin:0;color:var(--ink-2);font-weight:700;font-size:12px;line-height:1.2}.error-text{color:var(--error)}.empty-row{text-align:center;color:var(--ink-3);padding:24px 12px;font-weight:700}.dashboard-footer{margin-top:10px;display:flex;justify-content:space-between;align-items:center;color:var(--ink-3);font-size:12px;font-weight:700}.footer-links{display:flex;gap:16px}.footer-links a{color:#4f46e5;text-decoration:none;font-weight:700}.footer-links a:hover{text-decoration:underline}.switch{position:relative;display:inline-flex;width:36px;height:20px;vertical-align:middle;cursor:pointer}.switch input{opacity:0;width:0;height:0;position:absolute;cursor:pointer}.slider{width:36px;height:20px;background:#d5dbe6;border-radius:999px;position:relative;transition:background .14s ease;cursor:pointer}.slider:before{content:"";position:absolute;left:3px;top:3px;width:14px;height:14px;background:#fff;border-radius:50%;transition:transform .14s ease;box-shadow:0 1px 3px #0f172a40}.switch input:checked+.slider{background:#4f46e5}.switch input:checked+.slider:before{transform:translate(16px)}.switch input:disabled+.slider{cursor:not-allowed;opacity:.7}input[type=checkbox]{cursor:pointer;width:15px;height:15px}input[type=checkbox]:disabled{cursor:not-allowed}textarea{cursor:text}button{cursor:pointer}button:disabled,input:disabled,select:disabled{cursor:not-allowed}.hostname-cell{min-width:220px}.host-url-stack{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.hostname-text{display:inline-block;font-weight:800;color:#111827;overflow-wrap:anywhere;font-size:14px;line-height:1.3}.host-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.root-badge{background:linear-gradient(135deg,#ebf0ff,#dfe8ff);color:#3147c9;border:1px solid #c9d5ff}.child-badge{background:linear-gradient(135deg,#eefaf4,#e4f7ee);color:#157a4d;border:1px solid #bbe7cf}.original-status-pill{display:inline-block;padding:4px 10px;border-radius:999px;font-size:11.5px;font-weight:800;white-space:nowrap}.original-status-pill.proxied{background:#eef2ff;color:#4338ca}.original-status-pill.dns-only{background:#f1f5f9;color:#475569}.original-status-pill.inherited{background:#f1f5f9;color:#64748b;border:1px solid #dfe8f3}.inherited-proxy-box{display:flex;align-items:center;justify-content:flex-start}.inherited-proxy-pill{display:inline-flex;align-items:center;justify-content:center;padding:5px 10px;border-radius:999px;background:linear-gradient(135deg,#f1f5f9,#e5edf7);color:#475569;border:1px solid #dfe8f3;font-size:11.5px;font-weight:800;white-space:nowrap}.pending-lock{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:#94a3b81f;color:#64748b;font-size:12px;opacity:0;transform:translateY(-2px);transition:all .2s ease}.pending-row:hover .pending-lock{opacity:1;transform:translateY(0)}.toggle-cell{display:flex;align-items:center;gap:8px}.toggle-cell .status-text{margin:0;min-width:52px}.message-cell-compact{display:flex;align-items:center;justify-content:center}.message-icon-btn{width:30px;height:30px;border:0;border-radius:999px;background:linear-gradient(135deg,#6f83f5,#445ee9);color:#fff;font-size:13px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 3px 10px #445ee94d;transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}.message-icon-btn:hover:not(:disabled){transform:translateY(-2px) scale(1.04);box-shadow:0 8px 18px #445ee961;filter:brightness(1.04)}.message-icon-btn:active:not(:disabled){transform:translateY(0) scale(1)}.message-icon-btn:disabled{background:#cbd5e1;box-shadow:none;cursor:not-allowed}.audit-info-wrap{position:relative;display:inline-flex;margin-left:4px;vertical-align:middle;outline:none}.audit-info-icon{width:20px;height:20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-style:italic;font-weight:800;font-family:Georgia,serif;color:#fff;background:linear-gradient(135deg,#6f83f5,#445ee9);box-shadow:0 2px 6px #445ee959;cursor:default;transition:transform .16s ease,box-shadow .16s ease}.audit-info-wrap:hover .audit-info-icon,.audit-info-wrap:focus-visible .audit-info-icon{transform:scale(1.12);box-shadow:0 4px 12px #445ee973}.audit-info-popover{position:absolute;z-index:100;bottom:28px;left:50%;transform:translate(-50%,6px);width:220px;background:#1e293b;color:#e2e8f0;border-radius:var(--radius-md);box-shadow:0 16px 32px #0f172a47;padding:10px 12px;font-size:12px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s ease,transform .16s ease,visibility .16s}.audit-info-popover:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#1e293b}.audit-info-wrap:hover .audit-info-popover,.audit-info-wrap:focus-visible .audit-info-popover{opacity:1;visibility:visible;transform:translate(-50%)}.audit-info-popover p{margin:0 0 6px;line-height:1.4;display:flex;flex-direction:column;gap:1px}.audit-info-popover p:last-child{margin-bottom:0}.audit-info-title{font-weight:800;color:#f8fafc;font-size:12.5px;margin-bottom:8px!important;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.15)}.audit-info-key{color:#94a3b8;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;font-weight:700}.audit-info-value{color:#f1f5f9;font-weight:600}.pending-row .audit-info-wrap{pointer-events:none;opacity:.5}.message-modal-overlay{position:fixed;inset:0;display:grid;place-items:center;background:#0f172a8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:2000;padding:16px}.message-modal-card{width:min(92vw,520px);background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 28px 60px #0f172a40;padding:22px 24px 20px}.message-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.message-modal-header-main{display:flex;flex-direction:column}.message-modal-header h3{margin:0;font-size:19px;font-weight:800;color:var(--ink-1)}.message-modal-hostname{margin:4px 0 0;font-size:13.5px;font-weight:700;color:#445ee9;word-break:break-word;display:flex;align-items:center}.message-modal-close{width:30px;height:30px;border:0;border-radius:999px;background:#f1f5f9;color:#64748b;font-size:13px;cursor:pointer;flex-shrink:0;transition:background .14s ease,color .14s ease}.message-modal-close:hover{background:#e2e8f0;color:#1e293b}.message-modal-body{display:flex;flex-direction:column;gap:6px}.message-modal-label{font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;margin-top:10px}.message-modal-label:first-child{margin-top:0}.message-modal-body textarea{min-height:120px}.message-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.message-modal-save{width:auto;padding:0 20px}.confirm-overlay{position:fixed;inset:0;display:grid;place-items:center;background:#0f172a8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:2000}.confirm-card{width:min(92vw,420px);background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 28px 60px #0f172a40;padding:26px 24px 22px;text-align:center}.confirm-icon{width:44px;height:44px;margin:0 auto 14px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#6f83f5,#445ee9);color:#fff;font-weight:800;font-size:20px;box-shadow:0 6px 16px #445ee959}.confirm-card h3{margin:0 0 10px;font-size:19px;font-weight:800;color:var(--ink-1);line-height:1.3}.confirm-body{margin:0 0 14px;color:var(--ink-2);line-height:1.55;font-size:14px;word-break:break-word}.confirm-host{display:block;margin-top:4px;font-weight:800;color:#1e293b;font-size:15px;word-break:break-word}.confirm-diff{display:flex;align-items:center;justify-content:center;gap:10px;margin:0 0 22px;padding:10px 14px;background:#f6f8fc;border:1px solid var(--line);border-radius:var(--radius-md);font-weight:700;font-size:13.5px}.confirm-diff-current{color:#94a3b8;text-decoration:line-through}.confirm-diff-arrow{color:#94a3b8;font-size:14px}.confirm-diff-next{color:#1e40af}.confirm-actions{display:flex;justify-content:center;gap:10px}.confirm-actions .btn{min-width:110px}.loading-overlay{position:fixed;inset:0;z-index:9999;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center}.loading-card{width:min(92vw,360px);background:#fff;border:1px solid #dbe3ee;border-radius:14px;box-shadow:0 24px 48px #02061733;padding:20px 18px;text-align:center}.loading-spinner{width:30px;height:30px;margin:0 auto 12px;border-radius:999px;border:3px solid #dbe3ee;border-top-color:#445ee9;animation:spin .8s linear infinite}.loading-title{margin:0;font-weight:700;color:#0f172a}.loading-label{margin:6px 0 0;color:#64748b;font-size:13px}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:900px){.dashboard-card{padding:14px}.dashboard-title-row h1{font-size:26px}.toolbar input{width:100%;min-width:220px}.toolbar{align-items:flex-start}.toolbar-right{width:100%}}.message-modal-hostname .audit-info-popover{text-align:center}.message-modal-hostname .audit-info-popover p{align-items:center}.message-modal-hostname .audit-info-title{text-align:center}.message-modal-hostname .audit-info-value{text-align:center;word-break:break-word}
