:root{color-scheme:dark;--cream:#fff1df;--gold:#efce9c;--muted:#b9b6c7;--line:rgba(241,211,177,.21)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;color:var(--cream);font-family:'DM Sans',system-ui,sans-serif;background:radial-gradient(ellipse at 50% -10%,#514365 0,#1b1a31 36%,#0f1423 80%);padding-bottom:88px}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #ffd8a5;outline-offset:3px}.tw-header{height:67px;display:flex;justify-content:space-between;align-items:center;padding:0 max(20px,calc((100vw - 1180px)/2));border-bottom:1px solid var(--line);background:rgba(13,18,32,.6)}.tw-logo{text-decoration:none;display:flex;align-items:center;gap:9px;color:var(--gold);font-size:22px}.tw-logo span{font-size:17px;letter-spacing:.02em;color:var(--cream)}.tw-logo em{font-family:'Cormorant Garamond',serif;font-size:21px;color:var(--gold)}.tw-header nav{display:flex;gap:17px}.tw-header nav a{text-decoration:none;font-size:12px;color:#ddd1c7}.tw-header nav a:hover{text-decoration:underline}main{max-width:1230px;margin:auto;padding:0 22px}.tw-heading{text-align:center;padding:42px 0 29px}.tw-kicker{color:var(--gold);font-size:10px;font-weight:700;letter-spacing:.23em;text-transform:uppercase}.tw-heading h1,.tw-library h2,.tw-create-card h2{font-family:'Cormorant Garamond',serif;font-weight:600;line-height:1.05}.tw-heading h1{font-size:clamp(49px,7vw,88px);margin:7px 0 7px}.tw-heading em{font-weight:400;color:#e9c8a9}.tw-heading>p{font-size:14px;color:#c9c4ce;margin:12px auto;max-width:560px;line-height:1.65}.tw-pill{display:inline-flex;align-items:center;max-width:100%;margin-top:10px;padding:9px 15px;border-radius:30px;border:1px solid var(--line);background:rgba(245,215,183,.07);color:#e6d4c5;font-size:12px;line-height:1.5}.tw-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.8fr);gap:22px}.tw-scene-wrap{padding:8px;border:1px solid rgba(245,202,159,.29);background:linear-gradient(155deg,rgba(255,238,195,.08),rgba(255,255,255,.015));border-radius:25px;box-shadow:0 24px 56px #060c1a55}.tw-scene{position:relative;aspect-ratio:1.55/1;min-height:300px;border-radius:18px;overflow:hidden;background:radial-gradient(ellipse at 50% 45%,#77638c,#35395b 50%,#18243e);isolation:isolate}.tw-paint{position:absolute;inset:0;width:100%;height:100%;display:block}.tw-scene:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(to top,rgba(11,17,31,.75),transparent 34%);z-index:1}.tw-scene-caption{position:absolute;z-index:2;bottom:15px;left:15px;right:15px;text-align:center;text-shadow:0 2px 9px #100d1a}.tw-scene-caption span{font-size:10px;letter-spacing:.17em;color:#fff3cb;display:block}.tw-scene-caption strong{font-family:'Cormorant Garamond',serif;font-size:clamp(24px,3.3vw,41px);line-height:1.15;display:block}.tw-scene-caption small{font-size:11px;color:#f5e7da}.tw-world-meta{padding:16px 8px 15px;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font-size:11px;color:#b8b4c5}.tw-stage{display:inline-block;border:1px solid #ad947451;border-radius:40px;color:#f6d6aa;padding:7px 11px;font-size:11px}.tw-contributions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tw-contribution{min-width:0;padding:16px;border:1px solid var(--line);background:linear-gradient(150deg,rgba(62,57,79,.67),rgba(32,36,55,.82));border-radius:17px;line-height:1.48}.tw-contribution span{color:var(--gold);font-size:20px}.tw-contribution b{display:block;font-size:13px;margin:3px 0;color:#fff4e8}.tw-contribution p{margin:4px 0;color:#ddd7df;font-size:12px;overflow-wrap:anywhere;white-space:pre-wrap}.tw-contribution small{color:#c4a685;font-size:11px}.tw-contribution img{display:block;object-fit:cover;max-height:155px;width:100%;border-radius:11px;margin-top:8px}.tw-placeholder{opacity:.7;min-height:125px}.tw-actions{margin-top:14px}.tw-action-card{padding:17px;background:rgba(228,196,160,.07);border:1px solid var(--line);border-radius:16px}.tw-action-card h3{font:600 24px 'Cormorant Garamond',serif;margin:0 0 4px}.tw-action-card p{font-size:12px;color:var(--muted);line-height:1.5}.tw-action-card label{display:block;font-size:12px;font-weight:700;color:#e9d9ce;margin:12px 0 7px}.tw-action-card textarea{width:100%;min-height:80px}.tw-action-row{display:flex;flex-wrap:wrap;align-items:center;gap:9px}.tw-action-row .tw-primary{flex:1}.tw-create-card{border:1px solid rgba(243,207,160,.36);background:linear-gradient(150deg,#30273f,#201f35 56%,#1a243a);padding:23px;border-radius:23px;box-shadow:0 20px 45px #05071333}.tw-create-card h2{font-size:37px;margin:9px 0}.tw-card-top p{font-size:12px;line-height:1.65;color:#c9bec8;margin:0 0 14px}.tw-create-card form>label{display:block;font-weight:700;font-size:11px;color:#ecd7c7;margin:14px 0 6px}.tw-create-card input:not([type=file]),.tw-create-card textarea,.tw-action-card textarea{border:1px solid #8c7b874d;background:#191c2b;color:#fdf2e6;padding:12px 13px;border-radius:12px;outline-color:#f6d6a1;resize:vertical;width:100%;font-size:13px}.tw-create-card input[type=file]{width:100%;font-size:11px;color:#d4c5c8;line-height:1.8}.tw-create-card input[type=file]::file-selector-button{border:1px solid #947854;display:inline-block;margin-right:10px;border-radius:10px;padding:8px;background:#473b4d;color:white}.tw-themes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.tw-themes button{min-width:0;border:1px solid #bca58d45;border-radius:12px;background:#24263a;color:#f6e1d1;padding:11px 4px;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:19px;transition:background .2s}.tw-themes button span{font-size:10px}.tw-themes button[aria-pressed=true]{border-color:#f5c995;background:#594961;box-shadow:inset 0 0 18px #eec39d24}.tw-primary,.tw-ghost{border:1px solid #f3d4a7a8;background:linear-gradient(115deg,#f3d7a5,#e9ad8e);color:#30253b;border-radius:12px;padding:12px 15px;font-weight:800;font-size:13px;text-decoration:none}.tw-primary:disabled{opacity:.5;cursor:wait}.tw-create-card .tw-primary{width:100%;margin-top:17px}.tw-ghost{background:transparent;color:#f3d6b8;padding:10px 12px;font-weight:600}.tw-hint{display:block;color:#a9a6b6;font-size:10px;line-height:1.5;margin-top:6px}.tw-form-help{color:#f6bd9e;font-size:12px;min-height:16px;line-height:1.5}.tw-info{margin-top:15px;padding:22px;border-radius:19px;border:1px solid var(--line);background:#171f31b5}.tw-info>span{font-size:10px;color:var(--gold);font-weight:700;letter-spacing:.18em}.tw-info p{font-size:12px;color:#d5ccd2;margin:13px 0}.tw-info p strong{color:#ebc7a0;padding-right:8px}.tw-info small{display:block;border-top:1px solid var(--line);padding-top:12px;color:#a7a4b4;font-size:11px;line-height:1.7}.tw-library{margin:45px 0}.tw-library-head{display:flex;align-items:end;justify-content:space-between;gap:15px}.tw-library h2{font-size:40px;margin:5px 0}.tw-library-head p{font-size:13px;color:#c3bdc9;line-height:1.5}.tw-filters{display:flex;gap:8px;margin:19px 0}.tw-filters button{font-size:12px;border:1px solid var(--line);border-radius:20px;background:transparent;color:#e8d3c4;padding:8px 16px}.tw-filters button.selected{background:#dfc4a4;color:#241e2b}.tw-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.tw-card{border:1px solid #f7d9b43b;border-radius:18px;padding:0;background:linear-gradient(150deg,#33304a,#1a2238);overflow:hidden;text-align:left;min-width:0;color:inherit}.tw-card[aria-current=true]{outline:2px solid #f9c99c;outline-offset:2px}.tw-card-art{display:grid;place-items:center;height:124px;font-size:49px;position:relative;overflow:hidden}.tw-card-art:before{content:'✦  ✧  ✦';position:absolute;top:12px;right:12px;font-size:12px;opacity:.7}.tw-card-art span{filter:drop-shadow(0 3px 14px #ffffff77)}.tw-card-copy{display:grid;gap:5px;padding:13px}.tw-card-copy strong{font-size:14px}.tw-card-copy span{font-size:11px;color:#d5c6cd}.tw-card-copy small{font-size:10px;color:#eac69d}.tw-empty{padding:27px;background:#202337;border:1px dashed #bfa37c5c;border-radius:17px;font-size:13px;color:#d9c3cd;grid-column:1/-1}.tw-footer{border-top:1px solid var(--line);padding:26px 0;display:flex;flex-wrap:wrap;gap:15px;font-size:12px;color:#d6c2cb}.tw-footer a{text-decoration:none}.tw-footer span{margin-left:auto;color:#ae9bac}.tw-svg-rain{stroke:#dceaff99;stroke-width:2;animation:twrain 2.7s linear infinite}.tw-svg-ember{animation:twfloat 4s ease-in-out infinite}.tw-svg-glow{animation:twglow 3.4s ease-in-out infinite;transform-origin:center}.tw-svg-shimmer{animation:twglow 5.2s ease-in-out infinite}.tw-paint .tw-spark-dot{animation:twglow 3.5s ease-in-out infinite}.tw-spark-dot:nth-child(3n){animation-delay:-1.6s}.tw-spark-dot:nth-child(4n){animation-delay:-2.6s}@keyframes twrain{0%{transform:translate(0,-25px);opacity:.1}30%{opacity:1}100%{transform:translate(-15px,60px);opacity:0}}@keyframes twfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes twglow{0%,100%{opacity:.45}50%{opacity:1}}@media(max-width:850px){.tw-layout{grid-template-columns:1fr}.tw-side{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tw-info{margin-top:0}.tw-library-grid{grid-template-columns:1fr 1fr}.tw-header{padding:0 15px}}@media(max-width:600px){main{padding:0 14px}.tw-heading{padding:25px 0 22px}.tw-heading h1{font-size:52px}.tw-header nav{gap:10px}.tw-header nav a{font-size:11px}.tw-logo span{font-size:13px}.tw-logo em{font-size:16px}.tw-side{display:block}.tw-info{margin-top:12px}.tw-scene{min-height:255px}.tw-contributions{gap:8px}.tw-contribution{padding:12px}.tw-create-card{padding:17px}.tw-library-grid{grid-template-columns:1fr 1fr;gap:9px}.tw-card-art{height:95px}.tw-card-copy{padding:10px}.tw-card-copy strong{font-size:12px}.tw-footer span{width:100%;margin:0}.tw-world-meta{font-size:10px}}@media(prefers-reduced-motion:reduce){.tw-svg-rain,.tw-svg-ember,.tw-svg-glow,.tw-svg-shimmer,.tw-paint .tw-spark-dot{animation:none!important}}

/* Keep the artwork fluid on narrow phones; aspect-ratio must not impose a minimum column width. */
.tw-world-column,.tw-side,.tw-scene-wrap{min-width:0}
@media(max-width:600px){.tw-scene{min-height:0;aspect-ratio:1.5/1;width:100%}}
