/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}.resize{resize:both}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ink:#32273f}*{box-sizing:border-box}html,body{min-height:100%;margin:0;overflow:hidden}body{color:var(--ink);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;background:#e9e2f3;font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif}button{font:inherit}.game-shell{background:radial-gradient(circle at 20% 15%,#ffffffd9,#0000 30%),linear-gradient(145deg,#efe9f8,#dfd5eb);place-items:center;min-height:100svh;display:grid}.game-card{isolation:isolate;background:#fff8f4;width:min(100vw,430px);height:100svh;max-height:900px;position:relative;overflow:hidden}.game-canvas{touch-action:none;cursor:ew-resize;width:100%;height:100%;display:block}.hud{z-index:2;padding:max(18px, env(safe-area-inset-top)) 20px 12px;pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:absolute;top:0;left:0;right:0}.brand{letter-spacing:.05em;align-items:center;gap:8px;font-size:15px;font-weight:800;display:flex}.brand-dot{border:3px solid #ffffffe6;border-radius:50%;width:12px;height:12px;box-shadow:0 2px 7px #28183c2e}.scores{gap:8px;display:flex}.scores span{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-align:right;background:#ffffff94;border:1px solid #fffc;border-radius:15px;min-width:64px;padding:7px 11px;font-size:16px;font-weight:800;box-shadow:0 6px 20px #35274612}.scores small{color:#8a7e95;letter-spacing:.1em;margin-bottom:1px;font-size:9px;font-weight:700;display:block}.overlay{z-index:4;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-align:center;background:#f9f5faba;flex-direction:column;justify-content:center;align-items:center;padding:34px;display:flex;position:absolute;inset:0}.avatar-preview{color:#fff;border:6px solid #fff;border-radius:50%;place-items:center;width:84px;height:84px;margin-bottom:28px;font-size:34px;font-weight:900;display:grid;transform:rotate(-12deg);box-shadow:0 18px 40px #3d275333}.photo-avatar{background:#f4eaf2 url(/avatar.jpg) 50%/cover no-repeat}.eyebrow{color:#9a6eaa;letter-spacing:.18em;text-transform:uppercase;margin:0 0 10px;font-size:12px;font-weight:800}.intro h1{letter-spacing:-.055em;margin:0;font-size:clamp(34px,10vw,46px);line-height:1.1}.intro>p:not(.eyebrow){color:#716779;max-width:270px;margin:16px 0 28px;font-size:15px;line-height:1.7}.overlay button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:18px;width:min(250px,78vw);min-height:54px;font-weight:800;box-shadow:0 12px 24px #32273f33}.overlay button:active{transform:translateY(2px)scale(.99)}.tip{color:#9a919f;margin-top:16px;font-size:11px}.game-over{background:#f7f1f8d1}.game-over strong{letter-spacing:-.07em;margin:-2px 0 8px;font-size:78px;line-height:1}.game-over strong small{letter-spacing:0;margin-left:5px;font-size:20px}.game-over h2{margin:0 0 30px;font-size:21px}.drag-hint{z-index:2;bottom:max(18px, env(safe-area-inset-bottom));color:#897e91;letter-spacing:.06em;pointer-events:none;background:#ffffff8f;border:1px solid #ffffffbf;border-radius:999px;padding:9px 16px;font-size:11px;font-weight:700;animation:2.4s forwards hint;position:absolute;left:50%;transform:translate(-50%)}.event-toast{z-index:3;color:#fff;letter-spacing:.04em;pointer-events:none;background:#32273fdb;border:1px solid #ffffffe0;border-radius:999px;padding:9px 15px;font-size:12px;font-weight:800;animation:.2s ease-out toast-in;position:absolute;top:96px;left:50%;transform:translate(-50%);box-shadow:0 9px 24px #32273f2e}.floating-follow{z-index:3;right:14px;bottom:max(62px, calc(env(safe-area-inset-bottom) + 54px));cursor:grab;touch-action:none;background:#fff;border:3px solid #fffffff0;border-radius:50%;width:60px;height:60px;padding:0;position:absolute;overflow:hidden;box-shadow:0 10px 28px #462d363b}.floating-follow:active{cursor:grabbing;transform:scale(.97)}.floating-follow img{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block}.overlay .follow-cta{bottom:max(42px, calc(env(safe-area-inset-bottom) + 26px));width:auto;min-width:176px;min-height:48px;color:var(--ink);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe0;border:1px solid #ffffffe6;border-radius:999px;justify-content:flex-start;align-items:center;gap:11px;padding:6px 17px 6px 7px;font-size:14px;display:flex;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 10px 26px #442f4924}.overlay .follow-cta:active{transform:translate(-50%)translateY(2px)scale(.99)}.follow-cta img{object-fit:cover;border-radius:50%;width:36px;height:36px}.follow-cta span{white-space:nowrap}.follow-modal{z-index:12;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1c132194;place-items:center;padding:22px;display:grid;position:absolute;inset:0}.follow-panel{text-align:center;background:#fffaf7;border:1px solid #ffffffb8;border-radius:25px;width:min(100%,344px);padding:14px 14px 17px;position:relative;box-shadow:0 24px 70px #160e1d4d}.follow-card-image{object-fit:contain;border-radius:16px;width:100%;max-height:calc(100svh - 190px);display:block}.modal-close{z-index:1;color:#fff;cursor:pointer;background:#32273fc2;border:1px solid #ffffffa6;border-radius:50%;place-items:center;width:34px;height:34px;padding:0;font-size:25px;line-height:1;display:grid;position:absolute;top:21px;right:21px}.save-image{background:var(--ink);color:#fff;border-radius:16px;justify-content:center;align-items:center;width:100%;min-height:50px;margin-top:13px;font-size:15px;font-weight:800;text-decoration:none;display:flex}.follow-panel p{color:#8e8492;margin:10px 0 0;font-size:11px}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)translateY(-7px)scale(.96)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@keyframes hint{0%,60%{opacity:1;transform:translate(-50%)translateY(0)}to{opacity:0;transform:translate(-50%)translateY(8px)}}@media (min-width:500px){.game-card{border:8px solid #ffffffb3;border-radius:34px;height:min(92svh,860px);box-shadow:0 35px 90px #37234c33}}@media (prefers-reduced-motion:reduce){.drag-hint{animation:none}}
