@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,400&family=DM+Mono:wght@400;500&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--brand-50: #eef5ff;--brand-100: #dbeafe;--brand-200: #bfdbfe;--brand-400: #60a5fa;--brand-500: #1a6bff;--brand-600: #1557e0;--brand-700: #1044c0;--brand-900: #0a2d7a;--neutral-0: #ffffff;--neutral-50: #f8f9fc;--neutral-100: #f1f3f8;--neutral-150: #e8ecf4;--neutral-200: #dde2ed;--neutral-300: #c4ccd9;--neutral-400: #8f9ab0;--neutral-500: #606d87;--neutral-600: #404d63;--neutral-700: #2a3347;--neutral-800: #1a2234;--neutral-900: #0e1624;--success-50: #f0fdf4;--success-100: #dcfce7;--success-500: #22c55e;--success-600: #16a34a;--success-700: #15803d;--warning-50: #fffbeb;--warning-100: #fef3c7;--warning-500: #f59e0b;--warning-600: #d97706;--warning-700: #b45309;--danger-50: #fff1f2;--danger-100: #ffe4e6;--danger-500: #ef4444;--danger-600: #dc2626;--danger-700: #b91c1c;--info-50: #eff6ff;--info-500: #3b82f6;--info-600: #2563eb;--sidebar-w: 240px;--header-h: 60px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--shadow-xs: 0 1px 2px rgba(14,22,36,.06);--shadow-sm: 0 2px 8px rgba(14,22,36,.08);--shadow-md: 0 4px 16px rgba(14,22,36,.1);--shadow-lg: 0 8px 32px rgba(14,22,36,.12);--shadow-xl: 0 16px 48px rgba(14,22,36,.16);--font-sans: "DM Sans", system-ui, sans-serif;--font-mono: "DM Mono", monospace;--ease: cubic-bezier(.16, 1, .3, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--duration-fast: .12s;--duration-normal: .2s;--duration-slow: .35s}html{font-size:15px}body{font-family:var(--font-sans);background:var(--neutral-50);color:var(--neutral-800);line-height:1.6;-webkit-font-smoothing:antialiased;min-height:100vh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--neutral-200);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--neutral-300)}h1{font-size:1.75rem;font-weight:600;letter-spacing:-.03em;line-height:1.2}h2{font-size:1.375rem;font-weight:600;letter-spacing:-.02em;line-height:1.3}h3{font-size:1.125rem;font-weight:600;letter-spacing:-.01em}h4{font-size:.9375rem;font-weight:600}p{color:var(--neutral-600)}code,kbd{font-family:var(--font-mono);font-size:.85em}a{color:var(--brand-500);text-decoration:none}a:hover{color:var(--brand-600)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-shell{display:flex;min-height:100vh}.app-sidebar{width:var(--sidebar-w);background:var(--neutral-900);border-right:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;overflow-y:auto}.app-main{flex:1;margin-left:var(--sidebar-w);min-height:100vh;display:flex;flex-direction:column}.app-header{height:var(--header-h);background:var(--neutral-0);border-bottom:1px solid var(--neutral-150);display:flex;align-items:center;padding:0 1.5rem;gap:1rem;position:sticky;top:0;z-index:50;box-shadow:var(--shadow-xs)}.page-content{flex:1;padding:2rem 2rem 3rem;max-width:1200px;width:100%}.sidebar-logo{padding:1.25rem 1.25rem 1rem;display:flex;align-items:center;gap:.625rem;border-bottom:1px solid rgba(255,255,255,.06)}.sidebar-logo-mark{width:32px;height:32px;background:linear-gradient(135deg,var(--brand-500),var(--brand-400));border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-logo-text{font-size:.9375rem;font-weight:700;color:#fff;letter-spacing:-.02em}.sidebar-logo-text span{color:var(--brand-400)}.sidebar-section{padding:1rem .75rem .25rem}.sidebar-section-label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--neutral-500);padding:0 .5rem;margin-bottom:.25rem}.nav-item{display:flex;align-items:center;gap:.625rem;padding:.5rem .75rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;color:var(--neutral-400);cursor:pointer;transition:all var(--duration-fast) var(--ease);text-decoration:none;border:none;background:none;width:100%;text-align:left}.nav-item:hover{background:#ffffff0f;color:var(--neutral-100)}.nav-item.active{background:#1a6bff26;color:var(--brand-400)}.nav-item svg{width:16px;height:16px;flex-shrink:0}.sidebar-footer{margin-top:auto;padding:.75rem;border-top:1px solid rgba(255,255,255,.06)}.card{background:var(--neutral-0);border:1px solid var(--neutral-150);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.card-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--neutral-100);display:flex;align-items:center;justify-content:space-between;gap:1rem}.card-body{padding:1.5rem}.card-footer{padding:1rem 1.5rem;border-top:1px solid var(--neutral-100);background:var(--neutral-50);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4375rem;padding:.5rem 1rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;font-family:var(--font-sans);cursor:pointer;border:1px solid transparent;transition:all var(--duration-fast) var(--ease);white-space:nowrap;text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn svg{width:15px;height:15px}.btn-primary{background:var(--brand-500);color:#fff;border-color:var(--brand-600);box-shadow:0 1px 3px #1a6bff4d}.btn-primary:hover:not(:disabled){background:var(--brand-600);box-shadow:0 2px 8px #1a6bff59;transform:translateY(-1px)}.btn-secondary{background:var(--neutral-0);color:var(--neutral-700);border-color:var(--neutral-200)}.btn-secondary:hover:not(:disabled){background:var(--neutral-50);border-color:var(--neutral-300)}.btn-danger{background:var(--danger-500);color:#fff;border-color:var(--danger-600)}.btn-danger:hover:not(:disabled){background:var(--danger-600)}.btn-ghost{background:transparent;color:var(--neutral-600);border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--neutral-100);color:var(--neutral-800)}.btn-sm{padding:.3125rem .6875rem;font-size:.8125rem}.btn-lg{padding:.6875rem 1.375rem;font-size:.9375rem}.btn-loading{position:relative;color:transparent!important}.btn-loading:after{content:"";position:absolute;width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-label{font-size:.8125rem;font-weight:500;color:var(--neutral-700)}.input{padding:.5625rem .75rem;border:1px solid var(--neutral-200);border-radius:var(--radius-sm);font-size:.875rem;font-family:var(--font-sans);color:var(--neutral-800);background:var(--neutral-0);transition:border-color var(--duration-fast),box-shadow var(--duration-fast);width:100%}.input:focus{outline:none;border-color:var(--brand-400);box-shadow:0 0 0 3px #1a6bff1f}.input::placeholder{color:var(--neutral-400)}.input.error{border-color:var(--danger-500)}.input.error:focus{box-shadow:0 0 0 3px #ef44441f}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%238f9ab0'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:14px;padding-right:2.25rem}.form-error{font-size:.8125rem;color:var(--danger-600)}.form-hint{font-size:.8125rem;color:var(--neutral-500)}.badge{display:inline-flex;align-items:center;gap:.25rem;padding:.1875rem .625rem;border-radius:99px;font-size:.75rem;font-weight:600;letter-spacing:.01em}.badge-success{background:var(--success-100);color:var(--success-700)}.badge-warning{background:var(--warning-100);color:var(--warning-700)}.badge-danger{background:var(--danger-100);color:var(--danger-700)}.badge-info{background:var(--info-50);color:var(--info-600)}.badge-neutral{background:var(--neutral-100);color:var(--neutral-600)}.badge-brand{background:var(--brand-50);color:var(--brand-700)}.table-wrap{overflow-x:auto;border-radius:var(--radius-md);border:1px solid var(--neutral-150)}table{width:100%;border-collapse:collapse}thead th{background:var(--neutral-50);padding:.625rem 1rem;text-align:left;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--neutral-500);border-bottom:1px solid var(--neutral-150);white-space:nowrap}tbody td{padding:.875rem 1rem;font-size:.875rem;border-bottom:1px solid var(--neutral-100);color:var(--neutral-700)}tbody tr:last-child td{border-bottom:none}tbody tr:hover td{background:var(--neutral-50)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0e162480;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fade-in var(--duration-fast) var(--ease)}.modal{background:var(--neutral-0);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:100%;max-width:480px;margin:1rem;animation:slide-up var(--duration-normal) var(--ease)}.modal-lg{max-width:640px}.modal-header{padding:1.375rem 1.5rem 1rem;display:flex;align-items:flex-start;justify-content:space-between}.modal-body{padding:0 1.5rem 1.5rem}.modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--neutral-100);display:flex;justify-content:flex-end;gap:.5rem}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.stat-card{background:var(--neutral-0);border:1px solid var(--neutral-150);border-radius:var(--radius-lg);padding:1.25rem 1.375rem;box-shadow:var(--shadow-xs)}.stat-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--neutral-500);margin-bottom:.5rem}.stat-value{font-size:1.875rem;font-weight:700;letter-spacing:-.04em;color:var(--neutral-900);line-height:1}.stat-sub{font-size:.8125rem;color:var(--neutral-500);margin-top:.25rem}.health-ring{position:relative;display:inline-flex}.health-score-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.health-score-number{font-size:1.5rem;font-weight:700;letter-spacing:-.04em;line-height:1}.health-score-sub{font-size:.6875rem;color:var(--neutral-500);font-weight:500}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 2rem;gap:1rem}.empty-icon{width:56px;height:56px;background:var(--neutral-100);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--neutral-400)}.empty-icon svg{width:28px;height:28px}.empty-title{font-size:1rem;font-weight:600;color:var(--neutral-800);margin:0}.empty-desc{font-size:.875rem;color:var(--neutral-500);max-width:320px}.toast-container{position:fixed;bottom:1.5rem;right:1.5rem;display:flex;flex-direction:column;gap:.5rem;z-index:9999}.toast{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--neutral-900);color:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-xl);font-size:.875rem;max-width:360px;animation:slide-up var(--duration-normal) var(--ease)}.toast.success{background:var(--success-700)}.toast.error{background:var(--danger-600)}.toast.warning{background:var(--warning-700)}.steps{display:flex;align-items:center;gap:0;margin-bottom:2rem}.step{display:flex;align-items:center;gap:.625rem;flex:1}.step-num{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:700;flex-shrink:0;border:2px solid var(--neutral-200);color:var(--neutral-400)}.step.done .step-num{background:var(--success-500);border-color:var(--success-500);color:#fff}.step.active .step-num{background:var(--brand-500);border-color:var(--brand-500);color:#fff}.step-label{font-size:.8125rem;font-weight:500;color:var(--neutral-500)}.step.active .step-label{color:var(--brand-600)}.step.done .step-label{color:var(--neutral-700)}.step-connector{flex:1;height:1px;background:var(--neutral-200);margin:0 .5rem}.step.done+.step .step-connector{background:var(--success-500)}.code-block{background:var(--neutral-900);color:var(--brand-300, #93c5fd);font-family:var(--font-mono);font-size:.8125rem;padding:1rem 1.25rem;border-radius:var(--radius-md);overflow-x:auto;white-space:pre-wrap;word-break:break-all;line-height:1.6;position:relative}.alert-banner{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;border-radius:var(--radius-md);font-size:.875rem;border:1px solid transparent}.alert-banner.info{background:var(--info-50);border-color:var(--info-500);color:var(--info-600)}.alert-banner.success{background:var(--success-50);border-color:var(--success-500);color:var(--success-700)}.alert-banner.warning{background:var(--warning-50);border-color:var(--warning-500);color:var(--warning-700)}.alert-banner.danger{background:var(--danger-50);border-color:var(--danger-500);color:var(--danger-700)}.alert-banner svg{width:16px;height:16px;flex-shrink:0;margin-top:1px}.divider{height:1px;background:var(--neutral-150);margin:1.5rem 0}.divider-text{display:flex;align-items:center;gap:.75rem;color:var(--neutral-400);font-size:.8125rem}.divider-text:before,.divider-text:after{content:"";flex:1;height:1px;background:var(--neutral-150)}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.75rem;gap:1rem}.page-header-left h1{color:var(--neutral-900);margin-bottom:.25rem}.page-header-left p{font-size:.875rem;color:var(--neutral-500)}.org-switcher{padding:.75rem;margin:.5rem .75rem;background:#ffffff0d;border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast)}.org-switcher:hover{background:#ffffff14}.org-name{font-size:.875rem;font-weight:600;color:var(--neutral-100);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.org-role{font-size:.6875rem;color:var(--neutral-500);text-transform:uppercase;letter-spacing:.06em}@media (max-width: 768px){.app-sidebar{transform:translate(-100%)}.app-main{margin-left:0}.stat-grid{grid-template-columns:1fr 1fr}.page-content{padding:1rem 1rem 2rem}}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:var(--neutral-0)}.auth-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2.5rem;min-height:100vh}.auth-brand-panel{background:var(--neutral-900);position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:3rem}.auth-brand-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 30% 50%,rgba(26,107,255,.2) 0%,transparent 65%),radial-gradient(ellipse at 80% 20%,rgba(96,165,250,.1) 0%,transparent 50%)}.auth-form-wrap{width:100%;max-width:380px}@media (max-width: 900px){.auth-shell{grid-template-columns:1fr}.auth-brand-panel{display:none}}.fade-in{animation:fade-in var(--duration-normal) var(--ease)}.slide-up{animation:slide-up var(--duration-normal) var(--ease)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.skeleton{background:linear-gradient(90deg,var(--neutral-100) 0%,var(--neutral-150) 50%,var(--neutral-100) 100%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.domain-card{background:var(--neutral-0);border:1px solid var(--neutral-150);border-radius:var(--radius-lg);padding:1.25rem 1.5rem;box-shadow:var(--shadow-xs);transition:box-shadow var(--duration-fast),border-color var(--duration-fast);cursor:pointer}.domain-card:hover{box-shadow:var(--shadow-md);border-color:var(--brand-200)}.domain-name{font-family:var(--font-mono);font-size:.9375rem;font-weight:500;color:var(--neutral-900)}.domain-meta{font-size:.8125rem;color:var(--neutral-500)}.policy-journey{display:flex;align-items:center;gap:.25rem;margin-top:.5rem}.policy-step{flex:1;height:4px;border-radius:99px;background:var(--neutral-150);transition:background var(--duration-normal)}.policy-step.none{background:var(--danger-400)}.policy-step.quarantine{background:var(--warning-500)}.policy-step.reject{background:var(--success-500)}.tabs{display:flex;border-bottom:2px solid var(--neutral-150);gap:0}.tab{padding:.625rem 1rem;font-size:.875rem;font-weight:500;color:var(--neutral-500);cursor:pointer;border:none;background:none;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color var(--duration-fast),border-color var(--duration-fast);display:flex;align-items:center;gap:.4rem}.tab:hover{color:var(--neutral-800)}.tab.active{color:var(--brand-500);border-bottom-color:var(--brand-500)}.sidebar-section-label{font-size:.625rem;letter-spacing:.1em;color:#ffffff40;padding:0 .625rem}.nav-item{padding:.4375rem .625rem;font-size:.8125rem;border-radius:6px;margin:1px 0}.nav-item.active{background:#1a6bff2e;color:#93c5fd;font-weight:600}.nav-item.active svg{color:#93c5fd}.nav-item:hover:not(.active){background:#ffffff0d}.card{box-shadow:0 1px 4px #0000000f,0 0 0 1px #0000000a;border:none;transition:box-shadow .15s ease}.card:hover{box-shadow:0 2px 8px #00000017,0 0 0 1px #0000000d}.card-header{background:var(--neutral-50);padding:1rem 1.25rem}.card-header h4{font-size:.9375rem;font-weight:600;color:var(--neutral-800)}.page-header{padding-bottom:1.25rem;margin-bottom:1.5rem;border-bottom:1px solid var(--neutral-100)}.page-header-left h1{font-size:1.375rem;font-weight:800;letter-spacing:-.025em;color:var(--neutral-900)}.stat-card{background:var(--neutral-0);border:none;border-radius:var(--radius-lg);box-shadow:0 1px 4px #0000000f,0 0 0 1px #0000000a;padding:1.125rem;transition:box-shadow .15s}.stat-card:hover{box-shadow:0 3px 10px #0000001a}.stat-label{font-size:.6875rem;font-weight:700;letter-spacing:.06em}.stat-value{font-size:1.875rem;font-weight:900;letter-spacing:-.03em}.domain-card{background:var(--neutral-0);border:none;box-shadow:0 1px 4px #0000000f,0 0 0 1px #0000000a;border-radius:var(--radius-lg);transition:all .15s}.domain-card:hover{box-shadow:0 4px 14px #1a6bff1f,0 0 0 1.5px var(--brand-300);transform:translateY(-1px)}.tabs{display:flex;gap:4px;background:var(--neutral-100);border-radius:10px;padding:4px;border:none}.tab{padding:.4375rem .875rem;border-radius:7px;font-size:.75rem;font-weight:600;color:var(--neutral-500);border:none;background:none;transition:all .15s;letter-spacing:.02em}.tab:hover{color:var(--neutral-800);background:#fff9}.tab.active{background:#fff;color:var(--brand-600);box-shadow:0 1px 4px #0000001a}.btn-primary{box-shadow:0 1px 3px #1a6bff66,inset 0 1px #ffffff26}.btn-primary:hover:not(:disabled){box-shadow:0 3px 8px #1a6bff66;transform:translateY(-1px)}.btn-secondary{box-shadow:0 1px 2px #0000000d}.health-score-number{font-size:1.125rem;font-weight:900}.alert-banner{border-radius:9px;font-size:.8125rem;border-width:1px}.enforce-step{display:flex;flex-direction:column;align-items:center;flex:1;position:relative}.enforce-node{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:800;border:2.5px solid;transition:all .3s;z-index:1}.enforce-line{position:absolute;top:17px;left:50%;right:-50%;height:3px;border-radius:99px}
