:root{--night:#142b30;--night-deep:#0d2126;--paper:#f4eee0;--paper-light:#faf6ed;--ink:#2d4038;--muted:#7b8175;--gold:#bea36b;--leaf:#52664f;--line:#dcd6c5;--wax:#8a5046;--serif:"Noto Serif SC", "Songti SC", STSong, serif;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif}*{box-sizing:border-box}html,body{overscroll-behavior-y:none;min-width:280px;height:100%;margin:0}body{font-family:var(--sans);color:var(--ink);background:var(--night-deep);-webkit-font-smoothing:antialiased;font-size:14px}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:0 0;border:0}button:disabled{cursor:default;opacity:.42}a{color:inherit;text-decoration:none}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:3px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500}h1:focus{outline:0}p{line-height:1.75}svg{flex-shrink:0}small{font-size:12px}label{flex-direction:column;gap:8px;font-size:13px;font-weight:500;display:flex}input:not([type=checkbox]):not([type=file]),select,textarea{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);background:#fffaf0;border-radius:9px;padding:12px 13px;font-size:16px;line-height:1.4;box-shadow:inset 0 1px 2px #172d2810}textarea{resize:vertical;min-height:78px;max-height:180px}input::placeholder,textarea::placeholder{color:#a1a294;font-size:14px}input[type=checkbox]{accent-color:var(--leaf);flex-shrink:0;width:19px;height:19px;margin:1px 0}input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}blockquote{border-left:2px solid var(--gold);font-family:var(--serif);white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0;padding:12px 16px;line-height:1.9}::selection{color:var(--night);background:#dac99b}.app-frame{grid-template-rows:56px minmax(0, 1fr) calc(70px + env(safe-area-inset-bottom));background:var(--night);isolation:isolate;height:100dvh;display:grid;position:relative}.app-frame:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(at 10% 10%,#54726622,#0000 60%);position:absolute;inset:0}.app-header{color:#e6dec8;border-bottom:1px solid #b59c6926;align-items:center;gap:12px;min-width:0;padding:0 18px;display:flex}.brand{white-space:nowrap;align-items:center;gap:7px;display:flex}.brand strong{font-family:var(--serif);letter-spacing:1px;font-size:17px;font-weight:500}.brand-mark{color:#d2bc83;width:27px;display:flex;position:relative}.brand-mark i{font-size:12px;font-style:normal;position:absolute;top:-9px;right:-2px}.phase-link{white-space:nowrap;color:#bbc5b2;align-items:center;gap:5px;margin-left:auto;font-size:11px;display:flex}.phase-link>span{background:#acbc8c;border-radius:50%;width:5px;height:5px;box-shadow:0 0 10px #adbd8b44}.header-tools{align-items:center;gap:1px;display:flex}.icon-button{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.icon-button:hover{background:#b9a16b18}.demo-link{white-space:nowrap;border:1px solid #b9a36e42;border-radius:5px;padding:5px 7px;font-size:11px}.workspace{min-height:0;padding:10px 10px 0;position:relative}.bottom-nav{padding:0 9px env(safe-area-inset-bottom);color:#aeb9ad;background:var(--night);grid-template-columns:repeat(4,1fr);align-items:stretch;display:grid}.bottom-nav a{letter-spacing:.4px;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:10px;display:flex;position:relative}.bottom-nav a[aria-current]{color:#e5cd96}.bottom-nav a i{opacity:0;background:var(--gold);border-radius:50%;width:3px;height:3px;position:absolute;bottom:6px}.bottom-nav a[aria-current] i{opacity:1}.bottom-nav a:hover{background:#e4d7b007}.scene{background:var(--paper);border:1px solid #bda57352;border-radius:18px 18px 10px 10px;grid-template-columns:minmax(0,1fr);max-width:1140px;height:100%;min-height:0;margin:0 auto;display:grid;position:relative;overflow:hidden;box-shadow:0 8px 25px #00191728}.scene:after{content:"";pointer-events:none;z-index:2;border:1px solid #cbbf9a30;border-radius:14px 14px 7px 7px;position:absolute;inset:4px}.scene-page{background:radial-gradient(at 80% 8%,#fff9e680,#0000 66%);grid-template-rows:auto auto minmax(0,1fr) auto;min-width:0;min-height:0;display:grid;position:relative}.scene-heading{grid-row:1;align-items:flex-start;gap:9px;min-width:0;padding:24px 21px 16px;display:flex}.scene-heading>div{min-width:0}.scene-heading h1{letter-spacing:.2px;text-wrap:balance;overflow-wrap:anywhere;font-size:clamp(23px,6.2vw,29px);line-height:1.5}.scene-heading p{color:var(--muted);max-width:34em;margin-top:8px;font-size:13px}.eyebrow{letter-spacing:2px;color:#8b886d;margin-bottom:7px;font-size:10px;font-weight:500;display:block}.back-link{flex-shrink:0;align-items:center;width:26px;min-height:32px;margin:0;display:flex}.back-link:hover{color:var(--gold)}.scene-content{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#cec5ab transparent;grid-row:3;min-height:0;padding:0 22px;position:relative;overflow-y:auto}.scene-footer{background:linear-gradient(0deg, var(--paper) 85%, #f4eee000);z-index:3;flex-direction:column;grid-row:4;gap:9px;min-width:0;padding:13px 22px 18px;display:flex;position:relative}.primary{background:var(--leaf);color:#faf4df;letter-spacing:.4px;border:1px solid #41533d;border-radius:9px;justify-content:center;align-items:center;gap:12px;width:100%;min-height:49px;padding:12px 14px;font-size:14px;font-weight:500;transition:background .15s,transform .15s;display:flex;box-shadow:0 3px #31412e,0 5px 10px #40543b15}.primary:hover:not(:disabled){background:#43583f;transform:translateY(-1px)}.primary:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px #31412e}.primary:disabled{box-shadow:none}.footer-note{color:var(--muted);text-align:center;letter-spacing:.1px;font-size:10px;line-height:1.6}.quiet-link{color:#78816f;text-underline-offset:4px;justify-content:center;align-items:center;gap:5px;min-height:30px;font-size:12px;-webkit-text-decoration:underline #acae9870;text-decoration:underline #acae9870;display:flex}.quiet-link:hover{color:var(--leaf)}.text-button{min-height:36px;color:var(--leaf);justify-content:center;align-items:center;gap:6px;padding:4px;font-size:12px;display:inline-flex}.muted{color:var(--muted);font-size:12px;line-height:1.75}.centered{text-align:center}.privacy{color:#8a8b79;align-items:flex-start;gap:7px;padding:8px 0;font-size:11px;line-height:1.7;display:flex}.privacy svg{margin-top:3px}.privacy span{overflow-wrap:anywhere}.desktop-art{display:none}.magic-art{aspect-ratio:1;flex-shrink:0;width:200px;display:block;position:relative}.magic-art img{object-fit:contain;filter:drop-shadow(0 12px 12px #263a2930)}.avatar{background:#e8e1cb;border:1px solid #cdbb8c88;border-radius:50%;flex-shrink:0;width:43px;height:43px;display:inline-block;position:relative;overflow:hidden}.avatar img{object-fit:cover}.avatar.large{background:#ded8c1;border:3px double #b6a276;width:88px;height:88px}.empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:100%;padding:16px 5px;display:flex}.empty .magic-art{width:clamp(120px,24dvh,210px)}.empty h2{font-size:22px;line-height:1.5}.empty p{max-width:28em;color:var(--muted);font-size:13px}.task-screen .scene-heading{padding-top:30px}.task-screen .scene-heading h1{letter-spacing:1px;font-size:clamp(26px,7vw,31px);line-height:1.55}.task-screen .scene-heading p{max-width:24em;font-size:13px;line-height:1.9}.task-screen .scene-content{flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.task-object{flex:1;justify-content:center;align-items:center;width:100%;min-height:135px;max-height:340px;display:flex;position:relative}.task-object .magic-art{aspect-ratio:auto;width:min(77%,300px);height:100%;max-height:100%;animation:7s ease-in-out infinite float}.orbit{aspect-ratio:1;background:radial-gradient(circle,#dacb9b35,#0000 67%);border:1px solid #b9a27045;border-radius:50%;width:min(80%,270px);position:absolute;transform:rotate(-18deg)}.orbit:before{content:"";border:1px dashed #bda77632;border-radius:50%;position:absolute;inset:12px}.orbit:after{content:"✧";color:#b9a16b;background:var(--paper);font-size:18px;position:absolute;top:17%;right:3%}.star{color:#b8a16a;font-size:20px;position:absolute}.star-a{top:24%;left:6%}.star-b{font-size:11px;bottom:22%;right:6%}.object-shadow{z-index:-1;background:radial-gradient(#5c694926,#0000 66%);border-radius:50%;width:50%;height:20px;position:absolute;bottom:5%}.task-status{justify-content:center;align-items:center;gap:10px;max-width:320px;display:flex}.status-seal{color:#8e8869;border:1px solid #baaa8170;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:33px;height:33px;display:flex}.task-status p{color:#78806b;font-size:12px;line-height:1.8}.task-signature{color:#9c967e;letter-spacing:2px;align-items:center;gap:12px;margin-top:5px;margin-bottom:4px;font-size:10px;display:flex}.task-signature span{background:#c3b48b70;width:30px;height:1px}.task-screen .scene-footer{padding-top:20px}.steps{grid-row:2;gap:0;padding:0 20px 15px;display:flex}.steps button{color:#8f927f;border-bottom:1px solid var(--line);white-space:nowrap;flex:1;justify-content:center;align-items:center;gap:6px;min-height:38px;font-size:11px;display:flex;position:relative}.steps button span{border:1px solid #b7b59e80;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:9px;display:inline-flex}.steps button[aria-current]{color:var(--leaf);border-bottom:2px solid var(--leaf);font-weight:600}.steps button[aria-current] span{color:var(--paper);background:var(--leaf);border-color:var(--leaf)}.steps button:disabled{opacity:.4}.segments{background:#e8e4d4;border:1px solid #d9d4c13d;border-radius:8px;align-items:center;gap:3px;padding:4px;display:flex}.segments button{white-space:nowrap;color:#868978;border-radius:5px;flex:1;min-height:34px;padding:5px 9px;font-size:12px}.segments button[aria-pressed=true]{color:#43563e;background:#fbf7eb;box-shadow:0 1px 4px #3d432012}.scene-page>.segments{grid-row:2;margin:0 22px 16px}.step-form{flex-direction:column;justify-content:center;gap:16px;min-height:100%;padding:8px 0;display:flex}.checkbox-label{flex-direction:row;align-items:flex-start;gap:9px;font-size:12px;font-weight:400;line-height:1.75;display:flex}.optional-link{justify-content:flex-start}.avatar-chooser{grid-template-columns:repeat(4,1fr);gap:5px;display:grid}.avatar-chooser button{color:#7c826e;border:1px solid #0000;border-radius:11px;flex-direction:column;align-items:center;gap:6px;padding:9px 2px;font-size:11px;display:flex}.avatar-chooser .avatar{width:clamp(44px,12vw,56px);height:clamp(44px,12vw,56px)}.avatar-chooser button[aria-pressed=true]{color:#485c43;background:#dcd5b766;border-color:#ac9a6780}.upload-inline{color:#7b826e;flex-direction:row;justify-content:center;align-items:center;gap:6px;min-height:32px;margin-top:-8px;font-size:11px;font-weight:400;display:flex;position:relative}.profile-overview{flex-direction:column;justify-content:center;gap:18px;min-height:100%;padding:8px 0;display:flex}.identity-card{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.identity-card .eyebrow{margin:0;font-size:9px}.identity-card h2{overflow-wrap:anywhere;font-size:23px}.house-tag{color:#7c826b;border:1px solid #c6b88d70;border-radius:100px;padding:4px 13px;font-size:11px}.address-summary{background:#e9e4d28c;border:1px solid #d6cdb650;border-radius:9px;align-items:flex-start;gap:10px;padding:14px;display:flex}.address-summary>div{flex:1;min-width:0}.address-summary strong{font-size:12px;font-weight:500}.address-summary p{color:#8b8b76;overflow-wrap:anywhere;margin-top:5px;font-size:11px}.address-summary svg{color:#9c956f;margin-top:2px}.review-identity{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding-bottom:20px;display:flex}.review-identity>div{flex:1;min-width:0}.review-identity h2{overflow-wrap:anywhere;font-size:22px}.review-identity span:not(.avatar){color:var(--muted);font-size:12px}.review-address{overflow-wrap:anywhere;flex-direction:column;align-items:flex-start;gap:10px;padding:15px 0;display:flex}.review-address strong{font-size:14px;font-weight:500}.review-address p{white-space:pre-wrap;font-size:13px}.review-address small{color:var(--muted);line-height:1.7}.review-address .eyebrow{margin:0}.activity-overview{flex-direction:column;justify-content:center;gap:18px;min-height:100%;display:flex}.enrolled-stamp{color:#6d7a5f;flex-direction:column;align-items:center;gap:10px;padding:12px;display:flex}.enrolled-stamp strong{font-family:var(--serif);font-size:22px}.enrolled-stamp span{color:var(--muted);font-size:11px}.record-links{border-top:1px solid var(--line);flex-direction:column;display:flex}.record-links a{border-bottom:1px solid var(--line);min-height:56px;color:var(--leaf);align-items:center;gap:13px;padding:8px;display:flex}.record-links a span{flex:1;font-size:13px}.invitation{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.invitation .magic-art{width:clamp(120px,24dvh,200px)}.invitation h2{font-size:21px;line-height:1.6}.invitation p{font-family:var(--serif);color:#80816d;font-size:14px;line-height:1.9}.invitation-date{letter-spacing:1px;color:#8f8868;margin:6px 0 16px;font-size:11px}.address-check{text-align:left;color:#738064;background:#e8e3d06b;border-top:1px solid #d6ccb05c;border-bottom:1px solid #d6ccb05c;align-items:center;gap:9px;width:100%;min-height:44px;margin:10px 0;padding:12px 11px;display:flex}.address-check span{flex:1;font-size:12px}.recipient-identity{text-align:center;flex-direction:column;align-items:center;gap:9px;display:flex}.recipient-identity .eyebrow{margin:0}.recipient-identity h2{font-size:23px}.recipient-address{background:#e7e1ca70;border:1px solid #d1c5a546;border-radius:10px;gap:6px;padding:14px 16px}.shipment-receipt{text-align:center;flex-direction:column;align-items:center;gap:13px;display:flex}.shipment-receipt .magic-art{width:clamp(110px,25dvh,220px)}.shipment-receipt h2{font-size:23px}.shipment-receipt p,.shipment-receipt small{color:var(--muted);font-size:12px}.status-pill{color:#727e5d;border:1px solid #b5bc9a;border-radius:100px;align-items:center;gap:5px;padding:4px 12px;font-size:10px;display:flex}.ready-to-send{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:10px 0;display:flex}.ready-to-send>svg{color:#9d946b}.ready-to-send h2{font-size:24px;line-height:1.6}.ready-to-send .eyebrow{margin:0}.ready-to-send p{color:var(--muted);font-size:13px}.score-rule{background:#eee5cb57;border:1px solid #cbbd9866;border-radius:9px;padding:12px 14px}.score-rule>div{align-items:center;gap:9px;min-height:27px;font-size:11px;display:flex}.score-rule b{font-size:17px;font-family:var(--serif);color:#647250;font-weight:600}.score-rule small{color:#9a775c;margin-left:auto;font-size:10px}.score-rule p{color:#9a9782;margin-top:5px;font-size:10px;line-height:1.6}.receive-form{justify-content:center}.photo-upload{color:#899174;background:radial-gradient(circle,#dfd9bb55,#0000 85%);border:1px dashed #b6ac83;border-radius:12px;justify-content:center;align-items:center;gap:14px;width:100%;height:100%;min-height:200px;max-height:380px;display:flex;position:relative;overflow:hidden}.photo-upload strong{font-family:var(--serif);font-size:20px;font-weight:500}.photo-upload small{color:#9a9a83;font-size:10px}.photo-upload.has-photo{border-style:solid}.photo-upload img{object-fit:contain}.photo-upload>svg{color:#a6a280}.upload-label{color:#faf5e6;background:#52664f;border-radius:6px;align-items:center;gap:8px;margin-top:8px;padding:9px 16px;font-size:12px;display:flex;position:relative}.photo-upload.has-photo .upload-label{background:#233b31d9;margin:0;position:absolute;bottom:15px}.caption-preview{background:#ded9c7;border-radius:10px;height:130px;min-height:90px;position:relative;overflow:hidden}.caption-preview img{object-fit:cover}.char-count{text-align:right;color:#9a9a85;margin-top:-8px;font-size:10px}.publish-preview,.received-photo{background:#e4dfcf;border-radius:12px;flex:1;width:100%;min-height:100px;position:relative;overflow:hidden}.publish-preview img,.received-photo img{object-fit:contain}.publish-preview span{color:var(--leaf);background:#f4eee0e6;border-radius:6px;padding:5px 10px;font-size:10px;position:absolute;bottom:10px;left:10px}.gift-caption{font-family:var(--serif);white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;line-height:1.9}.receive-form:has(.publish-preview){justify-content:initial;height:100%}.photo-screen .scene-content{flex-direction:column;gap:16px;display:flex}.photo-screen .gift-caption{font-size:14px}.gallery-toolbar{grid-row:2;align-items:center;gap:9px;padding:0 22px 13px;display:flex}.gallery-toolbar .segments{flex:1;min-width:0}.gallery-toolbar .icon-button{background:#e5decb55;border:1px solid #cec2a350;border-radius:8px;width:38px;height:38px}.gallery-screen .scene-heading{padding-top:21px;padding-bottom:13px}.gallery-screen .scene-heading h1{font-size:26px}.gift-exhibit{grid-template-rows:46px minmax(75px,1fr) auto 38px;gap:10px;height:100%;min-height:285px;animation:.3s appear;display:grid}.gift-owner{align-items:center;gap:9px;min-width:0;display:flex}.gift-owner .avatar{width:36px;height:36px}.gift-owner>div{flex-direction:column;gap:4px;min-width:0;display:flex}.gift-owner strong{white-space:nowrap;text-overflow:ellipsis;max-width:220px;font-size:12px;font-weight:500;overflow:hidden}.gift-owner span:not(.avatar):not(.exhibit-number){color:#969781;font-size:10px}.exhibit-number{color:#a39875;letter-spacing:1px;white-space:nowrap;margin-left:auto;font-family:Georgia,serif;font-size:10px}.exhibit-photo{background:#ded7c2;border:1px solid #cabc9870;border-radius:10px;min-height:75px;position:relative;overflow:hidden}.exhibit-photo>img{object-fit:contain}.applause{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#8b7f68;background:#f6eddaed;border:1px solid #f5ead76b;border-radius:100px;justify-content:center;align-items:center;gap:6px;min-width:52px;height:35px;font-size:11px;display:flex;position:absolute;bottom:10px;right:10px}.applause.active{color:var(--wax)}.applause:disabled{opacity:.7}.exhibit-story h2{margin-bottom:3px;font-size:18px;line-height:1.5}.story-preview{text-align:left;align-items:center;gap:8px;width:100%;padding:0;display:flex}.story-preview span{font-family:var(--serif);-webkit-line-clamp:2;color:#68765e;-webkit-box-orient:vertical;flex:1;font-size:14px;line-height:1.7;display:-webkit-box;overflow:hidden}.story-preview svg{color:#a29c7c}.suspect-preview{color:#7f896f;text-align:left;border-top:1px solid #cfc5a859;align-items:center;gap:7px;min-width:0;padding:7px 0;font-size:11px;display:flex}.suspect-preview>span{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.suspect-preview small{color:#a0a087;white-space:nowrap;font-size:9px}.suspect-preview.revealed{color:#7f825b}.gallery-screen .scene-footer{gap:7px;padding-top:8px}.pager{color:#7c846d;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:37px;display:flex}.pager button{align-items:center;gap:4px;min-height:37px;padding:4px 0;font-size:11px;display:flex}.pager>span{color:#a4a189;align-items:center;gap:12px;font-family:Georgia,serif;font-size:12px;display:flex}.pager>span b{color:#53694b;font-size:17px;font-weight:400}.pager>span i{color:#c1baa0;font-style:normal}.pager.compact button{border:1px solid #c6b98e60;border-radius:6px;min-height:30px;padding:4px 12px}.pager.compact{min-height:32px}.directory-list{min-height:200px;margin-top:10px}.directory-list button{text-align:left;border-bottom:1px solid var(--line);align-items:center;gap:10px;width:100%;min-height:65px;padding:11px 0;display:flex}.directory-list button>span:not(.avatar){overflow-wrap:anywhere;flex:1;min-width:0;font-size:13px}.directory-list small{color:var(--muted);margin-top:5px;font-size:11px;display:block}.directory-list svg{color:#9b9b81}.search-field{color:#989b80;background:#fff9eb;border:1px solid #d1c8ad;border-radius:8px;flex-direction:row;align-items:center;gap:7px;min-height:40px;padding:0 10px;display:flex}.search-field input:not([type=checkbox]):not([type=file]){box-shadow:none;background:0 0;border:0;outline:none;padding:9px 0;font-size:14px}.search-field:focus-within{outline:2px solid var(--gold);outline-offset:2px}.suspect-list>div{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:11px 0;display:flex}.suspect-list strong{overflow-wrap:anywhere;flex:1;font-size:13px;font-weight:500}.suspect-list>div>span:last-child{color:#8c8a6c;font-size:12px}.reveal-name{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:16px 0;display:flex}.reveal-name h2{font-size:25px;line-height:1.7}.reveal-name p{white-space:pre-wrap;font-size:13px}.reveal-name>span:last-child{color:var(--muted);font-size:12px}.medals{gap:12px;margin:18px 0 12px;display:flex}.medals button{color:#948050;background:#dcd1ae38;border:1px solid #c7b5897d;border-radius:12px;flex-direction:column;flex:1;align-items:center;gap:9px;padding:20px 8px;display:flex}.medals button[aria-pressed=true]{background:#d4c28a70;border-color:#ac955e}.medals button:disabled{opacity:1;cursor:default}.medals strong{font-family:var(--serif);font-size:18px;font-weight:500}.medals span{font-size:10px}.guess-screen .scene-heading h1{font-size:25px}.guess-screen .scene-heading{padding-bottom:12px}.guess-screen .scene-content{padding-top:4px}.guess-question{flex-direction:column;justify-content:center;gap:10px;min-height:100%;display:flex}.question-clue{align-items:stretch;gap:10px;display:flex}.clue-thumb{background:#ddd5bd;border:1px solid #ccbf9970;border-radius:9px;flex-shrink:0;width:67px;position:relative;overflow:hidden}.clue-thumb img{object-fit:cover}.clue-thumb svg{color:var(--paper);background:#1b382bb5;border-radius:3px;padding:1px;position:absolute;bottom:5px;right:5px}.question-clue .score-rule{flex:1;padding:9px 10px}.question-clue .score-rule>div{flex-wrap:wrap;gap:3px 8px}.question-clue .score-rule small{margin:0;font-size:9px}.question-clue .score-rule p{margin-top:2px;font-size:9px}.choice-tools{align-items:center;gap:6px;display:flex}.choice-tools .search-field{flex:1;min-width:0}.choice-tools>.text-button{white-space:nowrap;min-width:48px;font-size:11px}.choice-tools>.text-button[aria-pressed=true]{text-underline-offset:3px;text-decoration:underline}.choice-list{grid-template-rows:repeat(4,minmax(46px,auto));gap:7px;display:grid}.choice-list button{text-align:left;color:#69765e;background:#fbf6e880;border:1px solid #d5ccb17f;border-radius:9px;align-items:center;gap:9px;width:100%;min-height:46px;padding:7px 10px;display:flex}.choice-list button[aria-pressed=true]{background:#dfe5ce6b;border-color:#8b9b70;box-shadow:inset 3px 0 #708359}.choice-list button>.avatar{width:31px;height:31px}.choice-list button>span:nth-child(2){overflow-wrap:anywhere;flex:1;font-size:12px;line-height:1.5}.selection-circle{border:1px solid #c4c2a8;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.choice-list button[aria-pressed=true] .selection-circle{color:#faf5e4;background:#6a7e58;border-color:#6a7e58}.name-rune{color:#b2a276;text-align:center;width:25px;font-size:22px}.selection-summary{color:#829070;overflow-wrap:anywhere;min-height:17px;font-size:10px;line-height:1.6}.guess-review{flex-direction:column;justify-content:center;gap:18px;min-height:100%;display:flex}.answer-slip{text-align:left;border-bottom:1px solid #cbbd9473;flex-direction:column;align-items:flex-start;gap:14px;padding:16px 0;display:flex}.answer-slip .eyebrow{letter-spacing:1px;justify-content:space-between;gap:5px;width:100%;margin:0;display:flex}.answer-slip .eyebrow b{font-family:var(--sans);color:#9d9a74;letter-spacing:0;font-size:10px;font-weight:500}.answer-slip strong{font-family:var(--serif);font-size:24px;font-weight:500;line-height:1.6}.answer-slip>span:last-child{color:#7e8b6c;align-self:flex-end;gap:4px;font-size:11px;display:flex}.notebook{flex-direction:column;justify-content:center;gap:17px;min-height:100%;display:flex}.note-recipient{border-bottom:1px solid #c8bd9f85;align-items:center;gap:10px;padding-bottom:18px;display:flex}.note-recipient>div{flex-direction:column;flex:1;gap:6px;display:flex}.note-recipient div>span{color:#92917c;font-size:10px}.note-recipient strong{overflow-wrap:anywhere;font-size:13px;font-weight:500}.note-seal{color:#a69b79}.note-answer{border-bottom:1px dashed #c9c1a3;flex-direction:column;gap:12px;padding:10px 0 18px;display:flex}.note-answer>span{color:#93917a;font-size:11px}.note-answer strong{font-family:var(--serif);overflow-wrap:anywhere;font-size:23px;font-weight:500;line-height:1.5}.note-answer small{color:#a19779;align-items:flex-start;gap:4px;font-size:10px;line-height:1.6;display:flex}.note-answer.correct small{color:#6b8259}.note-answer.wrong small{color:#9a826c}.my-score{flex-direction:column;justify-content:center;gap:20px;min-height:100%;display:flex}.score-emblem{color:#927c47;flex-direction:column;align-items:center;gap:8px;padding:12px 0;display:flex}.score-emblem>span{letter-spacing:3px;margin-top:7px;font-size:10px}.score-emblem>strong{color:#4d6347;text-shadow:0 3px #dcd5bb;font-family:Georgia,serif;font-size:88px;font-weight:400;line-height:1.1}.score-emblem small{color:var(--muted);font-size:11px}.score-breakdown{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(2,1fr);gap:14px 20px;padding:18px 0;display:grid}.score-breakdown>div{color:#898974;justify-content:space-between;align-items:center;gap:10px;font-size:11px;display:flex}.score-breakdown b{color:#667456;font-family:Georgia,serif;font-size:20px;font-weight:400}.rank-board{flex-direction:column;justify-content:center;gap:10px;min-height:100%;display:flex}.rank-legend{color:#92917b;justify-content:space-between;padding:0 7px;font-size:10px;display:flex}.rank-row{border-bottom:1px solid #ccc2a45c;align-items:center;gap:9px;min-height:70px;padding:17px 0;display:flex}.rank-position{color:#b0a57d;text-align:center;flex-shrink:0;width:26px;font-family:Georgia,serif;font-size:21px;position:relative}.rank-position small{color:#927d49;width:100%;font-size:9px;position:absolute;bottom:-4px;left:0}.rank-row .avatar{width:37px;height:37px}.rank-row>div{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.rank-row strong{overflow-wrap:anywhere;font-size:12px;font-weight:500}.rank-row small{color:#a09c82;font-size:10px}.rank-row>b{color:#788365;font-family:Georgia,serif;font-size:25px;font-weight:400}.rank-row.me{background:#d9ddbc38}.pair-reveal{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100%;display:flex}.pair-reveal .magic-art{width:clamp(120px,22dvh,210px)}.pair-people{color:#7c866b;justify-content:center;align-items:center;gap:13px;font-size:13px;display:flex}.pair-people strong{overflow-wrap:anywhere;font-weight:500}.pair-reveal h2{font-size:24px;line-height:1.7}.journey-list{flex-direction:column;justify-content:center;gap:8px;min-height:85%;padding:8px 0;display:flex}.journey-list a{border-bottom:1px solid #c8bd9d60;align-items:center;gap:17px;min-height:75px;padding:16px 4px;display:flex}.journey-number{color:#9e9f83;border:1px solid #c8bfa261;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-family:Georgia,serif;font-size:15px;display:flex}.journey-list a.done .journey-number{color:#7c8e62;background:#d5ddc457}.journey-list a>div{flex-direction:column;flex:1;gap:8px;display:flex}.journey-list strong{font-family:var(--serif);font-size:20px;font-weight:500}.journey-list small{color:#99987f;font-size:10px}.journey-list a>svg{color:#a6a182}.manage-stage{flex-direction:column;justify-content:center;align-items:center;gap:15px;min-height:100%;display:flex}.manage-stage .magic-art{width:clamp(120px,20dvh,190px)}.manage-stage .eyebrow{margin:0}.manage-stage h2{font-size:27px}.stage-counts{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:23px;padding-top:20px;display:grid}.stage-counts span{color:#909279;flex-direction:column;align-items:center;gap:7px;font-size:10px;display:flex}.stage-counts b{color:#667e56;font-family:Georgia,serif;font-size:26px;font-weight:400}.schedule-editor{flex-direction:column;justify-content:center;gap:20px;min-height:100%;display:flex}.schedule-editor>.steps{padding:0}.time-object{color:#9a9875;flex-direction:column;align-items:center;gap:18px;padding:12px;display:flex}.time-object span{letter-spacing:3px;font-family:Georgia,serif;font-size:13px}.demo-menu{flex-direction:column;justify-content:center;gap:15px;min-height:100%;display:flex}.demo-menu>button{text-align:left;border-bottom:1px solid #c9bea078;align-items:center;gap:13px;padding:20px 4px;display:flex}.demo-menu>button>span{color:#a39c72;font-family:Georgia,serif;font-size:26px}.demo-menu>button>div{flex-direction:column;gap:8px;display:flex}.demo-menu strong{font-family:var(--serif);font-size:19px;font-weight:500}.demo-menu small{color:#95977e;font-size:10px}.login-form .magic-art{align-self:center;width:clamp(90px,18dvh,150px)}.login-form input[aria-label=六位验证码]{letter-spacing:10px;text-align:center;font-size:24px}.rule-content{color:#747e69;flex-direction:column;gap:19px;margin-top:22px;font-size:13px;display:flex}.rule-content b{color:#526449;font-weight:600}.toast{z-index:1000;color:#f4eedb;pointer-events:auto;background:#2b4237f5;border:1px solid #c9b47c80;border-radius:9px;width:max-content;max-width:calc(100vw - 36px);padding:11px 17px;font-size:12px;line-height:1.7;animation:.2s appear;position:fixed;top:10px;left:50%;transform:translate(-50%);box-shadow:0 6px 30px #07211844}.connection-banner{color:#fff1dd;z-index:100;background:#875d40f2;justify-content:center;align-items:center;gap:10px;padding:8px;font-size:12px;display:flex;position:fixed;top:0;left:0;right:0}.connection-banner button{text-decoration:underline}.loading-scene,.error-page{color:#dacfaa;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:22px;min-height:100dvh;padding:25px;display:flex}.loading-scene h1,.error-page h1{font-size:26px}.loading-scene p,.error-page p{color:#9cae9b;font-size:12px}.loading-scene .primary,.error-page .primary{max-width:300px}.loading-teacup{color:#98733e;width:64px;height:64px}.tea-steam{transform-origin:50%;animation:2.4s ease-in-out infinite tea-steam-rise}@keyframes tea-steam-rise{0%,to{opacity:.35;transform:translateY(2px)}50%{opacity:1;transform:translateY(-2px)}}@media (prefers-reduced-motion:reduce){.tea-steam{animation:none}}@keyframes float{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-8px)rotate(1deg)}}@keyframes appear{0%{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes sheet-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (min-width:650px){.app-header{gap:22px;padding:0 28px}.brand strong{font-size:20px}.phase-link{font-size:12px}.workspace{padding:15px 24px 0}.scene-heading{padding:29px 35px 20px}.scene-content{padding:0 35px}.scene-footer{padding:17px 35px 23px}.scene-heading h1{font-size:30px}.steps{padding-left:35px;padding-right:35px}.scene-page>.segments{margin-left:35px;margin-right:35px}.gallery-toolbar{padding-left:35px;padding-right:35px}.bottom-nav{width:100%;max-width:650px;margin:0 auto}.bottom-nav a{font-size:11px}.scene:not(:has(.desktop-art)){max-width:740px}.gift-exhibit{grid-template-rows:50px minmax(80px,1fr) auto 42px;gap:13px}.gift-owner strong{font-size:14px}.story-preview span{font-size:16px}.exhibit-number{font-size:12px}.choice-list{grid-template-rows:repeat(4,minmax(54px,auto));gap:10px}.choice-list button>span:nth-child(2){font-size:14px}.step-form{gap:20px;width:100%;max-width:470px;margin:auto}.guess-question,.guess-review,.notebook,.my-score,.rank-board,.profile-overview,.activity-overview{width:100%;max-width:470px;margin:auto}.guess-question{gap:13px}.profile-overview{gap:25px}.task-object .magic-art{max-width:330px}.task-object{max-height:380px}.task-status{max-width:360px}.task-status p{font-size:13px}.task-screen .scene-heading h1{font-size:32px}.task-screen .scene-heading p{font-size:14px}.invitation .magic-art{width:220px}.invitation{gap:14px}.invitation h2{font-size:25px}.address-check{max-width:470px;margin:14px auto}.invitation+.address-check+.checkbox-label{max-width:470px;margin:auto}.primary{min-height:51px;font-size:15px}.footer-note{font-size:11px}.pager button{font-size:12px}.gallery-screen .scene-footer{gap:10px}.scene:has(.gallery-toolbar) .scene-heading{padding-top:24px}}@media (min-width:1000px){body{background:radial-gradient(at 25% 20%,#324e48 0%,#132c31 42%,#0b2027 100%);padding:20px 0}.app-frame{background:#152f34a3;border:1px solid #b7a27037;border-radius:20px;grid-template-rows:65px minmax(0,1fr) 75px;max-width:1220px;height:calc(100dvh - 40px);margin:0 auto;box-shadow:0 25px 80px #03101555}.app-header{padding:0 35px}.workspace{padding:13px 20px 0}.brand{gap:11px}.brand strong{letter-spacing:2px;font-size:21px}.header-tools{gap:10px}.phase-link{gap:8px}.scene:has(.desktop-art){grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}.desktop-art{isolation:isolate;background:radial-gradient(ellipse at 50% 35%, #70857422, transparent 58%), var(--night-deep);border-right:1px solid #d3bd8259;flex-direction:column;justify-content:center;align-items:center;min-height:0;display:flex;position:relative}.desktop-art:before{content:"";pointer-events:none;border:1px solid #bda27033;border-radius:120px 120px 4px 4px;position:absolute;inset:18px}.desktop-art:after{content:"✦";color:#bba06b9c;font-size:16px;position:absolute;top:30px}.desktop-art .orbit{background:radial-gradient(circle,#bab66a13,#0000 70%);border-color:#aa94504d;width:80%;max-width:340px}.desktop-art .orbit:before{border-color:#bba56532}.desktop-art .orbit:after{color:#bba565;background:#11292c}.desktop-art .magic-art{filter:drop-shadow(0 18px 25px #04181660);width:85%;max-width:380px;animation:8s ease-in-out infinite float}.art-caption{font-family:var(--serif);letter-spacing:3px;color:#ada782;font-size:12px;position:absolute;bottom:48px}.scene-heading{padding:30px 34px 18px}.scene-heading h1,.task-screen .scene-heading h1{font-size:29px}.scene-content{padding:0 34px}.scene-footer{padding:16px 34px 23px}.task-screen .scene-page{grid-template-rows:auto auto minmax(0,1fr) auto;display:grid}.task-screen .scene-heading{padding-top:clamp(30px,9dvh,90px)}.task-screen .scene-heading h1{max-width:none;font-size:36px;line-height:1.7}.task-screen .scene-heading p{max-width:25em;margin-top:18px;line-height:2.2}.task-screen .task-object{display:none}.task-screen .scene-content{justify-content:center;align-items:flex-start;gap:30px}.task-screen .task-status{justify-content:flex-start}.task-screen .task-signature{margin-left:3px}.task-screen .scene-footer{gap:14px;padding-bottom:48px}.steps{padding-left:34px;padding-right:34px}.scene-page>.segments{margin-left:34px;margin-right:34px}.scene:not(:has(.desktop-art)){max-width:750px}.bottom-nav{max-width:590px}.bottom-nav a{flex-direction:row;gap:10px;font-size:12px}.bottom-nav a i{bottom:12px}.gift-exhibit{grid-template-rows:46px minmax(75px,1fr) auto 35px;gap:9px}.gallery-screen .scene-heading h1{font-size:27px}.gallery-screen .scene-footer{padding-top:8px;padding-bottom:18px}.gallery-toolbar{padding-bottom:10px}:is(.scene-page:has(.invitation) .invitation .magic-art,.scene-page:has(.shipment-receipt) .shipment-receipt .magic-art){display:none}.scene-page:has(.invitation) .scene-content{flex-direction:column;justify-content:center;display:flex}.invitation{gap:18px;margin-bottom:24px}.shipment-receipt{padding-top:clamp(20px,9dvh,70px);padding-bottom:25px}.scene-content:has(.pair-reveal) .pair-reveal .magic-art{width:160px}.scene-content:has(.manage-stage) .manage-stage .magic-art{display:none}.manage-stage{gap:28px}.login-form .magic-art{display:none}.scene-content:has(.empty) .empty .magic-art{width:180px}.task-object .magic-art{animation:none}}@media (max-height:760px) and (max-width:999px){.app-frame{grid-template-rows:50px minmax(0, 1fr) calc(64px + env(safe-area-inset-bottom))}.workspace{padding-top:6px}.scene-heading,.task-screen .scene-heading{padding-top:18px;padding-bottom:12px}.scene-heading h1,.task-screen .scene-heading h1{font-size:25px}.scene-heading p{margin-top:5px;font-size:12px}.eyebrow{margin-bottom:5px;font-size:9px}.scene-footer{gap:7px;padding-top:10px;padding-bottom:13px}.primary{min-height:45px;padding:10px 12px}.steps{padding-bottom:10px}.steps button{min-height:33px}.step-form{gap:10px;padding:3px 0}.step-form label{gap:6px}.step-form input:not([type=checkbox]):not([type=file]),.step-form select,.step-form textarea{padding:9px 11px}.avatar-chooser .avatar{width:43px;height:43px}.avatar-chooser button{padding:5px 1px}.avatar-chooser{gap:3px}.upload-inline{min-height:26px}.task-screen .scene-content{gap:10px}.task-signature{display:none}.task-status p{font-size:11px}.task-object{max-height:250px}.task-screen .scene-footer{padding-top:14px}.privacy{padding:5px 0;font-size:10px}.profile-overview{gap:12px}.avatar.large{width:69px;height:69px}.identity-card{gap:9px}.identity-card h2{font-size:21px}.recipient-identity{gap:6px}.recipient-identity .avatar{width:65px;height:65px}.recipient-identity h2{font-size:21px}.review-address{gap:6px;padding:11px}.review-address p{font-size:12px}.invitation{gap:7px}.invitation .magic-art{width:130px}.invitation h2{font-size:19px}.invitation p{font-size:12px}.invitation-date{margin:3px 0 8px;font-size:10px}.score-rule{padding:8px 11px}.score-rule>div{min-height:25px}.ready-to-send{gap:9px;padding:4px 0}.ready-to-send h2{font-size:22px}.guess-screen .scene-heading{padding-top:16px;padding-bottom:10px}.guess-screen .scene-heading h1{font-size:24px}.guess-screen .scene-content{padding-top:0}.guess-question{gap:7px}.choice-list{grid-template-rows:repeat(4,minmax(42px,auto));gap:5px}.choice-list button{min-height:42px;padding:5px 8px}.choice-list button>.avatar{width:29px;height:29px}.choice-list button>span:nth-child(2){font-size:11px}.question-clue .score-rule{padding:6px 8px}.question-clue .score-rule p{font-size:8px}.search-field{min-height:36px}.search-field input:not([type=checkbox]):not([type=file]){padding:7px 0;font-size:13px}.gallery-screen .scene-heading{padding-top:16px;padding-bottom:10px}.gallery-screen .scene-heading h1{font-size:24px}.gallery-toolbar{padding-bottom:9px}.segments{padding:3px}.segments button{min-height:29px;font-size:11px}.scene-page>.segments{margin-bottom:12px}.gift-exhibit{grid-template-rows:38px minmax(65px,1fr) auto 31px;gap:7px;min-height:235px}.gift-owner .avatar{width:32px;height:32px}.story-preview span{font-size:12px;line-height:1.65}.exhibit-story h2{font-size:16px}.suspect-preview{gap:5px;font-size:10px}.gallery-screen .scene-footer{gap:4px;padding-top:5px}.pager,.pager button{min-height:32px}.pager.compact{min-height:28px}.pager.compact button{min-height:27px;padding:3px 9px}.notebook{gap:11px}.note-answer{gap:8px;padding:6px 0 12px}.note-answer strong{font-size:20px}.note-recipient{padding-bottom:12px}.guess-review{gap:10px}.answer-slip{gap:9px;padding:10px 0}.answer-slip strong{font-size:22px}.score-emblem>strong{font-size:66px}.my-score{gap:10px}.score-emblem{gap:5px;padding:4px 0}.score-breakdown{gap:12px;padding:12px 0}.rank-row{min-height:62px;padding:12px 0}.journey-list{gap:4px}.journey-list a{min-height:65px;padding:10px 2px}.journey-list strong{font-size:18px}.journey-list a>div{gap:5px}.caption-preview{height:100px}.photo-upload{min-height:170px}.gift-caption{font-size:13px}.scene-content:has(.shipment-receipt) .shipment-receipt .magic-art{width:145px}.shipment-receipt{gap:10px}.shipment-receipt h2{font-size:21px}.demo-menu{gap:10px}.demo-menu>button{padding:16px 2px}.demo-menu strong{font-size:17px}}@media (max-width:360px){.app-header{gap:7px;padding:0 11px}.brand strong{letter-spacing:0;font-size:16px}.brand-mark{width:23px}.brand{gap:5px}.phase-link{gap:3px;font-size:10px}.header-tools .icon-button{width:30px}.demo-link{padding:4px 5px;font-size:10px}.workspace{padding-left:7px;padding-right:7px}.scene-heading,.scene-content,.scene-footer{padding-left:16px;padding-right:16px}.steps{padding-left:13px;padding-right:13px}.steps button{gap:4px;font-size:10px}.scene-page>.segments{margin-left:16px;margin-right:16px}.gallery-toolbar{gap:6px;padding-left:16px;padding-right:16px}.gallery-toolbar .segments button{padding-left:6px;padding-right:6px;font-size:10px}.gallery-toolbar .icon-button{width:33px;height:33px}.scene-heading h1,.task-screen .scene-heading h1{font-size:24px}.guess-screen .scene-heading h1{font-size:22px}.score-rule small{font-size:9px}.question-clue{gap:7px}.clue-thumb{width:51px}.task-signature{gap:7px;font-size:9px}.gift-owner strong{max-width:165px}.identity-card h2{font-size:21px}.choice-list button>span:nth-child(2){font-size:11px}.primary{gap:7px;font-size:13px}.stage-counts{gap:20px}.pair-people{font-size:12px}.toast{font-size:11px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.search-field input:not([type=checkbox]):not([type=file]){font-size:16px}@media (max-height:760px) and (max-width:999px){.step-form textarea{min-height:70px}}@media (min-width:1000px) and (max-height:850px){.scene-heading{padding:20px 32px 12px}.scene-heading h1{font-size:26px}.scene-footer{padding:12px 32px 16px}.steps{padding-bottom:10px}.step-form{gap:12px;padding:3px 0}.step-form input:not([type=checkbox]):not([type=file]),.step-form select,.step-form textarea{padding:9px 11px}.avatar-chooser button{padding:5px 2px}.avatar-chooser .avatar{width:44px;height:44px}.upload-inline{min-height:26px}.loading-scene,.error-page{min-height:calc(100dvh - 40px)}}.parallel-task .segments{margin:0 24px 8px}.revealed-name-link{text-align:left;width:100%;color:inherit;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:flex}.revealed-name-link h2{flex:1}.revealed-name-link>svg{flex:none}.journey-chapter{text-align:center;flex-direction:column;align-items:center;gap:14px;max-width:460px;margin:auto;display:flex}.journey-chapter .magic-art{width:190px;height:180px}.journey-chapter h2{font-family:var(--serif);margin:0;font-size:25px;line-height:1.4}.journey-chapter>strong{color:var(--leaf);font-size:13px}.journey-chapter>p{color:var(--muted);margin:0;font-size:14px;line-height:1.8}.answer-slip:disabled{opacity:1;cursor:default}@media (max-width:649px) and (max-height:760px){.parallel-task .segments{margin:0 18px 4px}.parallel-task .task-object{min-height:130px}.parallel-task .task-object .magic-art{width:175px;height:175px}.parallel-task .task-signature{display:none}.journey-chapter{gap:9px}.journey-chapter .magic-art{width:140px;height:135px}.journey-chapter h2{font-size:23px}}@media (min-width:1000px){.parallel-task .segments{margin:0 42px 12px}}.parallel-task .task-object{overflow:clip}.invitation-date{color:var(--leaf);font-weight:600}
:root{--house-base:#101d1a;--house-deep:#09120f;--house-panel:#13231e;--house-raised:#2a3b2e;--house-input:#0d1914;--house-accent:#b49b68}:root[data-house=gryffindor]{--house-base:#281318;--house-deep:#170b10;--house-panel:#321a20;--house-raised:#51282c;--house-input:#221216;--house-accent:#c5a15d}:root[data-house=ravenclaw]{--house-base:#131e30;--house-deep:#0b1220;--house-panel:#18293b;--house-raised:#293f56;--house-input:#111d2d;--house-accent:#c49a73}:root[data-house=hufflepuff]{--house-base:#262116;--house-deep:#15120c;--house-panel:#30291b;--house-raised:#4a3d25;--house-input:#211c13;--house-accent:#d2b36d}:root{--night:var(--house-base);--night-deep:var(--house-deep);--paper:var(--house-panel);--paper-light:var(--house-raised);--ink:#e4d8bb;--muted:#a8b1a4;--gold:var(--house-accent);--leaf:#c2ac78;--line:#76674966;--wax:#b67d72}body{background:var(--house-deep)}.app-frame{background:var(--house-base);border-radius:3px}.app-frame:before{background:radial-gradient(at 45% 5%,#46523b25,#0000 65%)}.app-header{border-color:#b49b682a}.brand{gap:8px}.brand strong{letter-spacing:3px;font-size:17px}.brand-crest{object-fit:contain}.phase-link{color:#b7b9a6}.phase-link>span{box-shadow:none;background:#b49b68}.invitation-replay{color:#d2c097;font-family:var(--serif);white-space:nowrap;padding:8px;font-size:12px}.demo-link{color:#aaa995;border-color:#a28f594d;border-radius:2px}.workspace{padding:8px 10px 0}.scene{background:var(--house-panel);border-color:#9f88564d;border-radius:3px;box-shadow:0 12px 36px #0003}.scene:after{border-color:#9f885625;border-radius:0;inset:5px}.scene-page{background:radial-gradient(at 60% 0,#5760441c,#0000 65%)}.scene-heading h1{color:#e6d9b9;letter-spacing:1px}.scene-heading p{color:#b1b8a8}.scene-heading .eyebrow{display:none}.eyebrow{color:#b3a47b}.bottom-nav{color:#a6afa2;background:0 0}.bottom-nav a{border-radius:0}.bottom-nav a[aria-current]{color:#e1c991}.bottom-nav a i{border-radius:0;width:18px;height:1px;bottom:7px}.primary{color:#efe1bc;background:linear-gradient(110deg, var(--house-raised), var(--house-panel));box-shadow:inset 0 0 0 3px var(--house-base), 0 4px 12px #0002;letter-spacing:1px;border:1px solid #ac945e;border-radius:2px;transition:transform .18s,background .18s;position:relative;overflow:hidden}.primary>svg{width:16px}.primary:active{transform:translateY(1px)}.primary:before{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 35%,#e0cb8b18 49%,#0000 63%);position:absolute;inset:0;transform:translate(-110%)}.primary:hover:before{transition:transform .65s;transform:translate(110%)}.quiet-link,.text-button,.footer-note,.muted,.privacy,.task-status p{color:#a8b1a4}.footer-note{line-height:1.6}.segments{background:0 0;border:0;border-bottom:1px solid #a28a553d;border-radius:0;gap:0;padding:0}.segments button{box-shadow:none;color:#a8b1a4;background:0 0;border:0;border-bottom:1px solid #0000;border-radius:0;min-height:43px;position:relative}.segments button[aria-pressed=true]{color:#ead9af;box-shadow:none;background:linear-gradient(#0000,#ae936112);border-bottom-color:#c5ab73}.steps{border-color:#a28a553d}.steps button{color:#a8b1a4}.steps button[aria-current]{color:#e5d3a6;border-color:#c3a56a}.steps button span{color:inherit;background:0 0;border-color:#b49b6866}.steps button[aria-current] span{color:var(--house-base);background:#b49b68}input:not([type=checkbox]):not([type=file]),select,textarea{color:#eee2c8;background:var(--house-input);box-shadow:none;border-color:#8e7c524f;border-radius:3px}input::placeholder,textarea::placeholder{color:#929b8d}select option{background:var(--house-panel);color:#eee2c8}input[type=checkbox]{accent-color:#c2ac78}.review-address,.address-check,.score-rule,.choice-list button,.answer-slip,.note-answer,.medals button,.time-object,.demo-menu button,.profile-link,.search-field,.checkbox-label{border-color:#927c4e45}.review-address,.address-check,.score-rule,.medals button,.choice-list button,.search-field,.time-object,.demo-menu button{background:#b39c6509;border-radius:2px}.score-rule,.score-rule small,.score-rule p,.score-rule b{color:#c7c2a8}.choice-list button{color:#e3d9bd}.choice-list button[aria-pressed=true]{background:#b7a36c18;border-color:#c1a56c}.selection-circle{border-color:#a9956566}.choice-list button[aria-pressed=true] .selection-circle{color:var(--house-panel);background:#b49b68}.avatar{background:var(--house-raised);box-shadow:0 0 0 3px var(--house-base), 0 0 0 4px #b49b6833;border-color:#b49b6866}.task-screen .scene-heading{padding-top:28px}.task-screen .scene-heading h1{font-size:clamp(26px,7vw,33px)}.task-screen .scene-content{gap:14px}.task-object .magic-art{filter:drop-shadow(0 15px 16px #0004);width:min(90%,340px);animation:none}.task-object .orbit,.task-object .star,.task-object .object-shadow{display:none}.task-status{text-align:center}.task-status .status-seal,.task-signature{display:none}.task-status p{color:#bfb596;font-size:12px}.task-screen .scene-footer{gap:6px}.journey-chapter{justify-content:center;gap:20px;height:100%}.journey-chapter .magic-art{aspect-ratio:1;flex:0 320px;width:min(85%,320px);height:auto;min-height:120px}.journey-chapter h2{letter-spacing:3px;font-size:clamp(27px,7vw,34px)}.journey-chapter p{color:#b9bea9;max-width:23em;font-size:13px;line-height:1.8}.chapter-state{color:#b49b68;letter-spacing:2px;font-size:11px}.journey-scene .scene-content{overflow:hidden}.journey-chapter{animation:.25s ease-out both folio-enter}.invitation .magic-art{filter:drop-shadow(0 15px 20px #0003)}.invitation h2{color:#e2d1ac}.invitation p{color:#b0b7a6}.invitation-date{color:#cfbe94}.gift-owner span,.exhibit-number,.story-preview,.suspect-preview,.selection-summary,.pager,.pager button,.note-recipient,.note-answer>span,.note-answer small,.rank-legend,.rank-row small{color:#b6bcaa}.exhibit-photo,.received-photo,.publish-preview,.photo-upload{background:var(--house-input);border:1px solid #b49b6844;border-radius:2px}.applause{background:var(--house-base);color:#dccaa4;border-color:#b49b6833}.applause.active{color:#e3bd9f}.suspect-preview{border-color:#b49b6833}.notebook{box-shadow:none;background:0 0}.note-answer.correct,.note-answer.correct small{color:#c9d3a5}.note-answer.wrong,.note-answer.wrong small{color:#d29b89}.answer-slip{color:#e4d8bb;background:0 0}.answer-slip>span:last-child{color:#a9b09e}.my-score,.score-emblem,.rank-position,.rank-row>b,.score-breakdown b{color:#d7be86}.rank-row.me{background:#b49b680c}.pair-people strong{color:#e5d6b6}.toast,.connection-banner{color:#253a2d;background:#eee4cf;border:1px solid #b49b68;border-radius:3px;box-shadow:0 6px 24px #0004}.loading-scene{background:var(--house-base);color:#dfcea5}.loading-scene p{display:none}.desktop-art{background:radial-gradient(ellipse at center, #53604425, transparent 65%), var(--house-input);border-color:#b49b6844}.desktop-art:before{border-color:#a28b5845;border-radius:150px 150px 2px 2px;inset:22px}.desktop-art:after{content:"";background:url(/magic/heritage/crest.webp) 50%/contain no-repeat;width:48px;height:48px;top:36px}.desktop-art .magic-art{filter:drop-shadow(0 20px 22px #0006);animation:none}.arrival{color:#e9dcba;background:radial-gradient(ellipse at 50% 35%, var(--house-raised) 0%, var(--house-base) 48%, var(--house-deep) 100%);border:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:24px;position:fixed;inset:0;overflow:auto}.arrival[open]{flex-direction:column;align-items:center;display:flex}.arrival::backdrop{background:var(--house-deep)}.arrival-frame{outline-offset:-6px;pointer-events:none;border:1px solid #b49b6866;outline:1px solid #b49b682b;position:absolute;inset:16px}.arrival-frame:before,.arrival-frame:after{content:"";border:3px double #b49b68;width:35px;height:35px;position:absolute}.arrival-frame:before{border-bottom:0;border-right:0;top:5px;left:5px}.arrival-frame:after{border-top:0;border-left:0;bottom:5px;right:5px}.arrival-heading{text-align:center;flex:none;padding-top:8px}.arrival-heading img{object-fit:contain;width:86px;height:86px}.arrival-heading p{font-family:var(--serif);letter-spacing:8px;color:#e9d6a8;padding-left:8px;font-size:30px}.arrival-heading span{letter-spacing:5px;color:#a99a75;margin-top:12px;font-size:11px;display:block}.sealed-letter{color:#dfcba0;flex-direction:column;flex:1;justify-content:center;align-items:center;width:min(100%,530px);min-height:180px;display:flex;position:relative}.sealed-letter img{object-fit:contain;width:100%;height:auto;max-height:44dvh;transition:transform .4s}.sealed-letter span{font-family:var(--serif);letter-spacing:5px;border-bottom:1px solid #ad94595c;padding:16px 24px;font-size:16px}.sealed-letter:disabled{opacity:1}.arrival-opening .sealed-letter{animation:.6s ease-in both unseal}.arrival-skip{color:#a8af9b;letter-spacing:2px;flex:none;min-height:44px;margin:8px 0;font-size:12px}.invitation-paper{text-align:center;color:#354136;transform-origin:top;background:#eee2c4 url(/magic/parchment-v2.jpg) 50%/cover;border:1px solid #8e754b;width:min(100%,410px);margin:auto;padding:30px 26px;animation:.65s cubic-bezier(.2,.7,.2,1) both letter-unfold;position:relative;box-shadow:inset 0 0 0 7px #e8d9b450,inset 0 0 38px #9c783329,0 18px 50px #0006}.invitation-paper:before,.invitation-paper:after{content:"";pointer-events:none;background:linear-gradient(#96774e,#d7c29b 35%,#c7af83 65%,#89704a);border:1px solid #ae9462;border-radius:50%/4px;height:16px;position:absolute;left:-8px;right:-8px;box-shadow:0 4px 6px #37260d30}.invitation-paper:before{top:-9px}.invitation-paper:after{bottom:-9px}.invitation-paper .letter-signature{color:#6b5939;letter-spacing:3px;margin:-10px 0 22px;font-size:12px}.letter-recipient{font-family:var(--serif);color:#64705e;overflow-wrap:anywhere;font-size:13px}.invitation-paper h1{letter-spacing:6px;color:#253c30;margin:24px 0;font-size:36px;line-height:1.65}.invitation-paper p{font-family:var(--serif);margin-bottom:28px;font-size:14px;line-height:1.9}.invitation-paper .primary{justify-content:center;width:100%}@keyframes unseal{to{opacity:0;transform:translateY(22px)scale(1.04)}}@keyframes letter-unfold{0%{opacity:0;transform:translateY(-8px)scaleY(.9)}to{opacity:1;transform:none}}@keyframes folio-enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media (hover:hover) and (pointer:fine){.sealed-letter:hover img{transform:translateY(-6px)rotate(-1deg)}}@media (max-width:649px) and (max-height:760px){.arrival{padding:24px}.arrival-heading img{width:62px;height:62px}.arrival-heading p{font-size:26px}.arrival-heading span{margin-top:8px}.invitation-paper{padding:22px}.invitation-paper h1{margin:18px 0;font-size:29px}.invitation-paper p{margin-bottom:20px}.journey-chapter{gap:12px}.journey-chapter .magic-art{flex-basis:220px;width:220px;max-height:32dvh}.parallel-task .task-object .magic-art{width:220px;height:220px}.scene-heading h1{font-size:25px}}@media (min-width:1000px){body{background:var(--house-deep)}.app-frame{background:var(--house-base);border-color:#b49b6844;border-radius:3px}.scene-heading{padding-top:35px}.task-screen .scene-heading{padding-top:clamp(30px,8dvh,80px)}.task-screen .scene-heading h1{font-size:36px}.journey-chapter .magic-art{display:none}.journey-chapter{text-align:left;align-items:flex-start;max-width:100%;padding:24px 10px}.journey-chapter h2{letter-spacing:4px;font-size:38px}.arrival{padding:42px}.arrival-heading{padding-top:0}.arrival-frame{inset:28px}.arrival-heading img{width:72px;height:72px}.sealed-letter{max-height:500px}.invitation-paper{margin:24px auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.arrival:focus{outline:none}.house-selection{text-align:center;width:min(100%,480px);margin:auto}.house-selection h1{letter-spacing:4px;margin-bottom:24px;font-size:28px}.house-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.house-choice{--choice:#274437;background:linear-gradient(145deg, var(--choice), #0b1513);color:#e8d9b4;border:1px solid #b49b6866;flex-direction:column;align-items:center;gap:10px;padding:18px 8px;transition:transform .2s;display:flex;box-shadow:inset 0 0 0 4px #0002}.house-choice[aria-pressed=true]{border-color:#e2c581}.house-choice:active{transform:scale(.98)}.house-gryffindor{--choice:#623038}.house-ravenclaw{--choice:#294365}.house-hufflepuff{--choice:#5a492b}.house-crest{object-fit:contain;width:90px;height:90px}.house-choice strong{font-family:var(--serif);letter-spacing:2px;font-size:17px;font-weight:400}.house-choice small{color:#bdb69f;font-size:10px}.house-switch{padding:8px 4px}.house-tag,.identity-card .eyebrow,.avatar-chooser button,.upload-inline{color:#b9bea7}.avatar-chooser button[aria-pressed=true]{color:#e2d4b2;background:#b49b6818;border-color:#b49b68}.address-summary{background:#b49b6808;border-color:#b49b6844;border-radius:2px}.address-summary p,.address-summary strong,.record-links,.enrolled-stamp,.house-tag{color:#c9cbb6}.record-links a{border-color:#b49b6844}@media (max-width:380px){.brand strong{letter-spacing:1px;font-size:15px}.brand-crest{width:26px;height:32px}.app-header{gap:6px;padding:0 12px}.phase-link{font-size:10px}.invitation-replay{padding:7px 4px;font-size:11px}.icon-button{width:32px}.house-choices{gap:10px}.house-choice{padding:12px 6px}.house-selection h1{margin-bottom:18px;font-size:24px}}.primary:hover:not(:disabled){background:linear-gradient(110deg, var(--house-raised), var(--house-panel))}@media (max-width:360px){.phase-link{display:none}.house-crest{width:78px;height:78px}}@media (max-width:480px){.phase-link{display:none}.header-tools{margin-left:auto}}
.scene-page{position:relative}.heirloom-frame{pointer-events:none;color:var(--house-accent);z-index:2;position:absolute;inset:6px}.filigree{stroke:currentColor;stroke-width:.85px;stroke-linecap:round;stroke-linejoin:round;opacity:.65;width:48px;height:48px;position:absolute}.filigree-nw{top:0;left:0}.filigree-ne{top:0;right:0;transform:scaleX(-1)}.filigree-sw{bottom:0;left:0;transform:scaleY(-1)}.filigree-se{bottom:0;right:0;transform:scale(-1)}.heirloom-frame-compact{inset:3px}.heirloom-frame-compact .filigree{stroke-width:1.25px;opacity:.8;width:21px;height:21px}.primary{text-shadow:0 1px 1px #0008;border-color:var(--house-accent)}.primary:after{content:"";pointer-events:none;border-top:1px solid #e8d5a52a;border-bottom:1px solid #e8d5a51c;position:absolute;inset:4px 26px}.engraved-divider{width:min(80%,112px);height:13px;color:var(--house-accent);pointer-events:none;opacity:0;display:block;position:absolute;bottom:-4px;left:50%;transform:translate(-50%)}.engraved-divider svg{stroke:currentColor;stroke-width:1px;width:100%;height:100%}.segments button[aria-pressed=true]{background:linear-gradient(0deg, color-mix(in srgb, var(--house-accent) 8%, transparent), transparent 85%);border-bottom-color:#0000}.segments button[aria-pressed=true] .engraved-divider{opacity:1}.steps button[aria-current]{border-bottom:1px solid var(--house-accent)}.steps button span{box-shadow:0 0 0 2px var(--house-panel), 0 0 0 3px color-mix(in srgb, var(--house-accent) 31%, transparent)}.steps button[aria-current] span{background:radial-gradient(circle at 35% 25%, #e4ce94, var(--house-accent) 65%, #716044);box-shadow:0 0 0 2px var(--house-panel), 0 0 0 3px var(--house-accent)}input:not([type=checkbox]):not([type=file]),select,textarea{border-color:color-mix(in srgb, var(--house-accent) 45%, transparent);box-shadow:inset 0 0 0 3px var(--house-input), inset 0 0 0 4px color-mix(in srgb, var(--house-accent) 11%, transparent), inset 0 3px 9px #0003;background-image:linear-gradient(110deg, color-mix(in srgb, var(--house-accent) 3%, transparent), transparent 55%);border-radius:2px}input:not([type=checkbox]):not([type=file]):focus,select:focus,textarea:focus{border-color:var(--house-accent);outline:2px solid color-mix(in srgb, var(--house-accent) 45%, transparent);outline-offset:2px}.avatar{border-color:var(--house-accent);box-shadow:0 0 0 2px var(--house-panel), 0 0 0 3px color-mix(in srgb, var(--house-accent) 35%, transparent), 0 3px 9px #0004}.avatar.large{box-shadow:0 0 0 3px var(--house-panel), 0 0 0 4px var(--house-accent), 0 0 0 7px color-mix(in srgb, var(--house-accent) 9%, transparent), 0 5px 16px #0004}.avatar-chooser button{border-radius:44% 44% 3px 3px}.avatar-chooser button[aria-pressed=true]{background:linear-gradient(180deg, color-mix(in srgb, var(--house-accent) 11%, transparent), transparent);box-shadow:inset 0 0 0 3px var(--house-panel), inset 0 0 0 4px color-mix(in srgb, var(--house-accent) 16%, transparent)}.address-summary,.score-rule,.review-address,.choice-grid button{border-color:color-mix(in srgb, var(--house-accent) 30%, transparent);box-shadow:inset 0 0 0 3px var(--house-panel), inset 0 0 0 4px color-mix(in srgb, var(--house-accent) 7%, transparent)}.pager button,.back-link,.gallery-directory-button{border:1px solid color-mix(in srgb, var(--house-accent) 25%, transparent);background:linear-gradient(135deg, color-mix(in srgb, var(--house-accent) 7%, transparent), transparent);border-radius:2px}.bottom-nav{border-top:1px solid color-mix(in srgb, var(--house-accent) 15%, transparent)}.bottom-nav a[aria-current]>svg{filter:drop-shadow(0 1px 2px #0005)}.bottom-nav a i{border:1px solid var(--house-accent);background:var(--house-panel);width:6px;height:6px;bottom:5px;transform:rotate(45deg)}@media (min-width:1000px){.heirloom-frame:not(.heirloom-frame-compact)>.filigree{opacity:.55;width:64px;height:64px}}@media (max-width:480px){.heirloom-frame:not(.heirloom-frame-compact)>.filigree{width:34px;height:34px}}@media (forced-colors:active){.heirloom-frame,.engraved-divider{display:none}}@media (max-width:480px){.heirloom-frame:not(.heirloom-frame-compact)>.filigree{width:28px;height:28px}}.scene{box-shadow:inset 0 0 0 1px #e4cb8b28,inset 0 0 0 4px #0003,0 10px 32px #0005}.scene-page{background-image:radial-gradient(at 50% 0,#cfad651a,#0000 60%),linear-gradient(90deg,#0002,#0000 12% 88%,#0002)}.heirloom-frame:not(.heirloom-frame-compact){border:1px solid color-mix(in srgb, var(--house-accent) 30%, transparent);box-shadow:0 0 0 2px #0002,inset 0 0 0 2px #ead3a00a}.filigree{opacity:.9;filter:drop-shadow(0 1px #000c)drop-shadow(0 -.5px #fce6b03b)}.frame-crown{background:var(--house-panel);width:110px;height:17px;position:absolute;top:-7px;left:50%;transform:translate(-50%)}.frame-crown .engraved-divider{opacity:1;width:100%;height:17px;bottom:0}.primary,.primary:hover:not(:disabled){background:linear-gradient(180deg, #dfbd7136, #d9b56f08 45%, #0002 51%, #ba965323), linear-gradient(110deg, var(--house-raised), var(--house-panel));box-shadow:inset 0 1px 0 #f8e7ae6b, inset 0 -2px 0 #0008, inset 0 0 0 3px var(--house-base), 0 0 0 1px #e5c88322, 0 4px 9px #0005}.primary .heirloom-frame-compact .filigree{opacity:1;width:24px;height:24px}.exhibit-photo{border:3px double var(--house-accent);box-shadow:0 0 0 2px #0003, 0 0 0 3px color-mix(in srgb, var(--house-accent) 22%, transparent)}.exhibit-photo>img{padding:5px}.exhibit-photo .heirloom-frame-compact .filigree{opacity:1;width:32px;height:32px}.exhibit-number{border:1px solid color-mix(in srgb, var(--house-accent) 40%, transparent);box-shadow:inset 0 0 0 2px var(--house-panel);background:linear-gradient(135deg,#c1a26522,#0000);padding:4px 8px}.applause{border:1px solid var(--house-accent);box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--house-accent) 16%, transparent);-webkit-backdrop-filter:none;backdrop-filter:none;z-index:3;border-radius:2px}.segments{border-top:1px solid color-mix(in srgb, var(--house-accent) 13%, transparent)}.segments button[aria-pressed=true]{text-shadow:0 1px 2px #0008;background:linear-gradient(#0000 10%,#c6a46626)}@media (min-width:1000px){.heirloom-frame:not(.heirloom-frame-compact)>.filigree{opacity:.8}}.gallery-toolbar .icon-button,.pager button,.back-link{border:1px solid color-mix(in srgb, var(--house-accent) 45%, transparent);color:var(--ink);background:linear-gradient(145deg, color-mix(in srgb, var(--house-accent) 14%, transparent), transparent), var(--house-panel);box-shadow:inset 0 0 0 2px var(--house-panel), inset 0 0 0 3px color-mix(in srgb, var(--house-accent) 15%, transparent);border-radius:2px}.gallery-toolbar .icon-button:hover{background-color:var(--house-raised)}
.app-frame{isolation:isolate;background:var(--house-deep)}.app-frame:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(180deg, var(--house-base), transparent 28%, transparent 75%, var(--house-deep)), url(/magic/heritage/manor-background.webp) center / cover no-repeat;opacity:.78;position:absolute;inset:0}.app-header{background:color-mix(in srgb, var(--house-deep) 65%, transparent);border-bottom-color:#b49b6820}.workspace{padding:0 16px}.scene,.scene-page{box-shadow:none;background:0 0;border:0;border-radius:0}.scene:after,.scene-page>.heirloom-frame,.primary>.heirloom-frame,.exhibit-photo>.heirloom-frame{display:none}.scene-heading,.task-screen .scene-heading{text-align:center;padding:26px 10px 20px;position:relative}.scene-heading>div{flex:1}.scene-heading h1,.task-screen .scene-heading h1{letter-spacing:2px;text-shadow:0 2px 12px #000;font-size:clamp(25px,7.2vw,32px);line-height:1.5}.scene-heading .back-link{width:44px;height:44px;box-shadow:none;background:0 0;border:0;justify-content:center;margin:0;position:absolute;top:28px;left:8px}.scene-heading:has(.back-link){padding-left:60px;padding-right:60px}.segments{border-top:0;border-bottom-color:#b49b6826}.segments button{font-family:var(--serif);font-size:14px}.segments button[aria-pressed=true]{background:linear-gradient(#0000,#c6a46612)}.scene-content{padding-left:6px;padding-right:6px}.scene-footer{background:linear-gradient(0deg, var(--house-deep), transparent);padding-left:6px;padding-right:6px}.primary,.primary:hover:not(:disabled){border:1px solid var(--house-accent);background:linear-gradient(110deg, #b49b6820, transparent 65%), var(--house-base);box-shadow:inset 0 0 0 3px var(--house-base), inset 0 0 0 4px #b49b683d, 0 5px 18px #0006;font-family:var(--serif);letter-spacing:2px;border-radius:1px}.primary:after{border-top:0;border-bottom-color:#e8d5a519;inset:5px 14px}.task-screen .scene-content{gap:0;overflow:hidden}.task-object{width:100%;min-height:100px;max-height:none}.task-object:after{content:"";background:radial-gradient(#0009,#0000 70%);border-radius:50%;width:65%;height:14px;position:absolute;bottom:10%}.task-object .magic-art{z-index:1;filter:drop-shadow(0 15px 12px #0008);width:min(100%,390px);height:100%}.task-status{padding:8px 0}.gallery-screen .scene-content{background:linear-gradient(180deg, transparent, color-mix(in srgb, var(--house-deep) 90%, transparent) 66%)}.exhibit-photo{background:#080d0b99;border:1px solid #b49b6844;box-shadow:0 10px 28px #0006}.exhibit-photo>img{padding:0}.exhibit-number{box-shadow:none;background:0 0;border:0;padding:0}.exhibit-story h2{color:var(--ink)}.gift-caption{color:#c0bcac}.pager button{background:var(--house-deep);box-shadow:none;border-color:#b49b6826}.profile-overview{background:linear-gradient(180deg, transparent, color-mix(in srgb, var(--house-deep) 85%, transparent))}.identity-card{position:relative}.identity-card .avatar.large{width:112px;height:112px;box-shadow:0 0 0 5px #0a1510,0 0 0 6px #b49b68,0 12px 30px #0009}.address-summary{background:color-mix(in srgb, var(--house-deep) 90%, transparent);box-shadow:none;border:0;border-top:1px solid #b49b6844;border-bottom:1px solid #b49b6826}.form-scene .scene-content,.guess-screen .scene-content{background:color-mix(in srgb, var(--house-deep) 80%, transparent)}.bottom-nav{background:linear-gradient(0deg, var(--house-deep) 55%, transparent);border-top-color:#b49b681f}@media (max-height:720px){.scene-heading,.task-screen .scene-heading{padding-top:16px;padding-bottom:12px}.scene-heading .back-link{top:18px}.identity-card .avatar.large{width:88px;height:88px}}@media (min-width:1000px){.app-frame:before{opacity:.55;background-size:100% 100%}.scene-page{background:color-mix(in srgb, var(--house-deep) 85%, transparent)}.desktop-art{background:0 0;border:0}.desktop-art:before,.desktop-art:after{display:none}.scene-heading{padding-top:32px}}.app-frame:before{background-color:var(--house-base);background-blend-mode:normal, luminosity}@media (min-width:1000px){.app-frame:before{background-position:50%,12%;background-size:100% 100%,auto 100%}}.brand strong{letter-spacing:2px;font-size:19px}.brand-crest{width:38px;height:42px}.header-tools{gap:10px;margin-left:auto}.header-tools .icon-button{color:var(--house-accent);width:38px;height:40px}.scene-heading>.engraved-divider{opacity:.75;width:100px;height:12px;bottom:7px}.scene-heading{padding-bottom:23px}.scene-heading:has(.back-link) h1{font-size:clamp(23px,6vw,30px)}.primary,.primary:hover:not(:disabled){isolation:isolate;box-shadow:none;background:0 0;border:0;min-height:51px;font-size:15px;overflow:visible}.primary:after{display:none}.primary>.action-border{width:100%;height:100%;stroke:var(--house-accent);stroke-width:1px;pointer-events:none;z-index:-1;position:absolute;inset:0}.action-border path:first-child{fill:var(--house-base)}.bottom-nav a>svg{width:26px;height:26px;color:var(--house-accent);stroke-width:1.25px}.bottom-nav a[aria-current]>svg{fill:color-mix(in srgb, var(--house-accent) 18%, transparent)}.bottom-nav a span{font-family:var(--serif);letter-spacing:1px;font-size:11px}.estate-menu{gap:0;display:grid}.estate-menu>*{min-height:48px;font-family:var(--serif);color:var(--ink);border-bottom:1px solid #b49b682e;justify-content:space-between;align-items:center;padding:17px 4px;font-size:18px;display:flex}.rule-content{color:#d2ccb8}.identity-card .avatar.large,.recipient-identity .avatar.large{border:2px solid var(--house-accent);width:clamp(106px,16dvh,148px);height:clamp(116px,18dvh,162px);box-shadow:0 0 0 4px var(--house-deep), 0 0 0 5px #b49b6866, 0 8px 24px #0008;border-radius:48%}.identity-card h2,.recipient-identity h2{font-family:var(--serif);letter-spacing:1px;font-size:25px}.house-tag{font-family:var(--serif);border-color:#b49b6866;border-radius:2px;padding:5px 14px}.address-summary,.recipient-address{background:color-mix(in srgb, var(--house-deep) 90%, transparent);border:1px solid #b49b6855;padding:16px 12px;box-shadow:inset 0 0 0 3px #b49b6808}.send-screen .recipient-identity{margin-bottom:12px}.send-screen .scene-content,.auth-scene .scene-content{background:0 0}.auth-scene .login-form{max-width:400px;margin:auto}.auth-scene .login-form>.magic-art{width:95px;height:110px;margin:0 auto 14px}.auth-scene input{background-color:var(--house-deep)}.photo-upload,.received-photo,.photo-review{background-color:var(--house-deep);border:1px solid #b49b6870;border-radius:3px;box-shadow:0 7px 24px #0005}.notebook{background:color-mix(in srgb, var(--house-deep) 88%, transparent);border:1px solid #b49b6844;gap:10px;min-height:0;padding:14px}.note-recipient{padding-bottom:9px}.note-photo{flex-shrink:0;height:clamp(76px,14dvh,140px);position:relative}.note-photo img{object-fit:contain}.note-answer{border-bottom-style:solid;gap:6px;padding:7px 0 10px}.note-answer strong{font-family:var(--serif);font-size:21px}.rank-board>.magic-art{width:100px;height:110px;margin:0 auto 12px;display:block}.rank-row{background:color-mix(in srgb, var(--house-deep) 90%, transparent);border:1px solid #b49b6855;border-radius:2px;margin-bottom:8px}.rank-row>b{font-family:var(--serif);color:var(--house-accent)}.pair-photo{width:100%;height:clamp(140px,29dvh,280px);position:relative}.pair-photo img{object-fit:contain}.manage-stage .eyebrow{display:none}.manage-stage h2{font-family:var(--serif);font-size:30px}.stage-counts{background:color-mix(in srgb, var(--house-deep) 90%, transparent);border:1px solid #b49b6833;padding:12px}.stage-counts b{color:var(--house-accent);font-family:var(--serif)}.arrival{background-image:linear-gradient(180deg, var(--house-deep), transparent 35%, var(--house-deep)), url(/magic/heritage/manor-background.webp);background-size:cover;background-color:var(--house-base);background-blend-mode:normal, luminosity}.arrival-frame{display:none}.house-choice{box-shadow:none;background:0 0;border:0;padding:12px 4px}.house-choice[aria-pressed=true]{outline-offset:-4px;background:radial-gradient(#b49b6820,#0000 70%);outline:1px solid #b49b6855}.house-crest{width:102px;height:118px}@media (max-height:760px){.scene-heading{padding-bottom:18px}.identity-card .avatar.large,.recipient-identity .avatar.large{width:92px;height:102px}.identity-card h2,.recipient-identity h2{font-size:22px}.notebook{gap:7px;padding:10px}.note-photo{height:74px}.note-answer strong{font-size:18px}.rank-board>.magic-art{display:none}.house-crest{width:80px;height:92px}}.choice-list button{background:color-mix(in srgb, var(--house-deep) 88%, transparent);border-color:#b49b6855;border-radius:3px;box-shadow:inset 0 0 0 3px #b49b6808}.choice-list button>span:nth-child(2){font-family:var(--serif);font-size:17px}.choice-list button[aria-pressed=true]{border-color:var(--house-accent);background:color-mix(in srgb, var(--house-accent) 14%, var(--house-deep))}.question-clue{background:color-mix(in srgb, var(--house-deep) 90%, transparent);border:1px solid #b49b6855;border-radius:3px;padding:9px}.question-clue .score-rule{box-shadow:none;background:0 0;border:0;padding:4px}.selection-summary{font-size:11px}@media (max-height:760px){.choice-list button>span:nth-child(2){font-size:15px}.question-clue{padding:5px}}.app-frame,.arrival,.sheet{--house-base:#101d1a;--house-deep:#09120f;--house-panel:#13231e;--house-raised:#2a3b2e;--house-input:#0d1914}body{background:#09120f}.app-frame:before,.arrival{background-blend-mode:normal}.invitation-paper button.primary,.invitation-paper button.primary:hover:not(:disabled){color:#f0e4c7;text-shadow:none;background:#203e30;border:1px solid #9b8150;box-shadow:inset 0 0 0 3px #203e30,inset 0 0 0 4px #8b794e}@font-face{font-family:Tea Hand;src:url(/fonts/tea-hand.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}.invitation-paper,.invitation-paper h1,.invitation-paper p,.invitation-paper .letter-recipient,.invitation-paper button.primary{font-family:Tea Hand,STKaiti,KaiTi,serif;font-weight:400}.invitation-paper h1{letter-spacing:3px}.invitation-paper .letter-recipient{color:#55513c}.invitation-paper p{font-size:16px}.invitation-paper .letter-signature{font-size:14px}
body{background:#e9e2d6}.app-frame:before,.arrival{background:#e9e2d6 var(--art-page-background) center / cover no-repeat;opacity:1}.app-frame:before{position:fixed}.arrival-frame{display:none}.arrival[open]{padding:max(18px, env(safe-area-inset-top)) 16px max(12px, env(safe-area-inset-bottom))}.arrival-letter{justify-content:center;gap:8px}.arrival-letter .arrival-heading{display:none}.arrival .invitation-paper{aspect-ratio:2/3;width:min(91vw,66.67svh - 64.0032px,490px);box-shadow:none;background:var(--art-invitation-paper) center / 100% 100% no-repeat;color:#514020;text-align:center;border:0;flex:none;margin:0;padding:0;position:relative;container-type:inline-size}.invitation-paper:before,.invitation-paper:after{display:none}.invitation-paper .letter-brand{font:9cqw/1.2 var(--serif);letter-spacing:1cqw;color:#765629;position:absolute;top:30%;left:8%;right:8%}.invitation-paper .letter-occasion{letter-spacing:1cqw;font:4cqw/1.5 Tea Hand,STKaiti,serif;position:absolute;top:38%;left:10%;right:10%}.invitation-paper .letter-recipient{color:#514020;text-align:left;max-height:8%;font:3.6cqw/1.4 Tea Hand,STKaiti,serif;position:absolute;top:44%;left:12%;right:12%;overflow:auto}.invitation-paper h1{letter-spacing:.6cqw;color:#594323;margin:0;font:8.2cqw/1.35 Tea Hand,STKaiti,serif;position:absolute;top:51%;left:10%;right:10%}.invitation-paper>p:not(.letter-signature){margin:0;font:3.8cqw/1.6 Tea Hand,STKaiti,serif;position:absolute;top:69%;left:9%;right:9%}.invitation-paper .letter-signature{color:#69502a;letter-spacing:.5cqw;margin:0;font:3.5cqw/1.6 Tea Hand,STKaiti,serif;position:absolute;top:76%;left:12%;right:12%}.invitation-paper button.primary,.invitation-paper button.primary:hover:not(:disabled){width:68%;height:15%;min-height:44px;box-shadow:none;color:#f6e1a8;text-shadow:0 1px 2px #42372b;letter-spacing:.6cqw;background:0 0;border:0;border-radius:0;margin:0;padding:0 12%;font:4.6cqw/1.3 Tea Hand,STKaiti,serif;position:absolute;top:81%;left:16%}.arrival-skip{color:#6f593d;min-height:44px;margin:0}.primary:focus-visible,.arrival-skip:focus-visible{outline-offset:3px;outline:2px solid #ead59e}.scene-footer .primary,.scene-footer .primary:hover:not(:disabled){min-height:68px;box-shadow:none;color:#f7e2ad;background:0 0;border:0;padding:18px 48px}.scene-footer .primary>.action-border{display:none}.app-header,.bottom-nav{background-color:#e9e2d6e8}@media (min-width:800px){.app-frame:before,.arrival{background-size:100% 100%}.scene-footer .primary{max-width:360px;margin-inline:auto}}@media (max-width:600px){.arrival,.app-frame:before{background-size:100% 100%}}@media (prefers-reduced-motion:reduce){.invitation-paper,.arrival-opening .sealed-letter{animation:none}}:root,:root[data-house],.app-frame,.arrival,.sheet{--house-base:#eee8dc;--house-deep:#e9e2d6;--house-panel:#f6f0e5;--house-raised:#e4dac8;--house-input:#faf6ee;--house-accent:#896b3f;--muted:#756956}.house-choice.house-slytherin{--identity-accent:#6fa58c}.house-choice.house-gryffindor{--identity-accent:#c4817d}.house-choice.house-ravenclaw{--identity-accent:#86a6cd}.house-choice.house-hufflepuff{--identity-accent:#d9bd73}.house-choice[aria-pressed=true]{outline-color:var(--identity-accent)}@media (max-width:600px){.arrival,.app-frame:before{background-image:var(--art-page-background);background-size:100% 100%}}.story-preview,.sheet blockquote{background:#f6ecd8 var(--art-letter-paper) center / 100% auto repeat-y;color:#51432b;border:1px solid #baa16e;padding:9px 15px}.story-preview span,.story-preview svg{color:#51432b}.sheet blockquote{font-family:Tea Hand,STKaiti,serif;line-height:1.9}:root,:root[data-house],.app-frame,.arrival,.sheet{--ink:#40382f;--muted:#756956;--leaf:#766044;--line:#bca98466;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.arrival,.sheet{color:var(--ink)}.scene-heading h1,.task-screen .scene-heading h1{color:var(--ink);text-shadow:none}.primary,.primary:hover:not(:disabled),.scene-heading p,.phase-link,.invitation-replay,.demo-link,.quiet-link,.text-button,.footer-note,.muted,.privacy,.task-status p,.segments button,.steps button,.gift-caption,.rule-content,.journey-chapter p,.invitation p,.gift-owner span,.exhibit-number,.suspect-preview,.selection-summary,.pager,.pager button,.note-recipient,.note-answer>span,.note-answer small,.rank-legend,.rank-row small,.answer-slip>span:last-child,.house-tag,.identity-card .eyebrow,.avatar-chooser button,.upload-inline,.address-summary p,.record-links,.enrolled-stamp,.house-choice small,.arrival-heading span{color:var(--muted)}.segments button[aria-pressed=true],.steps button[aria-current],.bottom-nav a[aria-current],.applause,.my-score,.score-emblem,.rank-position,.rank-row>b,.score-breakdown b,.invitation-date,.chapter-state,.eyebrow{color:#785b32}.bottom-nav{color:var(--muted)}.choice-list button,.answer-slip,.pair-people strong,.address-summary strong,.house-choice,.arrival-heading p,.sealed-letter,.loading-scene,.invitation h2,.avatar-chooser button[aria-pressed=true],.score-rule,.score-rule small,.score-rule p,.score-rule b{color:var(--ink)}input:not([type=checkbox]):not([type=file]),select,textarea,select option{color:var(--ink);background-color:var(--house-input)}input::placeholder,textarea::placeholder{color:#817665}.guess-field{gap:9px;min-width:0;display:grid}.guess-field label{font-size:15px;font-weight:600}.guess-field select{appearance:auto;color:#40382f;min-height:48px;box-shadow:none;background:#fffaf1;border:1px solid #bba780;border-radius:4px;font-size:16px}.guess-field select:disabled{opacity:1;color:#6a5d4b;-webkit-text-fill-color:#6a5d4b;background:#eae2d4}.guess-field p,.guess-form-note{color:#695b48;overflow-wrap:anywhere;font-size:13px;line-height:1.65}.note-answer.correct,.note-answer.correct small{color:#496647}.note-answer.wrong,.note-answer.wrong small{color:#994b3d}.applause.active{color:#8b573f}.house-choice{background:0 0}.scene-footer .primary,.scene-footer .primary:hover:not(:disabled),.invitation-paper button.primary,.invitation-paper button.primary:hover:not(:disabled){color:#fff4dc}.primary:focus-visible,.arrival-skip:focus-visible{outline-color:#785b32}.identity-card .avatar.large,.recipient-identity .avatar.large{box-shadow:0 0 0 4px #f5ecdc,0 0 0 5px #b49b6866,0 8px 24px #594b3424}.task-object .magic-art{filter:drop-shadow(0 12px 12px #594b3433)}.exhibit-photo{background:#e9e2d6;box-shadow:0 10px 28px #594b3426}.suspect-preview small{color:var(--muted)}.invitation-paper button.primary,.invitation-paper button.primary:hover:not(:disabled),.scene-footer .primary,.scene-footer .primary:hover:not(:disabled){isolation:isolate;background:0 0}.invitation-paper button.primary:after,.scene-footer .primary:after{content:"";z-index:-1;pointer-events:none;background:var(--art-action-frame) center / 100% 100% no-repeat;filter:grayscale()sepia(.55);border:0;display:block;position:absolute;inset:0}.invitation-paper button.primary:after{background-size:contain}.app-frame.guest-frame{grid-template-rows:56px minmax(0,1fr)}.guest-screen .scene-page{grid-template-rows:auto minmax(0,1fr)}.guest-screen .scene-content{grid-row:2;justify-content:center;align-items:center;padding-bottom:clamp(40px,12dvh,130px);display:flex}.guest-welcome{width:100%;max-width:400px}.guest-welcome .empty{min-height:0;padding:0 5px}.guest-screen .scene-content .empty .magic-art{width:clamp(110px,23dvh,210px);height:clamp(140px,27dvh,240px)}.guest-welcome .scene-footer{background:0 0;margin-top:24px;padding:0}@media (min-width:1000px){.app-frame.guest-frame{grid-template-rows:65px minmax(0,1fr)}}@media (max-height:650px){.guest-screen .scene-content{padding-bottom:30px}.guest-welcome .scene-footer{margin-top:16px}}.unified-auth .scene-page{grid-template-rows:auto minmax(0,1fr)}.unified-auth .scene-content{grid-row:2;justify-content:center;align-items:center;padding-bottom:clamp(32px,12dvh,110px);display:flex}.unified-auth .login-form{flex-direction:column;flex:none;gap:20px;width:100%;max-width:380px;height:auto;min-height:0;margin:0;display:flex}.unified-auth .login-form>.magic-art{width:clamp(90px,15dvh,128px);height:clamp(110px,19dvh,156px);margin:0 auto 8px;display:block}.unified-auth .auth-action{background:0 0;flex:none;gap:12px;padding:4px 0 0}.unified-auth .login-form>.muted{text-align:center;overflow-wrap:anywhere}@media (max-height:620px){.unified-auth .scene-content{padding-bottom:20px}.unified-auth .login-form{gap:12px}.unified-auth .login-form>.magic-art{width:70px;height:84px;margin-bottom:0}}@media (max-height:460px){.unified-auth .scene-content{justify-content:flex-start}.unified-auth .login-form>.magic-art{display:none}}.profile-house-field{gap:8px;display:grid}.profile-house-field>span{font-weight:600}.house-selector{background:var(--house-input);text-align:left;border:1px solid #b49b6880;align-items:center;gap:14px;width:100%;min-height:64px;padding:5px 14px;display:flex;box-shadow:inset 0 0 0 3px #b49b6810}.house-selector img{object-fit:contain}.house-selector strong{font:19px/1.5 var(--serif);flex:1}.house-selector>svg{color:var(--house-accent)}.profile-house-picker{gap:18px;display:grid}.profile-house-picker .house-choice{padding:10px 4px}.profile-house-picker .house-choice[aria-pressed=true]{outline:1px solid var(--identity-accent);background:#b49b6815}.profile-house-picker .primary{color:var(--ink)}@media (max-height:650px){.profile-house-picker{gap:8px}.profile-house-picker .house-choice{gap:4px;padding:4px}.profile-house-picker .house-crest{width:70px;height:78px}.house-selector{min-height:52px}.house-selector img{width:36px;height:42px}}.app-frame.welcome-frame{box-shadow:none;border:0;grid-template-rows:minmax(0,1fr)}.welcome-frame>.app-header{display:none}.welcome-frame>.workspace{padding:0}.welcome-landing{isolation:isolate;text-align:center;color:#65411f;background:#e7d9c4 var(--art-welcome-hall) center / cover no-repeat;width:100%;height:100%;min-height:0;position:relative;overflow:hidden}.welcome-artboard{z-index:1;flex-direction:column;align-items:center;width:min(100%,620px);margin:auto;padding:clamp(24px,6dvh,65px) 16px 0;display:flex;position:relative}.welcome-crest{flex:none;width:min(58vw,29dvh,285px);height:auto;display:block}.welcome-artboard h1{font:500 clamp(32px, 5.5dvh, 54px)/1.2 var(--serif);letter-spacing:.1em;color:#603c19;text-shadow:0 1px #fff0cd,0 2px 1px #9c733b66;margin:clamp(6px,1.4dvh,16px) 0 0}.welcome-rule{color:#b88a47;align-items:center;gap:8px;width:70%;max-width:300px;margin:6px 0;font-size:17px;line-height:1;display:flex}.welcome-rule:before,.welcome-rule:after{content:"";background:linear-gradient(90deg,#0000,#b88a47);flex:1;height:1px}.welcome-rule:after{transform:rotate(180deg)}.welcome-artboard p{margin:0}.welcome-artboard .welcome-event{font:500 clamp(17px, 2.7dvh, 25px)/1.5 var(--serif);letter-spacing:.12em}.welcome-artboard .welcome-invitation{margin-top:clamp(12px,2.7dvh,28px);font:400 clamp(13px,2dvh,19px)/1.5 Tea Hand,STKaiti,serif}.welcome-rule-moon{margin:clamp(8px,1.5dvh,16px) 0;font-size:14px}.welcome-artboard .welcome-description{font:400 clamp(11px,1.55dvh,14px)/1.5 Tea Hand,STKaiti,serif}.welcome-enter{color:#f7e6bd;width:min(76vw,340px);min-height:44px;font:400 clamp(18px, 2.6dvh, 25px)/1 var(--serif);letter-spacing:.2em;-webkit-tap-highlight-color:#eac48333;place-items:center;margin-top:clamp(12px,2.6dvh,28px);text-decoration:none;display:grid;position:relative}.welcome-enter img{width:100%;height:auto;display:block}.welcome-enter span{place-items:center;display:grid;position:absolute;inset:0}.welcome-enter:focus-visible{outline-offset:4px;outline:2px solid #9c733b}.welcome-enter:hover{filter:brightness(1.08)}.welcome-foreground{pointer-events:none;width:min(115%,1050px);height:auto;display:block;position:absolute;bottom:0;left:50%;transform:translate(-50%)}@media (min-width:1000px){.app-frame.welcome-frame{max-width:none;height:100dvh;margin:-20px 0}}@media (prefers-reduced-motion:reduce){.welcome-enter{transition:none}}.join-scene .scene-content{justify-content:center;align-items:flex-start;padding-top:clamp(20px,6dvh,58px);display:flex}.join-summary{width:min(100%,520px)}.join-identity{border-bottom:1px solid #ae8d5940;align-items:center;gap:12px;padding-bottom:22px;display:flex}.join-identity .avatar{flex:none;width:52px;height:52px}.join-identity strong{font-size:18px}.join-identity>span{color:var(--muted);margin-left:auto;font-size:12px}.join-summary h2{text-align:center;font:400 28px/1.4 var(--serif);margin:25px 0 8px}.join-status{text-align:center;color:var(--muted);margin-bottom:28px;font-size:14px}.join-summary .address-check{width:100%;min-height:54px;margin:0 0 16px}.join-summary .checkbox-label{font-size:13px;line-height:1.6}.join-action{margin-top:28px}.join-summary>.quiet-link{margin:14px auto 0;display:block}@media (max-height:650px){.join-scene .scene-content{padding-top:8px}.join-identity{padding-bottom:12px}.join-summary h2{margin-top:14px;font-size:24px}.join-status{margin-bottom:16px}.join-action{margin-top:16px}}.join-summary .join-action.scene-footer{background:0 0;padding:0;position:static}.profile-scene .profile-overview{background:0 0;gap:24px;padding:24px 12px}.profile-scene .identity-card .avatar.large{aspect-ratio:1;border-radius:50%;width:clamp(96px,17dvh,148px);height:auto}.profile-scene .house-tag{color:#88704c;letter-spacing:.14em;background:0 0;border:0;padding:2px 0}.profile-address-entry{color:#785c35;width:min(80%,260px);min-height:52px;font:400 18px/1.5 var(--serif);letter-spacing:.12em;background:0 0;border:1px solid #ae8d594a;border-left:0;border-right:0;justify-content:center;align-items:center;gap:12px;margin:0 auto;display:flex}.profile-address-entry:hover{background:#b89a6210}.profile-address-entry:focus-visible{outline-offset:4px;outline:2px solid #ae8d59}.profile-address-details{margin:0}.profile-address-details>div{border-bottom:1px solid #ae8d5930;grid-template-columns:76px minmax(0,1fr);gap:16px;padding:16px 0;display:grid}.profile-address-details dt{color:var(--muted);font-size:13px}.profile-address-details dd{overflow-wrap:anywhere;margin:0;font-size:16px}@media (max-height:650px){.profile-scene .profile-overview{gap:16px;padding:12px}.profile-scene .identity-card .avatar.large{width:82px}}.recipient-address-lines{gap:8px;display:grid}.recipient-address-lines p{overflow-wrap:anywhere;margin:0;font-size:15px;line-height:1.6}.sheet .recipient-address,.shipment-record-fields{box-shadow:none;background:#f4ecdfed;border:0;padding:18px 20px}.shipment-record-fields{gap:10px;margin-top:14px;display:grid}.shipment-record-fields p{overflow-wrap:anywhere;margin:0;font-size:15px;line-height:1.6}.shipment-record-editor{gap:16px;display:grid}.shipment-record-editor label{gap:8px;display:grid}.send-screen .gift-naming{padding-inline:16px}.gift-name-hint{color:#66543c;text-wrap:pretty;margin:0;font-size:14px;line-height:1.7}.task-screen .scene-footer .receive-delivery-status{text-align:center;color:#785c35;margin:0 12px 10px;font-size:14px;line-height:1.6;display:block}@media (max-height:650px){.task-screen .scene-footer .receive-delivery-status{margin-bottom:4px;font-size:12px}}.receive-screen .scene-content{background:0 0}.receive-screen .receive-form{justify-content:flex-start;gap:12px;max-width:520px;min-height:100%;margin:auto;padding:20px 4px 12px}.receive-screen .photo-upload{height:auto;min-height:0;max-height:none;box-shadow:none;color:#785c35;background:#f4ecdfb3;border:1px solid #ae8d5955;border-radius:2px;flex-direction:column;flex:none;padding:28px 12px}.receive-screen .photo-upload:not(.has-photo){margin:clamp(8px,5dvh,48px) auto 0}.receive-screen .photo-upload.has-photo{background:0 0;border:0;padding:0}.receive-screen .photo-upload .upload-label{color:#785c35;background:0 0;border-bottom:1px solid #ae8d5960;border-radius:0;min-height:44px;margin:0;position:static}.receive-screen .photo-upload small{color:#85765e}.receive-photo-frame,.receive-screen .caption-preview,.receive-screen .publish-preview{width:100%;height:clamp(150px,34dvh,360px);min-height:0;box-shadow:none;background:#eee5d750;border:0;border-radius:0;flex:none;margin:0;position:relative;overflow:hidden}.receive-photo-frame img,.receive-screen .caption-preview img,.receive-screen .publish-preview img{object-fit:contain}.receive-screen .caption-preview{height:clamp(110px,24dvh,250px)}.receive-screen .receive-form textarea{height:100px;min-height:80px}.receive-screen .receive-preview-label{text-align:center;color:#85765e;font-size:12px}.receive-screen .receive-form .gift-caption{overflow-wrap:anywhere;margin:0}@media (max-height:650px){.receive-screen .receive-form{gap:8px;padding-top:6px}.receive-screen .photo-upload{padding:16px 10px}.receive-screen .photo-upload:not(.has-photo){margin-top:4px}.receive-photo-frame,.receive-screen .publish-preview{height:27dvh}.receive-screen .receive-form textarea{height:74px;min-height:74px}.receive-screen .caption-preview{height:16dvh}.receive-screen .receive-form label{gap:5px}}.gift-story-inline{background:#f4ecdfcf;gap:10px;padding:10px 12px;display:grid}.gift-story-inline>div>span{color:#88704c;margin-bottom:4px;font-size:11px;display:block}.gift-story-inline p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.5}.gift-edit-link{color:#785c35;align-items:center;gap:6px;min-height:40px;font-size:13px;display:flex}.received-post-actions{flex-wrap:wrap;gap:10px;width:100%;margin:8px 0 14px;display:flex}.received-post-actions>a,.received-post-actions>button{color:#54432f;background:#f7efdf;border:1px solid #b9a278;border-radius:4px;flex:auto;justify-content:center;align-items:center;gap:7px;min-height:46px;padding:10px 12px;font-size:14px;line-height:1.5;display:flex}.received-post-actions .withdraw-post{color:#874b3d}.post-withdrawn-note,.withdraw-explanation{color:#695b48;background:#f7efdf;padding:12px 14px;font-size:14px;line-height:1.7}.withdraw-explanation{margin:14px 0}.receive-edit-screen .receive-form{background:#f7efdf;border:1px solid #c3ad80;min-height:0;margin-top:10px;padding:16px}.receive-edit-screen .receive-photo-frame{flex:none;height:clamp(140px,28dvh,260px)}.receive-edit-screen .scene-footer>.quiet-link{margin-top:8px}.photo-screen .received-photo{min-height:160px}.gift-exhibit:has(.gift-story-inline) .exhibit-photo{min-height:100px}.gallery-list-screen .scene-content{background:0 0;padding-top:16px}.gallery-list-screen .scene-title-line{justify-content:center;align-items:center;gap:12px;display:flex}.gallery-list-screen .scene-title-line h1{white-space:nowrap}.gallery-heart-budget{white-space:nowrap;font:11px/1.5 var(--sans);letter-spacing:0;color:#785b32;align-items:center;gap:4px;display:inline-flex}.gallery-heart-budget svg{color:#a7453c}.gallery-heart-budget b{font-size:14px;font-weight:600}.gift-register-row.gift-register-withdrawn{grid-template-columns:44px minmax(0,1fr)}.gift-register{margin:0;padding:0;list-style:none}.gift-register li{background:linear-gradient(90deg,#0000,#fff8ed70,#0000);border-bottom:1px solid #ad8b514a;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.gift-register-row{color:#534532;grid-template-columns:44px minmax(0,1fr) 72px;align-items:center;gap:12px;padding:18px 10px;text-decoration:none;display:grid}.gift-register-row:hover,.gift-register-row:focus-visible{outline-offset:-2px;background:#fff7e9b8}.gift-register-person{gap:5px;min-width:0;display:grid}.gift-register-person strong{overflow-wrap:anywhere;font-size:16px;font-weight:500}.gift-register-person>span{color:#695b48;font-size:12px}.gift-register-caption{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.gift-register-photo{background:#eee4d3;border:1px solid #b7996259;width:72px;height:72px;padding:3px;display:block;position:relative}.gift-register-photo img{object-fit:contain}@media (max-width:360px){.gallery-list-screen .scene-title-line{gap:8px}.gallery-heart-budget{gap:3px;font-size:10px}.gift-register-row{grid-template-columns:36px minmax(0,1fr) 58px;gap:9px;padding:12px 4px}.gift-register-row.gift-register-withdrawn{grid-template-columns:36px minmax(0,1fr)}.gift-register-row .avatar{width:36px;height:36px}.gift-register-photo{width:58px;height:58px}.gift-register-person strong{font-size:14px}}.gift-detail-screen .scene-page{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#bca984 transparent;background:0 0;scroll-padding-block:16px;display:block;overflow-y:auto}.gift-detail-screen .scene-heading{padding-top:14px;padding-bottom:14px}.gift-detail-screen .scene-heading .back-link{top:10px}.gift-detail-screen .scene-content{background:0 0;padding:0 6px 24px;overflow:visible}.gift-letter{color:#382c20;background:#f8f0e2;border:1px solid #c3ad80;width:100%;max-width:680px;margin-inline:auto;padding:clamp(16px,4vw,26px)}.gift-letter-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.gift-letter-context{grid-template-columns:104px minmax(0,1fr);align-items:start;gap:14px;display:grid}.gift-letter-photo{background:#eae0d0;border:1px solid #c3ad8066;width:100%;height:120px;position:relative}.gift-letter-photo img{object-fit:contain}.gift-letter-photo>span{color:#fff8e9;background:#40382fed;align-items:center;gap:4px;padding:4px 6px;font-size:11px;display:flex;position:absolute;bottom:0;right:0}.gift-letter-message{min-width:0}.gift-letter-recipient{color:#695b48;overflow-wrap:anywhere;align-items:center;gap:8px;min-width:0;font-size:12px;line-height:1.6;display:flex}.gift-letter-recipient .avatar{flex-shrink:0;width:28px;height:28px}.gift-letter-recipient strong{color:#382c20;font-weight:600}.gift-letter-message h2{overflow-wrap:anywhere;margin:0 0 8px;font-size:20px}.gift-letter-caption{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:15px;line-height:1.7}.gift-detail-screen .guess-form{background:0 0;border:0;border-top:1px solid #c3ad8066;gap:16px;width:100%;max-width:none;margin:16px 0 0;padding:16px 0 0;display:grid}.gift-detail-screen .guess-field{gap:7px}.guess-field-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.guess-field-heading label{min-width:0}.guess-reward{color:#785b32;white-space:nowrap;flex-shrink:0;font-size:12px;line-height:1.5}.gift-detail-screen .guess-form-note{font-size:12px}.gift-detail-screen .guess-field select{width:100%;min-width:0;height:3em}.gift-detail-screen .scene-footer{z-index:auto;background:0 0;margin-top:10px;padding:0;position:static}.gift-detail-screen .scene-footer .primary{max-width:330px;min-height:64px;margin-inline:auto}.gift-letter-tools{flex-shrink:0}.gift-like{white-space:nowrap;color:#695337;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:flex-end;gap:3px;min-width:44px;min-height:44px;padding:0;font-size:13px;display:flex}.gift-like-label{align-items:center;gap:5px;line-height:20px;display:flex}.gift-like.active .gift-like-label svg{color:#a7453c}.gift-like:disabled{opacity:1}.gift-like-compact{align-items:center;padding:8px 4px}.gift-like-compact .gift-like-label{flex-direction:column;gap:2px;font-size:12px}.gift-like-compact .sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.gift-like-help{color:#695b48;font-size:12px;line-height:1.5}.score-rule>.like-score-rule{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;margin-top:8px;padding-top:8px;display:grid}.like-score-rule small{grid-column:1/-1;margin-left:0}.results-screen .score-breakdown{background:#f8f0e2;gap:14px 16px;padding:16px 14px}.results-screen .score-breakdown>div{color:#574832;font-size:12px}.gift-answer{border-top:1px solid #c3ad8066;margin-top:22px;padding-top:18px}.gift-answer>p{font-size:15px}.gift-answer>.quiet-link{min-height:44px;margin-top:8px}.manage-received-link{color:#594323;background:#f8f0e2;border:1px solid #c3ad80;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding:14px 12px;display:flex}.manage-received-link small{color:#695b48;margin-top:4px;font-size:12px;display:block}@media (max-width:360px){.gift-letter-context{grid-template-columns:88px minmax(0,1fr);gap:12px}.gift-letter-photo{height:104px}.gift-letter{padding:14px}}@media (min-width:800px){.gift-letter-context{grid-template-columns:180px minmax(0,1fr);gap:24px}.gift-letter-photo{height:160px}.gift-letter-caption{font-size:17px}}.join-scene .scene-content{padding-top:10px}.join-invitation-art{justify-content:center;align-items:center;height:clamp(140px,27dvh,290px);margin:4px auto 18px;display:flex}.join-invitation-art .magic-art{width:min(82%,350px);height:100%}.join-invitation-art img{object-fit:contain}.join-summary .join-salutation{margin:10px 0 22px;font-size:clamp(23px,5.8vw,30px)}.join-summary .join-status{color:#795b32;margin-bottom:20px;font-size:14px}.join-summary .join-action{margin-top:20px}@media (max-height:650px){.join-scene .scene-content{padding-top:0}.join-invitation-art{height:115px;margin:0 auto 6px}.join-summary .join-salutation{margin:4px 0 12px;font-size:23px}.join-summary .join-status{margin-bottom:10px;font-size:13px}.join-summary .address-check{min-height:42px;margin-bottom:10px}.join-summary .join-action{margin-top:12px}}.suspect-list{background:#f7efdf;border:1px solid #c1a77a70;padding:0 14px}.suspect-list>div{grid-template-columns:40px minmax(0,1fr) max-content;align-items:center;gap:12px;padding:14px 0;display:grid}.suspect-list strong{color:#3e3023;white-space:normal;overflow-wrap:anywhere;font-size:15px}.suspect-list>div>span:last-child{color:#563e22;white-space:nowrap;text-align:right;min-width:42px;margin:0;font-size:16px;font-weight:600}.suspect-list .avatar{width:40px;height:40px}.gallery-screen .suspect-preview{color:#685031;min-height:44px;padding:10px 12px;font-size:14px}.notes-screen .scene-content{background:0 0}.notes-guidance{color:#705b3d;margin:0 6px 14px;font-size:13px}.notes-register{gap:16px;margin:0;padding:0 4px 20px;list-style:none;display:grid}.note-entry{background:#f8efdf;border:1px solid #bba17488;padding:14px 16px}.note-entry .note-recipient{grid-template-columns:38px minmax(0,1fr) 60px;gap:10px;margin:0 0 10px;padding-bottom:12px;display:grid}.note-entry .note-recipient .avatar{width:38px;height:38px}.note-entry .note-recipient>div{flex-direction:column-reverse;gap:4px;display:flex}.note-entry .note-recipient strong{color:#3e3023;font-size:15px}.note-entry .note-recipient span{color:#79694f;font-size:12px}.note-thumbnail{background:#ede2d1;width:60px;height:60px;display:block;position:relative}.note-thumbnail img{object-fit:contain}.note-entry .note-answer{border:0;gap:5px;padding:8px 0}.note-entry .note-answer>span{color:#796144;font-size:12px}.note-entry .note-answer>strong{color:#382d22;overflow-wrap:anywhere;font-size:17px;line-height:1.5}.note-entry .note-answer small{color:#665335;font-size:12px}.note-entry-action{color:#725126;border-top:1px solid #bba17455;justify-content:flex-end;align-items:center;gap:8px;min-height:44px;margin-top:6px;font-size:14px;text-decoration:none;display:flex}.note-entry .note-answer{grid-template-columns:76px minmax(0,1fr);align-items:baseline;gap:4px 10px;display:grid}.note-entry .note-answer small{grid-column:1/-1}.scene-content:has(.gift-ring){background:0 0;overflow-x:hidden}.gift-ring{outline-offset:-3px;flex-direction:column;justify-content:center;width:100%;min-height:100%;display:flex}.ring-stage{perspective:1000px;touch-action:pan-y;-webkit-user-select:none;user-select:none;width:100%;height:clamp(290px,48dvh,510px);position:relative}.ring-card{color:#433224;width:72%;height:90%;transform:translateX(calc(var(--slot) * 22% + var(--ring-drag))) translateY(calc(var(--depth) * 12px)) scale(calc(1 - var(--depth) * .12)) rotateY(calc(var(--slot) * -8deg));filter:brightness(calc(1 - var(--depth) * .09));cursor:pointer;background:#f8efdf;border:1px solid #b2935b;border-radius:12px;flex-direction:column;gap:12px;padding:18px;transition:transform .45s cubic-bezier(.22,.7,.2,1),filter .45s;display:flex;position:absolute;top:5%;left:14%;overflow:hidden;box-shadow:0 16px 30px #57422632,inset 0 0 0 5px #e3d1ad}.ring-card.is-current{cursor:grab}.is-dragging .ring-card{cursor:grabbing;transition:none}.ring-card-number{color:#876939;letter-spacing:.12em;font-size:11px}.ring-card-photo{flex:1;width:100%;min-height:60px;display:block;position:relative}.ring-card-photo img{object-fit:contain;pointer-events:none}.ring-card-photo .magic-art{width:100%;height:100%}.ring-card-title{font:400 22px/1.45 var(--serif);overflow-wrap:anywhere}.ring-card-people{justify-content:center;align-items:center;gap:8px;font-size:13px;line-height:1.5;display:flex}.ring-card-people>span{overflow-wrap:anywhere;flex:1}.ring-card-people svg{color:#98743a;flex:none}.ring-position{text-align:center;color:#705838;margin:20px 0 10px;font-size:14px}.ring-position>span{margin-top:8px;font-size:12px;display:block}@media (max-height:650px){.ring-stage{height:265px}.ring-card{gap:7px;padding:12px}.ring-card-title{font-size:18px}.ring-position{margin:8px 0}}@media (prefers-reduced-motion:reduce){.ring-card{transition:none}}.gift-ring{height:100%;min-height:0;padding-bottom:16px}.ring-stage{flex:none;height:clamp(250px,43dvh,460px)}.ring-position{flex:none;margin:12px 0 4px}@media (max-height:650px){.ring-stage{height:235px}.gift-ring{height:auto;padding-bottom:8px}.ring-position{margin-top:6px}}.rank-board{justify-content:flex-start;gap:12px;padding:12px 12px 20px}.rank-board>.magic-art{width:100%;height:110px;margin:0 auto 10px}.rank-legend{color:#725b3b;padding:0 16px;font-size:12px}.rank-row,.rank-row.me{background:#f8efdf;border:1px solid #c3ac825c;border-radius:5px;grid-template-columns:34px 36px minmax(0,1fr) minmax(42px,max-content);gap:9px;min-height:88px;padding:14px 12px;display:grid}.rank-row.podium{grid-template-columns:50px 36px minmax(0,1fr) minmax(42px,max-content);box-shadow:inset 0 0 0 3px #fdf8ed,0 5px 14px #79572112}.rank-row.podium-1{background:linear-gradient(115deg,#f5e3b9,#fff7e5 65%,#ebd49d);border-color:#af8844}.rank-row.podium-2{background:linear-gradient(115deg,#e7e5df,#fff9ef 65%,#dfdfd9);border-color:#a6a59b}.rank-row.podium-3{background:linear-gradient(115deg,#ead4be,#fff4e6 65%,#e6c7a9);border-color:#b48a64}.rank-position{isolation:isolate;place-items:center;width:100%;height:56px;display:grid}.rank-position img{object-fit:contain;z-index:-1;width:64px;max-width:none;height:64px;position:absolute}.podium-2 .rank-position img{filter:saturate(.15)}.podium-3 .rank-position img{filter:sepia(.35)saturate(.8)brightness(.92)}.rank-position>span{color:#60451f;padding-top:4px;font:600 18px/1 Georgia,serif}.rank-row strong{color:#392e22;font-size:15px;line-height:1.5}.rank-row small{color:#756248;font-size:12px}.rank-row>b{color:#49341d;text-align:right;white-space:nowrap;font:600 27px/1.2 Georgia,serif}.rank-row>b>small{color:#756248;font:11px/1.4 sans-serif;display:block}.rank-board>p.muted{color:#766249;padding:0 4px;font-size:12px;line-height:1.7}@media (max-width:360px){.rank-board{padding:4px 6px 12px}.rank-row,.rank-row.podium{grid-template-columns:38px 28px minmax(0,1fr) minmax(34px,max-content);gap:6px;padding:12px 8px}.rank-position img{width:52px;height:52px}.rank-row .avatar{width:28px;height:28px}.rank-row strong{font-size:13px}.rank-row>b{font-size:24px}.rank-board>.magic-art{height:70px}}.rank-board>.magic-art{flex:none;height:70px;margin-bottom:4px}.rank-row{margin:0}.results-ranking .scene-page{overscroll-behavior:contain;scrollbar-width:thin;display:block;overflow-y:auto}.results-ranking .scene-content{background:0 0;padding:8px 0 16px;overflow:visible}.results-ranking .scene-footer{background:0 0;padding-top:0;position:static}.rank-view-switch{justify-content:center;gap:24px;margin:0 12px 12px;display:flex}.rank-view-switch button{color:#786950;background:0 0;border:0;border-bottom:2px solid #0000;min-height:44px;padding:8px 2px;font-size:14px}.rank-view-switch button[aria-pressed=true]{color:#503919;border-bottom-color:#987646;font-weight:600}.results-screen .rank-board{min-height:0}.gift-highlights{padding:0 12px 16px}.gift-highlights-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.gift-highlight{background:#faf1e3;border:1px solid #c3ac82;border-radius:5px;position:relative}.gift-highlight.podium-1{background:linear-gradient(115deg,#f7e8c5,#fff7e9 65%);border-color:#af8844}.gift-highlight-content{color:#392e22;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:16px;padding:16px;display:grid}.gift-highlight-photo{background:#ece3d3;width:96px;height:104px;display:block;position:relative}.gift-highlight-photo img{object-fit:contain}.gift-highlight-copy{gap:5px;min-width:0;display:grid}.gift-highlight-rank{color:#785b32;padding-right:26px;font-size:12px}.gift-highlight-copy strong{font:500 19px/1.5 var(--serif);overflow-wrap:anywhere}.gift-highlight-person{color:#695b48;overflow-wrap:anywhere;font-size:12px;line-height:1.6}.gift-highlight-count{color:#785b32;align-items:center;gap:5px;margin-top:3px;font-size:12px;line-height:20px;display:inline-flex}.gift-highlight-medal{object-fit:contain;pointer-events:none;width:36px;height:36px;position:absolute;top:6px;right:8px}.podium-2 .gift-highlight-medal{filter:saturate(.15)}.podium-3 .gift-highlight-medal{filter:sepia(.35)saturate(.8)brightness(.92)}@media (max-width:360px){.gift-highlights{padding-inline:6px}.gift-highlight-content{grid-template-columns:72px minmax(0,1fr);gap:12px;padding:12px}.gift-highlight-photo{width:72px;height:88px}.gift-highlight-copy strong{font-size:17px}}@media (max-height:650px){.rank-board{gap:8px}.rank-board>.magic-art{height:42px}.rank-row,.rank-row.podium{min-height:66px;padding-top:7px;padding-bottom:7px}.rank-position{height:44px}}.supplement-control{text-align:left;background:#f8efdf;border:1px solid #bca477;width:100%;padding:16px}.supplement-control p{color:#705a3d;font-size:13px;line-height:1.7}.supplement-control .primary{min-height:44px}.supplement-banner{color:#674b26;z-index:2;background:#f8efdf;flex-wrap:wrap;justify-content:center;gap:14px;padding:10px;font-size:13px;display:flex;position:relative}.ring-swiper.swiper{width:72%;height:90%;top:5%;overflow:visible}.ring-swiper .ring-card{filter:none;text-align:center;box-sizing:border-box;width:100%;height:100%;transition:none;position:relative;top:auto;left:auto;transform:none}.ring-swiper .swiper-slide{transform-style:preserve-3d}.ring-swiper .swiper-slide:not(.swiper-slide-visible){pointer-events:none}.app-header .brand-crest{object-fit:contain;mix-blend-mode:multiply;flex-shrink:0;width:42px;height:42px}.app-header .brand strong{color:#725530}.stage-score-note{color:#514332;background:#f2eadb;border:1px solid #c9b48e;margin:12px 16px;padding:14px 16px;font-size:15px;line-height:1.7}.verification-help{color:#514332;overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.7}.registration-count{color:#514332;text-align:center;margin:12px 0;font-size:16px;line-height:1.6}.registration-count strong{color:#79572c;font-variant-numeric:tabular-nums;padding:0 4px;font-size:24px}.participants-link{background:0 0;border:0;justify-content:center;align-items:center;gap:8px;min-height:44px;margin:8px 0;padding:4px 0;font-size:14px;text-decoration:none;display:flex}.participants-link>span{white-space:nowrap}.participants-link strong{padding:0 2px;font-size:18px}.participants-divider{color:#aa926b}.task-screen .task-status{flex-direction:column;gap:0;width:100%;max-width:none}.task-screen .task-status>p{margin:0;font-size:13px}.task-screen .task-status .participants-link{margin:0}.participants-link>span:last-child{align-items:center;gap:4px;font-size:14px;display:inline-flex}.participants-list{margin:0 16px 24px;padding:0;list-style:none}.participants-list li{color:#40372b;background:#f2eadb;border-bottom:1px solid #c9b48e;align-items:center;gap:14px;padding:16px;display:flex}.participants-list li>strong{overflow-wrap:anywhere;flex:1;min-width:0;font-size:17px}.participants-list .avatar{flex-shrink:0;width:48px;height:48px}.participant-self{color:#79572c;font-size:14px}.stage-counts .stage-joined-link{color:#79572c;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-width:44px;min-height:44px;font-size:12px;text-decoration:none;display:flex}.stage-joined-link b{text-underline-offset:5px;text-decoration:underline;text-decoration-thickness:1px}.stage-joined-link:focus-visible{outline-offset:4px;outline:2px solid #79572c}.manage-screen .manage-stage{gap:14px;min-height:0;padding:12px 0 20px}.manage-screen .stage-counts{flex-shrink:0;grid-template-columns:repeat(3,1fr)}.admin-access{color:#514332;padding:12px 16px 24px}.admin-access>p{margin:0 0 20px;font-size:13px;line-height:1.8}.admin-role-group+.admin-role-group{margin-top:26px}.admin-role-group h3{color:#4c3922;align-items:center;gap:8px;margin:0 0 12px;font-size:16px;font-weight:600;display:flex}.admin-role-group h3 small{color:#79654a;white-space:nowrap;margin-left:auto;font-size:12px;font-weight:400}.admin-member-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.admin-member-row{background:#f8f1e5;border:1px solid #d7c8ac;border-radius:5px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:84px;padding:14px 12px;scroll-margin-block:12px;display:grid}.admin-member-row.is-admin{background:#f2e3c4;border-color:#b59962 #b59962 #b59962 #93703d;border-left-style:solid;border-left-width:4px;box-shadow:inset 0 0 0 3px #fff8e755}.admin-member-row .avatar{width:44px;height:44px}.admin-member-identity{flex-direction:column;align-items:flex-start;gap:7px;min-width:0;display:flex}.admin-member-identity>strong{color:#382d22;overflow-wrap:anywhere;font-size:16px;line-height:1.5}.admin-role-badge{color:#fff3d7;white-space:nowrap;background:#38513e;border-radius:3px;align-items:center;gap:4px;padding:3px 7px;font-size:12px;font-weight:600;line-height:1.4;display:inline-flex}.admin-role-badge.is-owner{color:#fff1cf;background:#775729}.admin-member-action{color:#665030;white-space:nowrap;background:#fff9ef;border:1px solid #bfa77e;border-radius:3px;min-height:44px;padding:6px 8px;font-size:13px}.is-admin .admin-member-action{color:#654723;background:0 0;border-color:#ac8a57}.admin-member-action:hover:not(:disabled){background:#ead7b3}.admin-member-action:disabled{opacity:.5;cursor:wait}.admin-owner-lock{color:#796344;white-space:nowrap;align-items:center;gap:4px;font-size:12px;display:inline-flex}.admin-group-empty{color:#79654a;margin:0;font-size:13px}@media (max-width:360px){.admin-access{padding-inline:10px}.admin-member-row{grid-template-columns:36px minmax(0,1fr) auto;gap:8px;padding:12px 9px}.admin-member-row .avatar{width:36px;height:36px}.admin-member-identity>strong{font-size:15px}.admin-member-action{padding-inline:6px;font-size:12px}.admin-owner-lock{font-size:11px}}.app-frame.welcome-frame:before{background-image:none}
.sheet{width:min(520px,100vw - 28px);max-height:calc(100dvh - 40px);color:var(--ink);isolation:isolate;background:#faf3e7;border:1px solid #a98b57;border-radius:12px;padding:0;overflow:hidden;box-shadow:0 24px 80px #251b1659,0 4px 16px #251b1626}.sheet[open]{flex-direction:column;animation:.2s ease-out sheet-in;display:flex}.sheet::backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#28231f99}.sheet-ornament{z-index:-1;pointer-events:none;mix-blend-mode:multiply;position:absolute;inset:0}.sheet-ornament:before{content:"";border:1px solid #b99a624a;border-radius:6px;position:absolute;inset:8px}.sheet-ornament i{aspect-ratio:1;background:url(../media/dialog-tea-corner.2kx62_g_wn_q6.webp) 50%/contain no-repeat;width:100px;position:absolute}.sheet-ornament i:first-child{top:10px;left:10px}.sheet-ornament i:nth-child(2){top:10px;right:10px;transform:scaleX(-1)}.sheet-ornament i:nth-child(3){bottom:10px;left:10px;transform:scaleY(-1)}.sheet-ornament i:nth-child(4){bottom:10px;right:10px;transform:scale(-1)}.sheet-ornament i:nth-child(n+3){width:72px}.sheet>header{border:0;flex-shrink:0;justify-content:center;align-items:center;padding:48px 56px 18px;display:flex;position:relative}.sheet>header:after{content:"";background:linear-gradient(90deg,#0000,#b79962aa 20% 80%,#0000);height:1px;position:absolute;bottom:0;left:32px;right:32px}.sheet>header h2{font-family:var(--serif);text-align:center;text-wrap:balance;overflow-wrap:anywhere;margin:0;font-size:clamp(21px,5.3vw,26px);line-height:1.5}.sheet>header .icon-button{color:#705331;background:#faf3e7;border:1px solid #b99a6255;border-radius:50%;width:40px;height:40px;min-height:40px;position:absolute;top:43px;right:17px}.sheet-content{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b79c70 transparent;min-height:0;margin-bottom:32px;padding:20px 32px 24px;scroll-padding-block:20px 24px;overflow-y:auto}.sheet-content>.primary{margin-top:18px}.sheet-content>label{margin:8px 0}.sheet-content>p{color:#705f49;margin:10px 0;font-size:14px;line-height:1.8}.sheet blockquote{background:#f4e9d5}@media (max-width:360px){.sheet-content{padding-inline:24px}.sheet-ornament i{width:84px}.sheet>header{padding-inline:50px}.sheet>header .icon-button{right:12px}}@media (prefers-reduced-motion:reduce){.sheet[open]{animation:none}}@media (forced-colors:active){.sheet-ornament{display:none}}
:root{--art-page-background:image-set(url(../media/page-background.2n2tru8axj_nv.avif) type("image/avif"), url(../media/page-background.13o8was2okez6.webp) type("image/webp"));--art-welcome-hall:image-set(url(../media/welcome-hall.2yn8nh024zpas.avif) type("image/avif"), url(../media/welcome-hall.3pzaylbzb4slg.webp) type("image/webp"));--art-invitation-paper:image-set(url(../media/invitation-paper.1fc_h7xuvk92e.avif) type("image/avif"), url(../media/invitation-paper.12x2yybznpn_e.webp) type("image/webp"));--art-action-frame:image-set(url(../media/action-frame.32bfhw435v9p_.avif) type("image/avif"), url(../media/action-frame.0tb7zlh36sijj.webp) type("image/webp"));--art-letter-paper:image-set(url(../media/letter-paper.3ibrrvg2bpu4m.avif) type("image/avif"), url(../media/letter-paper.1ld9r9miwbh6e.webp) type("image/webp"))}
.app-frame:has(>.project-context){grid-template-rows:56px 34px minmax(0, 1fr) calc(70px + env(safe-area-inset-bottom))}.app-frame.guest-frame:has(>.project-context){grid-template-rows:56px 34px minmax(0,1fr)}.project-context{font:12px var(--sans);background:#f0e8dae8;border-bottom:1px solid #a38a5b30;justify-content:space-between;align-items:center;gap:16px;min-width:0;padding:0 22px;display:flex}.project-context>a:first-child{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.project-context>a:last-child{color:#78644a;flex-shrink:0;align-items:center;display:flex}.portal-frame .bottom-nav{grid-template-columns:repeat(3,1fr)}.projects-scene .scene-page{overscroll-behavior:contain;scrollbar-width:thin;padding:0 12px 32px;display:block;overflow-y:auto}.projects-scene .scene-heading{padding:24px 4px 14px}.projects-scene .scene-heading h1{font-size:clamp(25px,5.5vw,36px)}.projects-scene .scene-content{background:0 0;padding:0;display:block;overflow:visible}.projects-scene .scene-footer{padding:16px 0}.projects-welcome{justify-content:space-between;align-items:center;gap:12px;padding:8px 0 22px;display:flex}.projects-welcome p{font:15px/1.9 var(--serif);color:#5d4b35}.projects-welcome .magic-art{flex-shrink:0;width:120px;height:118px;margin:0}.project-create-link{color:#52664f;border-bottom:1px solid #52664f80;align-items:center;gap:5px;margin-top:5px;padding:10px 0 4px;display:inline-flex}.project-list-heading{border-bottom:1px solid #bfa67670;justify-content:space-between;align-items:center;gap:8px;display:flex}.project-list-heading [role=tablist]{gap:20px;display:flex}.project-list-heading button{color:#81705a;border-bottom:2px solid #0000;padding:14px 0 11px;font-size:16px}.project-list-heading button[aria-selected=true]{color:#493c2c;border-color:#927449}.project-list-heading small{font:12px var(--sans);margin-left:4px}.project-list-heading>a{align-items:center;gap:3px;font-size:12px;display:flex}.project-row{background:#f9f3e7a8;border-bottom:1px solid #bfa67650;align-items:center;gap:16px;padding:22px 8px;display:flex}.project-row:hover{background:#fff9ec}.project-row-main{flex:1;min-width:0}.project-row h2{font:22px/1.5 var(--serif);color:#493c2c;overflow-wrap:anywhere;margin:6px 0}.project-row p{font:13px/1.7 var(--sans);color:#76634b;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.project-row-tags{color:#52664f;flex-wrap:wrap;gap:10px;font-size:11px;display:flex}.project-row-meta{font:12px/1.7 var(--sans);color:#827058;flex-wrap:wrap;gap:8px 14px;margin-top:12px;display:flex}.project-row-meta span{align-items:center;gap:4px;display:flex}.project-list-empty{text-align:center;background:#f9f3e7a8;padding:35px 12px;font-size:14px;line-height:1.8}.project-list-empty a{color:#52664f;border-bottom:1px solid #52664f60;align-items:center;gap:5px;margin-top:14px;display:inline-flex}.project-history-link{align-items:center;gap:6px;margin:22px auto 0;font-size:13px;display:flex}.project-guest-note{text-align:center;color:#827058;margin-top:22px;font-size:12px}.project-form{flex-direction:column;gap:20px;padding:12px 0;display:flex}.project-form label{font:14px/1.6 var(--sans);flex-direction:column;gap:8px;font-weight:500;display:flex}.project-form label small{color:#827058;font-weight:400;display:inline}.project-form input,.project-form textarea{width:100%;min-width:0;font:16px/1.6 var(--sans);color:#493c2c;box-shadow:none;background:#fffaf0;border:1px solid #bfa676;border-radius:4px;padding:10px 12px}.project-form input[type=datetime-local]{min-height:44px;padding:8px;font-size:14px}.project-form fieldset{border:0;border-top:1px solid #bfa67670;margin:0;padding:16px 0 0}.project-form legend{font:18px var(--serif);padding:0 8px 0 0}.project-form fieldset>p{color:#827058;margin-bottom:16px;font-size:12px;line-height:1.7}.project-time-grid{grid-template-columns:1fr;gap:14px;display:grid}.project-creation-note{font:12px/1.8 var(--sans);color:#76634b;border-top:1px solid #bfa67670;padding-top:16px}.project-creation-note a{align-items:center;gap:4px;margin-top:10px;display:inline-flex}.project-form .primary{width:100%;margin:8px 0}.project-copy-link{justify-content:center;align-items:center;gap:8px;min-height:44px;display:flex}.project-intro{text-align:center;padding:0 10px 12px;font-size:13px;line-height:1.7}.project-intro span{color:#827058;font-size:11px}.project-invitation .scene-content{text-align:center;line-height:1.8}.project-workflow{counter-reset:step;padding:0;list-style:none}.project-workflow li{counter-increment:step;border-top:1px solid #bfa67660;padding:22px 0 22px 34px;position:relative}.project-workflow li:before{content:counter(step, decimal-leading-zero);color:#927449;font:16px var(--serif);position:absolute;top:24px;left:0}.project-workflow h2{margin-bottom:10px;font-size:20px}.project-workflow p{font:14px/1.9 var(--sans);margin-top:8px}.manage-screen:has(.project-form) .scene-page{display:block;overflow-y:auto}.manage-screen:has(.project-form) .scene-content{padding:16px;overflow:visible}@media (min-width:700px){.projects-scene .scene-page{width:100%;max-width:780px;margin:auto;padding:0 30px 36px}.projects-welcome{padding:20px 0 28px}.projects-welcome p{font-size:21px}.projects-welcome .magic-art{width:180px;height:150px}.project-time-grid{grid-template-columns:1fr 1fr}.project-row{padding:26px 20px}}@media (min-width:1000px){.app-frame:has(>.project-context){grid-template-rows:65px 34px minmax(0,1fr) 75px}.app-frame.guest-frame:has(>.project-context){grid-template-rows:65px 34px minmax(0,1fr)}}
