:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#142440;background:#f5f8fd;font-synthesis:none;font-size:14px}
*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer;border:0}a{color:#2468e8;text-decoration:none}
:focus-visible{outline:3px solid #83b6ff;outline-offset:2px}.initial-load{display:grid;place-items:center;height:100vh;color:#77869b}
.app{display:grid;grid-template-columns:224px minmax(0,1fr);min-height:100vh}.sidebar{background:linear-gradient(180deg,#ffffff 0%,#f9fcff 100%);border-right:1px solid #e5ecf6;padding:19px 14px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}.logo{display:flex;gap:10px;align-items:center;padding:0 8px 22px}.logo-mark{width:31px;height:31px;position:relative;background:linear-gradient(135deg,#2673d5,#13a885);border-radius:9px 9px 9px 3px;color:white;display:grid;place-items:center;font-size:23px;font-weight:800}.logo-name{font-weight:800;font-size:18px;line-height:20px;letter-spacing:-.5px}.logo-sub{font-size:9px;color:#74839a;white-space:nowrap;margin-top:3px}.nav{display:flex;flex-direction:column;gap:3px}.nav button{width:100%;display:flex;align-items:center;gap:12px;border-radius:10px;background:transparent;padding:11px 12px;color:#566985;text-align:left;font-weight:560}.nav button:hover{background:#f0f5fd}.nav button.active{background:#e5efff;color:#2265d1;font-weight:720}.nav svg{width:18px;height:18px;flex-shrink:0}.nav-separator{height:1px;background:#e9eef5;margin:12px 8px}.sidebar-bottom{margin-top:auto;background:linear-gradient(145deg,#e7f8f3,#dff5f7);border-radius:14px;padding:15px;min-height:124px}.sidebar-bottom h4{margin:9px 0 6px;font-size:13px}.sidebar-bottom p{margin:0;color:#607d83;font-size:11px;line-height:1.5}
.main{min-width:0;display:flex;flex-direction:column}.topbar{height:64px;background:#fff;border-bottom:1px solid #e8eef6;display:flex;align-items:center;justify-content:space-between;padding:0 24px;gap:18px;position:sticky;top:0;z-index:10}.searchtop{height:37px;max-width:420px;width:36%;border:1px solid #e0e7f1;background:#f9fbfe;border-radius:8px;display:flex;align-items:center;gap:8px;padding:0 12px;color:#8b9bad;font-size:12px;white-space:nowrap;overflow:hidden}.top-actions{display:flex;align-items:center;gap:10px}.top-actions input,.top-actions select{border:1px solid #dbe5f0;background:#fff;border-radius:8px;padding:9px 10px;color:#314764;min-width:0;font-size:12px}.top-actions input{width:136px}.profile{padding-left:14px;border-left:1px solid #e6ecf3;display:flex;gap:8px;align-items:center}.avatar{height:34px;width:34px;background:#e6f5f3;color:#008d7f;border-radius:50%;display:grid;place-items:center;font-weight:800}.profile strong{display:block;font-size:12px}.profile small{display:block;font-size:10px;color:#8897a9}.bodyarea{display:grid;grid-template-columns:minmax(0,1fr) 335px;flex:1;min-height:calc(100vh - 64px)}.workspace{padding:23px 22px 36px;min-width:0}.page-title{font-size:27px;letter-spacing:-.9px;margin:0 0 3px;font-weight:800}.subtitle{margin:0 0 15px;font-size:12px;color:#8796ad}.ask-banner{background:#fff;border:1px solid #deebff;border-radius:12px;padding:11px;box-shadow:0 3px 13px rgba(48,105,197,.06);display:flex;align-items:center;gap:9px;margin-bottom:14px}.spark{background:#eaf3ff;color:#2e70eb;border-radius:8px;padding:9px;font-size:16px}.ask-banner input{flex:1;min-width:0;border:0;outline:none;font-size:12px;color:#243b5c}.btn-primary{background:#3578f4;color:white;border-radius:8px;padding:11px 15px;font-weight:700;box-shadow:0 4px 10px rgba(35,100,229,.17)}.btn-primary:hover{background:#266ce9}.btn-secondary{background:#f1f5fa;color:#365272;border-radius:8px;padding:10px 13px;font-weight:650}.btn-danger{background:#fff0f2;color:#b8364c;padding:8px 11px;border-radius:8px}.btn-small{font-size:11px;padding:8px 11px}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:12px}.card,.metric{background:#fff;border:1px solid #e4ebf4;border-radius:12px;box-shadow:0 2px 9px rgba(39,67,106,.025)}.metric{padding:15px;min-height:108px}.metric .m-icon{font-size:17px;display:grid;place-items:center;border-radius:8px;background:#e8f1ff;color:#2370e3;width:32px;height:32px;margin-bottom:9px}.metric .m-icon.green{background:#e8f8f1;color:#00a67b}.metric .m-icon.red{background:#fff0f1;color:#e04458}.metric label{display:block;font-size:11px;color:#5d708e;margin-bottom:3px}.metric strong{display:block;font-size:23px;letter-spacing:-.7px;font-weight:800}.metric small{display:block;font-size:10px;color:#93a1b5;margin-top:3px}.sections{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:12px;margin-bottom:12px}.card{padding:15px}.card h3{font-size:13px;margin:0 0 12px;letter-spacing:-.2px}.card p{color:#7b8ba1;font-size:12px;line-height:1.5}.card-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.muted{color:#8494a9}.caption{font-size:10px;color:#93a2b6;line-height:1.45}.bar-line{display:grid;grid-template-columns:120px minmax(0,1fr) 50px;gap:9px;align-items:center;margin:13px 0;font-size:11px}.bar-line .bar-track{height:10px;background:#edf3fc;border-radius:8px;overflow:hidden}.bar-line .bar-fill{height:100%;background:#4385fa;border-radius:8px}.bar-line .bar-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-line strong{text-align:right;font-size:11px}.donut-layout{display:flex;align-items:center;gap:20px}.donut{width:150px;height:150px;border-radius:50%;background:conic-gradient(#1fae91 0 55%,#5b9aee 55% 80%,#f57795 80% 100%);position:relative;flex-shrink:0}.donut:after{content:'';position:absolute;inset:34px;border-radius:50%;background:white}.legend{display:flex;flex-direction:column;gap:10px;font-size:11px}.legend-row{display:flex;gap:8px;align-items:center}.legend-dot{width:8px;height:8px;background:#1fae91;border-radius:50%;flex:none}.link-btn{background:none;padding:0;color:#2b72df;font-size:11px;font-weight:700;white-space:nowrap}.insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.insight{border:1px solid #e5ebf5;background:#fbfdff;border-radius:9px;padding:12px;min-height:100px}.insight strong{display:block;font-size:12px;line-height:1.4}.insight p{font-size:10px;color:#8b9bae;margin:6px 0 0}.alert{background:#fff8e9;border:1px solid #f3e5c7;border-radius:10px;padding:12px;color:#8d6723;font-size:12px;line-height:1.45;margin-bottom:13px}.alert.error{background:#fff0f3;border-color:#f1d1da;color:#aa3d59}.alert.good{background:#edfbf6;border-color:#c4ece0;color:#0d8668}.empty{padding:18px 10px;text-align:center;color:#91a0b2;font-size:12px}.table-scroll{overflow:auto}.datatable{width:100%;border-collapse:collapse;font-size:11px}.datatable th{text-align:left;background:#f4f7fb;color:#74869c;padding:10px}.datatable td{padding:10px;border-top:1px solid #eef2f6;color:#38506e}.datatable td:last-child{text-align:right}.pill{display:inline-block;background:#eaf6f1;border-radius:7px;color:#128965;padding:4px 7px;font-size:10px;font-weight:700}.field{margin-bottom:13px}.field label{font-size:11px;color:#536882;font-weight:680;display:block;margin:0 0 5px}.field input,.field select{padding:12px;border-radius:8px;border:1px solid #dce6f2;width:100%;background:#fff;color:#253e5a}.field .hint{font-size:10px;color:#8999ac;margin-top:5px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.system-note{background:#f1f6ff;border:1px solid #dbe9ff;border-radius:10px;padding:13px;color:#506b95;font-size:12px;line-height:1.6}.badge{display:inline-block;font-size:10px;border-radius:7px;padding:5px 8px;font-weight:700;background:#edf2f8;color:#718099}.badge.connected{background:#e3f9ef;color:#088763}.badge.error{background:#fff0f0;color:#bd4551}.badge.pending{background:#fff9e8;color:#9c7526}.footnote{margin-top:9px;font-size:10px;color:#8495a9}
.assistant{border-left:1px solid #e8eef6;background:#fbfcff;display:flex;flex-direction:column;min-width:0;max-height:calc(100vh - 64px);position:sticky;top:64px}.assistant-title{padding:20px 17px;border-bottom:1px solid #e8eef6;font-size:13px;font-weight:800}.assistant-title span{color:#3178ff;margin-right:8px}.assistant-content{padding:15px 15px 25px;flex:1;overflow:auto}.message{border-radius:12px;padding:13px;font-size:12px;line-height:1.55;margin:0 0 12px}.message.user{background:#e6f0ff;margin-left:24px;color:#355a8a}.message.bot{border:1px solid #e8edf4;background:#fff;color:#3e536d}.message h4{font-size:12px;margin:0 0 8px;color:#18395d}.assistant-answer{margin:10px 0 5px}.chat-bottom{padding:13px 14px;border-top:1px solid #e7edf5;display:flex;gap:7px;background:white}.chat-bottom input{border:1px solid #dce6f3;border-radius:8px;min-width:0;flex:1;padding:10px;font-size:11px}.right-number{font-size:14px;font-weight:800;color:#2b70e1}.helper-list{display:flex;flex-direction:column;gap:6px}.helper-list button{text-align:left;background:#f4f8ff;color:#506b90;padding:9px 10px;border-radius:8px;font-size:11px}
.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr}.auth-art{background:radial-gradient(circle at 75% 25%,#4abfa0 0%,transparent 45%),linear-gradient(130deg,#123971,#1756af);color:white;display:flex;flex-direction:column;justify-content:center;padding:10vw}.auth-art .logo-name{font-size:27px}.auth-art h1{font-size:45px;max-width:480px;letter-spacing:-1.5px;line-height:1.13}.auth-art p{color:#d2e9ff;max-width:420px;line-height:1.8}.auth-panel{display:flex;align-items:center;justify-content:center;padding:40px}.auth-card{width:100%;max-width:405px}.auth-card h2{font-size:25px;letter-spacing:-.6px}.auth-card p{font-size:12px;color:#8190a6;margin-bottom:25px}.auth-card .btn-primary{width:100%;margin-top:7px}.auth-switch{margin-top:20px;font-size:12px;color:#74849b;text-align:center}.auth-switch button{background:none;color:#236cea;font-weight:700}.toast{position:fixed;right:18px;bottom:18px;background:#193e73;color:white;padding:13px 18px;border-radius:10px;box-shadow:0 12px 26px #133b6630;z-index:60;font-size:12px}.loading{opacity:.5;pointer-events:none}.stack{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.data-risk{font-size:10px;padding:4px 7px;border-radius:6px;background:#eff6ff;color:#4c72ac}.data-risk.clinical{background:#fff0f2;color:#b1546e}.data-risk.financial{background:#fff8e8;color:#aa803d}
@media(max-width:1250px){.bodyarea{grid-template-columns:minmax(0,1fr)}.assistant{position:static;max-height:none;min-height:340px;border-top:1px solid #e8eef6;border-left:0}.assistant-content{max-height:340px}.sidebar{width:194px}.app{grid-template-columns:194px 1fr}.kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.app{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:12px}.logo{padding-bottom:8px}.nav{flex-direction:row;overflow:auto}.nav button{white-space:nowrap;width:auto;padding:9px;font-size:11px}.nav-separator,.sidebar-bottom{display:none}.topbar{padding:10px;height:auto;flex-wrap:wrap;position:static}.searchtop{display:none}.bodyarea{display:block}.workspace{padding:15px}.sections,.form-grid,.grid-3{grid-template-columns:1fr}.top-actions{width:100%;flex-wrap:wrap}.top-actions input{width:124px}.profile{display:none}.auth-shell{grid-template-columns:1fr}.auth-art{display:none}.auth-panel{padding:30px}.bar-line{grid-template-columns:100px minmax(0,1fr) 38px}.insight-grid{grid-template-columns:1fr}.assistant{max-height:none}}


/* Nova identidade do painel: hierarquia editorial, densidade equilibrada e
   estados acessíveis. Todas as seções utilizam dados reais, nunca gráficos ilustrativos. */
:root{--ink:#14253c;--muted:#73849a;--primary:#4669ed;--teal:#0da98c;--surface:#fff;--line:#e5eaf3;
 --canvas:#f4f7fb;color:var(--ink);background:var(--canvas);font-size:14px;font-feature-settings:"tnum" 1}
body{background:var(--canvas)}
button,input,select{transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease}
button:disabled{opacity:.4;cursor:not-allowed}
a,button{ -webkit-tap-highlight-color:transparent}
.app{grid-template-columns:246px minmax(0,1fr)}
.sidebar{background:linear-gradient(180deg,#0e203b,#111e37 75%,#152842);border-right:1px solid #263a55;padding:23px 17px;color:#f1f6ff;scrollbar-width:thin}
.sidebar .logo{padding:0 10px 28px;gap:11px}.sidebar .logo-mark{width:39px;height:39px;border-radius:12px 12px 12px 4px;background:linear-gradient(140deg,#13cfae,#2785ec);font-size:26px;box-shadow:0 8px 22px #05152f80}
.sidebar .logo-name{font-size:20px;font-weight:800;letter-spacing:-.8px;color:#fff}.sidebar .logo-sub{font-size:10px;color:#97aec7;white-space:normal}
.nav-caption{color:#6686a9;letter-spacing:1.8px;font-size:9px;font-weight:800;margin:5px 13px 12px;text-transform:uppercase}
.nav{gap:2px}
.nav button{color:#b5c5da;padding:12px 13px;border-radius:11px;gap:12px;font-size:12px;font-weight:560;min-height:43px}
.nav button:hover{background:#1d3451;color:white}.nav button.active{background:linear-gradient(95deg,#1e4160,#204769);color:#e9fffb;box-shadow:inset 3px 0 #21d5b2;font-weight:750}
.nav svg{height:18px;width:18px}.nav-separator{background:#32435f;margin:13px 9px 16px}
.sidebar .sidebar-bottom{background:linear-gradient(140deg,#1b5165,#1b4059);border:1px solid #376177;border-radius:17px;margin-top:auto;padding:20px}
.sidebar-bottom span{background:#176674;border-radius:9px;display:inline-grid;place-items:center;width:34px;height:34px;color:#61ead2!important;font-size:20px!important}
.sidebar-bottom h4{font-size:14px;margin:13px 0 6px;color:#f0fcff}.sidebar-bottom p{color:#a5c9d0;font-size:11px;line-height:1.6}
.sidebar-bottom:after{content:"Acesse o assistente para explorar";display:block;font-size:10px;color:#77ddcd;margin-top:14px}
.sidebar .nav button:last-child{margin-top:12px;color:#95a8c4}
.topbar{min-height:76px;height:auto;padding:12px 23px;background:#fff;gap:12px;box-shadow:0 2px 16px #263b5b06;z-index:12}
.searchtop{width:auto;flex:1;max-width:385px;min-width:210px;height:41px;border-radius:11px;background:#f7f9fd;border-color:#e7eaf3;color:#8495a9;cursor:pointer;box-shadow:none}
.searchtop:hover,.searchtop:focus{background:#edf3ff;border-color:#b9cbff;color:#3f5c8b}
.searchtop svg{height:17px;width:17px}.top-actions{gap:8px;flex-wrap:wrap;justify-content:flex-end}
.top-actions input,.top-actions select{background:#fbfcfe;border-color:#e0e6ee;border-radius:9px;font-size:11px;padding:10px 8px;height:41px;color:#3e5572}
.top-actions input{width:125px}.top-actions select{max-width:165px}
.top-actions .btn-secondary,.assistant-toggle{height:41px;border-radius:9px;background:#eaf0ff;color:#315ed2}
.assistant-toggle{font-size:21px;padding:0 12px;border:1px solid #e1e9fc}.assistant-toggle:hover{background:#d9e6ff}
.profile{min-width:160px;margin-left:3px}.profile strong{font-size:11px;max-width:135px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile small{font-size:10px;color:#8495a9}.avatar{width:35px;height:35px;background:#e4f8f3;border:1px solid #c9eee5;color:#0d947d}
.bodyarea{grid-template-columns:minmax(0,1fr) 334px;min-height:calc(100vh - 76px)}
.assistant-collapsed .bodyarea{grid-template-columns:minmax(0,1fr)}
.workspace{padding:29px clamp(18px,2.7vw,39px) 56px;min-width:0;max-width:1600px;width:100%;margin:0 auto}
.eyebrow{font-size:10px;font-weight:800;color:#5394a6;letter-spacing:1.8px;text-transform:uppercase;display:block;margin-bottom:9px}
.dashboard-head{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-bottom:22px}
.dashboard-head .page-title{margin:0 0 7px}.page-title{font-size:30px;line-height:1.19;font-weight:800;letter-spacing:-1.2px;color:#14263e}
.subtitle{font-size:13px;color:#8493a7;line-height:1.55;margin:0 0 16px}
.dashboard-head .subtitle{margin:0}.dashboard-quick{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.connection-pill{display:inline-flex;align-items:center;gap:7px;background:#eaf8f4;border:1px solid #c9ede1;color:#147d67;border-radius:100px;padding:8px 13px;font-size:11px;font-weight:750}
.dashboard-quick .btn-secondary{border:1px solid #dfe6f1;background:#fff;color:#3f5c80;box-shadow:0 3px 14px #243d5c08;font-size:11px}
.quick-period{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:-7px 0 15px;color:#7e8ea3;font-size:11px}
.quick-period button{background:#eaf0fc;color:#5572a3;border:1px solid #e1e9f6;padding:6px 11px;border-radius:7px;font-weight:700}
.quick-period button:hover{background:#dbe7fc}.quick-period small{font-size:10px;color:#a5afbf}
.ask-banner{border:1px solid #dde8fb;border-radius:17px;padding:12px 13px;background:linear-gradient(135deg,#fff,#fbfdff);box-shadow:0 8px 26px #1f59bc08;margin-bottom:20px;min-height:66px}
.ask-banner .spark{background:#e6f1ff;font-size:23px;border-radius:12px;width:39px;height:39px;display:grid;place-items:center;padding:0}
.ask-banner input{font-size:12px}.ask-banner .btn-primary{padding:11px 17px}
.btn-primary{background:linear-gradient(135deg,#527df5,#355fe1);border-radius:10px;padding:11px 18px;box-shadow:0 6px 15px #2d61e124;font-weight:750}
.btn-primary:hover{background:#345bd5;box-shadow:0 9px 18px #265ad829}
.btn-secondary{border:1px solid #e2e9f3;background:#f2f6fc;color:#406181;border-radius:10px;font-weight:690}
.card,.metric{border-radius:17px;border:1px solid var(--line);box-shadow:0 5px 20px #2e46620a;background:#fff}
.kpis{gap:15px;margin:0 0 17px}.metric{padding:20px 20px 17px;min-height:163px;position:relative;overflow:hidden}
.metric:before{content:"";position:absolute;left:0;top:0;height:3px;width:100%;background:linear-gradient(90deg,#547df4,#9ab4ff);opacity:.48}
.metric .m-icon{width:40px;height:40px;margin-bottom:13px;border-radius:11px;background:#eaf1ff;color:#456fec;font-size:19px}
.metric .m-icon.green{background:#e4f8f2;color:#0da88c}.metric .m-icon.red{background:#fff1ee;color:#d66f5b}
.metric label{font-size:11px;font-weight:670;color:#637793;margin-bottom:5px}.metric strong{font-size:29px;line-height:1.16;color:#192e4c;letter-spacing:-1.3px}
.metric small{font-size:10px;color:#93a2b2;line-height:1.5;margin-top:8px;min-height:16px;display:block}
.sections{gap:16px;margin-bottom:16px;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}
.card{padding:23px 22px}.card-header{align-items:start;margin-bottom:14px}.card h3{font-size:15px;font-weight:780;letter-spacing:-.35px;color:#233d5c;margin:0 0 6px}
.card p{font-size:12px;line-height:1.7;color:#75869b}.card-header .link-btn{padding-top:4px}
.link-btn{color:#466ee8;font-size:11px;font-weight:750}.link-btn:hover{text-decoration:underline}
.bar-line{grid-template-columns:minmax(88px,33%) minmax(40px,1fr) 54px;gap:12px;align-items:center;margin:17px 0;color:#405772;font-size:11px}
.bar-line .bar-label{font-size:11px;font-weight:580;color:#47607e}.bar-line .bar-track{height:9px;background:#eaf0f9}
.bar-line .bar-fill{background:linear-gradient(90deg,#5478f4,#5bb4ec)}.bar-line strong{font-size:11px;color:#233c5d;font-weight:790}
.insight-grid{gap:14px}.insight{border:1px solid #e4edf8;border-radius:13px;background:linear-gradient(145deg,#fbfcff,#f6f9ff);padding:17px;min-height:104px}
.insight strong{color:#345779;font-size:12px}.insight p{color:#8093ac;font-size:11px;margin-top:9px}
.distribution{display:grid;grid-template-columns:130px minmax(0,1fr);gap:18px;align-items:center;padding:13px 0 16px}
.distribution-donut{height:128px;width:128px;border-radius:50%;display:grid;place-items:center;position:relative}
.distribution-donut:after{content:"";position:absolute;inset:25px;border-radius:50%;background:white}
.distribution-donut>div{position:relative;z-index:1;text-align:center}.distribution-donut strong{display:block;font-size:21px;color:#273e62;letter-spacing:-.8px}.distribution-donut small{font-size:10px;color:#92a1b5}
.distribution-legend{display:flex;flex-direction:column;gap:12px}.legend-entry{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:8px;font-size:10px}
.legend-entry i{height:9px;width:9px;border-radius:3px}.legend-entry span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#637998}.legend-entry strong{font-size:11px;color:#304762}
.card .footnote{padding-top:8px;border-top:1px solid #f0f3f8;color:#96a2b3;font-size:10px}.main-insights{margin-bottom:16px}
.sidebar-bottom p,.system-note{line-height:1.6}
.system-note{background:#f3f7ff;color:#4d6686;border:1px solid #dce8fa;border-radius:12px}
.alert{border-radius:12px;padding:13px 17px;margin-bottom:16px}
.saved-report{display:flex;align-items:center;gap:9px;padding:11px;border-top:1px solid #edf0f6;font-size:11px}
.saved-report strong{flex:1;color:#3b5678}.saved-report span{font-size:18px;color:#5278ec}
.assistant{top:76px;max-height:calc(100vh - 76px);background:#fff;border-left:1px solid #e8edf4}
.assistant-title{padding:21px 19px;font-size:13px;border-bottom:1px solid #edf1f6}
.assistant-title span{background:#edf1ff;border-radius:8px;padding:5px 8px;margin-right:6px;color:#4d6dec}
.assistant-content{padding:19px 16px}.message{border-radius:14px;font-size:12px;padding:15px;line-height:1.7}
.message.bot{background:#fafcff;border:1px solid #e7eef9}.message.user{background:#eaf1ff;border:1px solid #dde9fb;color:#4c638c}
.message h4{color:#284e80;margin-bottom:7px}.chat-bottom{padding:14px;border-top:1px solid #edf1f7}
.chat-bottom input{border:1px solid #e1e7f2;border-radius:11px;font-size:11px;padding:12px}
.chat-bottom button{min-width:40px;border-radius:11px}
.helper-list button{font-size:11px;border:1px solid #e7eef9;background:#f4f7ff;border-radius:10px;padding:11px;color:#4d6486}
.helper-list button:hover{background:#e9f0ff;border-color:#c9dafa}
.answer-highlight{border-radius:13px;background:linear-gradient(120deg,#e4eeff,#f0fbf8);padding:13px 16px;margin-bottom:10px}
.answer-highlight strong{display:block;font-size:27px;letter-spacing:-.6px;color:#2c59bb}.answer-highlight span{color:#607c9a;font-size:11px}
.datatable{font-size:11px}.datatable th{padding:14px 13px;font-size:10px;font-weight:780;text-transform:uppercase;letter-spacing:.55px;color:#8190a2;background:#f7f9fd}
.datatable td{padding:14px 13px;color:#546980;border-top:1px solid #edf1f6}.datatable tbody tr:hover{background:#f8faff}
.datatable td:last-child{text-align:left}.datatable th:last-child{text-align:left}
.pill{background:#e2f7ef;color:#128666;border-radius:7px;padding:6px 9px}.pill-muted{background:#f0f3f8;color:#8795aa}
.data-risk{font-weight:680;padding:6px 9px;border-radius:8px}.data-risk.operational{background:#e8f5ff;color:#376a9b}
.card .caption{color:#97a4b3;font-size:10px}
.kpis-three{grid-template-columns:repeat(3,minmax(0,1fr))}.patient-definition{max-width:780px}.patient-definition p{max-width:650px;font-size:13px}
.catalog-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:18px}
.catalog-overview>div{background:#fff;border:1px solid #e4eaf3;border-radius:16px;box-shadow:0 5px 19px #2e46620a;padding:20px}
.catalog-overview span{font-size:11px;color:#697f9a;font-weight:650;display:block}.catalog-overview strong{display:block;font-size:26px;color:#284262;margin-top:12px;line-height:1.1}
.catalog-overview small{display:block;font-size:10px;color:#9babbd;margin-top:7px}
.catalog-info{margin-bottom:18px}.catalog-section .card-header p{margin:2px 0 0}.catalog-counter{background:#e8f3ff;color:#4773af;padding:8px 11px;border-radius:9px;font-size:11px;font-weight:730}
.catalog-toolbar{display:grid;grid-template-columns:minmax(170px,1fr) 170px 172px;gap:11px;margin:18px 0}
.catalog-search{display:flex;align-items:center;gap:9px;background:#f8faff;border:1px solid #e0e8f4;padding:0 13px;border-radius:11px;min-width:0}
.catalog-search svg{width:17px;height:17px;color:#9aa9ba}.catalog-search input{height:43px;min-width:0;border:0;background:transparent;outline:none;flex:1;color:#2f4969;font-size:11px}
.catalog-toolbar select{min-width:0;padding:11px 9px;background:#fff;border:1px solid #e0e8f4;border-radius:10px;color:#42607d;font-size:11px}
.catalog-table td:first-child{max-width:280px}.catalog-table td strong{font-size:11px;color:#284464}.catalog-table .caption{overflow-wrap:anywhere}
.catalog-fields{margin-bottom:16px}.field-tags{display:flex;flex-wrap:wrap;gap:8px}.field-tags span{padding:7px 10px;border-radius:8px;background:#f2f6fd;color:#526d90;border:1px solid #e2e9f5;font-family:ui-monospace,monospace;font-size:10px}
.catalog-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:16px;color:#8996a9;font-size:11px}
.catalog-pagination>div{display:flex;gap:8px}
.catalog-load,.loading-label{display:flex;align-items:center;gap:10px;color:#70829b;font-size:12px;margin:15px 0}
.spinner{width:17px;height:17px;border:2px solid #dae6fc;border-top-color:#4b74e8;border-radius:50%;display:inline-block;animation:turn .7s linear infinite;flex-shrink:0}
@keyframes turn{to{transform:rotate(360deg)}}
.skeleton-card{overflow:hidden}.skeleton{background:linear-gradient(90deg,#eef2f9 15%,#f9fbff 48%,#edf1f8 78%);background-size:240% 100%;animation:shimmer 1.25s linear infinite;border-radius:8px}
@keyframes shimmer{from{background-position:240% 0}to{background-position:-240% 0}}
.sk-icon{height:35px;width:38px;margin-bottom:22px}.sk-line{height:10px;width:65%;margin-bottom:11px}.sk-number{height:27px;width:48%;margin-bottom:13px}
.sk-title{height:15px;width:44%;margin:0 0 25px}.sk-row{height:13px;margin:18px 0;width:90%}.sk-row:nth-of-type(3){width:76%}.sk-circle{height:128px;width:128px;border-radius:50%;margin:8px auto}
.assistant-wait{display:flex;align-items:center;gap:9px;font-weight:700;color:#6881a3}
@media(max-width:1600px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{min-height:150px}.topbar{flex-wrap:wrap}.top-actions{flex:1;min-width:0}.searchtop{max-width:none}.bodyarea{grid-template-columns:minmax(0,1fr) 304px}.app{grid-template-columns:226px minmax(0,1fr)}}
@media(max-width:1250px){.bodyarea{grid-template-columns:minmax(0,1fr)}.assistant{max-height:none;min-height:360px;position:static;border-left:0;border-top:1px solid #e9eef7}.assistant-content{max-height:380px}.app{grid-template-columns:214px minmax(0,1fr)}.sidebar{width:auto}.catalog-toolbar{grid-template-columns:minmax(200px,1fr) 155px 155px}}
@media(max-width:850px){.sections{grid-template-columns:1fr}.catalog-overview{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-toolbar{grid-template-columns:1fr 1fr}.catalog-search{grid-column:span 2}}
@media(max-width:760px){.app{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:15px}.sidebar .logo{padding-bottom:12px}.nav{flex-direction:row;overflow-x:auto;padding-bottom:4px}.nav button{width:auto;min-width:max-content;font-size:11px;padding:10px}.nav-caption,.nav-separator,.sidebar-bottom{display:none}.topbar{padding:12px 15px;position:static}.searchtop{display:flex;width:100%;min-width:0}.top-actions{justify-content:start;width:100%;gap:7px}.top-actions input{width:126px}.top-actions select{max-width:164px}.profile{display:none}.bodyarea{display:block}.workspace{padding:22px 15px 45px}.dashboard-head{margin-bottom:18px}.page-title{font-size:25px}.kpis,.catalog-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{padding:15px;min-height:142px}.metric strong{font-size:24px}.sections,.form-grid,.grid-3{grid-template-columns:1fr}.card{padding:17px}.bar-line{grid-template-columns:minmax(80px,32%) minmax(35px,1fr) 46px;gap:7px}.insight-grid{grid-template-columns:1fr}.distribution{grid-template-columns:120px minmax(0,1fr);gap:10px}.distribution-donut{width:114px;height:114px}.catalog-toolbar{grid-template-columns:1fr}.catalog-search{grid-column:auto}.catalog-section{overflow:hidden}.ask-banner input{font-size:11px}.assistant{max-height:none}.assistant-content{max-height:440px}}
@media(max-width:430px){.kpis,.catalog-overview{grid-template-columns:1fr 1fr}.metric strong{font-size:22px}.top-actions input{width:127px}.dashboard-quick{width:100%}.distribution{display:block}.distribution-donut{margin:0 auto 17px}.catalog-pagination{align-items:start}.ask-banner .spark{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
