/* Custom reports studio. The document itself is always light paper (client deliverable), the studio around it follows the theme. */
.rp-legacy{display:none!important;}
.rp{display:flex;flex-direction:column;gap:18px;}
.rp-gal{display:flex;flex-direction:column;gap:10px;}
.rp-gal-h{display:flex;align-items:baseline;justify-content:space-between;margin-top:6px;}
.rp-gal-h b{font-size:15px;font-weight:650;letter-spacing:-.01em;}
.rp-gal-h small{display:block;font-size:12px;color:var(--text2);margin-top:2px;}
.rp-tpls{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(210px,1fr);gap:12px;overflow-x:auto;padding:4px 2px 12px;scroll-snap-type:x proximity;}
.rp-tpl{scroll-snap-align:start;text-align:left;font:inherit;color:inherit;cursor:pointer;display:flex;flex-direction:column;gap:6px;padding:12px 12px 14px;border-radius:20px;border:0;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.015));box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 0 0 1px rgba(255,255,255,.06),0 18px 30px -22px rgba(0,0,0,.7);transition:transform .15s,box-shadow .15s;}
html[data-theme="light"] .app-shell .rp-tpl{background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(255,255,255,.5));box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(255,255,255,.8),0 18px 30px -22px rgba(60,40,140,.4);}
.rp-tpl:hover{transform:translateY(-2px);}
.rp-tpl.is-on{box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 0 0 2px var(--accent),0 20px 34px -20px rgba(94,48,181,.55);}
.rp-tpl b{font-size:13.5px;font-weight:650;}
.rp-tpl p{margin:0;font-size:12px;color:var(--text2);line-height:1.4;flex:1;}
.rp-tpl small{font-size:11px;color:var(--text3);}
.rp-thumb{height:70px;border-radius:12px;background:#fff;padding:8px;display:flex;flex-direction:column;gap:4px;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(30,30,60,.08);}
.rp-thumb i{display:block;border-radius:3px;background:#E4E2F2;height:5px;}
.rp-thumb i.k-cover{height:12px;background:linear-gradient(90deg,#4A3AA7,#9085E9);width:60%;}
.rp-thumb i.k-line{height:10px;background:linear-gradient(90deg,#2F7DE1,#7B4FD8,#D9487D);opacity:.7;clip-path:polygon(0 80%,25% 55%,50% 65%,75% 25%,100% 10%,100% 100%,0 100%);}
.rp-thumb i.k-cols{height:10px;background:repeating-linear-gradient(90deg,#4A3AA7 0 6px,#EB6834 6px 12px,transparent 12px 20px);}
.rp-thumb i.k-donut{height:10px;width:30%;border-radius:10px;background:conic-gradient(#4A3AA7 0 40%,#EB6834 0 70%,#2A78D6 0);}
.rp-thumb i.k-ring{height:10px;width:24%;border-radius:10px;background:conic-gradient(#1BAF7A 0 62%,#E4E2F2 0);}

.rp-work{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:16px;align-items:start;}
.rp-left{padding:0;position:sticky;top:12px;max-height:calc(100vh - 28px);display:flex;flex-direction:column;overflow:hidden;}
.rp-tabs{display:flex;gap:2px;padding:10px 10px 0;overflow-x:auto;}
.rp-tabs button{font:inherit;font-size:12.5px;padding:8px 12px;border:0;background:transparent;color:var(--text2);border-radius:999px;cursor:pointer;white-space:nowrap;}
.rp-tabs button.is-on{background:var(--text);color:var(--bg);font-weight:600;}
.rp-left-b{padding:14px 16px 18px;overflow-y:auto;display:flex;flex-direction:column;gap:12px;}
.rp-hint{margin:0;font-size:12px;color:var(--text3);line-height:1.45;}
.rp-outline{display:flex;flex-direction:column;gap:6px;}
.rp-orow{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:9px 10px;border-radius:14px;background:var(--viz-track);cursor:grab;transition:box-shadow .12s,transform .12s;}
.rp-orow b{display:block;font-size:13px;font-weight:600;}
.rp-orow small{font-size:11px;color:var(--text3);}
.rp-orow.is-drag{opacity:.4;}
.rp-orow.is-over{box-shadow:0 -2px 0 var(--accent);}
.rp-grip{color:var(--text3);letter-spacing:-2px;font-size:13px;}
.rp-octl{display:flex;gap:2px;}
.rp-octl button{width:26px;height:26px;border-radius:8px;border:0;background:transparent;color:var(--text2);font-size:14px;cursor:pointer;}
.rp-octl button:hover:not(:disabled){background:var(--viz-grid);color:var(--text);}
.rp-octl button:disabled{opacity:.25;cursor:default;}
.rp-addbtn{align-self:flex-start;}
.rp-chips{display:flex;flex-wrap:wrap;gap:6px;}
.rp-chips button{font:inherit;font-size:12px;padding:6px 11px;border-radius:999px;border:0;background:var(--viz-track);color:var(--text2);cursor:pointer;display:inline-flex;align-items:center;}
.rp-chips button.is-on{background:var(--text);color:var(--bg);font-weight:600;}
.rp-lib{display:flex;flex-direction:column;gap:6px;}
.rp-lrow{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:10px 12px;border-radius:14px;background:var(--viz-track);}
.rp-lrow.is-in{opacity:.55;}
.rp-lrow b{font-size:13px;font-weight:600;}
.rp-lrow p{margin:2px 0 4px;font-size:11.5px;color:var(--text2);line-height:1.4;}
.rp-lrow code{font-family:ui-monospace,Menlo,monospace;font-size:10.5px;color:var(--text3);word-break:break-all;}
.rp-field{display:flex;flex-direction:column;gap:6px;}
.rp-field > label{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text3);font-weight:600;}
.rp-field input[type=text],.rp-field input[type=email]{font:inherit;font-size:13px;padding:10px 12px;border-radius:12px;border:0;background:var(--viz-track);color:var(--text);outline:none;box-shadow:inset 0 1px 2px rgba(0,0,0,.2);}
.rp-field input:focus-visible{box-shadow:0 0 0 2px var(--accent);}
.rp-seg{display:flex;gap:2px;padding:3px;border-radius:999px;background:var(--viz-track);align-self:flex-start;flex-wrap:wrap;}
.rp-seg button{font:inherit;font-size:12px;padding:6px 12px;border:0;border-radius:999px;background:transparent;color:var(--text2);cursor:pointer;}
.rp-seg button.is-on{background:var(--text);color:var(--bg);font-weight:600;}
.rp-sep{height:1px;background:var(--viz-grid);margin:4px 0;}
.rp-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;font-size:13px;}
.rp-toggle small{display:block;font-size:11.5px;color:var(--text3);margin-top:2px;line-height:1.35;font-weight:400;}
.rp-toggle b{font-weight:600;}
.rp-toggle input{position:absolute;opacity:0;}
.rp-toggle i{flex-shrink:0;width:38px;height:22px;border-radius:999px;background:var(--viz-track);position:relative;transition:background .15s;box-shadow:inset 0 1px 2px rgba(0,0,0,.25);}
.rp-toggle i::after{content:"";position:absolute;left:2px;top:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 4px rgba(0,0,0,.3);transition:transform .15s;}
.rp-toggle input:checked + i{background:var(--accent);}
.rp-toggle input:checked + i::after{transform:translateX(16px);}
.rp-toggle input:focus-visible + i{outline:2px solid var(--accent);outline-offset:2px;}

.rp-right{min-width:0;display:flex;flex-direction:column;gap:12px;}
.rp-bar-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.rp-bar-top b{display:block;font-size:15px;font-weight:650;}
.rp-bar-top small{font-size:12px;color:var(--text2);}
.rp-acts{display:flex;gap:8px;flex-wrap:wrap;}
.rp-job{display:flex;align-items:center;gap:8px;}
.rp-chip{font-size:11.5px;font-weight:600;padding:4px 10px;border-radius:999px;background:var(--viz-track);color:var(--text2);}
.rp-chip.is-ok{background:rgba(47,191,138,.16);color:var(--success);}
.rp-chip.is-run{background:rgba(245,194,66,.18);color:var(--warning);}

/* the document */
.rp-paper{border-radius:22px;padding:18px;background:linear-gradient(180deg,#F1F0F8,#E9E8F2);box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 30px 60px -30px rgba(0,0,0,.6);}
.rp-page{background:#fff;border-radius:14px;padding:0 0 22px;box-shadow:0 12px 30px -14px rgba(40,30,110,.35),0 0 0 1px rgba(30,30,60,.06);font-size:13px;line-height:1.5;overflow:hidden;}
.rp-paper h1,.rp-paper h2,.rp-paper h3,.rp-paper h4,.rp-paper h5{color:#1D1D1F;margin:0;}
.rp-cover{padding:46px 38px 38px;background:linear-gradient(135deg,#F3F0FF 0%,#FFFFFF 55%,#EAF2FF 100%);border-bottom:1px solid rgba(30,30,60,.08);}
.rp-logo{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:17px;letter-spacing:-.02em;margin-bottom:34px;}
.rp-lm{width:22px;height:22px;border-radius:7px;background:linear-gradient(145deg,#8E6BE0,#5E30B5);display:inline-block;box-shadow:0 4px 8px -2px rgba(94,48,181,.5);}
.rp-eyebrow{font-size:10.5px;letter-spacing:.14em;font-weight:700;color:#5E30B5;margin-bottom:8px;}
.rp-cover h1{font-size:32px;line-height:1.1;letter-spacing:-.03em;font-weight:700;background:linear-gradient(96deg,#2F5FD8,#7B4FD8 55%,#D9487D);-webkit-background-clip:text;background-clip:text;color:transparent;}
.rp-sub{font-size:13px;color:#5C5C66;margin-top:10px;}
.rp-dom{font-size:15px;font-weight:650;margin-top:18px;color:#1D1D1F;}
.rp-gen{font-size:11.5px;color:#86868B;margin-top:4px;}
.rp-sec{padding:22px 38px 4px;}
.rp-sec + .rp-sec{border-top:1px solid rgba(30,30,60,.06);margin-top:6px;}
.rp-sec-h h3{font-size:17px;font-weight:650;letter-spacing:-.02em;}
.rp-sec-h p{margin:3px 0 0;font-size:12px;color:#6E6E73;}
.rp-sec-h{margin-bottom:14px;}
.rp-chart{margin-top:4px;}
.rp-meta{margin-top:12px;}
.rp-paper .gnv-meta{font-size:11px;color:#6E6E73;border-top-color:rgba(30,30,60,.08);}
.rp-paper .gnv-mi code{background:#F1F0F8;color:#1D1D1F;}
.rp-score{display:flex;gap:22px;align-items:center;flex-wrap:wrap;}
.rp-ring{position:relative;width:118px;height:118px;flex-shrink:0;}
.rp-ring-n{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.rp-ring-n b{font-size:30px;font-weight:700;letter-spacing:-.03em;line-height:1;}
.rp-ring-n span{font-size:10px;color:#86868B;margin-top:2px;}
.rp-t{font-size:15px;font-weight:650;margin-bottom:8px;}
.rp-pills{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px;}
.rp-known{display:flex;gap:6px;flex-wrap:wrap;align-items:center;font-size:11.5px;color:#6E6E73;}
.rp-b{display:inline-block;font-size:11px;font-weight:600;padding:3px 9px;border-radius:999px;background:#F1F0F8;color:#4B4B55;}
.rp-b.tag{background:#EEF0FF;color:#3F3FA0;font-weight:500;}
.rp-b.ok{background:rgba(27,175,122,.14);color:#0E7A52;}
.rp-b.warn,.rp-b.mid{background:rgba(242,176,30,.2);color:#8A5A00;}
.rp-b.bad{background:rgba(198,40,40,.12);color:#C62828;}
.rp-b.hi{background:rgba(27,175,122,.16);color:#0E7A52;}
.rp-b.flat{background:#F1F0F8;color:#5C5C66;}
.rp-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:10px;}
.rp-kpi{padding:14px 14px 12px;border-radius:16px;background:linear-gradient(180deg,#FAF9FF,#F3F2FA);box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(30,30,60,.06);display:flex;flex-direction:column;gap:4px;}
.rp-kpi span{font-size:11.5px;color:#6E6E73;}
.rp-kpi b{font-size:24px;font-weight:700;letter-spacing:-.03em;}
.rp-d{font-size:11.5px;font-weight:600;}
.rp-d.up{color:#138A5E;}.rp-d.down{color:#C62828;}.rp-d.flat{color:#6E6E73;}
.rp-wins{margin:18px 38px 4px;padding:14px 16px;border-radius:16px;background:rgba(245,194,66,.12);box-shadow:inset 0 0 0 1px rgba(210,150,20,.35);}
.rp-sec.rp-wins + .rp-sec{border-top:0;}
.rp-wins-h{font-size:13px;margin-bottom:8px;}
.rp-win{display:flex;gap:8px;align-items:center;font-size:12.5px;padding:3px 0;}
.rp-rep p{margin:10px 0;color:#3A3A3F;}
.rp-tags{display:flex;gap:6px;flex-wrap:wrap;}
.rp-h4{font-size:13.5px;font-weight:650;margin:16px 0 8px;}
.rp-cite{padding:12px 14px;border-radius:14px;background:#F8F8FB;margin-bottom:8px;box-shadow:inset 0 0 0 1px rgba(30,30,60,.05);}
.rp-cite-h{display:flex;justify-content:space-between;align-items:center;gap:10px;}
.rp-cite p{margin:6px 0 4px;font-size:12.5px;color:#3A3A3F;}
.rp-cite small{font-size:11.5px;color:#86868B;}
.rp-ul{margin:0;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:8px;}
.rp-ul li{position:relative;padding-left:24px;font-size:12.5px;color:#3A3A3F;}
.rp-ul li::before{content:"";position:absolute;left:0;top:3px;width:14px;height:14px;border-radius:50%;background:#9085E9;box-shadow:inset 0 1px 0 rgba(255,255,255,.5);}
.rp-ul.ok li::before{background:#1BAF7A;}.rp-ul.warn li::before{background:#EDA100;}
.rp-opps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;}
.rp-opp{display:flex;gap:10px;padding:12px 14px;border-radius:14px;background:#F8F8FB;box-shadow:inset 0 0 0 1px rgba(30,30,60,.05);cursor:pointer;}
.rp-opp input{margin-top:3px;accent-color:#5E30B5;}
.rp-opp-h{display:flex;justify-content:space-between;gap:8px;align-items:flex-start;}
.rp-opp p{margin:4px 0 0;font-size:12px;color:#6E6E73;}
.rp-list{display:flex;flex-direction:column;gap:6px;}
.rp-row{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:9px 12px;border-radius:12px;background:#F8F8FB;font-size:12.5px;}
.rp-comp{display:flex;gap:10px;padding:10px 12px;border-radius:14px;background:#F8F8FB;}
.rp-comp .gnv-dot{margin-top:5px;}
.rp-comp p{margin:2px 0 0;font-size:12px;color:#6E6E73;}
.rp-comp small{color:#86868B;font-size:11.5px;}
.rp-fan{padding:12px 14px;border-radius:14px;background:#F8F8FB;margin-bottom:8px;}
.rp-fq{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0;}
.rp-fq span{font-size:11.5px;padding:4px 10px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1px rgba(30,30,60,.1);}
.rp-fan p{margin:8px 0 0;font-size:12px;color:#6E6E73;}
.rp-src{display:flex;flex-direction:column;padding:9px 12px;border-radius:12px;background:#F8F8FB;}
.rp-src small{font-size:11.5px;color:#86868B;}
.rp-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;}
.rp-step{display:flex;gap:10px;padding:12px 14px;border-radius:14px;background:#F8F8FB;}
.rp-step i{flex-shrink:0;width:24px;height:24px;border-radius:50%;background:linear-gradient(145deg,#8E6BE0,#5E30B5);color:#fff;font-style:normal;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 8px -3px rgba(94,48,181,.6);}
.rp-step p{margin:2px 0 0;font-size:12px;color:#6E6E73;}
.rp-cl-h{margin:14px 0 6px;font-size:12.5px;font-weight:650;color:#4B4B55;}
.rp-cl{display:flex;gap:9px;align-items:flex-start;padding:5px 0;font-size:12.5px;color:#3A3A3F;cursor:pointer;}
.rp-cl input{margin-top:3px;accent-color:#5E30B5;}
.rp-cats{display:flex;flex-direction:column;gap:8px;min-width:260px;flex:1;}
.rp-cat{display:grid;grid-template-columns:150px 1fr 40px;gap:4px 10px;align-items:center;font-size:12px;}
.rp-cat small{grid-column:2/4;color:#86868B;font-size:10.5px;margin-top:-3px;}
.rp-bar{height:8px;border-radius:999px;background:rgba(30,30,60,.07);box-shadow:inset 0 1px 2px rgba(40,30,110,.14);overflow:hidden;}
.rp-bar i{display:block;height:100%;border-radius:999px;}
.rp-method{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;}
.rp-method h5{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#86868B;margin-bottom:6px;font-weight:700;}
.rp-method ul{margin:0;padding-left:16px;font-size:12px;color:#3A3A3F;display:flex;flex-direction:column;gap:5px;}
.rp-note{margin:12px 0 0;font-size:12px;color:#6E6E73;padding:10px 12px;border-radius:12px;background:#F8F8FB;}
.rp-empty{margin:6px 0;font-size:12.5px;color:#86868B;}
.rp-foot{padding:16px 38px 0;font-size:11px;color:#86868B;text-align:center;border-top:1px solid rgba(30,30,60,.06);margin-top:18px;}
.rp-gr .gr-head{margin-bottom:14px;}
.rp-gr h2{font-size:17px!important;}
.rp-gr .gr-cat,.rp-gr .card{background:#F8F8FB!important;box-shadow:inset 0 0 0 1px rgba(30,30,60,.06)!important;}
.rp-paper .card.rp-flat{background:transparent;box-shadow:none;border:0;padding:0;-webkit-backdrop-filter:none;backdrop-filter:none;}
.rp-paper .card.rp-flat .gnv-head{padding:0 0 8px;}
.rp-paper .gnv-etable th,.rp-paper .gnv-etable td{color:#1D1D1F;}
.rp-paper .gnv-etable th{color:#86868B;}

.rp-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;}
.rp-tile{padding:16px 18px;display:flex;flex-direction:column;gap:4px;}
.rp-tile span{font-size:12px;color:var(--text2);}
.rp-tile b{font-size:26px;font-weight:700;letter-spacing:-.03em;}
.rp-two{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px;align-items:start;}
.rp-saved{display:flex;flex-direction:column;gap:14px;}
@media (max-width:1100px){.rp-work{grid-template-columns:1fr;}.rp-left{position:static;max-height:none;}.rp-two{grid-template-columns:1fr;}}
@media (max-width:720px){.rp-sec{padding:18px 18px 4px;}.rp-cover{padding:30px 20px;}.rp-cat{grid-template-columns:110px 1fr 36px;}.rp-wins{margin:14px 18px 4px;}}

#rp-print-root{display:none;}
@page{size:A4;margin:10mm;}
@media print{
  body.rp-printing > *:not(#rp-print-root){display:none!important;}
  body.rp-printing{background:#fff!important;overflow:visible!important;height:auto!important;}
  body.rp-printing #rp-print-root{display:block!important;position:static;background:#fff;padding:0;box-shadow:none;border-radius:0;--viz-bar:linear-gradient(90deg,#2F7DE1,#7B4FD8 55%,#D9487D);}
  body.rp-printing #rp-print-root .rp-page{box-shadow:none;border-radius:0;overflow:visible;}
  body.rp-printing #rp-print-root .rp-sec,body.rp-printing #rp-print-root .rp-cite,body.rp-printing #rp-print-root .rp-opp,body.rp-printing #rp-print-root .rp-fan,body.rp-printing #rp-print-root .rp-step,body.rp-printing #rp-print-root .rp-kpi{break-inside:avoid;}
  body.rp-printing #rp-print-root .rp-cover{break-after:page;}
  body.rp-printing *{-webkit-print-color-adjust:exact;print-color-adjust:exact;}
}
/* the tab row was being squeezed by the flex column and clipped */
.rp-tabs{flex-shrink:0;padding:10px 10px 8px;}
.rp-tabs button{line-height:1.3;flex-shrink:0;}
.rp-left-b{flex:1 1 auto;min-height:0;}
