:root{--ui-font-scale:1}
.role-launcher{margin:4px 0 28px}
.launcher-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:17px}
.launcher-heading h2{font-size:calc((25px) * var(--ui-font-scale,1));font-weight:750;letter-spacing:-.7px;margin:6px 0 0;color:var(--rx-text)}
.launcher-heading>span{font-size:calc((11px) * var(--ui-font-scale,1));color:var(--rx-muted);text-align:right}
.launcher-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;perspective:1100px}
.launcher-card{--card-hue:165;--card-accent:var(--rx-emphasis);--pointer-x:50%;--pointer-y:30%;position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:start;min-width:0;min-height:179px;padding:20px;border:1px solid hsl(var(--card-hue) 38% 82% / .7);border-radius:21px;overflow:hidden;text-align:left;color:var(--rx-text);background:linear-gradient(145deg,var(--rx-surface) 0%,hsl(var(--card-hue) 57% 96%) 57%,hsl(var(--card-hue) 56% 91%) 100%);box-shadow:inset 0 1px 0 var(--rx-shadow-color),0 3px 6px rgba(var(--rx-shadow-color-rgb),0.024),0 10px 23px rgba(var(--rx-shadow-color-rgb),0.024);cursor:pointer;transform-style:preserve-3d;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;animation:launcher-arrive .45s ease backwards;animation-delay:var(--card-delay,0ms)}
.launcher-card.tone-blue{--card-hue:215;--card-accent:var(--rx-accent)}.launcher-card.tone-green{--card-hue:145;--card-accent:var(--rx-accent)}.launcher-card.tone-cyan{--card-hue:186;--card-accent:var(--rx-accent)}.launcher-card.tone-violet{--card-hue:268;--card-accent:var(--rx-accent-soft)}.launcher-card.tone-orange{--card-hue:32;--card-accent:var(--rx-accent)}.launcher-card.tone-coral{--card-hue:9;--card-accent:var(--rx-accent-soft)}.launcher-card.tone-slate{--card-hue:208;--card-accent:var(--rx-accent)}
.launcher-card.primary{min-height:201px;padding:23px;background:linear-gradient(140deg,var(--rx-surface) 5%,hsl(var(--card-hue) 63% 94%) 50%,hsl(var(--card-hue) 60% 87%) 100%)}
.launcher-glow{position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse at var(--pointer-x) var(--pointer-y),hsl(var(--card-hue) 80% 75% / .33),transparent 65%);opacity:0;transition:opacity .25s;pointer-events:none}
.launcher-card:before{content:'';position:absolute;z-index:-1;width:150px;height:150px;right:-66px;top:-64px;border-radius:50%;border:22px solid hsl(var(--card-hue) 50% 79% / .15);pointer-events:none;transition:transform .4s ease}
.launcher-card:after{content:'';position:absolute;left:20px;right:20px;top:0;height:2px;background:linear-gradient(90deg,transparent,hsl(var(--card-hue) 65% 55% / .65),transparent);opacity:.65;pointer-events:none}
.launcher-top{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;margin-bottom:15px}
.launcher-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:linear-gradient(135deg,hsl(var(--card-hue) 50% 42%),hsl(var(--card-hue) 65% 58%));color:var(--rx-on-emphasis);box-shadow:inset 0 1px rgba(var(--rx-shadow-color-rgb),0.376),0 5px 12px hsl(var(--card-hue) 40% 40% / .19);transition:transform .3s ease}
.launcher-icon svg{width:26px;height:26px;filter:drop-shadow(0 1px 1px #0001)}
.launcher-card>strong{font-size:calc((16px) * var(--ui-font-scale,1));font-weight:750;line-height:1.25;letter-spacing:-.25px;margin-bottom:6px;overflow-wrap:anywhere}
.launcher-description{font-size:calc((11px) * var(--ui-font-scale,1));line-height:1.5;color:var(--rx-muted);max-width:95%;margin-bottom:18px}
.launcher-footer{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-top:auto;width:100%;font-size:calc((10px) * var(--ui-font-scale,1));color:var(--card-accent);font-weight:650;padding-top:12px;border-top:1px solid hsl(var(--card-hue) 35% 75% / .32)}
.launcher-footer>span{min-width:0;overflow-wrap:anywhere}.launcher-footer i{font-size:calc((17px) * var(--ui-font-scale,1));font-style:normal;transition:transform .25s ease}
.launcher-enter{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:rgba(var(--rx-surface-rgb),0.502);color:var(--card-accent);font-size:calc((17px) * var(--ui-font-scale,1))}
.launcher-task-badge{background:rgba(var(--rx-surface-rgb),0.671);border:1px solid rgba(var(--rx-line-rgb),0.867);border-radius:8px;color:var(--card-accent);padding:5px 7px;font-size:calc((9px) * var(--ui-font-scale,1));font-weight:700;white-space:nowrap}
.launcher-task-badge.urgent{color:var(--rx-accent);background:var(--rx-surface);border-color:var(--rx-line)}
.launcher-divider{display:flex;align-items:center;gap:16px;margin:21px 0 14px;font-size:calc((11px) * var(--ui-font-scale,1));color:var(--rx-muted)}.launcher-divider i{height:1px;flex:1;background:linear-gradient(90deg,var(--rx-soft),transparent)}
.secondary-grid .launcher-card{min-height:167px}.secondary-grid .launcher-icon{width:39px;height:39px;border-radius:12px}.secondary-grid .launcher-icon svg{width:23px;height:23px}.secondary-grid .launcher-card>strong{font-size:calc((14px) * var(--ui-font-scale,1))}.secondary-grid .launcher-top{margin-bottom:12px}
@keyframes launcher-arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes launcher-icon-float{0%,100%{transform:translateY(-2px) rotate(-3deg)}50%{transform:translateY(1px) rotate(2deg)}}
@media(hover:hover) and (pointer:fine){.launcher-card:hover{transform:translateY(-4px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));box-shadow:inset 0 1px var(--rx-shadow-color),0 8px 15px rgba(var(--rx-shadow-color-rgb),0.071),0 20px 35px hsl(var(--card-hue) 40% 40% / .13);border-color:hsl(var(--card-hue) 44% 66%)}.launcher-card:hover .launcher-glow{opacity:1}.launcher-card:hover:before{transform:translate(-8px,8px) scale(1.15)}.launcher-card:hover .launcher-icon{animation:launcher-icon-float 1.9s ease-in-out infinite}.launcher-card:hover .launcher-footer i{transform:translateX(4px)}}
.launcher-card:focus-visible{outline:3px solid var(--card-accent);outline-offset:3px;box-shadow:0 7px 28px hsl(var(--card-hue) 40% 40% / .2)}.launcher-card:active{transform:translateY(0) scale(.986)}
.font-button{display:flex;align-items:center;gap:5px;border:1px solid var(--rx-line);border-radius:10px;background:linear-gradient(145deg,var(--rx-surface),var(--rx-soft));padding:8px 10px;min-height:37px;color:var(--rx-text);box-shadow:inset 0 1px var(--rx-shadow-color);white-space:nowrap;cursor:pointer}
.font-button>span{font-size:calc((15px) * var(--ui-font-scale,1));font-weight:750;letter-spacing:-1px}.font-button>small{font-size:calc((9px) * var(--ui-font-scale,1));color:var(--rx-muted)}
.font-dialog{position:fixed;inset:85px 22px auto auto;margin:0;width:370px;max-width:calc(100vw - 28px);padding:24px;border:1px solid rgba(var(--rx-line-rgb),0.91);border-radius:23px;background:rgba(var(--rx-surface-rgb),0.961);backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);box-shadow:0 20px 70px rgba(var(--rx-shadow-color-rgb),0.169);color:var(--rx-text)}
.font-dialog::backdrop{background:rgba(var(--rx-emphasis-rgb),0.125);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
.font-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.font-head h2{font-size:calc((22px) * var(--ui-font-scale,1));letter-spacing:-.5px;margin:5px 0 0}.font-head>button{display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid var(--rx-line);border-radius:50%;background:var(--rx-surface);color:var(--rx-muted);font-size:calc((22px) * var(--ui-font-scale,1))}
.font-dialog>p{font-size:calc((12px) * var(--ui-font-scale,1));line-height:1.5;color:var(--rx-muted)}.font-size-control{display:grid;grid-template-columns:52px 1fr 52px;gap:15px;align-items:center;margin:23px 0 17px}.font-size-control button{height:48px;border:1px solid var(--rx-line);background:var(--rx-surface);border-radius:13px;color:var(--rx-text);font-size:calc((21px) * var(--ui-font-scale,1));font-weight:650}.font-size-control output{text-align:center;font-size:calc((29px) * var(--ui-font-scale,1));font-weight:750;letter-spacing:-1px;color:var(--rx-text)}.font-size-control button:disabled{opacity:.35;cursor:default}
.font-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.font-presets button{border:1px solid var(--rx-line);background:rgba(var(--rx-surface-rgb),0.533);border-radius:9px;padding:10px 4px;font-size:calc((11px) * var(--ui-font-scale,1));color:var(--rx-muted)}.font-presets button.selected{background:var(--rx-emphasis);color:var(--rx-on-emphasis);border-color:var(--rx-line-strong)}.font-reset{display:block;margin:14px auto 0;border:0;border-bottom:1px dashed var(--rx-line);background:transparent;padding:6px;font-size:calc((11px) * var(--ui-font-scale,1));color:var(--rx-muted)}.font-dialog .font-save-note{font-size:calc((10px) * var(--ui-font-scale,1));margin-top:18px;margin-bottom:0}
body[data-screen=dashboard] .page-return{display:none}.workbench-hero{margin-bottom:15px}.workbench-metrics{margin-top:8px}
@media(max-width:1250px){.launcher-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.primary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.launcher-card.primary{min-height:185px}.topbar-actions{flex-wrap:wrap}.font-button>small{display:none}}
@media(max-width:780px){.launcher-heading{align-items:start;gap:10px}.launcher-heading h2{font-size:calc((22px) * var(--ui-font-scale,1))}.launcher-heading>span{font-size:calc((9px) * var(--ui-font-scale,1));max-width:100px;line-height:1.5}.launcher-grid,.primary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.launcher-card,.launcher-card.primary,.secondary-grid .launcher-card{padding:15px 13px;border-radius:17px;min-height:176px}.launcher-card.primary{min-height:191px}.launcher-card>strong{font-size:calc((14px) * var(--ui-font-scale,1))}.secondary-grid .launcher-card>strong{font-size:calc((12px) * var(--ui-font-scale,1))}.launcher-description{font-size:calc((10px) * var(--ui-font-scale,1));line-height:1.4;max-width:100%;margin-bottom:12px}.launcher-footer{font-size:calc((9px) * var(--ui-font-scale,1));padding-top:10px}.launcher-icon{width:39px;height:39px;border-radius:12px}.launcher-icon svg{width:23px;height:23px}.launcher-top{gap:5px;margin-bottom:13px;flex-wrap:wrap}.launcher-task-badge{font-size:calc((8px) * var(--ui-font-scale,1));padding:4px}.launcher-enter{width:23px;height:23px;font-size:calc((14px) * var(--ui-font-scale,1))}.launcher-divider{font-size:calc((10px) * var(--ui-font-scale,1));margin:17px 0 12px}.role-launcher{margin-bottom:22px}.font-button{padding:6px 8px;min-height:38px}.font-button>span{font-size:calc((14px) * var(--ui-font-scale,1))}.font-dialog{top:76px;right:14px;max-height:calc(100dvh - 95px);overflow:auto}.topbar-actions{flex-wrap:nowrap}.topbar{gap:7px}}
@media(max-width:520px){.topbar-title{display:none}.topbar .command-trigger{margin-right:auto}.topbar-actions{margin-left:0}.topbar{padding-left:12px;padding-right:12px}.font-button{min-width:38px;justify-content:center}}
@media(prefers-reduced-motion:reduce){.launcher-card,.launcher-icon,.launcher-card:before,.launcher-footer i,.launcher-glow{animation:none!important;transition:none!important;transform:none!important}}
@media print{:root{--ui-font-scale:1!important}.font-button,.font-dialog,.role-launcher{display:none!important}}
.modal-head-tools{display:flex;align-items:center;gap:10px}.modal-head-tools .modal-font-button{min-height:32px;padding:5px 8px}.modal-head-tools .close-button{padding:5px;min-width:28px}
