:root{
  --bg:#f7f8fc;
  --surface:#ffffff;
  --surface-2:#fbfbfe;
  --text:#17152a;
  --muted:#85839a;
  --border:#ecebf4;
  --purple:#6f4ef6;
  --purple-2:#8f78ff;
  --purple-soft:#f0edff;
  --blue:#3191ff;
  --blue-soft:#eef7ff;
  --green:#25b86a;
  --green-soft:#eafaf1;
  --orange:#ff9f2f;
  --orange-soft:#fff6e8;
  --red:#ef4b55;
  --red-soft:#fff0f1;
  --cyan:#31b7c9;
  --shadow:0 10px 35px rgba(37,28,82,.06);
  --radius:15px;
  --sidebar:232px;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--text);background:var(--bg);font-size:14px}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.icon{display:inline-block;vertical-align:-3px;flex:0 0 auto}

/* Layout */
.app-shell{min-height:100vh}
.app-sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:#fff;border-right:1px solid var(--border);z-index:50;display:flex;flex-direction:column;padding:20px 15px 15px;transition:transform .25s ease}
.app-brand{height:52px;display:flex;align-items:center;padding:0 8px 14px;border-bottom:1px solid var(--border);margin-bottom:12px}
.app-brand img{width:152px;max-height:40px;object-fit:contain;object-position:left center}
.app-brand-text{font-weight:800;font-size:17px;line-height:1.1}.app-brand-text small{display:block;color:var(--muted);font-size:10px;font-weight:600;margin-top:3px;letter-spacing:.05em}
.app-nav{display:flex;flex-direction:column;gap:3px;overflow-y:auto;padding:4px 0 10px}
.app-nav-link{display:flex;align-items:center;gap:11px;border-radius:9px;padding:10px 11px;color:#6f6d83;font-size:13px;font-weight:600;transition:.18s;position:relative}
.app-nav-link:hover{background:#f8f7ff;color:var(--purple)}
.app-nav-link.active{background:var(--purple-soft);color:var(--purple)}
.app-nav-link.active:before{content:"";position:absolute;left:-15px;top:9px;bottom:9px;width:3px;border-radius:0 4px 4px 0;background:var(--purple)}
.nav-count{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:20px;background:var(--purple);color:#fff;font-size:10px;display:grid;place-items:center}
.sidebar-spacer{flex:1}
.sidebar-user{border-top:1px solid var(--border);padding-top:13px}
.user-card{display:flex;align-items:center;gap:9px;padding:8px;border-radius:10px}.user-card:hover{background:#faf9ff}
.avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#ffe0b5,#f6ad54);display:grid;place-items:center;color:#753d00;font-weight:800;font-size:11px;flex:0 0 auto;overflow:hidden}
.user-info{min-width:0;flex:1}.user-name{font-weight:700;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:10px;color:var(--muted);margin-top:2px}
.sidebar-logout{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:8px;padding:9px;border:1px solid var(--border);border-radius:9px;color:#77758b;font-size:12px;font-weight:600}.sidebar-logout:hover{border-color:#ffb5ba;color:var(--red);background:var(--red-soft)}
.app-main{margin-left:var(--sidebar);min-height:100vh}.app-content{max-width:1660px;margin:0 auto;padding:25px 30px 42px}
.mobile-topbar{display:none;position:sticky;top:0;z-index:40;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);height:58px;align-items:center;justify-content:space-between;padding:0 16px}.mobile-topbar img{height:31px;max-width:140px}.icon-button{width:38px;height:38px;border:1px solid var(--border);background:#fff;border-radius:10px;display:grid;place-items:center;color:#59566e;cursor:pointer}
.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(25,20,55,.42);z-index:45}

/* Header and controls */
.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}
.page-title h1{font-size:23px;margin:0 0 4px;letter-spacing:-.025em}.page-title p{margin:0;color:var(--muted);font-size:12px}
.page-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;align-items:center}
.control,.btn{height:36px;border-radius:8px;border:1px solid var(--border);background:#fff;color:#47445a;padding:0 11px;display:inline-flex;align-items:center;gap:7px;font-weight:600;font-size:11.5px;line-height:1;cursor:pointer;white-space:nowrap;transition:.15s}.control input,.control select{border:0;outline:0;background:transparent;color:inherit;min-width:0}.control select{padding-right:16px}.control-date input{width:104px}
.btn:hover,.control:hover{border-color:#d8d5e8;box-shadow:0 4px 14px rgba(44,35,91,.06)}
.btn-primary{background:var(--purple)!important;color:#fff!important;border-color:var(--purple)!important}.btn-primary:hover{background:#6242e5!important}.btn-soft{background:var(--purple-soft);color:var(--purple);border-color:transparent}.btn-danger{background:var(--red);color:#fff;border-color:var(--red)}.btn-success{background:var(--green);color:#fff;border-color:var(--green)}.btn-sm{height:31px;padding:0 9px;font-size:10.5px}.btn-icon{width:34px;padding:0;justify-content:center}.readonly-note{display:inline-flex;align-items:center;gap:6px;border-radius:20px;background:#fff7e7;color:#a66500;padding:7px 10px;font-size:11px;font-weight:700}
.flash{padding:11px 14px;border-radius:10px;margin:0 0 14px;font-weight:600}.flash-success{background:var(--green-soft);color:#137846;border:1px solid #ccefdc}.flash-danger{background:var(--red-soft);color:#b62e38;border:1px solid #ffd5d8}.flash-warning{background:var(--orange-soft);color:#a45d00;border:1px solid #ffe1b8}
.tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);margin-bottom:16px;overflow-x:auto}.tab{padding:10px 13px;color:#858297;font-size:11px;font-weight:700;white-space:nowrap;border-bottom:2px solid transparent}.tab:hover{color:var(--purple)}.tab.active{color:var(--purple);border-bottom-color:var(--purple)}

/* Cards */
.kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px;margin-bottom:13px}
.kpi-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:14px 14px 9px;min-height:115px;box-shadow:0 6px 22px rgba(36,26,82,.025);overflow:hidden;position:relative}.kpi-card.kpi-purple{background:linear-gradient(135deg,#fff 35%,#faf8ff);border-color:#e9e3ff}.kpi-card.kpi-blue{background:linear-gradient(135deg,#fff 35%,#f5faff);border-color:#dfeeff}.kpi-card.kpi-orange{background:linear-gradient(135deg,#fff 35%,#fffaf2);border-color:#ffead0}.kpi-card.kpi-green{background:linear-gradient(135deg,#fff 35%,#f5fff9);border-color:#d9f3e4}.kpi-card.kpi-red{background:linear-gradient(135deg,#fff 35%,#fff7f7);border-color:#ffe0e2}
.kpi-top{display:flex;align-items:flex-start;gap:9px}.kpi-icon{width:33px;height:33px;border-radius:10px;display:grid;place-items:center;flex:0 0 auto}.kpi-purple .kpi-icon{background:var(--purple-soft);color:var(--purple)}.kpi-blue .kpi-icon{background:var(--blue-soft);color:var(--blue)}.kpi-orange .kpi-icon{background:var(--orange-soft);color:var(--orange)}.kpi-green .kpi-icon{background:var(--green-soft);color:var(--green)}.kpi-red .kpi-icon{background:var(--red-soft);color:var(--red)}
.kpi-label{font-size:10.5px;font-weight:700;color:#777489;margin-bottom:3px}.kpi-value{font-size:22px;font-weight:800;line-height:1;letter-spacing:-.03em}.kpi-sub{font-size:9.5px;color:var(--muted);margin-top:4px}.kpi-trend{font-size:9px;font-weight:700;margin-top:3px}.trend-up{color:var(--green)}.trend-down{color:var(--red)}.trend-neutral{color:var(--orange)}
.sparkline{display:block;width:100%;height:28px;margin-top:6px}.tone-purple{color:var(--purple)}.tone-blue{color:var(--blue)}.tone-orange{color:var(--orange)}.tone-green{color:var(--green)}.tone-red{color:var(--red)}
.panel-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;margin-bottom:12px}.span-3{grid-column:span 3}.span-4{grid-column:span 4}.span-5{grid-column:span 5}.span-6{grid-column:span 6}.span-7{grid-column:span 7}.span-8{grid-column:span 8}.span-9{grid-column:span 9}.span-12{grid-column:span 12}
.panel{background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px;min-width:0}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.panel-title{font-size:12px;font-weight:800}.panel-subtitle{font-size:9.5px;color:var(--muted);margin-top:2px}.panel-link{color:var(--purple);font-size:9.5px;font-weight:700}.panel-link:hover{text-decoration:underline}.empty-state{text-align:center;padding:28px 10px;color:var(--muted)}

/* charts */
.line-chart{width:100%;height:auto;min-height:150px;overflow:visible}.chart-grid{stroke:#eeedf5;stroke-width:1}.chart-line{fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.chart-dot{stroke:#fff;stroke-width:1.4}.series-1{stroke:var(--purple);fill:var(--purple)}.series-2{stroke:var(--green);fill:var(--green)}.series-3{stroke:var(--orange);fill:var(--orange)}.series-4{stroke:var(--red);fill:var(--red)}
.chart-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:9px;color:var(--muted);margin:0 0 4px}.legend-dot{width:7px;height:7px;border-radius:50%;display:inline-block;margin-right:5px}.legend-purple{background:var(--purple)}.legend-green{background:var(--green)}.legend-orange{background:var(--orange)}.legend-red{background:var(--red)}
.donut-wrap{display:flex;align-items:center;gap:15px}.donut-chart{width:125px;max-width:42%;height:auto;transform:rotate(-90deg)}.donut-bg{fill:none;stroke:#f0eff6;stroke-width:14}.donut-segment{fill:none;stroke-width:14;stroke-linecap:butt}.donut-1{stroke:var(--purple)}.donut-2{stroke:var(--green)}.donut-3{stroke:var(--orange)}.donut-4{stroke:var(--red)}.donut-5{stroke:var(--blue)}.donut-6{stroke:var(--cyan)}.donut-center,.donut-caption{transform:rotate(90deg);transform-origin:60px 60px;fill:var(--text);font-weight:800;font-size:17px}.donut-caption{font-size:8px;fill:var(--muted);font-weight:600}
.legend-list{display:flex;flex-direction:column;gap:7px;flex:1}.legend-item{display:flex;align-items:center;gap:7px;font-size:9.5px}.legend-item span:nth-child(2){flex:1;color:#5f5c70}.legend-item strong{font-size:9.5px}.legend-color{width:8px;height:8px;border-radius:50%}
.bar-list{display:flex;flex-direction:column;gap:10px}.bar-meta{display:flex;justify-content:space-between;gap:10px;font-size:9.5px;margin-bottom:4px}.bar-meta span{color:#615e73;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-meta strong{font-size:9.5px}.bar-track{height:5px;border-radius:5px;background:#f0eff6;overflow:hidden}.bar-fill{display:block;height:100%;border-radius:5px}.bar-1{background:var(--purple)}.bar-2{background:var(--blue)}.bar-3{background:var(--green)}.bar-4{background:var(--orange)}.bar-5{background:var(--red)}

/* Funnel */
.funnel{display:flex;align-items:center;justify-content:space-between;gap:5px;padding:9px 1px 6px;overflow-x:auto}.funnel-step{min-width:95px;flex:1;text-align:center;position:relative}.funnel-step:not(:last-child):after{content:"→";position:absolute;right:-8px;top:25px;color:#bab7ca;font-size:18px}.funnel-icon{width:46px;height:46px;border-radius:50%;margin:0 auto 7px;display:grid;place-items:center;background:#f6f4ff;color:var(--purple);border:5px solid #fbfaff}.funnel-step:nth-child(2) .funnel-icon{color:var(--blue);background:var(--blue-soft)}.funnel-step:nth-child(3) .funnel-icon{color:var(--cyan);background:#ecfbfd}.funnel-step:nth-child(4) .funnel-icon{color:var(--orange);background:var(--orange-soft)}.funnel-step:nth-child(5) .funnel-icon{color:var(--green);background:var(--green-soft)}.funnel-step:nth-child(6) .funnel-icon{color:#219653;background:#eafaf1}.funnel-label{font-size:9.5px;color:#625f73;font-weight:700;min-height:24px}.funnel-value{font-size:17px;font-weight:800;margin-top:2px}.funnel-percent{font-size:8.5px;color:var(--muted);margin-top:2px}.funnel-branch{display:grid;grid-template-columns:1fr 1fr;gap:4px;min-width:160px}.funnel-branch .funnel-step{min-width:72px}.funnel-branch .funnel-step:after{display:none}

/* Lists */
.attention-list,.mini-list{display:flex;flex-direction:column;gap:2px}.attention-item,.mini-person{display:flex;align-items:center;gap:9px;padding:7px 5px;border-bottom:1px solid #f3f2f7}.attention-item:last-child,.mini-person:last-child{border-bottom:0}.attention-icon{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto}.attention-critical{background:var(--red-soft);color:var(--red)}.attention-warning{background:var(--orange-soft);color:var(--orange)}.attention-info{background:var(--blue-soft);color:var(--blue)}.attention-text{font-size:9.5px;line-height:1.25;flex:1}.attention-text strong{display:block;color:#4b485c}.attention-count{font-weight:800;font-size:10px}.mini-avatar{width:29px;height:29px;border-radius:50%;background:linear-gradient(135deg,#ede8ff,#d3c8ff);display:grid;place-items:center;color:#6042cd;font-size:8px;font-weight:800;flex:0 0 auto}.mini-person-info{flex:1;min-width:0}.mini-person-name{font-size:9.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-person-sub{font-size:8px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-person-time{font-size:8px;color:#77748a}.danger-text{color:var(--red)}

/* Tables */
.table-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;margin-bottom:12px}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px;border-bottom:1px solid var(--border)}.table-toolbar-left,.table-toolbar-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.search-box{height:34px;min-width:245px;display:flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:8px;padding:0 10px;background:#fff;color:#aaa7b8}.search-box input{border:0;outline:0;width:100%;font-size:11px;color:var(--text)}.data-table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:850px}.data-table th{background:#fbfbfd;color:#918ea2;font-size:8.5px;text-transform:none;letter-spacing:.01em;text-align:left;font-weight:700;padding:9px 10px;border-bottom:1px solid var(--border);white-space:nowrap}.data-table td{font-size:9.5px;padding:9px 10px;border-bottom:1px solid #f3f2f7;vertical-align:middle;color:#555266}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fcfbff}.person-cell{display:flex;align-items:center;gap:8px;min-width:170px}.person-cell .mini-avatar{width:31px;height:31px}.person-name{font-size:9.5px;font-weight:700;color:#343143}.person-contact{font-size:8px;color:var(--muted);margin-top:2px}.table-actions{display:flex;gap:4px}.action-btn{width:27px;height:27px;border:1px solid var(--border);background:#fff;border-radius:7px;display:grid;place-items:center;color:#77748b;cursor:pointer}.action-btn:hover{border-color:#d8d3fa;color:var(--purple);background:#faf9ff}.badge{display:inline-flex;align-items:center;border-radius:20px;padding:4px 7px;font-size:8px;font-weight:700;white-space:nowrap}.badge-purple{background:var(--purple-soft);color:var(--purple)}.badge-blue{background:var(--blue-soft);color:#237ed4}.badge-green{background:var(--green-soft);color:#16864d}.badge-orange{background:var(--orange-soft);color:#ad650d}.badge-red{background:var(--red-soft);color:#d33943}.badge-gray{background:#f1f1f5;color:#77758a}.pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;border-top:1px solid var(--border);font-size:9px;color:var(--muted)}.page-links{display:flex;gap:4px}.page-link{width:27px;height:27px;border:1px solid var(--border);border-radius:7px;display:grid;place-items:center;color:#656277}.page-link.active{background:var(--purple);border-color:var(--purple);color:#fff}.page-link:hover{border-color:#cfc9fb;color:var(--purple)}

/* Forms / dialogs */
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-group{display:flex;flex-direction:column;gap:5px}.form-group.full{grid-column:1/-1}.form-label{font-size:10px;font-weight:700;color:#5c596c}.form-control,.form-select,.form-textarea{width:100%;border:1px solid #dfddea;border-radius:9px;background:#fff;padding:9px 10px;outline:none;color:var(--text);font-size:11px}.form-control,.form-select{height:38px}.form-textarea{min-height:85px;resize:vertical}.form-control:focus,.form-select:focus,.form-textarea:focus{border-color:#a899ff;box-shadow:0 0 0 3px rgba(111,78,246,.11)}
dialog.modal{border:0;border-radius:17px;padding:0;width:min(660px,calc(100vw - 28px));max-height:90vh;box-shadow:0 30px 90px rgba(29,22,63,.25);overflow:hidden}dialog.modal::backdrop{background:rgba(30,24,60,.48);backdrop-filter:blur(2px)}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--border)}.modal-head h2{font-size:16px;margin:0}.modal-body{padding:18px;overflow:auto;max-height:70vh}.modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:13px 18px;border-top:1px solid var(--border);background:#fbfbfd}.close-modal{border:0;background:transparent;color:#8b889a;cursor:pointer;width:32px;height:32px;border-radius:8px}.close-modal:hover{background:#f3f2f7;color:var(--red)}
.dropdown{position:relative}.dropdown-menu{display:none;position:absolute;right:0;top:calc(100% + 5px);min-width:180px;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow);border-radius:10px;padding:6px;z-index:30}.dropdown.open .dropdown-menu{display:block}.dropdown-item{display:flex;width:100%;align-items:center;gap:8px;border:0;background:transparent;padding:8px 9px;border-radius:7px;font-size:10px;color:#575468;text-align:left;cursor:pointer}.dropdown-item:hover{background:#f7f5ff;color:var(--purple)}.dropdown-item.danger:hover{background:var(--red-soft);color:var(--red)}

/* Detail and special blocks */
.profile-head{display:flex;align-items:center;gap:15px}.profile-avatar{width:64px;height:64px;border-radius:17px;background:linear-gradient(135deg,#e9e3ff,#bdafff);display:grid;place-items:center;color:#573bc4;font-size:19px;font-weight:900}.profile-main h2{margin:0 0 5px;font-size:20px}.profile-meta{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:10px}.info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.info-tile{background:#fafafe;border:1px solid var(--border);border-radius:10px;padding:10px}.info-tile small{display:block;color:var(--muted);font-size:8.5px;margin-bottom:4px}.info-tile strong{font-size:10.5px}.timeline{position:relative;padding-left:20px}.timeline:before{content:"";position:absolute;left:6px;top:6px;bottom:6px;width:1px;background:#e5e2f3}.timeline-item{position:relative;padding:0 0 15px 11px}.timeline-item:before{content:"";position:absolute;left:-18px;top:4px;width:9px;height:9px;border-radius:50%;background:var(--purple);border:2px solid #fff;box-shadow:0 0 0 2px #ded8ff}.timeline-title{font-size:10.5px;font-weight:700}.timeline-meta{font-size:8.5px;color:var(--muted);margin-top:2px}.timeline-text{font-size:9.5px;color:#676477;margin-top:4px}
.heat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.heat-cell{border-radius:9px;padding:10px;background:#f4f1ff;min-height:58px}.heat-cell.level-2{background:#e6deff}.heat-cell.level-3{background:#cdbfff}.heat-cell.level-4{background:#987df8;color:#fff}.heat-name{font-size:9px;font-weight:700}.heat-value{font-size:16px;font-weight:800;margin-top:6px}
.notice-strip{display:flex;align-items:center;gap:8px;border:1px solid #d9efe2;background:#f1fcf6;color:#278650;border-radius:10px;padding:9px 12px;font-size:9.5px;font-weight:600}

/* Auth pages and legacy compatibility */
.auth-main{min-height:calc(100vh - 60px);display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 20% 0,#eee9ff 0,transparent 32%),radial-gradient(circle at 100% 100%,#fff1dc 0,transparent 33%),#f8f8fc}.auth-main>.container,.auth-main>.row{width:min(520px,100%)}
.auth-brand{position:absolute;top:24px;left:28px}.auth-brand img{height:42px}.auth-footer{text-align:center;color:var(--muted);font-size:11px;padding:14px;background:#f8f8fc}
.legacy-container{max-width:1480px;margin:0 auto}

@media(max-width:1200px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.kpi-card:nth-child(4),.kpi-card:nth-child(5){grid-column:span 1}.span-3{grid-column:span 4}.span-4{grid-column:span 6}.span-5,.span-7{grid-column:span 6}.span-8,.span-9{grid-column:span 12}.info-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.app-sidebar{transform:translateX(-100%)}.app-sidebar.open{transform:translateX(0)}.sidebar-overlay.open{display:block}.app-main{margin-left:0}.mobile-topbar{display:flex}.app-content{padding:18px 16px 35px}.page-header{flex-direction:column}.page-actions{justify-content:flex-start;width:100%}.kpi-grid{grid-template-columns:repeat(2,1fr)}.panel-grid{grid-template-columns:1fr}.span-3,.span-4,.span-5,.span-6,.span-7,.span-8,.span-9,.span-12{grid-column:1}.funnel{justify-content:flex-start}.funnel-step{min-width:105px}.table-toolbar{align-items:flex-start;flex-direction:column}.search-box{min-width:100%;width:100%}.table-toolbar-left,.table-toolbar-right{width:100%}.heat-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.app-content{padding:14px 10px 28px}.page-title h1{font-size:20px}.page-actions{display:grid;grid-template-columns:1fr 1fr}.page-actions .control,.page-actions .btn{width:100%;justify-content:center}.page-actions .btn-primary{grid-column:1/-1}.kpi-grid{grid-template-columns:1fr}.panel{padding:12px}.form-grid{grid-template-columns:1fr}.form-group.full{grid-column:1}.info-grid{grid-template-columns:1fr}.donut-wrap{flex-direction:column}.donut-chart{max-width:60%}.profile-head{align-items:flex-start}.heat-grid{grid-template-columns:1fr}.pagination{align-items:flex-start;flex-direction:column}.auth-main{padding:20px 12px}}
