.strip-item { flex:0 0 auto; display:inline-flex; align-items:center; gap:7px; min-height:30px; border:1px solid rgba(255,255,255,.1); border-radius:999px; padding:5px 10px; color:rgba(255,255,255,.88); background:rgba(255,255,255,.055); font-size:.78rem; white-space:nowrap; }
.strip-item strong { color:var(--accent-3); font-weight:800; }
.strip-remove { width:18px; height:18px; border:0; border-radius:50%; padding:0; background:rgba(255,255,255,.08); cursor:pointer; opacity:.55; }
.strip-item:hover .strip-remove { opacity:1; }
.widget-card { position:absolute; width:min(360px,calc(100vw - 40px)); min-height:132px; border:1px solid var(--line); border-radius:var(--radius); background:linear-gradient(145deg,rgba(31,23,55,.86),rgba(17,13,33,.75)); box-shadow:var(--shadow); backdrop-filter:blur(16px); overflow:visible; }
.widget-card.is-dragging { cursor:grabbing; box-shadow:0 32px 90px rgba(0,0,0,.5); transform:scale(1.015); }
.widget-header { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:15px 16px 8px; }
.widget-kicker { margin:0 0 3px; color:var(--accent-2); font-size:.64rem; font-weight:850; letter-spacing:.11em; text-transform:uppercase; }
.widget-title { margin:0; font-family:Georgia,serif; font-size:1.12rem; font-weight:500; }
.widget-actions { position:relative; display:flex; align-items:center; gap:4px; }
.drag-handle { display:grid; place-items:center; width:26px; height:26px; color:rgba(255,255,255,.55); cursor:grab; user-select:none; touch-action:none; }
.widget-menu-button { width:31px; height:26px; border:0; border-radius:10px; background:rgba(255,255,255,.06); cursor:pointer; letter-spacing:-.08em; }
.widget-menu { position:absolute; z-index:10; right:0; top:32px; min-width:150px; border:1px solid var(--line); border-radius:12px; padding:5px; background:var(--panel-strong); box-shadow:var(--shadow); }
.widget-menu button { width:100%; border:0; border-radius:9px; padding:9px 10px; text-align:left; background:transparent; cursor:pointer; }
.widget-menu button:hover { background:rgba(255,255,255,.08); }
.widget-body { padding:7px 16px 16px; }
.search-widget-form { display:flex; gap:8px; }
.search-widget-form input,.spark-editor,.note-composer textarea,.form-card input,.inline-form input,.global-search-form input { width:100%; border:1px solid var(--line); border-radius:14px; padding:11px 12px; color:var(--ink); background:rgba(255,255,255,.065); outline:none; }
.search-widget-form button,.note-composer button,.inline-form button,.global-search-form button { border:0; border-radius:13px; padding:10px 14px; color:#170d25; background:linear-gradient(135deg,var(--accent),var(--accent-2)); font-weight:850; cursor:pointer; }
.search-hint { margin:9px 0 0; color:var(--muted); font-size:.76rem; }
.spark-copy { display:flex; align-items:flex-start; gap:10px; }
.spark-copy p { flex:1; margin:0; line-height:1.45; }
.spark-edit { width:30px; height:30px; border:1px solid var(--line); border-radius:50%; background:rgba(255,255,255,.06); cursor:pointer; }
.spark-editor { min-height:92px; resize:vertical; }
.spark-actions { display:flex; justify-content:flex-end; gap:8px; margin-top:8px; }
.spark-actions button { border:1px solid var(--line); border-radius:11px; padding:7px 11px; background:rgba(255,255,255,.06); cursor:pointer; }
.note-composer textarea { min-height:78px; resize:none; }
.note-composer footer { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-top:8px; }
.note-composer small { color:var(--muted); }
.floating-note { position:absolute; width:190px; min-height:110px; padding:16px 14px 12px; border:1px solid rgba(55,35,45,.12); border-radius:7px 18px 12px 20px; color:#372839; background:var(--note-color,#fff0a8); box-shadow:0 16px 34px rgba(0,0,0,.25); pointer-events:auto; cursor:grab; touch-action:none; transform:rotate(var(--note-tilt,-2deg)); }
.floating-note::before { content:""; position:absolute; inset:0; border-radius:inherit; background:linear-gradient(135deg,rgba(255,255,255,.4),transparent 50%); pointer-events:none; }
.floating-note p { position:relative; margin:0 0 30px; white-space:pre-wrap; line-height:1.35; }
.note-controls { position:absolute; left:9px; right:9px; bottom:7px; display:flex; justify-content:flex-end; align-items:center; gap:5px; }
.note-color-button,.note-delete-button { width:26px; height:26px; border:0; border-radius:50%; color:#473948; background:rgba(255,255,255,.38); cursor:pointer; }
.note-wing { font-size:1.15rem; }
.note-palette { position:absolute; right:7px; bottom:38px; display:flex; gap:5px; padding:6px; border-radius:999px; background:rgba(28,20,35,.86); box-shadow:0 10px 24px rgba(0,0,0,.25); }
.note-swatch { width:21px; height:21px; border:2px solid rgba(255,255,255,.55); border-radius:50%; padding:0; cursor:pointer; }
.shortcut-grid { display:grid; grid-template-columns:repeat(auto-fill,68px); justify-content:start; align-content:start; gap:10px; }
.shortcut { position:relative; width:68px; min-width:0; text-align:center; }
.shortcut a,.shortcut-add { display:flex; flex-direction:column; align-items:center; gap:6px; border:0; text-decoration:none; background:transparent; cursor:pointer; }
.shortcut-icon { display:grid; place-items:center; width:48px; height:48px; border:1px solid var(--line); border-radius:16px; background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.035)); box-shadow:0 10px 24px rgba(0,0,0,.18); font-size:1.3rem; }
.shortcut span:last-child { max-width:68px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.72rem; }
.shortcut-delete { position:absolute; right:0; top:-4px; width:20px; height:20px; border:0; border-radius:50%; background:rgba(12,9,25,.88); cursor:pointer; }
.drawing-canvas { width:100%; height:190px; border:1px solid var(--line); border-radius:15px; background:rgba(4,3,12,.42); touch-action:none; }
.draw-toolbar { display:flex; justify-content:flex-end; gap:7px; margin-bottom:8px; }
.draw-toolbar button,.draw-toolbar input { height:30px; border:1px solid var(--line); border-radius:10px; background:rgba(255,255,255,.06); }
.draw-toolbar input { width:36px; padding:3px; }
.draw-toolbar button { padding:0 9px; cursor:pointer; }
.magic-window { position:absolute; z-index:8; width:250px; height:190px; border:14px solid #5a3a6f; border-radius:120px 120px 18px 18px; box-shadow:0 20px 46px rgba(0,0,0,.33),inset 0 0 0 4px rgba(255,255,255,.12); cursor:grab; touch-action:none; overflow:hidden; }
.magic-window::after { content:""; position:absolute; left:50%; top:0; bottom:0; width:8px; transform:translateX(-50%); background:#5a3a6f; box-shadow:0 0 0 2px rgba(255,255,255,.08); }
.window-view { position:absolute; inset:0; overflow:hidden; background:var(--landscape); background-size:100vw calc(100vh - var(--topbar-h)); background-position:center calc(var(--topbar-h) * -1); background-attachment:fixed; }
.window-view::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%,rgba(4,4,12,.25)); }
.window-moon { position:absolute; left:18%; top:18%; z-index:2; border:0; background:transparent; color:#fff4c2; font-size:2rem; text-shadow:0 0 18px #fff; cursor:pointer; }
.window-caption { position:absolute; z-index:3; left:12px; right:12px; bottom:8px; margin:0; color:rgba(255,255,255,.82); font-family:Georgia,serif; font-size:.73rem; text-align:center; text-shadow:0 2px 8px #000; }
.window-drag-tag { position:absolute; z-index:4; top:7px; right:9px; color:rgba(255,255,255,.65); font-size:.72rem; }
.shooting-star-hit { position:absolute; z-index:6; left:-40px; top:34%; width:72px; height:22px; border:0; background:transparent; cursor:pointer; animation:windowStar 2.7s linear forwards; }
.shooting-star-hit::before { content:""; position:absolute; right:4px; top:8px; width:7px; height:7px; border-radius:50%; background:#fff; box-shadow:0 0 14px 5px #fff; }
.shooting-star-hit::after { content:""; position:absolute; right:9px; top:10px; width:62px; height:3px; background:linear-gradient(90deg,transparent,#fff); transform:rotate(-12deg); transform-origin:right center; }
.door-zone { position:absolute; z-index:7; right:8%; bottom:4%; width:180px; text-align:center; }
.magic-door-frame { position:relative; height:255px; border:10px solid #4b2d60; border-bottom-width:13px; border-radius:92px 92px 8px 8px; background:rgba(17,11,29,.45); box-shadow:0 20px 50px rgba(0,0,0,.4); overflow:hidden; }
.magic-door { position:absolute; inset:0; border:0; transform-origin:left center; background:linear-gradient(110deg,#6a4477,#3b244f); box-shadow:inset -16px 0 30px rgba(0,0,0,.28); transition:transform .9s cubic-bezier(.2,.8,.2,1); }
.magic-door::before { content:"◈"; position:absolute; left:50%; top:39%; transform:translate(-50%,-50%); color:var(--accent-3); font-size:2rem; text-shadow:0 0 22px var(--accent); }
.magic-door::after { content:""; position:absolute; right:18px; top:55%; width:10px; height:10px; border-radius:50%; background:#e5c775; box-shadow:0 0 10px #ffeaa6; }
.magic-door.is-open { transform:perspective(900px) rotateY(-78deg); }
.door-portal { position:absolute; inset:0; display:grid; place-items:center; background:radial-gradient(circle,#fff 0 3%,var(--accent-2) 4%,var(--accent) 22%,#1d1032 65%); opacity:0; transition:opacity .5s; }
.door-portal.is-visible { opacity:1; animation:portalPulse 1.4s ease-in-out infinite; }
.door-status { margin:8px 0 0; color:rgba(255,255,255,.68); font-size:.67rem; line-height:1.25; }
.magic-key { position:absolute; z-index:20; width:64px; height:64px; border:0; background:transparent; font-size:2.2rem; filter:drop-shadow(0 0 12px #ffe991); cursor:grab; touch-action:none; }
.magic-key.is-dragging { cursor:grabbing; transform:scale(1.14) rotate(-12deg); }
.book-shelf { position:absolute; z-index:8; right:6.5%; bottom:calc(4% + 274px); width:210px; height:55px; display:flex; align-items:flex-end; justify-content:center; gap:8px; }
.book-shelf::after { content:""; position:absolute; left:0; right:0; bottom:0; height:8px; border-radius:8px; background:#68435f; box-shadow:0 8px 16px rgba(0,0,0,.3); }
.shelf-book { position:relative; z-index:1; width:30px; height:48px; border:1px solid rgba(255,255,255,.16); border-radius:4px 7px 3px 3px; background:#7c4ba2; box-shadow:inset 4px 0 rgba(255,255,255,.1); cursor:pointer; }
.shelf-book:nth-child(2){height:42px;background:#356f82}.shelf-book:nth-child(3){height:52px;background:#9c6a32}.shelf-book.album-book-trigger{width:38px;height:54px;background:linear-gradient(90deg,#6f3d31,#a36849);}
.shelf-book.album-book-trigger::after { content:"✦"; position:absolute; inset:0; display:grid; place-items:center; color:#f8d98a; }
.rabbit { position:absolute; z-index:9; left:9%; bottom:6%; width:66px; height:48px; border:0; border-radius:50% 50% 45% 45%; color:#3c2547; background:#f5dff6; box-shadow:0 12px 22px rgba(0,0,0,.22); cursor:pointer; transition:left 4s ease,bottom 4s ease; }
.rabbit::before,.rabbit::after { content:""; position:absolute; top:-28px; width:20px; height:39px; border-radius:50% 50% 15% 15%; background:#f5dff6; }
.rabbit::before{left:11px;transform:rotate(-8deg)}.rabbit::after{right:11px;transform:rotate(8deg)}
.scenery-orb,.scenery-plant,.scenery-telescope { position:absolute; z-index:4; opacity:.75; }
.scenery-orb { width:100px; height:100px; border-radius:50%; background:radial-gradient(circle at 35% 30%,#fff,var(--accent-2) 8%,var(--accent) 34%,transparent 70%); filter:blur(.3px); }
.scenery-plant { width:110px; height:190px; border-radius:70% 20% 65% 20%; background:linear-gradient(145deg,#75d9a4,#244f48); transform:rotate(-12deg); }
.scenery-telescope { width:170px; height:22px; border-radius:12px; background:#808aa8; transform:rotate(-22deg); box-shadow:55px 42px 0 -7px #4d536f; }
.modal { width:100%; height:100%; max-width:none; max-height:none; border:0; padding:0; background:rgba(4,3,12,.72); backdrop-filter:blur(12px); }
.modal::backdrop { background:rgba(4,3,12,.72); backdrop-filter:blur(8px); }
.modal-card { position:relative; width:min(620px,calc(100vw - 30px)); max-height:calc(100vh - 40px); overflow:auto; margin:8vh auto 0; border:1px solid var(--line); border-radius:28px; padding:28px; background:linear-gradient(145deg,#211832,#100c1f); box-shadow:0 34px 100px rgba(0,0,0,.6); }
.modal-card h2 { margin:0 0 20px; font-family:Georgia,serif; font-weight:500; }
.modal-close { position:absolute; top:13px; right:13px; width:36px; height:36px; border:1px solid var(--line); border-radius:50%; background:rgba(255,255,255,.07); cursor:pointer; z-index:5; }
.catalog-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.catalog-grid.compact { grid-template-columns:repeat(3,minmax(0,1fr)); }
.catalog-option { min-height:105px; border:1px solid var(--line); border-radius:18px; padding:15px; text-align:left; background:rgba(255,255,255,.055); cursor:pointer; }
.catalog-option:hover { background:rgba(255,255,255,.1); }
.catalog-option strong { display:block; margin-bottom:5px; }
.catalog-option small { color:var(--muted); line-height:1.35; }
.form-card { display:grid; gap:14px; }
.form-card label { display:grid; gap:7px; color:var(--muted); font-size:.8rem; }
.inline-form { display:flex; gap:8px; margin-top:15px; }
.search-browser { width:min(1180px,calc(100vw - 26px)); height:calc(100vh - 26px); margin:13px auto; border:1px solid var(--line); border-radius:24px; overflow:hidden; background:#f5f3f8; box-shadow:0 30px 100px rgba(0,0,0,.62); }
.search-browser header { height:64px; display:grid; grid-template-columns:42px minmax(0,1fr) auto; align-items:center; gap:12px; padding:9px 12px; color:var(--ink); background:#171126; }
.modal-close.inline { position:static; }
.global-search-form { display:flex; gap:8px; }
.global-search-form input { padding:10px 13px; }
.search-browser header a { color:var(--muted); font-size:.78rem; text-decoration:none; }
.search-browser iframe { width:100%; height:calc(100% - 64px); border:0; background:#fff; }
.search-welcome { height:calc(100% - 64px); display:grid; place-content:center; justify-items:center; color:#271c34; text-align:center; background:radial-gradient(circle at 50% 40%,#fff,#eae4f0); }
.search-welcome span { font-size:4rem; }
.search-welcome h2 { margin:10px 0 4px; font-family:Georgia,serif; font-weight:500; }
.search-welcome p { margin:0; color:#6a5e73; }
.search-fallback { position:absolute; inset:50% auto auto 50%; transform:translate(-50%,-50%); width:min(420px,calc(100vw - 50px)); border-radius:20px; padding:24px; color:#261d31; background:#fff; text-align:center; box-shadow:var(--shadow); }
.search-fallback a { color:#5c2c8a; font-weight:800; }
.reward-card { width:min(700px,calc(100vw - 30px)); text-align:center; }
.reward-quote blockquote { margin:20px auto; max-width:560px; font-family:Georgia,serif; font-size:clamp(1.35rem,3vw,2.2rem); line-height:1.35; }
.reward-video iframe { width:100%; aspect-ratio:16/9; border:0; border-radius:18px; }
.reward-sticker { display:grid; place-items:center; gap:10px; }
.reward-sticker .sticker-art { display:grid; place-items:center; width:180px; height:220px; border:9px solid rgba(255,255,255,.8); border-radius:20px; color:#291837; background:linear-gradient(145deg,var(--accent),var(--accent-3)); box-shadow:0 22px 50px rgba(0,0,0,.34); font-size:5rem; transform:rotate(-2deg); }
.parchment-layer,.album-layer { position:fixed; inset:0; z-index:120; display:grid; place-items:center; pointer-events:none; background:rgba(4,3,12,0); transition:background .5s; }
.parchment-layer.is-open,.album-layer.is-open { pointer-events:auto; background:rgba(4,3,12,.76); }
.parchment { position:relative; width:min(640px,calc(100vw - 30px)); max-height:80vh; overflow:auto; padding:52px 58px; color:#412f2a; background:linear-gradient(90deg,#d4b77f,#f4e0af 7%,#f6e5b8 93%,#caa86e); border-radius:6px 20px 7px 18px; box-shadow:0 35px 100px rgba(0,0,0,.62); transform:translateY(42vh) scale(.12) rotate(18deg); opacity:0; }
.parchment-layer.is-open .parchment { animation:parchmentFly 1.2s cubic-bezier(.18,.85,.23,1.03) forwards; }
.parchment h2 { font-family:Georgia,serif; font-weight:500; }
.parchment div { white-space:pre-line; font-family:Georgia,serif; font-size:1.08rem; line-height:1.65; }
.parchment footer { margin-top:20px; font-style:italic; }
.parchment-close,.album-close { position:absolute; z-index:5; top:13px; right:13px; width:36px; height:36px; border:0; border-radius:50%; background:rgba(50,31,35,.14); color:inherit; cursor:pointer; }
.album-book { position:relative; width:min(900px,calc(100vw - 26px)); height:min(650px,82vh); perspective:1800px; transform:scale(.72); opacity:0; }
.album-layer.is-open .album-book { animation:albumAppear .5s ease forwards; }
.album-cover,.album-pages { position:absolute; inset:0; border-radius:12px 28px 28px 12px; transform-origin:left center; box-shadow:0 35px 100px rgba(0,0,0,.6); }
.album-cover { z-index:2; display:grid; place-items:center; padding:40px; color:#f3ddb0; background:linear-gradient(135deg,#402339,#7a473f); border:4px solid #9f744c; font-family:Georgia,serif; font-size:clamp(1.6rem,4vw,3rem); text-align:center; }
.album-layer.is-open .album-cover { animation:openCover 1.25s .25s cubic-bezier(.2,.8,.2,1) forwards; }
.album-pages { overflow:auto; padding:34px; color:#3d2b38; background:linear-gradient(90deg,#eee0c4 0 49.5%,#cbbd9f 49.8%,#eee0c4 50.5%); }
.album-pages header { text-align:center; }
.album-pages h2 { margin:0; font-family:Georgia,serif; font-weight:500; }
.album-grid { display:grid; grid-template-columns:repeat(4,minmax(100px,1fr)); gap:14px; margin-top:22px; }
.album-slot { min-height:145px; display:grid; place-content:center; justify-items:center; gap:7px; border:2px dashed rgba(61,43,56,.2); border-radius:15px; text-align:center; }
.album-slot.is-owned { border-style:solid; background:rgba(255,255,255,.35); box-shadow:0 10px 20px rgba(78,55,53,.12); }
.album-slot .album-art { font-size:2.5rem; filter:grayscale(1); opacity:.18; }
.album-slot.is-owned .album-art { filter:none; opacity:1; }
.album-slot strong { font-size:.8rem; }
.album-slot small { color:#806f7e; }
.dimension-jump { position:fixed; inset:0; z-index:150; pointer-events:none; opacity:0; overflow:hidden; background:#05040c; }
.dimension-jump.is-active { opacity:1; animation:jumpFade 1.35s ease both; }
.jump-vignette { position:absolute; inset:-20%; background:radial-gradient(circle,transparent 0 16%,rgba(5,4,12,.12) 35%,#05040c 72%); }
.jump-layer { position:absolute; left:50%; top:50%; width:90vmin; height:90vmin; border:2px solid rgba(255,255,255,.18); border-radius:20%; transform:translate(-50%,-50%) scale(.1); }
.dimension-jump.is-active .jump-layer { animation:jumpLayer 1s ease-in infinite; }
.dimension-jump.is-active .l2{animation-delay:.12s}.dimension-jump.is-active .l3{animation-delay:.24s}.dimension-jump.is-active .l4{animation-delay:.36s}
.jump-streaks { position:absolute; inset:-20%; background:repeating-conic-gradient(from 0deg,transparent 0 3deg,rgba(255,255,255,.24) 3.3deg 3.6deg,transparent 4deg 8deg); mask-image:radial-gradient(circle,transparent 0 10%,#000 28%); animation:spin 4s linear infinite; }
.cosmic-event { position:fixed; inset:0; z-index:160; display:grid; place-items:center; pointer-events:none; opacity:0; background:#000; }
.cosmic-event.is-active { pointer-events:auto; animation:cosmicFiveSeconds 5s ease both; }
.cosmic-event p { position:relative; z-index:3; margin:0; color:#fff; font-family:Georgia,serif; font-size:clamp(2rem,7vw,5rem); letter-spacing:.04em; text-shadow:0 0 24px #fff; opacity:0; animation:desireText 5s ease both; }
.cosmic-stars { position:absolute; inset:0; background-image:radial-gradient(circle at 20% 30%,#fff 0 1px,transparent 1.4px),radial-gradient(circle at 70% 20%,#fff 0 1px,transparent 1.4px),radial-gradient(circle at 40% 75%,#fff 0 1px,transparent 1.4px),radial-gradient(circle at 88% 62%,#fff 0 1px,transparent 1.4px); background-size:140px 140px,180px 180px,220px 220px,260px 260px; }
.cosmic-shooting-star { position:absolute; left:-20vw; top:60%; width:42vw; height:5px; background:linear-gradient(90deg,transparent,#fff); transform:rotate(-18deg); filter:drop-shadow(0 0 10px #fff); animation:cosmicStarTravel 5s linear both; }
.toast { position:fixed; z-index:200; left:50%; bottom:20px; max-width:min(560px,calc(100vw - 30px)); transform:translate(-50%,24px); border:1px solid var(--line); border-radius:999px; padding:10px 16px; color:#fff; background:rgba(14,10,29,.9); box-shadow:var(--shadow); opacity:0; pointer-events:none; transition:.25s; text-align:center; }
.toast.is-visible { opacity:1; transform:translate(-50%,0); }

/* v3 · interacción acogedora y personalizable */
.widget-card {
  cursor: grab;
  touch-action: none;
  border-color: rgba(255,255,255,.17);
  background:
    linear-gradient(145deg,rgba(43,31,67,.92),rgba(24,17,42,.88));
  box-shadow:0 22px 55px rgba(0,0,0,.34), inset 0 1px rgba(255,255,255,.06);
}
.widget-card button,.widget-card input,.widget-card textarea,.widget-card a,.widget-card canvas { cursor:auto; touch-action:auto; }
.widget-card button,.widget-card a { cursor:pointer; }
.widget-card canvas { touch-action:none; }
.widget-card.is-dragging { cursor:grabbing; will-change:left,top; }
.widget-header { cursor:grab; }
.widget-actions { flex:0 0 auto; }
.widget-minimize-button,.widget-menu-button {
  display:grid;
  place-items:center;
  width:30px;
  height:27px;
  border:0;
  border-radius:10px;
  padding:0;
  background:rgba(255,255,255,.065);
  cursor:pointer;
}
.widget-minimize-button { font-size:1rem; font-weight:850; line-height:.7; }
.widget-card.is-minimized { min-height:0; }
.widget-card.is-minimized .widget-header { padding-bottom:14px; align-items:center; }
.widget-card.is-minimized .widget-kicker { display:none; }
.widget-card.is-minimized .widget-title { font-size:1rem; }
.widget-body[hidden] { display:none !important; }
.note-composer footer { flex-wrap:nowrap; }
.note-composer footer small { min-width:0; }
.note-composer footer button { flex:0 0 auto; }

.magic-window {
  border-color:var(--room-frame,#5a3a6f);
  background:#060913;
  box-shadow:0 22px 50px rgba(0,0,0,.38),inset 0 0 0 4px rgba(255,255,255,.12);
}
.magic-window::after { background:var(--room-frame,#5a3a6f); }
.window-view { position:absolute; inset:0; overflow:hidden; background:#06101f; }
.live-sky { position:absolute; left:0; top:0; min-width:100%; min-height:100%; will-change:transform; overflow:hidden; }
.live-sky[data-sky-state="day"] { background:linear-gradient(180deg,#5dafe6 0%,#acd8ec 52%,#e7d5b0 74%,#445f50 75%); }
.live-sky[data-sky-state="golden"] { background:linear-gradient(180deg,#435f91 0%,#e79570 48%,#ffd39a 69%,#354d43 72%); }
.live-sky[data-sky-state="twilight"] { background:linear-gradient(180deg,#172b58 0%,#665278 48%,#d18472 69%,#253a38 72%); }
.live-sky[data-sky-state="blue-hour"] { background:linear-gradient(180deg,#0c1838 0%,#263d68 55%,#69516d 70%,#172b2e 73%); }
.live-sky[data-sky-state="night"] { background:linear-gradient(180deg,#030817 0%,#101c3d 58%,#27304b 70%,#101d22 73%); }
.live-stars { position:absolute; inset:0; opacity:0; background-image:radial-gradient(circle at 12% 13%,#fff 0 1px,transparent 1.5px),radial-gradient(circle at 30% 29%,#fff 0 1px,transparent 1.4px),radial-gradient(circle at 57% 11%,#fff 0 1.2px,transparent 1.7px),radial-gradient(circle at 76% 25%,#fff 0 1px,transparent 1.5px),radial-gradient(circle at 88% 8%,#fff 0 1px,transparent 1.5px); background-size:170px 170px,220px 220px,260px 260px,310px 310px,370px 370px; transition:opacity .5s; }
.live-sky[data-sky-state="night"] .live-stars,.live-sky[data-sky-state="blue-hour"] .live-stars { opacity:.9; }
.live-sky[data-sky-state="twilight"] .live-stars { opacity:.35; }
.live-sun,.live-moon { position:absolute; z-index:2; transform:translate(-50%,-50%); }
.live-sun { width:54px; height:54px; border-radius:50%; background:#fff4b2; box-shadow:0 0 25px 10px rgba(255,226,133,.55); }
.live-moon { width:54px; height:54px; border:0; padding:0; background:transparent; filter:drop-shadow(0 0 13px rgba(226,236,255,.7)); cursor:pointer; }
.live-moon span { display:block; font-size:2.75rem; line-height:1; }
.live-horizon { position:absolute; left:-4%; right:-4%; bottom:-2%; height:34%; background:linear-gradient(165deg,transparent 0 24%,rgba(22,37,38,.95) 24% 55%,rgba(10,23,27,.98) 55%); clip-path:polygon(0 53%,10% 32%,20% 45%,32% 22%,44% 51%,57% 31%,68% 49%,80% 21%,91% 43%,100% 30%,100% 100%,0 100%); }
.window-caption { left:10px; right:10px; bottom:7px; padding:5px 7px; border-radius:10px; background:rgba(4,8,18,.42); font-size:.66rem; line-height:1.25; }
.window-drag-tag { padding:3px 7px; border-radius:999px; background:rgba(4,8,18,.38); }
.magic-key.is-available { animation:keyFloat 2.1s ease-in-out infinite; }
.magic-key:not([hidden]) { display:block; }

.gallery-frame { position:absolute; border:7px solid rgba(240,211,170,.5); box-shadow:0 15px 30px rgba(0,0,0,.22); background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.02)); }
.archive-box { position:absolute; width:90px; height:58px; border-radius:8px; background:#5b3d48; box-shadow:inset 0 0 0 2px rgba(255,255,255,.08),0 12px 24px rgba(0,0,0,.2); }
.shoreline-moon { position:absolute; right:12%; top:16%; width:90px; height:90px; border-radius:50%; background:#fff2bf; box-shadow:0 0 45px #fff2bf; opacity:.8; }

.appearance-card { width:min(840px,calc(100vw - 30px)); }
.appearance-title-label { display:grid; gap:7px; margin-bottom:18px; color:var(--muted); font-size:.78rem; }
.appearance-title-label input { width:100%; border:1px solid var(--line); border-radius:14px; padding:11px 12px; color:var(--ink); background:rgba(255,255,255,.065); outline:none; }
.appearance-grid { display:grid; grid-template-columns:repeat(5,minmax(110px,1fr)); gap:10px; }
.appearance-option { min-width:0; border:1px solid var(--line); border-radius:17px; padding:8px; background:rgba(255,255,255,.045); cursor:pointer; text-align:left; }
.appearance-option.is-selected { border-color:var(--accent-2); box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-2) 25%,transparent); }
.appearance-preview { position:relative; display:block; width:100%; aspect-ratio:1.55; overflow:hidden; border-radius:12px; margin-bottom:8px; background:var(--preview-wall); box-shadow:inset 0 0 0 1px rgba(255,255,255,.08); }
.appearance-preview::before { content:""; position:absolute; left:0; right:0; bottom:0; height:31%; background:linear-gradient(180deg,rgba(10,8,18,.08),rgba(10,8,18,.42)),repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px 18px); border-top:2px solid rgba(255,255,255,.08); }
.appearance-preview::after { content:""; position:absolute; inset:0; background:radial-gradient(circle at 50% 20%,rgba(255,255,255,.09),transparent 38%),linear-gradient(180deg,transparent 66%,rgba(7,5,12,.22)); pointer-events:none; }
.appearance-preview b { position:absolute; z-index:5; left:8px; top:7px; display:grid; place-items:center; width:23px; height:23px; border-radius:50%; color:#fff; background:color-mix(in srgb,var(--preview-accent) 68%,rgba(20,15,30,.72)); font-size:.78rem; text-shadow:0 2px 6px #000; box-shadow:0 4px 10px rgba(0,0,0,.24); }
.appearance-mini-window { position:absolute; z-index:2; left:9%; top:15%; width:31%; height:43%; border:5px solid var(--preview-frame); border-radius:22px 22px 5px 5px; background:var(--preview-landscape); background-size:cover; box-shadow:0 5px 11px rgba(0,0,0,.28),inset 0 0 0 1px rgba(255,255,255,.18); }
.appearance-mini-window::after { content:""; position:absolute; left:50%; top:0; bottom:0; width:3px; transform:translateX(-50%); background:var(--preview-frame); }
.appearance-mini-door { position:absolute; z-index:3; right:10%; bottom:18%; width:22%; height:49%; border:3px solid color-mix(in srgb,var(--preview-frame) 72%,#2a1724); border-radius:14px 14px 3px 3px; background:linear-gradient(90deg,rgba(255,255,255,.09),transparent 25% 72%,rgba(0,0,0,.18)),linear-gradient(180deg,#80553e,#4e3028); box-shadow:5px 5px 0 rgba(22,13,25,.22),0 7px 13px rgba(0,0,0,.24); }
.appearance-mini-door::after { content:""; position:absolute; right:15%; top:52%; width:4px; height:4px; border-radius:50%; background:#e7c071; box-shadow:0 0 5px rgba(255,222,142,.65); }
.appearance-mini-shelf { position:absolute; z-index:3; right:6%; top:13%; width:31%; height:6%; border-radius:3px; background:#4c2e31; box-shadow:0 4px 0 rgba(24,13,23,.28); }
.appearance-mini-shelf::before { content:""; position:absolute; left:12%; right:10%; bottom:100%; height:14px; background:repeating-linear-gradient(90deg,#9b6551 0 7px,#d0a267 7px 12px,#665172 12px 18px); }
.appearance-mini-rug { position:absolute; z-index:2; left:30%; bottom:7%; width:40%; height:14%; border-radius:50%; background:radial-gradient(ellipse,var(--preview-accent),color-mix(in srgb,var(--preview-accent) 44%,transparent) 58%,transparent 61%); opacity:.72; transform:perspective(40px) rotateX(52deg); }
.appearance-option[data-preview-theme="space"] .appearance-mini-door,.appearance-option[data-preview-theme="spaceships"] .appearance-mini-door { background:linear-gradient(90deg,#60768d,#263746 48%,#111b26); border-radius:4px; }
.appearance-option[data-preview-theme="castle"] .appearance-mini-door { border-radius:50% 50% 3px 3px; background:linear-gradient(90deg,#7e5a46,#4b302b); }
.appearance-option[data-preview-theme="metro"] .appearance-mini-window { border-radius:4px; }
.appearance-option[data-preview-theme="city"] .appearance-mini-window { border-radius:3px; }
.appearance-option[data-preview-theme="reading"] .appearance-mini-shelf { width:42%; }
.appearance-option[data-preview-theme="disco"] .appearance-mini-rug { filter:hue-rotate(65deg) saturate(1.5); }
.appearance-option strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.72rem; }
.appearance-actions { display:flex; justify-content:flex-end; gap:9px; margin-top:18px; }
.appearance-actions > button:first-child { border:1px solid var(--line); border-radius:13px; padding:10px 14px; background:rgba(255,255,255,.055); cursor:pointer; }

.theme-decor { position:absolute; inset:0; overflow:hidden; }
.theme-decor span { position:absolute; display:block; opacity:.55; }
.theme-decor-space span { width:8px; height:8px; border-radius:50%; background:#fff; box-shadow:0 0 16px #fff; }
.theme-decor-space span:nth-child(1){left:12%;top:18%}.theme-decor-space span:nth-child(2){left:34%;top:35%;width:4px;height:4px}.theme-decor-space span:nth-child(3){right:18%;top:21%;width:90px;height:90px;background:radial-gradient(circle at 35% 30%,#fff,#9a85ff 8%,#2d3f8c 52%,transparent 55%)}.theme-decor-space span:nth-child(4){right:38%;bottom:18%;width:5px;height:5px}.theme-decor-space span:nth-child(5){left:70%;top:48%;width:3px;height:3px}
.theme-decor-castle span:nth-child(1),.theme-decor-castle span:nth-child(2),.theme-decor-castle span:nth-child(3){bottom:0;width:15%;height:45%;background:#1b1726;clip-path:polygon(10% 20%,25% 20%,25% 5%,38% 20%,62% 20%,75% 5%,75% 20%,90% 20%,90% 100%,10% 100%)}.theme-decor-castle span:nth-child(1){left:2%}.theme-decor-castle span:nth-child(2){left:42%;height:34%}.theme-decor-castle span:nth-child(3){right:2%;height:50%}
.theme-decor-metro span:nth-child(1){left:0;right:0;bottom:14%;height:7px;background:#d7ba65}.theme-decor-metro span:nth-child(2),.theme-decor-metro span:nth-child(3){bottom:0;width:36%;height:18%;border:5px solid rgba(255,255,255,.13);border-bottom:0;border-radius:100% 100% 0 0}.theme-decor-metro span:nth-child(2){left:4%}.theme-decor-metro span:nth-child(3){right:4%}
.theme-decor-city span { bottom:0; width:16%; background:#101426; box-shadow:inset 0 0 0 1px rgba(255,255,255,.04); }.theme-decor-city span:nth-child(1){left:2%;height:46%}.theme-decor-city span:nth-child(2){left:21%;height:31%}.theme-decor-city span:nth-child(3){left:43%;height:56%}.theme-decor-city span:nth-child(4){left:64%;height:38%}.theme-decor-city span:nth-child(5){right:1%;height:49%}
.theme-decor-reading span { width:120px; height:210px; bottom:0; background:repeating-linear-gradient(90deg,#7c4b43 0 18px,#b37a58 18px 35px,#4e586f 35px 51px); box-shadow:0 0 0 9px #3f2a2c; }.theme-decor-reading span:nth-child(1){left:2%}.theme-decor-reading span:nth-child(2){right:2%}.theme-decor-reading span:nth-child(3){left:44%;bottom:5%;width:150px;height:18px;transform:rotate(-5deg)}
.theme-decor-spaceships span:nth-child(1){right:8%;bottom:14%;width:250px;height:90px;border-radius:70% 25% 30% 45%;background:linear-gradient(180deg,#a6c1cc,#2b5667);transform:rotate(-7deg);box-shadow:-60px 20px 0 -28px #6fbdd1}.theme-decor-spaceships span:nth-child(2){right:24%;bottom:10%;width:60px;height:5px;background:#8ff5ff;box-shadow:0 0 22px #8ff5ff}
.theme-decor-disco span:nth-child(1){left:50%;top:8%;width:70px;height:70px;border-radius:50%;background:conic-gradient(#fff,#a6e8ff,#ff9be2,#fff);transform:translateX(-50%);box-shadow:0 0 30px #fff}.theme-decor-disco span:nth-child(n+2){left:50%;top:16%;width:3px;height:80%;background:linear-gradient(transparent,var(--room-accent));transform-origin:top}.theme-decor-disco span:nth-child(2){transform:rotate(24deg)}.theme-decor-disco span:nth-child(3){transform:rotate(-24deg)}.theme-decor-disco span:nth-child(4){transform:rotate(52deg)}.theme-decor-disco span:nth-child(5){transform:rotate(-52deg)}
.theme-decor-music span { font-size:4rem; color:var(--room-accent); text-shadow:0 0 25px var(--room-accent); }.theme-decor-music span:nth-child(1){left:8%;top:20%}.theme-decor-music span:nth-child(1)::before{content:"♫"}.theme-decor-music span:nth-child(2){right:12%;top:28%}.theme-decor-music span:nth-child(2)::before{content:"♪"}.theme-decor-music span:nth-child(3){left:45%;bottom:10%}.theme-decor-music span:nth-child(3)::before{content:"♩"}
.theme-decor-inner span { left:50%; top:50%; border:1px solid rgba(190,255,235,.32); border-radius:50%; transform:translate(-50%,-50%); }.theme-decor-inner span:nth-child(1){width:180px;height:180px}.theme-decor-inner span:nth-child(2){width:320px;height:320px}.theme-decor-inner span:nth-child(3){width:480px;height:480px}.theme-decor-inner span:nth-child(4){left:12%;top:18%;width:80px;height:160px;background:linear-gradient(145deg,#8bc9a8,#325d56);border:0;border-radius:70% 20%}.theme-decor-inner span:nth-child(5){left:auto;right:7%;top:auto;bottom:8%;width:110px;height:190px;background:linear-gradient(145deg,#79b99f,#274e48);border:0;border-radius:60% 15%}
.dimension-jump { background:rgba(4,3,12,.94); }
.jump-vignette { inset:0; background:radial-gradient(circle,transparent 0 12%,rgba(5,4,12,.2) 42%,#05040c 82%); }
.jump-layer { will-change:transform,opacity; }
.jump-streaks { inset:0; background:radial-gradient(circle at center,transparent 0 10%,rgba(255,255,255,.12) 11%,transparent 13%,rgba(157,126,255,.14) 25%,transparent 38%); mask-image:none; will-change:transform,opacity; }


/* v3.1 · sin scroll, estados visibles y controles corregidos */
.modal-card,.parchment,.album-pages { overflow:hidden; }
.catalog-option,.catalog-option strong,.catalog-option small { min-width:0; max-width:100%; }
.catalog-option strong { overflow-wrap:anywhere; line-height:1.15; }
.catalog-grid.compact .catalog-option { min-height:96px; padding:13px 11px; }
.catalog-grid.compact .catalog-option strong { font-size:.88rem; }
.magic-key[hidden] { display:none !important; visibility:hidden !important; opacity:0 !important; pointer-events:none !important; }
.magic-key:not([hidden]) { display:block; visibility:visible; pointer-events:auto; }
.room-scene[data-room-theme]:not([data-room-theme="room"]) .widget-card { border-color:color-mix(in srgb,var(--room-accent) 42%,rgba(255,255,255,.12)); }
.room-scene[data-room-theme]:not([data-room-theme="room"]) .room-title h1 { color:color-mix(in srgb,var(--room-accent-2) 70%,white); text-shadow:0 4px 24px rgba(0,0,0,.38); }
.cosmic-event p,.cosmic-shooting-star { animation:none; }
.cosmic-event.is-active p { animation:desireTextV31 5s ease both; }
.cosmic-event.is-active .cosmic-shooting-star { animation:cosmicStarTravelV31 5s cubic-bezier(.2,.62,.2,1) both; }
.cosmic-shooting-star { left:-55vw; top:72%; width:52vw; height:6px; border-radius:999px; background:linear-gradient(90deg,transparent 0%,rgba(143,205,255,.12) 24%,#fff 88%,#fff 100%); transform:rotate(-17deg); transform-origin:right center; filter:drop-shadow(0 0 11px #fff) drop-shadow(0 0 28px #78bfff); }
.cosmic-shooting-star::after { content:""; position:absolute; right:-9px; top:50%; width:18px; height:18px; border-radius:50%; transform:translateY(-50%); background:#fff; box-shadow:0 0 18px 6px #fff,0 0 55px 18px rgba(104,170,255,.7); }
.album-book { height:min(650px,82vh); }
.album-pages { display:grid; grid-template-rows:auto minmax(0,1fr) auto; gap:12px; }
.album-grid { min-height:0; height:100%; margin-top:0; grid-template-columns:repeat(3,minmax(0,1fr)); grid-template-rows:repeat(2,minmax(0,1fr)); align-items:stretch; }
.album-slot { min-height:0; height:100%; padding:10px; }
.album-pagination { display:flex; justify-content:center; align-items:center; gap:12px; }
.album-pagination button { width:38px; height:34px; border:1px solid rgba(61,43,56,.2); border-radius:12px; color:#3d2b38; background:rgba(255,255,255,.35); font-family:Georgia,serif; font-size:1.5rem; cursor:pointer; }
.album-pagination button:disabled { opacity:.3; cursor:default; }
.album-pagination span { min-width:54px; text-align:center; color:#6f5b68; font-weight:800; }
.widget-card { user-select:none; }
.widget-card input,.widget-card textarea,.widget-card canvas,.widget-card a,.widget-card button { user-select:auto; }
.widget-card.is-dragging { z-index:999 !important; }


/* v3.1.1 · widgets y catálogos resistentes */
.widget-card,.widget-card * { box-sizing:border-box; }
.widget-card { touch-action:none; }
.widget-card input,.widget-card textarea,.widget-card button,.widget-card a,.widget-card canvas,.widget-card select { touch-action:auto; }
.widget-title,.widget-kicker,.widget-actions button,.note-composer button,.draw-toolbar button,.inline-form button,.primary-button { white-space:nowrap; }
.catalog-grid.compact { align-items:stretch; }
.catalog-grid.compact .catalog-option { width:100%; overflow:hidden; }
.catalog-grid.compact .catalog-option strong,.catalog-grid.compact .catalog-option small { display:block; width:100%; overflow-wrap:anywhere; word-break:normal; }
.catalog-grid.compact .catalog-option strong { white-space:normal; }
.album-layer,.parchment-layer { overflow:hidden; }
.album-pages,.album-grid { overflow:hidden !important; }

.boot-recovery[hidden] { display:none !important; }
.boot-recovery { position:fixed; inset:0; z-index:1000; display:grid; place-items:center; padding:24px; background:rgba(8,5,18,.82); backdrop-filter:blur(12px); }
.boot-recovery > div { width:min(460px,100%); padding:28px; border:1px solid rgba(255,255,255,.16); border-radius:26px; background:linear-gradient(145deg,rgba(45,32,69,.98),rgba(24,18,42,.98)); box-shadow:0 28px 90px rgba(0,0,0,.48); text-align:center; }
.boot-recovery strong { display:block; margin-bottom:8px; font-family:Georgia,serif; font-size:1.35rem; }
.boot-recovery p { margin:0 0 20px; color:rgba(255,255,255,.72); line-height:1.45; }
.boot-recovery button { min-height:42px; padding:0 18px; border:0; border-radius:999px; white-space:nowrap; color:#21152f; font-weight:800; background:linear-gradient(135deg,#e5c0ff,#7ce9df); cursor:pointer; }

/* v4.2 · widgets redimensionables, accesos ordenables, calendario y modales claros */
.modal,.modal-card,.reward-card,.catalog-option,.form-card,.appearance-card { color:#fff; }
.modal-card h2,.modal-card strong,.modal-card label,.modal-card small,.modal-card p,.reward-card h2,.reward-card p,.reward-card blockquote { color:inherit; }
.modal-card input,.modal-card textarea,.modal-card select { color:#fff; caret-color:#fff; }
.modal-card input::placeholder,.modal-card textarea::placeholder { color:rgba(255,255,255,.48); }
.modal-card { overflow:hidden !important; }
.catalog-option { color:#fff; overflow:hidden; }
.catalog-option small { color:rgba(255,255,255,.67); }

.widget-card { display:flex; flex-direction:column; min-width:250px; max-width:calc(100% - 8px); max-height:calc(100% - 8px); overflow:hidden; }
.widget-header { flex:0 0 auto; align-items:center; cursor:grab; }
.widget-heading { min-width:0; display:flex; align-items:baseline; gap:8px; }
.widget-title { flex:0 0 auto; }
.widget-kicker { min-width:0; margin:0; color:rgba(255,255,255,.52); font-size:.62rem; font-weight:650; letter-spacing:.04em; text-transform:none; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.widget-actions button { width:29px; height:27px; border:0; border-radius:9px; background:rgba(255,255,255,.06); cursor:pointer; }
.widget-minimize-button { font-weight:900; line-height:.6; }
.widget-maximize-button { font-size:1rem; line-height:1; }
.widget-body { min-height:0; flex:1 1 auto; overflow:hidden; }
.widget-card.is-minimized { min-height:0 !important; height:auto !important; }
.widget-card.is-minimized .widget-header { padding-bottom:14px; }
.widget-card.is-maximized { inset:10px !important; width:calc(100% - 20px) !important; height:calc(100% - 20px) !important; max-width:none; max-height:none; z-index:9999 !important; border-radius:28px; }
.widget-card.is-maximized .widget-body { display:flex; flex-direction:column; }
.widget-card.is-maximized .drawing-canvas { flex:1 1 auto; height:auto; min-height:0; }
.widget-resize-handle { position:absolute; z-index:15; right:1px; bottom:1px; display:grid; place-items:center; width:30px; height:30px; border:0; padding:0; color:rgba(255,255,255,.58); background:transparent; cursor:nwse-resize; }
.widget-resize-handle::before { content:"↔"; display:block; font-size:18px; line-height:1; transform:rotate(-45deg); text-shadow:0 2px 8px rgba(0,0,0,.45); transition:color .16s ease,transform .16s ease; }
.widget-resize-handle::after { content:""; position:absolute; right:3px; bottom:3px; width:13px; height:13px; border-right:1px solid rgba(255,255,255,.22); border-bottom:1px solid rgba(255,255,255,.22); border-radius:0 0 7px 0; }
.widget-resize-handle:hover::before,.widget-resize-handle:focus-visible::before { color:#fff; transform:rotate(-45deg) scale(1.12); }
.widget-card.is-resizing { user-select:none; }

.floating-note { animation:noteGentleFloat 5.8s ease-in-out infinite; }
.floating-note:nth-of-type(2n) { animation-delay:-1.7s; }
.floating-note:nth-of-type(3n) { animation-delay:-3.1s; }
.floating-note.is-dragging { animation:none; }

.shortcut { touch-action:none; }
.shortcut-link { user-select:none; }
.shortcut.is-shortcut-placeholder { opacity:.22; }
.shortcut-ghost { z-index:10000; margin:0; opacity:.94; transform:scale(1.04); filter:drop-shadow(0 18px 24px rgba(0,0,0,.38)); transition:transform .16s,border-radius .16s,opacity .2s,filter .16s; }
.shortcut-ghost .shortcut-link { pointer-events:none; }
.shortcut-ghost.is-crumpled { border-radius:48% 37% 54% 41%; transform:scale(.62) rotate(18deg); filter:grayscale(.5) drop-shadow(0 9px 14px rgba(0,0,0,.4)); }
.shortcut-ghost.is-crumpled .shortcut-icon { border-radius:46% 35% 51% 42%; box-shadow:inset 9px 6px 14px rgba(0,0,0,.22); }
.shortcut-ghost.is-deleting { opacity:0; transform:scale(.14) rotate(140deg); }

.calendar-widget { height:100%; min-height:250px; display:grid; grid-template-columns:minmax(220px,1.15fr) minmax(160px,.85fr); gap:12px; }
.calendar-month,.calendar-reminders { min-width:0; min-height:0; border:1px solid rgba(255,255,255,.09); border-radius:16px; padding:10px; background:rgba(255,255,255,.035); overflow:hidden; }
.calendar-month { display:grid; grid-template-rows:auto auto minmax(0,1fr); }
.calendar-month > header,.calendar-reminders > header { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:28px; }
.calendar-month > header strong { text-transform:capitalize; font-family:Georgia,serif; font-weight:500; }
.calendar-month > header button,.reminder-pagination button { width:28px; height:26px; border:0; border-radius:9px; background:rgba(255,255,255,.07); cursor:pointer; }
.calendar-weekdays,.calendar-days { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:3px; }
.calendar-weekdays { margin:5px 0 3px; color:rgba(255,255,255,.48); text-align:center; font-size:.61rem; }
.calendar-days { grid-template-rows:repeat(6,minmax(24px,1fr)); }
.calendar-day { position:relative; min-width:0; min-height:24px; border:0; border-radius:8px; padding:0; color:rgba(255,255,255,.86); background:transparent; font-size:.68rem; cursor:pointer; }
.calendar-day:hover { background:rgba(255,255,255,.08); }
.calendar-day.is-other-month { opacity:.28; }
.calendar-day.is-selected { color:#191024; background:var(--room-accent-2,var(--accent-2)); font-weight:850; }
.calendar-day.is-today { box-shadow:inset 0 0 0 1px var(--room-accent,var(--accent)); }
.calendar-day.has-reminder::after { content:""; position:absolute; left:50%; bottom:2px; width:3px; height:3px; border-radius:50%; background:var(--accent-3); transform:translateX(-50%); }
.calendar-reminders { display:grid; grid-template-rows:auto minmax(0,1fr) auto auto; gap:7px; }
.calendar-reminders > header strong { text-transform:capitalize; }
.calendar-page-status { color:rgba(255,255,255,.48); font-size:.62rem; }
.reminder-list { min-height:0; display:grid; align-content:start; gap:5px; overflow:hidden; }
.reminder-item { display:grid; grid-template-columns:24px minmax(0,1fr) 24px; align-items:center; gap:5px; min-height:34px; border-radius:10px; padding:3px; background:rgba(255,255,255,.045); }
.reminder-item > button { width:24px; height:24px; border:0; border-radius:8px; background:rgba(255,255,255,.06); cursor:pointer; }
.reminder-item span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.68rem; }
.reminder-item b { margin-right:5px; color:var(--accent-3); font-size:.59rem; }
.reminder-item.is-done span { opacity:.48; text-decoration:line-through; }
.reminder-empty { margin:auto; color:rgba(255,255,255,.45); font-size:.72rem; text-align:center; }
.reminder-pagination { display:flex; justify-content:flex-end; gap:5px; }
.reminder-form { display:grid; grid-template-columns:76px minmax(0,1fr) auto; gap:5px; }
.reminder-form input { min-width:0; height:32px; border:1px solid var(--line); border-radius:9px; padding:5px 7px; color:#fff; background:rgba(255,255,255,.055); font-size:.66rem; }
.reminder-form button { border:0; border-radius:9px; padding:0 9px; color:#170d25; background:linear-gradient(135deg,var(--accent),var(--accent-2)); font-size:.66rem; font-weight:850; cursor:pointer; }

.magic-door-frame { border:10px solid #3b2418; border-bottom-width:14px; border-radius:84px 84px 8px 8px; background:#17100d; box-shadow:0 22px 52px rgba(0,0,0,.46),inset 0 0 0 3px rgba(216,164,95,.15); }
.magic-door { inset:3px; border-radius:70px 70px 2px 2px; background:repeating-linear-gradient(90deg,#6b4026 0 27px,#7b4b2c 27px 31px,#5a341f 31px 57px); box-shadow:inset -18px 0 26px rgba(0,0,0,.34),inset 0 0 0 2px rgba(255,216,147,.1); }
.magic-door::before { content:""; left:12%; right:12%; top:14%; bottom:14%; transform:none; border:2px solid rgba(37,19,10,.42); border-radius:52px 52px 4px 4px; box-shadow:inset 0 0 0 5px rgba(214,147,79,.08); }
.magic-door::after { right:16px; top:54%; width:11px; height:11px; background:#cda55d; box-shadow:0 0 0 3px rgba(54,29,13,.42),0 0 10px rgba(255,218,137,.45); }
.door-panel { position:absolute; left:18%; right:18%; border:2px solid rgba(45,24,12,.38); border-radius:30px 30px 5px 5px; box-shadow:inset 0 0 14px rgba(0,0,0,.18); pointer-events:none; }
.door-panel.panel-top { top:18%; height:28%; }
.door-panel.panel-bottom { top:55%; height:25%; border-radius:5px; }
.door-status { color:rgba(255,255,255,.82); text-shadow:0 2px 8px #000; }
.magic-key { z-index:6; }
.magic-key.is-found { filter:drop-shadow(0 0 18px #ffe991) brightness(1.15); }

/* v4.2.3 · accesos directos realmente arrastrables */
.shortcut[data-id],.shortcut[data-id] .shortcut-link,.shortcut[data-id] .shortcut-icon { cursor:grab; }
.shortcut[data-id]:active,.shortcut[data-id]:active .shortcut-link { cursor:grabbing; }
.shortcut[data-id] * { -webkit-user-drag:none; user-select:none; }
.shortcut-ghost { cursor:grabbing; }


/* v4.2.4 · paisaje SVG vivo, catálogos legibles e íconos con color */
.catalog-option {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  white-space:normal;
}
.catalog-option strong,
.catalog-option small {
  width:100%;
  white-space:normal !important;
  overflow:visible;
  text-overflow:clip;
  overflow-wrap:break-word;
  word-break:normal;
}
#widgetCatalog .catalog-option { min-height:118px; height:auto; }
#widgetCatalog .catalog-option small { margin-top:2px; line-height:1.38; }

.shortcut-color-field input[type="color"] {
  width:100%;
  height:42px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:12px;
  padding:4px;
  background:rgba(255,255,255,.055);
  cursor:pointer;
}
.shortcut-color-field input[type="color"]::-webkit-color-swatch-wrapper { padding:0; }
.shortcut-color-field input[type="color"]::-webkit-color-swatch { border:0; border-radius:8px; }
.shortcut-color-field input[type="color"]::-moz-color-swatch { border:0; border-radius:8px; }
.shortcut-icon {
  color:#fff;
  border-color:color-mix(in srgb,var(--shortcut-color,#8f72d8) 58%,rgba(255,255,255,.22));
  background:
    radial-gradient(circle at 30% 22%,rgba(255,255,255,.34),transparent 36%),
    linear-gradient(145deg,color-mix(in srgb,var(--shortcut-color,#8f72d8) 88%,white 12%),color-mix(in srgb,var(--shortcut-color,#8f72d8) 68%,black 32%));
  box-shadow:0 10px 24px rgba(0,0,0,.2),inset 0 0 0 1px rgba(255,255,255,.12);
  text-shadow:0 2px 8px rgba(0,0,0,.32);
}
.shortcut-add-slot .shortcut-icon { --shortcut-color:#77688f; }

.live-landscape { position:absolute; inset:0; z-index:1; pointer-events:none; }
.live-landscape-svg { display:block; width:100%; height:100%; }
.live-clouds,.live-birds { position:absolute; inset:0; z-index:2; overflow:hidden; pointer-events:none; }
.live-clouds i { position:absolute; left:-18%; width:92px; height:28px; border-radius:999px; background:rgba(255,255,255,.72); filter:blur(.15px); box-shadow:25px -13px 0 2px rgba(255,255,255,.76),55px -4px 0 -2px rgba(255,255,255,.66); opacity:.72; animation:landscapeCloudDrift 48s linear infinite; }
.live-clouds .cloud-a { top:16%; animation-duration:52s; }
.live-clouds .cloud-b { top:29%; transform:scale(.72); opacity:.52; animation-duration:67s; animation-delay:-29s; }
.live-clouds .cloud-c { top:8%; transform:scale(.48); opacity:.42; animation-duration:78s; animation-delay:-49s; }
.live-birds i { position:absolute; left:-8%; width:20px; height:9px; opacity:.64; animation:landscapeBirdFly 26s linear infinite; }
.live-birds i::before,.live-birds i::after { content:""; position:absolute; top:3px; width:11px; height:7px; border-top:2px solid rgba(31,42,55,.8); border-radius:50%; }
.live-birds i::before { left:0; transform:rotate(13deg); }
.live-birds i::after { right:0; transform:rotate(-13deg); }
.live-birds .bird-a { top:25%; animation-duration:24s; }
.live-birds .bird-b { top:20%; transform:scale(.72); animation-delay:-11s; animation-duration:31s; }
.live-birds .bird-c { top:34%; transform:scale(.55); animation-delay:-19s; animation-duration:37s; }
.live-sun,.live-moon { z-index:3; }
.live-stars { z-index:0; }
.live-sky[data-sky-state="golden"] .live-landscape-svg { filter:saturate(.9) sepia(.12) brightness(.9); }
.live-sky[data-sky-state="twilight"] .live-landscape-svg { filter:saturate(.72) brightness(.66) hue-rotate(8deg); }
.live-sky[data-sky-state="blue-hour"] .live-landscape-svg { filter:saturate(.62) brightness(.48) hue-rotate(14deg); }
.live-sky[data-sky-state="night"] .live-landscape-svg { filter:saturate(.48) brightness(.3) hue-rotate(18deg); }
.live-sky[data-sky-state="night"] .live-clouds { opacity:.2; }
.live-sky[data-sky-state="night"] .live-birds { opacity:.12; }

@keyframes landscapeCloudDrift { from{ left:-20%; } to{ left:112%; } }
@keyframes landscapeBirdFly { 0%{ left:-8%; transform:translateY(0) scale(var(--bird-scale,1)); } 45%{ transform:translateY(-10px) scale(var(--bird-scale,1)); } 100%{ left:108%; transform:translateY(3px) scale(var(--bird-scale,1)); } }

@media (prefers-reduced-motion:reduce) {
  .live-clouds i,.live-birds i { animation:none; }
  .live-clouds .cloud-a { left:18%; }
  .live-clouds .cloud-b { left:52%; }
  .live-clouds .cloud-c { left:76%; }
  .live-birds .bird-a { left:62%; }
  .live-birds .bird-b { left:70%; }
  .live-birds .bird-c { left:78%; }
}

/* v4.2.5 · progreso del mundo, clima y colección de ventanas */
.window-drag-tag { display:none !important; }

.magic-window {
  --window-frame:#5a3a6f;
  --window-light:#8d69a2;
  border-color:var(--window-frame);
  box-shadow:0 22px 50px rgba(0,0,0,.38),inset 0 0 0 4px color-mix(in srgb,var(--window-light) 28%,transparent);
}
.magic-window::after { background:var(--window-frame); }
.magic-window.window-design-violet { --window-frame:#5a3a6f;--window-light:#c49bdb; }
.magic-window.window-design-oak { --window-frame:#744a2e;--window-light:#c08a54;border-radius:105px 105px 16px 16px; }
.magic-window.window-design-moon { --window-frame:#75809b;--window-light:#e4ecff;box-shadow:0 22px 50px rgba(0,0,0,.38),0 0 22px rgba(196,215,255,.18),inset 0 0 0 4px rgba(255,255,255,.17); }
.magic-window.window-design-garden { --window-frame:#446d50;--window-light:#91c79a; }
.magic-window.window-design-ocean { --window-frame:#356b82;--window-light:#83d7df;border-radius:95px 95px 28px 28px; }
.magic-window.window-design-rose { --window-frame:#8a5871;--window-light:#efb4cf; }
.magic-window.window-design-brass { --window-frame:#987333;--window-light:#f2d88b; }
.magic-window.window-design-obsidian { --window-frame:#252534;--window-light:#77738e;box-shadow:0 22px 55px rgba(0,0,0,.58),inset 0 0 0 3px rgba(255,255,255,.08); }

/* El sol y la luna viven detrás del paisaje. */
.live-stars { z-index:0; }
.live-sun,.live-moon { z-index:1; }
.live-landscape { z-index:2; }
.live-clouds,.live-birds { z-index:3; }
.live-weather { position:absolute;inset:0;z-index:4;pointer-events:none;overflow:hidden; }
.live-sky[data-weather="cloudy"] .live-clouds { opacity:.96;filter:saturate(.72) brightness(.9); }
.live-sky[data-weather="cloudy"] .live-clouds i { transform:scale(1.16); }
.live-sky[data-weather="windy"] .live-clouds i { animation-duration:21s; }
.live-sky[data-weather="windy"] .live-birds i { animation-duration:14s; }
.live-sky[data-weather="fog"] .live-weather { background:linear-gradient(180deg,rgba(235,244,244,.06),rgba(220,233,231,.58) 52%,rgba(218,231,227,.42));backdrop-filter:blur(1.4px); }
.live-sky[data-weather="rain"] .live-weather,
.live-sky[data-weather="storm"] .live-weather {
  opacity:.7;
  background-image:repeating-linear-gradient(105deg,transparent 0 12px,rgba(214,238,255,.65) 13px 14px,transparent 15px 26px);
  background-size:42px 42px;
  animation:weatherRain .62s linear infinite;
}
.live-sky[data-weather="storm"]::after { content:"";position:absolute;inset:0;z-index:3;background:rgba(20,27,46,.24);pointer-events:none; }
.live-sky[data-weather="rain"] .live-birds,
.live-sky[data-weather="storm"] .live-birds,
.live-sky[data-weather="snow"] .live-birds { opacity:0; }
.live-sky[data-weather="snow"] .live-weather {
  opacity:.82;
  background-image:radial-gradient(circle,#fff 0 2px,transparent 2.4px),radial-gradient(circle,#eef8ff 0 1.5px,transparent 2px);
  background-size:46px 46px,67px 67px;
  background-position:0 0,19px 13px;
  animation:weatherSnow 7s linear infinite;
}
@keyframes weatherRain { from{background-position:0 -42px} to{background-position:-18px 42px} }
@keyframes weatherSnow { from{background-position:0 -60px,19px -90px} to{background-position:24px 60px,-7px 90px} }

/* Puerta antigua de madera. */
.magic-door-frame { border-color:#4d321f;background:rgba(31,17,10,.48);box-shadow:0 20px 50px rgba(0,0,0,.45),inset 0 0 0 2px rgba(221,176,108,.12); }
.magic-door {
  background:
    linear-gradient(90deg,rgba(255,255,255,.05),transparent 16%,rgba(0,0,0,.09) 17% 19%,transparent 20% 48%,rgba(0,0,0,.1) 49% 51%,transparent 52%),
    repeating-linear-gradient(92deg,#865a35 0 21px,#714728 22px 43px,#8d6038 44px 66px);
  box-shadow:inset -18px 0 34px rgba(0,0,0,.36),inset 0 0 0 3px rgba(238,194,126,.11);
}
.magic-door::before { color:#dfc079;text-shadow:0 0 14px rgba(255,222,142,.55); }
.magic-door::after { background:#d7b45f;box-shadow:0 0 9px rgba(255,225,142,.75),inset 0 0 0 2px #88651f; }

/* Libros: álbum a la izquierda, ventanas al centro. */
.shelf-book.album-book-trigger { width:34px;height:51px;background:linear-gradient(90deg,#6f3d31,#a36849); }
.shelf-book.album-book-trigger::after { content:"✦";position:absolute;inset:0;display:grid;place-items:center;color:#f8d98a; }
.shelf-book.window-book-trigger { width:39px;height:55px;background:linear-gradient(90deg,#294f62,#4b8294); }
.shelf-book.window-book-trigger::after { content:"▦";position:absolute;inset:0;display:grid;place-items:center;color:#d7f6ff;font-size:1.05rem; }
.shelf-book.mystery-book-trigger { height:46px;background:#7c4ba2; }

.window-collection-card { width:min(760px,calc(100vw - 30px));overflow:hidden;color:#fff; }
.window-instance-tabs { display:flex;gap:8px;min-height:38px;margin:0 0 14px; }
.window-instance-tab { border:1px solid var(--line);border-radius:999px;padding:8px 13px;background:rgba(255,255,255,.055);color:#fff;cursor:pointer; }
.window-instance-tab.is-selected { background:rgba(255,255,255,.16);border-color:var(--accent-2); }
.window-design-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-height:300px; }
.window-design-option { min-width:0;border:1px solid var(--line);border-radius:19px;padding:13px;background:rgba(255,255,255,.055);color:#fff;text-align:left;cursor:pointer; }
.window-design-option:disabled { opacity:.44;cursor:default; }
.window-design-option.is-selected { border-color:var(--accent-2);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-2) 25%,transparent); }
.window-design-option strong,.window-design-option small { display:block; }
.window-design-option small { margin-top:4px;color:rgba(255,255,255,.64);line-height:1.3; }
.window-design-preview,.reward-window-preview { --window-frame:#5a3a6f;display:grid;place-items:center;width:100%;height:88px;margin-bottom:9px;border:10px solid var(--window-frame);border-radius:55px 55px 12px 12px;background:linear-gradient(180deg,#68a9d7,#bedbe5 60%,#4c7457 61%);box-shadow:inset 0 0 0 3px rgba(255,255,255,.13); }
.window-design-preview i,.reward-window-preview i { font-style:normal;font-size:1.35rem;text-shadow:0 2px 9px rgba(0,0,0,.35); }
.window-design-oak .window-design-preview,.reward-window-preview.window-design-oak { --window-frame:#744a2e; }
.window-design-moon .window-design-preview,.reward-window-preview.window-design-moon { --window-frame:#75809b; }
.window-design-garden .window-design-preview,.reward-window-preview.window-design-garden { --window-frame:#446d50; }
.window-design-ocean .window-design-preview,.reward-window-preview.window-design-ocean { --window-frame:#356b82; }
.window-design-rose .window-design-preview,.reward-window-preview.window-design-rose { --window-frame:#8a5871; }
.window-design-brass .window-design-preview,.reward-window-preview.window-design-brass { --window-frame:#987333; }
.window-design-obsidian .window-design-preview,.reward-window-preview.window-design-obsidian { --window-frame:#252534; }
.window-collection-footer { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;color:rgba(255,255,255,.72);font-size:.76rem; }
.window-collection-pagination { display:flex;align-items:center;gap:10px; }
.window-collection-pagination button { width:34px;height:32px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.06);color:#fff;cursor:pointer; }
.window-collection-pagination button:disabled { opacity:.35; }

.reward-room,.reward-window { text-align:center;color:#fff; }
.reward-room-symbol { display:grid;place-items:center;width:90px;height:90px;margin:8px auto 14px;border:1px solid rgba(255,255,255,.16);border-radius:25px;background:rgba(255,255,255,.07);font-size:2.3rem;box-shadow:0 18px 45px rgba(0,0,0,.24); }
.reward-window-preview { width:210px;height:140px;margin:8px auto 16px; }

@media (max-width:650px) {
  .window-design-grid { grid-template-columns:1fr;min-height:390px; }
  .window-design-option { display:grid;grid-template-columns:100px 1fr;column-gap:11px;align-items:center; }
  .window-design-preview { grid-row:1 / 3;height:72px;margin:0; }
  .window-design-option small { grid-column:2; }
  .window-collection-footer { align-items:flex-start;flex-direction:column; }
}

@media (prefers-reduced-motion:reduce) {
  .live-weather { animation:none !important; }
}

/* v4.2.6 · cielo en profundidad, calendario compacto y capas persistentes */
.live-sky { isolation:isolate; }
.live-stars { position:absolute; inset:0; z-index:0; }
.live-celestial { position:absolute; inset:0; z-index:1; pointer-events:none; }
.live-celestial .live-sun,
.live-celestial .live-moon { z-index:auto !important; }
.live-celestial .live-moon { pointer-events:auto; }
.live-landscape { z-index:2 !important; }
.live-clouds,.live-birds { z-index:3 !important; }
.live-weather { z-index:4 !important; }

.calendar-widget.is-compact { grid-template-columns:minmax(0,1fr); }
.calendar-widget.is-compact .calendar-month { position:relative; }
.calendar-empty-add {
  justify-self:center;
  align-self:end;
  min-height:30px;
  margin-top:7px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:10px;
  padding:5px 10px;
  color:rgba(255,255,255,.78);
  background:rgba(255,255,255,.055);
  font-size:.66rem;
  white-space:nowrap;
  cursor:pointer;
}
.calendar-empty-add:hover { color:#fff; background:rgba(255,255,255,.1); }
.reminder-compose-toolbar { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.reminder-time {
  width:82px;
  height:30px;
  border:1px solid var(--line);
  border-radius:9px;
  padding:4px 6px;
  color:#fff;
  color-scheme:dark;
  background:rgba(255,255,255,.055);
  font-size:.66rem;
}
.reminder-pagination { margin-left:auto; }
.reminder-form { grid-template-columns:minmax(0,1fr) auto; }
.reminder-form .reminder-title { min-width:0; }
.widget-card.calendar-is-compact .widget-body { min-height:0; }

/* v4.3.0 · La Puerta: audio, widgets compactos, cámara y nuevos rituales */
#soundToggle.is-active {
  color:#171024;
  background:linear-gradient(135deg,var(--accent),var(--accent-2));
  box-shadow:0 0 18px color-mix(in srgb,var(--accent-2) 55%,transparent);
}

.widget-emoji {
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:8px;
  background:rgba(255,255,255,.07);
  font-size:.88rem;
  line-height:1;
}
.widget-card.is-minimized {
  width:max-content !important;
  min-width:0 !important;
  max-width:240px !important;
  overflow:visible !important;
  border-radius:999px;
}
.widget-card.is-minimized .widget-header {
  min-height:48px;
  gap:8px;
  padding:8px 9px 8px 10px;
}
.widget-card.is-minimized .widget-heading { gap:7px; }
.widget-card.is-minimized .widget-title {
  max-width:112px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-family:inherit;
  font-size:.78rem;
  font-weight:800;
}
.widget-card.is-minimized .widget-emoji {
  width:29px;
  height:29px;
  border-radius:50%;
  font-size:.95rem;
}
.widget-card.is-minimized .widget-actions { gap:2px; }
.widget-card.is-minimized .widget-actions button { width:27px;height:27px;border-radius:50%; }
.widget-card.is-minimized .widget-menu {
  top:34px;
  right:0;
  z-index:100;
}
@keyframes widgetMiniIn {
  from { opacity:.3; transform:scale(.82); }
  to { opacity:1; transform:scale(1); }
}

.widget-card[data-widget-type="spark"] {
  background:
    linear-gradient(145deg,color-mix(in srgb,var(--spark-color,#6f568f) 76%,#22172e),color-mix(in srgb,var(--spark-color,#6f568f) 36%,#100c1f));
}
.spark-tools,.spark-edit-row { display:flex;align-items:center;gap:7px; }
.spark-tools { flex:0 0 auto; }
.spark-color-button {
  width:30px;
  height:30px;
  border:1px solid var(--line);
  border-radius:50%;
  background:rgba(255,255,255,.08);
  cursor:pointer;
}
.spark-edit-row .spark-editor {
  min-height:0;
  height:40px;
  resize:none;
}
.spark-palette {
  display:flex;
  gap:6px;
  width:max-content;
  max-width:100%;
  margin-top:9px;
  padding:6px;
  border-radius:999px;
  background:rgba(12,8,24,.58);
}
.spark-palette[hidden] { display:none; }
.spark-swatch {
  width:23px;
  height:23px;
  border:2px solid rgba(255,255,255,.54);
  border-radius:50%;
  padding:0;
  cursor:pointer;
}

.widget-card.calendar-is-compact { min-width:330px; }
.widget-card.calendar-is-compact .calendar-widget { min-height:0; }
.widget-card.calendar-is-compact .calendar-month { height:100%; }

.calculator {
  display:flex;
  flex-direction:column;
  gap:10px;
  height:100%;
  outline:none;
}
.calculator-display {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  min-height:64px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.11);
  border-radius:17px;
  padding:10px 14px;
  background:rgba(4,3,12,.35);
  color:#fff;
  font-size:clamp(1.35rem,3vw,2rem);
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.calculator-keys {
  flex:1 1 auto;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-template-rows:repeat(5,minmax(42px,1fr));
  gap:7px;
}
.calculator-keys button {
  min-width:0;
  border:1px solid rgba(255,255,255,.09);
  border-radius:13px;
  color:#fff;
  background:rgba(255,255,255,.065);
  font-size:1rem;
  cursor:pointer;
}
.calculator-keys button:hover { background:rgba(255,255,255,.12); }
.calculator-keys .is-operator { color:#191025;background:var(--accent-2);font-weight:900; }
.calculator-keys .is-equals { color:#191025;background:linear-gradient(135deg,var(--accent),var(--accent-2));font-weight:900; }
.calculator-keys .is-zero { grid-column:span 2; }

.door-lock {
  position:absolute;
  z-index:4;
  right:12px;
  top:52%;
  width:24px;
  height:34px;
  transform:translateY(-50%);
  border:2px solid #7d5b25;
  border-radius:8px 8px 10px 10px;
  background:linear-gradient(145deg,#e1bf68,#9a722c);
  box-shadow:0 0 0 3px rgba(43,23,10,.35),0 4px 12px rgba(0,0,0,.3);
}
.door-lock::before {
  content:"";
  position:absolute;
  left:4px;
  top:-14px;
  width:12px;
  height:16px;
  border:3px solid #c89e4b;
  border-bottom:0;
  border-radius:10px 10px 0 0;
}
.door-lock i {
  position:absolute;
  left:50%;
  top:50%;
  width:5px;
  height:11px;
  transform:translate(-50%,-42%);
  border-radius:50% 50% 3px 3px;
  background:#39200e;
}
.door-lock.is-ready { box-shadow:0 0 0 4px rgba(255,231,155,.25),0 0 22px #ffe79b; }
.door-lock.is-unlocking { animation:lockTurn .62s ease; }
.magic-key.is-found {
  z-index:20000 !important;
  filter:drop-shadow(0 0 20px #ffe991) brightness(1.2);
}
.room-scene > .magic-key { z-index:20000 !important; }
.magic-key.is-near-lock { transform:scale(1.08) rotate(-20deg); }
.magic-key.is-turning { animation:keyTurn .62s cubic-bezier(.2,.8,.2,1) both !important; }
.magic-key.is-special-camera { animation:keyFloat 1.7s ease-in-out infinite,keySpecialGlow 1.3s ease-in-out infinite alternate; }
@keyframes keyTurn {
  0% { transform:rotate(-18deg) scale(1.08); }
  45% { transform:rotate(76deg) scale(1.12); }
  100% { transform:rotate(92deg) scale(.96); }
}
@keyframes lockTurn { 0%,100%{transform:translateY(-50%) rotate(0)} 55%{transform:translateY(-50%) rotate(9deg)} }
@keyframes keySpecialGlow { from{filter:drop-shadow(0 0 10px #ffe991)} to{filter:drop-shadow(0 0 26px #fff2ac) brightness(1.25)} }
.door-camera-reward {
  position:absolute;
  z-index:22000;
  width:56px;
  height:56px;
  display:grid;
  place-items:center;
  font-size:2.6rem;
  filter:drop-shadow(0 0 20px rgba(255,235,170,.7));
  pointer-events:none;
}

.jump-message {
  position:absolute;
  z-index:8;
  left:50%;
  top:50%;
  width:min(620px,calc(100vw - 40px));
  transform:translate(-50%,-50%) scale(.88);
  color:#fff;
  opacity:0;
  font-family:Georgia,serif;
  font-size:clamp(1.35rem,4vw,2.7rem);
  text-align:center;
  text-shadow:0 4px 30px rgba(0,0,0,.8),0 0 24px var(--accent);
  transition:opacity .25s ease,transform .4s cubic-bezier(.2,.8,.2,1);
}
.jump-message.is-visible { opacity:1;transform:translate(-50%,-50%) scale(1); }

.window-collection-card.is-opening { animation:windowBookOpen .62s cubic-bezier(.2,.8,.2,1) both;transform-origin:center bottom; }
@keyframes windowBookOpen {
  0% { opacity:0;transform:perspective(900px) rotateX(38deg) scale(.72); }
  60% { opacity:1;transform:perspective(900px) rotateX(-4deg) scale(1.025); }
  100% { opacity:1;transform:none; }
}
.shelf-book.mystery-book-trigger::after { content:""; }
.shelf-book.mystery-book-trigger.is-unlocked {
  background:linear-gradient(90deg,#725129,#b88a43);
  box-shadow:inset 4px 0 rgba(255,255,255,.13),0 0 13px rgba(255,214,125,.2);
}
.shelf-book.mystery-book-trigger.is-unlocked::after { content:"📷";font-size:.8rem;color:#fff; }
.shelf-book.mystery-book-trigger.is-locked { filter:none; cursor:default; }
.shelf-book.mystery-book-trigger:disabled { opacity:1; }

.camera-button {
  position:absolute;
  z-index:39;
  right:22px;
  top:72px;
  width:42px;
  height:42px;
  border:1px solid var(--line);
  border-radius:50%;
  color:#fff;
  background:rgba(13,9,28,.76);
  backdrop-filter:blur(12px);
  box-shadow:0 12px 30px rgba(0,0,0,.28);
  cursor:pointer;
}
.camera-button:hover { transform:translateY(-1px);background:rgba(34,23,58,.92); }
.camera-button[hidden] { display:none !important; }
.camera-flash {
  position:fixed;
  inset:0;
  z-index:500;
  pointer-events:none;
  opacity:0;
  background:#fff;
}
.camera-flash.is-active { animation:cameraFlash .48s ease-out both; }
@keyframes cameraFlash { 0%{opacity:0} 12%{opacity:.95} 100%{opacity:0} }
.photo-capture-mode .world-arrow,
.photo-capture-mode .world-map,
.photo-capture-mode .widget-add-button,
.photo-capture-mode .camera-button,
.photo-capture-mode .widget-actions,
.photo-capture-mode .widget-resize-handle,
.photo-capture-mode .note-controls { visibility:hidden !important; }

.photo-album-layer {
  position:fixed;
  inset:0;
  z-index:240;
  display:grid;
  place-items:center;
  padding:18px;
  overflow:hidden;
  pointer-events:none;
  opacity:0;
  background:rgba(4,3,12,.78);
  backdrop-filter:blur(11px);
  transition:opacity .25s ease;
}
.photo-album-layer.is-open { pointer-events:auto;opacity:1; }
.photo-album-book {
  position:relative;
  width:min(900px,calc(100vw - 30px));
  height:min(650px,calc(100vh - 36px));
  transform:perspective(1200px) rotateY(-16deg) scale(.76);
  opacity:0;
  transform-origin:center;
}
.photo-album-layer.is-open .photo-album-book { animation:photoBookOpen .72s cubic-bezier(.2,.8,.2,1) forwards; }
@keyframes photoBookOpen {
  0%{opacity:0;transform:perspective(1200px) rotateY(-38deg) scale(.68)}
  62%{opacity:1;transform:perspective(1200px) rotateY(4deg) scale(1.02)}
  100%{opacity:1;transform:none}
}
.photo-album-cover {
  position:absolute;
  inset:0;
  z-index:2;
  display:grid;
  place-items:center;
  border:12px solid #4a2d19;
  border-radius:25px 42px 42px 25px;
  color:#f6dd9c;
  background:linear-gradient(90deg,#50301d,#82532d 42%,#68401f);
  box-shadow:0 35px 100px rgba(0,0,0,.65),inset 14px 0 rgba(0,0,0,.18);
  pointer-events:none;
  animation:photoCoverAway .65s .12s cubic-bezier(.2,.8,.2,1) forwards;
  transform-origin:left center;
}
.photo-album-cover span { font-family:Georgia,serif;font-size:clamp(1.6rem,4vw,3rem); }
.photo-album-cover small { display:block;margin-top:12px;font-size:2rem; }
@keyframes photoCoverAway { to{transform:perspective(1100px) rotateY(-112deg);opacity:.08} }
.photo-album-pages {
  position:absolute;
  inset:0;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  gap:12px;
  overflow:hidden;
  border:10px solid #d7c8a2;
  border-radius:22px 38px 38px 22px;
  padding:20px 24px 16px;
  color:#372b35;
  background:linear-gradient(90deg,#efe5ca,#fff8e6 49%,#e5d8ba 50%,#fff8e8);
  box-shadow:0 35px 100px rgba(0,0,0,.55),inset 0 0 40px rgba(99,72,37,.12);
}
.photo-album-pages > header { display:flex;align-items:center;justify-content:space-between;gap:14px; }
.photo-album-pages h2 { margin:1px 0 0;font-family:Georgia,serif;font-weight:500; }
.photo-album-pages .eyebrow { color:#7c5e37; }
.photo-take-button,.photo-actions button,.photo-pagination button {
  border:1px solid rgba(72,48,25,.2);
  border-radius:11px;
  padding:8px 11px;
  color:#4c3827;
  background:rgba(114,83,44,.08);
  cursor:pointer;
}
.photo-page {
  position:relative;
  min-height:0;
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  place-items:center;
  overflow:hidden;
  border:1px solid rgba(78,54,28,.16);
  border-radius:17px;
  padding:12px;
  background:rgba(255,255,255,.36);
}
.photo-page img { width:100%;height:100%;min-height:0;object-fit:contain;border-radius:11px;box-shadow:0 15px 34px rgba(64,42,25,.2); }
.photo-empty { place-self:center;color:rgba(55,43,53,.56);font-family:Georgia,serif;text-align:center; }
.photo-meta { width:100%;display:flex;justify-content:space-between;gap:12px;margin-top:9px;color:#5d4b43;font-size:.76rem; }
.photo-meta span { opacity:.7;text-align:right; }
.photo-album-footer { display:flex;align-items:center;justify-content:space-between;gap:12px; }
.photo-actions,.photo-pagination { display:flex;align-items:center;gap:8px; }
.photo-album-close {
  position:absolute;
  z-index:8;
  right:14px;
  top:12px;
  width:36px;
  height:36px;
  border:1px solid rgba(72,48,25,.22);
  border-radius:50%;
  color:#4b3424;
  background:#f5e9cc;
  cursor:pointer;
}

@media (max-width:650px) {
  .photo-album-pages { padding:17px 13px 12px; }
  .photo-album-pages > header { align-items:flex-start; }
  .photo-take-button { padding:7px;font-size:.7rem;white-space:nowrap; }
  .photo-meta { flex-direction:column;gap:3px; }
  .photo-meta span { text-align:left; }
  .photo-album-footer { align-items:flex-start; }
  .camera-button { right:18px;top:66px; }
}

@media (prefers-reduced-motion:reduce) {
  .widget-card.is-minimized,.window-collection-card.is-opening,.photo-album-layer.is-open .photo-album-book,.photo-album-cover,.magic-key.is-turning,.door-lock.is-unlocking { animation:none !important; }
}

/* v4.3.1 · interacciones aisladas, tiras ordenables y rituales más suaves */
.widget-card {
  transition:width .26s cubic-bezier(.2,.8,.2,1),height .26s cubic-bezier(.2,.8,.2,1),border-radius .26s ease,box-shadow .26s ease;
}
.widget-header { cursor:default; }
.widget-card.is-dragging,.widget-card.is-resizing { transition:none; }

.strip-item[data-strip-id] { cursor:grab; touch-action:none; user-select:none; }
.strip-item[data-strip-id]:active { cursor:grabbing; }
.strip-item.is-strip-placeholder { opacity:.22; }
.strip-ghost {
  position:fixed !important;
  z-index:30000;
  margin:0;
  pointer-events:none;
  opacity:.94;
  cursor:grabbing;
  box-shadow:0 14px 34px rgba(0,0,0,.38);
  transform:rotate(-2deg) scale(1.03);
}

.widget-card[data-widget-type="spark"] .widget-body { position:relative; overflow:visible; }
.spark-palette {
  position:absolute;
  z-index:45;
  top:-39px;
  right:43px;
  margin:0;
  padding:6px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  background:rgba(25,17,38,.94);
  box-shadow:0 12px 30px rgba(0,0,0,.34);
  transform-origin:right bottom;
  animation:sparkPaletteIn .18s ease both;
}
.spark-swatch.is-selected { box-shadow:0 0 0 2px #fff,0 0 0 4px rgba(255,255,255,.2); }
@keyframes sparkPaletteIn { from{opacity:0;transform:translateY(5px) scale(.94)} to{opacity:1;transform:none} }

.widget-card.calendar-is-compact { min-width:0; }
.widget-card[data-widget-type="calendar"] .widget-body { min-height:0; }
.calendar-widget { transition:grid-template-columns .24s ease; }

.magic-key {
  transform-style:preserve-3d;
  perspective:900px;
  backface-visibility:visible;
}
.magic-key.is-inserting {
  z-index:30000 !important;
  animation:none !important;
  pointer-events:none;
  will-change:transform;
  filter:drop-shadow(0 0 22px #ffe991) brightness(1.24);
}
.door-lock.is-unlocking { animation:lockTurnV2 .98s cubic-bezier(.2,.8,.2,1) both; }
@keyframes lockTurnV2 {
  0%,42% { transform:translateY(-50%) rotate(0deg); box-shadow:0 0 0 4px rgba(255,231,155,.25),0 0 22px #ffe79b; }
  63% { transform:translateY(-50%) rotate(-5deg); }
  82% { transform:translateY(-50%) rotate(12deg); }
  100% { transform:translateY(-50%) rotate(8deg); box-shadow:0 0 0 3px rgba(255,231,155,.12),0 0 12px #ffe79b; }
}

.rabbit.is-squinting {
  animation:rabbitSquint .68s cubic-bezier(.2,.8,.2,1);
  font-weight:900;
}
@keyframes rabbitSquint {
  0%,100% { transform:translateY(0) scale(1); }
  35% { transform:translateY(-8px) scale(1.08,.94); }
  62% { transform:translateY(-2px) scale(.96,1.06); }
}

.window-collection-card { position:relative; isolation:isolate; }
.window-collection-card.is-opening {
  transform-origin:center center;
  animation:windowCabinetReveal .78s cubic-bezier(.18,.82,.16,1) both;
}
.window-collection-card.is-opening::before {
  content:"";
  position:absolute;
  z-index:20;
  inset:-25%;
  pointer-events:none;
  background:linear-gradient(100deg,transparent 35%,rgba(225,247,255,.34) 49%,transparent 63%);
  transform:translateX(-65%);
  animation:windowLightSweep .82s ease both;
}
@keyframes windowCabinetReveal {
  0% { opacity:0; clip-path:inset(0 49% round 24px); transform:perspective(1000px) translateY(18px) rotateY(-11deg) scale(.9); }
  52% { opacity:1; clip-path:inset(0 10% round 24px); transform:perspective(1000px) translateY(-3px) rotateY(2deg) scale(1.015); }
  100% { opacity:1; clip-path:inset(0 round 24px); transform:none; }
}
@keyframes windowLightSweep { 0%{opacity:0;transform:translateX(-65%)} 25%{opacity:1} 100%{opacity:0;transform:translateX(65%)} }

@media (prefers-reduced-motion:reduce) {
  .widget-card,.calendar-widget { transition:none !important; }
  .spark-palette,.rabbit.is-squinting,.window-collection-card.is-opening,.window-collection-card.is-opening::before,.door-lock.is-unlocking { animation:none !important; }
}
.widget-card.is-minimized { transform-origin:top left; }


/* v4.3.2 · secretos intactos y ventanas irrepetibles */
.widget-card.is-minimized { animation:none !important; }

.magic-window::before { content:"";position:absolute;z-index:6;pointer-events:none; }
.magic-window.window-design-violet { border-radius:124px 124px 20px 20px; }
.magic-window.window-design-violet::before { left:14%;right:14%;top:49%;height:7px;background:var(--window-frame);box-shadow:0 0 0 2px rgba(255,255,255,.07); }
.magic-window.window-design-oak { width:260px;height:178px;border-width:16px 12px 18px;border-radius:18px;box-shadow:0 22px 50px rgba(0,0,0,.4),inset 0 0 0 3px rgba(255,229,190,.12),inset 0 -10px rgba(55,28,14,.22); }
.magic-window.window-design-oak::after { width:7px; }
.magic-window.window-design-oak::before { left:0;right:0;top:50%;height:8px;background:var(--window-frame); }
.magic-window.window-design-moon { width:220px;height:220px;border-radius:50%; }
.magic-window.window-design-moon::after { top:10%;bottom:10%;width:5px; }
.magic-window.window-design-moon::before { left:10%;right:10%;top:50%;height:5px;background:var(--window-frame); }
.magic-window.window-design-garden { width:270px;height:180px;border-radius:70px 18px 70px 18px; }
.magic-window.window-design-garden::after { display:none; }
.magic-window.window-design-garden::before { content:"❧";inset:5px 8px auto auto;color:#b7d9a7;font-size:2rem;text-shadow:-218px 130px #8ebc81; }
.magic-window.window-design-ocean { width:210px;height:210px;border-width:18px;border-radius:50%;box-shadow:0 22px 50px rgba(0,0,0,.4),0 0 0 6px rgba(79,135,151,.36),inset 0 0 0 4px rgba(255,255,255,.17); }
.magic-window.window-design-ocean::after { display:none; }
.magic-window.window-design-ocean::before { inset:8px;border:2px dashed rgba(230,252,255,.3);border-radius:50%; }
.magic-window.window-design-rose { width:245px;height:195px;border-radius:48% 48% 28px 28px; }
.magic-window.window-design-rose::after { width:6px; }
.magic-window.window-design-rose::before { content:"♡";left:50%;top:7px;transform:translateX(-50%);color:#ffd5e7;font-size:1.25rem;text-shadow:0 0 12px rgba(255,205,228,.7); }
.magic-window.window-design-brass { width:250px;height:190px;border-radius:14px;clip-path:polygon(10% 0,90% 0,100% 14%,100% 86%,90% 100%,10% 100%,0 86%,0 14%); }
.magic-window.window-design-brass::after { width:6px; }
.magic-window.window-design-brass::before { left:0;right:0;top:50%;height:6px;background:var(--window-frame); }
.magic-window.window-design-obsidian { width:230px;height:220px;border-radius:115px 115px 10px 10px;clip-path:polygon(50% 0,92% 24%,100% 100%,0 100%,8% 24%); }
.magic-window.window-design-obsidian::after { width:5px;top:22%; }
.magic-window.window-design-obsidian::before { left:16%;right:16%;top:58%;height:5px;background:var(--window-frame); }

.window-design-oak .window-design-preview { border-radius:12px;border-width:12px 9px 13px; }
.window-design-moon .window-design-preview { width:88px;height:88px;margin-inline:auto;border-radius:50%; }
.window-design-garden .window-design-preview { border-radius:40px 10px 40px 10px; }
.window-design-ocean .window-design-preview { width:88px;height:88px;margin-inline:auto;border-radius:50%;border-width:12px; }
.window-design-rose .window-design-preview { border-radius:45% 45% 18px 18px; }
.window-design-brass .window-design-preview { border-radius:8px;clip-path:polygon(10% 0,90% 0,100% 15%,100% 85%,90% 100%,10% 100%,0 85%,0 15%); }
.window-design-obsidian .window-design-preview { border-radius:50px 50px 7px 7px;clip-path:polygon(50% 0,92% 24%,100% 100%,0 100%,8% 24%); }


/* v4.3.3 · ventanas únicas, libro portátil y notas editables */
/* La primera ventana conserva solamente el barrote vertical. */
.magic-window.window-design-violet::before { display:none !important; }

.window-instance-tabs { display:none !important; }
.window-design-grid {
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:stretch;
  min-height:170px;
}
.window-design-option {
  position:relative;
  display:grid;
  place-items:center;
  min-height:150px;
  padding:12px;
  overflow:visible;
}
.window-design-option:disabled { opacity:1;cursor:default; }
.window-design-option strong,.window-design-option small { display:none !important; }
.window-design-preview {
  width:100%;
  height:112px;
  margin:0;
  transition:transform .18s ease,box-shadow .18s ease;
}
.window-design-option.is-available:hover .window-design-preview {
  transform:translateY(-3px) scale(1.025);
  box-shadow:0 16px 28px rgba(0,0,0,.28),inset 0 0 0 3px rgba(255,255,255,.13);
}
.window-use-tag {
  position:absolute;
  z-index:4;
  left:50%;
  top:5px;
  max-width:calc(100% - 16px);
  transform:translateX(-50%);
  padding:5px 9px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:999px;
  background:rgba(18,15,31,.84);
  color:#fff;
  font-size:.67rem;
  line-height:1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  box-shadow:0 6px 18px rgba(0,0,0,.25);
}

.window-book-dock {
  position:absolute;
  z-index:12;
  right:5%;
  bottom:5%;
  width:68px;
  height:66px;
  display:grid;
  place-items:end center;
  border-radius:18px;
  background:rgba(28,21,45,.24);
  box-shadow:0 10px 25px rgba(0,0,0,.18);
}
.window-book-dock::after {
  content:"";
  position:absolute;
  left:7px;
  right:7px;
  bottom:5px;
  height:7px;
  border-radius:7px;
  background:#68435f;
  box-shadow:0 6px 12px rgba(0,0,0,.28);
}
.window-book-dock .window-book-trigger { z-index:1; }
.book-shelf,.window-book-dock { transition:filter .16s ease,transform .16s ease,box-shadow .16s ease; }
.book-shelf.is-receiving-window,.window-book-dock.is-receiving-window {
  transform:scale(1.08);
  filter:drop-shadow(0 0 14px rgba(191,226,255,.75));
}
.magic-window { transition:transform .18s ease,opacity .18s ease,filter .18s ease; }
.magic-window.is-dragging { z-index:80 !important; }
.magic-window.is-over-window-book {
  transform:scale(.28) rotate(-12deg) !important;
  opacity:.76;
  filter:saturate(.72) drop-shadow(0 8px 10px rgba(0,0,0,.35));
}
.magic-window.is-storing-window {
  pointer-events:none;
  animation:storeWindowInBook .27s ease-in forwards;
}
@keyframes storeWindowInBook {
  from { transform:scale(.28) rotate(-12deg);opacity:.76; }
  to { transform:scale(.06) rotate(-32deg);opacity:0; }
}

.floating-note .note-text { cursor:text;outline:none;border-radius:5px;transition:background .15s ease,box-shadow .15s ease; }
.floating-note .note-text:hover { background:rgba(255,255,255,.12); }
.floating-note .note-text.is-editing {
  background:rgba(255,255,255,.22);
  box-shadow:0 0 0 2px rgba(79,54,72,.18);
  cursor:text;
  user-select:text;
  -webkit-user-select:text;
}

@media (max-width:800px) {
  .window-design-grid { grid-template-columns:repeat(2,minmax(0,1fr));min-height:320px; }
  .window-design-option { min-height:142px; }
  .window-design-preview { height:100px; }
  .window-book-dock { right:3%;bottom:4%; }
}
@media (prefers-reduced-motion:reduce) {
  .magic-window.is-storing-window { animation:none !important;opacity:0; }
}

/* v4.3.3 · edición directa de la Chispa */
.spark-text { cursor:text;outline:none;border-radius:7px;transition:background .15s ease,box-shadow .15s ease; }
.spark-text:hover,.spark-text:focus-visible { background:rgba(255,255,255,.08);box-shadow:0 0 0 2px rgba(255,255,255,.08); }


/* v4.3.3 · las notas se despiden volando */
.floating-note.is-flying-away {
  animation:none !important;
  pointer-events:none !important;
  transform:translate3d(var(--note-fly-x,0),var(--note-fly-y,0),0) scale(.06) rotate(calc(var(--note-tilt,-2deg) + 34deg)) !important;
  opacity:0;
  filter:blur(1.5px) saturate(.8);
  transition:transform .76s cubic-bezier(.58,.02,.88,.42),opacity .58s ease .13s,filter .58s ease !important;
  will-change:transform,opacity;
}
@media (prefers-reduced-motion:reduce) {
  .floating-note.is-flying-away {
    transition-duration:.18s !important;
  }
}

/* v4.3.4 · libro de ventanas en la misma posición de todas las salas */
.window-book-dock {
  right:6.5%;
  bottom:calc(4% + 274px);
  width:210px;
  height:55px;
  place-items:end center;
  background:transparent;
  box-shadow:none;
}
.window-book-dock::after { left:0;right:0;bottom:0;height:8px; }
.magic-window.window-design-violet.is-over-window-book { transform:none !important;opacity:1;filter:none; }

/* v4.3.4 · la nota se pliega y se convierte en un pequeño cohete de papel */
.floating-note.is-folding-into-rocket {
  transform:scale(.22) rotate(22deg) !important;
  opacity:0 !important;
  filter:blur(1px) !important;
  transition:transform .24s ease-in,opacity .2s ease,filter .2s ease !important;
  pointer-events:none !important;
}
.note-paper-rocket {
  position:absolute;
  z-index:9999;
  width:50px;
  height:36px;
  pointer-events:none;
  transform-origin:50% 50%;
  filter:drop-shadow(0 7px 7px rgba(23,17,35,.3));
  will-change:transform,opacity;
}
.note-paper-rocket::before {
  content:"";
  position:absolute;
  inset:0;
  clip-path:polygon(0 47%,100% 0,72% 52%,100% 100%);
  background:linear-gradient(145deg,#fff9d8 0 42%,#e9d9a9 43% 70%,#fff3c5 71%);
  border-radius:4px;
}
.note-paper-rocket::after {
  content:"";
  position:absolute;
  right:83%;
  top:50%;
  width:68px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,rgba(255,244,181,.9));
  box-shadow:-8px -7px 0 -1px rgba(255,255,255,.58),-15px 8px 0 -1px rgba(255,227,154,.48);
}
.note-paper-rocket i,.note-paper-rocket b {
  position:absolute;
  z-index:1;
  width:5px;height:5px;border-radius:50%;
  background:#fff6b0;
  box-shadow:0 0 10px #fff1a8;
  animation:rocketSpark .45s ease-in-out infinite alternate;
}
.note-paper-rocket i { left:-8px;top:8px; }
.note-paper-rocket b { left:-17px;bottom:5px;animation-delay:.18s; }
@keyframes rocketSpark { to { transform:scale(.25);opacity:.2; } }
@media (max-width:720px) {
  .window-book-dock { right:6.5%;bottom:calc(4% + 274px);width:210px;height:55px; }
}

/* v4.3.5 · accesos directos con selector de emoji más claro */
.shortcut-icon {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  width:52px;
  height:52px;
  border-radius:17px;
  font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;
  font-size:1.52rem;
  line-height:1;
  box-shadow:0 12px 25px rgba(0,0,0,.24),inset 0 0 0 1px rgba(255,255,255,.16),inset 0 -9px 15px rgba(0,0,0,.11);
}
.shortcut-icon::after {
  content:"";
  position:absolute;
  z-index:-1;
  inset:1px 1px 48% 1px;
  border-radius:15px 15px 45% 45%;
  background:linear-gradient(180deg,rgba(255,255,255,.3),rgba(255,255,255,0));
  pointer-events:none;
}
.shortcut-link:hover .shortcut-icon,.shortcut-add:hover .shortcut-icon { transform:translateY(-2px) scale(1.035); }
.shortcut-link .shortcut-icon,.shortcut-add .shortcut-icon { transition:transform .16s ease,box-shadow .16s ease; }
.shortcut-icon-field { gap:9px !important; }
.shortcut-icon-editor {
  display:grid;
  grid-template-columns:58px minmax(0,1fr);
  align-items:center;
  gap:11px;
}
.shortcut-icon-preview { width:54px;height:54px;font-size:1.65rem; }
.shortcut-icon-editor input { min-width:0; }
.shortcut-emoji-palette {
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:7px;
  margin-top:-4px;
}
.shortcut-emoji-palette button {
  display:grid;
  place-items:center;
  min-width:0;
  height:38px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:11px;
  color:#fff;
  background:rgba(255,255,255,.055);
  font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;
  font-size:1.18rem;
  cursor:pointer;
}
.shortcut-emoji-palette button:hover,.shortcut-emoji-palette button.is-selected {
  background:rgba(255,255,255,.13);
  box-shadow:0 0 0 2px rgba(255,255,255,.09);
}

/* v4.3.5 · la Chispa ocupa solamente la altura de su contenido */
.widget-card[data-widget-type="spark"].is-auto-height {
  min-height:0 !important;
  height:auto !important;
}
.widget-card[data-widget-type="spark"].is-auto-height .widget-header { padding-bottom:5px; }
.widget-card[data-widget-type="spark"].is-auto-height .widget-body {
  flex:0 0 auto;
  min-height:0;
  padding-top:2px;
  padding-bottom:11px;
  overflow:visible;
}
.widget-card[data-widget-type="spark"].is-auto-height .spark-copy { align-items:center;min-height:30px; }
.widget-card[data-widget-type="spark"].is-auto-height .spark-text { line-height:1.3; }

/* v4.3.5 · puerta de madera con hoja, canto y cerradura en profundidad */
.magic-door-frame {
  perspective:1150px;
  perspective-origin:24% 52%;
  transform-style:preserve-3d;
  isolation:isolate;
  background:linear-gradient(90deg,#100a07,#2b160d 16%,#160d08 84%,#090605);
  box-shadow:0 24px 58px rgba(0,0,0,.5),inset 0 0 0 3px rgba(222,173,104,.12),inset 16px 0 24px rgba(0,0,0,.36),inset -13px 0 21px rgba(0,0,0,.3);
}
.magic-door-frame::before {
  content:"";
  position:absolute;
  z-index:5;
  inset:0;
  border-radius:74px 74px 0 0;
  box-shadow:inset 8px 0 8px rgba(255,210,137,.08),inset -14px 0 17px rgba(0,0,0,.38),inset 0 -12px 17px rgba(0,0,0,.3);
  pointer-events:none;
}
.magic-door-frame::after {
  content:"";
  position:absolute;
  z-index:1;
  left:4%;right:4%;bottom:0;
  height:18px;
  background:linear-gradient(180deg,rgba(39,19,9,.12),rgba(2,1,1,.8));
  box-shadow:0 -5px 13px rgba(0,0,0,.35);
  pointer-events:none;
}
.door-portal { z-index:0;transition:opacity .55s ease; }
.magic-door {
  z-index:2;
  transform-style:preserve-3d;
  backface-visibility:hidden;
  will-change:transform;
  transition:transform .78s cubic-bezier(.45,.02,.28,1);
  box-shadow:inset -20px 0 28px rgba(0,0,0,.38),inset 10px 0 17px rgba(255,205,130,.08),8px 0 15px rgba(0,0,0,.28);
}
.magic-door::after { content:none !important; }
.magic-door .door-panel { transform:translateZ(4px); }
.door-back {
  position:absolute;
  inset:0;
  border-radius:inherit;
  transform:translateZ(-13px) rotateY(180deg);
  backface-visibility:hidden;
  background:repeating-linear-gradient(90deg,#3a2115 0 27px,#48291a 27px 31px,#2d190f 31px 57px);
  box-shadow:inset 18px 0 30px rgba(0,0,0,.44);
  pointer-events:none;
}
.door-edge {
  position:absolute;
  top:1px;
  right:-13px;
  bottom:1px;
  width:14px;
  transform-origin:left center;
  transform:rotateY(90deg);
  background:linear-gradient(90deg,#2a170e,#8a5531 35%,#3a2013 100%);
  box-shadow:inset 2px 0 2px rgba(255,211,141,.13),inset -4px 0 5px rgba(0,0,0,.45);
  pointer-events:none;
}
.magic-door.is-open {
  animation:doorOpenWithDepth 1.12s cubic-bezier(.18,.78,.16,1) both;
}
.magic-door-frame.is-opening { animation:doorFrameWake 1.1s ease both; }
@keyframes doorOpenWithDepth {
  0% { transform:translateZ(0) rotateY(0deg); }
  14% { transform:translateZ(18px) rotateY(-5deg); }
  38% { transform:translateZ(12px) rotateY(-31deg); }
  72% { transform:translateZ(4px) rotateY(-68deg); }
  100% { transform:translateZ(0) rotateY(-84deg); }
}
@keyframes doorFrameWake {
  0%,100% { filter:brightness(1); }
  42% { filter:brightness(1.13); }
}
.door-lock {
  transform:translateY(-50%) translateZ(9px);
  transform-style:preserve-3d;
  backface-visibility:hidden;
  border-color:#6e4b19;
  background:linear-gradient(135deg,#f0d281 0%,#c2943f 44%,#74501b 100%);
  box-shadow:0 0 0 3px rgba(43,23,10,.38),5px 7px 12px rgba(0,0,0,.36),inset 2px 2px 3px rgba(255,245,191,.55),inset -4px -5px 6px rgba(76,45,8,.3);
}
.door-lock::after {
  content:"";
  position:absolute;
  z-index:-1;
  top:2px;right:-5px;bottom:2px;
  width:6px;
  border-radius:0 5px 6px 0;
  transform:rotateY(58deg);
  transform-origin:left center;
  background:linear-gradient(90deg,#7b541c,#3d260d);
}
.door-lock::before { filter:drop-shadow(3px 3px 2px rgba(0,0,0,.28)); }
.door-lock i { box-shadow:inset 1px 1px 1px rgba(255,255,255,.08); }
.door-lock.is-ready { transform:translateY(-50%) translateZ(10px); }
.door-lock.is-unlocking { animation:lockTurnDepth .98s cubic-bezier(.2,.8,.2,1) both; }
@keyframes lockTurnDepth {
  0%,42% { transform:translateY(-50%) translateZ(9px) rotateZ(0deg); }
  63% { transform:translateY(-50%) translateZ(11px) rotateZ(-5deg); }
  82% { transform:translateY(-50%) translateZ(11px) rotateZ(12deg); }
  100% { transform:translateY(-50%) translateZ(9px) rotateZ(8deg); }
}
@media (prefers-reduced-motion:reduce) {
  .magic-door.is-open { animation:none !important;transform:perspective(900px) rotateY(-84deg); }
  .magic-door-frame.is-opening,.door-lock.is-unlocking { animation:none !important; }
}

/* v4.3.6 · sala y paisaje vuelven a ser capas independientes */
.room-landscape { display:none !important; }
.room-wall { isolation:isolate; }
.theme-room .room-wall {
  background:
    radial-gradient(circle at 50% 17%,rgba(255,255,255,.055),transparent 35%),
    linear-gradient(90deg,transparent 0 8%,rgba(255,255,255,.025) 8% 8.2%,transparent 8.2% 91.8%,rgba(255,255,255,.025) 91.8% 92%,transparent 92%),
    linear-gradient(180deg,#3b2853 0 59%,#2b1d3e 59% 62%,#1b1329 62% 100%) !important;
}
.theme-room .room-wall::before {
  content:"";
  position:absolute;
  left:0;right:0;top:58.5%;height:7px;
  background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(0,0,0,.2));
  box-shadow:0 4px 12px rgba(0,0,0,.2);
}
.theme-room .room-wall::after {
  content:"";
  position:absolute;
  inset:62% 0 0;
  opacity:.3;
  background:repeating-linear-gradient(90deg,transparent 0 92px,rgba(255,255,255,.055) 92px 94px),linear-gradient(180deg,transparent,rgba(0,0,0,.2));
}

/* El cielo y el paisaje pertenecen a la ventana, no a la pared de la sala. */
.live-landscape-room,.live-landscape-themed { position:absolute;inset:0; }
.live-landscape-themed { display:block;overflow:hidden; }
.live-landscape-themed i { position:absolute;display:block; }
.live-sky[data-landscape-theme="room"] .live-landscape-themed { display:none; }
.live-sky:not([data-landscape-theme="room"]) .live-landscape-room { display:none; }

/* Espacio: planetas y órbitas detrás del cristal. */
.live-sky[data-landscape-theme="space"] .live-landscape-themed::before {
  content:"";position:absolute;right:8%;top:18%;width:21%;aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle at 32% 28%,#dce8ff 0 4%,#8b8de0 18%,#3a3d88 55%,#181d4d 72%);
  box-shadow:0 0 55px rgba(138,149,255,.42);
}
.live-sky[data-landscape-theme="space"] .live-landscape-themed::after {
  content:"";position:absolute;left:7%;bottom:8%;width:34%;height:20%;border:3px solid rgba(150,217,255,.35);border-radius:50%;transform:rotate(-13deg);
}
.live-sky[data-landscape-theme="space"] .live-landscape-themed i { width:5px;height:5px;border-radius:50%;background:#fff;box-shadow:0 0 14px #fff; }
.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(1){left:13%;top:18%}.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(2){left:28%;top:37%;width:3px;height:3px}.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(3){left:48%;top:16%}.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(4){left:66%;top:42%;width:3px;height:3px}.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(5){left:83%;top:12%}.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(6){left:38%;top:67%;width:2px;height:2px}.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(7){left:74%;top:72%}.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(8){left:18%;top:76%;width:2px;height:2px}
.live-sky[data-landscape-theme="space"] .live-clouds,.live-sky[data-landscape-theme="space"] .live-birds { display:none; }

/* Castillo: colinas y torres lejanas. */
.live-sky[data-landscape-theme="castle"] .live-landscape-themed::before {
  content:"";position:absolute;left:-4%;right:-4%;bottom:-1%;height:45%;background:linear-gradient(180deg,#3f4057,#171927);clip-path:polygon(0 55%,11% 38%,20% 50%,31% 24%,42% 48%,54% 31%,66% 53%,78% 29%,89% 46%,100% 35%,100% 100%,0 100%);
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed::after {
  content:"";position:absolute;left:55%;bottom:23%;width:23%;height:29%;background:#181826;clip-path:polygon(0 100%,0 38%,13% 38%,13% 13%,25% 32%,39% 32%,39% 0,51% 20%,64% 20%,64% 37%,78% 37%,78% 14%,90% 34%,100% 34%,100% 100%);box-shadow:0 12px 22px rgba(0,0,0,.35);
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i { bottom:24%;width:2px;height:8px;background:#ffd895;box-shadow:0 0 9px #ffd895; }
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(1){left:58%}.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(2){left:62%}.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(3){left:69%}.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(4){left:74%}

/* Metro: túnel y vías en perspectiva. */
.live-sky[data-landscape-theme="metro"] .live-landscape-themed { background:linear-gradient(180deg,rgba(15,21,29,.18),rgba(6,9,13,.78)); }
.live-sky[data-landscape-theme="metro"] .live-landscape-themed::before {
  content:"";position:absolute;left:14%;right:14%;top:10%;bottom:-12%;border:13px solid #28343d;border-bottom:0;border-radius:52% 52% 0 0;box-shadow:inset 0 0 0 4px rgba(255,255,255,.055),0 0 35px rgba(0,0,0,.5);
}
.live-sky[data-landscape-theme="metro"] .live-landscape-themed::after {
  content:"";position:absolute;left:18%;right:18%;bottom:0;height:48%;background:linear-gradient(72deg,transparent 48%,#c9a858 49% 51%,transparent 52%),linear-gradient(108deg,transparent 48%,#c9a858 49% 51%,transparent 52%),repeating-linear-gradient(180deg,transparent 0 18px,rgba(255,255,255,.1) 18px 21px);clip-path:polygon(44% 0,56% 0,100% 100%,0 100%);
}
.live-sky[data-landscape-theme="metro"] .live-landscape-themed i:nth-child(1){left:50%;top:34%;width:7%;height:5%;transform:translateX(-50%);background:#f5dd9b;box-shadow:0 0 35px #e8c87b;border-radius:4px}.live-sky[data-landscape-theme="metro"] .live-clouds,.live-sky[data-landscape-theme="metro"] .live-birds { display:none; }

/* Ciudad: edificios con ventanas encendidas. */
.live-sky[data-landscape-theme="city"] .live-landscape-themed::before { content:"";position:absolute;inset:auto 0 0;height:46%;background:linear-gradient(90deg,#11182b 0 12%,transparent 12% 15%,#19213a 15% 31%,transparent 31% 35%,#10172b 35% 51%,transparent 51% 55%,#1b2239 55% 72%,transparent 72% 76%,#11182a 76% 100%); }
.live-sky[data-landscape-theme="city"] .live-landscape-themed::after { content:"";position:absolute;inset:auto 0 0;height:43%;opacity:.72;background-image:repeating-linear-gradient(90deg,transparent 0 22px,#ffd991 22px 25px,transparent 25px 40px),repeating-linear-gradient(180deg,transparent 0 18px,#ffd991 18px 21px,transparent 21px 34px);mask-image:linear-gradient(#000,transparent 94%); }

/* Lectura: libros convertidos en montañas y páginas. */
.live-sky[data-landscape-theme="reading"] .live-landscape-themed::before { content:"";position:absolute;left:7%;right:7%;bottom:5%;height:39%;background:linear-gradient(90deg,#70463f 0 18%,#ac7657 18% 34%,#4d596d 34% 51%,#8d5b49 51% 69%,#c39a68 69% 84%,#535b77 84%);clip-path:polygon(0 24%,16% 12%,31% 30%,49% 4%,65% 24%,83% 11%,100% 28%,100% 100%,0 100%);box-shadow:0 20px 40px rgba(0,0,0,.32); }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed::after { content:"";position:absolute;left:18%;right:18%;bottom:2%;height:18%;border-radius:50% 50% 0 0;background:repeating-linear-gradient(180deg,#f4dfb7 0 4px,#ceb78f 4px 6px);transform:perspective(300px) rotateX(62deg); }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i { width:22px;height:30px;background:#f8e5bb;opacity:.7;transform:rotate(-14deg); }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(1){left:18%;top:34%}.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(2){left:72%;top:28%;transform:rotate(17deg)}.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(3){left:48%;top:19%;transform:rotate(6deg)}

/* Naves: horizonte de planeta y nave en vuelo. */
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed::before { content:"";position:absolute;left:-8%;right:-8%;bottom:-28%;height:62%;border-radius:50% 50% 0 0;background:radial-gradient(ellipse at 50% 0,#356f7b,#173a48 45%,#0b202b 70%);box-shadow:0 -12px 44px rgba(111,228,244,.2); }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed::after { content:"";position:absolute;right:15%;top:27%;width:25%;height:12%;border-radius:70% 20% 34% 50%;background:linear-gradient(180deg,#b9d4dc,#3c6d7d);transform:rotate(-8deg);box-shadow:-36px 13px 0 -11px #87efff,0 8px 24px rgba(0,0,0,.28); }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i { width:4px;height:4px;border-radius:50%;background:#fff;box-shadow:0 0 10px #fff; }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(1){left:13%;top:18%}.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(2){left:36%;top:29%}.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(3){left:67%;top:14%}.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(4){left:86%;top:38%}.live-sky[data-landscape-theme="spaceships"] .live-clouds,.live-sky[data-landscape-theme="spaceships"] .live-birds { display:none; }

/* Discoteca: ciudad de neón. */
.live-sky[data-landscape-theme="disco"] .live-landscape-themed::before { content:"";position:absolute;left:0;right:0;bottom:0;height:43%;background:linear-gradient(90deg,#14091d 0 13%,transparent 13% 16%,#210b2d 16% 31%,transparent 31% 35%,#12071b 35% 50%,transparent 50% 54%,#250c31 54% 72%,transparent 72% 76%,#15091e 76%);box-shadow:0 -3px 25px rgba(255,81,221,.23); }
.live-sky[data-landscape-theme="disco"] .live-landscape-themed::after { content:"";position:absolute;left:50%;top:8%;width:80px;height:80px;border-radius:50%;transform:translateX(-50%);background:conic-gradient(#fff,#71f1ff,#ff7ad9,#ffe96f,#fff);box-shadow:0 0 42px rgba(255,255,255,.7); }
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i { left:50%;top:17%;width:3px;height:70%;transform-origin:top;background:linear-gradient(rgba(255,255,255,.5),transparent 70%); }
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(1){transform:rotate(24deg)}.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(2){transform:rotate(-24deg)}.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(3){transform:rotate(50deg)}.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(4){transform:rotate(-50deg)}.live-sky[data-landscape-theme="disco"] .live-clouds,.live-sky[data-landscape-theme="disco"] .live-birds { display:none; }

/* Música: colinas suaves y ondas de sonido. */
.live-sky[data-landscape-theme="music"] .live-landscape-themed::before { content:"";position:absolute;left:-5%;right:-5%;bottom:-2%;height:42%;background:linear-gradient(180deg,#6d5475,#30273f);clip-path:polygon(0 54%,12% 32%,24% 49%,38% 25%,52% 51%,68% 31%,82% 50%,100% 27%,100% 100%,0 100%); }
.live-sky[data-landscape-theme="music"] .live-landscape-themed::after { content:"";position:absolute;left:12%;right:12%;top:26%;height:26%;border-top:3px solid rgba(255,224,138,.62);border-radius:50%;box-shadow:0 12px 0 -9px rgba(126,229,255,.8),0 25px 0 -20px rgba(255,172,223,.75);transform:rotate(-4deg); }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i { color:#ffe097;font:700 28px serif;text-shadow:0 0 15px rgba(255,224,151,.65); }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(1){left:18%;top:20%}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(1)::before{content:"♪"}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(2){left:73%;top:28%}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(2)::before{content:"♫"}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(3){left:48%;top:14%}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(3)::before{content:"♩"}

/* Mundo interior: montañas, lago y ondas de calma. */
.live-sky[data-landscape-theme="inner"] .live-landscape-themed::before { content:"";position:absolute;left:-4%;right:-4%;bottom:22%;height:38%;background:linear-gradient(180deg,#557f74,#284f4d);clip-path:polygon(0 70%,15% 38%,30% 60%,47% 22%,63% 56%,78% 33%,100% 65%,100% 100%,0 100%); }
.live-sky[data-landscape-theme="inner"] .live-landscape-themed::after { content:"";position:absolute;left:0;right:0;bottom:0;height:29%;background:linear-gradient(180deg,rgba(126,205,194,.72),#244d4d);box-shadow:inset 0 8px 24px rgba(255,255,255,.1); }
.live-sky[data-landscape-theme="inner"] .live-landscape-themed i { left:50%;bottom:10%;border:1px solid rgba(224,255,247,.42);border-radius:50%;transform:translateX(-50%); }
.live-sky[data-landscape-theme="inner"] .live-landscape-themed i:nth-child(1){width:16%;height:8%}.live-sky[data-landscape-theme="inner"] .live-landscape-themed i:nth-child(2){width:31%;height:14%}.live-sky[data-landscape-theme="inner"] .live-landscape-themed i:nth-child(3){width:48%;height:20%}

/* La nota tarda un poco más en plegarse antes de iniciar el vuelo. */
.floating-note.is-folding-into-rocket {
  transition:transform .42s cubic-bezier(.35,.02,.72,.42),opacity .38s ease,filter .38s ease !important;
}


/* v4.3.7 · la nota se pliega en un remolino de origami */
.floating-note.is-folding-into-origami {
  transform:scale(.28) rotate(38deg) !important;
  opacity:0 !important;
  filter:blur(.8px) saturate(1.12) !important;
  transition:transform .36s cubic-bezier(.55,.02,.82,.35),opacity .3s ease,filter .3s ease !important;
  pointer-events:none !important;
}
.note-origami-swirl {
  position:absolute;
  z-index:9999;
  width:46px;
  height:46px;
  border-radius:50%;
  pointer-events:none;
  transform-origin:50% 50%;
  filter:drop-shadow(0 7px 8px rgba(23,17,35,.3));
  will-change:transform,opacity;
}
.note-origami-swirl::before {
  content:"";
  position:absolute;
  inset:2px;
  border-radius:50%;
  clip-path:polygon(50% 50%,50% 0,72% 24%,100% 22%,78% 50%,100% 72%,72% 76%,50% 100%,48% 73%,0 78%,24% 50%,0 26%,28% 24%);
  background:conic-gradient(from 10deg,#fff8d7 0 23%,#e7d3a4 23% 48%,#fff2c3 48% 73%,#d9c08b 73% 100%);
  box-shadow:inset 0 0 0 1px rgba(118,86,48,.18);
}
.note-origami-swirl::after {
  content:"";
  position:absolute;
  left:50%;top:50%;
  width:9px;height:9px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:#fff6ae;
  box-shadow:0 0 12px #fff1a3,0 0 24px rgba(255,225,132,.58);
}
.note-origami-swirl i,.note-origami-swirl b,.note-origami-swirl em {
  position:absolute;
  width:5px;height:5px;
  border-radius:50%;
  background:#fff7b8;
  box-shadow:0 0 10px #ffef9c;
  animation:origamiSpark .58s ease-in-out infinite alternate;
}
.note-origami-swirl i { left:-8px;top:9px; }
.note-origami-swirl b { right:-9px;bottom:8px;animation-delay:.16s; }
.note-origami-swirl em { left:4px;bottom:-8px;animation-delay:.31s; }
@keyframes origamiSpark { to { transform:scale(.22);opacity:.18; } }
@media (prefers-reduced-motion:reduce) {
  .floating-note.is-folding-into-origami { transition-duration:.12s !important; }
}


/* v4.3.8 · miniaturas simples, puerta fluida e icono de lienzo más claro */
.appearance-preview .appearance-mini-window,
.appearance-preview .appearance-mini-door { display:none !important; }

.magic-door.is-open {
  animation:doorOpenFluid 1.22s cubic-bezier(.22,.72,.18,1) both;
}
@keyframes doorOpenFluid {
  0% { transform:translateZ(0) rotateY(0deg); }
  100% { transform:translateZ(2px) rotateY(-84deg); }
}
@media (prefers-reduced-motion:reduce) {
  .magic-door.is-open { animation:none !important;transform:perspective(900px) rotateY(-84deg); }
}

/* v4.4.0 · miniaturas temáticas y paisajes expandidos */
.appearance-mini-scene {
  position:absolute;
  z-index:2;
  inset:0;
  overflow:hidden;
  pointer-events:none;
}
.appearance-mini-scene::before,
.appearance-mini-scene::after,
.appearance-mini-scene i,
.appearance-mini-scene i::before,
.appearance-mini-scene i::after { content:"";position:absolute;display:block;box-sizing:border-box; }
.appearance-mini-scene::before {
  left:0;right:0;bottom:0;height:32%;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(4,3,10,.28)),repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0 1px,transparent 1px 22px);
  border-top:2px solid rgba(255,255,255,.075);
}
.appearance-mini-scene i { z-index:2; }

/* Habitación: sofá, lámpara y cuadros. */
.appearance-option[data-preview-theme="room"] .appearance-mini-scene::after { left:31%;bottom:20%;width:43%;height:24%;border-radius:11px 11px 5px 5px;background:linear-gradient(180deg,#876aa0,#503c69);box-shadow:inset 0 -7px rgba(24,15,38,.2),0 7px 12px rgba(0,0,0,.22); }
.appearance-option[data-preview-theme="room"] .appearance-mini-scene i:nth-child(1) { left:14%;bottom:22%;width:5px;height:30%;background:#c9a174;border-radius:4px; }
.appearance-option[data-preview-theme="room"] .appearance-mini-scene i:nth-child(1)::before { left:-11px;top:-6px;width:27px;height:17px;border-radius:50% 50% 35% 35%;background:#f1d19b;box-shadow:0 0 13px rgba(255,220,157,.42); }
.appearance-option[data-preview-theme="room"] .appearance-mini-scene i:nth-child(2),.appearance-option[data-preview-theme="room"] .appearance-mini-scene i:nth-child(3) { top:16%;width:17%;height:22%;border:3px solid #76516f;background:linear-gradient(145deg,#dcb9e7,#6d5b83);box-shadow:0 4px 8px rgba(0,0,0,.2); }
.appearance-option[data-preview-theme="room"] .appearance-mini-scene i:nth-child(2){left:42%}.appearance-option[data-preview-theme="room"] .appearance-mini-scene i:nth-child(3){left:62%;height:16%}

/* Espacio: paneles, consola y un orbe suspendido. */
.appearance-option[data-preview-theme="space"] .appearance-mini-scene { background:radial-gradient(circle at 75% 20%,rgba(116,135,255,.23),transparent 26%),radial-gradient(circle at 22% 24%,#fff 0 1px,transparent 2px),radial-gradient(circle at 58% 14%,#fff 0 1px,transparent 2px); }
.appearance-option[data-preview-theme="space"] .appearance-mini-scene::before { background:linear-gradient(180deg,#121a3a,#080d22),repeating-linear-gradient(90deg,rgba(100,216,255,.16) 0 1px,transparent 1px 27px);border-color:#314b72; }
.appearance-option[data-preview-theme="space"] .appearance-mini-scene::after { left:23%;right:15%;bottom:17%;height:22%;clip-path:polygon(9% 0,91% 0,100% 100%,0 100%);background:linear-gradient(180deg,#526b91,#1a2943);box-shadow:inset 0 4px #75d9ed,0 8px 15px rgba(0,0,0,.35); }
.appearance-option[data-preview-theme="space"] .appearance-mini-scene i:nth-child(1) { right:20%;top:15%;width:24px;height:24px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#dfe9ff,#6d75d6 48%,#30356f);box-shadow:0 0 17px rgba(120,137,255,.6); }
.appearance-option[data-preview-theme="space"] .appearance-mini-scene i:nth-child(2),.appearance-option[data-preview-theme="space"] .appearance-mini-scene i:nth-child(3) { bottom:24%;width:8px;height:5px;border-radius:2px;background:#8ff7ee;box-shadow:0 0 8px #8ff7ee; }
.appearance-option[data-preview-theme="space"] .appearance-mini-scene i:nth-child(2){left:38%}.appearance-option[data-preview-theme="space"] .appearance-mini-scene i:nth-child(3){left:54%;background:#ffcd7d;box-shadow:0 0 8px #ffcd7d}

/* Castillo: piedra, tapiz y candelabros. */
.appearance-option[data-preview-theme="castle"] .appearance-mini-scene { background:repeating-linear-gradient(0deg,transparent 0 21px,rgba(255,255,255,.045) 21px 22px),repeating-linear-gradient(90deg,transparent 0 37px,rgba(0,0,0,.09) 37px 39px); }
.appearance-option[data-preview-theme="castle"] .appearance-mini-scene::after { left:38%;top:12%;width:29%;height:42%;clip-path:polygon(12% 0,88% 0,100% 100%,0 100%);background:linear-gradient(180deg,#a67e6a,#59394d);box-shadow:0 6px 12px rgba(0,0,0,.28); }
.appearance-option[data-preview-theme="castle"] .appearance-mini-scene i:nth-child(1),.appearance-option[data-preview-theme="castle"] .appearance-mini-scene i:nth-child(2) { top:23%;width:4px;height:27%;background:#c29363;box-shadow:0 0 8px rgba(255,191,108,.45); }
.appearance-option[data-preview-theme="castle"] .appearance-mini-scene i:nth-child(1){left:21%}.appearance-option[data-preview-theme="castle"] .appearance-mini-scene i:nth-child(2){right:18%}
.appearance-option[data-preview-theme="castle"] .appearance-mini-scene i:nth-child(1)::before,.appearance-option[data-preview-theme="castle"] .appearance-mini-scene i:nth-child(2)::before { left:-4px;top:-6px;width:12px;height:12px;border-radius:50% 50% 45% 45%;background:#ffd68e;box-shadow:0 0 13px #ffca72; }
.appearance-option[data-preview-theme="castle"] .appearance-mini-scene i:nth-child(3) { left:44%;bottom:18%;width:20%;height:10%;background:#35263d;border-radius:3px;box-shadow:0 4px 7px rgba(0,0,0,.28); }

/* Metro: azulejos, franja de estación y banco. */
.appearance-option[data-preview-theme="metro"] .appearance-mini-scene { background:repeating-linear-gradient(0deg,transparent 0 17px,rgba(255,255,255,.06) 17px 18px),repeating-linear-gradient(90deg,transparent 0 25px,rgba(0,0,0,.13) 25px 26px); }
.appearance-option[data-preview-theme="metro"] .appearance-mini-scene::after { left:15%;right:15%;top:17%;height:18%;border-radius:4px;background:#1d2834;box-shadow:inset 0 0 0 2px #607581,0 4px 8px rgba(0,0,0,.3); }
.appearance-option[data-preview-theme="metro"] .appearance-mini-scene i:nth-child(1) { left:17%;right:14%;top:40%;height:7px;background:linear-gradient(90deg,#d6af57,#edda99);box-shadow:0 2px rgba(0,0,0,.18); }
.appearance-option[data-preview-theme="metro"] .appearance-mini-scene i:nth-child(2) { left:31%;bottom:20%;width:41%;height:7px;background:#67747d;border-radius:4px;box-shadow:0 8px 0 -2px #26323a; }

/* Ciudad: interior contemporáneo con paneles y luces. */
.appearance-option[data-preview-theme="city"] .appearance-mini-scene { background:linear-gradient(90deg,transparent 0 17%,rgba(255,255,255,.06) 17% 18%,transparent 18% 52%,rgba(255,255,255,.06) 52% 53%,transparent 53%); }
.appearance-option[data-preview-theme="city"] .appearance-mini-scene::after { right:13%;bottom:18%;width:31%;height:31%;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,#496079,#26344e);box-shadow:inset 0 6px rgba(145,205,255,.15),0 7px 11px rgba(0,0,0,.25); }
.appearance-option[data-preview-theme="city"] .appearance-mini-scene i:nth-child(1) { left:18%;bottom:20%;width:8px;height:38%;background:#4f475f;border-radius:4px; }
.appearance-option[data-preview-theme="city"] .appearance-mini-scene i:nth-child(1)::before { left:-13px;top:-6px;width:34px;height:16px;border-radius:50%;background:#ffcb9b;box-shadow:0 0 15px rgba(255,176,135,.36); }
.appearance-option[data-preview-theme="city"] .appearance-mini-scene i:nth-child(2),.appearance-option[data-preview-theme="city"] .appearance-mini-scene i:nth-child(3) { top:18%;width:7px;height:7px;border-radius:50%;background:#8bd6ff;box-shadow:0 0 8px #8bd6ff; }
.appearance-option[data-preview-theme="city"] .appearance-mini-scene i:nth-child(2){left:48%}.appearance-option[data-preview-theme="city"] .appearance-mini-scene i:nth-child(3){left:61%;background:#ffb58c;box-shadow:0 0 8px #ffb58c}

/* Lectura: sillón y pilas de libros, sin estantería. */
.appearance-option[data-preview-theme="reading"] .appearance-mini-scene::after { left:42%;bottom:17%;width:34%;height:31%;border-radius:16px 16px 6px 6px;background:linear-gradient(180deg,#8e5b54,#533539);box-shadow:inset 0 -7px rgba(32,17,21,.22),0 7px 12px rgba(0,0,0,.24); }
.appearance-option[data-preview-theme="reading"] .appearance-mini-scene i:nth-child(1),.appearance-option[data-preview-theme="reading"] .appearance-mini-scene i:nth-child(2),.appearance-option[data-preview-theme="reading"] .appearance-mini-scene i:nth-child(3) { left:15%;width:24%;height:7px;border-radius:2px;box-shadow:0 2px 4px rgba(0,0,0,.24); }
.appearance-option[data-preview-theme="reading"] .appearance-mini-scene i:nth-child(1){bottom:20%;background:#c79a68}.appearance-option[data-preview-theme="reading"] .appearance-mini-scene i:nth-child(2){bottom:27%;background:#65718c;transform:rotate(3deg)}.appearance-option[data-preview-theme="reading"] .appearance-mini-scene i:nth-child(3){bottom:34%;background:#9d6152;transform:rotate(-2deg)}
.appearance-option[data-preview-theme="reading"] .appearance-mini-scene i:nth-child(4) { right:14%;top:15%;width:18%;height:19%;background:#e7c48c;clip-path:polygon(0 0,48% 13%,100% 0,100% 88%,52% 100%,0 88%);opacity:.8; }

/* Hangar: paneles técnicos, consola y señalización. */
.appearance-option[data-preview-theme="spaceships"] .appearance-mini-scene { background:repeating-linear-gradient(90deg,transparent 0 29px,rgba(115,221,238,.06) 29px 30px),linear-gradient(180deg,rgba(7,17,26,.05),rgba(4,11,17,.24)); }
.appearance-option[data-preview-theme="spaceships"] .appearance-mini-scene::after { left:21%;right:18%;bottom:17%;height:23%;clip-path:polygon(8% 0,92% 0,100% 100%,0 100%);background:linear-gradient(180deg,#476878,#172b36);box-shadow:inset 0 4px #65d7e7,0 8px 13px rgba(0,0,0,.34); }
.appearance-option[data-preview-theme="spaceships"] .appearance-mini-scene i:nth-child(1) { left:12%;right:12%;top:19%;height:7px;background:repeating-linear-gradient(135deg,#f1c357 0 8px,#1a2329 8px 16px);opacity:.82; }
.appearance-option[data-preview-theme="spaceships"] .appearance-mini-scene i:nth-child(2),.appearance-option[data-preview-theme="spaceships"] .appearance-mini-scene i:nth-child(3) { bottom:25%;width:7px;height:5px;border-radius:2px;background:#7ceaff;box-shadow:0 0 8px #7ceaff; }
.appearance-option[data-preview-theme="spaceships"] .appearance-mini-scene i:nth-child(2){left:39%}.appearance-option[data-preview-theme="spaceships"] .appearance-mini-scene i:nth-child(3){left:56%;background:#a6ffbc;box-shadow:0 0 8px #a6ffbc}

/* Discoteca: bola, rayos y neón. */
.appearance-option[data-preview-theme="disco"] .appearance-mini-scene { background:radial-gradient(circle at 18% 25%,rgba(255,90,219,.18),transparent 26%),radial-gradient(circle at 82% 35%,rgba(95,229,255,.16),transparent 28%); }
.appearance-option[data-preview-theme="disco"] .appearance-mini-scene::after { left:50%;top:13%;width:30px;height:30px;transform:translateX(-50%);border-radius:50%;background:conic-gradient(#fff,#78eaff,#ff6bd2,#ffe174,#fff);box-shadow:0 0 17px rgba(255,255,255,.65); }
.appearance-option[data-preview-theme="disco"] .appearance-mini-scene i:nth-child(-n+3) { left:50%;top:27%;width:3px;height:54%;transform-origin:top;background:linear-gradient(rgba(255,255,255,.7),transparent 75%); }
.appearance-option[data-preview-theme="disco"] .appearance-mini-scene i:nth-child(1){transform:rotate(36deg);background:linear-gradient(#ff72dc,transparent 75%)}.appearance-option[data-preview-theme="disco"] .appearance-mini-scene i:nth-child(2){transform:rotate(-36deg);background:linear-gradient(#6ceeff,transparent 75%)}.appearance-option[data-preview-theme="disco"] .appearance-mini-scene i:nth-child(3){transform:rotate(7deg);background:linear-gradient(#ffe16f,transparent 75%)}
.appearance-option[data-preview-theme="disco"] .appearance-mini-scene i:nth-child(4) { right:10%;bottom:22%;width:29%;height:13%;border:2px solid #ff7bd9;border-radius:4px;box-shadow:0 0 9px #ff5ed2,inset 0 0 7px rgba(255,76,207,.4); }

/* Música: pequeño teclado y notas en la sala. */
.appearance-option[data-preview-theme="music"] .appearance-mini-scene::after { left:21%;right:15%;bottom:17%;height:22%;transform:skewX(-10deg);background:repeating-linear-gradient(90deg,#f5e8cf 0 12px,#2d2438 12px 17px,#f5e8cf 17px 29px);box-shadow:0 7px 12px rgba(0,0,0,.3); }
.appearance-option[data-preview-theme="music"] .appearance-mini-scene i:nth-child(1),.appearance-option[data-preview-theme="music"] .appearance-mini-scene i:nth-child(2),.appearance-option[data-preview-theme="music"] .appearance-mini-scene i:nth-child(3) { color:#ffd981;font:700 22px serif;text-shadow:0 0 10px rgba(255,219,132,.6); }
.appearance-option[data-preview-theme="music"] .appearance-mini-scene i:nth-child(1){left:22%;top:18%}.appearance-option[data-preview-theme="music"] .appearance-mini-scene i:nth-child(1)::before{content:"♪"}.appearance-option[data-preview-theme="music"] .appearance-mini-scene i:nth-child(2){left:51%;top:13%}.appearance-option[data-preview-theme="music"] .appearance-mini-scene i:nth-child(2)::before{content:"♫"}.appearance-option[data-preview-theme="music"] .appearance-mini-scene i:nth-child(3){right:18%;top:27%}.appearance-option[data-preview-theme="music"] .appearance-mini-scene i:nth-child(3)::before{content:"♩"}

/* Mundo interior: cojines, mesa baja y planta. */
.appearance-option[data-preview-theme="inner"] .appearance-mini-scene::after { left:40%;bottom:18%;width:30%;height:10%;border-radius:50%;background:#6c4f3f;box-shadow:0 5px 0 #3c332d,0 8px 10px rgba(0,0,0,.22); }
.appearance-option[data-preview-theme="inner"] .appearance-mini-scene i:nth-child(1),.appearance-option[data-preview-theme="inner"] .appearance-mini-scene i:nth-child(2) { bottom:17%;width:22%;height:13%;border-radius:50% 50% 38% 38%;background:#a9d6c7;box-shadow:0 5px 8px rgba(0,0,0,.18); }
.appearance-option[data-preview-theme="inner"] .appearance-mini-scene i:nth-child(1){left:14%}.appearance-option[data-preview-theme="inner"] .appearance-mini-scene i:nth-child(2){right:10%;background:#d8c394}
.appearance-option[data-preview-theme="inner"] .appearance-mini-scene i:nth-child(3) { left:17%;bottom:31%;width:5px;height:26%;background:#436b55;border-radius:4px; }
.appearance-option[data-preview-theme="inner"] .appearance-mini-scene i:nth-child(3)::before { left:-14px;top:-10px;width:35px;height:27px;border-radius:50%;background:#74a579;box-shadow:-9px 7px 0 -4px #5e916c,11px 5px 0 -5px #87b78b; }

/* CASTILLO MÁGICO · lago y silueta de castillo lejano. */
.live-sky[data-landscape-theme="castle"] .live-landscape-themed {
  background:linear-gradient(180deg,transparent 0 67%,rgba(92,113,145,.62) 67% 100%);
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed::before {
  left:-4%;right:-4%;bottom:23%;height:42%;
  background:linear-gradient(180deg,#565a70,#26293a 78%);
  clip-path:polygon(0 67%,12% 40%,23% 55%,35% 22%,46% 54%,58% 31%,69% 61%,80% 35%,91% 56%,100% 42%,100% 100%,0 100%);
  filter:drop-shadow(0 12px 20px rgba(0,0,0,.24));
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed::after {
  left:58%;bottom:43%;width:26%;height:27%;
  background:#171927;
  clip-path:polygon(0 100%,0 42%,10% 42%,10% 18%,20% 33%,32% 33%,32% 5%,43% 22%,54% 22%,54% 0,65% 23%,75% 23%,75% 39%,87% 39%,87% 15%,96% 35%,100% 35%,100% 100%);
  box-shadow:0 12px 22px rgba(0,0,0,.36);
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i { position:absolute;display:block; }
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(-n+4) { bottom:44%;width:2px;height:8px;background:#ffd895;box-shadow:0 0 9px #ffd895; }
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(1){left:61%}.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(2){left:66%}.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(3){left:72%}.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(4){left:78%}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(5),.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(6) { left:15%;right:15%;bottom:12%;height:9%;border-top:1px solid rgba(225,235,255,.28);border-radius:50%; }
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(6){left:30%;right:3%;bottom:4%;opacity:.55}

/* MUNDO DE LA LECTURA · plaza arbolada con bancas. */
.live-sky[data-landscape-theme="reading"] .live-landscape-themed { background:linear-gradient(180deg,rgba(157,188,166,.08),rgba(91,124,91,.14)); }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed::before { left:-5%;right:-5%;bottom:-8%;height:46%;border-radius:50% 50% 0 0;background:radial-gradient(circle at 50% 0,rgba(234,221,189,.72),rgba(163,139,105,.88) 52%,#6b5946 100%);clip-path:none;box-shadow:inset 0 12px 28px rgba(255,255,255,.08); }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed::after { left:42%;right:42%;bottom:-2%;height:52%;border-radius:50% 50% 0 0;background:linear-gradient(180deg,#dccb9d,#8f7258);transform:perspective(350px) rotateX(53deg);box-shadow:0 0 0 1px rgba(255,255,255,.12); }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i { transform:none;opacity:1;background:none; }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(-n+4) { width:76px;height:76px;border-radius:50%;bottom:29%;background:radial-gradient(circle at 35% 25%,#95bf72,#47744f 68%,#2e513d);box-shadow:0 8px 18px rgba(0,0,0,.23); }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(-n+4)::after { content:"";position:absolute;left:50%;top:72%;width:11px;height:60px;transform:translateX(-50%);border-radius:6px;background:linear-gradient(90deg,#5a3b2c,#8a6142 50%,#4e3429);z-index:-1; }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(1){left:7%}.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(2){left:25%;width:62px;height:62px;bottom:35%}.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(3){right:25%;width:66px;height:66px;bottom:34%}.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(4){right:7%}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(5),.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(6) { bottom:20%;width:72px;height:12px;border-radius:3px;background:linear-gradient(180deg,#9a6c45,#60412f);box-shadow:0 7px 0 -3px #3b3027,0 10px 12px rgba(0,0,0,.2); }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(5)::before,.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(6)::before { content:"";position:absolute;left:4px;right:4px;bottom:10px;height:17px;border-radius:3px 3px 0 0;background:#765138; }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(5){left:18%}.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(6){right:18%}

/* HANGAR DE NAVES · portón de salida y tráfico espacial ocasional. */
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed { background:linear-gradient(180deg,#07121e,#0b2331 72%,#071018); }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed::before { left:10%;right:10%;top:5%;bottom:10%;border:17px solid #253a45;border-bottom-width:24px;border-radius:46% 46% 4px 4px;background:radial-gradient(circle at 72% 20%,rgba(105,227,255,.22),transparent 25%),radial-gradient(circle at 24% 15%,#fff 0 1px,transparent 2px),linear-gradient(180deg,#071427,#173a50 63%,#102a39);box-shadow:inset 0 0 0 5px rgba(115,217,236,.08),0 0 42px rgba(0,0,0,.5);clip-path:none; }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed::after { left:18%;right:18%;bottom:0;height:33%;background:linear-gradient(73deg,transparent 47%,rgba(104,232,255,.65) 49% 51%,transparent 53%),linear-gradient(107deg,transparent 47%,rgba(104,232,255,.65) 49% 51%,transparent 53%),repeating-linear-gradient(180deg,transparent 0 24px,rgba(255,255,255,.08) 24px 27px);clip-path:polygon(43% 0,57% 0,100% 100%,0 100%);border-radius:0;box-shadow:none;transform:none; }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i { display:none;position:absolute;z-index:3; }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(-n+4) { display:block;left:-18%;top:21%;width:72px;height:24px;border-radius:70% 18% 42% 50%;background:linear-gradient(180deg,#d6e4e7,#557b89 58%,#23414e);box-shadow:-30px 5px 0 -8px rgba(102,241,255,.72),0 7px 16px rgba(0,0,0,.26);animation:hangarShipFlight 18s linear infinite; }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(-n+4)::after { content:"";position:absolute;right:12%;top:36%;width:13px;height:5px;border-radius:50%;background:#83f2ff;box-shadow:0 0 8px #83f2ff; }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(2) { top:35%;width:46px;height:18px;clip-path:polygon(0 50%,35% 5%,100% 31%,82% 67%,36% 94%);border-radius:0;background:linear-gradient(90deg,#86a7b3,#d8e8e8 52%,#426777);animation-duration:23s;animation-delay:-9s; }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(3) { top:16%;width:58px;height:22px;border-radius:50%;background:radial-gradient(ellipse at 50% 22%,#d8f5ff 0 19%,#738e9b 21% 42%,#243f4c 44% 100%);animation-duration:29s;animation-delay:-17s; }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(4) { top:48%;width:32px;height:13px;clip-path:polygon(0 50%,43% 0,100% 39%,74% 100%,42% 72%);border-radius:0;background:#a2d2d8;animation-duration:14s;animation-delay:-4s; }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(5),.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(6) { display:block;bottom:13%;width:8px;height:8px;border-radius:50%;background:#ffcc68;box-shadow:0 0 12px #ffb747;animation:hangarBeacon 1.6s ease-in-out infinite alternate; }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(5){left:33%}.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(6){right:33%;animation-delay:.8s}
@keyframes hangarShipFlight { 0%{transform:translate3d(0,8px,0) scale(.72);opacity:0} 8%{opacity:.95} 82%{opacity:.95} 100%{transform:translate3d(calc(100vw + 340px),-48px,0) scale(1.08);opacity:0} }
@keyframes hangarBeacon { to{opacity:.22;transform:scale(.75)} }

/* DISCOTECA · bola de espejos, láseres y letreros de neón. */
.live-sky[data-landscape-theme="disco"] .live-landscape-themed { background:radial-gradient(circle at 50% 72%,rgba(255,62,205,.18),transparent 31%),linear-gradient(180deg,#100316,#24072e 70%,#09020d); }
.live-sky[data-landscape-theme="disco"] .live-landscape-themed::before { left:0;right:0;bottom:0;height:42%;background:linear-gradient(90deg,#12061b 0 14%,transparent 14% 18%,#21082b 18% 33%,transparent 33% 38%,#16061f 38% 58%,transparent 58% 63%,#270a32 63% 80%,transparent 80% 84%,#13071b 84%);box-shadow:0 -4px 25px rgba(255,82,216,.24); }
.live-sky[data-landscape-theme="disco"] .live-landscape-themed::after { left:50%;top:7%;width:82px;height:82px;border-radius:50%;transform:translateX(-50%);background:conic-gradient(#fff,#75f1ff,#ff74d8,#ffe76e,#fff);box-shadow:0 0 44px rgba(255,255,255,.72);animation:discoBallTurn 8s linear infinite; }
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i { display:none; }
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(-n+4) { display:block;left:50%;top:16%;width:3px;height:76%;transform-origin:top;background:linear-gradient(rgba(255,255,255,.62),transparent 72%);animation:laserSweep 4.8s ease-in-out infinite alternate; }
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(1){--laser-angle:28deg;background:linear-gradient(#ff69d8,transparent 72%)}.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(2){--laser-angle:-29deg;background:linear-gradient(#63edff,transparent 72%);animation-delay:-1.4s}.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(3){--laser-angle:54deg;background:linear-gradient(#ffe16f,transparent 72%);animation-delay:-2.5s}.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(4){--laser-angle:-54deg;background:linear-gradient(#9b76ff,transparent 72%);animation-delay:-3.6s}
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(5),.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(6) { display:grid;place-items:center;top:43%;width:104px;height:38px;border:2px solid currentColor;border-radius:8px;color:#ff6fd6;font:700 15px/1 system-ui;letter-spacing:.14em;text-shadow:0 0 8px currentColor;box-shadow:0 0 14px currentColor,inset 0 0 10px color-mix(in srgb,currentColor 28%,transparent);transform:rotate(-4deg); }
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(5){left:12%}.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(5)::before{content:"LUZ"}.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(6){right:12%;color:#62edff;transform:rotate(4deg)}.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(6)::before{content:"RITMO"}
@keyframes discoBallTurn { to{filter:hue-rotate(360deg)} }
@keyframes laserSweep { from{transform:rotate(calc(var(--laser-angle) - 7deg))} to{transform:rotate(calc(var(--laser-angle) + 7deg))} }

/* MUNDO MUSICAL · teclado curvo como camino y notas que migran por el cielo. */
.live-sky[data-landscape-theme="music"] .live-landscape-themed { background:radial-gradient(circle at 18% 30%,rgba(255,224,132,.2),transparent 22%),radial-gradient(circle at 80% 24%,rgba(112,228,255,.17),transparent 24%); }
.live-sky[data-landscape-theme="music"] .live-landscape-themed::before { left:50%;bottom:-24%;width:62%;height:92%;transform:translateX(-50%) perspective(540px) rotateX(54deg) rotateZ(-7deg);transform-origin:50% 100%;border-radius:48% 48% 7% 7% / 18% 18% 5% 5%;clip-path:polygon(39% 0,61% 0,100% 100%,0 100%);background:repeating-linear-gradient(180deg,#f4e6cd 0 8%,#c5b398 8% 9%,#f4e6cd 9% 17%),repeating-linear-gradient(90deg,transparent 0 7%,#292231 7% 11%,transparent 11% 18%);box-shadow:0 0 28px rgba(255,225,158,.18); }
.live-sky[data-landscape-theme="music"] .live-landscape-themed::after { left:45%;top:22%;width:10%;height:18%;border:4px solid rgba(255,223,137,.72);border-bottom:0;border-radius:50% 50% 0 0;box-shadow:0 0 26px rgba(255,218,131,.38);background:radial-gradient(circle at 50% 70%,rgba(255,246,182,.52),transparent 58%);transform:none; }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i { display:none;color:#ffe097;font:700 31px serif;text-shadow:0 0 15px rgba(255,224,151,.68); }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(-n+6) { display:block;left:-10%;animation:musicNoteDrift 15s linear infinite; }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(1){top:18%;animation-duration:13s}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(1)::before{content:"♪"}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(2){top:29%;animation-duration:18s;animation-delay:-8s}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(2)::before{content:"♫"}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(3){top:12%;animation-duration:22s;animation-delay:-14s}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(3)::before{content:"♩"}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(4){top:39%;animation-duration:16s;animation-delay:-5s}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(4)::before{content:"♬"}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(5){top:25%;animation-duration:20s;animation-delay:-11s}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(5)::before{content:"♪"}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(6){top:8%;animation-duration:25s;animation-delay:-19s}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(6)::before{content:"♫"}
@keyframes musicNoteDrift { 0%{transform:translate3d(0,12px,0) rotate(-9deg);opacity:0} 8%{opacity:.9} 48%{transform:translate3d(55vw,-10px,0) rotate(7deg)} 100%{transform:translate3d(calc(100vw + 150px),14px,0) rotate(-6deg);opacity:0} }

/* MUNDO INTERIOR · laguna, lotos y un sauce llorón central. */
.live-sky[data-landscape-theme="inner"] .live-landscape-themed { background:linear-gradient(180deg,rgba(109,159,146,.1),rgba(44,83,78,.14)); }
.live-sky[data-landscape-theme="inner"] .live-landscape-themed::before { left:0;right:0;bottom:0;height:43%;background:linear-gradient(180deg,rgba(132,211,198,.73),#315f60 58%,#1f4649);clip-path:none;box-shadow:inset 0 8px 24px rgba(255,255,255,.12); }
.live-sky[data-landscape-theme="inner"] .live-landscape-themed::after { left:-5%;right:-5%;bottom:38%;height:28%;background:linear-gradient(180deg,#638d76,#355f51);clip-path:polygon(0 74%,13% 44%,26% 63%,39% 35%,53% 67%,67% 39%,82% 61%,100% 42%,100% 100%,0 100%); }
.live-sky[data-landscape-theme="inner"] .live-landscape-themed i { display:none; }
.live-sky[data-landscape-theme="inner"] .live-landscape-themed i:nth-child(1) { display:block;left:50%;bottom:35%;width:29px;height:150px;transform:translateX(-50%);border-radius:45% 45% 24% 24%;background:linear-gradient(90deg,#49372d,#826149 51%,#3c302a);box-shadow:0 10px 17px rgba(0,0,0,.24);z-index:3; }
.live-sky[data-landscape-theme="inner"] .live-landscape-themed i:nth-child(1)::before { content:"";position:absolute;left:50%;top:-68px;width:205px;height:118px;transform:translateX(-50%);border-radius:50% 50% 46% 46%;background:radial-gradient(ellipse at 50% 25%,#7ca57c,#47745f 70%,#335b4d);box-shadow:-55px 34px 0 -22px #446f5b,55px 34px 0 -22px #446f5b,0 15px 30px rgba(0,0,0,.21); }
.live-sky[data-landscape-theme="inner"] .live-landscape-themed i:nth-child(1)::after { content:"";position:absolute;left:-78px;top:-18px;width:186px;height:120px;background:repeating-linear-gradient(90deg,transparent 0 8px,rgba(83,132,102,.72) 8px 10px,transparent 10px 17px);mask-image:linear-gradient(#000,transparent);opacity:.75; }
.live-sky[data-landscape-theme="inner"] .live-landscape-themed i:nth-child(n+2):nth-child(-n+5) { display:block;bottom:15%;width:25px;height:12px;border-radius:50%;background:#5f9c78;box-shadow:0 4px 9px rgba(0,0,0,.18);z-index:4; }
.live-sky[data-landscape-theme="inner"] .live-landscape-themed i:nth-child(n+2):nth-child(-n+5)::before { content:"";position:absolute;left:50%;top:-6px;width:17px;height:17px;transform:translateX(-50%);background:conic-gradient(from 15deg,#ffd9e6 0 14%,#fff2f5 14% 28%,#efabc2 28% 42%,#fff2f5 42% 56%,#ffd9e6 56% 70%,#fff2f5 70% 84%,#efabc2 84%);clip-path:polygon(50% 0,62% 32%,100% 24%,71% 50%,100% 77%,63% 70%,50% 100%,38% 69%,0 78%,29% 50%,0 24%,38% 32%);filter:drop-shadow(0 0 5px rgba(255,218,234,.42)); }
.live-sky[data-landscape-theme="inner"] .live-landscape-themed i:nth-child(2){left:18%;bottom:13%}.live-sky[data-landscape-theme="inner"] .live-landscape-themed i:nth-child(3){left:34%;bottom:22%;transform:scale(.75)}.live-sky[data-landscape-theme="inner"] .live-landscape-themed i:nth-child(4){right:29%;bottom:18%;transform:scale(.88)}.live-sky[data-landscape-theme="inner"] .live-landscape-themed i:nth-child(5){right:13%;bottom:10%;transform:scale(.72)}
.live-sky[data-landscape-theme="inner"] .live-landscape-themed i:nth-child(6),.live-sky[data-landscape-theme="inner"] .live-landscape-themed i:nth-child(7) { display:block;left:50%;bottom:8%;width:30%;height:11%;transform:translateX(-50%);border:1px solid rgba(224,255,247,.38);border-radius:50%;z-index:2; }
.live-sky[data-landscape-theme="inner"] .live-landscape-themed i:nth-child(7){width:54%;height:18%;bottom:3%;opacity:.58}

@media (prefers-reduced-motion:reduce) {
  .live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i,
  .live-sky[data-landscape-theme="disco"] .live-landscape-themed i,
  .live-sky[data-landscape-theme="disco"] .live-landscape-themed::after,
  .live-sky[data-landscape-theme="music"] .live-landscape-themed i { animation:none !important; }
}


/* === v4.4.1 · paisajes temáticos refinados y miniaturas más fieles === */

/* Miniaturas del modal Personalizar: sin puerta, sin ventana, sin círculo inferior ni estantería. */
.appearance-mini-rug,
.appearance-mini-shelf,
.appearance-mini-window,
.appearance-mini-door { display:none !important; }
.appearance-preview::before { height:29%; background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(7,5,12,.26)); border-top:1px solid rgba(255,255,255,.08); }
.appearance-mini-scene { position:absolute; inset:0; }
.appearance-mini-scene::before,
.appearance-mini-scene::after,
.appearance-mini-scene i,
.appearance-mini-scene i::before,
.appearance-mini-scene i::after { content:""; position:absolute; display:block; }

/* Preview: Espacio */
.appearance-option[data-preview-theme="space"] .appearance-mini-scene { background:radial-gradient(circle at 20% 22%,rgba(255,255,255,.12),transparent 28%),linear-gradient(180deg,rgba(6,9,24,.1),rgba(3,6,18,.28)); }
.appearance-option[data-preview-theme="space"] .appearance-mini-scene::before { right:9%; top:18%; width:25%; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle at 35% 30%,#eef3ff 0 7%,#9fa8ff 20%,#4b54a2 58%,#1d2453 80%); box-shadow:0 0 18px rgba(160,176,255,.32); }
.appearance-option[data-preview-theme="space"] .appearance-mini-scene::after { left:10%; top:58%; width:34%; height:14%; border:2px solid rgba(149,212,255,.35); border-radius:50%; transform:rotate(-12deg); }
.appearance-option[data-preview-theme="space"] .appearance-mini-scene i:nth-child(1) { left:18%; top:24%; width:12px; height:12px; border-radius:50%; background:#cf7b74; box-shadow:0 0 10px rgba(255,167,138,.22); }
.appearance-option[data-preview-theme="space"] .appearance-mini-scene i:nth-child(2) { left:33%; top:20%; width:6px; height:6px; border-radius:50%; background:#e9f3ff; box-shadow:0 0 8px #fff; }
.appearance-option[data-preview-theme="space"] .appearance-mini-scene i:nth-child(3),
.appearance-option[data-preview-theme="space"] .appearance-mini-scene i:nth-child(4) { width:4px; height:4px; border-radius:50%; background:#fff; box-shadow:0 0 8px #fff; }
.appearance-option[data-preview-theme="space"] .appearance-mini-scene i:nth-child(3){ left:64%; top:22%; }
.appearance-option[data-preview-theme="space"] .appearance-mini-scene i:nth-child(4){ left:75%; top:40%; width:3px; height:3px; }

/* Preview: Castillo mágico */
.appearance-option[data-preview-theme="castle"] .appearance-mini-scene { background:linear-gradient(180deg,rgba(18,19,39,.06),rgba(6,7,15,.2)); }
.appearance-option[data-preview-theme="castle"] .appearance-mini-scene::before { left:0; right:0; bottom:0; height:26%; background:linear-gradient(180deg,#48627a,#24364f); border-radius:54% 54% 0 0 / 26% 26% 0 0; opacity:.78; }
.appearance-option[data-preview-theme="castle"] .appearance-mini-scene::after { left:41%; bottom:26%; width:28%; height:33%; background:#1b1a28; clip-path:polygon(0 100%,0 42%,11% 42%,11% 20%,18% 0,26% 20%,35% 20%,35% 47%,44% 47%,44% 18%,52% 0,60% 18%,69% 18%,69% 44%,79% 44%,79% 25%,87% 9%,94% 25%,100% 25%,100% 100%); box-shadow:0 8px 10px rgba(0,0,0,.25); }
.appearance-option[data-preview-theme="castle"] .appearance-mini-scene i:nth-child(1),
.appearance-option[data-preview-theme="castle"] .appearance-mini-scene i:nth-child(2),
.appearance-option[data-preview-theme="castle"] .appearance-mini-scene i:nth-child(3) { bottom:39%; width:2px; height:8px; background:#ffe4aa; box-shadow:0 0 7px #ffd88f; }
.appearance-option[data-preview-theme="castle"] .appearance-mini-scene i:nth-child(1){ left:48%; }
.appearance-option[data-preview-theme="castle"] .appearance-mini-scene i:nth-child(2){ left:56%; }
.appearance-option[data-preview-theme="castle"] .appearance-mini-scene i:nth-child(3){ left:66%; }

/* Preview: Metro */
.appearance-option[data-preview-theme="metro"] .appearance-mini-scene { background:linear-gradient(180deg,rgba(9,12,16,.08),rgba(4,5,7,.26)); }
.appearance-option[data-preview-theme="metro"] .appearance-mini-scene::before { left:16%; right:16%; top:8%; bottom:-4%; border:9px solid #314049; border-bottom:0; border-radius:46% 46% 0 0; box-shadow:inset 0 0 0 3px rgba(255,255,255,.05); }
.appearance-option[data-preview-theme="metro"] .appearance-mini-scene::after { left:19%; right:19%; bottom:1%; height:44%; background:linear-gradient(75deg,transparent 47%,#c9a857 48% 50%,transparent 51%),linear-gradient(105deg,transparent 47%,#c9a857 48% 50%,transparent 51%),repeating-linear-gradient(180deg,transparent 0 15px,rgba(255,255,255,.11) 15px 18px); clip-path:polygon(44% 0,56% 0,100% 100%,0 100%); }
.appearance-option[data-preview-theme="metro"] .appearance-mini-scene i:nth-child(1) { left:50%; top:36%; width:36%; height:7px; transform:translateX(-50%); background:#f0d492; border-radius:4px; box-shadow:0 0 11px rgba(245,221,155,.55); }

/* Preview: Lectura */
.appearance-option[data-preview-theme="reading"] .appearance-mini-scene { background:linear-gradient(180deg,rgba(241,219,186,.02),rgba(94,76,60,.15)); }
.appearance-option[data-preview-theme="reading"] .appearance-mini-scene::before { left:0; right:0; bottom:0; height:32%; background:linear-gradient(180deg,#6e8f59,#48663f); }
.appearance-option[data-preview-theme="reading"] .appearance-mini-scene::after { left:37%; bottom:18%; width:24%; height:8%; border-radius:5px; background:#9a744a; box-shadow:0 -7px 0 -2px #795335,0 3px 0 rgba(0,0,0,.18); }
.appearance-option[data-preview-theme="reading"] .appearance-mini-scene i:nth-child(1),
.appearance-option[data-preview-theme="reading"] .appearance-mini-scene i:nth-child(2),
.appearance-option[data-preview-theme="reading"] .appearance-mini-scene i:nth-child(3) { bottom:24%; width:6px; height:18px; background:#6a4b36; border-radius:4px; }
.appearance-option[data-preview-theme="reading"] .appearance-mini-scene i:nth-child(1)::before,
.appearance-option[data-preview-theme="reading"] .appearance-mini-scene i:nth-child(2)::before,
.appearance-option[data-preview-theme="reading"] .appearance-mini-scene i:nth-child(3)::before { left:50%; top:-9px; width:24px; height:18px; transform:translateX(-50%); border-radius:50%; background:#7ea36a; box-shadow:-8px 6px 0 -4px #6e955e,8px 6px 0 -4px #6e955e; }
.appearance-option[data-preview-theme="reading"] .appearance-mini-scene i:nth-child(1){ left:16%; }
.appearance-option[data-preview-theme="reading"] .appearance-mini-scene i:nth-child(2){ left:53%; height:16px; }
.appearance-option[data-preview-theme="reading"] .appearance-mini-scene i:nth-child(3){ right:16%; height:20px; }

/* Preview: Hangar espacial */
.appearance-option[data-preview-theme="spaceships"] .appearance-mini-scene { background:linear-gradient(180deg,rgba(9,16,22,.04),rgba(7,12,18,.18)); }
.appearance-option[data-preview-theme="spaceships"] .appearance-mini-scene::before { left:12%; right:12%; bottom:0; height:26%; background:linear-gradient(180deg,#315766,#172b35); clip-path:polygon(8% 0,92% 0,100% 100%,0 100%); box-shadow:inset 0 4px rgba(104,214,228,.33); }
.appearance-option[data-preview-theme="spaceships"] .appearance-mini-scene::after { left:48%; top:17%; width:18%; height:7%; background:linear-gradient(180deg,#d7dfe4,#67808f); clip-path:polygon(0 54%,17% 31%,40% 24%,68% 0,100% 46%,72% 60%,39% 68%,22% 85%); transform:rotate(-8deg); box-shadow:0 0 10px rgba(125,220,255,.22); }
.appearance-option[data-preview-theme="spaceships"] .appearance-mini-scene i:nth-child(1),
.appearance-option[data-preview-theme="spaceships"] .appearance-mini-scene i:nth-child(2) { width:14%; height:6%; background:linear-gradient(180deg,#eef3f6,#728896); clip-path:polygon(0 56%,13% 35%,36% 25%,68% 0,100% 44%,72% 57%,42% 68%,18% 82%); }
.appearance-option[data-preview-theme="spaceships"] .appearance-mini-scene i:nth-child(1){ left:16%; top:24%; transform:scale(.75) rotate(10deg); }
.appearance-option[data-preview-theme="spaceships"] .appearance-mini-scene i:nth-child(2){ right:12%; top:33%; transform:scale(.65) rotate(-12deg); }

/* Preview: Discoteca */
.appearance-option[data-preview-theme="disco"] .appearance-mini-scene { background:radial-gradient(circle at 50% 22%,rgba(255,255,255,.08),transparent 22%); }
.appearance-option[data-preview-theme="disco"] .appearance-mini-scene::before { left:50%; top:10%; width:24px; height:24px; transform:translateX(-50%); border-radius:50%; background:conic-gradient(#fff,#7beeff,#ff75d8,#ffe36f,#fff); box-shadow:0 0 14px rgba(255,255,255,.5); }
.appearance-option[data-preview-theme="disco"] .appearance-mini-scene::after { left:0; right:0; bottom:0; height:30%; background:linear-gradient(90deg,#11071b 0 14%,transparent 14% 18%,#1b0a29 18% 31%,transparent 31% 34%,#13081d 34% 48%,transparent 48% 52%,#210b2d 52% 66%,transparent 66% 70%,#16091f 70%); }
.appearance-option[data-preview-theme="disco"] .appearance-mini-scene i:nth-child(-n+4) { left:50%; top:17%; width:2px; height:53%; background:linear-gradient(rgba(255,255,255,.55),transparent 74%); transform-origin:top; }
.appearance-option[data-preview-theme="disco"] .appearance-mini-scene i:nth-child(1){ transform:rotate(24deg); background:linear-gradient(#ff76d7,transparent 74%); }
.appearance-option[data-preview-theme="disco"] .appearance-mini-scene i:nth-child(2){ transform:rotate(-24deg); background:linear-gradient(#67efff,transparent 74%); }
.appearance-option[data-preview-theme="disco"] .appearance-mini-scene i:nth-child(3){ transform:rotate(48deg); background:linear-gradient(#ffe56f,transparent 74%); }
.appearance-option[data-preview-theme="disco"] .appearance-mini-scene i:nth-child(4){ transform:rotate(-48deg); background:linear-gradient(#a47cff,transparent 74%); }

/* Preview: Mundo musical */
.appearance-option[data-preview-theme="music"] .appearance-mini-scene { background:radial-gradient(circle at 22% 28%,rgba(255,223,137,.14),transparent 21%),radial-gradient(circle at 80% 23%,rgba(126,231,255,.12),transparent 22%); }
.appearance-option[data-preview-theme="music"] .appearance-mini-scene::before { left:50%; bottom:-22%; width:56%; height:80%; transform:translateX(-50%) perspective(320px) rotateX(56deg) rotateZ(-10deg); border-radius:48% 48% 7% 7% / 18% 18% 5% 5%; clip-path:polygon(37% 0,63% 0,100% 100%,0 100%); background:repeating-linear-gradient(180deg,#f5e8ce 0 7%,#cfbda2 7% 8%,#f5e8ce 8% 16%),repeating-linear-gradient(90deg,transparent 0 8%,#2a2433 8% 12%,transparent 12% 20%); }
.appearance-option[data-preview-theme="music"] .appearance-mini-scene::after { left:14%; right:14%; bottom:9%; height:14%; background:linear-gradient(180deg,#705772,#30273c); clip-path:polygon(0 100%,0 58%,14% 42%,28% 55%,42% 36%,58% 54%,74% 39%,88% 54%,100% 41%,100% 100%); }
.appearance-option[data-preview-theme="music"] .appearance-mini-scene i:nth-child(1),
.appearance-option[data-preview-theme="music"] .appearance-mini-scene i:nth-child(2),
.appearance-option[data-preview-theme="music"] .appearance-mini-scene i:nth-child(3) { font:700 18px serif; color:#ffe18d; text-shadow:0 0 10px rgba(255,220,138,.5); }
.appearance-option[data-preview-theme="music"] .appearance-mini-scene i:nth-child(1){ left:16%; top:18%; }
.appearance-option[data-preview-theme="music"] .appearance-mini-scene i:nth-child(1)::before{content:"♪"}
.appearance-option[data-preview-theme="music"] .appearance-mini-scene i:nth-child(2){ left:47%; top:11%; }
.appearance-option[data-preview-theme="music"] .appearance-mini-scene i:nth-child(2)::before{content:"♫"}
.appearance-option[data-preview-theme="music"] .appearance-mini-scene i:nth-child(3){ right:14%; top:24%; }
.appearance-option[data-preview-theme="music"] .appearance-mini-scene i:nth-child(3)::before{content:"♩"}

/* PAISAJE · Espacio: más planetas orbitando. */
.live-sky[data-landscape-theme="space"] .live-landscape-themed { background:radial-gradient(circle at 20% 22%,rgba(255,255,255,.08),transparent 22%),linear-gradient(180deg,rgba(4,6,16,.04),rgba(3,4,11,.16)); }
.live-sky[data-landscape-theme="space"] .live-landscape-themed::before { right:8%; top:18%; width:21%; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle at 32% 28%,#dce8ff 0 4%,#8b8de0 18%,#3a3d88 55%,#181d4d 72%); box-shadow:0 0 55px rgba(138,149,255,.42), -210px 40px 0 -68px #e08e7f, -210px 40px 0 -64px rgba(83,35,36,.75), -120px -26px 0 -78px #6ecbe4, -120px -26px 0 -74px rgba(43,76,98,.8); }
.live-sky[data-landscape-theme="space"] .live-landscape-themed::after { left:6%; bottom:10%; width:38%; height:20%; border:3px solid rgba(150,217,255,.32); border-radius:50%; transform:rotate(-12deg); box-shadow:160px -108px 0 -84px rgba(255,255,255,.18); }
.live-sky[data-landscape-theme="space"] .live-landscape-themed i { width:4px; height:4px; border-radius:50%; background:#fff; box-shadow:0 0 14px #fff; }
.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(1){ left:15%; top:19%; width:10px; height:10px; background:#ffb69d; box-shadow:0 0 16px rgba(255,182,157,.45); animation:planetDrift 16s ease-in-out infinite alternate; }
.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(2){ left:33%; top:14%; width:7px; height:7px; background:#8ed8eb; box-shadow:0 0 13px rgba(142,216,235,.45); animation:planetDrift 21s ease-in-out infinite alternate-reverse; }
.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(3){ left:48%; top:16%; }
.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(4){ left:66%; top:42%; width:3px; height:3px; }
.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(5){ left:83%; top:12%; }
.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(6){ left:38%; top:67%; width:2px; height:2px; }
.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(7){ left:74%; top:72%; }
.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(8){ left:18%; top:76%; width:2px; height:2px; }

/* PAISAJE · Castillo mágico: lago y castillo con silueta más clara. */
.live-sky[data-landscape-theme="castle"] .live-landscape-themed { background:linear-gradient(180deg,rgba(28,25,48,.08),rgba(9,8,15,.16)); }
.live-sky[data-landscape-theme="castle"] .live-landscape-themed::before { left:0; right:0; bottom:0; height:34%; background:linear-gradient(180deg,rgba(99,130,160,.92),rgba(47,69,97,.9) 38%,rgba(27,38,63,.95)); border-top:1px solid rgba(255,255,255,.16); box-shadow:inset 0 10px 20px rgba(255,255,255,.08); }
.live-sky[data-landscape-theme="castle"] .live-landscape-themed::after { left:50%; bottom:27%; width:31%; height:31%; transform:translateX(-20%); background:#171722; clip-path:polygon(0 100%,0 53%,10% 53%,10% 24%,16% 0,22% 24%,31% 24%,31% 60%,40% 60%,40% 35%,46% 10%,52% 35%,60% 35%,60% 58%,68% 58%,68% 26%,75% 6%,82% 26%,90% 26%,90% 48%,100% 48%,100% 100%); box-shadow:0 10px 18px rgba(0,0,0,.38),0 16px 0 -10px rgba(23,23,34,.55); }
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i { bottom:39%; width:2px; height:9px; background:#ffdf9d; box-shadow:0 0 10px #ffd98c; }
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(1){ left:43%; }
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(2){ left:50%; }
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(3){ left:58%; }
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(4){ left:65%; }

/* PAISAJE · Metro subterráneo: líneas de tren en lugar de una gran X. */
.live-sky[data-landscape-theme="metro"] .live-landscape-themed { background:linear-gradient(180deg,rgba(16,21,28,.2),rgba(4,7,10,.78)); }
.live-sky[data-landscape-theme="metro"] .live-landscape-themed::before { left:13%; right:13%; top:8%; bottom:-12%; border:13px solid #28343d; border-bottom:0; border-radius:52% 52% 0 0; box-shadow:inset 0 0 0 4px rgba(255,255,255,.055),0 0 35px rgba(0,0,0,.5); }
.live-sky[data-landscape-theme="metro"] .live-landscape-themed::after { left:16%; right:16%; bottom:0; height:50%; background:linear-gradient(76deg,transparent 46%,#caa95a 47% 49%,transparent 50%),linear-gradient(104deg,transparent 46%,#caa95a 47% 49%,transparent 50%),repeating-linear-gradient(180deg,transparent 0 17px,rgba(255,255,255,.08) 17px 20px); clip-path:polygon(43% 0,57% 0,100% 100%,0 100%); }
.live-sky[data-landscape-theme="metro"] .live-landscape-themed i:nth-child(1){ left:50%; top:31%; width:38%; height:8px; transform:translateX(-50%); background:#f3dd97; box-shadow:0 0 26px rgba(232,200,123,.55); border-radius:4px; }

/* PAISAJE · Mundo de lectura: plaza arbolada con bancas sobre el suelo. */
.live-sky[data-landscape-theme="reading"] .live-landscape-themed { background:linear-gradient(180deg,rgba(255,246,222,.06),rgba(154,118,90,.08)); }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed::before { left:0; right:0; bottom:0; height:28%; background:linear-gradient(180deg,#7ea26e,#4d6941); }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed::after { left:35%; bottom:16%; width:30%; height:9%; border-radius:8px; background:#9e7449; box-shadow:0 -8px 0 -3px #7c5737, -120px -4px 0 -2px #9e7449, -120px -12px 0 -5px #7c5737, 120px -4px 0 -2px #9e7449, 120px -12px 0 -5px #7c5737; }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i { display:block; bottom:22%; width:7px; height:26px; background:#66462f; border-radius:4px; }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i::before { content:""; position:absolute; left:50%; top:-13px; width:34px; height:25px; transform:translateX(-50%); border-radius:50%; background:#789b65; box-shadow:-10px 7px 0 -4px #6c915c,10px 7px 0 -4px #6c915c; }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(1){ left:12%; }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(2){ left:27%; height:23px; }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(3){ left:44%; }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(4){ left:62%; height:20px; }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(5){ left:79%; }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(6){ left:20%; bottom:25%; transform:scale(.78); }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(7){ left:70%; bottom:25%; transform:scale(.8); }
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(8){ left:88%; bottom:21%; transform:scale(.68); }

/* PAISAJE · Hangar espacial: gran puerta y naves tipo épica espacial cruzando el cielo. */
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed { background:radial-gradient(circle at 68% 20%,rgba(109,240,255,.1),transparent 24%),linear-gradient(180deg,rgba(8,18,26,.05),rgba(5,10,16,.15)); }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed::before { left:11%; right:11%; bottom:0; height:34%; background:linear-gradient(180deg,#2c5564,#132a34 60%,#0a1720); clip-path:polygon(7% 0,93% 0,100% 100%,0 100%); box-shadow:inset 0 5px rgba(107,219,232,.35),0 -12px 30px rgba(104,214,228,.12); }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed::after { left:49%; top:20%; width:22%; height:8%; background:linear-gradient(180deg,#dce6ea,#7b90a1 56%,#445b66); clip-path:polygon(0 55%,12% 35%,34% 27%,64% 0,100% 46%,73% 58%,42% 70%,20% 84%); transform:rotate(-9deg); box-shadow:0 0 15px rgba(125,220,255,.2); animation:starcraftCruise 12s ease-in-out infinite alternate; }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i { display:block; background:linear-gradient(180deg,#edf4f7,#8098a6 58%,#4d6672); clip-path:polygon(0 55%,13% 36%,35% 27%,66% 0,100% 45%,73% 58%,42% 70%,18% 84%); }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(1){ left:12%; top:24%; width:16%; height:6%; transform:scale(.85) rotate(8deg); animation:starcraftPatrol 18s linear infinite; }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(2){ left:72%; top:33%; width:14%; height:6%; transform:scale(.65) rotate(-12deg); animation:starcraftPatrol 15s linear infinite reverse; }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(3){ left:25%; top:12%; width:10%; height:4%; transform:scale(.58) rotate(3deg); animation:starcraftPatrol 20s linear infinite; }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(n+4) { display:none; }

/* PAISAJE · Discoteca: sin palabras; destellos y luces de color. */
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(5),
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(6),
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(7),
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(8) {
  display:block; width:16px; height:16px; border-radius:50%; top:38%; filter:blur(.3px);
  background:radial-gradient(circle,#fff 0 18%,currentColor 28%,transparent 70%);
  box-shadow:0 0 16px currentColor;
  animation:flashSpark 1.7s ease-in-out infinite alternate;
}
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(5){ left:14%; color:#ff63d4; }
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(6){ left:29%; color:#67eefe; animation-delay:-.6s; }
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(7){ right:26%; color:#ffe56e; animation-delay:-1.1s; }
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(8){ right:12%; color:#a377ff; animation-delay:-1.5s; }

/* PAISAJE · Mundo musical: rediseño completo. */
.live-sky[data-landscape-theme="music"] .live-landscape-themed { background:radial-gradient(circle at 19% 29%,rgba(255,225,136,.22),transparent 22%),radial-gradient(circle at 81% 22%,rgba(112,228,255,.18),transparent 24%),linear-gradient(180deg,rgba(79,55,98,.06),rgba(39,24,52,.16)); }
.live-sky[data-landscape-theme="music"] .live-landscape-themed::before { left:50%; bottom:-24%; width:70%; height:94%; transform:translateX(-50%) perspective(560px) rotateX(57deg) rotateZ(-16deg); transform-origin:50% 100%; border-radius:49% 49% 7% 7% / 18% 18% 5% 5%; clip-path:polygon(36% 0,64% 0,100% 100%,0 100%); background:repeating-linear-gradient(180deg,#f6ead2 0 7%,#ccb899 7% 8%,#f6ead2 8% 15%),repeating-linear-gradient(90deg,transparent 0 7%,#221d2b 7% 11%,transparent 11% 18%); box-shadow:0 0 26px rgba(255,226,160,.14); }
.live-sky[data-landscape-theme="music"] .live-landscape-themed::after { left:10%; right:10%; bottom:8%; height:16%; background:linear-gradient(180deg,#765e7a,#31263f); clip-path:polygon(0 100%,0 60%,11% 45%,24% 57%,37% 39%,51% 57%,65% 36%,79% 52%,92% 38%,100% 47%,100% 100%); box-shadow:0 -7px 16px rgba(255,230,166,.12); }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i { display:block; left:-10%; color:#ffe199; font:700 30px serif; text-shadow:0 0 13px rgba(255,226,153,.65); animation:musicNoteDrift 16s linear infinite; }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(1){ top:17%; animation-duration:13s; }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(1)::before{ content:"♪"; }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(2){ top:31%; animation-duration:19s; animation-delay:-8s; }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(2)::before{ content:"♫"; }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(3){ top:11%; animation-duration:23s; animation-delay:-14s; }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(3)::before{ content:"♩"; }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(4){ top:40%; animation-duration:17s; animation-delay:-5s; }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(4)::before{ content:"♬"; }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(5){ top:24%; animation-duration:20s; animation-delay:-11s; }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(5)::before{ content:"♪"; }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(6){ top:8%; animation-duration:26s; animation-delay:-18s; }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(6)::before{ content:"♫"; }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(7),
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(8) { display:none; }

@keyframes planetDrift { from{ transform:translateY(-3px) } to{ transform:translateY(5px) } }
@keyframes starcraftCruise { from{ transform:rotate(-11deg) translateX(-10px) } to{ transform:rotate(-4deg) translateX(14px) } }
@keyframes starcraftPatrol { 0%{ transform:translateX(-18px) rotate(8deg) scale(.82); opacity:0 } 12%{opacity:.95} 100%{ transform:translateX(calc(100vw + 120px)) rotate(-8deg) scale(.72); opacity:0 } }
@keyframes flashSpark { from{ opacity:.2; transform:scale(.72) } to{ opacity:1; transform:scale(1.1) } }

@media (prefers-reduced-motion:reduce) {
  .live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(-n+2),
  .live-sky[data-landscape-theme="spaceships"] .live-landscape-themed::after,
  .live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i,
  .live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(n+5),
  .live-sky[data-landscape-theme="music"] .live-landscape-themed i { animation:none !important; }
}

/* v4.4.1 · paisajes refinados y controles de color más intuitivos */

/* El balde de pintura queda legible sin competir con el control de tamaño. */
.note-color-button,.spark-color-button {
  display:grid;
  place-items:center;
  font-size:15px;
  line-height:1;
}
.widget-card[data-widget-type="spark"]:not(.is-minimized) .spark-tools,
.widget-card[data-widget-type="spark"]:not(.is-minimized) .spark-edit-row .spark-color-button {
  margin-right:30px;
}

/* El ala pertenece visualmente al papel, no a la barra de herramientas. */
.note-controls { overflow:visible; }
.note-wing {
  position:absolute;
  right:-35px;
  bottom:-2px;
  z-index:3;
  display:block;
  font-size:1.42rem;
  line-height:1;
  pointer-events:none;
  transform:rotate(-13deg);
  transform-origin:left center;
  filter:drop-shadow(0 4px 5px rgba(48,31,51,.24));
}

/* ESPACIO · más cuerpos celestes, con órbitas suaves. */
.live-sky[data-landscape-theme="space"] .live-landscape-themed {
  background:
    radial-gradient(circle at 68% 30%,rgba(118,83,210,.18),transparent 22%),
    radial-gradient(circle at 28% 68%,rgba(62,170,221,.12),transparent 20%),
    linear-gradient(180deg,#030716,#101843 64%,#040715);
}
.live-sky[data-landscape-theme="space"] .live-landscape-themed::before {
  right:9%;top:15%;width:19%;
  background:radial-gradient(circle at 31% 27%,#eef3ff 0 4%,#a7a4ea 18%,#4b4f9b 54%,#1d2257 75%);
  box-shadow:0 0 48px rgba(142,151,255,.42),0 0 0 1px rgba(255,255,255,.08);
  animation:spacePlanetFloat 14s ease-in-out infinite alternate;
}
.live-sky[data-landscape-theme="space"] .live-landscape-themed::after {
  left:8%;bottom:11%;width:31%;height:16%;
  border:2px solid rgba(155,224,255,.33);
  box-shadow:0 0 16px rgba(112,196,255,.14);
  animation:spaceOrbitDrift 18s linear infinite;
}
.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(1),
.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(2),
.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(3) {
  display:block;
  border-radius:50%;
  box-shadow:0 0 24px rgba(255,255,255,.18);
}
.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(1) {
  left:18%;top:20%;width:8%;height:auto;aspect-ratio:1;
  background:radial-gradient(circle at 33% 28%,#ffe6a8,#d77c50 44%,#6f314a 76%);
  animation:spaceSmallOrbitA 19s ease-in-out infinite alternate;
}
.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(1)::after {
  content:"";position:absolute;inset:38% -35%;border:2px solid rgba(255,218,157,.55);border-radius:50%;transform:rotate(-16deg);
}
.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(2) {
  left:47%;top:49%;width:5.8%;height:auto;aspect-ratio:1;
  background:radial-gradient(circle at 31% 25%,#c8fff0,#4ca7a3 49%,#174c65 78%);
  animation:spaceSmallOrbitB 16s ease-in-out infinite alternate;
}
.live-sky[data-landscape-theme="space"] .live-landscape-themed i:nth-child(3) {
  left:72%;top:65%;width:3.7%;height:auto;aspect-ratio:1;
  background:radial-gradient(circle at 35% 27%,#f7e8ff,#a773d0 48%,#4c2b73 78%);
  animation:spaceSmallOrbitC 12s ease-in-out infinite alternate;
}
@keyframes spacePlanetFloat { to{transform:translate3d(-7px,8px,0) rotate(2deg)} }
@keyframes spaceOrbitDrift { to{transform:rotate(347deg)} }
@keyframes spaceSmallOrbitA { to{transform:translate3d(18px,13px,0) rotate(8deg)} }
@keyframes spaceSmallOrbitB { to{transform:translate3d(-19px,-9px,0) scale(1.05)} }
@keyframes spaceSmallOrbitC { to{transform:translate3d(12px,-13px,0)} }

/* CASTILLO MÁGICO · lago y castillo reconocible, lejano y con torres. */
.live-sky[data-landscape-theme="castle"] .live-landscape-themed {
  background:
    radial-gradient(circle at 76% 17%,rgba(255,238,183,.32),transparent 12%),
    linear-gradient(180deg,rgba(71,63,107,.08),rgba(21,24,42,.1));
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed::before {
  left:-4%;right:-4%;bottom:0;height:47%;
  background:
    linear-gradient(180deg,transparent 0 45%,rgba(104,121,142,.18) 46% 51%,rgba(34,55,77,.82) 52% 100%),
    linear-gradient(180deg,#55556d,#22283b);
  clip-path:polygon(0 48%,10% 35%,20% 49%,31% 25%,43% 46%,54% 31%,66% 50%,78% 29%,89% 44%,100% 34%,100% 100%,0 100%);
  box-shadow:inset 0 -22px 34px rgba(0,0,0,.22);
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed::after {
  left:55%;bottom:26%;width:24%;height:31%;
  border-radius:0;
  background:linear-gradient(180deg,#202038,#101420);
  clip-path:polygon(
    0 100%,0 57%,7% 57%,7% 29%,13% 29%,13% 12%,18% 29%,26% 29%,26% 48%,34% 48%,34% 22%,40% 22%,40% 0,
    46% 18%,54% 18%,54% 41%,62% 41%,62% 24%,68% 24%,68% 8%,74% 25%,81% 25%,81% 54%,88% 54%,88% 34%,94% 34%,94% 20%,100% 39%,100% 100%
  );
  filter:drop-shadow(0 9px 8px rgba(0,0,0,.38));
  box-shadow:none;
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(-n+6) {
  display:block;bottom:31%;width:3px;height:8px;border-radius:3px;background:#ffe3a1;box-shadow:0 0 9px #ffd986;
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(1){left:58%}.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(2){left:61.5%}.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(3){left:65.5%}.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(4){left:69.5%}.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(5){left:73.5%}.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(6){left:77%}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(7) {
  display:block;left:45%;right:4%;bottom:4%;height:18%;border-radius:50%;
  background:linear-gradient(180deg,rgba(93,137,159,.45),rgba(24,53,76,.8));
  transform:perspective(280px) rotateX(67deg);
  box-shadow:inset 0 7px 12px rgba(255,255,255,.1),0 0 20px rgba(77,123,159,.18);
}

/* METRO SUBTERRÁNEO · líneas de tren paralelas y túnel sin la gran X. */
.live-sky[data-landscape-theme="metro"] .live-landscape-themed::after {
  left:18%;right:18%;bottom:0;height:49%;
  background:
    linear-gradient(90deg,transparent 0 27%,#c5a75f 27% 31%,transparent 31% 69%,#c5a75f 69% 73%,transparent 73%),
    repeating-linear-gradient(180deg,transparent 0 17px,rgba(215,224,228,.2) 17px 20px,transparent 20px 26px),
    linear-gradient(180deg,rgba(41,52,61,.15),rgba(8,12,17,.82));
  clip-path:polygon(43% 0,57% 0,100% 100%,0 100%);
  box-shadow:inset 0 -18px 28px rgba(0,0,0,.36);
}
.live-sky[data-landscape-theme="metro"] .live-landscape-themed i:nth-child(2),
.live-sky[data-landscape-theme="metro"] .live-landscape-themed i:nth-child(3) {
  display:block;bottom:6%;width:4px;height:43%;background:linear-gradient(180deg,#d7bd72,#8b7338);transform-origin:bottom;
}
.live-sky[data-landscape-theme="metro"] .live-landscape-themed i:nth-child(2){left:36%;transform:rotate(7deg)}
.live-sky[data-landscape-theme="metro"] .live-landscape-themed i:nth-child(3){right:36%;transform:rotate(-7deg)}

/* MUNDO DE LA LECTURA · plaza arbolada, árboles sobre el suelo y bancas. */
.live-sky[data-landscape-theme="reading"] .live-landscape-themed {
  background:linear-gradient(180deg,rgba(245,212,166,.08),rgba(78,94,73,.07));
}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed::before {
  left:-3%;right:-3%;bottom:0;height:47%;
  background:
    radial-gradient(ellipse at 50% 100%,#b89c72 0 18%,#8b7958 19% 24%,transparent 25%),
    linear-gradient(180deg,#6e8b66 0 43%,#45604b 44% 100%);
  clip-path:none;
  box-shadow:inset 0 12px 24px rgba(255,255,255,.07);
}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed::after {
  left:42%;right:42%;bottom:-2%;height:44%;
  border-radius:70% 70% 0 0;
  background:linear-gradient(180deg,#d9c59e,#8d7858);
  transform:perspective(260px) rotateX(54deg);
  box-shadow:0 0 16px rgba(211,188,147,.18);
}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i {
  display:none;
}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(-n+6) {
  display:block;bottom:20%;width:15px;height:64px;border-radius:8px;background:linear-gradient(90deg,#4f3629,#765440 55%,#3e3028);transform:none;opacity:1;
}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(-n+6)::before {
  content:"";position:absolute;left:50%;top:-46px;width:86px;height:70px;transform:translateX(-50%);border-radius:50%;
  background:radial-gradient(ellipse at 50% 34%,#75986b,#41684e 76%);
  box-shadow:-26px 20px 0 -13px #547a58,28px 18px 0 -15px #648961;
}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(1){left:7%;bottom:18%}.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(2){left:20%;bottom:25%;transform:scale(.82)}.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(3){left:33%;bottom:18%;transform:scale(.72)}.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(4){right:31%;bottom:20%;transform:scale(.74)}.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(5){right:18%;bottom:25%;transform:scale(.86)}.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(6){right:6%;bottom:18%}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(7),
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(8) {
  display:block;bottom:14%;width:72px;height:12px;border-radius:3px;background:#6e4935;box-shadow:0 7px 0 -3px #3a2b24,0 11px 0 -5px #2f241f;
}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(7){left:24%}.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(8){right:23%}

/* HANGAR DE NAVES · gran salida y naves de ópera espacial, sin cruces gigantes. */
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed {
  background:
    radial-gradient(circle at 50% 18%,rgba(86,184,224,.13),transparent 26%),
    linear-gradient(180deg,#07111d,#102637 60%,#071018);
}
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed::before {
  left:10%;right:10%;top:7%;bottom:13%;height:auto;border-radius:46% 46% 7px 7px;
  background:
    radial-gradient(ellipse at 50% 36%,#264b66 0 25%,#0c1b2a 48%,#020711 70%),
    linear-gradient(180deg,#263c4c,#0b151e);
  clip-path:none;
  border:11px solid #334b5b;
  box-shadow:inset 0 0 0 3px rgba(128,228,255,.13),0 0 32px rgba(0,0,0,.5);
}
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed::after {
  right:16%;top:27%;width:25%;height:11%;border-radius:0;
  background:linear-gradient(180deg,#d0dde1,#4b6874 63%,#263843);
  clip-path:polygon(0 42%,30% 33%,43% 0,54% 28%,100% 37%,82% 58%,58% 64%,44% 100%,31% 63%,8% 62%);
  transform:rotate(-6deg);
  box-shadow:none;
  filter:drop-shadow(0 9px 8px rgba(0,0,0,.38));
  animation:hangarShipGlideA 13s ease-in-out infinite alternate;
}
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i { display:none; }
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(1),
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(2) {
  display:block;width:19%;height:8%;border-radius:0;background:linear-gradient(180deg,#aabec7,#35505d);
  clip-path:polygon(0 50%,28% 34%,39% 6%,51% 34%,100% 48%,72% 61%,50% 67%,38% 100%,28% 67%,8% 65%);
  filter:drop-shadow(0 7px 7px rgba(0,0,0,.4));
}
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(1){left:12%;top:23%;animation:hangarShipGlideB 16s ease-in-out infinite alternate}
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(2){left:44%;top:17%;width:13%;height:6%;transform:scaleX(-1);animation:hangarShipGlideC 19s ease-in-out infinite alternate}
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(3),
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(4),
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(5),
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(6) {
  display:block;bottom:11%;width:7px;height:7px;border-radius:50%;background:#8ef5ff;box-shadow:0 0 11px #61dfee;animation:hangarBeacon 1.5s ease-in-out infinite alternate;
}
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(3){left:20%}.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(4){left:36%;animation-delay:.5s}.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(5){right:36%;animation-delay:1s}.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(6){right:20%;animation-delay:1.5s}
@keyframes hangarShipGlideA { to{transform:translate3d(-26px,10px,0) rotate(-2deg)} }
@keyframes hangarShipGlideB { to{transform:translate3d(38px,-12px,0) scale(.93)} }
@keyframes hangarShipGlideC { to{transform:translate3d(-28px,14px,0) scaleX(-1) scale(.9)} }

/* DISCOTECA · láseres y chispas, sin botones ni palabras. */
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(5),
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(6),
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(7),
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(8) {
  display:block;top:auto;width:8px;height:8px;border:0;border-radius:50%;font-size:0;letter-spacing:0;transform:none;
  background:#ff67d5;box-shadow:0 0 7px currentColor,18px -14px 0 -2px #61efff,-16px -23px 0 -2px #ffe170,25px 17px 0 -3px #9375ff;
  animation:discoSparkBlink 1.9s steps(2,end) infinite;
}
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(5)::before,
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(6)::before { content:none; }
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(5){left:13%;bottom:27%;color:#ff67d5}.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(6){right:14%;bottom:31%;color:#61efff;animation-delay:-.6s}.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(7){left:32%;bottom:15%;color:#ffe170;animation-delay:-1.1s}.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(8){right:33%;bottom:17%;color:#9375ff;animation-delay:-1.45s}
@keyframes discoSparkBlink { 0%,42%{opacity:.18;filter:brightness(.8);transform:scale(.72)} 43%,100%{opacity:1;filter:brightness(1.5);transform:scale(1.12)} }

/* MUNDO MUSICAL · rediseño completo: valle sonoro, arpa luminosa y ecos flotantes. */
.live-sky[data-landscape-theme="music"] .live-landscape-themed {
  background:
    radial-gradient(circle at 20% 22%,rgba(255,213,120,.24),transparent 18%),
    radial-gradient(circle at 80% 20%,rgba(113,224,255,.2),transparent 21%),
    linear-gradient(180deg,#23183e,#4a315e 56%,#20182f);
}
.live-sky[data-landscape-theme="music"] .live-landscape-themed::before {
  left:-4%;right:-4%;bottom:0;height:52%;
  background:
    repeating-radial-gradient(ellipse at 50% 110%,transparent 0 13px,rgba(255,225,150,.14) 14px 16px,transparent 17px 29px),
    linear-gradient(180deg,#66517a,#2c253e);
  clip-path:polygon(0 55%,11% 40%,22% 51%,34% 28%,47% 49%,60% 32%,74% 54%,87% 35%,100% 48%,100% 100%,0 100%);
  transform:none;border-radius:0;
  box-shadow:inset 0 13px 24px rgba(255,255,255,.04);
}
.live-sky[data-landscape-theme="music"] .live-landscape-themed::after {
  left:44%;top:17%;width:13%;height:31%;
  border:5px solid rgba(255,220,136,.85);border-bottom:0;border-right-width:7px;border-radius:52% 52% 0 0;
  background:repeating-linear-gradient(90deg,transparent 0 10px,rgba(255,240,184,.58) 10px 12px,transparent 12px 19px);
  box-shadow:0 0 31px rgba(255,218,129,.35),inset 0 0 18px rgba(255,240,184,.12);
  transform:rotate(-3deg);
}
.live-sky[data-landscape-theme="music"] .live-landscape-themed i { display:none; }
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(-n+5) {
  display:block;width:18px;height:18px;border-radius:50%;background:radial-gradient(circle,#fff9cf 0 22%,#f8bb65 23% 48%,transparent 52%);
  box-shadow:0 0 14px rgba(255,214,125,.65);animation:musicEchoFloat 9s ease-in-out infinite alternate;
}
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(-n+5)::after {
  content:"";position:absolute;left:13px;top:7px;width:36px;height:2px;border-radius:999px;background:linear-gradient(90deg,rgba(255,224,142,.72),transparent);
}
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(1){left:13%;top:27%}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(2){left:28%;top:15%;filter:hue-rotate(45deg);animation-delay:-2s}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(3){right:28%;top:22%;filter:hue-rotate(110deg);animation-delay:-4s}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(4){right:12%;top:34%;filter:hue-rotate(190deg);animation-delay:-6s}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(5){left:50%;top:8%;filter:hue-rotate(285deg);animation-delay:-3s}
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(6),
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(7),
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(8) {
  display:block;bottom:9%;height:18%;width:4px;border-radius:5px;background:linear-gradient(180deg,#e9d59d,#6f5d80);box-shadow:0 0 11px rgba(255,224,151,.24);
}
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(6){left:21%;transform:rotate(-7deg)}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(7){left:50%;height:24%;transform:translateX(-50%)}.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(8){right:21%;transform:rotate(7deg)}
@keyframes musicEchoFloat { to{transform:translate3d(16px,-14px,0) scale(1.12);opacity:.72} }

@media (prefers-reduced-motion:reduce) {
  .live-sky[data-landscape-theme="space"] .live-landscape-themed::before,
  .live-sky[data-landscape-theme="space"] .live-landscape-themed::after,
  .live-sky[data-landscape-theme="space"] .live-landscape-themed i,
  .live-sky[data-landscape-theme="spaceships"] .live-landscape-themed::after,
  .live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i,
  .live-sky[data-landscape-theme="disco"] .live-landscape-themed i,
  .live-sky[data-landscape-theme="music"] .live-landscape-themed i { animation:none !important; }
}

/* v4.4.2 · paisajes: castillo sobre roca, lectura en tierra, hangar vivo, parlantes y piano */

/* CASTILLO MÁGICO · fortaleza gótica sobre una gran roca, junto al lago. */
.live-sky[data-landscape-theme="castle"] .live-landscape-themed {
  background:
    radial-gradient(circle at 72% 20%,rgba(255,234,181,.12),transparent 20%),
    linear-gradient(180deg,rgba(34,31,58,.08),rgba(11,11,22,.2));
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed::before {
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:33%;
  z-index:0;
  background:
    linear-gradient(180deg,rgba(121,151,174,.82),rgba(61,84,112,.92) 42%,rgba(27,39,64,.98)),
    repeating-linear-gradient(172deg,transparent 0 13px,rgba(255,255,255,.08) 14px 15px,transparent 16px 27px);
  border-top:1px solid rgba(255,255,255,.16);
  box-shadow:inset 0 12px 24px rgba(255,255,255,.06);
  clip-path:none;
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed::after {
  content:"";
  position:absolute;
  left:36%;
  bottom:23%;
  width:52%;
  height:34%;
  z-index:1;
  background:
    linear-gradient(135deg,rgba(91,88,103,.9),rgba(38,38,53,.98) 54%,#1a1b29 100%);
  clip-path:polygon(2% 100%,8% 72%,15% 68%,20% 43%,29% 49%,36% 25%,45% 34%,53% 8%,60% 29%,70% 18%,78% 47%,88% 38%,97% 70%,100% 100%);
  filter:drop-shadow(0 18px 14px rgba(0,0,0,.42));
  box-shadow:none;
  transform:none;
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i {
  display:block;
  position:absolute;
  z-index:3;
  margin:0;
  background:linear-gradient(180deg,#2d2c3a,#13141f 74%);
  box-shadow:inset 2px 0 rgba(255,255,255,.035),0 9px 12px rgba(0,0,0,.3);
  transform:none;
  animation:none;
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(1) {
  left:54%;bottom:49%;width:16%;height:16%;
  clip-path:polygon(0 100%,0 19%,10% 19%,10% 5%,21% 5%,21% 19%,34% 19%,34% 5%,46% 5%,46% 19%,59% 19%,59% 5%,72% 5%,72% 19%,86% 19%,86% 5%,100% 5%,100% 100%);
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(2) {
  left:45%;bottom:49%;width:11%;height:11%;
  clip-path:polygon(0 100%,0 30%,50% 0,100% 30%,100% 100%);
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(3) {
  left:69%;bottom:49%;width:12%;height:12%;
  clip-path:polygon(0 100%,0 34%,48% 0,100% 34%,100% 100%);
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(4) {
  left:47%;bottom:50%;width:5%;height:24%;
  clip-path:polygon(8% 100%,8% 30%,0 30%,50% 0,100% 30%,92% 30%,92% 100%);
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(5) {
  left:59.5%;bottom:50%;width:6%;height:29%;
  clip-path:polygon(8% 100%,8% 28%,0 28%,50% 0,100% 28%,92% 28%,92% 100%);
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(6) {
  left:75%;bottom:50%;width:5.5%;height:22%;
  clip-path:polygon(8% 100%,8% 31%,0 31%,50% 0,100% 31%,92% 31%,92% 100%);
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(7) {
  left:52%;bottom:50%;width:4%;height:19%;
  clip-path:polygon(7% 100%,7% 32%,0 32%,50% 0,100% 32%,93% 32%,93% 100%);
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(8) {
  left:57%;bottom:56%;width:2px;height:7px;border-radius:2px;
  background:#ffd997;
  box-shadow:
    14px -1px 0 #ffd997,29px 2px 0 #ffd997,43px -2px 0 #ffd997,
    57px 3px 0 #ffd997,73px -1px 0 #ffd997,88px 2px 0 #ffd997,
    0 0 9px #ffd997,14px -1px 8px #ffd997,43px -2px 8px #ffd997,73px -1px 8px #ffd997;
}

/* MUNDO DE LA LECTURA · todos los árboles nacen desde la plaza. */
.live-sky[data-landscape-theme="reading"] .live-landscape-themed {
  background:linear-gradient(180deg,rgba(255,246,222,.05),rgba(139,111,82,.07));
}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed::before {
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;height:39%;
  background:
    radial-gradient(ellipse at 50% 116%,#c8aa79 0 19%,transparent 20%),
    linear-gradient(180deg,#88aa72,#557349 70%,#405d3c);
  clip-path:none;
}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed::after {
  content:"";
  position:absolute;
  left:42%;bottom:0;width:16%;height:38%;
  border-radius:50% 50% 0 0;
  background:linear-gradient(180deg,#d9c496,#a98c61);
  transform:perspective(260px) rotateX(58deg);
  transform-origin:50% 100%;
  box-shadow:0 -8px 18px rgba(255,239,198,.12);
}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i {
  display:block;
  position:absolute;
  transform-origin:50% 100%;
}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(-n+6) {
  bottom:15%;
  width:8px;
  height:34px;
  border-radius:5px 5px 2px 2px;
  background:linear-gradient(90deg,#503523,#795137 54%,#47301f);
  box-shadow:0 7px 8px rgba(0,0,0,.2);
}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(-n+6)::before {
  content:"";
  position:absolute;
  left:50%;top:-28px;
  width:48px;height:39px;
  transform:translateX(-50%);
  border-radius:51% 49% 47% 53%;
  background:radial-gradient(circle at 47% 36%,#96b980,#70975f 62%,#567d4e);
  box-shadow:-15px 10px 0 -7px #658d55,16px 8px 0 -8px #7da36a;
}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(-n+6)::after {
  content:"";
  position:absolute;
  left:50%;bottom:-5px;
  width:28px;height:7px;
  transform:translateX(-50%);
  border-radius:50%;
  background:rgba(36,55,33,.28);
}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(1){left:7%;transform:scale(1.08)}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(2){left:20%;transform:scale(.82)}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(3){left:33%;transform:scale(.7)}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(4){right:32%;transform:scale(.72)}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(5){right:18%;transform:scale(.9)}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(6){right:6%;transform:scale(1.05)}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(7),
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(8) {
  bottom:12%;
  width:76px;height:12px;
  border-radius:4px;
  background:#775139;
  box-shadow:0 7px 0 -3px #3d2d26,0 12px 0 -6px #30231f;
  transform:none;
}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(7){left:22%}
.live-sky[data-landscape-theme="reading"] .live-landscape-themed i:nth-child(8){right:21%}

/* HANGAR DE NAVES · entradas y salidas completas, no figuras estáticas. */
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed::after {
  left:-28%;right:auto;top:19%;width:23%;height:9%;
  transform:none;
  animation:hangarShipAcross 14s linear infinite;
  will-change:transform,opacity;
}
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(1),
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(2),
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(3) {
  display:block;
  position:absolute;
  left:-25%;
  opacity:0;
  will-change:transform,opacity;
}
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(1) {
  top:31%;width:17%;height:7%;
  animation:hangarShipAcross 18s linear infinite -5s;
}
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(2) {
  left:110%;top:14%;width:13%;height:5.5%;
  transform:scaleX(-1);
  animation:hangarShipReturn 21s linear infinite -12s;
}
.live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i:nth-child(3) {
  top:43%;width:9%;height:4%;
  animation:hangarShipAcrossLow 16s linear infinite -9s;
}
@keyframes hangarShipAcross {
  0%{transform:translate3d(0,12px,0) scale(.82);opacity:0}
  8%{opacity:.94}
  48%{transform:translate3d(64vw,-17px,0) scale(1)}
  92%{opacity:.94}
  100%{transform:translate3d(142vw,8px,0) scale(.78);opacity:0}
}
@keyframes hangarShipReturn {
  0%{transform:translate3d(0,-8px,0) scaleX(-1) scale(.72);opacity:0}
  9%{opacity:.9}
  48%{transform:translate3d(-65vw,16px,0) scaleX(-1) scale(.94)}
  91%{opacity:.9}
  100%{transform:translate3d(-144vw,-2px,0) scaleX(-1) scale(.7);opacity:0}
}
@keyframes hangarShipAcrossLow {
  0%{transform:translate3d(0,0,0) rotate(4deg) scale(.6);opacity:0}
  11%{opacity:.82}
  100%{transform:translate3d(145vw,-38px,0) rotate(-5deg) scale(.82);opacity:0}
}

/* DISCOTECA · parlantes a ambos costados y destellos al centro. */
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(5),
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(6) {
  display:block;
  top:38%;
  width:15px;height:15px;
  border-radius:50%;
  background:radial-gradient(circle,#fff 0 16%,currentColor 27%,transparent 69%);
  box-shadow:0 0 15px currentColor,20px -16px 0 -3px #67efff,-17px 17px 0 -4px #ffe36f;
  animation:discoSparkBlink 1.7s steps(2,end) infinite;
}
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(5){left:30%;color:#ff6fd7}
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(6){right:30%;color:#69edff;animation-delay:-.8s}
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(7),
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(8) {
  display:block;
  top:auto;
  bottom:7%;
  width:72px;
  height:132px;
  border:3px solid rgba(255,255,255,.08);
  border-radius:11px;
  background:
    radial-gradient(circle at 50% 27%,#18111f 0 11%,#6f4c85 12% 14%,#08070d 15% 22%,transparent 23%),
    radial-gradient(circle at 50% 67%,#18111f 0 20%,#6b4a81 21% 24%,#07060b 25% 36%,transparent 37%),
    linear-gradient(180deg,#30203a,#100b17);
  box-shadow:0 11px 18px rgba(0,0,0,.42),0 0 16px rgba(255,94,215,.16);
  transform:none;
  animation:speakerPulse 2.1s ease-in-out infinite alternate;
}
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(7){left:6%}
.live-sky[data-landscape-theme="disco"] .live-landscape-themed i:nth-child(8){right:6%;animation-delay:-1.05s}
@keyframes speakerPulse { to{filter:brightness(1.2);box-shadow:0 11px 18px rgba(0,0,0,.42),0 0 25px rgba(93,233,255,.25)} }

/* MUNDO MUSICAL · paisaje entero inspirado en un gran piano. */
.live-sky[data-landscape-theme="music"] .live-landscape-themed {
  background:
    radial-gradient(ellipse at 50% 17%,rgba(255,236,175,.24),transparent 28%),
    linear-gradient(180deg,#181126 0,#342044 48%,#160f20 100%);
}
.live-sky[data-landscape-theme="music"] .live-landscape-themed::before {
  content:"";
  position:absolute;
  left:50%;
  bottom:-30%;
  width:82%;
  height:108%;
  transform:translateX(-50%) perspective(620px) rotateX(57deg);
  transform-origin:50% 100%;
  border-radius:48% 48% 6% 6% / 15% 15% 5% 5%;
  clip-path:polygon(40% 0,60% 0,100% 100%,0 100%);
  background:
    repeating-linear-gradient(90deg,transparent 0 6.7%,#17131c 6.7% 9.4%,transparent 9.4% 13.5%),
    repeating-linear-gradient(180deg,#fff5dd 0 7.2%,#d7c6a7 7.2% 8.2%,#fff5dd 8.2% 15.4%);
  box-shadow:0 0 40px rgba(255,226,155,.22),inset 0 0 30px rgba(255,255,255,.08);
  z-index:1;
}
.live-sky[data-landscape-theme="music"] .live-landscape-themed::after {
  content:"";
  position:absolute;
  right:10%;
  top:18%;
  width:35%;
  height:39%;
  background:linear-gradient(145deg,#131018,#36263d 52%,#100d14);
  clip-path:polygon(8% 85%,0 36%,17% 11%,53% 0,93% 17%,100% 51%,76% 70%,53% 75%,37% 100%);
  filter:drop-shadow(0 15px 12px rgba(0,0,0,.44));
  transform:rotate(-5deg);
  z-index:0;
}
.live-sky[data-landscape-theme="music"] .live-landscape-themed i {
  display:block;
  position:absolute;
  animation:none;
}
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(1) {
  right:16%;top:17%;width:29%;height:4px;
  background:linear-gradient(90deg,#d4a957,#fff0b2 48%,#9b7136);
  transform:rotate(-5deg);
  box-shadow:0 0 16px rgba(255,220,139,.35);
}
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(2),
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(3),
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(4) {
  top:17%;right:21%;width:2px;height:33%;
  background:linear-gradient(180deg,#ffe8a2,rgba(255,226,143,.08));
  transform-origin:top;
  animation:pianoStringGlow 3.6s ease-in-out infinite alternate;
}
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(2){right:25%}
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(3){right:31%;height:29%;animation-delay:-1.2s}
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(4){right:37%;height:24%;animation-delay:-2.4s}
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(5),
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(6),
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(7),
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(8) {
  width:10px;height:10px;border-radius:50%;
  background:radial-gradient(circle,#fff5c7 0 22%,#f3b95f 24% 47%,transparent 51%);
  box-shadow:0 0 16px rgba(255,213,112,.7);
  animation:pianoFirefly 6s ease-in-out infinite alternate;
}
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(5){left:13%;top:22%}
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(6){left:25%;top:12%;animation-delay:-2s;filter:hue-rotate(55deg)}
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(7){left:67%;top:34%;animation-delay:-4s;filter:hue-rotate(130deg)}
.live-sky[data-landscape-theme="music"] .live-landscape-themed i:nth-child(8){right:8%;top:12%;animation-delay:-1s;filter:hue-rotate(220deg)}
@keyframes pianoStringGlow { to{opacity:.35;transform:translateX(2px)} }
@keyframes pianoFirefly { to{transform:translate3d(18px,-15px,0) scale(1.18);opacity:.55} }

@media (prefers-reduced-motion:reduce) {
  .live-sky[data-landscape-theme="spaceships"] .live-landscape-themed::after,
  .live-sky[data-landscape-theme="spaceships"] .live-landscape-themed i,
  .live-sky[data-landscape-theme="disco"] .live-landscape-themed i,
  .live-sky[data-landscape-theme="music"] .live-landscape-themed i { animation:none !important; }
}

/* v4.4.3 · Castillo asentado y montañas en el horizonte */
.live-sky[data-landscape-theme="castle"] .live-landscape-themed::after {
  transform:translateY(100px);
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(-n+7) {
  transform:translateY(100px);
}
/* Las luces viajan con el castillo. */
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(1)::after {
  content:"";
  position:absolute;
  left:20%;
  top:43%;
  width:2px;
  height:7px;
  border-radius:2px;
  background:#ffd997;
  box-shadow:
    17px -2px 0 #ffd997,
    34px 1px 0 #ffd997,
    51px -1px 0 #ffd997,
    68px 2px 0 #ffd997,
    0 0 8px #ffd997,
    34px 1px 8px #ffd997,
    68px 2px 8px #ffd997;
}
/* Cordillera lejana, apoyada justo detrás del lago y la roca. */
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(8) {
  left:-5%;
  right:auto;
  bottom:31%;
  width:110%;
  height:28%;
  z-index:0;
  border-radius:0;
  opacity:.72;
  background:linear-gradient(180deg,#575a73,#292d42 76%);
  clip-path:polygon(0 100%,0 77%,7% 53%,13% 70%,22% 27%,31% 69%,40% 42%,49% 74%,59% 25%,68% 62%,78% 35%,86% 68%,94% 46%,100% 73%,100% 100%);
  filter:drop-shadow(0 9px 11px rgba(8,9,17,.2));
  box-shadow:none;
  transform:none;
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(8)::before {
  content:"";
  position:absolute;
  inset:31% 0 0;
  background:linear-gradient(180deg,#6f7187,#34384c);
  opacity:.58;
  clip-path:polygon(0 100%,0 78%,10% 55%,18% 76%,29% 43%,39% 74%,51% 48%,63% 77%,74% 50%,84% 73%,93% 58%,100% 75%,100% 100%);
}


/* v4.4.4 · Castillo: roca elevada y cordillera más alta */
/* La fortaleza conserva su posición; solo la roca asciende para ocultar su base. */
.live-sky[data-landscape-theme="castle"] .live-landscape-themed::after {
  z-index:4;
  transform:translateY(34px);
}
/* La cordillera sube y gana altura sin tapar la fortaleza. */
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(8) {
  bottom:30%;
  height:43%;
  opacity:.78;
  clip-path:polygon(
    0 100%,0 82%,6% 57%,12% 75%,20% 19%,28% 70%,36% 37%,44% 77%,
    53% 13%,62% 63%,71% 29%,79% 71%,87% 39%,94% 66%,100% 44%,100% 100%
  );
}
.live-sky[data-landscape-theme="castle"] .live-landscape-themed i:nth-child(8)::before {
  inset:34% 0 0;
  clip-path:polygon(
    0 100%,0 82%,9% 59%,17% 78%,27% 39%,37% 73%,48% 48%,59% 79%,
    70% 43%,80% 75%,90% 53%,100% 76%,100% 100%
  );
}


/* v4.5.3 · color coherente y alitas vivas */
.note-wing {
  right:-22px;
  animation:noteWingFlutter 2.8s ease-in-out infinite;
  will-change:transform;
}
@keyframes noteWingFlutter {
  0%,100% { transform:translate3d(0,0,0) rotate(-13deg) scaleY(1); }
  45% { transform:translate3d(1px,-2px,0) rotate(-18deg) scaleY(.92); }
  65% { transform:translate3d(0,-1px,0) rotate(-9deg) scaleY(1.04); }
}
@media (prefers-reduced-motion:reduce) {
  .note-wing { animation:none !important; }
}


/* Libros secretos: antes del primer hallazgo son solo parte del decorado. */
.shelf-book.album-book-trigger.is-dormant,
.shelf-book.window-book-trigger.is-dormant {
  cursor:default;
  pointer-events:none;
  filter:none;
  opacity:1;
}
.shelf-book.album-book-trigger.is-dormant::after,
.shelf-book.window-book-trigger.is-dormant::after {
  content:"";
}
.shelf-book.album-book-trigger.is-unlocked::after { content:"✦"; }
.shelf-book.window-book-trigger.is-unlocked::after { content:"▦"; }


/* v4.5.6 · El contador no participa del flujo de la puerta. */
.door-status { position:relative; min-height:2.3em; }
.door-message { display:block; }
.door-countdown {
  position:absolute;
  left:calc(100% + 10px);
  top:0;
  width:max-content;
  white-space:nowrap;
  color:rgba(255,255,255,.86);
  font-variant-numeric:tabular-nums;
  text-shadow:0 2px 8px #000;
}
.magic-key.is-remote-key { cursor:pointer; }
