/* RML Quality Gate V0.4: visual and touch refinements. No dependencies, no data integration. */
:root{scroll-behavior:smooth}
.rml-root{--tap-min:44px}
.rail-button,.context-button,.ctx-action,.rml-pill{touch-action:manipulation}
.rail-button{min-width:50px;min-height:50px}
.ctx-action{min-height:44px}
.context-button,.rml-pill{min-height:44px}
.ctx-caption{max-width:46ch}
.ctx-panel p,.ctx-note,.ctx-notice{overflow-wrap:anywhere}
#app[data-context-visual="pessoal"] .ctx-overline,#app[data-context-visual="pessoal"] .ctx-kicker{letter-spacing:.13em}
#app[data-context-visual="pessoal"] .ctx-panel{box-shadow:0 18px 44px var(--rml-shadow),inset 0 1px rgba(159,207,255,.12)}
.rml-root button:focus-visible{outline:3px solid var(--rml-focus)!important;outline-offset:3px!important}
.skip-link{position:fixed;z-index:200;left:16px;top:12px;background:#fff;color:#092342;padding:12px 16px;border-radius:10px;transform:translateY(-170%);font-weight:700}
.skip-link:focus{transform:none}
#app[data-rml-theme="light"] .hero h2 em{color:#145e9c}
#app[data-rml-theme="light"] .ctx-panel.ctx-feature{box-shadow:0 15px 38px rgba(30,73,125,.12),inset 0 1px rgba(255,255,255,.75)}
@media(max-width:980px){.dashboard-shell{gap:16px;padding-right:18px}.top-actions{gap:7px}.top-actions .rml-pill{padding:9px 12px}.hero h2{font-size:clamp(35px,5.1vw,58px)}}
@media(max-width:740px){.dashboard-shell{padding-bottom:calc(110px + env(safe-area-inset-bottom))}.rail{bottom:calc(10px + env(safe-area-inset-bottom));padding-inline:8px}.topbar{gap:12px}.top-actions{width:100%}.top-actions .lab-tag{font-size:9px}.hero{min-height:275px}.ctx-grid{gap:12px}.ctx-head{align-items:flex-start}}
@media(max-width:420px){.rail-button{width:46px;min-width:46px}.ctx-panel{border-radius:18px}.hero{padding:20px}.hero-art{opacity:.2}.top-actions .rml-pill{flex:1}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.rml-root *,.rml-root *::before,.rml-root *::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.ctx-action:hover,.dash-card:hover{transform:none!important}}
