:root{
  --asn-navy:#0d3555;
  --asn-navy-2:#144b73;
  --asn-blue:#2f8fc4;
  --asn-blue-2:#64b8e5;
  --asn-sky:#eaf6fc;
  --asn-bg:#eef3f7;
  --asn-panel:#fff;
  --asn-line:#d7e1e9;
  --asn-text:#173247;
  --asn-muted:#667f90;
  --asn-red:#d64747;
  --asn-green:#198754;
  --asn-amber:#c47a0a;
  --asn-purple:#6f42c1;
  --asn-shadow:0 14px 38px rgba(11,44,68,.14);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--asn-text);background:var(--asn-bg)}
button,input,select,textarea{font:inherit}
a{color:var(--asn-blue);text-decoration:none}
a:hover{text-decoration:underline}
.hidden{display:none!important}

/* Authentication */
.enterprise-auth-page{min-height:100vh;display:grid;place-items:center;padding:30px;background:radial-gradient(circle at 18% 12%,rgba(100,184,229,.2),transparent 34%),linear-gradient(135deg,#eaf6fc,#eef3f7 55%,#dcebf3)}
.enterprise-auth-shell{width:min(1040px,100%);display:grid;grid-template-columns:minmax(300px,.9fr) minmax(380px,1.1fr);background:#fff;border:1px solid rgba(13,53,85,.12);border-radius:20px;overflow:hidden;box-shadow:0 24px 65px rgba(8,43,71,.2)}
.enterprise-auth-brand{padding:54px;background:linear-gradient(145deg,var(--asn-navy),#082b47);color:#fff;display:flex;flex-direction:column;justify-content:space-between;min-height:570px}
.enterprise-auth-logo{display:flex;align-items:center;gap:14px}
.enterprise-auth-logo-mark{width:58px;height:58px;border-radius:15px;background:linear-gradient(145deg,#6ec5ef,#217caf);display:grid;place-items:center;font-weight:900;font-size:19px;box-shadow:inset 0 0 0 2px rgba(255,255,255,.25)}
.enterprise-auth-logo strong{font-size:21px;display:block}.enterprise-auth-logo span{font-size:12px;color:#cce9f7;display:block;margin-top:4px}
.enterprise-auth-brand h1{font-size:36px;line-height:1.08;margin:54px 0 16px}.enterprise-auth-brand p{font-size:15px;line-height:1.6;color:#d4eaf5;max-width:430px}
.enterprise-auth-points{display:grid;gap:12px;margin-top:30px}.enterprise-auth-point{display:flex;gap:10px;font-size:13px;color:#e2f2f9}.enterprise-auth-point b{width:22px;height:22px;border-radius:50%;background:rgba(100,184,229,.26);display:grid;place-items:center;color:#fff;flex:none}
.enterprise-auth-foot{font-size:11px;color:#afd4e7;margin-top:44px}
.enterprise-auth-form{padding:52px;display:flex;flex-direction:column;justify-content:center}
.enterprise-auth-form h2{font-size:28px;margin:0 0 8px}.enterprise-auth-form>p{margin:0 0 26px;color:var(--asn-muted);font-size:14px;line-height:1.55}
.enterprise-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.enterprise-form-field{display:flex;flex-direction:column;gap:6px}.enterprise-form-field.full{grid-column:1/-1}.enterprise-form-field label{font-size:12px;font-weight:800;color:var(--asn-text)}
.enterprise-input,.enterprise-select,.enterprise-textarea{width:100%;border:1px solid #b8c9d5;border-radius:9px;background:#fff;color:var(--asn-text);padding:11px 12px;font-size:14px;outline:none}.enterprise-input:focus,.enterprise-select:focus,.enterprise-textarea:focus{border-color:var(--asn-blue);box-shadow:0 0 0 4px rgba(47,143,196,.13)}.enterprise-textarea{min-height:100px;resize:vertical}
.enterprise-help{font-size:10px;color:var(--asn-muted);line-height:1.35}.enterprise-error,.enterprise-success,.enterprise-warning{padding:12px 14px;border-radius:9px;font-size:12px;line-height:1.45;margin-bottom:18px}.enterprise-error{background:#fff0f0;border:1px solid #f2b9b9;color:#8c2525}.enterprise-success{background:#edf9f2;border:1px solid #b3e0c5;color:#12633b}.enterprise-warning{background:#fff8e8;border:1px solid #efd19a;color:#81520a}
.enterprise-btn{border:1px solid #b8c9d5;background:#fff;color:var(--asn-text);border-radius:8px;padding:9px 13px;font-weight:800;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;min-height:38px}.enterprise-btn:hover{border-color:#78b9dc;box-shadow:0 5px 14px rgba(15,55,82,.12);transform:translateY(-1px)}.enterprise-btn.primary{background:var(--asn-blue);border-color:var(--asn-blue);color:#fff}.enterprise-btn.dark{background:var(--asn-navy-2);border-color:var(--asn-navy-2);color:#fff}.enterprise-btn.success{background:var(--asn-green);border-color:var(--asn-green);color:#fff}.enterprise-btn.danger{background:var(--asn-red);border-color:var(--asn-red);color:#fff}.enterprise-btn.small{padding:6px 9px;min-height:30px;font-size:11px}.enterprise-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}
.enterprise-form-actions{display:flex;align-items:center;gap:10px;margin-top:22px}.enterprise-form-actions .enterprise-btn.primary{min-width:160px}
.enterprise-password-meter{height:5px;border-radius:4px;background:#e5edf2;overflow:hidden;margin-top:4px}.enterprise-password-meter span{display:block;height:100%;width:0;background:var(--asn-red);transition:.2s}

/* Enterprise center */
.enterprise-page{min-height:100vh;background:var(--asn-bg)}
.enterprise-topbar{height:66px;padding:8px 18px;background:linear-gradient(135deg,var(--asn-navy),#082b47);color:#fff;display:flex;align-items:center;gap:16px;box-shadow:0 2px 13px rgba(0,0,0,.2);position:sticky;top:0;z-index:40}
.enterprise-brand{display:flex;align-items:center;gap:10px;min-width:285px}.enterprise-brand-mark{width:42px;height:42px;border-radius:11px;background:linear-gradient(145deg,#6ec5ef,#217caf);display:grid;place-items:center;font-weight:900;box-shadow:inset 0 0 0 2px rgba(255,255,255,.2)}.enterprise-brand-title{font-size:15px;font-weight:900}.enterprise-brand-sub{font-size:10px;color:#cce9f7;margin-top:3px}
.enterprise-topnav{display:flex;gap:6px;align-items:center;flex:1}.enterprise-topnav a,.enterprise-topnav button{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.07);color:#fff;padding:8px 11px;border-radius:7px;font-size:11px;font-weight:800;cursor:pointer}.enterprise-topnav a.active,.enterprise-topnav button.active{background:#fff;color:var(--asn-navy)}
.enterprise-user-chip{margin-left:auto;display:flex;align-items:center;gap:9px}.enterprise-avatar{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:rgba(100,184,229,.27);font-weight:900}.enterprise-user-meta strong{display:block;font-size:11px}.enterprise-user-meta span{display:block;font-size:9px;color:#cce9f7;margin-top:2px}.enterprise-user-menu{display:flex;gap:5px}.enterprise-user-menu a{color:#fff;border:1px solid rgba(255,255,255,.22);border-radius:7px;padding:6px 8px;font-size:10px;font-weight:800}
.enterprise-shell{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:calc(100vh - 66px)}
.enterprise-sidebar{background:#fff;border-right:1px solid var(--asn-line);padding:15px 11px;position:sticky;top:66px;height:calc(100vh - 66px);overflow:auto}.enterprise-side-nav{display:grid;gap:5px}.enterprise-side-nav button{border:0;background:transparent;text-align:left;padding:11px 12px;border-radius:8px;color:var(--asn-text);font-size:12px;font-weight:800;display:flex;align-items:center;gap:10px;cursor:pointer}.enterprise-side-nav button:hover{background:#f0f7fb}.enterprise-side-nav button.active{background:var(--asn-sky);color:var(--asn-blue);box-shadow:inset 3px 0 0 var(--asn-blue)}.enterprise-nav-icon{width:23px;text-align:center;font-size:16px}.enterprise-nav-badge{margin-left:auto;background:var(--asn-red);color:#fff;border-radius:999px;padding:2px 6px;font-size:9px}
.enterprise-sidebar-help{margin-top:20px;border-top:1px solid var(--asn-line);padding:14px 10px;color:var(--asn-muted);font-size:10px;line-height:1.45}
.enterprise-main{padding:22px;min-width:0}.enterprise-page-head{display:flex;align-items:flex-start;gap:14px;margin-bottom:18px}.enterprise-page-head h1{font-size:25px;margin:0 0 5px}.enterprise-page-head p{margin:0;color:var(--asn-muted);font-size:12px;line-height:1.5}.enterprise-page-actions{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}
.enterprise-card{background:#fff;border:1px solid var(--asn-line);border-radius:12px;box-shadow:0 6px 18px rgba(13,53,85,.06);overflow:hidden}.enterprise-card-head{padding:14px 16px;border-bottom:1px solid var(--asn-line);display:flex;align-items:center;gap:10px;background:#fbfdfe}.enterprise-card-head h2,.enterprise-card-head h3{font-size:14px;margin:0}.enterprise-card-head p{font-size:10px;color:var(--asn-muted);margin:3px 0 0}.enterprise-card-body{padding:16px}
.enterprise-metric-grid{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:12px;margin-bottom:18px}.enterprise-metric{background:#fff;border:1px solid var(--asn-line);border-radius:11px;padding:15px;box-shadow:0 5px 15px rgba(13,53,85,.05)}.enterprise-metric span{font-size:10px;color:var(--asn-muted);font-weight:800;text-transform:uppercase;letter-spacing:.5px}.enterprise-metric strong{display:block;font-size:26px;margin-top:7px;color:var(--asn-navy)}.enterprise-metric small{display:block;font-size:9px;color:var(--asn-muted);margin-top:4px}.enterprise-metric.error strong{color:var(--asn-red)}.enterprise-metric.success strong{color:var(--asn-green)}.enterprise-metric.warning strong{color:var(--asn-amber)}
.enterprise-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:16px}
.enterprise-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:13px}.enterprise-toolbar .enterprise-input,.enterprise-toolbar .enterprise-select{width:auto;min-width:180px;padding:8px 10px;font-size:12px}.enterprise-toolbar-spacer{margin-left:auto}
.enterprise-table-wrap{overflow:auto}.enterprise-table{width:100%;border-collapse:collapse;font-size:11px}.enterprise-table th{position:sticky;top:0;background:#f5f9fb;color:var(--asn-muted);text-align:left;padding:10px;border-bottom:1px solid var(--asn-line);font-size:9px;text-transform:uppercase;letter-spacing:.45px;white-space:nowrap}.enterprise-table td{padding:10px;border-bottom:1px solid #e9eff3;vertical-align:top}.enterprise-table tr:hover td{background:#fbfdfe}.enterprise-table .actions{display:flex;gap:5px;white-space:nowrap}.enterprise-table .muted{color:var(--asn-muted)}
.enterprise-status{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.35px;background:#edf3f7;color:#536e7f}.enterprise-status.draft{background:#edf3f7;color:#536e7f}.enterprise-status.in_review{background:#fff4d9;color:#8b5b00}.enterprise-status.changes_requested{background:#fff0e6;color:#9a4d05}.enterprise-status.approved{background:#e9f7ef;color:#166b3f}.enterprise-status.published{background:#e5f4ff;color:#0c6593}.enterprise-status.rejected{background:#ffe8e8;color:#9b2424}.enterprise-status.archived,.enterprise-status.cancelled{background:#ececf1;color:#626273}.enterprise-status.active{background:#e9f7ef;color:#166b3f}.enterprise-status.disabled,.enterprise-status.retired{background:#ffe8e8;color:#9b2424}
.enterprise-list{display:grid;gap:9px}.enterprise-list-item{border:1px solid var(--asn-line);border-radius:9px;padding:11px 12px;background:#fff}.enterprise-list-item-head{display:flex;align-items:center;gap:8px}.enterprise-list-item strong{font-size:12px}.enterprise-list-item p{font-size:10px;color:var(--asn-muted);line-height:1.45;margin:5px 0 0}.enterprise-list-item time{font-size:9px;color:var(--asn-muted);margin-left:auto}
.enterprise-empty{text-align:center;padding:38px 20px;color:var(--asn-muted)}.enterprise-empty strong{display:block;font-size:15px;color:var(--asn-text);margin-bottom:6px}
.enterprise-modal-backdrop{position:fixed;inset:0;background:rgba(4,24,39,.68);display:grid;place-items:center;padding:20px;z-index:200}.enterprise-modal{width:min(760px,100%);max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-radius:14px;box-shadow:0 26px 80px rgba(0,0,0,.32)}.enterprise-modal.large{width:min(1080px,100%)}.enterprise-modal-head{padding:17px 20px;border-bottom:1px solid var(--asn-line);display:flex;align-items:flex-start;gap:12px;position:sticky;top:0;background:#fff;z-index:2}.enterprise-modal-head h2{margin:0;font-size:18px}.enterprise-modal-head p{margin:4px 0 0;font-size:11px;color:var(--asn-muted)}.enterprise-modal-close{margin-left:auto;border:0;background:#edf3f7;border-radius:8px;width:34px;height:34px;font-size:20px}.enterprise-modal-body{padding:20px}.enterprise-modal-actions{padding:14px 20px;border-top:1px solid var(--asn-line);display:flex;justify-content:flex-end;gap:8px;position:sticky;bottom:0;background:#fff}
.enterprise-tabs{display:flex;gap:4px;border-bottom:1px solid var(--asn-line);padding:0 16px;background:#fbfdfe}.enterprise-tabs button{border:0;background:transparent;padding:12px 10px;font-size:11px;font-weight:900;color:var(--asn-muted);border-bottom:3px solid transparent}.enterprise-tabs button.active{color:var(--asn-blue);border-bottom-color:var(--asn-blue)}
.enterprise-split{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:16px}.enterprise-review-detail{min-height:520px}.enterprise-review-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:14px}.enterprise-review-summary div{background:#f5f9fb;border:1px solid var(--asn-line);border-radius:8px;padding:10px}.enterprise-review-summary span{display:block;font-size:9px;color:var(--asn-muted);text-transform:uppercase;font-weight:800}.enterprise-review-summary strong{display:block;font-size:12px;margin-top:5px}
.enterprise-comment{border-left:3px solid var(--asn-blue);padding:10px 12px;background:#f7fbfd;border-radius:0 8px 8px 0;margin-bottom:9px}.enterprise-comment.resolved{opacity:.65;border-left-color:var(--asn-green)}.enterprise-comment-head{display:flex;gap:8px;align-items:center;font-size:10px}.enterprise-comment-head time{margin-left:auto;color:var(--asn-muted)}.enterprise-comment p{font-size:11px;line-height:1.5;margin:7px 0}.enterprise-comment-meta{font-size:9px;color:var(--asn-muted)}
.enterprise-timeline{position:relative;padding-left:18px}.enterprise-timeline:before{content:"";position:absolute;left:5px;top:8px;bottom:8px;width:2px;background:#d7e1e9}.enterprise-timeline-item{position:relative;padding:0 0 15px 10px}.enterprise-timeline-item:before{content:"";position:absolute;left:-17px;top:4px;width:10px;height:10px;border-radius:50%;background:var(--asn-blue);box-shadow:0 0 0 3px #fff}.enterprise-timeline-item strong{font-size:11px}.enterprise-timeline-item p{margin:4px 0;font-size:10px;color:var(--asn-muted)}.enterprise-timeline-item time{font-size:9px;color:#8ca0ad}
.enterprise-rule-card{border:1px solid var(--asn-line);border-radius:10px;padding:13px;background:#fff}.enterprise-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:12px}.enterprise-rule-card h3{font-size:13px;margin:0}.enterprise-rule-card p{font-size:10px;color:var(--asn-muted);line-height:1.45}.enterprise-rule-meta{display:flex;gap:6px;flex-wrap:wrap}.enterprise-tag{display:inline-flex;padding:3px 7px;border-radius:999px;background:#edf3f7;color:#526b7b;font-size:9px;font-weight:800}
.enterprise-audit-ok{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid #a9d8ba;background:#effaf3;border-radius:10px;color:#155f39}.enterprise-audit-bad{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid #efaaaa;background:#fff0f0;border-radius:10px;color:#8d2424}.enterprise-hash{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:9px;word-break:break-all;color:var(--asn-muted)}
.enterprise-spinner{width:28px;height:28px;border:3px solid #d9e5ec;border-top-color:var(--asn-blue);border-radius:50%;animation:enterprise-spin .7s linear infinite}@keyframes enterprise-spin{to{transform:rotate(360deg)}}.enterprise-loading{display:grid;place-items:center;min-height:220px;gap:10px;color:var(--asn-muted);font-size:11px}
.enterprise-toast-stack{position:fixed;right:16px;bottom:16px;display:grid;gap:8px;z-index:400}.enterprise-toast{background:#173247;color:#fff;padding:11px 14px;border-radius:9px;box-shadow:0 10px 28px rgba(0,0,0,.22);font-size:11px;max-width:390px}.enterprise-toast.success{background:#17663e}.enterprise-toast.error{background:#992f2f}.enterprise-toast.warning{background:#875600}

/* Studio integration */
.enterprise-studio-tools{display:flex;align-items:center;gap:6px}.enterprise-studio-status{display:inline-flex;align-items:center;border-radius:999px;padding:5px 8px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);color:#fff;font-size:9px;font-weight:900;text-transform:uppercase;white-space:nowrap}.enterprise-studio-status.in_review{background:#8a5b00}.enterprise-studio-status.approved{background:#15683e}.enterprise-studio-status.published{background:#126b96}.enterprise-current-user{display:flex;align-items:center;gap:7px;color:#fff}.enterprise-current-user .enterprise-avatar{width:30px;height:30px;font-size:10px}.enterprise-current-user-meta{max-width:130px}.enterprise-current-user-meta strong{font-size:10px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.enterprise-current-user-meta span{font-size:8px;color:#cce9f7;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.enterprise-review-button{background:#7f5fc3!important;border-color:#7f5fc3!important;color:#fff!important}.enterprise-notification-button{position:relative}.enterprise-notification-count{position:absolute;right:-4px;top:-5px;background:var(--asn-red);color:#fff;border-radius:999px;min-width:16px;height:16px;display:grid;place-items:center;font-size:8px;font-weight:900}

@media(max-width:1180px){.enterprise-metric-grid{grid-template-columns:repeat(3,1fr)}.enterprise-dashboard-grid{grid-template-columns:1fr}.enterprise-topnav{overflow:auto}.enterprise-user-meta{display:none}}
@media(max-width:820px){.enterprise-auth-shell{grid-template-columns:1fr}.enterprise-auth-brand{min-height:auto;padding:30px}.enterprise-auth-brand h1{font-size:28px;margin:30px 0 12px}.enterprise-auth-points{display:none}.enterprise-auth-form{padding:30px}.enterprise-shell{grid-template-columns:1fr}.enterprise-sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid var(--asn-line)}.enterprise-side-nav{grid-template-columns:repeat(3,1fr)}.enterprise-side-nav button{justify-content:center}.enterprise-side-nav button span:not(.enterprise-nav-icon):not(.enterprise-nav-badge){display:none}.enterprise-main{padding:14px}.enterprise-topbar{height:auto;min-height:66px;flex-wrap:wrap}.enterprise-brand{min-width:0}.enterprise-topnav{order:3;width:100%}.enterprise-metric-grid{grid-template-columns:repeat(2,1fr)}.enterprise-split{grid-template-columns:1fr}.enterprise-rule-grid{grid-template-columns:1fr}.enterprise-review-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.enterprise-form-grid{grid-template-columns:1fr}.enterprise-form-field.full{grid-column:auto}.enterprise-auth-form{padding:24px}.enterprise-auth-brand{padding:24px}.enterprise-metric-grid{grid-template-columns:1fr}.enterprise-page-head{display:block}.enterprise-page-actions{margin:12px 0 0}.enterprise-side-nav{grid-template-columns:repeat(2,1fr)}}

/* Enterprise v2.0 detail treatments */
.enterprise-warning-inline{display:inline-block;margin-top:5px;padding:3px 7px;border-radius:999px;background:#fff4d9;color:#8b5b00;font-size:9px;font-weight:800}
.enterprise-detail-list{display:grid;grid-template-columns:110px minmax(0,1fr);gap:9px 12px;margin:0}.enterprise-detail-list dt{font-size:9px;color:var(--asn-muted);font-weight:900;text-transform:uppercase;letter-spacing:.35px}.enterprise-detail-list dd{margin:0;font-size:11px;line-height:1.45;min-width:0}
.enterprise-decision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.enterprise-comment-compose{border-top:1px solid var(--asn-line);margin-top:14px;padding-top:14px;display:grid;gap:10px}.enterprise-rule-value{margin-top:10px;padding:8px 9px;border-radius:7px;background:#f5f9fb;border:1px solid #e1ebf1;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:9px;word-break:break-word;color:#405b6d}.enterprise-checkbox{display:flex;align-items:flex-start;gap:8px;font-size:12px;line-height:1.45;font-weight:700}.enterprise-checkbox input{margin-top:2px}.enterprise-list-item.unread{border-left:4px solid var(--asn-blue);background:#f7fcff}
.enterprise-error-inline{display:inline-block;padding:3px 7px;border-radius:999px;background:#ffe8e8;color:#9b2424;font-size:9px;font-weight:800}
@media(max-width:620px){.enterprise-decision-grid{grid-template-columns:1fr}.enterprise-detail-list{grid-template-columns:1fr;gap:3px}.enterprise-detail-list dd{margin-bottom:8px}}
.enterprise-permission-hidden{display:none!important}
.topbar .enterprise-current-user{margin-left:2px;padding-left:8px;border-left:1px solid rgba(255,255,255,.18)}
.topbar .enterprise-current-user .btn{min-height:30px;padding:5px 7px;font-size:9px}
.enterprise-fill-role .designer-access,.enterprise-fill-role .design-only{display:none!important}
.enterprise-view-role [data-left-tab="fields"],.enterprise-view-role [data-action="save-project"],.enterprise-view-role [data-action="export-pdf"],.enterprise-view-role [data-action="open-production"]{display:none!important}
@media(max-width:1350px){.topbar .enterprise-current-user-meta{display:none}.topbar .enterprise-current-user .btn .label{display:none}}
@media(max-width:980px){.topbar .enterprise-current-user{width:100%;order:4;border-left:0;border-top:1px solid rgba(255,255,255,.15);padding:6px 0 0;justify-content:flex-end}}
