:root{color-scheme:dark;--bg:#050505;--surface:#0c0c10;--raised:#15151c;--soft:#1d1b23;--text:#fbfbff;--muted:#a49aae;--dim:#69626f;--purple:#c000ff;--bright:#e100ff;--p-soft:rgba(192,0,255,.16);--p-line:rgba(225,0,255,.5);--glow:0 0 26px rgba(192,0,255,.5);--lime:#c8ff38;--red:#ff375f;--border:rgba(255,255,255,.12);--strong:rgba(255,255,255,.22);--display:"Barlow Condensed","Noto Sans TC",sans-serif;--body:"Noto Sans TC",system-ui,sans-serif;--dock:128px}
body.light-mode{color-scheme:light;--bg:#fff;--surface:#f5f4f7;--raised:#fff;--soft:#ebe9ee;--text:#09090b;--muted:#5e5665;--dim:#8c8592;--purple:#c000ff;--bright:#e100ff;--p-soft:rgba(192,0,255,.12);--p-line:rgba(192,0,255,.48);--glow:0 0 20px rgba(192,0,255,.3);--border:rgba(5,5,5,.14);--strong:rgba(5,5,5,.28)}
body.green-mode{color-scheme:dark;--bg:#050505;--surface:#0b1006;--raised:#11180a;--soft:#1a240d;--text:#fbfff2;--muted:#b1bb9b;--dim:#73805d;--purple:#b6ff00;--bright:#d7ff38;--p-soft:rgba(182,255,0,.14);--p-line:rgba(215,255,56,.5);--glow:0 0 26px rgba(182,255,0,.42);--border:rgba(255,255,255,.13);--strong:rgba(255,255,255,.24)}

*{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth}body{margin:0;min-height:100vh;color:var(--text);background:var(--bg);font-family:var(--body);overflow-x:hidden;transition:background .22s,color .22s}button,textarea,input,select{font:inherit}button{border:0;cursor:pointer;color:inherit}button:focus-visible,textarea:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--bright);outline-offset:3px}.app-noise{pointer-events:none;position:fixed;z-index:-1;inset:0;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.32'/%3E%3C/svg%3E");mix-blend-mode:screen}body.light-mode .app-noise{opacity:.06;mix-blend-mode:multiply}body:before{content:"";pointer-events:none;position:fixed;z-index:-2;inset:0;background:linear-gradient(120deg,transparent 0 70%,var(--p-soft) 70% 70.2%,transparent 70.2%);opacity:.45}.app-shell{min-height:100vh;position:relative;isolation:isolate}.screen{display:none;min-height:100vh}.screen.is-visible{display:block}.screen-wall{padding-bottom:var(--dock)}.theme-corner{position:fixed;z-index:25;top:22px;right:28px;display:flex;gap:8px}.icon-button{width:38px;height:38px;border:1px solid var(--strong);background:color-mix(in srgb,var(--bg) 86%,transparent);color:var(--muted);backdrop-filter:blur(12px);transition:.2s}.icon-button:hover{border-color:var(--purple);color:var(--purple);box-shadow:var(--glow)}.theme-icon{font-size:20px;display:block;transform:rotate(-30deg)}.settings-button{font-size:18px}.login-card h1 .title-white,.setup-heading h1 .title-white{color:var(--text);transform:none}.status-dot,.live-pulse{display:inline-block;width:7px;height:7px;background:var(--lime);border-radius:50%;box-shadow:0 0 14px var(--lime)}
/* 登入頁 */
.auth-grid{min-height:100vh;position:relative;display:grid;grid-template-columns:minmax(160px,1fr) minmax(420px,560px) minmax(160px,1fr);align-items:center;gap:40px;padding:54px 7vw;overflow:hidden}.auth-grid:before{content:"";position:absolute;inset:8% 16%;border:1px solid var(--p-soft);transform:skewY(-7deg);pointer-events:none}.auth-grid:after{content:"";position:absolute;width:50vw;height:1px;background:var(--purple);opacity:.5;transform:rotate(-25deg);right:-12vw;top:34%;box-shadow:0 0 22px var(--purple);pointer-events:none}.auth-side-mark{align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:var(--dim);writing-mode:vertical-rl;font:600 11px/1.4 var(--display);letter-spacing:.18em}.side-mark-line{height:150px;width:1px;background:linear-gradient(var(--purple),transparent)}.auth-card{position:relative;z-index:1}.login-card{padding:25px 32px 24px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 91%,var(--purple) 9%);box-shadow:20px 20px 0 var(--p-soft)}.login-card:before{content:"";position:absolute;width:26px;height:26px;top:-1px;left:-1px;border-top:2px solid var(--purple);border-left:2px solid var(--purple)}.auth-brand{display:inline-flex;align-items:center;gap:10px;font:800 18px/1 var(--display);letter-spacing:.13em} .auth-brand b{color:var(--text)}.auth-brand em{color:var(--purple);font-style:normal}.auth-brand.app-name{font:900 35px/.8 var(--display);letter-spacing:-.08em;gap:0}.auth-brand.app-name b{color:var(--text)}.auth-brand.app-name em{color:var(--purple)}.auth-logo{color:var(--purple);font:900 30px/1 var(--display);letter-spacing:-4px}.auth-kicker{display:flex;align-items:center;gap:9px;color:var(--muted);font:600 10px/1 var(--display);letter-spacing:.15em;margin-top:54px}.login-card h1,.setup-heading h1{font:900 clamp(55px,9vw,84px)/.83 var(--display);letter-spacing:-.04em;margin:18px 0}.login-card h1 span,.setup-heading h1 span{color:var(--purple);transform:skew(-7deg);display:inline-block}.auth-lede{color:var(--muted);font-size:14px;line-height:1.8;margin:0 0 28px}.login-actions{display:grid;gap:10px}.login-provider{width:100%;height:54px;display:grid;grid-template-columns:36px 1fr 20px;align-items:center;text-align:left;gap:10px;padding:0 15px;border:1px solid var(--strong);background:var(--raised);color:var(--text);transition:.2s;font-size:13px}.login-provider:hover{border-color:var(--purple);transform:translateX(4px);box-shadow:var(--glow)}.login-provider b{color:var(--purple);font-size:20px;font-weight:400} .provider-icon{display:grid;place-items:center;width:27px;height:27px;color:var(--bg);background:var(--text);font:800 13px/1 var(--display)}.provider-thumb-google{background:#fff;position:relative}.provider-thumb-google:after{content:"G";color:#4285f4;font:900 16px/1 Arial,sans-serif}.provider-thumb-apple{background:#fff;position:relative}.provider-thumb-apple:after{content:"●";color:#050505;font-size:15px}.provider-apple{background:var(--purple);color:#fff;border-color:var(--purple)}.provider-apple .provider-icon{background:#fff;color:#000}.provider-apple b{color:#fff}.auth-legal{color:var(--dim);font-size:10px;line-height:1.7;margin-top:21px}.auth-legal span{color:var(--purple);text-decoration:underline;margin:0 3px}.auth-decoration{display:flex;align-items:center;gap:4px;color:var(--dim);font:600 9px/1 var(--display);letter-spacing:.1em;margin-top:32px}.auth-decoration i{height:5px;width:20px;background:var(--purple);opacity:.25}.auth-decoration i:nth-of-type(-n+4){opacity:1}.auth-decoration b{color:var(--lime);font-weight:600;margin-left:7px}.auth-ambient{align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;padding:30px 0 35px;color:var(--dim);font:600 10px/1.6 var(--display);letter-spacing:.14em}.ambient-code{align-self:flex-end;text-align:right}.ambient-scribble{color:var(--purple);font:900 38px/.8 var(--display);letter-spacing:-.04em;transform:rotate(-8deg);align-self:center}
/* 設定頁 */
.setup-shell{max-width:1180px;margin:0 auto;padding:28px 32px 45px}.setup-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);padding-bottom:21px}.setup-progress{display:grid;grid-template-columns:auto 38px;align-items:center;gap:5px 12px;color:var(--muted);font:600 11px/1 var(--display);letter-spacing:.1em}.setup-progress b{grid-row:span 2;color:var(--purple);font:900 42px/.8 var(--display)}.setup-progress i{width:100%;height:3px;display:block;background:linear-gradient(90deg,var(--purple) 88%,var(--border) 88%)}.setup-progress small{color:var(--dim);font-size:9px;grid-column:1}.setup-main{display:grid;grid-template-columns:minmax(240px,.78fr) minmax(500px,1.22fr);gap:90px;padding-top:62px}.setup-heading{position:sticky;top:70px;align-self:start}.setup-heading .auth-kicker{margin-top:0}.setup-heading h1{font-size:clamp(52px,7vw,78px)}.setup-heading p{color:var(--muted);font-size:13px;line-height:1.8;max-width:280px}.setup-form{min-width:0}.setup-section{border-top:1px solid var(--border);padding:25px 0 30px}.section-heading{display:flex;gap:14px;align-items:flex-start;margin-bottom:22px}.section-heading>span{color:var(--purple);font:900 27px/1 var(--display)}.section-heading h2{font:800 24px/1 var(--display);margin:0 0 5px}.section-heading p{color:var(--muted);margin:0;font-size:11px}.field-block{min-width:0}.field-block label{display:flex;align-items:baseline;gap:7px;color:var(--text);font-weight:700;font-size:13px;margin-bottom:10px}.field-block label small{color:var(--dim);font:600 10px/1 var(--display)}.choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.choice-card{height:48px;border:1px solid var(--strong);background:var(--raised);color:var(--muted);font-weight:700;font-size:13px;transition:.18s}.choice-card:disabled,.field-block input:read-only,.field-block select:disabled{cursor:not-allowed;opacity:.68}.identity-bind-status{color:var(--purple)!important;font-size:11px!important;margin-top:5px}.identity-bound .choice-card:disabled.is-selected{background:var(--purple);color:#fff}.choice-card:hover,.choice-card.is-selected{border-color:var(--purple);color:var(--text);background:var(--p-soft);box-shadow:var(--glow)}.choice-card.is-selected{background:var(--purple)}.field-row{display:grid;grid-template-columns:.75fr 1.25fr;gap:16px;margin-top:19px}.field-block input,.field-block select{width:100%;height:48px;padding:0 13px;border:1px solid var(--strong);color:var(--text);background:var(--raised);outline:none;font-size:13px}.field-block input:focus,.field-block select:focus{border-color:var(--purple);box-shadow:var(--glow)}.field-block input:read-only{border-color:var(--purple);background:var(--p-soft)}.field-block select:disabled{appearance:none}.field-block select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--purple) 50%),linear-gradient(135deg,var(--purple) 50%,transparent 50%);background-position:calc(100% - 18px) 20px,calc(100% - 13px) 20px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.field-error,.social-field-error{min-height:15px;color:var(--red);font-size:10px;margin:6px 0 0}.has-error input,.has-error select{border-color:var(--red)}.social-setup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.social-setup-card{border:1px solid var(--border);background:color-mix(in srgb,var(--raised) 92%,transparent);padding:12px}.social-setup-card.is-confirmed{border-color:var(--lime)}.social-setup-head{display:flex;align-items:center;gap:9px;margin-bottom:10px}.social-setup-icon{display:grid;place-items:center;width:28px;height:28px;color:var(--bg);background:var(--text);font:800 11px/1 var(--display)}.social-setup-head div{display:grid;gap:3px;min-width:0}.social-setup-head strong{font-size:12px}.social-setup-head small{color:var(--dim);font-size:9px}.social-confirmed{color:var(--dim);font:600 9px/1 var(--display);margin-left:auto}.is-confirmed .social-confirmed{color:var(--lime)}.social-input-row{display:flex;gap:6px}.social-input-row input{flex:1;min-width:0;height:36px;padding:0 9px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:10px;outline:none}.social-input-row input:focus{border-color:var(--purple)}.social-input-row button{width:51px;color:var(--text);background:var(--soft);border:1px solid var(--border);font-size:10px}.social-input-row button:hover,.is-confirmed .social-input-row button{background:var(--purple);color:#fff;border-color:var(--purple)}.social-note{color:var(--dim);font-size:10px;line-height:1.6;margin:15px 0 0}.setup-submit-row{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--border);padding-top:24px}.setup-submit-row p{color:var(--dim);font-size:10px}.setup-submit-row p .status-dot{width:5px;height:5px;margin-right:6px}.enter-wall-button{height:52px;min-width:190px;display:inline-flex;align-items:center;justify-content:space-between;gap:20px;padding:0 14px 0 18px;background:var(--purple);color:#fff;font:800 14px/1 var(--display)}.enter-wall-button:hover{background:var(--bright);box-shadow:var(--glow)}.enter-wall-button b{font-size:21px;font-weight:400}
/* 留言牆 */
.topbar{height:80px;border-bottom:1px solid var(--border);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 32px;position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(18px)}.brand-mark{color:var(--text);display:inline-flex;align-items:center;gap:10px;width:max-content;text-decoration:none}.brand-glyph{font:900 28px/1 var(--display);color:var(--purple);letter-spacing:-3px}.brand-copy{display:grid;line-height:.84;letter-spacing:.12em;font:700 15px/1 var(--display)}.brand-copy em{color:var(--purple);font-style:normal}.topbar-center{text-align:center;display:grid;gap:1px}.eyebrow,.stage-kicker,.side-label,.drawer-index,.composer-status,.composer-hint,.wall-card-topline,.stream-end-marker{font:600 10px/1 var(--display);letter-spacing:.18em}.eyebrow{color:var(--purple)}.page-title{font:800 22px/1 var(--display);letter-spacing:.08em}.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px}.profile-trigger{display:inline-flex;align-items:center;gap:9px;background:transparent;text-align:left;padding:3px 0}.profile-trigger-copy{display:grid;line-height:1.1}.profile-trigger-copy strong{font:700 14px/1 var(--display);letter-spacing:.08em}.profile-trigger-copy small{color:var(--lime);font:600 9px/1 var(--display);letter-spacing:.12em;margin-top:5px}.chevron{color:var(--purple);font-size:20px}.avatar,.mini-avatar{display:inline-grid;place-items:center;flex:0 0 auto;border:1px solid var(--purple);background:var(--p-soft);color:var(--text);font:800 14px/1 var(--display)}.avatar{width:36px;height:36px}.avatar-self{background:linear-gradient(145deg,var(--purple),#4b0070);color:#fff}.wall-layout{max-width:1400px;margin:0 auto;min-height:calc(100vh - var(--dock) - 80px);display:grid;grid-template-columns:80px minmax(0,850px) 180px;justify-content:center;gap:30px;padding:46px 36px 32px}.wall-rail{display:flex;flex-direction:column;align-items:center;color:var(--dim)}.rail-status{writing-mode:vertical-rl;transform:rotate(180deg);display:inline-flex;align-items:center;gap:8px;color:var(--purple);font:700 10px/1 var(--display);letter-spacing:.14em}.rail-code{margin-top:54px;text-align:center;font:500 13px/1.05 var(--display);letter-spacing:.12em}.rail-code b{color:var(--purple);font-size:31px}.rail-line{flex:1;width:1px;min-height:110px;margin:22px 0;background:linear-gradient(var(--purple),transparent)}.rail-note{writing-mode:vertical-rl;font:700 12px/1.2 var(--display);letter-spacing:.2em;color:var(--dim);margin:0}.wall-stage{min-width:0}.stage-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.stage-kicker{color:var(--muted);display:flex;align-items:center;gap:8px}.live-pulse{width:5px;height:5px}h1{font:800 clamp(42px,6vw,74px)/.86 var(--display);letter-spacing:-.02em;margin:12px 0 0}h1 span{color:var(--purple);display:inline-block;transform:skew(-8deg);margin-left:7px}.stage-meta{display:flex;align-items:center;gap:9px;color:var(--dim);font:600 11px/1 var(--display);letter-spacing:.13em;white-space:nowrap}.stage-meta .slash{color:var(--purple);font-size:17px}.wall-card{background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 92%,var(--purple) 8%),var(--surface));border:1px solid var(--border);position:relative;min-height:560px;box-shadow:18px 18px 0 var(--p-soft)}.wall-card:before,.wall-card:after{content:"";position:absolute;width:18px;height:18px;border-color:var(--purple);pointer-events:none}.wall-card:before{top:-1px;left:-1px;border-top:2px solid;border-left:2px solid}.wall-card:after{bottom:-1px;right:-1px;border-bottom:2px solid;border-right:2px solid}.wall-card-topline{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border);color:var(--dim)}.history-button{color:var(--purple);background:transparent;font:700 11px/1 var(--display);letter-spacing:.12em;opacity:0;pointer-events:none;transition:.2s}.history-button.visible{opacity:1;pointer-events:auto}.message-stream{height:466px;overflow-y:auto;overscroll-behavior:contain;padding:14px 20px 10px;scrollbar-width:thin;scrollbar-color:var(--purple) transparent;display:flex;flex-direction:column;gap:11px}.message-stream::-webkit-scrollbar{width:5px}.message-stream::-webkit-scrollbar-thumb{background:var(--purple)} .message-card{position:relative;display:block;border:1px solid var(--border);background:color-mix(in srgb,var(--raised) 92%,transparent);padding:13px 14px 11px;cursor:pointer;transition:border-color .2s,background .2s,transform .2s;animation:signalIn .42s cubic-bezier(.16,.83,.25,1) both}.message-card:hover{border-color:var(--p-line);background:color-mix(in srgb,var(--raised) 80%,var(--purple) 20%);transform:translateX(4px)}.message-card.new-signal{border-color:var(--purple);box-shadow:0 0 0 1px var(--p-soft),0 0 26px var(--p-soft)}.message-card .avatar{width:34px;height:34px;font-size:13px}.message-main{min-width:0}.message-head{display:flex;align-items:center;gap:9px;margin-bottom:6px}.message-name{font:700 14px/1 var(--display);letter-spacing:.06em}.message-time{color:var(--dim);font:500 10px/1 var(--display)}.message-body{color:var(--text);font-size:13px;line-height:1.65;word-break:break-word;margin:0}.message-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:11px}.social-links,.reactions{display:flex;align-items:center;gap:6px}.social-link{display:inline-grid;place-items:center;width:24px;height:24px;border:1px solid var(--strong);color:var(--muted);background:transparent;font:800 10px/1 var(--display);transition:.18s}.social-link:hover{border-color:var(--purple);color:var(--purple);transform:translateY(-2px);box-shadow:var(--glow)}.reaction-button{min-width:54px;height:28px;padding:0 7px;display:inline-flex;justify-content:center;align-items:center;gap:4px;border:1px solid var(--border);color:var(--muted);background:transparent;font:600 11px/1 var(--body);transition:.16s}.reaction-button:hover{border-color:var(--purple);color:var(--text)}.reaction-button.is-selected{border-color:var(--purple);color:var(--text);background:var(--p-soft);box-shadow:0 0 12px var(--p-soft)}.reaction-button.lip.is-selected{border-color:var(--red);background:rgba(255,55,95,.12)}.reaction-button .emoji{font-size:16px;line-height:1}.stream-end-marker{display:flex;align-items:center;gap:8px;justify-content:center;color:var(--dim);padding:8px 0 3px}.stream-end-marker span{height:1px;flex:1;background:var(--border)}.wall-side-panel{border-left:1px solid var(--border);padding-left:20px;margin-top:72px}.side-panel-block{padding:0 0 24px;margin-bottom:24px;border-bottom:1px solid var(--border)}.side-label{color:var(--dim);display:block;margin-bottom:16px}.crew-stack{display:flex;margin-bottom:10px}.mini-avatar{width:27px;height:27px;margin-right:-5px;border-color:var(--bg);font-size:11px}.mini-a{background:#ff5c8a;color:#22000d}.mini-b{background:#83e0ff;color:#00141c}.mini-c{background:#ffbd4a;color:#281500}.mini-d{background:var(--purple);color:#fff}.side-panel-block>strong{display:block;font:700 27px/1 var(--display)}.side-panel-block>small{color:var(--muted);font:500 11px/1 var(--display)}.side-panel-note p{font:500 14px/1.8 var(--display);color:var(--muted);margin:0}.side-panel-note b{color:var(--purple);font-size:20px}.composer-dock{position:fixed;z-index:15;bottom:0;left:0;right:0;padding:15px 24px 14px;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(18px);border-top:1px solid var(--border)}.composer-wrap{max-width:850px;margin:0 auto}.composer-status{display:flex;align-items:center;justify-content:flex-end;gap:8px;color:var(--text);margin-bottom:8px}.composer-status .status-dot{width:5px;height:5px}.composer-separator{color:var(--purple)}.composer{display:flex;align-items:center;gap:12px;min-height:58px;padding:8px 9px 8px 18px;border:1px solid var(--strong);background:var(--raised);transition:.2s}.composer:focus-within{border-color:var(--purple);box-shadow:var(--glow)}.composer-prefix{color:var(--purple);font:800 19px/1 var(--display)}.composer textarea{resize:none;flex:1;min-width:0;max-height:78px;border:0;color:var(--text);background:transparent;outline:0;line-height:1.5;font-size:14px}.composer textarea::placeholder{color:var(--dim)}.send-button{flex:0 0 auto;min-width:122px;height:42px;display:inline-flex;align-items:center;justify-content:center;gap:17px;background:var(--purple);color:#fff;font:800 13px/1 var(--display);transition:.2s}.send-button:hover{background:var(--bright);box-shadow:var(--glow);transform:translateY(-1px)}.send-button b{font-size:21px;font-weight:400}.composer-hint{display:flex;justify-content:flex-end;gap:16px;color:var(--dim);padding-top:8px;font-size:9px}
/* 玩家檔案 */
.drawer-backdrop{position:fixed;z-index:30;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(5px)}.drawer-backdrop[hidden]{display:none}.profile-drawer{position:fixed;z-index:31;top:0;right:0;bottom:0;width:min(420px,100%);padding:20px 28px 26px;background:var(--surface);border-left:1px solid var(--p-line);box-shadow:-20px 0 60px rgba(0,0,0,.45);transform:translateX(105%);transition:transform .3s cubic-bezier(.16,.83,.25,1);overflow-y:auto}.profile-drawer.is-open{transform:translateX(0)}.drawer-handle{display:none}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:25px;border-bottom:1px solid var(--border)}.drawer-index{color:var(--muted)}.drawer-index b{color:var(--purple)}.close-button{width:34px;height:34px;background:transparent;color:var(--muted);border:1px solid var(--border);font-size:25px;line-height:1}.close-button:hover{color:var(--purple);border-color:var(--purple)}.profile-hero{display:flex;gap:16px;align-items:center;padding:28px 0 22px}.profile-avatar-large{display:grid;place-items:center;width:72px;height:72px;flex:0 0 72px;border:1px solid var(--purple);font:900 31px/1 var(--display);background:linear-gradient(145deg,var(--purple),#4b0070);color:#fff}.profile-hero-copy{min-width:0}.verified-tag{color:var(--lime);font:700 10px/1 var(--display);letter-spacing:.12em}.profile-hero h2{font:800 32px/1 var(--display);margin:7px 0 5px}.profile-hero p{color:var(--muted);margin:0;font-size:12px;line-height:1.55}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:16px 0}.profile-stats div{display:grid;gap:4px;text-align:center;border-right:1px solid var(--border)}.profile-stats div:last-child{border-right:0}.profile-stats b{font:800 23px/1 var(--display)}.profile-stats span{color:var(--dim);font:600 9px/1 var(--display)}.drawer-socials{display:flex;flex-wrap:wrap;gap:8px;padding:24px 0}.drawer-social{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;color:var(--muted);background:transparent;border:1px solid var(--border);font:600 11px/1 var(--display)}.drawer-social:hover{border-color:var(--purple);color:var(--purple)}.drawer-social b{color:var(--purple)}.drawer-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.drawer-actions .primary-action{grid-column:span 2;height:44px;background:var(--purple);color:#fff;font:800 13px/1 var(--display)}.drawer-actions .primary-action.is-following{background:var(--soft);color:var(--purple);border:1px solid var(--purple)}.secondary-action{height:42px;color:var(--text);background:var(--soft);border:1px solid var(--border);font:700 12px/1 var(--display)}.secondary-action:hover{border-color:var(--purple);color:var(--purple)}.drawer-footer-actions{display:flex;gap:18px;padding-top:28px}.drawer-footer-actions button{color:var(--dim);background:transparent;font:600 11px/1 var(--display)}.drawer-footer-actions button:hover{color:var(--red)}.toast{position:fixed;z-index:50;left:50%;bottom:calc(var(--dock) + 22px);transform:translate(-50%,18px);pointer-events:none;opacity:0;color:#fff;background:var(--purple);padding:11px 18px;font:700 12px/1 var(--display);box-shadow:var(--glow);transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}
.new-signal{border-color:var(--purple)!important;box-shadow:0 0 0 1px var(--p-soft),0 0 30px var(--p-soft),inset 0 0 18px var(--p-soft)}.new-signal:after{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--bright);box-shadow:0 0 14px var(--bright);animation:scanLine 900ms ease-out both}.new-signal-banner{display:none;position:absolute;z-index:2;right:20px;top:10px;padding:8px 12px;background:var(--purple);color:#fff;font:700 11px/1 var(--display);box-shadow:var(--glow)}.new-signal-banner.visible{display:block;animation:bannerIn .28s ease-out both}@keyframes scanLine{from{transform:scaleX(.05);opacity:0}to{transform:scaleX(1);opacity:1}}@keyframes bannerIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes signalIn{from{opacity:0;transform:translateX(36px)}to{opacity:1;transform:translateX(0)}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
@media(max-width:1040px){.wall-layout{grid-template-columns:52px minmax(0,760px);padding-left:24px;padding-right:24px}.wall-side-panel{display:none}}
@media(max-width:850px){.auth-grid{grid-template-columns:34px minmax(0,1fr);padding:50px 25px;gap:18px}.auth-ambient{display:none}.auth-side-mark{font-size:9px}.login-card{padding:23px 22px}.setup-main{grid-template-columns:1fr;gap:35px;padding-top:35px}.setup-heading{position:static}.setup-heading h1{font-size:58px}.setup-heading p{max-width:none}.setup-shell{padding:22px 20px 36px}.theme-corner{right:17px;top:17px}}
@media(max-width:700px){:root{--dock:154px}.topbar{height:68px;padding:0 16px;grid-template-columns:1fr auto}.topbar-center{display:none}.topbar-actions{gap:10px}.profile-trigger-copy,.chevron{display:none}.brand-glyph{font-size:25px}.brand-copy{font-size:13px}.wall-layout{display:block;min-height:calc(100vh - var(--dock) - 68px);padding:26px 14px 25px}.wall-rail{display:none}.stage-header{align-items:flex-start;margin-bottom:17px}.stage-meta{padding-top:7px;font-size:9px}.stage-meta span:first-child,.stage-meta .slash{display:none}h1{font-size:48px}.wall-card{min-height:0;box-shadow:9px 9px 0 var(--p-soft)}.wall-card-topline{padding:13px 14px}.message-stream{height:51vh;min-height:390px;padding:12px;gap:9px}.message-card{grid-template-columns:30px minmax(0,1fr);gap:9px;padding:11px 10px 9px}.message-card .avatar{width:30px;height:30px;font-size:11px}.message-body{font-size:12px}.message-footer{gap:6px}.social-links{gap:4px}.social-link{width:23px;height:23px;font-size:9px}.reaction-button{min-width:49px;padding:0 5px;font-size:10px}.reaction-button .emoji{font-size:14px}.composer-dock{padding:11px 14px 10px}.composer-wrap{max-width:none}.composer{min-height:53px;gap:8px;padding-left:12px}.composer-prefix{font-size:16px}.send-button{min-width:42px;width:42px;padding:0;gap:0}.send-button span{display:none}.send-button b{font-size:22px}.composer-hint{justify-content:space-between;font-size:8px}.composer-status{font-size:9px}.profile-drawer{top:auto;width:100%;max-height:78vh;bottom:0;border-left:0;border-top:1px solid var(--p-line);padding:10px 20px 24px;transform:translateY(105%)}.profile-drawer.is-open{transform:translateY(0)}.drawer-handle{display:block;width:38px;height:4px;border-radius:4px;background:var(--dim);margin:0 auto 10px}.drawer-header{padding-bottom:14px}.profile-hero{padding:20px 0 16px}.profile-avatar-large{width:58px;height:58px;flex-basis:58px;font-size:25px}.profile-hero h2{font-size:27px}.drawer-socials{padding:18px 0}.drawer-footer-actions{padding-top:20px}}
@media(max-width:560px){.auth-grid{grid-template-columns:1fr;padding:64px 16px 30px}.auth-side-mark{display:none}.login-card{box-shadow:9px 9px 0 var(--p-soft)}.auth-kicker{margin-top:43px}.auth-legal{font-size:9px}.setup-header .auth-brand{font-size:15px}.setup-progress{transform:scale(.88);transform-origin:right center}.choice-grid{grid-template-columns:repeat(2,1fr)}.field-row{grid-template-columns:1fr;gap:0}.social-setup-grid{grid-template-columns:1fr}.setup-submit-row{align-items:stretch;flex-direction:column;gap:10px}.enter-wall-button{width:100%}.setup-heading h1{font-size:54px}}
body.light-mode .provider-apple,body.light-mode .enter-wall-button{color:#000}body.light-mode .provider-apple .provider-icon{color:#000}

/* 版面精簡強化：單層卡片、放大主要操作面 */
.login-card{box-shadow:none;width:min(100%,640px);padding:38px 44px 36px}
.auth-grid{grid-template-columns:minmax(120px,1fr) minmax(520px,640px) minmax(120px,1fr);gap:56px}
.login-card h1{font-size:clamp(68px,9vw,104px);margin:30px 0 28px}
.login-actions{gap:14px}.login-provider{height:64px;padding:0 18px;font-size:15px}.provider-icon{width:34px;height:34px}.provider-thumb-google:after{font-size:19px}.provider-thumb-apple:after{font-size:18px}
.wall-layout{max-width:1600px;grid-template-columns:76px minmax(0,1100px) 220px;gap:38px;padding-left:42px;padding-right:42px}
.wall-card{min-height:680px;box-shadow:none}
.message-stream{height:578px;padding:18px 26px 14px;gap:14px}
.message-card{padding:17px 20px 15px}.message-name{font-size:16px}.message-body{font-size:15px;line-height:1.7}.message-footer{margin-top:14px}.social-link{width:28px;height:28px}.reaction-button{height:32px;min-width:62px}
.composer-wrap{max-width:1100px}.composer{min-height:76px;padding:11px 13px 11px 22px;gap:16px}.composer textarea{font-size:16px;max-height:94px}.composer-prefix{font-size:23px}.send-button{height:52px;min-width:150px;font-size:15px}
@media(max-width:1040px){.auth-grid{grid-template-columns:32px minmax(0,1fr);gap:24px}.wall-layout{grid-template-columns:52px minmax(0,1fr);padding-left:24px;padding-right:24px}.wall-side-panel{display:none}}
@media(max-width:700px){.login-card{width:100%;padding:30px 22px 28px}.auth-grid{grid-template-columns:1fr}.login-card h1{font-size:64px;margin:24px 0}.wall-card{min-height:0}.message-stream{height:54vh;min-height:420px;padding:14px 12px}.message-card{padding:14px 12px}.message-name{font-size:14px}.message-body{font-size:13px}.composer{min-height:64px;padding-left:13px}.composer textarea{font-size:14px}.send-button{min-width:46px;width:46px;height:46px}.send-button span{display:none}}

/* 留言牆再放大：預設可視最新五則 */
.wall-layout{max-width:1740px;grid-template-columns:82px minmax(0,1200px) 230px;gap:42px;padding-left:32px;padding-right:32px}
.wall-card{min-height:760px}
.message-stream{height:650px;padding:20px 30px 16px;gap:12px}
.message-card{padding:14px 20px 12px}
.message-body{font-size:14px;line-height:1.55}
@media(max-width:1040px){.wall-layout{grid-template-columns:52px minmax(0,1fr);padding-left:24px;padding-right:24px}.wall-card{min-height:760px}.message-stream{height:650px}}
@media(max-width:700px){.wall-card{min-height:0}.message-stream{height:58vh;min-height:460px;padding:14px 12px}.message-card{padding:13px 12px 11px}.message-body{font-size:13px}}

/* 右側設定選單與句IN記錄 */
.theme-corner{right:28px;left:auto;display:flex;gap:8px}
.settings-button{order:3}
.settings-menu{position:absolute;top:48px;right:0;width:210px;padding:6px;border:1px solid var(--p-line);background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:var(--glow);backdrop-filter:blur(16px)}
.settings-menu[hidden]{display:none}.settings-menu button{display:block;width:100%;padding:15px 14px;text-align:left;border-bottom:1px solid var(--border);background:transparent;color:var(--text);font:700 13px/1 var(--display);letter-spacing:.05em}.settings-menu button:last-child{border-bottom:0}.settings-menu button:hover{background:var(--p-soft);color:var(--purple);padding-left:19px}
.settings-panel-backdrop{position:fixed;z-index:27;inset:0;background:rgba(0,0,0,.58);backdrop-filter:blur(4px)}.settings-panel-backdrop[hidden]{display:none}.settings-panel{position:fixed;z-index:28;top:0;right:0;bottom:0;width:min(470px,100%);padding:24px 30px;background:var(--surface);border-left:1px solid var(--p-line);box-shadow:-20px 0 60px rgba(0,0,0,.45);transform:translateX(105%);transition:transform .28s cubic-bezier(.16,.83,.25,1);overflow:auto}.settings-panel.is-open{transform:translateX(0)}.settings-panel-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:22px;border-bottom:1px solid var(--border)}.panel-mark{color:var(--purple);font:800 13px/1 var(--display);letter-spacing:.14em}.settings-panel h2{font:800 38px/.9 var(--display);margin:34px 0 25px}.chat-history-list{display:grid;gap:10px}.history-entry{border:1px solid var(--border);background:var(--raised);padding:15px 16px}.history-entry time{display:block;color:var(--purple);font:700 11px/1 var(--display);letter-spacing:.08em}.history-entry p{margin:10px 0 0;color:var(--text);font-size:14px;line-height:1.6}.empty-history{color:var(--muted);font-size:14px;border-top:1px solid var(--border);padding-top:20px}.empty-history[hidden]{display:none}
body.green-mode .settings-menu,body.green-mode .settings-panel{border-color:var(--p-line)}
@media(max-width:700px){.theme-corner{right:16px}.settings-menu{right:0;width:190px}.settings-panel{padding:18px 20px}.settings-panel h2{font-size:32px}}

/* 句IN 字標與手機觸控優化 */
.auth-brand.app-name,.brand-copy.app-name{letter-spacing:0}
.auth-brand.app-name em,.brand-copy.app-name em{margin-left:.1em;letter-spacing:.02em}
.invite-copy{font-size:15px;line-height:1.7;color:var(--text);margin:0 0 28px}.invite-code-box{border:1px solid var(--p-line);background:var(--raised);padding:22px 18px;margin-bottom:14px}.invite-code-box span{display:block;color:var(--muted);font-size:11px;margin-bottom:12px}.invite-code-box strong{display:block;color:var(--purple);font:800 30px/1 var(--display);letter-spacing:.12em}.copy-invite-button{width:100%;min-height:52px;border:1px solid var(--purple);background:var(--purple);color:#fff;font:800 14px/1 var(--display);letter-spacing:.04em}
@media(max-width:700px){
  body{overflow-x:hidden}
  .theme-corner{top:max(12px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));gap:10px}
  .icon-button{width:48px;height:48px;min-width:48px;min-height:48px;touch-action:manipulation}
  .settings-menu{top:58px;width:min(320px,calc(100vw - 24px));padding:8px}
  .settings-menu button{min-height:54px;padding:0 15px;font-size:14px;touch-action:manipulation}
  .auth-grid{padding:78px 14px calc(30px + env(safe-area-inset-bottom));gap:14px}
  .login-card{padding:28px 18px 24px}
  .login-card h1{font-size:clamp(56px,17vw,76px);line-height:.92;margin:22px 0 26px}
  .login-provider{min-height:58px;height:58px;padding:0 14px;font-size:14px;touch-action:manipulation}
  .provider-icon{width:36px;height:36px;flex-basis:36px}
  .setup-shell{padding:74px 16px calc(30px + env(safe-area-inset-bottom))}
  .setup-header{gap:12px}.setup-progress{font-size:11px}
  .choice-card{min-height:54px;touch-action:manipulation}
  .field-block input,.field-block select{min-height:52px;font-size:16px}
  .social-input-row{grid-template-columns:minmax(0,1fr) 76px}.social-input-row input,.social-input-row button{min-height:48px}.social-input-row button{touch-action:manipulation}
  .enter-wall-button{min-height:56px;touch-action:manipulation}
  .topbar{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right));padding-top:env(safe-area-inset-top);height:calc(68px + env(safe-area-inset-top))}
  .profile-trigger{min-height:48px;padding:0 9px;touch-action:manipulation}.profile-trigger-avatar{width:32px;height:32px}
  .wall-layout{padding:22px 12px calc(var(--dock) + 22px + env(safe-area-inset-bottom));min-height:calc(100vh - var(--dock) - 68px)}
  .message-stream{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
  .message-card{min-height:108px;touch-action:manipulation}.message-footer{align-items:center}
  .social-link{width:40px;height:40px;font-size:11px;touch-action:manipulation}.reaction-button{height:40px;min-width:64px;font-size:11px;touch-action:manipulation}
  .composer-dock{padding:10px 12px calc(10px + env(safe-area-inset-bottom));touch-action:manipulation}.composer{min-height:62px;border-radius:0;padding:8px 8px 8px 13px}.composer textarea{font-size:16px;line-height:1.4}.send-button{width:52px;min-width:52px;height:52px;touch-action:manipulation}
  .new-signal-banner{right:12px;top:10px;min-height:40px;padding:12px 14px;touch-action:manipulation}
  .profile-drawer{padding-bottom:calc(24px + env(safe-area-inset-bottom));max-height:84vh}.close-button{width:48px;height:48px;min-width:48px;touch-action:manipulation}.drawer-actions button,.drawer-footer-actions button{min-height:48px;touch-action:manipulation}
  .settings-panel{padding:18px 16px calc(24px + env(safe-area-inset-bottom));width:100%;max-width:440px}.settings-panel h2{font-size:32px;margin-top:28px}.history-entry{padding:16px;min-height:72px}.copy-invite-button{min-height:56px;touch-action:manipulation}.invite-code-box strong{font-size:25px;letter-spacing:.08em}
}
@media(max-width:380px){.login-card h1{font-size:53px}.message-body{font-size:12px}.reaction-button{min-width:58px}.composer-prefix{display:none}.settings-menu button{min-height:50px}}

/* 玩家資訊抽屜：純文字玩家標頭與單一分享操作 */
.profile-hero{display:block;padding:28px 0 22px}.profile-hero h2{margin:0}.profile-hero-copy{width:100%}.drawer-actions{display:block}.drawer-actions .share-only{display:flex;width:100%;height:48px;align-items:center;justify-content:center}.drawer-socials{padding-bottom:18px}
@media(max-width:700px){.profile-hero{padding:20px 0 16px}.drawer-actions .share-only{min-height:52px;height:52px}}

/* 留言牆底部歷史互動累計 */
.history-totals{display:flex;align-items:center;justify-content:flex-end;gap:22px;padding:0 2px 10px}.history-totals div{display:flex;align-items:baseline;gap:7px}.history-totals b{color:var(--text);font:800 18px/1 var(--display)}.history-totals span{color:var(--muted);font:700 10px/1 var(--display);letter-spacing:.04em}
.profile-hero h2{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.profile-hero h2 small{color:var(--purple);font:800 13px/1 var(--display);letter-spacing:.05em;white-space:nowrap}.drawer-index{display:none}
@media(max-width:700px){.history-totals{justify-content:space-between;gap:8px;padding:0 2px 9px}.history-totals b{font-size:16px}.history-totals span{font-size:9px}.profile-hero h2{gap:9px}.profile-hero h2 small{font-size:11px}}

/* 玩家抽屜統計以圖示取代文字 */
.profile-stats span[aria-label]{color:var(--purple);font-size:22px;line-height:1;letter-spacing:0}
@media(max-width:700px){.profile-stats span[aria-label]{font-size:20px}}

/* 使用者提供的大便圖示資產 */
.poop-icon{display:block;width:22px;height:22px;object-fit:contain}.reaction-button .emoji-image{display:inline-flex;align-items:center;justify-content:center;width:23px;height:23px}.history-totals .stat-poop-icon{display:inline-block;width:16px;height:16px;vertical-align:-3px}.profile-stats .drawer-stat-poop{display:inline-block;width:22px;height:22px;vertical-align:middle}
@media(max-width:700px){.poop-icon{width:21px;height:21px}.history-totals .stat-poop-icon{width:15px;height:15px}.profile-stats .drawer-stat-poop{width:20px;height:20px}}

/* 句IN牆：將全域操作鈕貼近頁面標題 */
body:has(#wall-view.is-visible) .theme-corner{top:21px;right:auto;left:calc(50% + 42px);gap:6px}
body:has(#wall-view.is-visible) .theme-corner .icon-button{width:38px;height:38px}
@media(max-width:700px){
  body:has(#wall-view.is-visible) .topbar-center{display:block;text-align:center}
  body:has(#wall-view.is-visible) .page-title{font-size:17px;letter-spacing:.06em}
  body:has(#wall-view.is-visible) .theme-corner{top:15px;left:calc(50% + 28px);gap:5px}
  body:has(#wall-view.is-visible) .theme-corner .icon-button{width:36px;height:36px}
}

/* 商品確認與付款 modal */
.warning-corner-mark{position:absolute;top:-1px;right:-1px;width:34px;height:34px;display:grid;place-items:center;background:var(--purple);color:#fff;font:900 20px/1 var(--display)}.warning-kicker{color:var(--purple);font:800 10px/1 var(--display);letter-spacing:.16em}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:23px}.modal-actions button{min-height:42px;padding:0 16px;border:1px solid var(--strong);font:800 12px/1 var(--display);transition:.18s}.warning-cancel{color:var(--muted);background:transparent}.warning-cancel:hover{color:var(--text);border-color:var(--text)}.warning-confirm{color:#fff;background:var(--purple);border-color:var(--purple)!important}.warning-confirm:hover{background:var(--bright);box-shadow:var(--glow)}.modal-actions button[hidden]{display:none}
@media(max-width:700px){.modal-actions button{min-height:48px;flex:1;touch-action:manipulation}}

/* 句IN牆右側在線人數 */
.online-label{display:block;color:var(--purple);font:800 12px/1 var(--display);letter-spacing:.16em;margin-bottom:14px}.wall-side-panel .side-panel-block>strong{font-size:38px;letter-spacing:.02em}
@media(max-width:700px){.online-label{font-size:10px;margin-bottom:9px}.wall-side-panel .side-panel-block>strong{font-size:30px}}

/* 移除左側資訊欄後，留言牆改為主牆＋在線人數的兩欄版面 */
.wall-layout{grid-template-columns:minmax(0,1fr) 230px;gap:38px}.wall-side-panel{min-width:0}
@media(max-width:1100px) and (min-width:701px){.wall-layout{grid-template-columns:minmax(0,1fr) 200px;gap:24px;padding-left:24px;padding-right:24px}}

/* 句IN效果商店：商品展示與留言覆蓋層 */
.store-copy{color:var(--muted);font-size:13px;line-height:1.7;margin:0 0 18px}.store-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid var(--border);margin-bottom:16px}.store-tab{padding:13px 8px;color:var(--muted);background:transparent;border:0;border-bottom:2px solid transparent;font:800 12px/1 var(--display)}.store-tab.is-active{color:var(--purple);border-bottom-color:var(--purple)}.store-current{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;margin-bottom:14px;background:var(--p-soft);border:1px solid var(--p-line);font-size:11px}.store-current span{color:var(--muted)}.store-current strong{color:var(--purple);font-size:12px}.store-grid{display:grid;gap:8px;max-height:calc(100vh - 330px);overflow:auto;padding:3px 4px 20px 0}.store-item{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:11px;text-align:left;padding:9px;border:1px solid var(--border);background:var(--raised);color:var(--text);transition:.18s}.store-item:hover,.store-item.is-selected{border-color:var(--purple);box-shadow:var(--glow);transform:translateX(3px)}.store-swatch{width:52px;height:34px;border:2px solid var(--purple);background:var(--surface);position:relative;overflow:hidden}.store-swatch::after{content:"";position:absolute;inset:8px 6px;border:1px solid var(--text);opacity:.75}.store-item-copy{display:grid;gap:5px;min-width:0}.store-item-copy b{font:800 13px/1 var(--display)}.store-item-copy small{color:var(--muted);font:600 10px/1 var(--display)}.store-apply{color:var(--purple);font:800 10px/1 var(--display);white-space:nowrap}.store-advanced .store-swatch{animation:shop-glow 2.2s linear infinite}.store-advanced .store-item-copy b{color:var(--purple)}@media(max-width:380px){.store-tab{padding:12px 3px;font-size:10px}}
/* 商品效果：框與背景使用獨立層，互不覆蓋 */
[class~="frame-basic-01"]{--shop-color:#b000ff}[class~="frame-basic-02"]{--shop-color:#00a8ff}[class~="frame-basic-03"]{--shop-color:#b6ff00}[class~="frame-basic-04"]{--shop-color:#ff315c}[class~="frame-basic-05"]{--shop-color:#ff4fd8}[class~="frame-basic-06"]{--shop-color:#ff9f1c}[class~="frame-basic-07"]{--shop-color:#51f3ff}[class~="frame-basic-08"]{--shop-color:#f5ff31}[class~="frame-basic-09"]{--shop-color:#5c6cff}[class~="frame-basic-10"]{--shop-color:#ff6f91}[class~="frame-basic-11"]{--shop-color:#72ffc8}[class~="frame-basic-12"]{--shop-color:#f4f7ff}
[class~="frame-advanced-01"]{--shop-a:#b000ff;--shop-b:#f600ff;--shop-c:#5c2bff}.store-swatch.frame-advanced-01{--shop-a:#b000ff;--shop-b:#f600ff;--shop-c:#5c2bff}.message-card[class~="frame-advanced-02"]{--shop-a:#00a8ff;--shop-b:#00eaff;--shop-c:#5c6cff}.store-swatch.frame-advanced-02{--shop-a:#00a8ff;--shop-b:#00eaff;--shop-c:#5c6cff}.message-card[class~="frame-advanced-03"]{--shop-a:#b6ff00;--shop-b:#00ff9d;--shop-c:#c7ff32}.store-swatch.frame-advanced-03{--shop-a:#b6ff00;--shop-b:#00ff9d;--shop-c:#c7ff32}.message-card[class~="frame-advanced-04"]{--shop-a:#ff315c;--shop-b:#ff00c8;--shop-c:#ff9f1c}.store-swatch.frame-advanced-04{--shop-a:#ff315c;--shop-b:#ff00c8;--shop-c:#ff9f1c}.message-card[class~="frame-advanced-05"]{--shop-a:#ff4fd8;--shop-b:#b000ff;--shop-c:#51f3ff}.store-swatch.frame-advanced-05{--shop-a:#ff4fd8;--shop-b:#b000ff;--shop-c:#51f3ff}.message-card[class~="frame-advanced-06"]{--shop-a:#ff9f1c;--shop-b:#ff315c;--shop-c:#f5ff31}.store-swatch.frame-advanced-06{--shop-a:#ff9f1c;--shop-b:#ff315c;--shop-c:#f5ff31}.message-card[class~="frame-advanced-07"]{--shop-a:#51f3ff;--shop-b:#5c6cff;--shop-c:#00ff9d}.store-swatch.frame-advanced-07{--shop-a:#51f3ff;--shop-b:#5c6cff;--shop-c:#00ff9d}.message-card[class~="frame-advanced-08"]{--shop-a:#f4f7ff;--shop-b:#b000ff;--shop-c:#51f3ff}.store-swatch.frame-advanced-08{--shop-a:#f4f7ff;--shop-b:#b000ff;--shop-c:#51f3ff}
[class~="background-basic-01"]{--bg-shop:#b000ff}.store-swatch.background-basic-01{--bg-shop:#b000ff}[class~="background-basic-02"]{--bg-shop:#00a8ff}.store-swatch.background-basic-02{--bg-shop:#00a8ff}[class~="background-basic-03"]{--bg-shop:#b6ff00}.store-swatch.background-basic-03{--bg-shop:#b6ff00}[class~="background-basic-04"]{--bg-shop:#ff315c}.store-swatch.background-basic-04{--bg-shop:#ff315c}[class~="background-basic-05"]{--bg-shop:#ff4fd8}.store-swatch.background-basic-05{--bg-shop:#ff4fd8}[class~="background-basic-06"]{--bg-shop:#ff9f1c}.store-swatch.background-basic-06{--bg-shop:#ff9f1c}[class~="background-basic-07"]{--bg-shop:#51f3ff}.store-swatch.background-basic-07{--bg-shop:#51f3ff}[class~="background-basic-08"]{--bg-shop:#f5ff31}.store-swatch.background-basic-08{--bg-shop:#f5ff31}[class~="background-basic-09"]{--bg-shop:#5c6cff}.store-swatch.background-basic-09{--bg-shop:#5c6cff}[class~="background-basic-10"]{--bg-shop:#ff6f91}.store-swatch.background-basic-10{--bg-shop:#ff6f91}[class~="background-basic-11"]{--bg-shop:#72ffc8}.store-swatch.background-basic-11{--bg-shop:#72ffc8}[class~="background-basic-12"]{--bg-shop:#f4f7ff}.store-swatch.background-basic-12{--bg-shop:#f4f7ff}
[class~="background-advanced-01"]{--bg-a:#b000ff;--bg-b:#f600ff;--bg-c:#5c2bff}.store-swatch.background-advanced-01{--bg-a:#b000ff;--bg-b:#f600ff;--bg-c:#5c2bff}[class~="background-advanced-02"]{--bg-a:#00a8ff;--bg-b:#00eaff;--bg-c:#5c6cff}.store-swatch.background-advanced-02{--bg-a:#00a8ff;--bg-b:#00eaff;--bg-c:#5c6cff}[class~="background-advanced-03"]{--bg-a:#b6ff00;--bg-b:#00ff9d;--bg-c:#c7ff32}.store-swatch.background-advanced-03{--bg-a:#b6ff00;--bg-b:#00ff9d;--bg-c:#c7ff32}[class~="background-advanced-04"]{--bg-a:#ff315c;--bg-b:#ff00c8;--bg-c:#ff9f1c}.store-swatch.background-advanced-04{--bg-a:#ff315c;--bg-b:#ff00c8;--bg-c:#ff9f1c}[class~="background-advanced-05"]{--bg-a:#ff4fd8;--bg-b:#b000ff;--bg-c:#51f3ff}.store-swatch.background-advanced-05{--bg-a:#ff4fd8;--bg-b:#b000ff;--bg-c:#51f3ff}[class~="background-advanced-06"]{--bg-a:#ff9f1c;--bg-b:#ff315c;--bg-c:#f5ff31}.store-swatch.background-advanced-06{--bg-a:#ff9f1c;--bg-b:#ff315c;--bg-c:#f5ff31}[class~="background-advanced-07"]{--bg-a:#51f3ff;--bg-b:#5c6cff;--bg-c:#00ff9d}.store-swatch.background-advanced-07{--bg-a:#51f3ff;--bg-b:#5c6cff;--bg-c:#00ff9d}[class~="background-advanced-08"]{--bg-a:#f4f7ff;--bg-b:#b000ff;--bg-c:#51f3ff}.store-swatch.background-advanced-08{--bg-a:#f4f7ff;--bg-b:#b000ff;--bg-c:#51f3ff}
.message-card{position:relative;isolation:isolate;overflow:visible;border:2px solid var(--border);background:var(--surface)}
.message-card .message-main{position:relative;z-index:1}
.message-card[class*="frame-basic-"]{border:6px solid var(--shop-color);box-shadow:0 0 0 2px color-mix(in srgb,var(--shop-color) 70%,transparent),0 0 22px color-mix(in srgb,var(--shop-color) 46%,transparent)}
.message-card[class*="frame-round-"]{border:10px solid var(--round-color);background-color:var(--surface);background-image:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--round-color) 72%,transparent),0 0 24px color-mix(in srgb,var(--round-color) 42%,transparent)}
.message-card[class~="frame-round-cool-01"],.store-swatch[class~="frame-round-cool-01"]{--round-color:#16d8df}.message-card[class~="frame-round-cool-02"],.store-swatch[class~="frame-round-cool-02"]{--round-color:#8b4de8}.message-card[class~="frame-round-cool-03"],.store-swatch[class~="frame-round-cool-03"]{--round-color:#3d78e8}.message-card[class~="frame-round-warm-01"],.store-swatch[class~="frame-round-warm-01"]{--round-color:#ee4d5e}.message-card[class~="frame-round-warm-02"],.store-swatch[class~="frame-round-warm-02"]{--round-color:#f07827}.message-card[class~="frame-round-warm-03"],.store-swatch[class~="frame-round-warm-03"]{--round-color:#e6b52e}.message-card[class~="frame-round-rainbow-01"],.store-swatch[class~="frame-round-rainbow-01"]{--round-color:#31d7ef}
.message-card[class*="frame-advanced-"]{border:6px solid transparent;background:linear-gradient(var(--surface),var(--surface)) padding-box,linear-gradient(110deg,var(--shop-a,#b000ff),var(--shop-b,#f600ff),var(--shop-c,#b6ff00),var(--shop-a,#b000ff)) border-box;background-size:100% 100%,400% 100%;animation:frame-flow 1.55s linear infinite;box-shadow:none}
.message-card[class*="background-basic-"]::after,.message-card[class*="background-advanced-"]::after{content:"";position:absolute;z-index:0;inset:0;border-radius:inherit;pointer-events:none}
.message-card[class*="background-basic-"]::after{background:linear-gradient(135deg,color-mix(in srgb,var(--bg-shop,#b000ff) 24%,transparent),transparent 68%);opacity:.9}
.message-card[class*="background-advanced-"]::after{background:linear-gradient(120deg,color-mix(in srgb,var(--bg-a,#b000ff) 46%,transparent),color-mix(in srgb,var(--bg-b,#00eaff) 30%,transparent),color-mix(in srgb,var(--bg-c,#b6ff00) 20%,transparent),transparent 82%);background-size:300% 300%;animation:background-flow 2.8s ease-in-out infinite;opacity:.95}
.store-swatch[class*="frame-basic-"]{background:linear-gradient(135deg,var(--shop-color),color-mix(in srgb,var(--shop-color) 32%,#111));border:3px solid var(--shop-color);box-shadow:0 0 10px color-mix(in srgb,var(--shop-color) 45%,transparent)}
.store-swatch[class*="frame-round-"]{background:var(--round-color);border:4px solid var(--round-color);box-shadow:0 0 12px color-mix(in srgb,var(--round-color) 48%,transparent)}
.store-rounded .store-item-code{color:var(--lime)}.store-rounded .store-item-copy small{color:var(--lime)}
.message-card[class~="frame-round-rainbow-01"]{border:10px solid transparent;background:linear-gradient(var(--surface),var(--surface)) padding-box,linear-gradient(110deg,#ff477e 0%,#ff9f43 19%,#ffe45b 34%,#64e66a 50%,#31d7ef 66%,#6e78ff 81%,#d856ed 100%) border-box;background-size:100% 100%;background-repeat:no-repeat;box-shadow:0 0 0 2px rgba(255,255,255,.28),0 0 24px rgba(49,215,239,.32)}
.store-swatch[class~="frame-round-rainbow-01"]{background:linear-gradient(110deg,#ff477e 0%,#ff9f43 19%,#ffe45b 34%,#64e66a 50%,#31d7ef 66%,#6e78ff 81%,#d856ed 100%);border-color:transparent;box-shadow:0 0 12px rgba(49,215,239,.48)}
.store-swatch[class*="background-basic-"]{background:linear-gradient(135deg,var(--bg-shop),color-mix(in srgb,var(--bg-shop) 22%,#111));border:3px solid var(--bg-shop);box-shadow:0 0 10px color-mix(in srgb,var(--bg-shop) 42%,transparent)}
.store-swatch[class*="frame-advanced-"]{background:linear-gradient(110deg,var(--shop-a),var(--shop-b),var(--shop-c),var(--shop-a));background-size:300% 100%;border:3px solid transparent;animation:frame-flow 1.25s linear infinite;box-shadow:none}
.store-swatch[class*="background-advanced-"]{background:linear-gradient(120deg,var(--bg-a),var(--bg-b),var(--bg-c));background-size:300% 300%;border:3px solid transparent;animation:background-flow 1.8s ease-in-out infinite;box-shadow:0 0 14px var(--bg-a),0 0 26px var(--bg-b)}
.store-swatch[class*="advanced-"]::after{border-color:#fff;box-shadow:0 0 5px #fff;opacity:.9}
@keyframes frame-flow{to{background-position:100% 0,400% 0}}
@keyframes background-flow{0%,100%{background-position:0% 20%}50%{background-position:100% 80%}}
@keyframes shop-glow{50%{box-shadow:0 0 14px var(--purple)}}
body.light-mode .message-card[class*="frame-basic-"]{filter:saturate(1.35) contrast(1.1)}body.light-mode .message-card[class*="frame-advanced-"]{filter:saturate(1.45) contrast(1.14)}
.message-card.new-signal{animation:new-message-slide-in .72s cubic-bezier(.16,.83,.25,1) both}
@keyframes new-message-slide-in{0%{opacity:0;transform:translateX(140px) scale(.96);filter:brightness(1.7) saturate(1.35)}65%{opacity:1;transform:translateX(-10px) scale(1.01);filter:brightness(1.22) saturate(1.15)}100%{opacity:1;transform:translateX(0) scale(1);filter:none}}
/* 句IN牆上層懸浮商店入口 */
.wall-store-fab{display:none;position:fixed;z-index:24;top:98px;right:32px;align-items:center;gap:14px;padding:12px 16px;border:1px solid var(--purple);background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--purple);box-shadow:0 0 18px var(--p-soft);backdrop-filter:blur(12px);font:800 13px/1 var(--display);letter-spacing:.08em;transition:.18s}.wall-store-fab:hover{background:var(--purple);color:#fff;box-shadow:var(--glow);transform:translateY(-2px)}.wall-store-fab span{font-size:18px;font-weight:400}
body:has(#wall-view.is-visible) .wall-store-fab{display:inline-flex}
@media(max-width:700px){.wall-store-fab{top:82px;right:14px;padding:10px 12px;gap:9px;font-size:11px}.wall-store-fab span{font-size:16px}}


/* 管理者控制面板／前端測試模式 */
.admin-identity{display:grid;gap:7px;padding:14px 0 20px;border-bottom:1px solid var(--border)}.admin-identity strong{font:800 16px/1 var(--display);overflow-wrap:anywhere}.admin-identity small{color:var(--muted);font-size:10px}.admin-badge{width:max-content;padding:5px 8px;background:var(--purple);color:#fff;font:800 10px/1 var(--display);letter-spacing:.12em}.admin-panel h2{margin:25px 0 18px}.admin-tabs{display:flex;gap:4px;overflow:auto;padding-bottom:10px;border-bottom:1px solid var(--border)}.admin-tab{flex:0 0 auto;padding:10px 11px;color:var(--muted);background:transparent;border-bottom:2px solid transparent;font:800 11px/1 var(--display)}.admin-tab.is-active{color:var(--purple);border-color:var(--purple)}.admin-content{padding:17px 0 4px}.admin-stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.admin-stat{padding:14px 12px;border:1px solid var(--border);background:var(--raised)}.admin-stat b{display:block;color:var(--purple);font:900 25px/1 var(--display)}.admin-stat span{display:block;margin-top:7px;color:var(--muted);font:700 10px/1 var(--display)}.admin-section-title{margin:20px 0 10px;color:var(--purple);font:800 11px/1 var(--display);letter-spacing:.1em}.admin-list{display:grid;gap:8px}.admin-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px;border:1px solid var(--border);background:var(--raised)}.admin-row b{display:block;font:800 12px/1.3 var(--display)}.admin-row small{display:block;color:var(--muted);font-size:10px;line-height:1.5;margin-top:4px}.admin-row-actions{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.admin-row-actions button{padding:8px 9px;border:1px solid var(--border);background:transparent;color:var(--muted);font:800 10px/1 var(--display)}.admin-row-actions button:hover{color:var(--purple);border-color:var(--purple)}.admin-row-actions button[data-admin-action="delete"]:hover{color:#ff315c;border-color:#ff315c}.admin-status{color:var(--lime);font:800 10px/1 var(--display)}.admin-warning{margin-top:20px;padding:11px 12px;border:1px dashed var(--p-line);color:var(--muted);font-size:10px;line-height:1.6}.admin-online{display:grid;place-items:center;min-height:170px;padding:20px;border:1px solid var(--p-line);background:var(--p-soft);text-align:center}.admin-online strong{display:block;color:var(--purple);font:900 54px/.9 var(--display)}.admin-online span{display:block;margin-top:12px;color:var(--muted);font-size:11px}.admin-price{width:72px;padding:7px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:11px}.admin-log time{display:block;color:var(--purple);font:700 10px/1 var(--display)}
@media(max-width:700px){.admin-panel{padding:18px 16px calc(24px + env(safe-area-inset-bottom));width:100%;max-width:440px}.admin-tabs{margin-right:-4px}.admin-row{grid-template-columns:1fr}.admin-row-actions{justify-content:flex-start}.admin-row-actions button{min-height:42px}.admin-online strong{font-size:48px}}

/* 商品購買確認與付款測試視窗 */
.purchase-backdrop{position:fixed;z-index:44;inset:0;background:rgba(0,0,0,.68);backdrop-filter:blur(6px)}.purchase-backdrop[hidden]{display:none}.purchase-modal{position:fixed;z-index:45;top:50%;left:50%;width:min(430px,calc(100% - 34px));padding:25px;background:var(--surface);border:1px solid var(--purple);box-shadow:0 0 42px var(--p-soft),12px 12px 0 var(--p-soft);transform:translate(-50%,-46%) scale(.94);opacity:0;pointer-events:none;transition:.2s ease}.purchase-modal.is-open{transform:translate(-50%,-50%) scale(1);opacity:1;pointer-events:auto}.purchase-modal h2{margin:24px 0 16px;color:var(--text);font:900 36px/.9 var(--display)}.purchase-modal p{color:var(--text);font-size:13px;line-height:1.7}.purchase-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;border:1px solid var(--p-line);background:var(--raised)}.purchase-swatch{width:58px;height:38px;border:3px solid var(--purple);background:var(--p-soft)}.purchase-card b{display:block;font:800 13px/1.3 var(--display)}.purchase-card small{display:block;margin-top:5px;color:var(--muted);font-size:10px}.purchase-card strong{color:var(--purple);font:900 16px/1 var(--display);white-space:nowrap}.payment-test-box{display:grid;gap:8px;padding:18px;margin:16px 0;border:1px dashed var(--p-line);background:var(--p-soft)}.payment-test-box span,.payment-test-box small{color:var(--muted);font-size:11px}.payment-test-box strong{color:var(--purple);font:900 32px/1 var(--display)}
@media(max-width:700px){.purchase-modal{padding:23px 20px 20px}.purchase-modal h2{font-size:34px}.purchase-card{grid-template-columns:48px minmax(0,1fr) auto}.purchase-swatch{width:48px;height:34px}.purchase-modal .modal-actions button{min-height:48px;flex:1;touch-action:manipulation}}

.admin-order-price{display:block;margin-top:7px;color:var(--purple);font:900 13px/1 var(--display);text-align:right}


/* 商品效果分層修正：炫光框只繪製邊框，內層透明以保留獨立背景效果 */
.message-card[class*="frame-advanced-"]{
  background:linear-gradient(transparent,transparent) padding-box,linear-gradient(110deg,var(--shop-a,#b000ff),var(--shop-b,#f600ff),var(--shop-c,#b6ff00),var(--shop-a,#b000ff)) border-box;
  background-color:var(--surface);
  background-size:100% 100%,400% 100%;
  background-repeat:no-repeat;
  border:6px solid transparent;
  animation:frame-flow 1.55s linear infinite;
}
.message-card[class*="frame-basic-"]{background-color:var(--surface);background-image:none;}
.message-card[class*="background-basic-"]::after,.message-card[class*="background-advanced-"]::after{z-index:0;}
.message-card .message-main{position:relative;z-index:1;}


/* 炫光動態文字框：只有邊框有動態炫光；邊框外與文字區不發光，背景由背景商品層控制 */
.message-card[class*="frame-advanced-"]{
  background:linear-gradient(transparent,transparent) padding-box,linear-gradient(var(--frame-angle,110deg),var(--shop-a,#b000ff),var(--shop-b,#f600ff),var(--shop-c,#b6ff00),var(--shop-a,#b000ff)) border-box;
  background-color:var(--surface);
  background-size:100% 100%,400% 100%;
  background-repeat:no-repeat;
  border:6px solid transparent;
  animation:frame-border-flow var(--frame-speed,1.55s) linear infinite;
  box-shadow:none;
}
@keyframes frame-border-flow{to{background-position:0 0,400% 0;}}
.message-card[class~="frame-advanced-01"]{--frame-angle:118deg;--frame-speed:1.08s}
.message-card[class~="frame-advanced-02"]{--frame-angle:90deg;--frame-speed:1.34s}
.message-card[class~="frame-advanced-03"]{--frame-angle:146deg;--frame-speed:1.72s}
.message-card[class~="frame-advanced-04"]{--frame-angle:24deg;--frame-speed:.94s}
.message-card[class~="frame-advanced-05"]{--frame-angle:62deg;--frame-speed:1.48s}
.message-card[class~="frame-advanced-06"]{--frame-angle:164deg;--frame-speed:1.18s}
.message-card[class~="frame-advanced-07"]{--frame-angle:132deg;--frame-speed:1.94s}
.message-card[class~="frame-advanced-08"]{--frame-angle:38deg;--frame-speed:.82s}


/* 留言框塗層堆疊：底色 → 文字區炫光 → 背景商品 → 內容；邊框維持最上方框線 */
.message-card{background-color:transparent;}
.message-card .message-base-layer{position:absolute;z-index:0;inset:0;border-radius:inherit;background:var(--surface);pointer-events:none;}
.message-card .message-frame-glow{position:absolute;z-index:1;inset:6px;border-radius:inherit;opacity:0;pointer-events:none;}
.message-card[class*="frame-advanced-"] .message-frame-glow{
  opacity:0;
  background:none;
  filter:none;
  animation:none;
}
.message-card[class*="frame-advanced-"] .message-frame-glow::before{content:none;}
.store-swatch[class*="frame-advanced-"]{box-shadow:none;animation:frame-flow 1.25s linear infinite;}
.store-swatch[class*="frame-advanced-"]::after{box-shadow:none;}
.message-card[class*="background-basic-"]::after,.message-card[class*="background-advanced-"]::after{z-index:2;}
.message-card .message-main{position:relative;z-index:3;}


/* 社群 Logo 動態背景商品：每個平台一款，Logo 只在留言背景層低調流轉 */
[class~="background-social-x"]{--social-a:#050505;--social-b:#53535f;--social-c:#ffffff;--social-ink:#ffffff;--social-symbol:"X"}
[class~="background-social-fb"]{--social-a:#1877f2;--social-b:#49a7ff;--social-c:#b9ddff;--social-ink:#ffffff;--social-symbol:"f"}
[class~="background-social-ig"]{--social-a:#ff006e;--social-b:#ff9f1c;--social-c:#7b2cff;--social-ink:#ffffff;--social-symbol:"◎"}
[class~="background-social-threads"]{--social-a:#111111;--social-b:#5c5c66;--social-c:#f4f4f4;--social-ink:#ffffff;--social-symbol:"@"}
[class~="background-social-google"]{--social-a:#4285f4;--social-b:#ea4335;--social-c:#fbbc05;--social-ink:#ffffff;--social-symbol:"G"}
[class~="background-social-yt"]{--social-a:#ff0033;--social-b:#ff5b82;--social-c:#ffb0c0;--social-ink:#ffffff;--social-symbol:"▶"}
[class~="background-social-tw"]{--social-a:#9146ff;--social-b:#b872ff;--social-c:#ead7ff;--social-ink:#ffffff;--social-symbol:"奇"}
[class~="background-social-shopee"]{--social-a:#ee4d2d;--social-b:#ff7a59;--social-c:#ffc0ad;--social-ink:#ffffff;--social-symbol:"蝦"}
[class~="background-social-amazon"]{--social-a:#ff9900;--social-b:#232f3e;--social-c:#ffd28a;--social-ink:#ffffff;--social-symbol:"A"}
.message-card[class*="background-social-"]::after{content:"";position:absolute;z-index:1;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at 18% 24%,color-mix(in srgb,var(--social-a) 34%,transparent),transparent 44%),linear-gradient(125deg,color-mix(in srgb,var(--social-a) 38%,transparent),color-mix(in srgb,var(--social-b) 24%,transparent),color-mix(in srgb,var(--social-c) 12%,transparent),transparent 78%);background-size:180% 180%;animation:social-logo-background-flow 6s ease-in-out infinite;opacity:.88}
.message-card[class*="background-social-"] .message-logo-layer{position:absolute;z-index:2;inset:0;display:grid;place-items:center;overflow:hidden;pointer-events:none;color:var(--social-ink);opacity:.16;mix-blend-mode:screen}
.message-card[class*="background-social-"] .message-logo-layer::before{content:var(--social-symbol);display:block;font:900 clamp(100px,18vw,220px)/.8 var(--display);letter-spacing:-.08em;transform:rotate(-8deg) scale(1);text-shadow:0 0 18px color-mix(in srgb,var(--social-c) 72%,transparent);animation:social-logo-mark-flow 5.5s ease-in-out infinite}
.store-swatch[class*="background-social-"]{display:grid;place-items:center;background:linear-gradient(125deg,var(--social-a),var(--social-b),var(--social-c),var(--social-a));background-size:280% 280%;border:3px solid var(--social-c);box-shadow:none;animation:social-logo-background-flow 3.8s ease-in-out infinite}
.store-swatch[class*="background-social-"]::after{content:var(--social-symbol);position:static;inset:auto;display:block;border:0;color:var(--social-ink);font:900 24px/.8 var(--display);opacity:.95;box-shadow:none;transform:rotate(-8deg);text-shadow:0 0 7px color-mix(in srgb,var(--social-c) 76%,transparent)}
.store-logo .store-item-copy b{color:var(--purple)}
@keyframes social-logo-background-flow{0%,100%{background-position:0% 24%}50%{background-position:100% 76%}}
@keyframes social-logo-mark-flow{0%,100%{transform:rotate(-8deg) translate3d(-5%,2%,0) scale(.92);opacity:.58}50%{transform:rotate(8deg) translate3d(5%,-2%,0) scale(1.08);opacity:1}}


/* 玩家留言字體放大：使用留言框的空間提升閱讀份量 */
.message-body{font-size:17px;line-height:1.6;letter-spacing:.01em}
@media(max-width:700px){.message-body{font-size:16px;line-height:1.55}}
@media(max-width:380px){.message-body{font-size:15px;line-height:1.5}}


/* 測試階段邀請好友：使用公開網站網址，不顯示個人邀请码 */
.invite-link-box{border:1px solid var(--p-line);background:var(--raised);padding:17px 18px;margin-bottom:14px}
.invite-link-box span{display:block;color:var(--muted);font-size:11px;margin-bottom:10px}
.invite-link-box a{display:block;color:var(--purple);font:700 13px/1.45 var(--body);overflow-wrap:anywhere;text-decoration:none}
.invite-link-box a:hover{text-decoration:underline;text-underline-offset:3px}


/* QUICK DONATE：與商店同尺寸的 DONATE 入口，點擊後才展開 75／150 方案 */
.quick-donate-wrap{display:none;position:fixed;z-index:24;top:151px;right:32px}
body:has(#wall-view.is-visible) .quick-donate-wrap{display:block}
#wall-store-fab,.quick-donate-trigger{width:110px;justify-content:space-between}
.quick-donate-trigger{position:static!important;display:inline-flex!important}
.brand-advertising-fab{top:204px!important}
@media(max-width:700px){.brand-advertising-fab{top:188px!important}}
.quick-donate-menu{position:absolute;top:calc(100% + 8px);right:0;width:220px;display:grid;gap:7px;padding:9px;border:1px solid var(--p-line);background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:0 0 22px var(--p-soft);backdrop-filter:blur(14px)}
.quick-donate-menu[hidden]{display:none}
.quick-donate-label{color:var(--muted);font:800 9px/1 var(--display);letter-spacing:.14em;padding:3px 4px 5px}
.quick-donate-button{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:9px;min-height:40px;padding:6px 9px;text-align:left;border:1px solid var(--purple);background:var(--p-soft);color:var(--text);transition:.18s}
.quick-donate-button:hover{background:var(--purple);color:#fff;box-shadow:var(--glow);transform:translateX(-2px)}
.quick-donate-button b{color:var(--purple);font:900 21px/.9 var(--display)}
.quick-donate-button:hover b{color:#fff}
.quick-donate-button small{font:700 9px/1.25 var(--display);color:var(--muted)}
.quick-donate-button:hover small{color:#fff}
.store-item-copy small{line-height:1.35}
@media(max-width:700px){.quick-donate-wrap{top:135px;right:14px}.quick-donate-menu{width:205px}.quick-donate-button{min-height:42px}.quick-donate-label{font-size:8px}}


/* 新帳號商品權限：需啟用商品保持可見，但不可直接套用 */
.store-item.is-locked{opacity:.58;filter:saturate(.55);border-style:dashed;cursor:not-allowed}
.store-item.is-locked:hover{opacity:.78;border-color:var(--purple);transform:none;box-shadow:none}
.store-item.is-locked .store-apply{color:var(--purple);font-weight:800}


/* 每日大神榜：即時呈現台灣日期的三個互動統計 */
.honor-board{padding:0 0 20px;margin:0 0 20px;border-bottom:1px solid var(--border)}
.honor-board-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;color:var(--text);font:800 12px/1 var(--display);letter-spacing:.08em;margin-bottom:11px}
.honor-board-head small{color:var(--purple);font:600 9px/1 var(--display);letter-spacing:.08em}
.honor-board-yesterday .honor-board-head{color:var(--muted)}
.honor-board-yesterday .honor-board-head small{color:var(--dim)}
.honor-board-rows{display:grid;gap:7px}
.honor-row{min-width:0;display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:7px;align-items:center;padding:7px 0;border-top:1px solid color-mix(in srgb,var(--border) 65%,transparent)}
.honor-row:first-child{border-top:0}
.honor-icon{font-size:14px;filter:drop-shadow(0 0 5px var(--p-soft))}
.honor-copy{min-width:0;display:grid;gap:3px}
.honor-copy small{color:var(--dim);font:600 8px/1 var(--display);letter-spacing:.06em}
.honor-copy b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font:700 11px/1.1 var(--display);letter-spacing:.03em}
.honor-row>strong{color:var(--purple);font:800 13px/1 var(--display)}
@media(max-width:700px){.wall-side-panel{border-left:0;border-top:1px solid var(--border);padding:18px 0 0;margin:20px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.wall-side-panel>.side-panel-block:first-child{grid-column:1/-1}.honor-board{margin:0;padding-bottom:16px}.honor-board-yesterday{border-bottom:0}.side-panel-note{grid-column:1/-1;margin-top:6px}.honor-copy small{font-size:8px}.honor-copy b{font-size:11px}}
@media(max-width:390px){.wall-side-panel{grid-template-columns:1fr}.honor-board{border-bottom:1px solid var(--border)}.honor-board-yesterday{border-bottom:0}}


.honor-row-action{width:100%;appearance:none;border:0;background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer;border-radius:4px;transition:background .18s ease,transform .18s ease}
.honor-row-action:hover{background:color-mix(in srgb,var(--purple) 10%,transparent);transform:translateX(2px)}
.honor-row-action:focus-visible{outline:2px solid var(--purple);outline-offset:3px}

/* 接收方互動即時提示 */
.interaction-alert{position:fixed;z-index:60;top:clamp(78px,12vh,118px);left:50%;display:flex;align-items:center;gap:13px;min-width:260px;max-width:min(430px,calc(100% - 28px));padding:13px 16px;color:var(--text);background:color-mix(in srgb,var(--surface) 94%,transparent);border:1px solid var(--purple);box-shadow:0 0 28px var(--p-soft),8px 8px 0 var(--p-soft);backdrop-filter:blur(12px);pointer-events:none;transform:translate(-50%,-14px) scale(.92);opacity:0}.interaction-alert[hidden]{display:none}.interaction-alert.is-visible{animation:incoming-reaction-in .36s cubic-bezier(.16,.83,.25,1) both}.interaction-alert.is-poop{border-color:var(--lime);box-shadow:0 0 28px rgba(153,255,0,.24),8px 8px 0 rgba(153,255,0,.16)}.interaction-alert-icon{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;color:var(--purple);font-size:31px;line-height:1}.interaction-alert-icon img{width:38px;height:38px;object-fit:contain}.interaction-alert-copy{display:grid;gap:4px;min-width:0}.interaction-alert-copy small{color:var(--purple);font:800 9px/1 var(--display);letter-spacing:.16em}.interaction-alert-copy strong{color:var(--text);font:900 20px/1 var(--display);letter-spacing:.04em}.interaction-alert-copy span{overflow:hidden;color:var(--muted);font:700 11px/1.2 var(--display);text-overflow:ellipsis;white-space:nowrap}.interaction-alert-mark{margin-left:auto;color:var(--purple);font:900 22px/1 var(--display)}@keyframes incoming-reaction-in{0%{opacity:0;transform:translate(-50%,-22px) scale(.84) rotate(-2deg)}68%{opacity:1;transform:translate(-50%,3px) scale(1.04) rotate(1deg)}100%{opacity:1;transform:translate(-50%,0) scale(1) rotate(0)}}
@media(max-width:700px){.interaction-alert{top:calc(76px + env(safe-area-inset-top));min-width:0;width:calc(100% - 28px);padding:12px 14px}.interaction-alert-copy strong{font-size:18px}.interaction-alert-icon{width:38px;height:38px;flex-basis:38px}.interaction-alert-icon img{width:34px;height:34px}}


/* 商品系列設計：讓既有框、背景與平台背景在商店內有可辨識的收藏卡視覺 */
.store-grid{gap:10px;padding-right:3px}
.store-item{position:relative;grid-template-columns:62px minmax(0,1fr) auto;min-height:68px;padding:8px 11px;overflow:hidden}
.store-item::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--purple);opacity:0;transition:opacity .18s}
.store-item:hover::before,.store-item.is-selected::before{opacity:1}
.store-item.is-locked{opacity:.8}
.store-swatch{width:62px;height:42px;display:grid;place-items:center;border-width:2px;isolation:isolate}
.store-swatch::after{inset:7px 5px;border-color:rgba(255,255,255,.7);box-shadow:none}
.store-swatch-signal{position:absolute;z-index:1;inset:6px;background:repeating-linear-gradient(105deg,transparent 0 5px,rgba(255,255,255,.3) 5px 6px);opacity:.65;transform:skewX(-12deg)}
.store-swatch em{position:relative;z-index:2;color:#fff;font:900 16px/.8 var(--display);font-style:normal;letter-spacing:.04em;text-shadow:0 0 8px rgba(0,0,0,.45)}
.store-item-copy{gap:2px}
.store-item-code{display:block;color:var(--purple);font:800 9px/1 var(--display);letter-spacing:.15em}
.store-item-copy b{line-height:1.18}
.store-item-copy small{display:flex;flex-wrap:wrap;gap:4px;line-height:1.35}
.store-item-signature{color:var(--text);font-weight:800}
.store-apply{display:grid;gap:4px;justify-items:end;align-content:center;min-width:42px}
.store-advanced .store-item-code,.store-logo .store-item-code{color:var(--lime)}
.store-advanced .store-swatch-signal{animation:store-signal-sweep 1.25s linear infinite}
.store-logo .store-swatch-signal{background:radial-gradient(circle at 30% 50%,rgba(255,255,255,.75),transparent 36%);animation:store-logo-signal 2.6s ease-in-out infinite}
.store-item.is-selected .store-swatch{box-shadow:0 0 0 1px var(--text),0 0 20px var(--p-line)}
.message-card[class~="background-advanced-01"]{--background-speed:3.9s}
.message-card[class~="background-advanced-02"]{--background-speed:2.4s}
.message-card[class~="background-advanced-03"]{--background-speed:4.8s}
.message-card[class~="background-advanced-04"]{--background-speed:2.1s}
.message-card[class~="background-advanced-05"]{--background-speed:3.2s}
.message-card[class~="background-advanced-06"]{--background-speed:2.7s}
.message-card[class~="background-advanced-07"]{--background-speed:4.2s}
.message-card[class~="background-advanced-08"]{--background-speed:1.9s}
.message-card[class*="background-advanced-"]::after{animation-duration:var(--background-speed,2.8s)}
@keyframes store-signal-sweep{to{transform:skewX(-12deg) translateX(18px)}}
@keyframes store-logo-signal{0%,100%{transform:scale(.88);opacity:.35}50%{transform:scale(1.16);opacity:.9}}
@media(max-width:700px){
  .store-item{grid-template-columns:58px minmax(0,1fr) auto;min-height:72px;padding:9px}
  .store-swatch{width:58px;height:42px}
  .store-item-copy b{font-size:13px}
  .store-item-signature{width:100%}
}
/* 每日大神金屬獎勵：永久 UID 獎勵，不列入一般付費商品 */
.message-card[class~="frame-reward-metal-gold"],.message-card[class~="frame-reward-metal-copper"],.message-card[class~="frame-reward-metal-silver"]{border:6px solid transparent;background-color:transparent;background-repeat:no-repeat;background-size:100% 100%;box-shadow:0 0 0 1px color-mix(in srgb,var(--reward-mid) 82%,transparent),0 0 24px color-mix(in srgb,var(--reward-mid) 38%,transparent);}
.message-card[class~="frame-reward-metal-gold"]{--reward-hi:#fff3a6;--reward-mid:#d9a72f;--reward-low:#6e3f0d;background-image:linear-gradient(transparent,transparent) padding-box,linear-gradient(118deg,var(--reward-low),var(--reward-hi) 24%,var(--reward-mid) 44%,#fff4ad 61%,var(--reward-low) 92%) border-box;}
.message-card[class~="frame-reward-metal-copper"]{--reward-hi:#ffd0a7;--reward-mid:#c86b39;--reward-low:#642515;background-image:linear-gradient(transparent,transparent) padding-box,linear-gradient(118deg,var(--reward-low),var(--reward-mid) 28%,var(--reward-hi) 47%,#72f0ce 55%,var(--reward-low) 92%) border-box;}
.message-card[class~="frame-reward-metal-silver"]{--reward-hi:#ffffff;--reward-mid:#aeb7c6;--reward-low:#4d5869;background-image:linear-gradient(transparent,transparent) padding-box,linear-gradient(118deg,var(--reward-low),var(--reward-hi) 25%,var(--reward-mid) 45%,#ffffff 62%,var(--reward-low) 92%) border-box;}
.message-card[class~="frame-reward-metal-gold"]::before,.message-card[class~="frame-reward-metal-copper"]::before,.message-card[class~="frame-reward-metal-silver"]::before{content:"";position:absolute;z-index:4;inset:2px;border:1px solid color-mix(in srgb,var(--reward-hi) 68%,transparent);border-radius:inherit;pointer-events:none;opacity:.7}
.message-card[class~="background-reward-metal-gold"]::after,.message-card[class~="background-reward-metal-copper"]::after,.message-card[class~="background-reward-metal-silver"]::after{content:"";position:absolute;z-index:2;inset:0;border-radius:inherit;pointer-events:none;opacity:.9;background-size:180% 180%;animation:daily-metal-background-flow 6s ease-in-out infinite}
.message-card[class~="background-reward-metal-gold"]{--reward-bg-a:#8e5b13;--reward-bg-b:#f2c14b;--reward-bg-c:#fff0a0}.message-card[class~="background-reward-metal-gold"]::after{background:radial-gradient(circle at 20% 25%,color-mix(in srgb,var(--reward-bg-b) 35%,transparent),transparent 42%),linear-gradient(125deg,color-mix(in srgb,var(--reward-bg-a) 34%,transparent),color-mix(in srgb,var(--reward-bg-b) 22%,transparent),color-mix(in srgb,var(--reward-bg-c) 14%,transparent),transparent 80%)}
.message-card[class~="background-reward-metal-copper"]{--reward-bg-a:#7b2c17;--reward-bg-b:#d87940;--reward-bg-c:#72f0ce}.message-card[class~="background-reward-metal-copper"]::after{background:radial-gradient(circle at 78% 22%,color-mix(in srgb,var(--reward-bg-c) 25%,transparent),transparent 40%),linear-gradient(125deg,color-mix(in srgb,var(--reward-bg-a) 38%,transparent),color-mix(in srgb,var(--reward-bg-b) 24%,transparent),color-mix(in srgb,var(--reward-bg-c) 12%,transparent),transparent 80%)}
.message-card[class~="background-reward-metal-silver"]{--reward-bg-a:#47566a;--reward-bg-b:#cad3df;--reward-bg-c:#ffffff}.message-card[class~="background-reward-metal-silver"]::after{background:radial-gradient(circle at 24% 22%,color-mix(in srgb,var(--reward-bg-c) 28%,transparent),transparent 40%),linear-gradient(125deg,color-mix(in srgb,var(--reward-bg-a) 32%,transparent),color-mix(in srgb,var(--reward-bg-b) 20%,transparent),color-mix(in srgb,var(--reward-bg-c) 12%,transparent),transparent 80%)}
@keyframes daily-metal-background-flow{0%,100%{background-position:0% 25%}50%{background-position:100% 75%}}
.daily-reward-items{display:grid;gap:8px;margin-top:15px}.daily-reward-item{display:grid;gap:5px;padding:10px 11px;border:1px solid var(--border);background:color-mix(in srgb,var(--raised) 85%,transparent)}.daily-reward-item-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.daily-reward-item-head b{font:900 13px/1.1 var(--display)}.daily-reward-item-head small{color:var(--muted);font-size:10px}.daily-reward-item p{margin:0;color:var(--text);font-size:11px;line-height:1.45}.daily-reward-item button{min-height:38px;margin-top:3px;border:1px solid currentColor;background:transparent;color:var(--purple);font:900 11px/1 var(--display);touch-action:manipulation}.daily-reward-item button:hover{background:var(--purple);color:#fff}.daily-reward-item button:disabled{border-color:var(--muted);color:var(--muted);cursor:default}.daily-reward-item button.is-claimed{border-color:var(--lime);color:var(--lime)}.daily-reward-item.reward-tone-gold{border-color:rgba(230,186,69,.55)}.daily-reward-item.reward-tone-copper{border-color:rgba(217,135,85,.55)}.daily-reward-item.reward-tone-silver{border-color:rgba(220,229,241,.55)}
.login-optional-note{display:grid;gap:4px;margin:0 0 18px;padding:12px 14px;border:1px solid var(--lime);border-left:5px solid var(--lime);background:color-mix(in srgb,var(--lime) 12%,transparent);box-shadow:0 0 18px color-mix(in srgb,var(--lime) 15%,transparent)}.login-optional-note b{color:var(--lime);font:900 14px/1.15 var(--display);letter-spacing:.04em}.login-optional-note span{color:var(--text);font-size:11px;line-height:1.5}
.daily-reward-collection{margin:0 0 18px;padding:14px;border:1px solid var(--p-line);background:linear-gradient(135deg,var(--p-soft),transparent 76%)}.daily-reward-collection[hidden]{display:none}.daily-reward-heading{display:grid;gap:5px;margin-bottom:12px}.daily-reward-kicker{color:var(--lime);font:800 10px/1 var(--display);letter-spacing:.12em}.daily-reward-heading h3{margin:0;color:var(--text);font:900 24px/.95 var(--display)}.daily-reward-heading p{margin:0;color:var(--muted);font-size:10px;line-height:1.6}.daily-reward-grid{display:grid;gap:8px}.daily-reward-card{display:grid;gap:6px;padding:11px 12px;border:1px solid var(--border);background:var(--raised)}.daily-reward-card-head{display:flex;justify-content:space-between;gap:10px}.daily-reward-card-head b{font:900 13px/1.2 var(--display)}.daily-reward-card-head small{color:var(--muted);font:700 10px/1 var(--display)}.daily-reward-card>strong{font:900 15px/1.2 var(--display)}.daily-reward-card>span{color:var(--muted);font-size:10px}.daily-reward-card button{min-height:38px;margin-top:3px;border:1px solid currentColor;background:transparent;color:var(--purple);font:800 11px/1 var(--display);touch-action:manipulation}.daily-reward-card button:hover{background:var(--purple);color:#fff}.daily-reward-card button:disabled{border-color:var(--muted);color:var(--muted);cursor:default}.reward-tone-gold>strong,.reward-tone-gold button{color:#e6ba45}.reward-tone-copper>strong,.reward-tone-copper button{color:#d98755}.reward-tone-silver>strong,.reward-tone-silver button{color:#dce5f1}
.daily-reward-alert{position:fixed;z-index:46;right:26px;bottom:26px;width:min(430px,calc(100% - 32px));padding:23px 22px 19px;background:linear-gradient(145deg,#17131d,#0b0b11);border:1px solid var(--purple);box-shadow:0 0 34px var(--p-soft),10px 10px 0 rgba(176,0,255,.16);transform:translateY(20px) scale(.97);opacity:0;pointer-events:none;transition:.24s ease}.daily-reward-alert[hidden]{display:none}.daily-reward-alert.is-visible{transform:translateY(0) scale(1);opacity:1;pointer-events:auto}.daily-reward-alert-mark{position:absolute;top:-14px;right:18px;display:grid;place-items:center;width:32px;height:32px;background:var(--lime);color:#101010;font:900 18px/1 var(--display)}.daily-reward-alert-kicker{display:block;color:var(--purple);font:900 10px/1 var(--display);letter-spacing:.14em}.daily-reward-alert h2{margin:14px 0 9px;font:900 29px/.95 var(--display)}.daily-reward-alert p{margin:0;color:var(--text);font-size:12px;line-height:1.75}.daily-reward-alert-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:17px}.daily-reward-alert-actions button{min-height:38px;padding:0 13px;border:1px solid var(--border);background:transparent;color:var(--muted);font:800 11px/1 var(--display)}.daily-reward-alert-actions button:first-child{border-color:var(--purple);color:var(--purple)}.daily-reward-alert-actions button:hover{background:var(--purple);color:#fff}@media(max-width:700px){.daily-reward-alert{right:16px;bottom:16px;width:calc(100% - 32px)}.daily-reward-alert-actions button{min-height:44px;flex:1}.daily-reward-card button{min-height:44px}}


/* 圓角商品系列：免費單色背景、75 NT 炫光圓角、150 NT 社群 Logo 圓角 */
[class~="background-round-bg-cool-01"]{--bg-round-color:#16d8df}[class~="background-round-bg-cool-02"]{--bg-round-color:#8b4de8}[class~="background-round-bg-cool-03"]{--bg-round-color:#3d78e8}[class~="background-round-bg-warm-01"]{--bg-round-color:#ee4d5e}[class~="background-round-bg-warm-02"]{--bg-round-color:#f07827}[class~="background-round-bg-warm-03"]{--bg-round-color:#e6b52e}
.message-card[class*="background-round-bg-"]::after{content:"";position:absolute;z-index:2;inset:0;border-radius:22px;pointer-events:none;background:linear-gradient(135deg,color-mix(in srgb,var(--bg-round-color) 31%,transparent),transparent 72%);opacity:.95}
.store-swatch[class*="background-round-bg-"]{background:linear-gradient(135deg,var(--bg-round-color),color-mix(in srgb,var(--bg-round-color) 24%,#111));border:3px solid var(--bg-round-color);border-radius:12px;box-shadow:0 0 10px color-mix(in srgb,var(--bg-round-color) 42%,transparent)}
.store-rounded-background .store-item-copy small{color:var(--lime)}

.message-card[class~="frame-advanced-rounded-frame-01"],.store-swatch[class~="frame-advanced-rounded-frame-01"]{--shop-a:#b000ff;--shop-b:#f600ff;--shop-c:#5c2bff}.message-card[class~="frame-advanced-rounded-frame-02"],.store-swatch[class~="frame-advanced-rounded-frame-02"]{--shop-a:#00a8ff;--shop-b:#00eaff;--shop-c:#5c6cff}.message-card[class~="frame-advanced-rounded-frame-03"],.store-swatch[class~="frame-advanced-rounded-frame-03"]{--shop-a:#b6ff00;--shop-b:#00ff9d;--shop-c:#c7ff32}.message-card[class~="frame-advanced-rounded-frame-04"],.store-swatch[class~="frame-advanced-rounded-frame-04"]{--shop-a:#ff315c;--shop-b:#ff00c8;--shop-c:#ff9f1c}.message-card[class~="frame-advanced-rounded-frame-05"],.store-swatch[class~="frame-advanced-rounded-frame-05"]{--shop-a:#ff4fd8;--shop-b:#b000ff;--shop-c:#51f3ff}.message-card[class~="frame-advanced-rounded-frame-06"],.store-swatch[class~="frame-advanced-rounded-frame-06"]{--shop-a:#ff9f1c;--shop-b:#ff315c;--shop-c:#f5ff31}.message-card[class~="frame-advanced-rounded-frame-07"],.store-swatch[class~="frame-advanced-rounded-frame-07"]{--shop-a:#51f3ff;--shop-b:#5c6cff;--shop-c:#00ff9d}.message-card[class~="frame-advanced-rounded-frame-08"],.store-swatch[class~="frame-advanced-rounded-frame-08"]{--shop-a:#f4f7ff;--shop-b:#b000ff;--shop-c:#51f3ff}
.message-card[class~="background-advanced-rounded-background-01"],.store-swatch[class~="background-advanced-rounded-background-01"]{--bg-a:#b000ff;--bg-b:#f600ff;--bg-c:#5c2bff}.message-card[class~="background-advanced-rounded-background-02"],.store-swatch[class~="background-advanced-rounded-background-02"]{--bg-a:#00a8ff;--bg-b:#00eaff;--bg-c:#5c6cff}.message-card[class~="background-advanced-rounded-background-03"],.store-swatch[class~="background-advanced-rounded-background-03"]{--bg-a:#b6ff00;--bg-b:#00ff9d;--bg-c:#c7ff32}.message-card[class~="background-advanced-rounded-background-04"],.store-swatch[class~="background-advanced-rounded-background-04"]{--bg-a:#ff315c;--bg-b:#ff00c8;--bg-c:#ff9f1c}.message-card[class~="background-advanced-rounded-background-05"],.store-swatch[class~="background-advanced-rounded-background-05"]{--bg-a:#ff4fd8;--bg-b:#b000ff;--bg-c:#51f3ff}.message-card[class~="background-advanced-rounded-background-06"],.store-swatch[class~="background-advanced-rounded-background-06"]{--bg-a:#ff9f1c;--bg-b:#ff315c;--bg-c:#f5ff31}.message-card[class~="background-advanced-rounded-background-07"],.store-swatch[class~="background-advanced-rounded-background-07"]{--bg-a:#51f3ff;--bg-b:#5c6cff;--bg-c:#00ff9d}.message-card[class~="background-advanced-rounded-background-08"],.store-swatch[class~="background-advanced-rounded-background-08"]{--bg-a:#f4f7ff;--bg-b:#b000ff;--bg-c:#51f3ff}
.message-card[class*="frame-advanced-rounded-frame-"]{border-radius:22px}.store-swatch[class*="frame-advanced-rounded-frame-"]{border-radius:12px}.message-card[class*="background-advanced-rounded-background-"]::after{border-radius:22px}.store-swatch[class*="background-advanced-rounded-background-"]{border-radius:12px}.store-rounded-glow .store-item-copy b{color:var(--purple)}

[class~="background-social-rounded-x"]{--social-a:#050505;--social-b:#53535f;--social-c:#ffffff;--social-ink:#ffffff;--social-symbol:"X"}[class~="background-social-rounded-fb"]{--social-a:#1877f2;--social-b:#49a7ff;--social-c:#b9ddff;--social-ink:#ffffff;--social-symbol:"f"}[class~="background-social-rounded-ig"]{--social-a:#ff006e;--social-b:#ff9f1c;--social-c:#7b2cff;--social-ink:#ffffff;--social-symbol:"◎"}[class~="background-social-rounded-threads"]{--social-a:#111111;--social-b:#5c5c66;--social-c:#f4f4f4;--social-ink:#ffffff;--social-symbol:"@"}[class~="background-social-rounded-google"]{--social-a:#4285f4;--social-b:#ea4335;--social-c:#fbbc05;--social-ink:#ffffff;--social-symbol:"G"}[class~="background-social-rounded-yt"]{--social-a:#ff0033;--social-b:#ff5b82;--social-c:#ffb0c0;--social-ink:#ffffff;--social-symbol:"▶"}[class~="background-social-rounded-tw"]{--social-a:#9146ff;--social-b:#b872ff;--social-c:#ead7ff;--social-ink:#ffffff;--social-symbol:"奇"}[class~="background-social-rounded-shopee"]{--social-a:#ee4d2d;--social-b:#ff7a59;--social-c:#ffc0ad;--social-ink:#ffffff;--social-symbol:"蝦"}[class~="background-social-rounded-amazon"]{--social-a:#ff9900;--social-b:#232f3e;--social-c:#ffd28a;--social-ink:#ffffff;--social-symbol:"A"}
.message-card[class*="background-social-rounded-"]::after,.message-card[class*="background-social-rounded-"] .message-logo-layer{border-radius:22px}.store-swatch[class*="background-social-rounded-"]{border-radius:12px}.store-rounded-logo .store-item-copy b{color:var(--purple)}


/* 商店成就獎勵分頁：金、銅、銀框由昨日大神榜核發；圓角框／背景由成功邀請好友解鎖 */
.store-tab-achievement{color:#e6ba45}.store-tab-achievement.is-active{border-color:#e6ba45;color:#e6ba45}.store-item.store-achievement{border-color:color-mix(in srgb,var(--achievement-tone,#dce5f1) 52%,var(--border));background:linear-gradient(115deg,color-mix(in srgb,var(--achievement-tone,#dce5f1) 10%,var(--raised)),var(--raised) 66%)}.store-item.store-achievement::before{background:var(--achievement-tone,#dce5f1);opacity:1}.store-item.store-achievement .store-item-code,.store-item.store-achievement .store-apply{color:var(--achievement-tone,#dce5f1)}.store-item.store-achievement.is-locked{opacity:.64;filter:saturate(.68)}.store-item.store-achievement.is-locked .store-apply{color:var(--muted)}.store-swatch[class~="frame-reward-metal-gold"]{--achievement-tone:#e6ba45;border:4px solid #d9a72f;background:linear-gradient(118deg,#6e3f0d,#fff3a6 24%,#d9a72f 44%,#fff4ad 61%,#6e3f0d 92%);box-shadow:0 0 12px rgba(230,186,69,.34)}.store-swatch[class~="frame-reward-metal-copper"]{--achievement-tone:#d98755;border:4px solid #c86b39;background:linear-gradient(118deg,#642515,#c86b39 28%,#ffd0a7 47%,#72f0ce 55%,#642515 92%);box-shadow:0 0 12px rgba(217,135,85,.32)}.store-swatch[class~="frame-reward-metal-silver"]{--achievement-tone:#dce5f1;border:4px solid #aeb7c6;background:linear-gradient(118deg,#4d5869,#fff 25%,#aeb7c6 45%,#fff 62%,#4d5869 92%);box-shadow:0 0 12px rgba(220,229,241,.28)}.store-item.store-achievement:has(.frame-reward-metal-gold){--achievement-tone:#e6ba45}.store-item.store-achievement:has(.frame-reward-metal-copper){--achievement-tone:#d98755}.store-item.store-achievement:has(.frame-reward-metal-silver){--achievement-tone:#dce5f1}.store-item.store-achievement .store-swatch-signal{display:none}.store-item.store-achievement .store-swatch em{font-size:18px;text-shadow:0 1px 3px rgba(0,0,0,.72)}
.store-item.store-invite-achievement{border-color:color-mix(in srgb,var(--lime) 52%,var(--border));background:linear-gradient(115deg,color-mix(in srgb,var(--lime) 9%,var(--raised)),var(--raised) 66%)}.store-item.store-invite-achievement::before{background:var(--lime);opacity:1}.store-item.store-invite-achievement .store-item-code,.store-item.store-invite-achievement .store-apply{color:var(--lime)}.store-item.store-invite-achievement .store-item-copy small{color:var(--lime)}.store-item.store-invite-achievement.is-locked .store-apply{color:var(--muted)}
.invite-progress{margin:0 0 12px;padding:9px 10px;border:1px solid color-mix(in srgb,var(--purple) 58%,var(--border));color:var(--purple);font:800 11px/1.45 var(--display);letter-spacing:.04em}.invite-progress.is-unlocked{border-color:color-mix(in srgb,var(--lime) 68%,var(--border));color:var(--lime);box-shadow:0 0 16px color-mix(in srgb,var(--lime) 16%,transparent)}
