.gugu-home-entry{display:grid;grid-template-columns:54px 1fr 24px;align-items:center;gap:13px;width:100%;min-height:78px;margin:14px 0 190px;padding:11px 15px;border:1px solid rgba(216,194,169,.62);border-radius:20px;background:linear-gradient(145deg,rgba(255,253,249,.96),rgba(239,243,230,.9));color:#59453b;text-align:left;box-shadow:0 9px 22px rgba(83,60,46,.07);cursor:pointer}.gugu-home-entry:active{transform:scale(.985)}
.gugu-entry-copy small,.gugu-entry-copy strong{display:block}.gugu-entry-copy small{margin-bottom:4px;color:#9b8a7f;font-size:10px}.gugu-entry-copy strong{font-size:16px;font-weight:620}.gugu-entry-arrow{color:#a59589;font-size:28px;text-align:right}
.gugu-entry-wheel{position:relative;display:grid;place-items:center;width:52px;height:52px;border:3px solid #c19b54;border-radius:50%;background:repeating-conic-gradient(from 0deg,#9aaa88 0 12deg,#f8f1e5 12deg 24deg);box-shadow:inset 0 0 0 3px #fff8e8,0 5px 11px rgba(83,60,46,.12)}.gugu-entry-wheel::before{content:"";position:absolute;width:21px;height:21px;border:3px solid #c19b54;border-radius:50%;background:#dfa08e}.gugu-entry-wheel i{position:absolute;top:-6px;width:7px;height:10px;border-radius:5px;background:#fffdf9;box-shadow:0 1px 3px rgba(80,57,41,.2)}.gugu-entry-wheel b{position:absolute;top:-4px;width:4px;height:4px;border-radius:50%;background:#fff}

.gugu-flow{position:fixed;z-index:72;inset:0;left:50%;width:min(100%,430px);height:100dvh;transform:translateX(-50%);overflow-y:auto;background:linear-gradient(155deg,#fffdf9,#fbf6ee 47%,#f4ded6 78%,#e8eee0);color:#4d382e;overscroll-behavior:contain}.gugu-flow[hidden]{display:none!important}
.gugu-header{position:sticky;z-index:10;top:0;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;min-height:calc(64px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 14px 0;background:rgba(255,251,246,.88);border-bottom:1px solid rgba(122,91,73,.08);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.gugu-header h2{margin:0;text-align:center;font-size:19px;font-weight:620}.gugu-icon-button{display:grid;place-items:center;width:40px;height:40px;min-height:40px;padding:0;border:1px solid rgba(122,91,73,.14);border-radius:50%;background:rgba(255,253,249,.75);color:#6d584d;font-size:20px;box-shadow:0 4px 10px rgba(78,55,42,.05)}
.gugu-game-shell{position:relative;min-height:calc(100dvh - 64px - env(safe-area-inset-top));padding:7px 12px calc(24px + env(safe-area-inset-bottom));overflow:hidden;background:radial-gradient(circle at 50% 30%,rgba(255,255,255,.9),transparent 44%),repeating-linear-gradient(117deg,rgba(122,91,73,.008) 0 1px,rgba(255,255,255,.08) 1px 3px)}.gugu-game-shell::before{content:"";position:absolute;inset:54px -120px auto;height:310px;border:1px solid rgba(223,160,142,.2);border-radius:50%;pointer-events:none}.gugu-meal-line{position:relative;z-index:2;margin:6px 0 0;color:#92837a;font-size:11px;text-align:center}
.gugu-roulette-section{position:relative;z-index:2}.gugu-roulette-stage{position:relative;width:min(100%,406px);aspect-ratio:1;margin:2px auto 0;padding:10px}.gugu-roulette-bowl{position:relative;width:100%;height:100%;padding:13px;border:1px solid #554019;border-radius:50%;background:radial-gradient(circle at 31% 24%,#fff0bd 0,#d7b56b 18%,#9b7738 46%,#f0d18b 63%,#725321 83%,#d4ac5d 100%);box-shadow:0 24px 34px rgba(77,56,46,.23),0 4px 8px rgba(77,56,46,.2),inset 0 4px 5px rgba(255,246,202,.52),inset 0 -8px 12px rgba(60,42,14,.38)}.gugu-roulette-bowl::before,.gugu-roulette-bowl::after{content:"";position:absolute;border-radius:50%;pointer-events:none}.gugu-roulette-bowl::before{inset:7px;z-index:4;border:3px solid rgba(255,235,174,.72);box-shadow:inset 0 5px 9px rgba(63,45,18,.44),0 1px 1px rgba(255,249,213,.65)}.gugu-roulette-bowl::after{inset:17px;z-index:4;border:1px solid rgba(255,241,195,.42);box-shadow:inset 0 6px 13px rgba(77,56,46,.2)}
.gugu-wheel-svg{position:relative;z-index:2;display:block;width:100%;height:100%;border-radius:50%}.gugu-ball-carrier{position:absolute;z-index:6;inset:12px;border-radius:50%;transform:rotate(0deg);transition:transform 6.6s cubic-bezier(.08,.57,.06,1);pointer-events:none;will-change:transform}.gugu-roulette-ball{position:absolute;top:2px;left:50%;width:15px;height:15px;border-radius:50%;transform:translateX(-50%) translateY(0);transition:transform 1.35s cubic-bezier(.22,.78,.23,1)}.gugu-ball-carrier.is-settling .gugu-roulette-ball{transform:translateX(-50%) translateY(28px)}.gugu-roulette-ball i{position:relative;display:block;width:100%;height:100%;overflow:hidden;border:1px solid rgba(78,70,57,.34);border-radius:50%;background:radial-gradient(circle at 31% 27%,#fff 0 15%,#f9f5ed 38%,#c4bbac 70%,#6f695f 100%);box-shadow:0 4px 7px rgba(77,56,46,.42),inset 0 0 2px rgba(255,255,255,.8)}.gugu-roulette-ball i::after{content:"";position:absolute;top:2px;left:2px;width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.86);filter:blur(.25px)}.gugu-ball-carrier.is-rolling .gugu-roulette-ball i{animation:gugu-ball-hop .32s cubic-bezier(.35,.02,.62,1) infinite}.gugu-ball-carrier.is-rolling .gugu-roulette-ball i::after{animation:gugu-ball-glint .48s linear infinite}.gugu-ball-carrier.is-settling .gugu-roulette-ball i{animation:gugu-ball-land 1.35s cubic-bezier(.2,.7,.2,1) both}
.gugu-center-button{position:absolute;z-index:7;inset:50% auto auto 50%;width:110px;height:110px;min-height:110px;padding:0;border:3px solid #f5dea3;border-radius:50%;color:#fffaf0;background:radial-gradient(circle at 34% 26%,#e8a99a 0,#dfa08e 28%,#a95046 68%,#6f2d28 100%);box-shadow:0 0 0 5px #c8a45a,0 0 0 7px #80622c,0 9px 18px rgba(77,56,46,.32),inset 0 5px 7px rgba(255,229,212,.34),inset 0 -8px 10px rgba(71,25,22,.38);transform:translate(-50%,-50%);cursor:pointer}.gugu-center-button:active{transform:translate(-50%,-50%) scale(.96)}.gugu-center-button span{display:block;text-shadow:0 2px 3px rgba(65,22,19,.35)}.gugu-center-button .gugu-yabi{margin-bottom:0;font-family:"Bradley Hand","Snell Roundhand","Kaiti SC",cursive;font-size:24px;line-height:.9;letter-spacing:.03em;font-weight:600;transform:rotate(-4deg)}.gugu-center-button span:last-child{font-size:15px;font-weight:620}
.gugu-landing-status{min-height:20px;margin:1px 0 0;color:#92837a;font-size:11px;text-align:center}.gugu-result-panel{position:relative;z-index:2;margin:8px 0 0;padding:14px 0 2px;border-top:1px solid rgba(122,91,73,.15);text-align:center}.gugu-result-panel[hidden]{display:none!important}.gugu-result-panel.is-visible{animation:gugu-result-in .34s ease-out both}.gugu-result-panel h2{margin:0;color:#4d382e;font-size:25px;font-weight:650}.gugu-result-actions{display:flex;justify-content:center;gap:10px;margin-top:13px}.gugu-result-button{flex:0 1 132px;min-height:44px;padding:0 14px;border:1px solid rgba(122,91,73,.2);border-radius:14px;background:rgba(255,253,249,.72);color:#4d382e}.gugu-result-button.primary{border-color:#dca18d;background:#a95046;color:#fffaf0;box-shadow:0 5px 12px rgba(77,56,46,.14)}.gugu-result-button:disabled{opacity:.55}.gugu-saved-copy{margin:10px 0 0;color:#718066;font-size:11px}
.gugu-history-drop{position:relative;z-index:2;margin-top:14px;border-top:1px solid rgba(122,91,73,.16)}.gugu-history-drop summary{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:0 6px;color:#4d382e;cursor:pointer;list-style:none}.gugu-history-drop summary::-webkit-details-marker{display:none}.gugu-history-drop summary strong{font-size:13px;font-weight:620}.gugu-history-drop summary>span{color:#92837a;font-size:10px}.gugu-history-drop summary i{display:inline-block;margin-left:5px;font-style:normal;transition:transform .18s ease}.gugu-history-drop[open] summary i{transform:rotate(180deg)}.gugu-history-list{display:grid;max-height:164px;overflow-y:auto;border-top:1px solid rgba(122,91,73,.14);overscroll-behavior:contain}.gugu-history-list p{min-height:42px;margin:0;padding:12px 6px;color:#92837a;font-size:11px}.gugu-history-row{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:42px;padding:10px 6px;border-bottom:1px solid rgba(122,91,73,.1);color:#92837a;font-size:11px}.gugu-history-row strong{color:#4d382e;font-weight:620}
@keyframes gugu-result-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes gugu-ball-hop{0%,100%{transform:translateY(0) scale(1)}38%{transform:translateY(-4px) scale(.97,1.04)}67%{transform:translateY(0) scale(1.06,.94)}82%{transform:translateY(-1px) scale(.99,1.01)}}@keyframes gugu-ball-glint{0%{transform:translate(0,0);opacity:.9}50%{transform:translate(6px,3px);opacity:.45}100%{transform:translate(0,0);opacity:.9}}@keyframes gugu-ball-land{0%{transform:translateY(-7px) scale(.96,1.05)}38%{transform:translateY(1px) scale(1.08,.92)}56%{transform:translateY(-4px) scale(.98,1.03)}76%{transform:translateY(0) scale(1.04,.96)}88%{transform:translateY(-1px)}100%{transform:translateY(0) scale(1)}}
@media(max-width:370px){.gugu-game-shell{padding-inline:7px}.gugu-roulette-stage{padding:8px}.gugu-roulette-bowl{padding:11px}.gugu-center-button{width:96px;height:96px;min-height:96px}.gugu-center-button .gugu-yabi{font-size:21px}.gugu-result-button{flex-basis:124px}}
@media(prefers-reduced-motion:reduce){.gugu-ball-carrier,.gugu-roulette-ball{transition-duration:.01ms}.gugu-ball-carrier.is-rolling .gugu-roulette-ball i,.gugu-ball-carrier.is-rolling .gugu-roulette-ball i::after,.gugu-ball-carrier.is-settling .gugu-roulette-ball i{animation:none!important}}
