:root{--navy:#07143B;--deep:#020A24;--blue:#008FFD;--violet:#8B45F5;--pink:#FF3D98;--light:#F4F6FA;--ink:#121B38;--muted:#6B7692;--line:#E4E8F1;--green:#19B96E;--orange:#F59E0B;--red:#EB3D62;--shadow:0 8px 24px rgba(10,22,55,.06);--shadow-lg:0 22px 60px rgba(7,20,59,.16);--grad:linear-gradient(120deg,var(--pink),var(--violet),var(--blue));--sidebar:220px;--radius:14px}
*{box-sizing:border-box}html{background:#f4f6fa}body{margin:0;font-family:"Elms Sans",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);font-size:14px}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{text-decoration:none;color:inherit}svg.icon{display:inline-block;vertical-align:middle;flex:none}.app-shell{min-height:100vh;background:#f7f8fb}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:linear-gradient(180deg,#07142f 0%,#041027 100%);color:#dce4f7;display:flex;flex-direction:column;z-index:50;border-right:1px solid rgba(255,255,255,.07);transition:.2s ease;overflow:hidden}.brand{height:66px;display:flex;align-items:center;padding:10px 17px;border-bottom:1px solid rgba(255,255,255,.08)}.brand img{width:155px;height:auto;max-height:48px;object-fit:contain}.nav-list{padding:16px 10px;display:flex;flex-direction:column;gap:3px;overflow:auto}.nav-link{display:flex;align-items:center;gap:11px;padding:10px 11px;border-radius:9px;color:#bec8df;white-space:nowrap;font-weight:570;transition:.18s}.nav-link:hover{background:rgba(255,255,255,.06);color:#fff}.nav-link.active{background:linear-gradient(90deg,#3c55e9,#9a35e9);color:#fff;box-shadow:0 7px 20px rgba(139,69,245,.26)}.security-card{margin:auto 14px 12px;padding:18px 15px;border:1px solid rgba(139,69,245,.28);background:linear-gradient(165deg,rgba(16,33,74,.84),rgba(8,21,52,.92));border-radius:13px;text-align:center}.security-orb{width:58px;height:58px;border-radius:18px;margin:0 auto 13px;display:grid;place-items:center;color:#b68cff;background:radial-gradient(circle,#8b45f542,#8b45f514);box-shadow:0 0 25px #8b45f54f}.security-card strong{font-size:16px;line-height:1.35;color:#fff}.security-card p{font-size:11.5px;line-height:1.55;color:#9faeca;margin:9px 0}.security-link{font-size:11px;color:#c18cff}.collapse-btn{border:0;border-top:1px solid rgba(255,255,255,.06);background:transparent;color:#9cabc7;padding:13px 18px;display:flex;align-items:center;gap:10px;cursor:pointer;text-align:left}.sidebar.collapsed{width:68px}.sidebar.collapsed .brand{padding:11px 8px}.sidebar.collapsed .brand img{width:52px;object-fit:cover;object-position:right}.sidebar.collapsed .nav-link span,.sidebar.collapsed .security-card,.sidebar.collapsed .collapse-btn span{display:none}.sidebar.collapsed .nav-link{justify-content:center}.sidebar.collapsed~.main-wrap{margin-left:68px}.main-wrap{margin-left:var(--sidebar);min-height:100vh;transition:.2s ease}.topbar{height:66px;background:#041027;color:white;display:flex;align-items:center;padding:0 24px;gap:14px;position:sticky;top:0;z-index:40;border-bottom:1px solid rgba(255,255,255,.07)}.mobile-menu{display:none}.global-search{width:min(430px,40vw);height:40px;border:1px solid rgba(255,255,255,.13);background:#0a1835;border-radius:10px;display:flex;align-items:center;gap:9px;padding:0 11px;color:#8ea0bf}.global-search input{border:0;background:transparent;color:white;outline:0;width:100%;font-size:13px}.global-search input::placeholder{color:#8694af}.global-search kbd{font-family:inherit;font-size:10px;color:#94a2bc;background:#122243;padding:3px 6px;border-radius:5px;border:1px solid rgba(255,255,255,.08);white-space:nowrap}.top-spacer{flex:1}.secure-pill{display:flex;align-items:center;gap:8px;color:#68dda5;border:1px solid rgba(71,222,151,.15);background:rgba(28,115,76,.16);padding:7px 10px;border-radius:10px}.secure-pill div{display:flex;flex-direction:column}.secure-pill strong{color:#eafff3;font-size:11px}.secure-pill small{color:#71d7a5;font-size:9px}.secure-pill.light{background:#effcf6;color:#19a664;border-color:#d9f5e5}.secure-pill.light strong{color:#147149}.icon-btn{width:36px;height:36px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#53607d;display:inline-grid;place-items:center;cursor:pointer}.topbar .icon-btn{background:transparent;border-color:rgba(255,255,255,.1);color:#d9e2f4}.icon-btn.small{width:29px;height:29px;border-radius:7px}.user-menu a{display:flex;align-items:center;gap:9px}.avatar,.mini-avatar,.big-avatar{display:grid;place-items:center;background:linear-gradient(145deg,#e8e0ff,#f6e9ff);color:#7745da;font-weight:800}.avatar{width:36px;height:36px;border-radius:50%}.user-menu span:last-child{display:flex;flex-direction:column}.user-menu strong{font-size:11px}.user-menu small{font-size:9px;color:#94a2bd}.content{padding:22px 25px 28px;min-height:calc(100vh - 102px);max-width:1700px;margin:0 auto}.footer{height:36px;padding:0 25px;display:flex;align-items:center;justify-content:space-between;color:#7c879f;font-size:10px;border-top:1px solid #e6e9f0;background:#fff}.system-ok{background:#eafbf2;color:#12985c;padding:4px 8px;border-radius:7px;margin-left:8px;font-weight:600}.page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.page-head h1{font-size:25px;letter-spacing:-.03em;margin:0 0 5px;display:flex;align-items:center;gap:8px}.page-head p{margin:0;color:var(--muted);font-size:12px}.date-chip,.chip{display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 10px;color:#53607a;font-size:11px}.head-actions{display:flex;gap:8px}.btn{border:0;border-radius:9px;padding:10px 14px;font-weight:750;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;transition:.18s}.btn:hover{transform:translateY(-1px)}.btn-primary{color:#fff;background:linear-gradient(90deg,#7250f4,#953ae8);box-shadow:0 6px 15px rgba(139,69,245,.18)}.btn-soft{background:#fff;border:1px solid var(--line);color:#46536f}.btn-danger{background:#e83d61;color:white}.btn-danger-soft{background:#fff2f5;color:#dc3559;border:1px solid #ffd8e0}.btn-violet{background:#f0eaff;color:#7a42de}.btn-mini{padding:6px 9px;font-size:10px}.btn-block{width:100%}.panel{background:#fff;border:1px solid #e3e7ef;border-radius:var(--radius);box-shadow:0 2px 8px rgba(16,28,62,.025);padding:14px}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 12px}.panel-title h3{font-size:13.5px;margin:0;color:#1b2443}.panel-title p{font-size:10px;color:#8a94a9;margin:3px 0 0}.panel-title>a{font-size:10px;color:#6449e5;font-weight:700}.kpi-grid{display:grid;gap:11px;margin-bottom:14px}.kpi-grid.six{grid-template-columns:repeat(6,1fr)}.kpi-grid.four{grid-template-columns:repeat(4,1fr)}.kpi-card{position:relative;overflow:hidden;min-height:130px;background:#fff;border:1px solid #e3e7ef;border-radius:12px;padding:13px;box-shadow:0 3px 10px rgba(22,36,69,.025)}.kpi-card.compact{min-height:auto;display:flex;align-items:center;gap:13px;padding:14px}.kpi-card.compact>div:last-child{display:flex;flex-direction:column;gap:3px}.kpi-card.compact small{font-size:10px;color:#69748e}.kpi-card.compact strong{font-size:20px}.kpi-icon{width:35px;height:35px;border-radius:9px;display:grid;place-items:center;margin-bottom:8px}.kpi-card.compact .kpi-icon{margin:0}.tone-purple{background:#f0eaff;color:#8549ea}.tone-pink{background:#ffeaf2;color:#f23b79}.tone-orange{background:#fff3df;color:#f59c16}.tone-blue{background:#e9f3ff;color:#3185f4}.tone-green{background:#eafaf2;color:#20ad6c}.tone-violet{background:#f1eaff;color:#7149ef}.kpi-value{font-size:21px;font-weight:850;letter-spacing:-.025em}.kpi-label{font-size:10.5px;font-weight:730;margin-top:5px}.kpi-meta{font-size:8.8px;color:#8994ab;margin-top:5px}.kpi-meta .up{color:#16b66a}.spark{position:absolute;left:12px;right:12px;bottom:9px;width:calc(100% - 24px);height:23px}.spark polyline{fill:none;stroke:#7c52ed;stroke-width:1.4;vector-effect:non-scaling-stroke}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-bottom:14px}.quick{border-radius:10px;padding:11px 14px;display:flex;align-items:center;gap:11px;color:#fff;min-height:56px}.quick.purple{background:linear-gradient(90deg,#5557e8,#9343e9)}.quick.pink{background:linear-gradient(90deg,#d83a8b,#fa3689)}.quick.blue{background:linear-gradient(90deg,#2261e7,#317ef1)}.quick.violet{background:linear-gradient(90deg,#694ae7,#9d44e8)}.quick span{display:flex;flex-direction:column}.quick b{font-size:11px}.quick small{font-size:8.5px;opacity:.78;margin-top:2px}.quick em{font-style:normal;margin-left:auto}.dashboard-grid{display:grid;grid-template-columns:1.2fr 1fr .95fr;gap:12px;margin-bottom:12px}.chart-panel{min-height:250px}.line-chart{height:190px;display:flex;flex-direction:column;padding:5px 2px}.line-chart svg{width:100%;height:160px;overflow:visible}.chart-labels{display:grid;grid-template-columns:repeat(12,1fr);font-size:8px;color:#8a94ab;text-align:center}.bar-chart{height:190px;display:flex;align-items:flex-end;gap:6px;padding:15px 5px 0;border-bottom:1px solid #e8ebf2}.bar-item{height:100%;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:5px;min-width:0}.bar{width:72%;border-radius:4px 4px 1px 1px;background:linear-gradient(180deg,#8257ee,#6447dc);position:relative;min-height:3px}.bar b{position:absolute;top:-16px;font-size:7px;color:#55617a;width:100%;text-align:center}.bar-item span{font-size:7.5px;color:#808ca4}.mix-wrap{display:flex;align-items:center;gap:18px;padding:12px 4px}.donut{width:145px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;position:relative;flex:none}.donut:after{content:"";position:absolute;width:62%;height:62%;border-radius:50%;background:#fff}.donut>div{position:relative;z-index:1;display:flex;flex-direction:column;text-align:center}.donut strong{font-size:21px}.donut span{font-size:9px;color:#7c879f}.legend{flex:1;display:flex;flex-direction:column;gap:10px}.legend>div{display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:7px;font-size:9px}.legend i{width:7px;height:7px;border-radius:50%;background:var(--dot)}.legend b{font-size:8px;color:#66718c}.lower-grid{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(280px,.8fr);gap:12px}.stack{display:flex;flex-direction:column;gap:12px}.table-wrap{width:100%;overflow:auto}table{width:100%;border-collapse:collapse;min-width:680px}th{text-align:left;color:#6f7b94;font-size:8.5px;font-weight:750;padding:9px 9px;border-bottom:1px solid #e8ebf2;background:#fafbfc}td{padding:9px;font-size:9.5px;border-bottom:1px solid #edf0f5;vertical-align:middle;color:#3b4763}tbody tr:hover{background:#fafbff}.selected-row{background:#f7f2ff!important}.empty{text-align:center!important;padding:28px!important;color:#929cb1!important}.entity{display:flex;align-items:center;gap:8px;min-width:135px}.entity strong{display:block;color:#25304b;font-size:9.8px}.entity small{display:block;color:#8a96ad;margin-top:2px;font-size:8px}.mini-avatar{width:27px;height:27px;border-radius:50%;font-size:8px;flex:none}.service-icon{width:27px;height:27px;border-radius:8px;background:#edf2ff;color:#526ff2;display:grid;place-items:center;flex:none}.count-chip,.type-pill{display:inline-flex;padding:3px 6px;border-radius:6px;background:#edf3ff;color:#4d71df;font-size:7.5px;font-weight:750}.count-chip.purple{background:#f2ebff;color:#874ce1}.badge{display:inline-flex;align-items:center;padding:3px 7px;border-radius:999px;font-size:7.5px;font-weight:800;white-space:nowrap}.badge-active,.badge-paid{background:#e9f9f0;color:#169456}.badge-pending{background:#fff3e2;color:#d77f0b}.badge-inactive,.badge-cancelled{background:#eef0f4;color:#737e92}.badge-expired,.badge-overdue{background:#ffeaee;color:#d83b59}.cell-stack{display:flex;flex-direction:column;gap:2px}.cell-stack small{font-size:7.5px;color:#909bae}.due{display:block;font-size:7px;color:#8d98ae;margin-top:2px}.due.warn{color:#de8508}.due.danger,.text-danger{color:#de3c5b!important}.text-success{color:#12a360!important}.truncate{display:inline-block;max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.security-alert{padding:10px;border-radius:9px;background:#f8fafc;display:flex;gap:9px;align-items:flex-start;color:#64718c;margin:7px 0}.security-alert.red{background:#fff0f3;color:#dd3c60}.security-alert.amber{background:#fff7e9;color:#d18412}.security-alert span{display:flex;flex-direction:column}.security-alert b{font-size:9px;color:#293451}.security-alert small{font-size:7.8px;margin-top:2px}.alert-count{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#ffe9ef;color:#db3658;font-size:8px}.activity-list{display:flex;flex-direction:column}.activity{display:flex;gap:10px;padding:8px 2px;border-bottom:1px solid #eef0f4}.activity:last-child{border-bottom:0}.activity-dot{width:9px;height:9px;border-radius:50%;background:#4d72e8;margin-top:3px;box-shadow:0 0 0 4px #edf2ff}.activity-dot.warning{background:#f4a019;box-shadow:0 0 0 4px #fff5df}.activity-dot.critical{background:#ef4165;box-shadow:0 0 0 4px #ffeef2}.activity>div{display:flex;flex-direction:column}.activity strong{font-size:9px;color:#2d3854}.activity small{font-size:7.5px;color:#8a95aa;margin-top:2px}.compact-list .activity{padding:7px 0}.filterbar{display:flex;gap:9px;background:#fff;border:1px solid var(--line);border-radius:11px;padding:10px;margin-bottom:13px}.search-field{flex:1;display:flex;align-items:center;gap:8px;border:1px solid #dfe3eb;border-radius:8px;padding:0 9px;color:#8590a7}.search-field input{border:0;outline:0;width:100%;height:36px}.filterbar select,.form-grid select,.form-grid input,.form-grid textarea,.modal-card>label input,.modal-card>label select,.totp-setup input{border:1px solid #dfe3eb;border-radius:8px;background:white;color:#26314b;padding:9px 10px;outline:none;width:100%}.filterbar select{min-width:160px}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.modal-card input:focus,.modal-card select:focus{border-color:#9360ec;box-shadow:0 0 0 3px rgba(139,69,245,.1)}.split-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,1fr);gap:12px}.services-layout{grid-template-columns:minmax(0,2fr) minmax(310px,.8fr)}.detail-panel{min-height:420px}.client-head{display:flex;align-items:flex-start;gap:11px;padding-bottom:12px}.big-avatar{width:46px;height:46px;border-radius:50%;font-size:11px;flex:none}.big-avatar.square{border-radius:12px;background:#edf1ff;color:#7651e6}.client-head h2{font-size:16px;margin:0}.client-head p{font-size:9.5px;color:#7b879f;margin:4px 0}.title-row{display:flex;align-items:center;gap:8px}.contact-line{font-size:8px;color:#70809b;display:flex;align-items:center;gap:5px;flex-wrap:wrap}.tabs{display:flex;border-bottom:1px solid #e7eaf1;margin:0 -14px 12px;padding:0 14px;gap:8px}.tabs button,.tabs a{border:0;background:transparent;padding:8px 7px;font-size:9px;color:#67738d;position:relative;cursor:pointer}.tabs .active{color:#7548e9;font-weight:800}.tabs .active:after{content:"";position:absolute;left:5px;right:5px;bottom:-1px;height:2px;background:#844af0}.section-label{font-size:10.5px;margin:13px 0 8px}.service-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.service-mini{border:1px solid #e6e9f0;border-radius:9px;padding:8px;display:grid;grid-template-columns:auto 1fr auto;gap:7px;align-items:start}.service-mini>div:nth-child(2){display:flex;flex-direction:column}.service-mini strong{font-size:8.8px}.service-mini small{font-size:7px;color:#8792a7;margin-top:2px}.service-mini span{font-size:6.8px;color:#697691;margin-top:3px}.service-mini .service-icon{width:24px;height:24px}.empty-card{grid-column:1/-1;border:1px dashed #dfe4ed;border-radius:9px;padding:18px;text-align:center;color:#8d97aa;font-size:9px}.domain-list>div{display:flex;align-items:center;justify-content:space-between;padding:7px 2px;border-bottom:1px solid #edf0f4;font-size:8.5px}.domain-list>div span:first-child{display:flex;align-items:center;gap:6px}.domain-list>div span:last-child{color:#7c88a0}.detail-actions{display:flex;gap:7px;margin-top:14px;padding-top:12px;border-top:1px solid #eef0f4}.inline-form{display:inline-flex}.empty-detail{height:380px;display:grid;place-items:center;align-content:center;text-align:center;color:#9aa4b6}.empty-detail svg{color:#a485ed}.empty-detail h3{font-size:14px;margin:13px 0 4px;color:#33405d}.empty-detail p{font-size:9px;max-width:240px;line-height:1.5}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.info-grid>div{border:1px solid #e7eaf0;border-radius:8px;padding:9px;display:flex;flex-direction:column}.info-grid small{font-size:7px;color:#8995aa}.info-grid strong{font-size:9px;margin-top:3px}.note-box{border:1px solid #e6e9f0;background:#fbfcfe;border-radius:9px;padding:10px;margin-top:10px}.note-box strong{font-size:9px}.note-box p{font-size:8.5px;color:#65728d;line-height:1.5;margin:5px 0 0;word-break:break-word}.category-tabs{display:flex;gap:7px;overflow:auto;margin-bottom:12px;padding-bottom:2px}.category-tabs a{border:1px solid #e1e5ed;background:#fff;color:#5f6d87;border-radius:9px;padding:9px 11px;font-size:9px;font-weight:650;white-space:nowrap}.category-tabs a.active{border-color:#8955e9;background:#f8f3ff;color:#7844df}.category-tabs b{margin-left:5px;background:#eee8ff;padding:2px 5px;border-radius:6px}.vault-banner{display:grid;grid-template-columns:auto minmax(250px,1.7fr) repeat(3,minmax(130px,.6fr));align-items:center;gap:15px;background:linear-gradient(120deg,#07143B,#10184A);border:1px solid #172859;border-radius:13px;padding:16px 18px;color:white;margin-bottom:12px;box-shadow:0 12px 30px rgba(7,20,59,.12)}.vault-shield{width:64px;height:64px;border-radius:17px;background:radial-gradient(circle,#8b45f554,#8b45f51a);display:grid;place-items:center;color:#b28aff;box-shadow:0 0 24px #8b45f545}.vault-copy h3{font-size:13px;margin:0}.vault-copy p{font-size:8.5px;line-height:1.5;color:#afbdd8;margin:4px 0}.vault-copy span{font-size:7.5px;color:#4cda96}.vault-feature{border-left:1px solid rgba(255,255,255,.08);padding-left:13px;display:flex;flex-direction:column}.vault-feature b{font-size:8.5px;display:flex;align-items:center;gap:5px}.vault-feature small{font-size:7px;color:#96a6c5;margin-top:3px}.vault-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(320px,.85fr);gap:12px}.credential-detail{min-height:600px}.secure-info{border:1px solid #e5e8ef;border-radius:10px;overflow:hidden}.secure-row{display:grid;grid-template-columns:110px 1fr auto;align-items:center;gap:8px;padding:9px 10px;border-bottom:1px solid #edf0f4}.secure-row:last-child{border-bottom:0}.secure-row>span{font-size:8px;color:#78849d}.secure-row code,.secure-row strong{font-size:8.5px;color:#27324e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.copy-icon{border:0;background:#f4f6fa;color:#697691;width:25px;height:25px;border-radius:6px;display:grid;place-items:center;cursor:pointer}.credential-actions{display:flex;gap:7px;flex-wrap:wrap}.token-box{margin-top:13px;border:1px solid #e4e7ef;border-radius:10px;padding:11px;background:linear-gradient(180deg,#fff,#faf9ff)}.token-box h4{font-size:10px;margin:0 0 4px}.token-box p{font-size:8px;color:#76829a;line-height:1.5}.token-result{border:1px solid #dcd5fb;background:#faf8ff;border-radius:10px;padding:10px 12px;margin-bottom:12px;display:flex;justify-content:space-between;gap:12px;align-items:center}.token-result>div:first-child{display:grid;grid-template-columns:auto 1fr;column-gap:7px}.token-result strong{font-size:9px}.token-result small{grid-column:2;font-size:7.5px;color:#7e89a0}.copy-field{display:flex;gap:6px;flex:1;max-width:520px}.copy-field input{width:100%;border:1px solid #e0e3ea;border-radius:7px;padding:7px;font-size:8px;color:#647089}.audit-mini{padding-top:12px;margin-top:12px;border-top:1px solid #eef0f4}.audit-mini p{font-size:8px;color:#818ca3;line-height:1.5}.billing-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,.7fr);gap:12px;margin-bottom:12px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.method-list>div{display:grid;grid-template-columns:80px 1fr 25px;align-items:center;gap:8px;padding:7px 0;font-size:8.5px}.progress{height:6px;background:#eef1f5;border-radius:5px;overflow:hidden}.progress i{display:block;height:100%;background:linear-gradient(90deg,#7652eb,#a545e8);border-radius:5px}.profit-block{background:linear-gradient(140deg,#f6f3ff,#eef7ff);border:1px solid #e6e1fb;border-radius:11px;padding:16px;display:flex;flex-direction:column}.profit-block small{font-size:8px;color:#77839b}.profit-block strong{font-size:24px;margin-top:5px}.profit-block span{font-size:8px;color:#18a663;margin-top:5px}.renewal-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}.renewal-summary>div{background:#fff;border:1px solid #e4e7ef;border-radius:11px;padding:13px;display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center}.renewal-summary span{grid-row:1/3;width:36px;height:36px;border-radius:9px;display:grid;place-items:center}.renewal-summary b{font-size:19px}.renewal-summary small{font-size:8px;color:#7b879f}.priority{display:inline-flex;padding:3px 6px;border-radius:6px;font-size:7px;font-weight:800;background:#eef1f6;color:#66728b}.priority-crítica{background:#ffe8ed;color:#db3556}.priority-alta{background:#fff0df;color:#d9820a}.priority-media{background:#f2eaff;color:#7f46e0}.role-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:12px}.role-cards{display:flex;flex-direction:column;gap:7px}.role-card{border:1px solid #e5e8ef;border-radius:10px;padding:11px;display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center}.role-card.selected{border-color:#aa8cf1;background:#faf7ff}.role-icon{width:36px;height:36px;border-radius:9px;background:#f0eaff;color:#8050df;display:grid;place-items:center}.role-card>div:nth-child(2){display:flex;flex-direction:column}.role-card strong{font-size:10px}.role-card small{font-size:8px;color:#7c879d;margin-top:2px}.role-card span{font-size:7px;color:#9aa3b4;margin-top:4px}.permission-preview{display:flex;flex-wrap:wrap;gap:6px}.permission-preview span{display:flex;align-items:center;gap:4px;border:1px solid #e3e7ee;background:#fafbfc;border-radius:7px;padding:5px 7px;font-size:7.5px;color:#52607a}.permission-groups{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;max-height:420px;overflow:auto}.permission-groups fieldset{border:1px solid #e3e7ee;border-radius:9px;padding:9px}.permission-groups legend{font-size:9px;font-weight:800;padding:0 5px;color:#495672}.permission-check{display:flex;align-items:flex-start;gap:7px;padding:5px 0;cursor:pointer}.permission-check input{width:auto;margin-top:2px}.permission-check span{display:flex;flex-direction:column;font-size:8px;font-weight:600}.permission-check small{font-size:6.7px;color:#9aa4b6;margin-top:2px}.severity{font-size:7px;padding:3px 6px;border-radius:6px;background:#edf1f7;color:#66738c;font-weight:800}.severity-warning{background:#fff1df;color:#cf7e10}.severity-critical{background:#ffe9ee;color:#d63959}.json-view{background:#07142f;color:#d7e1f5;border-radius:9px;padding:13px;overflow:auto;max-height:360px;font-size:11px;line-height:1.55}.settings-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:12px;max-width:1080px}.security-checklist{display:flex;flex-direction:column}.security-checklist>div{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid #edf0f4;color:#1dab69}.security-checklist>div:last-child{border-bottom:0}.security-checklist span{display:flex;flex-direction:column}.security-checklist strong{font-size:9px;color:#34405b}.security-checklist small{font-size:7.5px;color:#8893a8;margin-top:2px}.profile-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:1120px}.profile-identity{display:flex;align-items:center;gap:13px;margin-bottom:16px}.profile-identity .big-avatar{width:60px;height:60px;font-size:14px}.profile-identity h2{margin:0;font-size:17px}.profile-identity p{color:#7f8aa0;font-size:9px}.twofa-panel{min-height:280px}.twofa-active,.twofa-empty{display:flex;gap:14px;align-items:flex-start;background:#f2fff7;border:1px solid #d8f5e4;color:#19a363;padding:13px;border-radius:10px;margin-bottom:13px}.twofa-active strong{font-size:9px;color:#294538}.twofa-active p,.twofa-empty p{font-size:8px;color:#617c6c;line-height:1.5;margin:4px 0}.totp-setup p{font-size:8.5px;line-height:1.55;color:#65728c}.secret-box{background:#07142f;color:white;border-radius:9px;padding:11px;display:grid;grid-template-columns:1fr auto;gap:4px}.secret-box small{grid-column:1/-1;color:#9aabc7;font-size:7px}.secret-box code{font-size:13px;letter-spacing:1px;overflow-wrap:anywhere}.secret-box button{background:#17274a;color:#dbe5f7;border:0;border-radius:6px;padding:5px 7px;font-size:8px}.totp-input{letter-spacing:6px;text-align:center;font-size:18px!important}.uri-code{display:block;font-size:7px;overflow-wrap:anywhere;background:#f5f6f9;padding:8px;border-radius:7px;margin-top:5px}.backup-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:12px;max-width:1200px}.backup-hero{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:22px}.backup-icon{width:64px;height:64px;border-radius:17px;display:grid;place-items:center;background:#f0eaff;color:#8150e1}.backup-hero h2{font-size:19px;margin:5px 0}.backup-hero p,.backup-hero li{font-size:8.5px;line-height:1.55;color:#65728b}.backup-hero .btn{grid-column:1/-1;justify-self:start}.eyebrow{font-size:7px;letter-spacing:.16em;font-weight:850;color:#8450e5}.policy-box{background:#fff8e9;border:1px solid #fde7b7;color:#8c681e;border-radius:8px;padding:9px;margin:10px 0;font-size:8px}.modal{border:0;padding:0;background:transparent;width:min(650px,calc(100% - 24px));max-height:90vh}.modal::backdrop{background:rgba(2,10,36,.58);backdrop-filter:blur(3px)}.modal-card{background:#fff;border-radius:15px;padding:16px;box-shadow:var(--shadow-lg);max-height:90vh;overflow:auto}.modal-wide{width:min(820px,100%)}.compact-modal{width:min(450px,100%);margin:auto}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid #edf0f4;padding-bottom:11px;margin-bottom:13px}.modal-head h3{font-size:15px;margin:0}.modal-head p{font-size:8.5px;color:#7f8aa1;margin:3px 0 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.form-grid.three{grid-template-columns:repeat(3,1fr)}.form-grid.one{grid-template-columns:1fr}.form-grid label,.modal-card>label,.totp-setup label{display:flex;flex-direction:column;gap:5px;font-size:8.5px;font-weight:750;color:#4a5670}.form-grid label small{font-size:7px;color:#8c97aa;font-weight:400}.span-2{grid-column:span 2}.span-3{grid-column:span 3}.form-grid textarea{resize:vertical}.check-label{flex-direction:row!important;align-items:center!important;justify-content:flex-start;padding-top:18px}.check-label input{width:auto!important}.modal-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:14px;padding-top:11px;border-top:1px solid #edf0f4}.modal-actions.static{border-top:0;padding-top:4px}.hidden{display:none!important}.toast{position:fixed;top:78px;right:22px;z-index:100;background:#fff;border:1px solid #e2e6ed;border-left:4px solid #6a51e7;box-shadow:0 14px 35px rgba(15,28,60,.17);border-radius:9px;padding:11px 35px 11px 12px;max-width:380px;font-size:10px;animation:toastIn .2s ease}.toast-error{border-left-color:#e23d5d}.toast-success{border-left-color:#19ad67}.toast-warning{border-left-color:#ee9a17}.toast button{position:absolute;right:8px;top:5px;border:0;background:transparent;color:#9099aa;font-size:18px;cursor:pointer}@keyframes toastIn{from{transform:translateY(-8px);opacity:0}to{transform:none;opacity:1}}
/* AUTH */.auth-body{min-height:100vh;background:#020A24}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.auth-panel{min-height:100vh}.auth-brand-panel{position:relative;overflow:hidden;padding:46px 7vw;background:radial-gradient(circle at 15% 15%,rgba(0,143,253,.18),transparent 28%),radial-gradient(circle at 85% 65%,rgba(255,61,152,.14),transparent 28%),linear-gradient(145deg,#020A24,#07143B);color:white;display:flex;flex-direction:column}.auth-brand-panel:before,.auth-brand-panel:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(139,69,245,.12)}.auth-brand-panel:before{width:520px;height:520px;right:-180px;top:180px}.auth-brand-panel:after{width:350px;height:350px;right:-90px;top:265px}.auth-brand img{width:250px}.auth-copy{margin:auto 0;position:relative;z-index:1}.auth-copy .eyebrow{color:#b5a6ff}.auth-copy .eyebrow i{display:inline-block;width:6px;height:6px;background:#ff3d98;border-radius:50%;box-shadow:0 0 12px #ff3d98;margin-right:7px}.auth-copy h1{font-size:clamp(38px,5vw,66px);line-height:1.02;letter-spacing:-.045em;margin:20px 0}.auth-copy h1 span{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.auth-copy p{max-width:590px;color:#acb9d5;font-size:14px;line-height:1.7}.auth-security{display:flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.035);padding:12px 14px;border-radius:12px;width:max-content;position:relative;z-index:1}.auth-security>div{width:36px;height:36px;display:grid;place-items:center;background:#143b43;color:#55dda0;border-radius:9px}.auth-security span{display:flex;flex-direction:column}.auth-security strong{font-size:10px}.auth-security small{font-size:8px;color:#9dacC6;margin-top:2px}.auth-form-panel{background:#f8f9fc;display:grid;place-items:center;padding:30px}.login-card{width:min(430px,100%);background:#fff;border:1px solid #e3e6ee;border-radius:19px;padding:32px;box-shadow:0 20px 55px rgba(7,20,59,.11)}.login-mark{width:54px;height:54px;border-radius:15px;background:#f0eaff;display:grid;place-items:center;margin-bottom:18px}.login-mark img{width:40px;height:40px}.login-card h2{font-size:23px;margin:0 0 5px}.login-card>p{font-size:11px;color:#7a859d;margin-bottom:21px}.login-card form{display:flex;flex-direction:column;gap:12px}.login-card label{font-size:9px;font-weight:750;color:#495570}.login-card label small{font-weight:400;color:#8a95a9}.input-wrap{height:43px;margin-top:5px;border:1px solid #dce1e9;border-radius:9px;display:flex;align-items:center;gap:8px;padding:0 10px;color:#8a95aa}.input-wrap:focus-within{border-color:#8b5bed;box-shadow:0 0 0 3px #8b45f512}.input-wrap input{border:0;outline:0;width:100%;height:100%;color:#25304a}.login-foot{border-top:1px solid #eef0f4;padding-top:13px;margin-top:18px;text-align:center;color:#8791a4;font-size:8px}.inline-alert{padding:9px 10px;border-radius:8px;font-size:9px;margin-bottom:12px}.inline-alert.error{background:#fff0f3;color:#d23757}.inline-alert.success{background:#ecfff4;color:#168f59}.inline-alert.warning{background:#fff6e8;color:#b8730c}
/* TEMP + ERROR */.temp-access-body,.error-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 70% 10%,#8b45f51f,transparent 30%),#f4f6fa;padding:20px}.temp-card,.error-card{width:min(560px,100%);background:white;border:1px solid #e2e6ee;border-radius:18px;padding:28px;box-shadow:var(--shadow-lg)}.temp-logo{width:210px;margin-bottom:24px}.temp-status{display:inline-flex;align-items:center;gap:7px;background:#eafbf2;color:#14945b;border-radius:8px;padding:7px 9px;font-size:8px;font-weight:750}.temp-status.invalid{background:#ffedf1;color:#d23b59}.temp-card h1{font-size:23px;margin:16px 0 4px}.temp-secret{display:grid;gap:7px;margin:20px 0}.temp-secret label{font-size:8px;color:#7d899f;font-weight:700}.temp-secret>div{display:flex;border:1px solid #e0e4eb;border-radius:8px;overflow:hidden}.temp-secret code{padding:10px;flex:1;word-break:break-all}.temp-secret button{border:0;border-left:1px solid #e0e4eb;background:#f7f8fa;width:38px;color:#61708c}.temp-secret .danger-secret{border-color:#f2cbd4;background:#fff7f9}.temp-warning{background:#fff6e7;border:1px solid #fde5b8;color:#93690f;border-radius:9px;padding:10px;font-size:8px;line-height:1.45}.error-card{text-align:center;max-width:420px}.error-card img{width:74px}.error-card>span{display:block;font-size:42px;font-weight:900;color:#764ce7;margin-top:12px}.error-card h1{font-size:22px}.error-card p{color:#77839a;font-size:10px;margin-bottom:20px}.muted{color:#8490a6;font-size:9px}
@media(max-width:1250px){.kpi-grid.six{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr 1fr}.mix-panel{grid-column:1/-1}.vault-banner{grid-template-columns:auto 1fr}.vault-feature{display:none}.permission-groups{grid-template-columns:repeat(2,1fr)}}
@media(max-width:980px){:root{--sidebar:200px}.sidebar{transform:translateX(-100%);box-shadow:20px 0 50px rgba(2,10,36,.25)}.sidebar.mobile-open{transform:translateX(0)}.main-wrap,.sidebar.collapsed~.main-wrap{margin-left:0}.mobile-menu{display:grid}.global-search{width:min(400px,48vw)}.secure-pill{display:none}.split-grid,.services-layout,.vault-layout,.billing-grid,.settings-layout,.backup-layout,.role-layout{grid-template-columns:1fr}.detail-panel{min-height:auto}.lower-grid{grid-template-columns:1fr}.two-col,.profile-grid{grid-template-columns:1fr}.auth-shell{grid-template-columns:1fr}.auth-brand-panel{display:none}.auth-form-panel{min-height:100vh}.permission-groups{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.content{padding:16px 12px}.topbar{padding:0 12px}.global-search{display:none}.user-menu span:last-child{display:none}.page-head{align-items:flex-start}.page-head h1{font-size:21px}.kpi-grid.six,.kpi-grid.four{grid-template-columns:repeat(2,1fr)}.quick-grid{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.mix-panel{grid-column:auto}.renewal-summary{grid-template-columns:1fr 1fr}.service-card-grid{grid-template-columns:1fr}.form-grid,.form-grid.three{grid-template-columns:1fr}.span-2,.span-3{grid-column:auto}.permission-groups{grid-template-columns:1fr}.filterbar{flex-wrap:wrap}.filterbar .search-field{flex-basis:100%}.filterbar select{flex:1}.footer{padding:0 12px}.footer span:first-child{display:none}.vault-tabs{padding-bottom:4px}.auth-form-panel{padding:18px}.login-card{padding:24px}.token-result{flex-direction:column;align-items:stretch}.copy-field{max-width:none}}
.report-bars{display:flex;flex-direction:column;gap:10px;padding:6px 0}.report-bar-row{display:grid;grid-template-columns:55px 1fr 80px;gap:10px;align-items:center;font-size:8px}.report-bar-row>b{text-align:right;font-size:8px}.dual-bars{display:flex;flex-direction:column;gap:3px}.dual-bars i{display:block;height:7px;border-radius:5px;min-width:2px}.dual-bars .income{background:linear-gradient(90deg,#3a7cf2,#8b45f5)}.dual-bars .expense{background:linear-gradient(90deg,#ff8a4c,#ff3d98)}.chart-key{display:flex;gap:15px;margin-top:13px;font-size:8px;color:#78849c}.chart-key i{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:4px}.income-dot{background:#6b5beb}.expense-dot{background:#ff5a83}.rank-list{display:flex;flex-direction:column}.rank-list>div{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;padding:9px 2px;border-bottom:1px solid #edf0f4}.rank-num{width:23px;height:23px;border-radius:7px;background:#f0eaff;color:#7a48e0;display:grid;place-items:center;font-size:8px;font-weight:800}.rank-list strong{font-size:9px}.rank-list b{font-size:9px}.search-results{display:flex;flex-direction:column}.search-results>a{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding:10px;border-bottom:1px solid #edf0f4}.search-results>a:hover{background:#faf8ff}.search-results>a>span:nth-child(2){display:flex;flex-direction:column}.search-results strong{font-size:10px}.search-results small{font-size:8px;color:#8894aa;margin-top:2px}.priority-urgent,.priority-crítica{background:#ffe8ed;color:#d63758}.priority-high{background:#fff0df;color:#d47c0d}.priority-normal{background:#f1eaff;color:#7d49df}.priority-low{background:#eaf7ff;color:#2185c7}

/* ========================================================================== 
   NEBULA CREATIVA · READABILITY PASS 2026-08
   Normal desktop scale, larger forms/tables, Elms Sans-first typography.
   Elms Sans is referenced as a local/system font; no font binary is bundled.
   ========================================================================== */
:root{
  --font-sans:"Elms Sans","Avenir Next","Segoe UI Variable","Segoe UI",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
  --sidebar:236px;
  --radius:15px;
  --text-base:15px;
  --text-small:13px;
  --text-tiny:12px;
}
html{font-size:16px}
body,
button,input,select,textarea{
  font-family:var(--font-sans);
  font-size:var(--text-base);
  line-height:1.45;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/* Navigation and top bar */
.brand{height:72px;padding:11px 18px}
.brand img{width:166px;max-height:50px}
.nav-list{padding:17px 11px;gap:4px}
.nav-link{gap:12px;padding:11px 12px;border-radius:10px;font-size:14px;font-weight:600}
.collapse-btn{padding:14px 18px;font-size:13px}
.security-card{margin:14px 14px 13px;padding:19px 15px}
.security-card strong{font-size:16px}
.security-card p{font-size:12.5px;line-height:1.55}
.security-link{font-size:12.5px}
.topbar{height:72px;padding:0 26px;gap:15px}
.global-search{height:44px;width:min(500px,43vw);border-radius:11px;padding:0 13px}
.global-search input{font-size:14px}
.global-search kbd{font-size:11px;padding:4px 7px}
.secure-pill{padding:8px 11px}
.secure-pill strong{font-size:12px}
.secure-pill small{font-size:10.5px}
.user-menu strong{font-size:12.5px}
.user-menu small{font-size:10.5px}
.avatar{width:38px;height:38px}

/* Page hierarchy */
.content{padding:28px 30px 34px;min-height:calc(100vh - 114px);max-width:1760px}
.footer{height:42px;padding:0 30px;font-size:12px}
.page-head{margin-bottom:20px}
.page-head h1{font-size:30px;line-height:1.2;letter-spacing:-.025em;margin-bottom:6px}
.page-head p{font-size:14px;line-height:1.5}
.date-chip,.chip{font-size:13px;padding:9px 12px;border-radius:10px}
.head-actions{gap:10px}

/* Buttons */
.btn{border-radius:10px;padding:11px 16px;font-size:14px;font-weight:700;min-height:42px}
.btn-mini{padding:7px 10px;font-size:12px;min-height:32px}
.icon-btn{width:39px;height:39px;border-radius:10px}
.icon-btn.small{width:32px;height:32px;border-radius:8px}

/* Panels / cards */
.panel{border-radius:15px;padding:17px}
.panel-title{margin-bottom:14px}
.panel-title h3{font-size:16px;line-height:1.35}
.panel-title p{font-size:12.5px;line-height:1.45;margin-top:4px}
.panel-title>a{font-size:12.5px}
.kpi-grid{gap:13px;margin-bottom:16px}
.kpi-card{min-height:142px;padding:16px;border-radius:14px}
.kpi-card.compact{padding:16px;gap:14px}
.kpi-card.compact small{font-size:12.5px}
.kpi-card.compact strong{font-size:24px}
.kpi-icon{width:39px;height:39px;border-radius:10px;margin-bottom:9px}
.kpi-value{font-size:25px}
.kpi-label{font-size:13px;margin-top:6px}
.kpi-meta{font-size:11.5px;margin-top:6px}
.quick-grid{gap:13px;margin-bottom:16px}
.quick{padding:13px 16px;min-height:64px;border-radius:12px}
.quick b{font-size:14px}
.quick small{font-size:11.5px;margin-top:3px}

/* Filters and form controls */
.filterbar{gap:11px;padding:12px;margin-bottom:15px;border-radius:13px}
.search-field{gap:9px;border-radius:10px;padding:0 12px}
.search-field input{height:44px;font-size:14px}
.filterbar select,
.form-grid select,
.form-grid input,
.form-grid textarea,
.modal-card>label input,
.modal-card>label select,
.totp-setup input{
  min-height:44px;
  border-radius:10px;
  padding:10px 12px;
  font-size:14px;
  line-height:1.4;
}
.form-grid textarea{min-height:110px}
.form-grid{gap:14px}
.form-grid label,
.modal-card>label,
.totp-setup label{
  gap:7px;
  font-size:13.5px;
  font-weight:700;
  line-height:1.35;
}
.form-grid label small{font-size:12px;line-height:1.4}
.check-label{padding-top:24px}

/* Tables */
.table-wrap{border-radius:10px}
table{min-width:760px}
th{font-size:12.5px;font-weight:700;padding:11px 11px;line-height:1.35}
td{font-size:13.5px;padding:12px 11px;line-height:1.4}
.entity strong{font-size:13.5px}
.entity small{font-size:12px;margin-top:2px}
.mini-avatar{font-size:11px}
.count-chip,.type-pill,.badge{font-size:11px;padding-top:4px;padding-bottom:4px}
.cell-stack small{font-size:11.5px}
.due{font-size:11.5px}

/* Client detail and service cards */
.big-avatar{font-size:13px}
.client-head h2{font-size:20px}
.client-head p{font-size:13px}
.contact-line{font-size:12.5px}
.tabs button,.tabs a{font-size:13px;padding-top:11px;padding-bottom:11px}
.section-label{font-size:14px}
.service-mini strong{font-size:13px}
.service-mini small{font-size:11.5px;line-height:1.45}
.service-mini span{font-size:11px}
.empty-card{font-size:13px}
.domain-list>div{font-size:13px}
.empty-detail h3{font-size:18px}
.empty-detail p{font-size:13px}
.info-grid small{font-size:11.5px}
.info-grid strong{font-size:13.5px}
.note-box strong{font-size:13px}
.note-box p{font-size:12.5px;line-height:1.5}

/* Charts and dashboard labels */
.chart-labels{font-size:11px}
.bar b{font-size:11px}
.bar-item span{font-size:11.5px}
.donut strong{font-size:24px}
.donut span{font-size:12px}
.legend>div{font-size:12.5px}
.legend b{font-size:11.5px}
.security-alert b{font-size:13px}
.security-alert small{font-size:11.5px;line-height:1.4}
.alert-count{font-size:11.5px}
.activity strong{font-size:13px}
.activity small{font-size:11.5px;line-height:1.4}

/* Vault */
.category-tabs a{font-size:12.5px}
.vault-copy h3{font-size:16px}
.vault-copy p{font-size:12.5px;line-height:1.5}
.vault-copy span{font-size:11.5px}
.vault-feature b{font-size:12.5px}
.vault-feature small{font-size:11px}
.secure-row>span{font-size:12px}
.secure-row code,.secure-row strong{font-size:12.5px}
.token-box h4{font-size:14px}
.token-box p{font-size:12px;line-height:1.5}
.token-result strong{font-size:13px}
.token-result small{font-size:11.5px}
.copy-field input{font-size:12px;padding:9px}
.audit-mini p{font-size:12px}

/* Finance, renewals, permissions, security */
.method-list>div{font-size:12.5px;padding:9px 0}
.profit-block small{font-size:12px}
.profit-block strong{font-size:28px}
.profit-block span{font-size:12px}
.renewal-summary b{font-size:23px}
.renewal-summary small{font-size:12px}
.priority,.severity{font-size:11px}
.role-card strong{font-size:14px}
.role-card small{font-size:12px}
.role-card span{font-size:11.5px}
.permission-preview span{font-size:11.5px}
.permission-groups legend{font-size:13px}
.permission-check span{font-size:12.5px}
.permission-check small{font-size:11px;line-height:1.35}
.json-view{font-size:12px;line-height:1.5}
.security-checklist strong{font-size:13px}
.security-checklist small{font-size:11.5px}
.profile-identity .big-avatar{font-size:16px}
.profile-identity h2{font-size:21px}
.profile-identity p{font-size:13px}
.twofa-active strong{font-size:13px}
.twofa-active p,.twofa-empty p{font-size:12px;line-height:1.45}
.totp-setup p{font-size:12.5px}
.secret-box small{font-size:11.5px}
.secret-box code{font-size:14px}
.secret-box button{font-size:12px}
.uri-code{font-size:11px}
.backup-hero h2{font-size:23px}
.backup-hero p,.backup-hero li{font-size:12.5px;line-height:1.55}
.eyebrow{font-size:11px}
.policy-box{font-size:12px;line-height:1.5}

/* Modals */
.modal-card{padding:20px;border-radius:17px}
.modal{width:min(560px,100%)}
.modal-head{padding-bottom:14px;margin-bottom:16px}
.modal-head h3{font-size:19px}
.modal-head p{font-size:12.5px;line-height:1.45}
.modal-actions{gap:9px;margin-top:17px;padding-top:14px}
.toast{font-size:13px;padding-top:13px;padding-bottom:13px}

/* Authentication */
.auth-copy p{font-size:15px}
.auth-security strong{font-size:13px}
.auth-security small{font-size:11.5px}
.login-card{width:min(470px,100%);padding:36px}
.login-card h2{font-size:27px}
.login-card>p{font-size:14px;line-height:1.5}
.login-card form{gap:15px}
.login-card label{font-size:13.5px}
.input-wrap{height:48px;border-radius:10px;padding:0 12px}
.input-wrap input{font-size:15px}
.login-foot{font-size:11.5px;line-height:1.45}
.inline-alert{font-size:12.5px;padding:11px 12px}

/* Temporary access / error screens */
.temp-status{font-size:11.5px}
.temp-secret label{font-size:12px}
.temp-warning{font-size:12px;line-height:1.5}
.error-card p{font-size:13px}
.muted{font-size:12px}

/* Reports/search */
.report-bar-row{font-size:12px}
.report-bar-row>b{font-size:12px}
.chart-key{font-size:11.5px}
.rank-num{font-size:11px}
.rank-list strong,.rank-list b{font-size:13px}
.search-results strong{font-size:13.5px}
.search-results small{font-size:11.5px}

/* Responsive scaling keeps text readable rather than shrinking it */
@media(max-width:980px){
  :root{--sidebar:220px}
  .content{padding:22px 18px 30px}
}
@media(max-width:700px){
  body,button,input,select,textarea{font-size:15px}
  .content{padding:18px 13px 26px}
  .topbar{height:66px;padding:0 13px}
  .page-head h1{font-size:25px}
  .page-head p{font-size:13px}
  .btn{font-size:13.5px;min-height:41px}
  .panel{padding:15px}
  th{font-size:12px}
  td{font-size:13px}
  .modal-card{padding:17px}
  .login-card{padding:27px}
}


/* ========================================================================== 
   NEBULA CREATIVA · TYPOGRAPHY WEIGHT FIX v1.1.1
   Avoids a local Light face being advertised as every weight. The browser now
   resolves the actual installed Elms Sans family and synthesizes only when
   necessary. Default UI copy is intentionally Medium, not Light.
   ========================================================================== */
:root{
  --font-sans:"Elms Sans","ElmsSans","Avenir Next","Segoe UI Variable","Segoe UI",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
  --weight-copy:500;
  --weight-muted:500;
  --weight-label:650;
  --weight-title:700;
}
body{font-weight:var(--weight-copy);color:#111a35}
button,input,select,textarea{font-weight:500}
p,small,.muted,.page-head p,.panel-title p,.entity small,.cell-stack small,.due,
.vault-copy p,.vault-copy span,.vault-feature small,.audit-mini p,.twofa-active p,
.twofa-empty p,.totp-setup p,.backup-hero p,.backup-hero li,.modal-head p,
.login-card>p,.login-foot,.activity small,.security-alert small{
  font-weight:var(--weight-muted);
}
strong,b,h1,h2,h3,h4,h5,h6,.page-head h1,.panel-title h3,.client-head h2,
.empty-detail h3,.modal-head h3,.login-card h2,.vault-copy h3{
  font-weight:var(--weight-title);
}
.nav-link,.btn,label,.form-grid label,.modal-card>label,.totp-setup label,
.table-wrap th,th,.category-tabs a,.tabs button,.tabs a,.section-label,
.badge,.type-pill,.count-chip,.priority,.severity{
  font-weight:var(--weight-label);
}
td,.entity strong,.service-mini strong,.service-mini small,.secure-row>span,
.secure-row code,.secure-row strong,.note-box p,.domain-list>div,
.permission-check span,.permission-check small,.security-checklist small{
  font-weight:500;
}
.page-head p,.panel-title p,.vault-copy p,.vault-copy span,.vault-feature small,
.empty-detail p,.twofa-active p,.twofa-empty p,.audit-mini p{
  color:#68738e;
}
/* Vault receives slightly stronger hierarchy because it contains critical data. */
.vault-copy h3{font-size:17px;font-weight:700}
.vault-copy p{font-size:13.5px;font-weight:500}
.vault-copy span{font-size:12.5px;font-weight:600}
.vault-feature b{font-size:13px;font-weight:700}
.vault-feature small{font-size:11.5px;font-weight:500}
.category-tabs a{font-size:13px;font-weight:650}
.secure-row>span{font-size:12.5px;font-weight:600}
.secure-row code,.secure-row strong{font-size:13px;font-weight:600}
.panel-title p{font-size:13px}
th{font-weight:650;color:#596681}
td{font-weight:500;color:#29334e}
/* Keep placeholder copy readable but clearly secondary. */
::placeholder{font-weight:500;opacity:1}
input::placeholder,textarea::placeholder{color:#8a94aa}
