@font-face{font-family:Sin-pride;src:url(./sin-pride-B7_Paq45.woff2) format("woff2");font-display:block}@font-face{font-family:Sin-envy;src:url(./sin-envy-Bmu96Wxk.woff2) format("woff2");font-display:block}@font-face{font-family:Sin-wrath;src:url(./sin-wrath-BuySYWb2.woff2) format("woff2");font-display:block}@font-face{font-family:Sin-sloth;src:url(./sin-sloth-hzk2vkBy.woff2) format("woff2");font-display:block}@font-face{font-family:Sin-greed;src:url(./sin-greed-DApKvbiX.woff2) format("woff2");font-display:block}@font-face{font-family:Sin-gluttony;src:url(./sin-gluttony-BIzsqxnz.woff2) format("woff2");font-display:block}@font-face{font-family:Sin-lust;src:url(./sin-lust-30V-mYl4.woff2) format("woff2");font-display:block}@font-face{font-family:SinSerif;src:url(./serif-BiUYGgtS.woff2) format("woff2");font-weight:900;font-display:swap}@font-face{font-family:SinTitle;src:url(./title-C2YfUy_o.woff2) format("woff2");font-display:swap}:root{--sans: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", "Source Han Sans SC", "Helvetica Neue", Arial, sans-serif;--title: "SinTitle", "STKaiti", "KaiTi", serif;--bg: #f5f6f8;--panel: #ffffff;--side: #eceef3;--ink: #1d1f27;--ink-2: #5a5e6b;--ink-3: #9a9eab;--line: #e1e3ea;--accent: #4f46e5;--user-bubble: #e6e8f0;--ring-a: #6366f1;--ring-b: #a78bfa;--avatar-bg: #15151f;--eye-white: #eef0f6;--pupil: #1d1f27;--danger: #b4232c}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;overflow:hidden;background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;overscroll-behavior:none}button{font:inherit;color:inherit;border:0;background:none;padding:0;cursor:pointer}input{font:inherit}.app{position:fixed;top:0;left:0;right:0;height:100vh;height:var(--app-h, 100dvh);overflow:hidden}.icon-btn{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;color:var(--ink-2)}.icon-btn:active{background:#0000000f}.btn{height:44px;padding:0 20px;border-radius:999px;font-size:15px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:transform .15s,background .2s}.btn:active{transform:scale(.96)}.btn.primary{background:var(--ink);color:#fff}.btn.ghost{background:#0000000d}.toast{position:fixed;left:50%;top:calc(64px + env(safe-area-inset-top));transform:translate(-50%,-10px);background:#14141ce0;color:#fff;font-size:13px;padding:8px 14px;border-radius:999px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:100;white-space:nowrap;max-width:calc(100vw - 32px);overflow:hidden;text-overflow:ellipsis}.toast.show{opacity:1;transform:translate(-50%)}.dialog-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0a1073;display:grid;place-items:center;z-index:90;padding:16px;animation:fade-in .2s}.dialog{width:100%;max-width:360px;background:var(--panel);border-radius:20px;padding:22px 20px 18px;box-shadow:0 20px 60px #0003;animation:pop-in .25s cubic-bezier(.2,1.4,.4,1)}.dialog h3{margin:0 0 6px;font-size:18px}.dialog p{margin:0 0 14px;font-size:13px;color:var(--ink-2)}.dialog input{width:100%;height:46px;border-radius:12px;border:1px solid var(--line);padding:0 14px;font-size:16px;letter-spacing:1px;outline:none;background:var(--bg)}.dialog input:focus{border-color:var(--accent)}.dialog-error{color:var(--danger);font-size:13px;margin-top:8px}.dialog-actions{display:flex;gap:10px;margin-top:16px}.dialog-actions .btn{flex:1}.shake{animation:shake .4s}@keyframes shake{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:scale(.92)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.chat{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;background:var(--bg);overflow:hidden}.unease-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:radial-gradient(120% 70% at 50% 115%,rgba(150,10,20,.5),transparent 60%),radial-gradient(80% 60% at 0% 0%,rgba(120,0,20,.25),transparent 70%);opacity:calc((var(--u) - .2) * .55);transition:opacity 3s}.chat-main{position:relative;z-index:1;flex:1;min-width:0;display:flex;flex-direction:column}.topbar{flex:none;height:52px;padding:0 8px;padding-top:env(safe-area-inset-top);box-sizing:content-box;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:5}.model{position:absolute;left:50%;transform:translate(-50%)}.model-btn{display:flex;align-items:center;gap:4px;height:36px;padding:0 12px;border-radius:10px;font-weight:600;font-size:16px}.model-btn:active,.model-btn[aria-expanded=true]{background:#0000000d}.model-name{position:relative}.model-menu{position:absolute;top:44px;left:50%;transform:translate(-50%);width:272px;background:var(--panel);border:1px solid var(--line);border-radius:16px;box-shadow:0 16px 40px #14142824;padding:6px;animation:pop-in .18s ease-out}.model-menu-title{font-size:12px;color:var(--ink-3);padding:8px 10px 4px}.model-item{width:100%;display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;text-align:left;color:var(--ink-3);cursor:not-allowed}.model-item:hover{background:#00000008}.model-item.poked{animation:shake .35s}.model-dot{width:8px;height:8px;border-radius:50%;flex:none;opacity:.55}.model-item-text{flex:1;display:flex;flex-direction:column}.model-item-text b{font-size:14px;color:var(--ink-2);font-weight:600}.model-item-text small{font-size:12px}.model-menu-foot{border-top:1px solid var(--line);margin-top:4px;padding:9px 10px 6px;font-size:12px;color:var(--danger);text-align:center;letter-spacing:1px}.code-btn{display:flex;align-items:center;gap:5px;font-size:13px;color:var(--ink-2);height:34px;padding:0 10px;border-radius:999px;border:1px solid var(--line);background:var(--panel)}.code-btn svg{width:15px;height:15px}.sidebar{position:fixed;z-index:30;top:0;left:0;bottom:0;width:272px;max-width:82vw;background:var(--side);display:flex;flex-direction:column;padding:calc(8px + env(safe-area-inset-top)) 10px calc(10px + env(safe-area-inset-bottom));transform:translate(-100%);transition:transform .28s cubic-bezier(.3,.8,.3,1)}.sidebar.open{transform:none}.sidebar-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:29;background:#0000004d;opacity:0;pointer-events:none;transition:opacity .25s}.sidebar-mask.show{opacity:1;pointer-events:auto}.sidebar-head{display:flex;align-items:center;gap:8px;height:44px;padding:0 4px}.sidebar-brand{flex:1;font-weight:700;font-size:15px}.new-chat{display:flex;align-items:center;gap:8px;height:40px;padding:0 12px;margin:8px 0 12px;border-radius:12px;background:var(--panel);font-size:14px;border:1px solid var(--line)}.history{flex:1;overflow-y:auto}.history-title{font-size:12px;color:var(--ink-3);padding:12px 10px 4px}.history-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;font-size:14px;color:var(--ink-2);white-space:nowrap;overflow:hidden}.history-item svg{flex:none;opacity:.6}.history-item span{overflow:hidden;text-overflow:ellipsis}.history-item.active{background:#0000000f;color:var(--ink)}.sidebar-foot{display:flex;align-items:center;gap:10px;padding:10px 6px 0;border-top:1px solid var(--line)}.me{width:32px;height:32px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:14px;font-weight:600}.me-text{display:flex;flex-direction:column;font-size:13px}.me-text small{color:var(--ink-3);font-size:11px}@media(min-width:960px){.sidebar{position:relative;transform:none;max-width:none;transition:margin-left .28s cubic-bezier(.3,.8,.3,1);margin-left:-272px;flex:none;z-index:2}.sidebar.open{margin-left:0}.sidebar-mask{display:none}}.scroll{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.thread{max-width:760px;margin:0 auto;padding:12px 16px 24px;display:flex;flex-direction:column;gap:18px}.msg-ai{display:flex;gap:10px;align-items:flex-start;animation:rise .35s ease-out}.msg-ai .avatar{flex:none;margin-top:1px}.msg-ai-body{flex:1;min-width:0}.msg-ai-name{font-size:13px;font-weight:600;color:var(--ink-2);margin:5px 0 4px}.md{font-size:15.5px;line-height:1.75;word-break:break-word}.md p{margin:0 0 8px;white-space:pre-wrap}.md p:last-of-type{margin-bottom:0}.md ul,.md ol{margin:4px 0 8px;padding-left:1.3em}.md li{margin:2px 0}.md strong{font-weight:650}.md code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.9em;background:#4f46e514;color:#3730a3;padding:2px 6px;border-radius:6px}.md pre{background:#1d1f27;color:#e5e7ef;border-radius:12px;padding:12px 14px;overflow-x:auto;margin:6px 0 10px}.md pre code{background:none;color:inherit;padding:0}.caret{display:inline-block;width:7px;height:1.05em;vertical-align:-.15em;margin-left:2px;background:var(--ink);border-radius:2px;animation:caret .9s steps(2) infinite}.thinking{display:flex;align-items:center;gap:4px;height:27px;font-size:14px;color:var(--ink-3)}.thinking span{margin-right:2px;background:linear-gradient(90deg,var(--ink-3) 30%,var(--ink) 50%,var(--ink-3) 70%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmer 1.4s linear infinite}.thinking i{width:5px;height:5px;border-radius:50%;background:var(--ink-3);animation:bounce 1s infinite}.thinking i:nth-of-type(2){animation-delay:.15s}.thinking i:nth-of-type(3){animation-delay:.3s}.msg-actions{display:flex;gap:2px;margin-top:6px;margin-left:-6px;animation:fade-in .4s}.msg-actions button{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;color:var(--ink-3)}.msg-actions button:active{background:#0000000d}.msg-actions button.on{color:var(--accent)}.msg-user-row{display:flex;flex-direction:column;align-items:flex-end;gap:6px;animation:rise .3s ease-out}.msg-user{max-width:82%;background:var(--user-bubble);padding:9px 14px;border-radius:20px 20px 6px;font-size:15.5px;line-height:1.6;word-break:break-word}.msg-user.can-undo{cursor:pointer}.msg-user.can-undo:active{filter:brightness(.95)}.undo-pop{font-size:13px;background:var(--ink);color:#fff;padding:6px 12px;border-radius:999px;animation:pop-in .18s ease-out}.msg-time{align-self:center;font-size:12px;color:var(--ink-3);letter-spacing:1px}.msg-aside{align-self:center;max-width:88%;text-align:center;font-size:13px;color:var(--ink-3);line-height:1.6;animation:fade-in .6s}.dock{flex:none;position:relative;width:100%;max-width:760px;margin:0 auto;padding:6px 12px calc(6px + env(safe-area-inset-bottom))}.chips{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:2px 2px 10px}.chip{max-width:100%;text-align:left;font-size:14.5px;line-height:1.45;padding:9px 14px;border-radius:16px;background:var(--panel);border:1px solid var(--line);box-shadow:0 2px 6px #1414280a;animation:chip-in .35s cubic-bezier(.2,1.2,.4,1) backwards;transition:transform .12s,border-color .2s}.chip:active{transform:scale(.97);border-color:var(--accent)}@media(hover:hover){.chip:hover{border-color:#c7c9f5}}.composer{display:flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--line);border-radius:26px;padding:6px 6px 6px 18px;box-shadow:0 4px 18px #1414280f}.composer.editable{border-color:#c7c9f5;box-shadow:0 0 0 4px #4f46e514}.composer input{flex:1;min-width:0;height:36px;border:0;outline:none;background:transparent;font-size:16px;color:var(--ink)}.composer input::placeholder{color:var(--ink-3)}.send{width:36px;height:36px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;flex:none;transition:opacity .2s,transform .15s}.send:disabled{opacity:.18}.send:active{transform:scale(.9)}.disclaimer{font-size:11px;color:var(--ink-3);text-align:center;padding:6px 0 0}.progress{position:absolute;left:12px;right:12px;bottom:0;height:2px;transform-origin:left;background:linear-gradient(90deg,var(--ring-a),var(--danger));opacity:.35;transition:transform .6s}.avatar-lid{transition:transform .09s ease-in}.avatar-pupil{fill:var(--pupil);transition:fill .4s,r .4s}.chat.blink .avatar-lid{transform:translateY(14px)}.chat.stare .avatar-lid{transform:translateY(-9px);transition-duration:.25s}.chat.stare .avatar-pupil{fill:var(--danger)}.chat.stare .avatar-ring{stroke:var(--danger)}.chat.glitch .thread,.chat.glitch .dock{animation:glitch-shift .09s steps(2) infinite}.chat.glitch .md,.chat.glitch .msg-user{text-shadow:2px 0 rgba(255,0,40,.6),-2px 0 rgba(0,200,255,.6)}.chat.glitch .unease-layer{opacity:.6;transition:none}.chat.glitch .model-name:after{content:"Sin-?";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--bg);color:var(--danger)}@keyframes glitch-shift{0%{transform:translate(0);-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0)}33%{transform:translate(-4px,1px);-webkit-clip-path:inset(20% 0 30% 0);clip-path:inset(20% 0 30% 0)}66%{transform:translate(3px,-1px);-webkit-clip-path:inset(50% 0 10% 0);clip-path:inset(50% 0 10% 0)}to{transform:translate(0);-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0)}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}@keyframes chip-in{0%{opacity:0;transform:translateY(12px) scale(.96)}}@keyframes caret{50%{opacity:0}}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes bounce{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}.code-btn .short{display:none}@media(max-width:420px){.code-btn .full{display:none}.code-btn .short{display:inline}}.collapse-canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:50;pointer-events:none}.chat.collapsing .thread,.chat.collapsing .dock,.chat.collapsing .topbar{animation:tear .11s steps(3) infinite}.chat.collapsing .md,.chat.collapsing .msg-user{text-shadow:3px 0 rgba(255,0,40,.8),-3px 0 rgba(0,220,255,.8)}.chat.collapsing .unease-layer{opacity:.9;transition:none}.chat.collapsing:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.12) 0 2px,transparent 2px 4px);animation:scan .2s linear infinite}@keyframes tear{0%{transform:translate(0);-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0)}25%{transform:translate(-12px,2px) skew(4deg);-webkit-clip-path:inset(10% 0 55% 0);clip-path:inset(10% 0 55% 0)}50%{transform:translate(10px,-3px);-webkit-clip-path:inset(45% 0 20% 0);clip-path:inset(45% 0 20% 0)}75%{transform:translate(-6px) skew(-6deg);-webkit-clip-path:inset(70% 0 2% 0);clip-path:inset(70% 0 2% 0)}to{transform:translate(0);-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0)}}@keyframes scan{to{background-position:0 4px}}.result{--serif: "SinSerif", "Songti SC", "STSong", "Noto Serif CJK SC", "Source Han Serif SC", "SimSun", serif;position:absolute;top:0;right:0;bottom:0;left:0;background:#000;color:#fff;overflow:hidden}.scene-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.result-scroll{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.readonly-bar{position:sticky;top:0;z-index:5;height:0;display:flex;justify-content:center;overflow:visible}.readonly-bar span{margin-top:calc(12px + env(safe-area-inset-top));height:30px;padding:0 14px;display:inline-flex;align-items:center;border-radius:999px;font-size:12px;letter-spacing:1px;color:#ffffffd9;background:#00000073;border:1px solid rgba(255,255,255,.12);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.readonly-bar b{color:var(--a);margin:0 3px}.stage{position:relative;overflow:hidden;min-height:560px}.stage.shaking{animation:rshake .4s cubic-bezier(.36,.07,.19,.97)}.stage.shaking-hard{animation:rshake-hard .55s cubic-bezier(.36,.07,.19,.97)}@keyframes rshake{20%,80%{transform:translate(2px,-1px)}40%,60%{transform:translate(-4px,2px)}}@keyframes rshake-hard{10%,90%{transform:translate(-3px,2px) rotate(-.3deg)}20%,80%{transform:translate(6px,-3px) rotate(.4deg)}30%,50%,70%{transform:translate(-10px,4px) rotate(-.5deg)}40%,60%{transform:translate(10px,-3px) rotate(.5deg)}}.stage-demon{position:absolute;pointer-events:none;-webkit-mask-image:linear-gradient(to bottom,#000 58%,transparent 90%);mask-image:linear-gradient(to bottom,#000 58%,transparent 90%)}.stage-copy{position:absolute;left:0;right:0;bottom:max(86px,11vh);padding:0 18px;text-align:center}.landscape .stage-copy{left:7vw;right:auto;top:50%;bottom:auto;width:44vw;transform:translateY(-50%);text-align:left;padding:0}.whisper{font-size:12px;letter-spacing:.7em;margin-right:-.7em;color:var(--a);opacity:.85}.landscape .whisper{font-size:14px}.roar-line{font-family:var(--serif);font-weight:900;font-size:clamp(20px,5.8vw,36px);line-height:1.4;max-width:15em;margin:10px auto 0;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.9),0 0 30px rgba(0,0,0,.6);text-wrap:balance}.roar-line span{display:inline-block}.landscape .roar-line{font-size:clamp(26px,2.6vw,42px);margin-left:0}.kicker{margin-top:18px;font-size:12.5px;letter-spacing:.25em;color:#ffffff9e}.sin-name{margin:2px 0 0;font-family:var(--sin-font),var(--title);font-weight:400;font-size:clamp(100px,32vw,190px);line-height:1.08;display:flex;justify-content:center;gap:.02em;perspective:600px}.landscape .sin-name{justify-content:flex-start;font-size:clamp(120px,11vw,230px)}.sn-ch{position:relative;display:inline-block;will-change:transform,opacity}.latin{font-family:Georgia,Times New Roman,serif;font-size:15px;font-weight:700;letter-spacing:.55em;margin-right:-.55em;color:var(--a)}.latin small{display:block;margin-top:6px;font-size:10px;letter-spacing:.6em;color:#fff6}.scroll-cue{position:absolute;left:0;right:0;bottom:calc(14px + env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:center;gap:6px;font-size:11px;letter-spacing:.3em;color:#ffffff73}.scroll-cue i{width:1px;height:26px;background:linear-gradient(var(--a),transparent);animation:cue 1.8s ease-in-out infinite;transform-origin:top}@keyframes cue{0%{transform:scaleY(0);opacity:1}60%{transform:scaleY(1);opacity:1}to{transform:scaleY(1);opacity:0}}.sn-wrath .sn-ch{background:linear-gradient(180deg,#fff3c4,#ffb03a 28%,#ff3b1f 60%,#6e0000);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 10px rgba(255,59,47,.85)) drop-shadow(0 0 32px rgba(255,80,0,.5))}.sn-wrath.idle .sn-ch{animation:wr-flicker .16s steps(2) infinite alternate}@keyframes wr-flicker{to{filter:drop-shadow(0 0 16px rgba(255,110,40,1)) drop-shadow(0 0 40px rgba(255,120,0,.65)) brightness(1.18)}}.sn-pride .sn-ch{background:linear-gradient(105deg,#7a4c0e,#f9e7a6 20%,#c8902a 38%,#fff8dc 48%,#b07a1e 60%,#f3d27a,#6b420c);background-size:260% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 14px rgba(155,92,255,.75)) drop-shadow(0 3px 0 rgba(40,10,70,.8))}.sn-pride.idle .sn-ch{animation:pr-shine 4.5s linear infinite}@keyframes pr-shine{0%{background-position:100% 0}to{background-position:-160% 0}}.sn-envy .sn-ch{color:#8dff7a;text-shadow:0 0 10px rgba(61,220,132,.9),0 0 36px rgba(61,220,132,.55),0 0 80px rgba(20,120,60,.6)}.sn-envy.idle .sn-ch{animation:en-glitch 3.4s steps(1) infinite}.sn-envy.idle .sn-ch:nth-child(2){animation-delay:-1.3s}@keyframes en-glitch{0%,88%,to{transform:none;text-shadow:0 0 10px rgba(61,220,132,.9),0 0 36px rgba(61,220,132,.55),0 0 80px rgba(20,120,60,.6);-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0)}90%{transform:translate(-4px) skew(10deg);text-shadow:-4px 0 #ff2e9a,4px 0 #22e6ff;-webkit-clip-path:inset(10% 0 50% 0);clip-path:inset(10% 0 50% 0)}92%{transform:translate(5px,1px);-webkit-clip-path:inset(55% 0 0 0);clip-path:inset(55% 0 0 0)}94%{transform:translate(-2px) skew(-6deg);text-shadow:3px 0 #ff2e9a,-3px 0 #22e6ff;-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0)}}.sn-sloth .sn-ch{color:#d8e7f6;text-shadow:0 0 14px rgba(127,167,201,.9),0 0 50px rgba(127,167,201,.45)}.sn-sloth.idle .sn-ch{animation:sl-sag 7s ease-in-out infinite;transform-origin:50% 0}.sn-sloth.idle .sn-ch:nth-child(2){animation-delay:-2.5s}@keyframes sl-sag{0%,to{transform:none;filter:blur(0)}50%{transform:scaleY(1.07) translateY(3px) skew(-2deg);filter:blur(.6px)}}.sn-sloth.idle .sn-ch:after{content:"";position:absolute;left:46%;top:82%;width:.06em;height:.06em;border-radius:50%/30% 30% 70% 70%;background:#bcd6f0;box-shadow:0 0 8px #7fa7c9;animation:sl-drip 4.2s ease-in infinite}.sn-sloth.idle .sn-ch:nth-child(2):after{left:30%;animation-delay:-2s}@keyframes sl-drip{0%{transform:translateY(0) scale(.2);opacity:0}30%{transform:translateY(0) scaleY(1.4);opacity:1}80%{transform:translateY(.9em) scale(1);opacity:1}to{transform:translateY(1.2em) scale(.6);opacity:0}}.sn-greed .sn-ch{background:linear-gradient(180deg,#fffbe0,#ffe066 28%,#f5c518,#a8780a 72%,#fff1a8);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 4px 0 #5e4004) drop-shadow(0 0 22px rgba(245,197,24,.6))}.sn-greed.idle .sn-ch{animation:gr-glint 2.6s ease-in-out infinite}.sn-greed.idle .sn-ch:before{content:"✦";position:absolute;top:4%;right:2%;font-family:var(--sans);font-size:.2em;color:#fff;-webkit-text-fill-color:#fff;text-shadow:0 0 10px #fff,0 0 20px #f5c518;animation:twinkle 2.6s ease-in-out infinite}.sn-greed.idle .sn-ch:nth-child(2):before{top:60%;left:6%;right:auto;animation-delay:-1.3s}@keyframes gr-glint{50%{filter:drop-shadow(0 4px 0 #5e4004) drop-shadow(0 0 30px rgba(255,220,80,.85)) brightness(1.15)}}@keyframes twinkle{0%,to{transform:scale(0) rotate(0);opacity:0}50%{transform:scale(1.2) rotate(90deg);opacity:1}}.sn-gluttony .sn-ch{color:#ffa04a;text-shadow:0 6px 0 #7a3000,0 0 30px rgba(255,122,26,.65)}.sn-gluttony.idle .sn-ch{animation:gl-jelly 2.4s ease-in-out infinite}.sn-gluttony.idle .sn-ch:nth-child(2){animation-delay:-.6s}@keyframes gl-jelly{0%,to{transform:scale(1)}20%{transform:scale(1.08,.92)}40%{transform:scale(.95,1.06)}60%{transform:scale(1.03,.98)}}.sn-lust .sn-ch{color:#ffe0ec;text-shadow:0 0 6px #fff,0 0 16px #ff3d7f,0 0 40px #ff3d7f,0 0 80px rgba(255,61,127,.6)}.sn-lust.idle .sn-ch{animation:lu-beat 1.05s ease-out infinite}@keyframes lu-beat{0%{transform:scale(1)}12%{transform:scale(1.07)}24%{transform:scale(1)}36%{transform:scale(1.04)}60%,to{transform:scale(1)}}.dossier{position:relative;background:linear-gradient(to bottom,#0000,#000 140px);padding:80px 20px calc(30px + env(safe-area-inset-bottom))}.dossier>*{max-width:620px;margin-left:auto;margin-right:auto}.dz{border-top:1px solid rgba(255,255,255,.1);padding:26px 0 30px;opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.9,.3,1)}.dz.in{opacity:1;transform:none}.dz header{display:flex;align-items:baseline;gap:12px;margin-bottom:18px}.dz-no{font-family:Georgia,serif;font-style:italic;font-size:14px;color:var(--a)}.dz h2{margin:0;font-size:12px;font-weight:600;letter-spacing:.32em;color:#ffffff8c}.dz-tag{margin-left:auto;font-size:11px;letter-spacing:.15em;color:var(--a);border-color:var(--c);padding:3px 9px;border-radius:999px}.verdict{margin:0;font-family:var(--serif);font-weight:900;font-size:clamp(24px,7vw,36px);line-height:1.45;padding-left:16px;border-left:3px solid var(--c)}.dz-chart{display:grid;gap:18px}@media(min-width:640px){.dz-chart{grid-template-columns:1fr 1fr;align-items:center}}.radar{display:block;width:100%;max-width:320px;margin:0 auto;overflow:visible}.radar-label{font-size:17px}.radar-label.on{font-size:20px}.radar-num{font-size:11px;font-weight:700;fill:#ffffff73;font-variant-numeric:tabular-nums}.bars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.bars li{display:grid;grid-template-columns:56px 1fr 42px;align-items:center;gap:12px;opacity:.6}.bars li.on{opacity:1}.bars .sin-word{font-size:24px;line-height:1}.bar{height:3px;background:#ffffff14;border-radius:3px;overflow:hidden}.bars li.on .bar{height:6px}.bar i{display:block;height:100%;background:var(--bc);box-shadow:0 0 12px var(--bc);transform-origin:left}.bars em{font-style:normal;font-size:13px;font-weight:700;text-align:right;font-variant-numeric:tabular-nums}.desc{margin:0;font-size:16px;line-height:1.95;color:#ffffffdb}.replay{margin:0;display:flex;flex-direction:column;gap:10px}.rp-ai{align-self:flex-start;max-width:88%;font-size:14px;line-height:1.65;color:#ffffffb3;padding:10px 14px;border-radius:6px 18px 18px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08)}.rp-ai b{display:block;font-size:11px;letter-spacing:.2em;color:#fff6;margin-bottom:2px}.rp-aside{align-self:center;font-size:12px;color:#fff6}.rp-user{align-self:flex-end;max-width:82%;line-height:1.55;padding:10px 16px;border-radius:18px 18px 6px}.rp-ctx{font-size:14px;color:#fff9;background:#ffffff14}.rp-pick{font-size:18px;font-weight:600;color:#fff;background:var(--c);box-shadow:0 10px 40px -8px var(--c),0 0 0 1px #ffffff26 inset;text-shadow:0 1px 2px rgba(0,0,0,.3)}.replay figcaption{align-self:flex-end;font-size:12px;color:#ffffff73}.kin{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px}.kin-sub{grid-column:1 / -1;padding-bottom:18px;border-bottom:1px dashed rgba(255,255,255,.1)}.kin-item small{display:block;font-size:11px;letter-spacing:.2em;color:#ffffff73}.kin-name{display:inline-block;font-size:46px;line-height:1.2;margin-top:6px;text-shadow:0 0 24px currentColor}.kin-sub .kin-name{font-size:58px}.kin-demon{margin-left:8px;font-size:12px;color:#ffffff80;letter-spacing:.1em}.kin-item p{margin:6px 0 0;font-size:13.5px;line-height:1.65;color:#ffffffb8}.share-code{display:block;width:100%;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:15px;letter-spacing:1px;line-height:1.6;word-break:break-all;text-align:center;padding:14px;border-radius:14px;border:1px dashed rgba(255,255,255,.25);color:var(--a);transition:background .2s}.share-code:active{background:#ffffff0f}.share-tip{font-size:12px;color:#ffffff73;text-align:center;margin:10px 0 18px}.actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.actions .btn:first-child{grid-column:1 / -1}.result .btn.primary{background:var(--c);color:#fff;height:52px;font-size:16px;letter-spacing:.1em;text-shadow:0 1px 2px rgba(0,0,0,.35)}.result .btn.glow{box-shadow:0 10px 34px -8px var(--c),inset 0 1px #ffffff40}.result .btn.ghost{background:#ffffff12;border:1px solid rgba(255,255,255,.12);color:#fff}.result-foot{text-align:center;font-size:11px;color:#ffffff4d;padding:18px 0 0}.poster-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#000000db;display:grid;place-items:center;padding:16px;animation:fade-in .2s}.poster-box{position:relative;display:flex;flex-direction:column;align-items:center;gap:12px;max-height:100%}.poster-box img{display:block;max-width:min(100%,420px);max-height:calc(var(--app-h, 100vh) - 150px);border-radius:14px;box-shadow:0 20px 60px #0009,0 0 0 1px #ffffff14;-webkit-touch-callout:default;-webkit-user-select:auto;user-select:auto;animation:pop-in .35s cubic-bezier(.2,1.2,.4,1)}.poster-box p{margin:0;font-size:14px;color:#fffc}.poster-box a{text-decoration:none}.poster-close{position:absolute;top:-6px;right:-6px;width:34px;height:34px;border-radius:50%;background:#ffffff26;color:#fff;font-size:22px;line-height:1}.poster-loading{display:flex;flex-direction:column;align-items:center;gap:14px;color:#fffc;font-size:14px;padding:40px}.poster-loading span{width:34px;height:34px;border-radius:50%;border:3px solid rgba(255,255,255,.2);border-top-color:var(--c);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.demon{display:block;overflow:visible}.demon .dm-fill{fill:#070308}.demon path.dl{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0}.demon .dm-halo{stroke-width:9;opacity:.13}.demon .dm-line{stroke-width:2.2}.demon .dm-detail{stroke-width:1.1;opacity:.55}.demon .dm-glowhalo{stroke-width:9;opacity:.35}.demon .dm-glow{stroke-width:2.4}.demon .dm-eye{animation:dm-eye 2.6s ease-in-out infinite}@keyframes dm-eye{0%,to{opacity:1}50%{opacity:.75}}.dm-wrath-flame{animation:dm-flame .22s steps(2) infinite alternate}@keyframes dm-flame{0%{transform:scale(1) skew(0);opacity:.85}to{transform:scale(1.06,1.12) skew(-4deg);opacity:1}}.dm-wrath-jaw{transition:transform .12s cubic-bezier(.3,1.6,.5,1)}.demon.roar .dm-wrath-jaw{transform:rotate(-17deg)}.demon.roar .dm-eye{animation:none;transform-box:fill-box;transform-origin:center;filter:brightness(1.6)}.dm-pride-crown{animation:dm-float 4s ease-in-out infinite}.dm-pride-hair{animation:dm-sway 6s ease-in-out infinite}.dm-pride-wing{animation:dm-sway 8s ease-in-out infinite reverse}@keyframes dm-float{50%{transform:translateY(-4px)}}@keyframes dm-sway{0%,to{transform:rotate(0)}50%{transform:rotate(3deg)}}.dm-envy-tongue{animation:dm-tongue 3.2s ease-in-out infinite}@keyframes dm-tongue{0%,70%,to{transform:scaleX(0);opacity:0}76%,88%{transform:scaleX(1);opacity:1}80%{transform:scaleX(.75)}84%{transform:scaleX(1.05)}}.dm-envy-fin{animation:dm-fin 3s ease-in-out infinite}@keyframes dm-fin{50%{transform:rotate(-5deg) scale(1.04)}}.dm-envy-jaw{animation:dm-hiss 3.2s ease-in-out infinite}@keyframes dm-hiss{0%,68%,to{transform:rotate(0)}76%,88%{transform:rotate(7deg)}}.dm-sloth-drip{animation:dm-drip 4.5s ease-in infinite}@keyframes dm-drip{0%{transform:scaleY(.3);opacity:0}20%{opacity:1}80%{transform:scaleY(1.35);opacity:1}to{transform:scaleY(1.5) translateY(14px);opacity:0}}.dm-sloth .dm-eye{animation:dm-sleepy 7s ease-in-out infinite;transform-box:fill-box;transform-origin:center}@keyframes dm-sleepy{0%,60%,to{transform:scaleY(1)}70%,85%{transform:scaleY(.1)}}.dm-greed-coin{animation:dm-coin 1.6s linear infinite}@keyframes dm-coin{0%{transform:scaleX(1)}25%{transform:scaleX(.1)}50%{transform:scaleX(-1)}75%{transform:scaleX(.1)}to{transform:scaleX(1)}}.dm-greed .dm-hot{animation:dm-glint 2.4s ease-in-out infinite}@keyframes dm-glint{50%{filter:brightness(1.5)}}.dm-gluttony-antenna{animation:dm-sway 2.2s ease-in-out infinite}.dm-gluttony-mandible{animation:dm-chew .5s ease-in-out infinite alternate}@keyframes dm-chew{to{transform:rotate(9deg)}}.dm-gluttony-wing{animation:dm-buzz .06s linear infinite alternate}@keyframes dm-buzz{0%{transform:rotate(-4deg)}to{transform:rotate(4deg)}}.dm-lust-hair{animation:dm-sway 5s ease-in-out infinite}.dm-lust-heart{animation:dm-beat 1.05s ease-out infinite}@keyframes dm-beat{0%{transform:scale(1)}12%{transform:scale(1.18)}24%{transform:scale(1)}36%{transform:scale(1.1)}60%,to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.demon *{animation:none!important}}
