
:root {
  --r120-page: #05050a;
  --r120-text: #f5f4f2;
  --r120-muted: rgba(255,255,255,.55);
  --r120-glass: rgba(20,20,30,.46);
  --r120-glass-strong: rgba(14,14,22,.78);
  --r120-line: rgba(255,255,255,.08);
  --r120-purple: #8a4fff;
  --r120-amber: #ffb067;
  --r120-sky: #5bcef7;
  --r120-pink: #f472b6;
  --r120-green: #74e3b1;
}

body.r120-rice-ui,
body.r120-rice-ui button,
body.r120-rice-ui input,
body.r120-rice-ui select,
body.r120-rice-ui textarea { font-family: Poppins, ui-sans-serif, system-ui, sans-serif !important; }

body.r120-rice-ui {
  background:
    radial-gradient(850px 600px at 88% -6%, rgba(111,56,255,.22), transparent 62%),
    radial-gradient(760px 560px at -12% 108%, rgba(255,176,103,.11), transparent 63%),
    #05050a !important;
}

body.r120-rice-ui .shell { padding: 0 24px 146px 112px !important; }
body.r120-rice-ui .section-nav.canva-rail { background: linear-gradient(180deg,rgba(7,7,14,.94),rgba(7,7,14,.66)) !important; }
body.r120-rice-ui .rail-logo::before { display:none !important; }
body.r120-rice-ui .rail-logo svg { display:block !important; position:relative; z-index:2; width:30px !important; height:30px !important; fill:none !important; stroke:#fff !important; stroke-width:1.55 !important; }
body.r120-rice-ui .rail-logo { display:grid !important; place-items:center !important; color:#fff !important; background:rgba(16,14,27,.86) !important; }
body.r120-rice-ui .rail-logo::after { content:""; position:absolute; inset:7px; border-radius:10px; background:linear-gradient(135deg,#ffcf7e,#8a4fff 52%,#5bcef7); opacity:.92; filter:saturate(110%); }
body.r120-rice-ui .rail-footer-button { display:none !important; }

body.r120-rice-ui .app-header {
  min-height: 82px !important;
  padding: 17px 8px 17px 14px !important;
  margin: 0 0 10px !important;
  border-bottom:0 !important;
  background:linear-gradient(180deg,rgba(5,5,10,.96),rgba(5,5,10,.74) 74%,transparent) !important;
}
body.r120-rice-ui .header-leading { flex:0 0 auto !important; min-width:360px !important; }
body.r120-rice-ui .brand-block h1,
body.r120-rice-ui .brand-block p { display:none !important; }
body.r120-rice-ui .app-header .eyebrow { color:rgba(255,255,255,.56) !important; font-size:11px !important; letter-spacing:.29em !important; white-space:nowrap; }
body.r120-rice-ui .header-tools { flex:1 !important; justify-content:flex-end !important; }
body.r120-rice-ui .r119-command-trigger { width:min(420px,34vw) !important; margin-left:auto !important; height:44px !important; font-size:14px !important; background:rgba(18,17,30,.64) !important; }
body.r120-rice-ui .topbar-health { order:2 !important; display:flex !important; align-items:center !important; gap:10px !important; height:44px !important; padding:6px 13px !important; }
body.r120-rice-ui .topbar-health .status-dot,
body.r120-rice-ui .topbar-health small { display:none !important; }
body.r120-rice-ui .topbar-health span,
body.r120-rice-ui .topbar-health strong { font-size:11px !important; white-space:nowrap; }
body.r120-rice-ui .topbar-health strong { color:#74e3b1 !important; }
.r120-ready-switch { width:39px !important; min-width:39px !important; height:22px !important; min-height:22px !important; padding:2px !important; border:0 !important; border-radius:999px !important; background:rgba(138,79,255,.82) !important; box-shadow:inset 0 0 0 1px rgba(255,255,255,.16) !important; }
.r120-ready-switch i { display:block; width:18px; height:18px; margin-left:17px; border-radius:50%; background:#09090e; transition:margin .2s ease,background .2s ease; }
.r120-ready-switch.idle { background:rgba(255,255,255,.12) !important; }
.r120-ready-switch.idle i { margin-left:0; background:rgba(255,255,255,.7); }
body.r120-rice-ui .header-actions { order:3 !important; }
body.r120-rice-ui .header-actions #saveButton,
body.r120-rice-ui .header-actions #loadButton,
body.r120-rice-ui .header-actions #clearAutosaveButton,
body.r120-rice-ui .header-actions #autosaveStatus { display:none !important; }
body.r120-rice-ui .app-header #themeButton { display:grid !important; place-items:center !important; width:44px !important; min-width:44px !important; height:44px !important; padding:0 !important; }
.r120-notification { display:grid !important; place-items:center !important; width:44px !important; min-width:44px !important; height:44px !important; padding:0 !important; }
.r120-notification svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.6; }

body[data-active-page="dashboard"].r120-rice-ui [data-app-page="dashboard"]:not(#dashboardHome) { display:none !important; }
body.r120-rice-ui .dashboard-home { max-width:1540px !important; }
.r120-dashboard { position:relative; display:block !important; min-height:760px; padding:0 4px 24px; color:var(--r120-text); }
.r120-overview-heading { position:relative; min-height:165px; display:flex; align-items:flex-start; justify-content:space-between; padding:12px 0 0; overflow:visible; }
.r120-overview-copy { position:relative; z-index:3; max-width:760px; }
.r120-overview-heading h2 { margin:0; font-size:clamp(48px,5.4vw,76px); line-height:1.03; letter-spacing:-.055em; font-weight:700; color:#fff; }
.r120-overview-heading h2 em { font-weight:600; font-style:italic; background:linear-gradient(90deg,#ffb067 0%,#d4b4ff 42%,#8a4fff 82%,#fff 110%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.r120-overview-heading h2 span { color:#fff; }
.r120-overview-heading p { max-width:760px; margin:13px 0 0; color:rgba(255,255,255,.55); font-size:15px; line-height:1.7; }
.r120-orb { position:absolute; z-index:0; right:2.5%; top:-108px; width:310px; height:310px; border-radius:50%; background:radial-gradient(circle at 65% 30%,rgba(255,255,255,.78) 0 1.3%,rgba(248,211,255,.75) 2%,rgba(148,85,255,.84) 11%,#3210ad 49%,#130548 76%,#080713 100%); box-shadow:inset 26px 18px 42px rgba(255,255,255,.11),inset -38px -30px 68px rgba(0,0,0,.48),0 35px 90px rgba(64,28,193,.46); opacity:.96; }
.r120-orb::before { content:""; position:absolute; inset:13%; border-radius:50%; border:1px solid rgba(255,255,255,.1); transform:rotate(-25deg); }
.r120-orb::after { content:""; position:absolute; width:72px; height:23px; right:30px; top:46px; border-radius:50%; background:rgba(255,255,255,.3); filter:blur(14px); transform:rotate(-20deg); }
.r120-orb i { position:absolute; inset:0; border-radius:50%; background:linear-gradient(110deg,transparent 36%,rgba(255,255,255,.12) 47%,transparent 56%); transform:rotate(-13deg); }

.r120-kpi-grid { position:relative; z-index:4; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; margin-top:12px; }
.r120-kpi-card { position:relative; min-height:170px; padding:24px 26px; overflow:hidden; border-radius:29px; background:rgba(20,20,30,.47); border:1px solid rgba(255,255,255,.08); box-shadow:0 26px 80px -44px rgba(138,79,255,.62),inset 0 1px 0 rgba(255,255,255,.045); backdrop-filter:blur(24px) saturate(155%); }
.r120-kpi-card::after { content:""; position:absolute; width:180px; height:180px; right:-70px; top:-85px; border-radius:50%; filter:blur(40px); opacity:.34; background:var(--card-color); }
.r120-kpi-card.purple { --card-color:#8a4fff; }
.r120-kpi-card.amber { --card-color:#ffb067; }
.r120-kpi-card.sky { --card-color:#5bcef7; }
.r120-kpi-card.pink { --card-color:#f472b6; background:linear-gradient(135deg,rgba(45,23,96,.66),rgba(90,38,183,.52)); }
.r120-kpi-head { position:relative; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:12px; color:rgba(255,255,255,.52); font-size:10px; font-weight:600; letter-spacing:.22em; }
.r120-kpi-icon { display:grid; place-items:center; width:38px; height:38px; border-radius:50%; border:1px solid rgba(255,255,255,.1); background:rgba(255,255,255,.045); color:#fff; }
.r120-kpi-icon svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; }
.r120-kpi-value { position:relative; z-index:2; display:block; margin-top:25px; color:#fff; font-size:clamp(34px,3.5vw,53px); line-height:1; letter-spacing:-.055em; font-weight:650; }
.r120-kpi-card p { position:relative; z-index:2; margin:10px 0 0; color:rgba(255,255,255,.44); font-size:11px; }
.r120-kpi-card p b { color:#74e3b1; font-weight:600; }

.r120-dashboard-grid { display:grid; grid-template-columns:minmax(0,2fr) minmax(330px,1fr); gap:20px; margin-top:28px; }
.r120-glass-card { border-radius:29px; background:rgba(16,16,26,.54); border:1px solid rgba(255,255,255,.08); box-shadow:0 30px 90px -50px rgba(138,79,255,.64),inset 0 1px 0 rgba(255,255,255,.04); backdrop-filter:blur(25px) saturate(155%); }
.r120-curve-card { min-height:390px; padding:25px 28px 19px; overflow:hidden; }
.r120-card-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }
.r120-card-heading span { color:rgba(255,255,255,.52); font-size:10px; font-weight:600; letter-spacing:.22em; }
.r120-card-heading h3 { margin:4px 0 0; color:#fff; font-size:30px; line-height:1.08; letter-spacing:-.035em; font-weight:650; }
.r120-live-pill { display:inline-flex; align-items:center; gap:8px; padding:9px 13px; border-radius:999px; border:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.025); letter-spacing:0 !important; font-size:11px !important; }
.r120-live-pill i { width:6px; height:6px; border-radius:50%; background:#4ade80; box-shadow:0 0 0 0 rgba(74,222,128,.5); animation:r120Pulse 2.2s infinite; }
.r120-chart-wrap { height:264px; margin-top:16px; }
.r120-area-chart { display:block; width:100%; height:100%; overflow:visible; }
.r120-chart-grid path { fill:none; stroke:rgba(255,255,255,.045); stroke-width:1; stroke-dasharray:4 5; vector-effect:non-scaling-stroke; }
.r120-area-fill { fill:url(#r120AreaGradient); }
.r120-area-line { fill:none; stroke:url(#r120LineGradient); stroke-width:2.5; vector-effect:non-scaling-stroke; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 0 9px rgba(138,79,255,.28)); }
.r120-chart-footer { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:2px; color:rgba(255,255,255,.38); font-size:10.5px; }
.r120-chart-footer button { min-height:0 !important; padding:0 !important; border:0 !important; color:rgba(255,255,255,.62) !important; background:transparent !important; box-shadow:none !important; }
.r120-chart-footer button:hover { color:#fff !important; transform:none !important; }

.r120-pipeline-card { min-height:390px; padding:24px; }
.r120-terminal-title { display:flex; align-items:center; gap:12px; color:rgba(255,255,255,.48); font:500 11px/1.2 JetBrains Mono,monospace; }
.r120-terminal-dots { display:flex; gap:6px; }
.r120-terminal-dots i { width:10px; height:10px; border-radius:50%; background:#ef6b78; }
.r120-terminal-dots i:nth-child(2){ background:#d5a93e; }.r120-terminal-dots i:nth-child(3){ background:#55b98e; }
.r120-pipeline-list { display:grid; gap:9px; margin-top:23px; }
.r120-pipeline-list button { width:100%; min-height:66px !important; display:flex !important; align-items:center !important; justify-content:space-between !important; gap:16px !important; padding:12px 13px !important; border:0 !important; border-radius:13px !important; color:#fff !important; background:rgba(255,255,255,.026) !important; box-shadow:none !important; text-align:left !important; }
.r120-pipeline-list button:hover { background:rgba(255,255,255,.055) !important; transform:translateX(2px) !important; }
.r120-pipeline-list button span { min-width:0; }
.r120-pipeline-list button b { display:block; color:rgba(255,255,255,.88); font:500 12.5px/1.2 JetBrains Mono,monospace; }
.r120-pipeline-list button small { display:block; margin-top:5px; color:rgba(255,255,255,.35); font-size:9.5px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.r120-pipeline-list em { flex:0 0 auto; padding:7px 9px; border-radius:10px; font:500 9px/1 JetBrains Mono,monospace; font-style:normal; letter-spacing:.04em; }
.r120-pipeline-list em.ready,.r120-pipeline-list em.synced { color:#74e3b1; border:1px solid rgba(52,211,153,.24); background:rgba(52,211,153,.08); }
.r120-pipeline-list em.stable { color:#76d7ff; border:1px solid rgba(91,206,247,.24); background:rgba(91,206,247,.08); }
.r120-pipeline-list em.build { color:#ffd27f; border:1px solid rgba(251,191,36,.24); background:rgba(251,191,36,.08); }
.r120-pipeline-summary { display:flex; justify-content:space-between; gap:12px; margin-top:19px; color:rgba(255,255,255,.33); font-size:9.5px; }
.r120-pipeline-summary span:first-child { color:rgba(255,255,255,.52); }
.r120-pipeline-summary i { display:inline-block; width:6px; height:6px; margin-right:6px; border-radius:50%; background:#4ade80; }

.r120-quick-launch { margin-top:28px; padding:25px 27px 27px; border-radius:29px; background:rgba(16,16,26,.48); border:1px solid rgba(255,255,255,.075); backdrop-filter:blur(24px); }
.r120-quick-launch header { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; }
.r120-quick-launch header span { color:rgba(255,255,255,.42); font-size:9px; font-weight:600; letter-spacing:.22em; }
.r120-quick-launch h3 { margin:5px 0 0; color:#fff; font-size:25px; letter-spacing:-.035em; }
.r120-quick-launch header button { min-height:0 !important; padding:0 !important; border:0 !important; color:rgba(255,255,255,.55) !important; background:transparent !important; box-shadow:none !important; font-size:11px !important; }
.r120-module-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:13px; margin-top:18px; }
.r120-module-grid > button { min-height:84px !important; display:flex !important; align-items:center !important; gap:13px !important; padding:14px !important; border-radius:18px !important; color:#fff !important; background:rgba(255,255,255,.025) !important; border:1px solid rgba(255,255,255,.065) !important; box-shadow:none !important; text-align:left !important; }
.r120-module-grid > button:hover { background:rgba(255,255,255,.055) !important; border-color:rgba(138,79,255,.25) !important; transform:translateY(-2px) !important; }
.r120-module-grid > button i { flex:0 0 auto; width:44px; height:44px; display:grid; place-items:center; border-radius:14px; background:linear-gradient(135deg,var(--module-a),var(--module-b)); box-shadow:0 15px 35px -18px var(--module-a); }
.r120-module-grid > button i.purple { --module-a:#8a4fff;--module-b:#4f2bff; }.r120-module-grid > button i.amber { --module-a:#ffb067;--module-b:#ba5b3b; }.r120-module-grid > button i.sky { --module-a:#5bcef7;--module-b:#4967d7; }.r120-module-grid > button i.pink { --module-a:#f472b6;--module-b:#8a4fff; }
.r120-module-grid svg { width:20px; height:20px; fill:none; stroke:#fff; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.r120-module-grid b { display:block; font-size:12px; font-weight:600; }.r120-module-grid small { display:block; margin-top:4px; color:rgba(255,255,255,.38); font-size:9.5px; line-height:1.35; }

body.r120-rice-ui .r119-bottom-dock { bottom:18px; }
body.r120-rice-ui .r119-dock-inner { padding:10px 12px; background:rgba(18,17,30,.82); border-color:rgba(255,255,255,.095); }
body.r120-rice-ui .r119-dock-button { flex-basis:72px; }
body.r120-rice-ui .r119-dock-icon { width:44px; height:44px; }

@keyframes r120Pulse { 0%,100%{box-shadow:0 0 0 0 rgba(74,222,128,.5)}50%{box-shadow:0 0 0 8px rgba(74,222,128,0)} }

@media (max-width:1180px) {
  body.r120-rice-ui .header-leading { min-width:260px !important; }
  body.r120-rice-ui .r119-command-trigger { width:min(360px,35vw) !important; }
  .r120-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .r120-module-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .r120-orb { right:-70px; opacity:.72; }
}
@media (max-width:880px) {
  body.r120-rice-ui .shell { padding-left:84px !important; padding-right:14px !important; }
  body.r120-rice-ui .section-nav.canva-rail { width:68px !important; padding-left:10px !important; padding-right:10px !important; }
  body.r120-rice-ui .app-header { align-items:flex-start !important; }
  body.r120-rice-ui .header-leading { min-width:0 !important; }
  body.r120-rice-ui .app-header .eyebrow { display:none !important; }
  body.r120-rice-ui .r119-command-trigger { width:100% !important; }
  body.r120-rice-ui .topbar-health { display:none !important; }
  .r120-overview-heading { min-height:140px; }.r120-orb{width:220px;height:220px;top:-66px;right:-90px}.r120-overview-copy{max-width:80%}
  .r120-dashboard-grid { grid-template-columns:1fr; }
}
@media (max-width:620px) {
  body.r120-rice-ui .shell { padding:0 12px 138px !important; }
  body.r120-rice-ui .section-nav.canva-rail { display:none !important; }
  body.r120-rice-ui .header-actions { display:none !important; }
  .r120-overview-copy { max-width:100%; }.r120-overview-heading h2{font-size:44px}.r120-overview-heading p{font-size:13px}.r120-orb{display:none}
  .r120-kpi-grid,.r120-module-grid { grid-template-columns:1fr; }
  .r120-kpi-card { min-height:145px; }
  .r120-dashboard-grid { margin-top:18px; }.r120-curve-card,.r120-pipeline-card{padding:19px}.r120-chart-wrap{height:220px}
  .r120-quick-launch header { align-items:flex-start; flex-direction:column; }
  body.r120-rice-ui .r119-bottom-dock { max-width:calc(100vw - 16px); width:calc(100vw - 16px); }
}
