.enci{--ink:#08070c;--violet:#24152e;--wine:#6e2948;--gold:#d8b36a;--paper:#f1e8d6;--line:rgba(218,186,125,.24);--muted:#c9becd;color:#f7f0e6;background:#09070d;border:1px solid rgba(216,179,106,.18);border-radius:26px;overflow:hidden;box-shadow:0 28px 80px rgba(0,0,0,.34);font-family:inherit;margin:1.5rem 0 2.5rem}
.enci *{box-sizing:border-box}
.enci button,.enci input{font:inherit}
.enci button{cursor:pointer}
.enci [hidden]{display:none!important}
.enci-kicker{display:block;color:#e6c475;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.enci-hero{position:relative;min-height:520px;display:flex;align-items:flex-end;isolation:isolate;background:#09070d}
.enci-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.enci-hero-veil{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(6,4,9,.95) 0%,rgba(7,5,10,.76) 41%,rgba(7,5,10,.15) 72%),linear-gradient(0deg,rgba(6,4,9,.88),transparent 48%)}
.enci-hero-copy{width:min(590px,65%);padding:clamp(2rem,6vw,4.5rem)}
.enci-hero h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.8rem,6vw,5.6rem);font-weight:400;line-height:.94;margin:.75rem 0 1rem;color:#fff8ee;text-wrap:balance}
.enci-hero-copy>p{font-size:clamp(1rem,1.8vw,1.2rem);line-height:1.65;color:#e1d8e3;margin:0;max-width:34rem}
.enci-hero-points{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.5rem}
.enci-hero-points span{border:1px solid rgba(230,196,117,.35);background:rgba(11,7,14,.56);border-radius:999px;padding:.46rem .75rem;color:#f2d998;font-size:.76rem;font-weight:700;letter-spacing:.04em;backdrop-filter:blur(8px)}
.enci-body{padding:clamp(1.2rem,4vw,3rem)}
.enci-intro{text-align:center;max-width:700px;margin:0 auto 1.8rem}
.enci-intro h2,.enci-form h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:#fff8ee;font-size:clamp(1.9rem,4vw,3rem);margin:.55rem 0 .65rem}
.enci-intro p,.enci-form>p{color:var(--muted);line-height:1.65;margin:0}
.enci-studio{max-width:920px;margin:auto}
.enci-stage{position:relative;width:min(100%,760px);aspect-ratio:1;margin:auto;border-radius:24px;padding:clamp(.65rem,2vw,1.2rem);background:radial-gradient(circle at 50% 35%,#37233c 0,#1a111f 46%,#0b080e 78%);border:1px solid var(--line);box-shadow:inset 0 0 75px rgba(0,0,0,.65),0 28px 65px rgba(0,0,0,.32);overflow:hidden}
.enci-stage:before{content:"";position:absolute;inset:0;opacity:.23;background-image:radial-gradient(circle at 18% 20%,#fff 0 1px,transparent 1.5px),radial-gradient(circle at 79% 62%,#fff 0 1px,transparent 1.5px);background-size:53px 47px,71px 67px;pointer-events:none}
.enci-paper{position:relative;width:100%;height:100%;background:radial-gradient(circle at 50% 42%,#fffaf0 0,#efe4ce 67%,#d6c5a8 100%);border-radius:8px;overflow:hidden;transform:rotate(0deg);transition:transform .65s cubic-bezier(.25,.8,.25,1),filter .35s;box-shadow:0 14px 34px rgba(0,0,0,.36),inset 0 0 50px rgba(113,80,39,.14)}
.enci-paper:before{content:"";position:absolute;inset:0;z-index:1;opacity:.22;pointer-events:none;background-image:repeating-linear-gradient(13deg,rgba(101,72,38,.08) 0 1px,transparent 1px 5px)}
.enci-paper-fold{position:absolute;z-index:3;left:50%;top:0;width:2px;height:100%;transform:translateX(-50%);background:linear-gradient(90deg,rgba(89,55,30,.2),rgba(255,255,255,.7),rgba(89,55,30,.14));box-shadow:0 0 10px rgba(93,57,32,.12);pointer-events:none}
.enci-paper canvas{display:block;width:100%;height:100%;position:relative;z-index:2;opacity:0;transition:opacity .55s}
.enci-ready .enci-paper canvas{opacity:1}
.enci-paper-shine{position:absolute;inset:0;z-index:4;pointer-events:none;background:linear-gradient(112deg,transparent 15%,rgba(255,255,255,.18) 47%,transparent 52%);mix-blend-mode:screen}
.enci-empty,.enci-making{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem;background:rgba(7,5,10,.22);backdrop-filter:blur(1px)}
.enci-empty strong{font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.35rem,3vw,2.15rem);color:#26172c;margin:.8rem 0 1.25rem;text-shadow:0 1px rgba(255,255,255,.5)}
.enci-drop{width:42px;height:55px;border-radius:60% 40% 58% 42%/70% 44% 56% 30%;transform:rotate(34deg);background:linear-gradient(145deg,#51304d,#09070c);box-shadow:0 7px 18px rgba(38,17,35,.4);animation:enci-float 2.7s ease-in-out infinite}
.enci-create,.enci-reveal{border:1px solid #e2bd6e;background:linear-gradient(135deg,#f0d58c,#c49242);color:#1a1016;border-radius:999px;padding:.9rem 1.35rem;font-weight:850;box-shadow:0 10px 24px rgba(103,65,14,.24);transition:transform .18s,filter .18s}
.enci-create:hover,.enci-reveal:hover{transform:translateY(-2px);filter:brightness(1.07)}
.enci-making{background:rgba(18,10,21,.76);color:#f9e8c5;backdrop-filter:blur(6px)}
.enci-making-mark{position:relative;width:96px;height:72px;margin-bottom:1rem}
.enci-making-mark:before,.enci-making-mark:after{content:"";position:absolute;top:0;width:46px;height:70px;background:radial-gradient(ellipse at 80% 50%,#0a080d 0 32%,#45203b 56%,transparent 60%);animation:enci-press 1.05s ease-in-out infinite alternate}
.enci-making-mark:before{left:1px}
.enci-making-mark:after{right:1px;transform:scaleX(-1)}
.enci-making p{margin:0;font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:1.05rem}
.enci-stage.enci-folding .enci-paper{animation:enci-fold 1.65s cubic-bezier(.65,0,.25,1) both}
.enci-turns{display:flex;align-items:center;justify-content:center;gap:1rem;margin:1rem auto 0}
.enci-turns p{min-width:180px;text-align:center;margin:0}
.enci-turns small{display:block;color:#a99cad;font-size:.65rem;letter-spacing:.14em;text-transform:uppercase}
.enci-turns strong{display:block;color:#f3db9d;margin-top:.18rem;font-size:.9rem}
.enci-turn{width:46px;height:46px;border-radius:50%;border:1px solid rgba(225,193,116,.42);background:#151019;color:#f1d186;font-size:1.45rem;transition:.18s}
.enci-turn:hover:not(:disabled){border-color:#e8c578;transform:translateY(-1px);background:#211627}
.enci-turn:disabled{opacity:.3;cursor:not-allowed}
.enci-form{max-width:760px;margin:2rem auto 0;text-align:center;padding:clamp(1.25rem,3vw,2rem);background:linear-gradient(135deg,rgba(48,29,45,.76),rgba(18,13,23,.94));border:1px solid var(--line);border-radius:20px}
.enci-form label{display:block;text-align:left;color:#f2d991;font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin:1.35rem 0 .5rem}
.enci-input-row{display:flex;gap:.65rem}
.enci-input-row input{min-width:0;flex:1;border:1px solid rgba(223,197,142,.28);background:#09070d;color:#fff7ec;border-radius:12px;padding:.92rem 1rem;outline:none}
.enci-input-row input:focus{border-color:#dfbc70;box-shadow:0 0 0 3px rgba(223,188,112,.12)}
.enci-input-row input::placeholder{color:#887f8b}
.enci-hint{display:block;text-align:left;color:#948a99;margin-top:.5rem;font-size:.75rem}
.enci-error{min-height:1.15em;color:#f0a7aa!important;font-size:.82rem;margin:.45rem 0 0!important;text-align:left}
.enci-result{max-width:920px;margin:2.5rem auto .5rem;background:linear-gradient(145deg,rgba(40,24,38,.95),rgba(10,8,13,.98) 60%);border:1px solid rgba(221,183,105,.3);border-radius:24px;padding:clamp(1.25rem,4vw,2.7rem);box-shadow:0 24px 60px rgba(0,0,0,.25)}
.enci-result-head{text-align:center;border-bottom:1px solid rgba(219,187,121,.16);padding-bottom:1.7rem;margin-bottom:1.4rem}
.enci-result-head>p{font-size:.72rem;text-transform:uppercase;letter-spacing:.13em;color:#aa9cac;margin:1rem 0 .2rem}
.enci-result-head h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.1rem,5vw,3.8rem);line-height:1.05;font-style:italic;font-weight:400;color:#fff7ec;margin:0;text-wrap:balance}
.enci-family-name{display:inline-block;margin-top:.8rem;padding:.42rem .75rem;border:1px solid rgba(219,183,105,.32);border-radius:999px;color:#e7c77e;font-size:.72rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.enci-result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}
.enci-reading{position:relative;background:rgba(5,5,9,.56);border:1px solid rgba(221,191,133,.14);border-radius:15px;padding:1.2rem;min-height:245px}
.enci-reading>span{position:absolute;right:1rem;top:.8rem;color:rgba(235,200,125,.2);font-family:Georgia,serif;font-size:2rem}
.enci-reading small,.enci-integrated small,.enci-closing small{display:block;color:#e4bf68;font-size:.66rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.7rem}
.enci-reading h3{font-family:Georgia,'Times New Roman',serif;color:#fff2df;font-size:1.2rem;font-weight:400;margin:0 2rem .65rem 0}
.enci-reading p,.enci-integrated p,.enci-gesture p{color:#d4cbd7;line-height:1.65;margin:0;font-size:.92rem}
.enci-integrated{margin-top:.8rem;border-left:2px solid #d7af5b;background:rgba(82,42,66,.22);padding:1.25rem 1.35rem;border-radius:4px 14px 14px 4px}
.enci-integrated p{color:#fff3e2;font-family:Georgia,'Times New Roman',serif;font-size:1.05rem}
.enci-closing{display:grid;grid-template-columns:1.2fr .8fr;gap:.75rem;margin-top:.8rem}
.enci-question,.enci-gesture{border:1px solid rgba(221,191,133,.16);border-radius:14px;padding:1.2rem;background:rgba(9,7,12,.5)}
.enci-question blockquote{margin:0;color:#f8e8c7;font-family:Georgia,'Times New Roman',serif;font-size:1.08rem;font-style:italic;line-height:1.55}
.enci-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:1.4rem}
.enci-actions button{border-radius:999px;padding:.75rem 1rem;border:1px solid rgba(225,192,118,.4);background:#161019;color:#edd18c;font-weight:750}
.enci-actions button:hover{background:#241728;border-color:#e4bd67}
.enci-actions span{margin-right:.4rem}
.enci-share-status{min-height:1.2em;text-align:center;color:#dbc88f;font-size:.8rem;margin:.75rem 0 0}
.enci-disclaimer{text-align:center;color:#776e7b;font-size:.7rem;margin:.5rem 0 0}
.enci-guide{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(1.5rem,4vw,3rem);padding:clamp(1.5rem,5vw,3.7rem);background:#0e0a11;border-top:1px solid rgba(219,187,121,.14)}
.enci-guide h3{font-family:Georgia,'Times New Roman',serif;color:#fff5e7;font-size:clamp(1.7rem,3vw,2.5rem);font-weight:400;margin:.5rem 0 .75rem}
.enci-guide>div>p{color:#bcb1c0;line-height:1.7;margin:0}
.enci-guide ol{list-style:none;margin:0;padding:0;display:grid;gap:.65rem}
.enci-guide li{display:flex;gap:.85rem;align-items:flex-start;border-bottom:1px solid rgba(221,191,133,.12);padding:0 0 .75rem}
.enci-guide li b{display:grid;place-items:center;width:32px;height:32px;flex:0 0 auto;border-radius:50%;border:1px solid rgba(225,190,111,.4);color:#dfbd6f;font-size:.75rem}
.enci-guide li strong{display:block;color:#f5ead9;margin-bottom:.18rem}
.enci-guide li small{display:block;color:#9f94a3;line-height:1.45}
@keyframes enci-float{50%{transform:rotate(34deg) translateY(-7px)}}
@keyframes enci-press{to{filter:blur(3px);transform:scale(.85)}}
@keyframes enci-fold{0%{transform:perspective(900px) rotateY(0deg) scale(1)}28%{transform:perspective(900px) rotateY(76deg) scale(.93)}52%{transform:perspective(900px) rotateY(88deg) scale(.9)}78%{transform:perspective(900px) rotateY(25deg) scale(.96)}100%{transform:perspective(900px) rotateY(0) scale(1)}}
@media(max-width:760px){
  .enci{border-radius:18px;margin:1rem 0 2rem}
  .enci-hero{min-height:500px;align-items:flex-end}
  .enci-hero>img{object-position:66% center}
  .enci-hero-veil{background:linear-gradient(0deg,rgba(6,4,9,.97) 0%,rgba(7,5,10,.78) 52%,rgba(7,5,10,.12) 100%)}
  .enci-hero-copy{width:100%;padding:2rem 1.25rem}
  .enci-hero h2{font-size:clamp(2.5rem,12vw,4.1rem)}
  .enci-body{padding:1rem}
  .enci-stage{border-radius:17px;padding:.55rem}
  .enci-input-row{flex-direction:column}
  .enci-reveal{width:100%}
  .enci-result-grid,.enci-closing,.enci-guide{grid-template-columns:1fr}
  .enci-reading{min-height:0}
  .enci-guide{padding:1.6rem 1.1rem}
}
@media(max-width:430px){
  .enci-hero-points{gap:.35rem}
  .enci-hero-points span{font-size:.67rem;padding:.4rem .56rem}
  .enci-empty{padding:1rem}
  .enci-create{padding:.76rem 1rem}
  .enci-turns{gap:.65rem}
  .enci-turns p{min-width:145px}
  .enci-turn{width:42px;height:42px}
  .enci-form,.enci-result{padding:1.05rem;border-radius:16px}
  .enci-actions{flex-direction:column}
  .enci-actions button{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .enci *{scroll-behavior:auto!important}
  .enci-drop,.enci-making-mark:before,.enci-making-mark:after,.enci-stage.enci-folding .enci-paper{animation:none!important}
  .enci-paper,.enci-paper canvas{transition:none!important}
}
