.extra .modelvisual{height:230px;background:radial-gradient(ellipse at 80% 55%,#7232a9,#211130 80%)}.extraicon{position:absolute;right:35px;top:62px;font-size:90px;line-height:1;filter:drop-shadow(0 10px 15px #0005);rotate:12deg;animation:bob 4s infinite}.extra .modelcaption{font-size:25px;max-width:60%;top:86px}.extra .modelcaption b{font-size:29px}.extra .modelinfo small{max-width:340px}.scratchmodel .modelvisual{background:radial-gradient(ellipse at 80% 50%,#8f691f,#302119 80%)}.scratchmodel .extraicon{width:135px;height:95px;border-radius:12px;background:linear-gradient(120deg,#f7ddb0,#ad7c30,#ffe2a2);border:1px solid #fbe6bc;display:grid;place-items:center;font-size:55px;color:#70400a;top:93px}.mysterymodel .modelvisual{background:radial-gradient(ellipse at 80% 50%,#8f225d,#2f1034 80%)}.puzzlemodel .modelvisual{background:radial-gradient(ellipse at 80% 50%,#255886,#0e2335 80%)}.albummodel .modelvisual{background:radial-gradient(ellipse at 80% 50%,#875130,#291830 80%)}.groupmodel .modelvisual{background:radial-gradient(ellipse at 80% 50%,#386451,#102b28 80%)}dialog{width:calc(100% - 32px);max-width:900px;max-height:92dvh;overflow-y:auto;background:radial-gradient(ellipse at top right,#44204e66,transparent 55%),#160d20;color:#fff1fd;border:1px solid #764287;border-radius:22px;padding:28px;box-shadow:0 25px 120px #0009}dialog::backdrop{background:#09030ddd;backdrop-filter:blur(8px)}.dialoghead{display:flex;align-items:center;justify-content:space-between;gap:10px}.dialoghead .btn{padding:8px 12px;font-size:11px}dialog h2{font-size:30px;line-height:1.15;letter-spacing:-1px;margin:24px 0 10px}dialog p{font-size:13px;color:#bda4cb;line-height:1.6}.dialognote{border-top:1px solid #4c2b58;padding-top:16px;margin-top:25px!important;font-size:10px!important}.experience{display:grid;grid-template-columns:1fr 1.1fr;gap:28px;margin-top:20px}.experience label{margin-top:12px}.experience input[type=text],.experience textarea{font:12px/1.6 Arial;padding:10px;width:100%;border-radius:8px}.experience textarea{min-height:75px}.experience .btn{margin-top:16px}.expstage{min-height:300px;border:1px solid #6f3678;border-radius:16px;background:radial-gradient(ellipse at top,#6f2a7855,#21102e);padding:25px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;overflow:hidden;min-width:0}.expstage h3{font-size:23px;line-height:1.25;letter-spacing:-.5px;overflow-wrap:anywhere}.expstage p{white-space:pre-wrap;overflow-wrap:anywhere}.scratchsurface{position:relative;width:100%;height:220px;border-radius:14px;overflow:hidden;background:linear-gradient(140deg,#511d64,#932e76);border:1px solid #e3a75b}.scratchsurface canvas{position:absolute;inset:0;touch-action:none;cursor:crosshair;width:100%;height:100%;transition:opacity .5s}.scratchsurface.revealed canvas{opacity:0;pointer-events:none}.scratchanswer{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:22px}.scratchanswer span{font-size:10px;color:#f7d0f5;letter-spacing:2px}.scratchanswer strong{font-size:25px;line-height:1.3;overflow-wrap:anywhere;margin:16px 0;color:#fff4d4}.smallhint{font-size:11px!important;color:#ddbdde!important;margin:14px 0 0}.mysterybox{background:linear-gradient(120deg,#63255c,#35173e);width:100%;border:1px solid #a55699;border-radius:12px;padding:15px;color:#f4c3ee;margin:6px 0;cursor:pointer;box-shadow:0 3px 12px #0002}.mysterybox:disabled{opacity:.45;cursor:default}.mysterybox.opened{background:#281434;color:white;border-color:#d98bcc}.finalgift{font-size:18px;line-height:1.4;font-weight:700;color:#ffe5be;animation:bob 5s infinite;overflow-wrap:anywhere}.puzzleboard{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;width:min(100%,340px);aspect-ratio:1}.puzzletile{position:relative;border:1px solid #f2b1ed33;border-radius:8px;background-size:300% 300%;background-repeat:no-repeat;cursor:pointer;aspect-ratio:1;min-width:0;box-shadow:inset 0 0 25px #0003}.puzzletile.empty{background:transparent!important;border:1px dashed #a56bb355}.puzzletile span{position:absolute;left:5px;top:4px;font-size:9px;color:white;background:#1c092a88;padding:1px 5px;border-radius:8px}.success{color:#ffcbef!important;font-size:14px!important}.albumframe{width:100%;aspect-ratio:1.15;position:relative;border-radius:12px;overflow:hidden;background:#341b40}.albumframe img{width:100%;height:100%;object-fit:cover;animation:slowzoom 8s ease-in-out infinite alternate}.albumframe .caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#10051dee);padding:35px 15px 18px;color:#fff;font-size:15px;white-space:pre-wrap;overflow-wrap:anywhere}.albumcontrols{display:flex;align-items:center;gap:10px;margin-top:12px}.albumcontrols .btn{margin:0;padding:8px 13px}.albumcontrols span{font-size:11px;color:#dbb5e8}.notewall{display:grid;gap:10px;width:100%;max-height:380px;overflow:auto;padding:4px}.groupnote{text-align:left;background:#ffffff08;border:1px solid #b777b555;border-radius:12px;padding:14px;position:relative}.groupnote b{color:#fb9fda;font-size:12px}.groupnote p{color:#f2dff6;margin:8px 0 0;font-size:13px;white-space:pre-wrap}.groupnote button{position:absolute;right:7px;top:7px;border:0;background:none;color:#cc99d8;cursor:pointer}.blanknote{font-size:12px;color:#bda3cc}.expbuttons{display:flex;flex-wrap:wrap;gap:8px}.expbuttons .btn{font-size:11px}.dialogstatus{min-height:20px;color:#ffd0ed!important;font-size:12px!important}@keyframes slowzoom{to{transform:scale(1.06)}}@media(max-width:650px){.extra .modelvisual{height:215px}.extra .modelcaption{top:80px;font-size:24px}.extra .modelcaption b{font-size:28px}.extraicon{right:24px;font-size:75px;top:83px}.scratchmodel .extraicon{right:20px;top:94px;width:110px;height:80px;font-size:42px}.extra .modelinfo small{font-size:10px;line-height:1.5}.experience{grid-template-columns:1fr;gap:18px}.expstage{padding:18px;min-height:270px}.expform{order:1}.expstage{order:2}dialog{padding:20px 17px;width:calc(100% - 20px);border-radius:16px}dialog h2{font-size:26px;margin-top:20px}.dialoghead .eyebrow{font-size:8px;letter-spacing:1px}.scratchsurface{height:200px}.puzzleboard{max-width:300px}.modelgrid .extra:last-child{grid-column:auto}}@media(prefers-reduced-motion:reduce){.albumframe img{animation:none}}
