/* v5p7 (Патч 20): personal interface of Solution. html[data-sol=sith] (код 05) and html[data-sol=yan] (код 7007).
   Lite / potato: no blur, no looping animation (see the end of the file). */

/* ================= shared ================= */
.sol-gate{position:fixed;inset:0;z-index:9800;display:grid;place-items:center;background:rgba(0,0,0,.78);opacity:0;transition:opacity .25s;padding:16px}
.sol-gate.in{opacity:1}
.sg-box{width:360px;max-width:100%;padding:26px 24px 18px;background:#08080a;color:#eee;border:1px solid #3a3a40;text-align:center;font:15px/1.45 "Nunito",system-ui,sans-serif;
  clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px));box-shadow:0 0 0 1px rgba(255,255,255,.04),0 30px 80px rgba(0,0,0,.7)}
.sg-ic{display:flex;justify-content:center;gap:14px;margin-bottom:8px}.sg-ic svg{width:34px;height:34px}.sg-ic svg:first-child{color:#d21428}.sg-ic svg:last-child{color:#c7769a}
.sg-box h2{margin:0 0 6px;font:500 22px/1.2 "Oswald","Russo One",system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.sg-box p{margin:0 0 14px;color:#a9a9b2}
.sg-box input{width:100%;box-sizing:border-box;padding:12px;background:#000;border:1px solid #44444c;color:#fff;font:600 26px/1 "PT Mono",monospace;letter-spacing:.5em;text-align:center;outline:none}
.sg-box input:focus{border-color:#8a8a96;box-shadow:0 0 0 3px rgba(255,255,255,.08)}
.sg-err{min-height:20px;margin:6px 0;color:#ff5a6a;font-size:13px}
.sg-b{display:flex;gap:8px}.sg-b button{flex:1;padding:10px;border:1px solid #44444c;background:#16161a;color:#eee;font:600 14px "Nunito",system-ui,sans-serif;cursor:pointer}
.sg-b .sg-ok{background:#eee;color:#000;border-color:#eee}
.sg-box small{display:block;margin-top:12px;color:#6c6c76;font-size:11.5px}
.sg-box.bad{animation:sgShake .4s}
@keyframes sgShake{20%{transform:translateX(-8px)}40%{transform:translateX(7px)}60%{transform:translateX(-5px)}80%{transform:translateX(3px)}}

.sol-intro{position:fixed;inset:0;z-index:9900;overflow:hidden;cursor:pointer;opacity:0;transition:opacity .6s;display:grid;place-items:center;padding:20px}
.sol-intro.in{opacity:1}.sol-intro.out{opacity:0}
.si-bg,.si-vig{position:absolute;inset:0;pointer-events:none}
.si-skip{position:absolute;right:18px;bottom:18px;z-index:3;padding:9px 16px;background:rgba(0,0,0,.55);color:inherit;border:1px solid currentColor;font:600 13px "Nunito",system-ui,sans-serif;letter-spacing:.06em;cursor:pointer;opacity:.75}
.si-skip:hover{opacity:1}
.si-c,.si-page{position:relative;z-index:2;text-align:center}

.sol-amb{position:fixed;inset:0;pointer-events:none;z-index:1}
.sol-fx{position:fixed;inset:0;pointer-events:none;z-index:9500;overflow:hidden}
.sf-slash{position:absolute;inset:0;width:100%;height:100%}
.sf-slash path{fill:none;stroke-linecap:round;vector-effect:non-scaling-stroke}
.sf-slash{clip-path:inset(0 100% 0 0);animation:sfWipe .35s ease-out forwards}
.sf-yan .sf-slash{animation-duration:.3s;animation-delay:.15s}
.sf-sith .sf-slash.s2{animation-delay:.25s}
.sf-box{position:absolute;left:50%;top:70%;transform:translate(-50%,-50%);text-align:center;min-width:240px;max-width:calc(100vw - 32px);padding:12px 22px}
.sf-k{font-size:12px;letter-spacing:.2em;text-transform:uppercase;display:flex;align-items:center;justify-content:center;gap:6px}.sf-k svg{width:14px;height:14px}
.sf-v{font-size:52px;line-height:1.05}
.sf-l{font-size:15px}

.solbar button svg{width:16px;height:16px;vertical-align:-3px}
.solbar .pmb-n svg{width:18px;height:18px}
.dc-sol .dc-x svg{width:14px;height:14px;vertical-align:-2px}
.dc-sol .dc-ban{position:relative;height:96px;overflow:hidden}
.dcs-ban-art{position:absolute;inset:0;background-size:cover;background-position:center 30%}
.dcs-ban-sig,.dcs-ban-h{position:absolute;right:46px;top:14px;width:52px;height:52px}
.dcs-ban-sig svg,.dcs-ban-h svg{width:100%;height:100%}
.dc-sol .dc-bd span{display:inline-flex;align-items:center;gap:5px}.dc-sol .dc-bd svg{width:13px;height:13px}
.dcs-q{margin:2px 0 8px;padding:7px 10px}
.dc-sol .dc-mode{display:flex;align-items:center;justify-content:center;gap:8px}.dc-sol .dc-mode svg{width:16px;height:16px}
.dc-sol .dcs-off{margin-top:8px}

/* ================= 05: Тёмный Владыка (black and red only) ================= */
html[data-sol="sith"][data-theme][data-design]{--bg:#030101;--bg2:#080203;--panel:#0b0203;--panel2:#140406;--line:#4a0810;--text:#f1e4e4;--muted:#a77a7e;--gold:#e0142c;--gold2:#ff3346;--ember:#e0142c;--heal:#ff5566;--ok:#ff5566;--bad:#ff2a3c;--on-gold:#000;
  --shadow:0 0 0 1px rgba(224,20,44,.22),0 10px 30px rgba(0,0,0,.75);--glow:radial-gradient(900px 600px at 50% 120%,rgba(200,10,30,.20),transparent 60%);
  --head:"Oswald","Russo One",system-ui,sans-serif;--body:"Nunito",system-ui,sans-serif;--r:0px;--bw:1px;--fly:#ff2a3c;--star:#ff4050;color-scheme:dark}
html[data-sol="sith"] body{background:radial-gradient(1200px 700px at 50% 115%,rgba(170,0,20,.22),transparent 60%),radial-gradient(900px 500px at 50% -20%,rgba(120,0,12,.18),transparent 60%),#030101}
html[data-sol="sith"] .pill,html[data-sol="sith"] .jr,html[data-sol="sith"] .dbar,html[data-sol="sith"] .pv-panel,html[data-sol="sith"] .dm-side,html[data-sol="sith"] .mbox,html[data-sol="sith"] .rolltoast,html[data-sol="sith"] .ctxm,html[data-sol="sith"] .selp,html[data-sol="sith"] .mapsd,html[data-sol="sith"] .tbar{
  background-color:rgba(8,1,2,.94);background-image:linear-gradient(180deg,rgba(224,20,44,.07),transparent 40%);border-color:rgba(224,20,44,.5)!important;box-shadow:var(--shadow),inset 0 0 22px rgba(224,20,44,.06)}
html[data-sol="sith"] .mbox,html[data-sol="sith"] .rolltoast,html[data-sol="sith"] .ctxm,html[data-sol="sith"] .selp{clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));border-radius:0!important}
html[data-sol="sith"] .top{border-bottom:1px solid #e0142c!important;box-shadow:0 1px 0 rgba(255,60,80,.6),0 0 18px rgba(224,20,44,.55)}
html[data-sol="sith"] .jr,html[data-sol="sith"] .pv-panel,html[data-sol="sith"] .dm-side{border-top:2px solid #e0142c!important}
html[data-sol="sith"] .rolltoast .rt-v{color:#ff3346;text-shadow:0 0 18px rgba(255,30,50,.7)}
html[data-sol="sith"] h1,html[data-sol="sith"] h2,html[data-sol="sith"] .brand{letter-spacing:.04em}
html[data-sol="sith"] button.primary,html[data-sol="sith"] .btn.primary{background:#b00e22;color:#fff;border-color:#ff3346}
.sa-sith .sa-rail{position:absolute;top:0;bottom:0;width:2px;background:linear-gradient(180deg,transparent,#ff2238 20%,#ff2238 80%,transparent);box-shadow:0 0 12px 2px rgba(255,20,40,.55);opacity:.5;animation:saRail 4s ease-in-out infinite}
.sa-sith .sa-rail.l{left:0}.sa-sith .sa-rail.r{right:0;animation-delay:-2s}
@keyframes saRail{50%{opacity:.85}}
.sa-sith .sa-sig{position:absolute;right:22px;bottom:90px;width:150px;height:150px;color:#e0142c;opacity:.07}
.sa-sith .sa-sig svg{width:100%;height:100%}

/* intro */
.si-sith{background:#000;color:#f4e6e6}
.si-sith .si-bg{background:url(assets/sol/sith-legion.webp) center 30%/cover no-repeat;opacity:.55;transform:scale(1.08);animation:siZoom 12s ease-out forwards}
@keyframes siZoom{to{transform:scale(1)}}
.si-sith .si-vig{background:radial-gradient(ellipse at 50% 55%,transparent 20%,rgba(0,0,0,.92) 75%),linear-gradient(180deg,rgba(0,0,0,.6),transparent 30%,transparent 70%,rgba(0,0,0,.85))}
.si-sith .si-sig{position:absolute;left:50%;top:50%;width:min(70vmin,560px);height:min(70vmin,560px);transform:translate(-50%,-50%);color:#e0142c;opacity:0;animation:siSig 2.4s 2.6s ease-out forwards;pointer-events:none}
.si-sith .si-sig svg{width:100%;height:100%}
@keyframes siSig{to{opacity:.12}}
.si-blade{position:absolute;left:8%;right:8%;top:24%;height:14px;display:flex;align-items:center;z-index:2;pointer-events:none}
.sb-hilt{flex:0 0 74px;height:14px;background:linear-gradient(180deg,#5a5a5f,#1c1c1f 60%,#3a3a3e);border:1px solid #000;box-shadow:inset 6px 0 0 #111,inset -10px 0 0 #2a2a2e}
.sb-beam{flex:1;height:6px;border-radius:0 6px 6px 0;background:#fff3f4;box-shadow:0 0 6px 2px #ff2a3c,0 0 18px 6px rgba(255,20,40,.75),0 0 46px 14px rgba(200,0,20,.45);transform-origin:left center;transform:scaleX(0);animation:siBeam .7s .5s cubic-bezier(.2,.9,.2,1) forwards,siHum 2.6s 1.2s ease-in-out infinite}
@keyframes siBeam{to{transform:scaleX(1)}}
@keyframes siHum{50%{box-shadow:0 0 6px 2px #ff2a3c,0 0 22px 8px rgba(255,20,40,.85),0 0 56px 18px rgba(200,0,20,.5)}}
.si-sith .si-c{max-width:900px;margin-top:6vh}
.si-sith .si-k{font:500 clamp(11px,1.6vw,14px)/1 "PT Mono",monospace;letter-spacing:.35em;text-transform:uppercase;color:#ff4a5a;opacity:0;animation:siUp .8s 1.1s forwards}
.si-sith .si-t{margin:18px 0 10px;font-weight:500;font-family:"Oswald","Russo One",system-ui,sans-serif;text-transform:uppercase;line-height:1.02}
.si-sith .si-t span{display:block;opacity:0;animation:siUp 1s forwards}
.si-sith .si-t .l1{font-size:clamp(22px,3.6vw,38px);letter-spacing:.5em;color:#cbb;animation-delay:1.6s}
.si-sith .si-t .l2{font-size:clamp(38px,8vw,96px);letter-spacing:.06em;color:#fff;text-shadow:0 0 30px rgba(255,20,40,.55);animation-delay:2.8s}
.si-sith .si-t .l3{font-family:"Russo One","Oswald",system-ui,sans-serif;font-size:clamp(44px,10vw,124px);letter-spacing:.08em;color:#ff1f33;text-shadow:0 0 12px rgba(255,30,50,.9),0 0 50px rgba(220,0,20,.6);animation-delay:4s}
.si-sith .si-p{max-width:620px;margin:8px auto 0;font:400 clamp(14px,2vw,19px)/1.5 "Nunito",system-ui,sans-serif;color:#d9c4c4;opacity:0;animation:siUp 1s 5.6s forwards}
.si-sith .si-skip{color:#ff4a5a}
@keyframes siUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* dice */
.sf-sith .sf-slash .g{stroke:#ff1f33;stroke-width:16;opacity:.55;animation:sfFade 1.6s .5s forwards}
.sf-sith .sf-slash .c{stroke:#fff4f4;stroke-width:4;animation:sfFade 1.6s .5s forwards}
.sf-sith .sf-slash.s2 path{animation-delay:.75s}
.sf-sith::before{content:"";position:absolute;inset:0;box-shadow:inset 0 0 120px 30px rgba(200,0,20,.55);opacity:0;animation:sfEdge 1.8s ease-out}
.sf-sith .sf-box{background:rgba(5,0,1,.92);border:1px solid #e0142c;box-shadow:0 0 30px rgba(224,20,44,.45);color:#f4e6e6;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px));animation:sfBox 2.2s ease-out forwards}
.sf-sith .sf-k{color:#ff4a5a;font-family:"PT Mono",monospace}
.sf-sith .sf-v{font-family:"Russo One","Oswald",sans-serif;color:#ff1f33;text-shadow:0 0 16px rgba(255,20,40,.8)}
.sf-sith .sf-l{font-family:"Oswald","Nunito",sans-serif;letter-spacing:.04em}
.sf-sith.n20 .sf-v{font-size:68px}
@keyframes sfCut{to{stroke-dashoffset:0}}
@keyframes sfWipe{to{clip-path:inset(0 0 0 0)}}
@keyframes sfFade{to{opacity:0}}
@keyframes sfEdge{15%{opacity:1}100%{opacity:0}}
@keyframes sfBox{0%{opacity:0;transform:translate(-50%,-40%)}12%{opacity:1;transform:translate(-50%,-50%)}80%{opacity:1}100%{opacity:0}}

/* card */
.dcs-sith{background:#050101;box-shadow:0 0 0 1px #e0142c,0 0 40px rgba(224,20,44,.45),0 18px 50px rgba(0,0,0,.7);border-radius:0;clip-path:polygon(0 0,calc(100% - 20px) 0,100% 20px,100% 100%,20px 100%,0 calc(100% - 20px))}
.dcs-sith .dc-ban{background:#000}.dcs-sith .dcs-ban-art{background-image:url(assets/sol/sith-throne.webp);opacity:.85}
.dcs-sith .dcs-ban-sig{color:#ff1f33;filter:drop-shadow(0 0 8px rgba(255,20,40,.8))}
.dcs-sith .dc-avw{background:#050101;border-radius:0;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}
.dcs-sith .dc-av{border-radius:0;clip-path:polygon(50% 3%,97% 27%,97% 73%,50% 97%,3% 73%,3% 27%);filter:saturate(.6) contrast(1.1)}
.dcs-sith .dc-avw::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#ff1f33,#6a0010);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%,0 25%,3% 27%,3% 73%,50% 97%,97% 73%,97% 27%,50% 3%,3% 27%,0 25%);pointer-events:none}
.dcs-sith .dc-on{display:none}
.dcs-sith .dc-b{background:#050101;color:#f1e4e4}
.dcs-sith .dc-dn{font-family:"Oswald","Russo One",sans-serif;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:#fff}
.dcs-sith .dc-tag{color:#ff1f33}
.dcs-sith .dc-un,.dcs-sith .dc-h{color:#a77a7e}
.dcs-sith .dc-bd span{background:#160305;border:1px solid #5a0a14;border-radius:0;color:#ffd6da}.dcs-sith .dc-bd svg{color:#ff1f33}
.dcs-sith .dcs-q{border-left:3px solid #e0142c;background:#120204;color:#ff4a5a;font:500 15px "Oswald",sans-serif;letter-spacing:.2em;text-transform:uppercase}
.dcs-sith .dc-mode{background:#b00e22;border-radius:0;font-family:"Oswald","Nunito",sans-serif;letter-spacing:.05em}
.dcs-sith .dcs-off{background:#120204;border:1px solid #5a0a14;color:#d9a9ae}
.dcs-sith .dc-x{border-radius:0;background:rgba(0,0,0,.7);color:#ff4a5a}
.dcs-sith .dc-src{color:#6a4a4e}

/* bar */
.solbar.sb-sith{background:#050101;border-color:#e0142c;border-radius:0;box-shadow:0 0 18px rgba(224,20,44,.4);clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px))}
.solbar.sb-sith button{border-radius:0;color:#f1e4e4}.solbar.sb-sith .pmb-n{color:#ff3346;font-family:"Oswald",sans-serif;letter-spacing:.06em;text-transform:uppercase}
.solbar.sb-sith button.off{color:#7a5a5e}

/* ================= 7007: Только мой (dark diary, muted pink and crimson) ================= */
html[data-sol="yan"][data-theme][data-design]{--bg:#0d070a;--bg2:#130a0f;--panel:#170c12;--panel2:#21111a;--line:#4b2537;--text:#f0dde6;--muted:#a88596;--gold:#c9688f;--gold2:#dc8aab;--ember:#a8264a;--heal:#c9688f;--ok:#c9688f;--bad:#b3223f;--on-gold:#1a0710;
  --shadow:0 0 0 1px rgba(201,104,143,.16),0 10px 30px rgba(0,0,0,.6);--glow:radial-gradient(900px 600px at 0 110%,rgba(168,38,74,.16),transparent 60%);
  --head:"Comfortaa","Nunito",system-ui,sans-serif;--body:"Nunito",system-ui,sans-serif;--fly:#c9688f;--star:#dc8aab;color-scheme:dark}
html[data-sol="yan"] body{background:radial-gradient(1100px 700px at 100% -10%,rgba(201,104,143,.10),transparent 60%),radial-gradient(1000px 700px at -10% 110%,rgba(140,20,50,.16),transparent 60%),#0d070a}
html[data-sol="yan"] .pill,html[data-sol="yan"] .jr,html[data-sol="yan"] .dbar,html[data-sol="yan"] .pv-panel,html[data-sol="yan"] .dm-side,html[data-sol="yan"] .mbox,html[data-sol="yan"] .rolltoast,html[data-sol="yan"] .ctxm,html[data-sol="yan"] .selp,html[data-sol="yan"] .mapsd,html[data-sol="yan"] .tbar{
  background-color:rgba(23,12,18,.94);background-image:repeating-linear-gradient(180deg,transparent 0 27px,rgba(201,104,143,.07) 27px 28px);border-color:rgba(201,104,143,.42)!important;box-shadow:var(--shadow)}
html[data-sol="yan"] .mbox,html[data-sol="yan"] .rolltoast,html[data-sol="yan"] .selp{outline:1px dashed rgba(201,104,143,.35);outline-offset:-6px}
html[data-sol="yan"] .top{border-bottom:1px dashed rgba(201,104,143,.55)!important}
html[data-sol="yan"] .rolltoast .rt-v{color:#dc8aab}
.sa-yan .sa-kiyo{position:absolute;right:0;bottom:0;width:min(30vw,340px);height:min(62vh,480px);background:url(assets/sol/yan-kiyohime.webp) center bottom/contain no-repeat;opacity:.09;-webkit-mask-image:linear-gradient(90deg,transparent,#000 40%);mask-image:linear-gradient(90deg,transparent,#000 40%)}
.sa-yan .sa-h{position:absolute;width:calc(22px * var(--s,1));height:calc(22px * var(--s,1));color:#a8264a;opacity:.13;animation:saFloat 18s ease-in-out infinite}
.sa-yan .sa-h svg{width:100%;height:100%}
@keyframes saFloat{50%{transform:translateY(-22px) rotate(8deg)}}
.sa-gl{position:absolute;font:400 22px "Pangolin","Comfortaa",cursive;color:#c9688f;opacity:0;transition:opacity 1.2s;letter-spacing:.1em;text-shadow:2px 0 rgba(168,38,74,.6),-2px 0 rgba(80,150,170,.25)}
.sa-gl.on{opacity:.38;animation:glJit 2.6s steps(1) 1}
@keyframes glJit{0%{transform:none}20%{transform:translate(2px,-1px) skewX(-6deg)}22%{transform:none}60%{transform:translate(-2px,1px)}62%{transform:none}}

/* intro */
.si-yan{background:#0a0507;color:#ecd2dd}
.si-yan .si-bg{left:auto;width:min(70vh,100vw);background:url(assets/sol/yan-kiyohime.webp) right bottom/cover no-repeat;opacity:.45;-webkit-mask-image:linear-gradient(90deg,transparent,#000 55%);mask-image:linear-gradient(90deg,transparent,#000 55%)}
.si-yan .si-vig{background:radial-gradient(ellipse at 40% 50%,transparent 25%,rgba(10,5,7,.9) 80%)}
.si-page{width:min(560px,100%);padding:30px 32px 26px;text-align:left;background:#140a0f;background-image:repeating-linear-gradient(180deg,transparent 0 33px,rgba(201,104,143,.12) 33px 34px);border:1px solid #4b2537;border-left:4px double #a8264a;box-shadow:0 30px 80px rgba(0,0,0,.6);transform:rotate(-1deg)}
.si-yan .si-k{font:400 12px "PT Mono",monospace;letter-spacing:.25em;text-transform:uppercase;color:#a88596;margin-bottom:12px}
.si-ln{margin:0;font:400 clamp(17px,2.6vw,23px)/34px "Pangolin","Comfortaa",cursive;color:#e6c3d2;opacity:0;clip-path:inset(0 100% 0 0);animation:siWrite 1.3s var(--d,0s) steps(28) forwards}
.si-ln:last-of-type{color:#dc8aab}
@keyframes siWrite{to{opacity:1;clip-path:inset(0 0 0 0)}}
.si-mine{position:relative;display:flex;align-items:center;justify-content:center;gap:14px;margin:22px 0 6px;opacity:0;animation:siUp 1s 6.8s forwards}
.si-heart{width:70px;height:70px;color:#a8264a;animation:siBeat 1.6s 7s ease-in-out infinite}.si-heart svg,.si-knife svg{width:100%;height:100%}
.si-knife{position:absolute;left:calc(50% - 120px);top:2px;width:40px;height:40px;color:#c9b6be;transform:rotate(-20deg)}
@keyframes siBeat{0%,100%{transform:scale(1)}15%{transform:scale(1.1)}30%{transform:scale(1)}45%{transform:scale(1.06)}}
.si-glitch{position:relative;font:400 clamp(40px,8vw,72px)/1 "Pangolin","Comfortaa",cursive;color:#dc8aab;letter-spacing:.06em}
.si-glitch::before,.si-glitch::after{content:attr(data-t);position:absolute;left:0;top:0;opacity:.45}
.si-glitch::before{color:#a8264a;transform:translate(3px,0);clip-path:inset(0 0 55% 0);animation:siG1 3.2s 7.4s steps(1) infinite}
.si-glitch::after{color:#5d8a94;transform:translate(-3px,0);clip-path:inset(60% 0 0 0);opacity:.25;animation:siG1 3.2s 8s steps(1) infinite reverse}
@keyframes siG1{0%{transform:translate(3px,0)}30%{transform:translate(-2px,1px)}31%{transform:translate(3px,0)}70%{transform:translate(1px,-1px)}}
.si-yan .si-p{margin:6px 0 0;text-align:center;font:400 16px "Comfortaa","Nunito",sans-serif;color:#a88596;opacity:0;animation:siUp 1s 8.2s forwards}
.si-hearts{position:absolute;inset:0;pointer-events:none;z-index:1}
.si-hearts i{position:absolute;bottom:-40px;width:calc(26px * var(--s,1));height:calc(26px * var(--s,1));color:#a8264a;opacity:.35;animation:siRise 9s linear infinite}
.si-hearts svg{width:100%;height:100%}
@keyframes siRise{to{transform:translateY(-115vh) rotate(25deg)}}
.si-yan .si-skip{color:#dc8aab;border-radius:999px}

/* dice */
.sf-yan .sf-hs{position:absolute;left:50%;top:50%}
.sf-yan .sf-hs i{position:absolute;left:-12px;top:-12px;width:calc(24px * var(--s,1));height:calc(24px * var(--s,1));color:#c9688f;opacity:0;animation:sfHeart 1.6s ease-out forwards}
.sf-yan .sf-hs i:nth-child(3n){color:#a8264a}
.sf-yan .sf-hs svg{width:100%;height:100%}
@keyframes sfHeart{0%{opacity:0;transform:translate(0,0) scale(.3)}15%{opacity:.9}100%{opacity:0;transform:translate(var(--x),var(--y)) scale(1)}}
.sf-yan .sf-slash .g{stroke:#a8264a;stroke-width:12;opacity:.45;animation:sfFade 1.4s .6s forwards}
.sf-yan .sf-slash .c{stroke:#f3d6e2;stroke-width:2.5;animation:sfFade 1.4s .6s forwards}
.sf-yan .sf-box{background:#170c12;border:1px solid #4b2537;border-left:4px double #a8264a;color:#f0dde6;border-radius:6px;box-shadow:0 14px 40px rgba(0,0,0,.55);animation:sfBox 2.2s ease-out forwards}
.sf-yan .sf-k{color:#a88596;font-family:"PT Mono",monospace}.sf-yan .sf-k svg{color:#c9b6be}
.sf-yan .sf-v{font-family:"Pangolin","Comfortaa",cursive;color:#dc8aab}
.sf-yan .sf-l{font-family:"Pangolin","Comfortaa",cursive;font-size:17px}
.sf-yan.n1 .sf-l{color:#d25a74}

/* card */
.dcs-yan{background:#140a0f;box-shadow:0 0 0 1px #4b2537,0 0 30px rgba(168,38,74,.3),0 18px 50px rgba(0,0,0,.6)}
.dcs-yan .dc-ban{background:#1d0d15}.dcs-yan .dcs-ban-art{background-image:url(assets/sol/yan-kiyohime.webp);background-position:center 20%;opacity:.8}
.dcs-yan .dcs-ban-h{color:#a8264a;opacity:.9}
.dcs-yan .dc-avw{background:#140a0f;box-shadow:0 0 0 2px #a8264a,0 0 0 4px #140a0f,0 0 0 5px rgba(201,104,143,.5)}
.dcs-yan .dc-on{background:#c9688f;border-color:#140a0f}
.dcs-yan .dc-b{background:#140a0f;color:#f0dde6}
.dcs-yan .dc-dn{font-family:"Comfortaa","Nunito",sans-serif;color:#f3d6e2}
.dcs-yan .dc-tag{color:#c9688f}
.dcs-yan .dc-un,.dcs-yan .dc-h{color:#a88596}
.dcs-yan .dc-bd span{background:#21111a;border:1px dashed #4b2537;color:#ecd2dd}.dcs-yan .dc-bd svg{color:#c9688f}
.dcs-yan .dcs-q{border-left:3px double #a8264a;background:#1d0d15;color:#dc8aab;font:400 18px "Pangolin","Comfortaa",cursive;letter-spacing:.08em}
.dcs-yan .dc-mode{background:#7d2343}
.dcs-yan .dcs-off{background:#21111a;border:1px solid #4b2537;color:#c9a5b6}
.dcs-yan .dc-x{color:#dc8aab}
.dcs-yan .dc-src{color:#6e5562}

/* bar */
.solbar.sb-yan{background:#140a0f;border-color:#4b2537;box-shadow:0 0 16px rgba(168,38,74,.25)}
.solbar.sb-yan button{color:#f0dde6}.solbar.sb-yan .pmb-n{color:#dc8aab;font-family:"Comfortaa",sans-serif}.solbar.sb-yan .pmb-n svg{color:#a8264a}
.solbar.sb-yan button.off{color:#7d6170}

/* ================= mobile ================= */
@media (max-width:640px){
  .si-blade{left:4%;right:4%;top:16%}.sb-hilt{flex-basis:46px}
  .si-page{padding:22px 18px 18px}.si-knife{left:calc(50% - 96px)}
  .si-skip{right:12px;bottom:12px}
  .sf-v{font-size:42px}.sf-sith.n20 .sf-v{font-size:54px}
  .sa-sith .sa-sig{width:96px;height:96px;bottom:140px}
  .sa-yan .sa-kiyo{width:46vw;height:40vh}
}

/* ================= lite / potato / reduced motion: no blur, no loops ================= */
html.lite .sol-amb *,html.potato .sol-amb *{animation:none!important}
html.lite .sa-gl,html.potato .sa-gl{display:none}
html.lite .sb-beam,html.potato .sb-beam{animation:siBeam .4s .3s forwards;box-shadow:0 0 6px 2px #ff2a3c,0 0 16px 4px rgba(255,20,40,.6)}
html.lite .si-sith .si-bg,html.potato .si-sith .si-bg{animation:none;transform:none}
html.lite .si-heart,html.potato .si-heart,html.lite .si-glitch::before,html.lite .si-glitch::after,html.potato .si-glitch::before,html.potato .si-glitch::after{animation:none}
html.lite .si-hearts,html.potato .si-hearts{display:none}
html.lite .sf-sith::before,html.potato .sf-sith::before{display:none}
html.lite .sf-slash .g,html.potato .sf-slash .g{display:none}
html.potato .sol-intro *{animation-duration:.01s!important;animation-delay:0s!important}
@media (prefers-reduced-motion:reduce){.sol-amb *,.si-hearts{animation:none!important}.sb-beam{animation:siBeam .01s forwards}.sol-intro *{animation-delay:0s!important;animation-duration:.01s!important}}

/* Патч 21: password window, radio */
.sg-pass .sg-box input{font:500 17px/1.2 "Nunito",system-ui,sans-serif;letter-spacing:.06em;text-align:left;padding:12px 14px}
.solbar .sb-st{display:flex;align-items:center;gap:7px;max-width:260px;text-align:left;min-width:0}
.solbar .sb-st>span{display:flex;flex-direction:column;min-width:0;line-height:1.15}
.solbar .sb-st b{font-size:11px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.solbar .sb-st i{font-style:normal;font-size:11.5px;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.solbar.sb-yan .sb-st b{color:#e89ab9}.solbar.sb-yan .sb-st svg{color:#c7769a}
@media (max-width:640px){.solbar .sb-st{max-width:190px}.solbar.sb-yan .pmb-n b{display:none}}
