/* La guía móvil conserva su estructura. El estudio se activa desde 1024 px. */
#horaria-app{display:none}
@media(min-width:1024px){
 body.horaria-desktop{margin:0;overflow:hidden;background:#fff}
 body.horaria-desktop> :not(#horaria-app):not(script){display:none!important}
 #horaria-app{--h-ink:#11334f;--h-muted:#536d84;--h-border:#d4e3f0;--h-blue:#0078cc;--h-coral:#ff6255;--h-soft:#edf6ff;--h-panel:#fff;display:flex;flex-direction:column;position:fixed;inset:0;background:#fff;color:var(--h-ink);font:14px/1.4 Arial,sans-serif;z-index:1000}
 #horaria-app *{box-sizing:border-box}
 #horaria-app strong,#horaria-app b{color:inherit}
 #horaria-app [hidden]{display:none!important}
 #horaria-app button,#horaria-app input,#horaria-app select,#horaria-app textarea{font:inherit}
 #horaria-app button,#horaria-app .h-link{border:1px solid var(--h-border);border-radius:7px;background:var(--h-soft);color:var(--h-ink);padding:8px 11px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px}
 #horaria-app button:hover,#horaria-app .h-link:hover{border-color:var(--h-blue);filter:brightness(.97)}
 #horaria-app :focus-visible{outline:3px solid #e4a320;outline-offset:2px}
 #horaria-app button:disabled{opacity:.55;cursor:wait}
 #horaria-app .h-primary{background:var(--h-coral);color:#142a3e;border-color:var(--h-coral);font-weight:700}
 #horaria-app .h-icon{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
 .h-header{height:62px;flex:none;display:flex;align-items:center;gap:14px;padding:8px 18px;border-bottom:1px solid var(--h-border);background:var(--h-panel)}
 .h-brand{display:flex;align-items:center;gap:9px;color:var(--h-ink);text-decoration:none;font:600 28px Georgia,serif;white-space:nowrap}
 .h-brand img{width:43px;height:38px}.h-header h1{font:500 20px Georgia,serif;border-left:1px solid var(--h-border);padding-left:16px;margin:0}
 .h-actions{margin-left:auto;display:flex;gap:8px}.h-actions button{white-space:nowrap}
 .h-stage{position:relative;flex:1;min-height:0;overflow:hidden;background:#fff}
 .h-rail{position:absolute;top:12px;bottom:14px;left:7px;width:65px;display:flex;flex-direction:column;gap:7px;z-index:25}
 #horaria-app .h-rail button{padding:8px 2px;flex-direction:column;font-size:11px;background:var(--h-panel)}
 #horaria-app .h-rail button[aria-expanded=true]{background:var(--h-blue);color:#fff;border-color:var(--h-blue)}
 .h-rail .h-icon{width:23px;height:23px}.h-rail .h-home{margin-top:auto}
 .h-context{position:absolute;top:12px;left:370px;right:335px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:44px;z-index:2;padding:3px 10px;background:#f6faff;border:1px solid #e2edf5;border-radius:20px;color:#153956}
 .h-context strong{font:600 17px Georgia,serif;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.h-context small{font-size:11px;color:#4d6981}
 .h-canvas{position:absolute;left:355px;right:320px;top:62px;bottom:68px;display:block;overflow:auto;scrollbar-width:thin}
 .h-wheel{position:relative;width:100%;height:100%;min-width:0;min-height:0}.h-wheel svg{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:100%;max-height:100%;overflow:visible}
 .h-wheel text{font-family:'Segoe UI Symbol','Apple Symbols','Arial Unicode MS',sans-serif;paint-order:normal;stroke:none}
 .h-wheel .h-zsign{font-size:33px}.h-wheel .h-house{font-size:12px;fill:#1f3547;font-weight:600}.h-wheel .h-glyph{font-size:29px}.h-wheel .h-degree{font-size:10px;font-weight:600}.h-wheel .h-axis{font-size:11px;fill:#725715;font-weight:700}
 .h-window{position:absolute;width:268px;background:var(--h-panel);border:1px solid var(--h-border);border-radius:10px;box-shadow:0 5px 20px #12487d12;display:flex;flex-direction:column;overflow:hidden;z-index:5;max-height:calc(100% - 95px)}
 .h-window-head{display:flex;align-items:center;gap:6px;padding:8px 10px;color:#fff;background:linear-gradient(105deg,#008ad8,#006eb8);cursor:grab;touch-action:none;user-select:none;min-height:43px;flex:none}
 .h-window-head:active{cursor:grabbing}.h-window-head h2{font:600 17px Georgia,serif;color:inherit;margin:0;flex:1}.h-grip{font-size:20px;letter-spacing:-3px;margin-right:6px;opacity:.8}
 #horaria-app .h-window-head button{background:transparent;border:0;color:#fff;padding:0;width:25px;height:27px;min-height:27px;font-size:23px}
 .h-window-body{padding:12px;overflow:auto;min-height:0;scrollbar-width:thin;overscroll-behavior:contain}.h-window.minimized .h-window-body{display:none}
 #h-query{left:86px;top:15px;max-height:calc(53% - 25px)}
 #h-config{left:86px;top:54%;max-height:calc(46% - 69px)}
 #h-signifiers{right:16px;top:15px;width:294px;max-height:calc(49% - 20px)}
 #h-moon{right:16px;top:50%;width:294px;max-height:calc(50% - 78px)}
 .h-window.h-extra{right:20px;top:25px;width:390px;max-height:calc(100% - 110px)}
 #h-perfection.h-extra{width:450px;max-width:calc(100% - 110px)}
 .hp-actions{margin:10px 0}.hp-tabs{display:flex;gap:5px;margin:10px 0}.hp-tabs button{flex:1;font-size:12px!important}
 #horaria-app .hp-tabs [aria-selected=true]{background:var(--h-blue);color:white;border-color:var(--h-blue)}
 .hp-card{padding:11px;border:1px solid var(--h-border);border-left:4px solid #8b9dac;border-radius:8px;margin:9px 0;background:var(--h-panel)}
 .hp-card[data-state=cumple]{border-left-color:#008866}.hp-card[data-state=limitado]{border-left-color:#be8615}
 .hp-card-top{display:flex;justify-content:space-between;gap:8px;align-items:start}.hp-card-top strong{font-size:13px}.hp-card p{font-size:12px;margin:6px 0}.hp-card button{font-size:12px!important;width:100%}
 .hp-badge{display:inline-block;font-size:10px;line-height:1.4;padding:3px 6px;border-radius:5px;background:var(--h-soft);white-space:nowrap}
 .hp-detail{border-top:2px solid var(--h-blue);padding-top:8px;margin-top:14px}.hp-checks{list-style:none;margin:12px 0;padding:0}.hp-checks li{display:flex;gap:9px;padding:8px 0;border-bottom:1px solid var(--h-border);font-size:12px}.hp-checks li>span{font-weight:bold;font-size:16px;min-width:12px}.hp-checks small{display:block;margin-top:3px}
 .hp-timeline{margin:10px 0;padding-left:22px}.hp-timeline li{padding:5px 0 12px;border-left:1px solid var(--h-border);padding-left:10px}.hp-timeline strong,.hp-timeline small{display:block}.hp-timeline strong{font-size:12px;margin:3px 0}
 #horaria-app #h-clear-focus{position:absolute;bottom:41px;left:50%;transform:translateX(-50%);border-color:#007bc5;white-space:nowrap}
 .h-field{display:flex;flex-direction:column;gap:4px;margin-bottom:9px;min-width:0}.h-field label{font-size:12px;font-weight:600}
 #horaria-app input,#horaria-app select,#horaria-app textarea{width:100%;min-width:0;background:var(--h-panel);color:var(--h-ink);border:1px solid var(--h-border);border-radius:6px;padding:7px 8px;min-height:34px}
 #horaria-app textarea{resize:vertical;min-height:56px}#horaria-app input[type=checkbox]{width:16px;height:16px;min-height:16px;accent-color:var(--h-blue)}
 .h-row{display:flex;gap:8px;align-items:center}.h-row>*{flex:1;min-width:0}.h-row .h-field{align-self:stretch}.h-small,.h-window small{font-size:11px;color:var(--h-muted)}
 .h-window details{border-top:1px solid var(--h-border);padding:8px 0;margin-top:6px}.h-window summary{cursor:pointer;font-weight:600;font-size:12px}.h-window details[open] summary{margin-bottom:8px}
 .h-window p{margin:6px 0 10px}.h-window h3{font:600 15px Georgia,serif;margin:10px 0 8px;color:var(--h-ink)}
 .h-check{display:flex;gap:7px;align-items:center;padding:5px 0;font-size:12px}.h-full{width:100%}.h-note{padding:8px;background:var(--h-soft);border-radius:6px;font-size:12px}.h-warn{color:#a33e17}
 .h-card{border:1px solid var(--h-border);border-radius:7px;padding:10px;margin-bottom:8px;display:flex;gap:10px;align-items:center}.h-card .planet{font-family:'Segoe UI Symbol','Apple Symbols',sans-serif;font-size:31px;min-width:32px;text-align:center}.h-card strong{display:block}.h-card small{display:block;margin-top:3px}.h-card .h-tag{display:inline-block;margin-top:4px;font-size:11px;background:var(--h-soft);border-radius:4px;padding:2px 5px}
 .h-moon-status{font-size:12px;padding:8px;border-radius:6px;background:var(--h-soft);margin-bottom:8px}.h-sequence{border-left:2px solid var(--h-border);margin:10px 0 2px 7px;padding-left:13px}.h-event{position:relative;padding:0 0 12px}.h-event:before{content:'';position:absolute;left:-18px;top:5px;width:8px;height:8px;border-radius:50%;background:var(--h-blue)}.h-event b{font-size:12px}.h-event small{display:block}
 .h-table-wrap{overflow:auto}.h-table{width:100%;border-collapse:collapse;font-size:12px}.h-table th{background:var(--h-soft);font-weight:600;text-align:left;color:var(--h-ink)}.h-table th,.h-table td{padding:8px 5px;border-bottom:1px solid var(--h-border);vertical-align:top}.h-table .h-num{white-space:nowrap;font-variant-numeric:tabular-nums}
 .h-dock{position:absolute;bottom:33px;left:355px;right:320px;display:flex;justify-content:center;gap:5px;z-index:25}#horaria-app .h-dock button{background:#f0f7ff;color:#124f80;white-space:nowrap}
 .h-tools{position:absolute;bottom:7px;left:88px;right:18px;display:flex;gap:5px;z-index:25;overflow-x:auto;scrollbar-width:thin}#horaria-app .h-tools button{min-height:27px;padding:4px 8px;font-size:11px;background:var(--h-panel);white-space:nowrap;flex:none}#horaria-app .h-tools button[aria-expanded=true]{border-color:var(--h-coral);color:#bd3f35}
 .h-status{position:absolute;bottom:42px;right:18px;max-width:286px;font-size:11px;color:#556e82;z-index:2;text-align:right}.h-status.error{color:#a53024;font-weight:600}
 .h-stage.no-left .h-canvas{left:90px}.h-stage.no-left .h-context{left:105px}.h-stage.no-left .h-dock{left:90px}
 .h-stage.no-right .h-canvas{right:22px}.h-stage.no-right .h-context{right:35px}.h-stage.no-right .h-dock{right:22px}
 .h-empty{max-width:400px;text-align:center;color:#536d84;padding:25px}
 #horaria-app[data-theme=dark]{--h-ink:#e1edfa;--h-muted:#a7bdd0;--h-border:#33485d;--h-soft:#213951;--h-panel:#12283b;background:#0b1b29}
 #horaria-app[data-theme=dark] .h-card .planet{filter:brightness(1.65) saturate(.85)}
 #horaria-app[data-theme=dark] input,#horaria-app[data-theme=dark] select{color-scheme:dark}
 #horaria-app[data-theme=dark] .h-header{background:#112437}#horaria-app[data-theme=dark] .h-stage{background:#eef5fa}#horaria-app[data-theme=dark] .h-window{box-shadow:0 5px 20px #10223636}
 @media(max-width:1250px){.h-brand{font-size:23px}.h-header h1{font-size:17px}.h-header{gap:10px;padding:8px 12px}.h-window{width:240px}#h-signifiers,#h-moon{width:256px}.h-canvas{left:326px;right:276px}.h-context{left:333px;right:284px}.h-dock{left:326px;right:276px}.h-status{max-width:28%}.h-actions button{padding:7px!important}.h-tools{gap:3px}#horaria-app .h-tools button{padding:4px 6px;font-size:10px}}
 @media(max-height:750px){.h-window-head{min-height:36px;padding:5px 8px}.h-window-body{padding:9px}.h-card{padding:7px;margin-bottom:5px}.h-field{margin-bottom:6px}.h-context{min-height:35px;top:7px}.h-canvas{top:49px}.h-window{font-size:12px}.h-header{height:55px}}
 @media(prefers-reduced-motion:reduce){#horaria-app *{scroll-behavior:auto}}
}
