.wish-entry{position:fixed;right:20px;bottom:26px;z-index:40;display:flex;align-items:center;gap:7px;padding:10px 15px;border:1px solid #dce7e4;border-radius:24px;background:#ffffffed;box-shadow:0 4px 20px #526d7414;color:#657d79;font:400 13px/1.5 Arial,"Microsoft YaHei",sans-serif;cursor:pointer}.wish-entry>span{font-size:20px;line-height:1}.wish-entry:hover{background:#f1f8f5}.wish-dialog{box-sizing:border-box;width:min(760px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 48px);padding:0;border:1px solid #e1e9e6;border-radius:22px;background:#fff;color:#445469;box-shadow:0 24px 80px #263f4d30;overflow:auto;font-family:Arial,"Microsoft YaHei","PingFang SC",sans-serif}.wish-dialog::backdrop{background:#34475755;backdrop-filter:blur(6px)}.wish-dialog *{box-sizing:border-box}.wish-head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;gap:16px;padding:26px 30px 22px;background:#f7faf9f5;border-bottom:1px solid #e8eeeb;backdrop-filter:blur(12px)}.wish-eyebrow{font-size:11px;color:#819b92;letter-spacing:1px}.wish-head h2{font-size:24px;font-weight:500;line-height:1.5;margin:6px 0}.wish-head p{font-size:13px;color:#87949e;line-height:1.8;margin:0}.wish-close{flex:0 0 32px;height:32px;padding:0;border:0;border-radius:50%;background:#eaf0ed;color:#82928e;font-size:23px;cursor:pointer}.wish-body{padding:20px 30px 24px}.wish-demo{font-size:11px;color:#958a6f;background:#faf8f1;border-radius:7px;padding:8px 11px;margin-bottom:20px}.wish-dialog h3{font-size:15px;line-height:1.6;font-weight:500;margin:0 0 12px}.wish-input-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.wish-input-row{display:flex;gap:10px}.wish-input-row input{flex:1;min-width:0;width:100%;border:1px solid #dce5e2;border-radius:10px;padding:12px 13px;font:400 14px/1.5 Arial,"Microsoft YaHei",sans-serif;color:#4d6270;background:#fcfefd}.wish-input-row input::placeholder{color:#a0ada9;font-size:12px}.wish-primary{flex-shrink:0;border:0;border-radius:10px;padding:12px 16px;background:#829f93;color:#fff;font:400 13px/1.5 Arial,"Microsoft YaHei",sans-serif;cursor:pointer}.wish-match{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px;font-size:11px;color:#889991}.wish-match select{max-width:100%;padding:5px 24px 5px 8px;border:1px solid #e1e9e5;border-radius:6px;background:#fff;color:#687f76;font-family:inherit;font-size:12px}.wish-match>span{font-size:11px;color:#929ea6}.wish-message{min-height:20px;margin:8px 0 0;font-size:12px;line-height:1.7;color:#628d7c}.wish-ranking{margin-top:20px;border-top:1px solid #edf0f3;padding-top:22px}.wish-ranking-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:20px}.wish-ranking-head h3{margin-bottom:4px}.wish-ranking-head p{font-size:12px;color:#909da7;line-height:1.7;margin:0}#wishTotal{font-size:11px;white-space:nowrap;color:#82978f;background:#f0f5f2;padding:5px 9px;border-radius:20px}.wish-bars{display:grid;gap:15px}.wish-bar{display:grid;grid-template-columns:24px minmax(0,1fr) 66px;align-items:center;gap:12px}.wish-rank{font-size:12px;color:#a0adb5;font-variant-numeric:tabular-nums}.wish-bar-main{min-width:0}.wish-bar-label{display:flex;justify-content:space-between;gap:10px;align-items:baseline;font-size:13px;color:#566a77;margin-bottom:6px}.wish-bar-label span:first-child{overflow-wrap:anywhere}.wish-bar-label span:last-child{flex-shrink:0;font-size:11px;color:#8d9ca4;font-variant-numeric:tabular-nums}.wish-track{display:block;width:100%;height:12px;padding:0;border:0;border-radius:4px;background:#f0f4f5;overflow:hidden;cursor:pointer}.wish-fill{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,#c6ddd4,#8fb6a7);min-width:3px;transition:width .25s ease}.wish-bar:nth-child(n+3) .wish-fill{background:linear-gradient(90deg,#d4e1e8,#a8bccb)}.wish-vote{border:1px solid #dfe7e5;border-radius:8px;padding:6px 8px;background:#fff;color:#7d928c;font:400 12px/1.5 Arial,"Microsoft YaHei",sans-serif;cursor:pointer}.wish-vote[aria-pressed=true]{background:#edf5f0;border-color:#bcd4c8;color:#668c79}.wish-footnote{font-size:11px;line-height:1.8;color:#9ca8af;margin:23px 0 0}.wish-dialog button:focus-visible,.wish-dialog input:focus-visible,.wish-dialog select:focus-visible,.wish-entry:focus-visible{outline:2px solid #8cad9f;outline-offset:3px}@media(max-width:600px){.wish-entry{right:12px;bottom:calc(16px + env(safe-area-inset-bottom));font-size:12px;padding:8px 12px}.wish-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 24px);border-radius:17px}.wish-head{padding:19px 18px 17px}.wish-head h2{font-size:20px}.wish-head p{font-size:12px}.wish-body{padding:15px 18px 20px}.wish-input-row{flex-wrap:wrap}.wish-input-row input{flex-basis:100%;font-size:16px}.wish-primary{margin-left:auto;padding:9px 14px}.wish-match{gap:8px}.wish-match>span{flex-basis:100%}.wish-ranking-head{flex-wrap:wrap;gap:8px}.wish-bar{grid-template-columns:16px minmax(0,1fr) 58px;gap:8px}.wish-bar-label{font-size:12px}.wish-vote{font-size:11px}.wish-demo{font-size:10px}}@media(prefers-reduced-motion:reduce){.wish-fill{transition:none}}
/* Rain-cleared sky: icy blue glass, mint light and soft violet reflections. */
.wish-entry{border-color:#d4e5f0;background:linear-gradient(120deg,#ffffffed,#eef8ffee);color:#6284a1;box-shadow:0 5px 24px #97bbd52b}.wish-entry>span{color:#79b8c4}.wish-entry:hover{background:#edf8ff}.wish-dialog{border:1px solid #ffffffed;background:linear-gradient(145deg,#ffffff 20%,#f6fbff 72%,#f3fbf9);box-shadow:0 25px 90px #50769c30,inset 0 0 0 1px #e4eff7;color:#415b76}.wish-dialog::backdrop{background:#abc2d449;backdrop-filter:blur(9px)}.wish-head{isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 90% 0%,#c8dcf5a8,transparent 65%),linear-gradient(115deg,#ffffffed,#eefaffed 58%,#f0f1ffed);border-bottom:1px solid #deebf5}.wish-head:before{content:"";position:absolute;z-index:-1;width:260px;height:110px;right:-65px;top:18px;border:1px solid #ffffffd9;border-radius:50%;box-shadow:0 0 0 12px #ffffff26,0 0 0 26px #ffffff1f;transform:rotate(-28deg);pointer-events:none}.wish-head:after{content:"";position:absolute;z-index:-1;right:78px;top:28px;width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff,#e4f4ff80 45%,#a9c9e270);border:1px solid #ffffffd9;box-shadow:24px 34px 0 -4px #ffffffd9;pointer-events:none}.wish-eyebrow{color:#709aa9}.wish-head h2{color:#405c79;font-weight:400}.wish-head p{color:#7e94a8}.wish-close{background:#ffffffb8;color:#7d9ab3;border:1px solid #e1edf6}.wish-demo{background:#edf6fc;color:#8399aa;border:1px solid #e4f0f8}.wish-compose{padding:17px 18px 10px;border:1px solid #e0eef5;border-radius:14px;background:linear-gradient(120deg,#ffffffde,#f3fbffbf);box-shadow:0 5px 20px #9cbfd00a}.wish-input-row input{border-color:#d9e9f3;background:#ffffffed;color:#526e88}.wish-input-row input::placeholder{color:#94aaba}.wish-primary{background:linear-gradient(110deg,#76b4c4,#829fce);box-shadow:0 4px 12px #87b5d82b}.wish-primary:hover{background:linear-gradient(110deg,#69a8ba,#7693c4)}.wish-match{color:#829ba9}.wish-match select{color:#6a879c;border-color:#dfebf3;background:#ffffffc9}.wish-match>span{color:#93a5b2}.wish-message{color:#649d9b}.wish-ranking{border-top:0;margin-top:22px;padding-top:0}.wish-ranking h3{color:#516b84}.wish-ranking-head p{color:#899fad}#wishTotal{background:#eaf5f8;color:#7195a9;border:1px solid #ddeff2}.wish-bars{gap:12px}.wish-bar{padding:10px 12px;background:#ffffffc4;border:1px solid #e5eef6;border-radius:12px}.wish-rank{color:#a4b8cc}.wish-bar-label{color:#5d748b}.wish-bar-label span:last-child{color:#869eb2}.wish-track{height:13px;background:#eef4f9;border-radius:5px}.wish-fill{background:linear-gradient(90deg,#bde7e1,#80c2d0);box-shadow:inset 0 1px 0 #ffffff70}.wish-bar:nth-child(2) .wish-fill{background:linear-gradient(90deg,#c4e4f4,#8ebadd)}.wish-bar:nth-child(3) .wish-fill{background:linear-gradient(90deg,#d2def7,#a8b7dd)}.wish-bar:nth-child(4) .wish-fill{background:linear-gradient(90deg,#cceade,#99c6b8)}.wish-bar:nth-child(n+5) .wish-fill{background:linear-gradient(90deg,#d7e8f2,#aec9de)}.wish-vote{border-color:#dbe9f3;color:#7796ad;background:#f8fcff}.wish-vote:hover{background:#eaf5fc}.wish-vote[aria-pressed=true]{border-color:#b9deda;background:#ecf8f4;color:#639c90}.wish-footnote{color:#93a8b7}.wish-dialog button:focus-visible,.wish-dialog input:focus-visible,.wish-dialog select:focus-visible,.wish-entry:focus-visible{outline-color:#8db5d4}@media(max-width:600px){.wish-compose{padding:14px 12px 8px}.wish-body{padding-left:14px;padding-right:14px}.wish-bar{padding:9px 8px;gap:6px}.wish-bar-label{font-size:12px}.wish-head:before{right:-130px}.wish-head:after{right:68px;top:20px}}
/* Clearer text on the light glass surface, with a slimmer compose row. */
.wish-dialog{color:#354e68}.wish-head h2{color:#304e70}.wish-eyebrow{color:#507b90}.wish-head p,.wish-ranking-head p{color:#607b91}.wish-dialog h3,.wish-ranking h3{color:#3b5874}.wish-demo{color:#617d93}.wish-input-row input{color:#365772;padding:8px 12px}.wish-input-row input::placeholder{color:#738da2;opacity:1}.wish-primary{padding:8px 14px;background:linear-gradient(110deg,#4e95aa,#627fb8);color:#fff}.wish-match,.wish-match>span{color:#657f92}.wish-match select{color:#4e6d84}.wish-message{color:#357a72}.wish-bar-label{color:#425f79}.wish-bar-label span:last-child,.wish-rank{color:#6e88a0}.wish-vote{color:#547695}.wish-vote[aria-pressed=true]{color:#3e7a6b}#wishTotal{color:#537b91}.wish-footnote{color:#6a8296}.wish-close{color:#5d7e9b}@media(max-width:600px){.wish-input-row input{padding:8px 10px}.wish-primary{padding:8px 14px}}
/* Crisp text: neutral navy instead of low-contrast misty blue. */
.wish-dialog{color:#243b53}.wish-head h2{color:#203b59;font-weight:500}.wish-dialog h3,.wish-ranking h3{color:#2d465e;font-weight:500}.wish-eyebrow,.wish-head p,.wish-ranking-head p,.wish-demo,.wish-match,.wish-match>span,.wish-footnote{color:#52697d}.wish-input-row input{color:#263f57}.wish-input-row input::placeholder{color:#61778b}.wish-match select{color:#3e5971}.wish-bar-label{color:#304b64}.wish-bar-label span:last-child,.wish-rank{color:#536f87}.wish-vote{color:#385f83}.wish-vote[aria-pressed=true]{color:#2c6b5d}#wishTotal{color:#3c657e}.wish-message{color:#286b60}.wish-close{color:#3f607e}.wish-dialog p,.wish-dialog span,.wish-dialog h2,.wish-dialog h3,.wish-dialog input,.wish-dialog select,.wish-dialog button{text-shadow:none;opacity:1}
/* Compact spacing while preserving legible text and mobile touch targets. */
.wish-dialog{width:min(700px,calc(100vw - 32px))}.wish-head{padding:18px 24px 16px}.wish-head h2{margin:3px 0;font-size:22px}.wish-body{padding:14px 24px 18px}.wish-demo{padding:6px 9px;margin-bottom:12px}.wish-compose{padding:12px 13px 8px}.wish-dialog h3{margin-bottom:8px}.wish-match{margin-top:8px}.wish-message{min-height:0;margin:5px 0 0}.wish-message:empty{display:none}.wish-ranking{margin-top:16px}.wish-ranking-head{margin-bottom:12px}.wish-ranking-head h3{margin-bottom:2px}.wish-bars{gap:7px}.wish-bar{padding:8px 10px}.wish-bar-label{margin-bottom:4px}.wish-track{height:10px}.wish-footnote{margin-top:14px}@media(max-width:600px){.wish-dialog{width:calc(100vw - 20px)}.wish-head{padding:15px 16px 13px}.wish-head h2{font-size:20px}.wish-body{padding:12px 12px 15px}.wish-input-row{flex-wrap:nowrap;gap:7px}.wish-input-row input{flex-basis:auto;width:0}.wish-input-row input::placeholder{font-size:11px}.wish-primary{padding:8px 10px;min-height:42px;font-size:12px}.wish-match{gap:6px}.wish-match>span{font-size:10px}.wish-bar{padding:6px 7px}.wish-vote{min-height:36px}.wish-ranking-head{gap:6px}.wish-ranking-head p{font-size:11px}}
/* Reveal form and fetched ranking together inside one stable dialog frame. */
.wish-dialog{height:min(800px,calc(100dvh - 48px));overflow:hidden}.wish-dialog[open]{display:flex;flex-direction:column}.wish-dialog .wish-head{position:relative;flex-shrink:0}.wish-dialog .wish-body{flex:1;min-height:0;overflow:auto;scrollbar-gutter:stable}@media(max-width:600px){.wish-dialog{height:calc(100dvh - 24px)}}

/* Reserve ranking rows without hiding the form or presenting sample votes. */
.wish-skeleton{height:54px;border:1px solid #e4edf5;border-radius:12px;background:linear-gradient(#e9f0f6,#e9f0f6) 18px 13px / 38% 9px no-repeat,linear-gradient(#f0f5f9,#f0f5f9) 18px 31px / 78% 9px no-repeat,#fbfdff}
