
  #mt-oracle { color: #e7dac6; background: #101313; border: 1px solid #78634a; padding: 0; width: min(940px, calc(100% - 32px)); max-height: calc(100dvh - 32px); overflow: auto; border-radius: 4px; box-shadow: 0 30px 140px #000c; font-family: Georgia, serif; }
  #mt-oracle::backdrop { background: #040707dc; backdrop-filter: blur(9px); }
  #mt-oracle[open] { animation: mt-arrive .65s ease both; }
  #mt-oracle *, #mt-oracle *::before { box-sizing: border-box; }
  #mt-oracle [hidden] { display: none !important; }
  #mt-oracle button, #mt-oracle input { font: inherit; }
  #mt-oracle button { cursor: pointer; }
  #mt-oracle button:focus-visible, #mt-oracle input:focus-visible, #mt-oracle-launch:focus-visible { outline: 2px solid #e4c48d; outline-offset: 5px; }
  #mt-oracle .mt-close { position: absolute; right: 16px; top: 12px; z-index: 2; width: 40px; height: 40px; border: 1px solid #78634a70; background: #101313; color: #e7dac6; border-radius: 50%; font: 26px Arial; }
  #mt-oracle .mt-layout { display: grid; grid-template-columns: .85fr 1.15fr; min-height: 570px; }
  #mt-oracle .mt-art { display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 40px 30px; border-right: 1px solid #78634a60; background: radial-gradient(ellipse at center, #31443a55, transparent 65%), linear-gradient(145deg,#151d1b,#101111); }
  #mt-oracle .mt-overline { font: 10px/1.7 Arial, sans-serif; letter-spacing: .25em; text-transform: uppercase; color: #bca47f; margin: 0 0 18px; }
  #mt-oracle .mt-card { width: 224px; min-height: 340px; border: 1px solid #a88b59; padding: 24px 18px; text-align: center; position: relative; background: radial-gradient(ellipse at 50% 40%, #ab845c14, transparent 70%), #111816; display: flex; flex-direction: column; align-items: center; justify-content: space-between; box-shadow: 0 18px 45px #0007; }
  #mt-oracle .mt-card::before { content: ''; position: absolute; inset: 7px; border: 1px solid #a88b5945; pointer-events: none; }
  #mt-oracle .mt-card svg { width: 144px; height: 164px; stroke: #c4a46b; fill: none; stroke-width: 1.3; stroke-linecap: round; stroke-linejoin: round; }
  #mt-oracle .mt-card-label { font-size: 20px; line-height: 1.25; margin: 8px 0; }
  #mt-oracle .mt-card-note { font: 10px/1.5 Arial, sans-serif; letter-spacing: .14em; color: #b8a78f; text-transform: uppercase; }
  #mt-oracle .mt-art-caption { color: #a49680; font: italic 14px/1.6 Georgia, serif; text-align: center; max-width: 230px; margin: 25px 0 0; }
  #mt-oracle .mt-content { padding: 55px 42px 32px; align-self: center; }
  #mt-oracle h2 { font: 400 clamp(30px,4vw,42px)/1.08 Georgia, serif; letter-spacing: -.025em; margin: 0 0 18px; text-transform: none; color: #eee0ca; }
  #mt-oracle .mt-intro { font: 15px/1.7 Georgia, serif; color: #c5b9a7; margin: 0 0 24px; }
  #mt-oracle label { display: block; font: 11px/1.5 Arial, sans-serif; letter-spacing: .13em; text-transform: uppercase; margin-bottom: 9px; }
  #mt-oracle input { width: 100%; padding: 13px 14px; color: #eee0ca; background: #090e0d; border: 1px solid #78634a; border-radius: 2px; font: 17px Georgia, serif; }
  #mt-oracle input::placeholder { color: #938775; }
  #mt-oracle .mt-primary { padding: 14px 20px; width: 100%; border: 1px solid #c5aa7e; background: #c5aa7e; color: #101513; margin-top: 14px; border-radius: 2px; font: 11px/1.5 Arial, sans-serif; letter-spacing: .16em; text-transform: uppercase; transition: background .2s; }
  #mt-oracle .mt-primary:hover { background: #e0c79f; }
  #mt-oracle .mt-primary:disabled { opacity: .6; cursor: wait; }
  #mt-oracle .mt-subtle { display: block; border: 0; border-bottom: 1px solid #78634a90; padding: 4px 0; color: #c5b9a7; background: transparent; margin: 20px auto 0; font: 13px Georgia, serif; }
  #mt-oracle .mt-fine { color: #a89e8c; font: 11px/1.6 Arial, sans-serif; margin: 22px 0 0; }
  #mt-oracle .mt-nine { display: flex; justify-content: space-between; color: #9b8157; margin: 25px 0 0; font-size: 16px; letter-spacing: 2px; }
  #mt-oracle .mt-reading { font: 16px/1.8 Georgia, serif; color: #d7cbb8; margin: 0 0 20px; overflow-wrap: anywhere; }
  #mt-oracle .mt-question { border-left: 1px solid #a88b59; padding: 0 0 0 17px; font: italic 19px/1.5 Georgia, serif; margin: 22px 0; color: #eeddbf; }
  #mt-oracle .mt-word { font: 10px/1.8 Arial,sans-serif; letter-spacing: .13em; text-transform: uppercase; color: #a89e8c; }
  #mt-oracle .mt-word strong { display: block; font: 24px/1.5 Georgia,serif; letter-spacing: 0; text-transform: none; color: #d7b780; }
  #mt-oracle .mt-revealed { animation: mt-reveal .8s ease both; }
  #mt-oracle .mt-waiting { animation: mt-pulse .8s ease infinite alternate; }
  #mt-oracle-launch { position: fixed; bottom: 22px; left: 22px; z-index: 80; padding: 11px 17px; border: 1px solid #a88b5980; color: #e0cfb2; background: #101513ee; border-radius: 30px; cursor: pointer; font: 12px Georgia,serif; box-shadow: 0 5px 25px #0006; }
  @keyframes mt-arrive { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: translateY(0); } }
  @keyframes mt-reveal { from { opacity: .2; transform: perspective(700px) rotateY(-25deg) translateY(8px); } to { opacity: 1; transform: perspective(700px) rotateY(0) translateY(0); } }
  @keyframes mt-pulse { to { opacity: .4; transform: scale(.98); } }
  @media(max-width: 640px) {
    #mt-oracle .mt-layout { grid-template-columns: 1fr; min-height: 0; }
    #mt-oracle .mt-art { padding: 24px 20px 18px; border-right: 0; border-bottom: 1px solid #78634a60; }
    #mt-oracle .mt-art > .mt-overline, #mt-oracle .mt-art-caption { display: none; }
    #mt-oracle .mt-card { width: 155px; min-height: 205px; padding: 15px; }
    #mt-oracle .mt-card svg { width: 85px; height: 95px; }
    #mt-oracle .mt-card-label { font-size: 16px; }
    #mt-oracle .mt-card-note { font-size: 8px; }
    #mt-oracle .mt-content { padding: 24px; }
    #mt-oracle h2 { font-size: 30px; }
    #mt-oracle .mt-nine { margin-top: 18px; }
    #mt-oracle-launch { bottom: 12px; left: 12px; }
  }
  @media(prefers-reduced-motion: reduce) { #mt-oracle[open], #mt-oracle .mt-revealed, #mt-oracle .mt-waiting { animation: none; } }

  #mt-oracle .mt-oracle-sound { display:block; margin: -6px 0 20px; padding: 5px 0; color:#bca47f; background:transparent; border:0; border-bottom:1px solid #78634a60; font:11px Arial,sans-serif; }
  #mt-oracle.mt-has-reading .mt-oracle-sound { margin-left:auto; margin-right:auto; }
  /* Entrada discreta: ningún sello ni inventario visible antes del encuentro. */
  #mt-oracle { width: min(440px, calc(100% - 32px)); border-color: #78634a80; }
  #mt-oracle::backdrop { background: #040707a8; backdrop-filter: blur(4px); }
  #mt-oracle .mt-layout { display: block; min-height: 0; }
  #mt-oracle .mt-art { display: none; }
  #mt-oracle .mt-content { padding: 50px 32px 28px; }
  #mt-oracle .mt-content > .mt-overline { font-size: 9px; letter-spacing: .2em; }
  #mt-oracle h2 { font-size: 32px; }
  #mt-oracle .mt-intro { font-size: 15px; }
  #mt-oracle .mt-nine { display: none; }
  #mt-oracle .mt-optional { text-transform: none; letter-spacing: 0; color: #b3a48e; }
  #mt-oracle .mt-primary { background: transparent; color: #dfc69f; border-color: #9b815780; }
  #mt-oracle .mt-primary:hover { background: #c5aa7e15; }
  #mt-oracle .mt-fine { font-size: 11px; }
  #mt-oracle .mt-fine:empty { display: none; }
  #mt-oracle-launch { padding: 9px 13px; font-size: 11px; background: #101513d9; border-color: #78634a60; }
  #mt-oracle.mt-has-reading { width: min(560px, calc(100% - 32px)); }
  #mt-oracle.mt-has-reading .mt-art { display: flex; padding: 28px 24px 0; border: 0; background: none; }
  #mt-oracle.mt-has-reading .mt-art > .mt-overline, #mt-oracle.mt-has-reading .mt-art-caption { display: none; }
  #mt-oracle.mt-has-reading .mt-card { width: 100px; min-height: 124px; padding: 12px; border-color: #a88b5960; box-shadow: none; }
  #mt-oracle.mt-has-reading .mt-card svg { width: 78px; height: 98px; }
  #mt-oracle.mt-has-reading .mt-card-note, #mt-oracle.mt-has-reading .mt-card-label { display: none; }
  #mt-oracle.mt-has-reading .mt-content { padding-top: 24px; }
  #mt-oracle.mt-has-reading .mt-content > .mt-overline, #mt-oracle.mt-has-reading h2 { text-align: center; }
  @media(max-width: 640px) {
    #mt-oracle .mt-content { padding: 48px 24px 24px; }
    #mt-oracle.mt-has-reading .mt-art { padding-top: 24px; }
    #mt-oracle .mt-reading { font-size: 15px; line-height: 1.7; }
  }


  /* Entrada del umbral: trazos estáticos y una sola aparición, sin bucles. */
  #mt-oracle { background: #101513; border:1px solid #8b75514d; border-radius:3px; }
  #mt-oracle::backdrop { background:#040807d4; backdrop-filter:none; }
  #mt-oracle[open] { animation:mt-soft-entry 360ms ease-out both; }
  #mt-oracle:not(.mt-has-reading) .mt-content { padding:36px 36px 25px; text-align:center; }
  #mt-oracle:not(.mt-has-reading) .mt-content > .mt-overline { margin:0 0 12px; letter-spacing:.25em; font-size:9px; }
  #mt-oracle:not(.mt-has-reading) .mt-oracle-sound { margin:0 auto; padding:5px 2px; font-size:10px; border-bottom-color:#78634a40; }
  #mt-oracle .mt-threshold { color:#c7ab7c; width:106px; height:106px; margin:22px auto 18px; }
  #mt-oracle .mt-threshold svg { display:block; width:100%; height:100%; }
  #mt-oracle[open] .mt-threshold { animation:mt-mark-entry 480ms 60ms ease-out both; }
  #mt-oracle.mt-has-reading .mt-threshold { display:none; }
  #mt-oracle:not(.mt-has-reading) h2 { font:normal 35px/1.15 Georgia,serif; letter-spacing:-.03em; margin-bottom:8px; }
  #mt-oracle .mt-intro { color:#b5a58c; font:italic 16px/1.5 Georgia,serif; margin:0 0 26px; }
  #mt-oracle #mt-oracle-form { text-align:left; }
  #mt-oracle label { font-size:9px; color:#ad9d84; letter-spacing:.15em; }
  #mt-oracle input { background:#080e0b66; border-color:#8b75514d; border-radius:0; font-size:15px; }
  #mt-oracle #mt-oracle-submit { position:relative; background:#c5aa7e; color:#131812; border:1px solid #c5aa7e; font-size:10px; letter-spacing:.2em; margin-top:12px; min-height:46px; }
  #mt-oracle #mt-oracle-submit:hover { background:#dcc299; }
  #mt-oracle .mt-private-note { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
  #mt-oracle:not(.mt-has-reading) .mt-dismiss { font-size:12px; color:#b4a68e; margin-top:20px; border-bottom:0; }
  #mt-oracle .mt-oracle-motto { font:10px/1.5 Arial,sans-serif; color:#9e927e; text-align:center; margin-top:22px; }
  #mt-oracle .mt-waiting { animation:mt-mark-entry 450ms ease-out both; }
  #mt-oracle .mt-revealed { animation:mt-soft-entry 380ms ease-out both; }
  @keyframes mt-soft-entry { from {opacity:0;transform:translateY(7px);} to {opacity:1;transform:translateY(0);} }
  @keyframes mt-mark-entry { from {opacity:0;transform:scale(.96);} to {opacity:1;transform:scale(1);} }
  @media(max-width:640px) {
    #mt-oracle:not(.mt-has-reading) .mt-content { padding:36px 25px 24px; }
    #mt-oracle:not(.mt-has-reading) h2 { font-size:31px; }
    #mt-oracle .mt-threshold { width:90px; height:90px; margin:20px auto 16px; }
  }
  @media(prefers-reduced-motion:reduce) {
    #mt-oracle[open], #mt-oracle[open] .mt-threshold, #mt-oracle .mt-waiting, #mt-oracle .mt-revealed { animation:none; }
  }


  /* Marco ilustrado original y controles tenues de la colección. */
  #mt-oracle { background:linear-gradient(#080c0910,#080c0926),url("../publication/fondos/oracle-celestial.png") center center / cover no-repeat #080c09; border-color:#a6927d40; }
  #mt-oracle:not(.mt-has-reading) .mt-content { padding-top:40px; }
  #mt-oracle:not(.mt-has-reading) .mt-content > .mt-overline { font:normal 12px/1.6 Georgia,serif; letter-spacing:.34em; color:#c3b197; margin:0; }
  #mt-oracle .mt-threshold { width:160px; height:89px; margin:25px auto 21px; }
  #mt-oracle .mt-threshold img { display:block; width:100%; height:100%; object-fit:contain; opacity:.72; }
  #mt-oracle .mt-oracle-sound,
  #mt-oracle:not(.mt-has-reading) .mt-oracle-sound,
  #mt-oracle.mt-has-reading .mt-oracle-sound { position:absolute; left:12px; top:12px; margin:0; padding:11px; width:44px; height:44px; border:0; border-radius:50%; background:transparent; color:#b6a58b; display:flex; align-items:center; justify-content:center; }
  #mt-oracle .mt-oracle-sound:hover { color:#e0d0b5; background:#a6927d0d; }
  #mt-oracle .mt-sound-waves { display:none; }
  #mt-oracle .mt-oracle-sound[aria-pressed="true"] .mt-sound-waves { display:block; }
  #mt-oracle .mt-oracle-sound[aria-pressed="true"] .mt-sound-muted { display:none; }
  #mt-oracle .mt-primary, #mt-oracle #mt-oracle-submit { background:linear-gradient(135deg,#a6927d12,#0d151025); border:1px solid #a6927d50; color:#cbbbA5; box-shadow:inset 0 0 18px #a6927d04; }
  #mt-oracle .mt-primary:hover, #mt-oracle #mt-oracle-submit:hover { background:#a6927d1c; border-color:#a6927d80; color:#ded0b9; }
  #mt-oracle input { background:#060b0980; border-color:#a6927d40; color:#d8c9b7; }
  #mt-oracle input::placeholder { color:#aa9b85; }
  #mt-oracle button:focus-visible, #mt-oracle input:focus-visible { outline:1px solid #c5b39a; outline-offset:3px; }
  #mt-oracle .mt-close { background:transparent; border-color:#a6927d30; color:#c3b197; }
  #mt-oracle.mt-has-reading .mt-card { background:#0a110e80; }
  @media(max-width:640px) { #mt-oracle .mt-threshold { width:145px; height:81px; margin:25px auto 21px; } }

