/* Kids editor: drawer docked under the page, overlay helpers, modals. YouTube sets html{font-size:10px}, so px only. */
:root{--gze-h:318px}
html.gze-editing body{padding-bottom:var(--gze-h) !important}
/* Shrink YouTube's player (it sizes from these vars) so the whole video fits between the masthead and the drawer.
   --gze-ar = the video's aspect, max 16:9 (set by the editor): YouTube derives the player height from this width for narrower videos */
html.gze-editing:not(.gze-showing) ytd-watch-flexy{--gze-fit:calc(100vh - 56px - var(--gze-h) - 16px);--ytd-watch-flexy-max-player-height:var(--gze-fit) !important;--ytd-watch-flexy-max-player-width:calc(var(--gze-fit) * var(--gze-ar, 1.7778)) !important;--ytd-watch-flexy-min-player-height:180px !important}
html.gze-editing:not(.gze-showing) ytd-watch-flexy:not([is-two-columns_]) #player-container-outer{max-width:calc(var(--gze-fit) * var(--gze-ar, 1.7778)) !important;margin:0 auto !important}
html.gze-editing:not(.gze-showing) ytd-watch-flexy[full-bleed-player] #full-bleed-container{height:var(--gze-fit) !important;max-height:var(--gze-fit) !important;min-height:0 !important}
html.gze-editing #movie_player{scroll-margin-top:64px}

.gze-root,.gze-modal-host{--gze-ink:#1d1340;--gze-muted:#6b5f99;--gze-pink:#ff4fa3;--gze-yellow:#ffd93d;--gze-green:#3ddc84;--gze-red:#ff4d4d;--gze-soft:#f0ebff;--gze-tile:#f7f4ff}
.gze-root *,.gze-modal-host *,.gze-selbar,.gze-selbar *,.gze-hint,.gze-trash{box-sizing:border-box;font-family:'GZ Fredoka','GZ Rubik',system-ui,sans-serif}
.gze-root button,.gze-modal-host button,.gze-selbar button{border:0;margin:0;font:inherit;font-weight:600;color:var(--gze-ink,#1d1340);cursor:pointer;line-height:1.1;-webkit-tap-highlight-color:transparent;transition:transform .1s}
.gze-root button:active,.gze-modal-host button:active,.gze-selbar button:active{transform:scale(.9)}

/* Drawer */
.gze-root{position:fixed;left:0;right:0;bottom:0;z-index:2200;height:var(--gze-h);box-sizing:border-box;display:flex;flex-direction:column;gap:8px;
  padding:10px max(16px,calc((100vw - 1180px) / 2)) 12px;background:linear-gradient(160deg,#3b1d8f,#7b2cbf);
  box-shadow:0 -8px 30px rgba(0,0,0,.35);border-radius:22px 22px 0 0;color:#fff;font-size:14px;user-select:none;-webkit-user-select:none}
.gze-controls{display:flex;align-items:center;gap:8px}
.gze-big{height:50px;min-width:50px;border-radius:16px;font-size:22px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 12px;box-shadow:0 5px 0 rgba(0,0,0,.18);flex:none}
.gze-play{background:var(--gze-green);min-width:62px}
.gze-undo,.gze-clear{background:#fff}
.gze-surprise{background:var(--gze-yellow);font-size:16px}
.gze-show{background:var(--gze-pink);color:#1d1340 !important;font-size:16px}
.gze-share{background:#3db8ff;color:#1d1340 !important;font-size:16px}
.gze-save{background:#fff;font-size:16px}
.gze-toast{position:absolute;left:50%;bottom:calc(100% + 12px);transform:translateX(-50%);background:#1d1340;color:#fff;padding:10px 18px;border-radius:22px;font-weight:700;font-size:15px;line-height:1.3;
  width:max-content;max-width:min(600px,calc(100vw - 32px));text-align:center;box-shadow:0 6px 20px rgba(0,0,0,.35);animation:gze-toast-in .25s ease-out}
@keyframes gze-toast-in{from{opacity:0;transform:translate(-50%,8px)}}
.gze-lbl{white-space:nowrap}
.gze-cap{display:none} /* captions under the icons: website editor on phones only (web-editor.css) */
.gze-icon{width:40px;height:40px;border-radius:12px;background:rgba(255,255,255,.18);color:#fff !important;font-size:18px;flex:none}
.gze-timeline{flex:1;min-width:80px;height:50px;position:relative;display:flex;align-items:center;cursor:pointer;touch-action:none}
.gze-track{position:relative;width:100%;height:12px;border-radius:999px;background:rgba(255,255,255,.25)}
.gze-fill{position:absolute;left:0;top:0;bottom:0;border-radius:999px;background:var(--gze-yellow);width:0}
.gze-head{position:absolute;top:50%;width:24px;height:24px;border-radius:50%;background:#fff;border:4px solid var(--gze-yellow);transform:translate(-50%,-50%);left:0;box-shadow:0 2px 6px rgba(0,0,0,.3)}
/* Item dots are clickable: jump to the item and select it */
.gze-dots{position:absolute;inset:0;z-index:2}
.gze-seek{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;pointer-events:none}
.gze-track:has(.gze-seek:focus-visible){outline:3px solid #ffd93d;outline-offset:4px}
.gze-dot{padding:0;font:inherit}
.gze-dot:focus-visible{outline:3px solid #ffd93d;outline-offset:2px}
/* Tray, tiles and the selected-item toolbar are light: two-tone ring, dark band inside the yellow (BUG-030, 1.4.11) */
.gze-tab:focus-visible,.gze-tile:focus-visible,.gze-selbar button:focus-visible{outline:2px solid #ffd93d;outline-offset:3px;box-shadow:0 0 0 3px #1d1340}
.gze-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.gze-dot{position:absolute;top:50%;width:20px;height:20px;border-radius:50%;transform:translate(-50%,-50%);border:3px solid #fff;cursor:pointer;box-shadow:0 2px 5px rgba(0,0,0,.35);transition:transform .1s}
.gze-dot::after{content:"";position:absolute;inset:-6px;border-radius:50%}
.gze-dot:hover{transform:translate(-50%,-50%) scale(1.2)}
.gze-dot.gze-on{transform:translate(-50%,-50%) scale(1.3);box-shadow:0 0 0 3px #1d1340,0 2px 5px rgba(0,0,0,.35)}
.gze-time{position:absolute;right:0;top:-2px;font-size:11px;opacity:.85;font-weight:600}
.gze-root[dir=rtl] .gze-time{right:auto;left:0}
/* Status chip: what you are editing and who can see it (sits above the track, opposite the time) */
.gze-chip-status{position:absolute;left:0;top:-5px;max-width:calc(100% - 84px);height:19px;line-height:19px;padding:0 9px;border-radius:999px;background:rgba(255,255,255,.2);
  font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}
.gze-chip-status.gze-chip--live{background:#3ddc84;color:#0d3b20}
.gze-root[dir=rtl] .gze-chip-status{left:auto;right:0}
.gze-root[dir=rtl] .gze-track{transform:scaleX(-1)}

.gze-challenge{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.14);border-radius:999px;padding:4px 4px 4px 14px;font-weight:600;font-size:14px}
.gze-root[dir=rtl] .gze-challenge{padding:4px 14px 4px 4px}
.gze-challenge-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gze-reroll{width:32px;height:32px;border-radius:50%;background:var(--gze-yellow);font-size:16px}

.gze-tray{flex:1;min-height:0;display:flex;flex-direction:column;background:#fff;border-radius:18px;overflow:hidden;color:var(--gze-ink)}
.gze-tabs{display:flex;gap:4px;padding:5px;background:var(--gze-soft);overflow-x:auto;scrollbar-width:none;flex:none}
.gze-tab{flex:1;min-width:64px;border-radius:12px;background:transparent;padding:4px;display:flex;flex-direction:column;align-items:center;gap:1px;color:var(--gze-muted) !important;font-size:11px}
.gze-tab-ico{font-size:22px;line-height:1}
.gze-tab.gze-on{background:#fff;color:var(--gze-ink) !important;box-shadow:0 3px 0 rgba(0,0,0,.08)}
.gze-grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));grid-auto-rows:64px;gap:8px;padding:8px;overflow-y:auto}
.gze-tile{border-radius:14px;background:var(--gze-tile);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4px;position:relative;overflow:hidden;--gzr-u:3.6px}
.gze-tile img{width:82%;pointer-events:none}
.gze-tile .gzr-fb{font-size:34px}
.gze-tile-txt .gzr-txt{font-size:22px;max-width:none}
.gze-tile-txt .gzr-st-shout{font-size:24px}
.gze-tile-txt .gzr-st-speech,.gze-tile-txt .gzr-st-thought{font-size:13px}
.gze-tile-txt:has(.gzr-st-meme),.gze-style:has(.gzr-st-meme){background:#2b2540 !important}
.gze-grid.gze-grid--text{grid-auto-rows:auto;grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}
.gze-grid--text .gze-tile{height:64px}
.gze-row-head{grid-column:1/-1;font-size:12px;font-weight:700;color:var(--gze-muted);text-transform:uppercase;letter-spacing:.04em;padding:2px 2px 0}
.gze-tile-txt .gzr-st-ribbon,.gze-style .gzr-st-ribbon,.gze-tile-txt .gzr-st-sign,.gze-style .gzr-st-sign,.gze-tile-txt .gzr-st-neon,.gze-style .gzr-st-neon,.gze-tile-txt .gzr-st-caution,.gze-style .gzr-st-caution,.gze-tile-txt .gzr-st-sticky,.gze-style .gzr-st-sticky{font-size:12px;min-width:0;max-width:none}
.gze-tile-txt .gzr-st-caution,.gze-style .gzr-st-caution{border-width:4px}
.gze-tile-txt .gzr-st-meme,.gze-style .gzr-st-meme{font-size:16px}
.gze-tile-txt .gzr-st-subtitle,.gze-style .gzr-st-subtitle{font-size:15px}
.gze-tile-txt .gzr-st-slam,.gze-style .gzr-st-slam{font-size:17px}
.gze-tile-txt .gzr-st-news,.gze-style .gzr-st-news{width:auto;font-size:12px;padding:6px}
.gze-tile-txt .gzr-st-news::before,.gze-style .gzr-st-news::before{content:none}
.gze-fx-ico{font-size:28px;line-height:1}
.gze-fx-lbl{font-size:10px;font-weight:700;color:var(--gze-muted);margin-top:2px;line-height:1.05;text-align:center;white-space:normal;overflow-wrap:anywhere}
.gze-tile-snd{font-family:'GZ Bangers','GZ Rubik',Impact,sans-serif !important;font-weight:400 !important;font-size:17px;color:#ff8a3d !important;text-align:center;line-height:1}
.gze-tile-snd.gzr-he{font-family:'GZ Rubik',sans-serif !important;font-weight:900 !important;font-size:14px}

/* GIFs */
.gze-grid.gze-grid--gifs{display:block;padding:0}
.gze-gif-panel{display:flex;flex-direction:column;gap:6px;padding:8px}
.gze-gif-top{display:flex;align-items:center;gap:8px}
.gze-gif-search{flex:1;min-width:0;height:36px;border:2px solid #8a7bb8;border-radius:999px;padding:0 14px;font-size:14px;outline:none;color:var(--gze-ink);background:#fff;font-family:inherit;user-select:text;-webkit-user-select:text}
.gze-gif-search:focus{border-color:var(--gze-pink);box-shadow:0 0 0 3px #1d1340}
.gze-powered{font-size:10px;font-weight:700;color:var(--gze-muted);white-space:nowrap}
.gze-chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.gze-chip{flex:none;height:30px;padding:0 12px;border-radius:999px;background:var(--gze-soft) !important;font-size:13px;white-space:nowrap}
.gze-chip.gze-on{background:var(--gze-ink) !important;color:#fff !important}
.gze-gif-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));grid-auto-rows:84px;gap:6px}
.gze-gif{padding:0;border-radius:12px;overflow:hidden;background:var(--gze-tile) !important}
.gze-gif img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.gze-gif-footer{display:flex;justify-content:center;min-height:30px;align-items:center}
.gze-gif-msg{font-size:14px;font-weight:600;color:var(--gze-muted)}

/* Overlay helpers */
.gze-selbar{position:absolute;display:none;gap:4px;background:#fff;border-radius:999px;padding:4px;box-shadow:0 4px 14px rgba(0,0,0,.3);z-index:1000;white-space:nowrap;direction:ltr}
.gze-selbar.gze-on{display:flex}
.gze-selbar button{height:38px;min-width:38px;border-radius:999px;background:var(--gze-soft,#f0ebff);font-size:17px;padding:0 8px}
.gze-dur{font-size:14px;font-weight:700;color:#1d1340;align-self:center;padding:0 2px}
.gze-selbar .gze-time-btn{font-size:15px;padding:0 9px}
.gze-selbar .gze-del{background:#ffe1e1}
.gze-sel-lbl{display:none;font-size:14px;font-weight:700;color:#1d1340;align-self:center;padding:0 6px}
.gze-selbar.gze-fx-sel .gze-sel-lbl{display:inline}
.gze-selbar.gze-fx-sel [data-a=smaller],.gze-selbar.gze-fx-sel [data-a=bigger],.gze-selbar.gze-fx-sel [data-a=rotL],.gze-selbar.gze-fx-sel [data-a=rotR]{display:none}
/* Docked in the drawer (host option GZ_HOST.dockSelBar): replaces the tab strip while an item is selected */
.gze-selbar.gze-selbar--dock{position:static;flex:none;align-items:center;gap:3px;padding:5px;border-radius:0;box-shadow:none;background:var(--gze-soft);z-index:auto}
.gze-selbar--dock button{flex:1 1 0;min-width:0;height:44px;padding:0 2px;font-size:16px;background:#fff;border-radius:12px}
.gze-selbar--dock .gze-time-btn{font-size:14px;padding:0 1px}
.gze-selbar--dock .gze-dur,.gze-selbar--dock .gze-sel-lbl{flex:none}
.gze-tray:has(> .gze-selbar.gze-on) > .gze-tabs{display:none}
.gze-trash{position:absolute;left:50%;bottom:6%;transform:translateX(-50%) scale(.8);width:64px;height:64px;border-radius:50%;background:rgba(255,77,77,.85);
  display:none;align-items:center;justify-content:center;font-size:30px;pointer-events:none;transition:transform .12s;z-index:999}
.gze-trash.gze-on{display:flex}
.gze-trash.gze-hot{transform:translateX(-50%) scale(1.25);background:#ff4d4d}
.gze-hint{position:absolute;left:50%;bottom:9%;transform:translateX(-50%);background:#ffd93d;color:#1d1340;padding:8px 16px;border-radius:999px;font-weight:700;
  font-size:clamp(13px,1.6vw,18px);width:max-content;max-width:calc(100% - 16px);text-align:center;box-shadow:0 5px 0 rgba(0,0,0,.18);pointer-events:none;z-index:998;animation:gze-bob 1.2s ease-in-out infinite}
@keyframes gze-bob{50%{transform:translateX(-50%) translateY(-6px)}}

/* Modals */
.gze-modal{position:fixed;inset:0;z-index:2300;background:rgba(20,10,50,.65);display:flex;align-items:center;justify-content:center;padding:16px}
.gze-card{background:#fff;color:var(--gze-ink);border-radius:24px;padding:18px;width:min(560px,100%);max-height:92vh;overflow:auto;box-shadow:0 20px 60px rgba(0,0,0,.4);font-size:16px}
.gze-card h2{margin:0 0 12px;font-size:24px;font-weight:700;color:var(--gze-ink)}
.gze-p{margin:0 0 12px;font-size:17px}
.gze-style-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin-bottom:12px}
.gze-style{height:56px;border-radius:14px;background:var(--gze-soft);display:flex;align-items:center;justify-content:center;overflow:hidden;--gzr-u:4px;padding:0 4px}
.gze-style .gzr-txt{font-size:20px;max-width:100%}
/* Samples stay on one line and fit their tile (long words / CJK used to wrap or get cut) */
.gze-style .gzr-txt,.gze-tile-txt .gzr-txt{white-space:nowrap;overflow-wrap:normal;word-break:keep-all}
.gze-style .gzr-st-ribbon,.gze-tile-txt .gzr-st-ribbon{padding:.4em 1.1em}
.gze-style .gzr-st-sign,.gze-style .gzr-st-neon,.gze-style .gzr-st-caution,.gze-tile-txt .gzr-st-sign,.gze-tile-txt .gzr-st-neon,.gze-tile-txt .gzr-st-caution{padding-left:.6em;padding-right:.6em}
.gze-style .gzr-st-sticky,.gze-tile-txt .gzr-st-sticky{padding:.6em;min-width:0}
.gze-style .gzr-st-meme{font-size:14px}
.gze-style .gzr-st-caution{font-size:11px;border-width:3px;padding-left:.4em;padding-right:.4em}
.gze-style .gzr-st-news{padding:6px 8px;overflow:visible}
/* Text dialog: capped to the viewport; input + Done always visible, only the style list scrolls */
.gze-card.gze-card--text{display:flex;flex-direction:column;max-height:calc(100vh - 24px);overflow:hidden}
.gze-card--text h2,.gze-card--text .gze-input,.gze-card--text .gze-emoji-row,.gze-card--text .gze-card-foot{flex:none}
.gze-card--text .gze-style-row{flex:1 1 auto;min-height:72px;overflow-y:auto;margin:0 -4px 4px;padding:4px;align-content:start}
.gze-card--text .gze-emoji-row{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;gap:4px}
.gze-card--text .gze-emoji-row button{width:38px;height:38px;flex:none;font-size:20px}
.gze-note{margin:8px 2px 0;font-size:14px;font-weight:600;color:var(--gze-muted);line-height:1.35}
.gze-style .gzr-st-speech,.gze-style .gzr-st-thought{font-size:13px}
.gze-style.gze-on{box-shadow:0 0 0 4px var(--gze-pink)}
.gze-input{width:100%;font-size:22px;border:3px solid #8a7bb8;border-radius:16px;padding:10px 12px;resize:none;outline:none;color:var(--gze-ink);background:#fff;user-select:text;-webkit-user-select:text}
.gze-input:focus{border-color:var(--gze-pink);box-shadow:0 0 0 3px #1d1340}
.gze-input.gze-invalid{border-color:var(--gze-red)}
.gze-err{color:var(--gze-red);font-weight:700;min-height:22px;margin-top:6px;font-size:15px}
.gze-emoji-row{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.gze-emoji-row button{width:42px;height:42px;border-radius:12px;background:var(--gze-tile);font-size:22px}
.gze-row{display:flex;gap:10px;justify-content:flex-end;align-items:center;margin-top:8px}
.gze-ok{background:var(--gze-green)}
.gze-cancel{background:#eee}
.gze-x{background:#111;color:#fff !important;text-decoration:none;font-size:16px}
.gze-url-row .gze-url{font-size:15px;flex:1;min-width:0}
.gze-ok:disabled{opacity:.6;cursor:wait}
.gze-share-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin:12px 0 4px}
.gze-share-btn{display:flex;align-items:center;justify-content:center;height:46px;border-radius:14px;font-weight:700;font-size:16px;text-decoration:none;box-shadow:0 4px 0 rgba(0,0,0,.15);color:#fff !important}
.gze-share-wa{background:#25d366;color:#0d3b20 !important}.gze-share-tg{background:#2aabee;color:#0a2a3f !important}.gze-share-fb{background:#1877f2}.gze-share-x{background:#111}
.gze-share-copy{background:#ffd93d !important;color:#1d1340 !important}.gze-share-more{background:#eee !important;color:#1d1340 !important}

/* Show mode: drawer collapses to an exit button */
.gze-exit-show{display:none}
html.gze-showing body{padding-bottom:0 !important}
html.gze-showing .gze-root{display:none}
html.gze-showing .gze-exit-show{display:flex;position:absolute;top:12px;left:12px;z-index:1000;align-items:center;gap:4px;height:44px;padding:0 16px;
  border:0;border-radius:999px;background:rgba(255,255,255,.95);color:#1d1340;font:700 16px 'GZ Fredoka','GZ Rubik',system-ui,sans-serif;cursor:pointer;
  box-shadow:0 5px 0 rgba(0,0,0,.2);direction:ltr}
html.gze-showing .gze-exit-show:hover{background:#ffd93d}
html.gze-showing .gze-show-share{left:auto;right:12px;background:#3ddc84}
html.gze-showing .gze-hint,html.gze-showing .gze-selbar{display:none !important}

@media (max-width:760px){
  :root{--gze-h:350px}
  .gze-root{padding:8px 10px 10px}
  .gze-controls{flex-wrap:wrap}
  .gze-timeline{order:9;flex-basis:100%;height:42px}
  .gze-lbl{display:none}
  .gze-big{height:44px;min-width:44px;font-size:20px;padding:0 8px}
}
/* Short screens (laptops): smaller drawer, no challenge bar, so the video keeps more room */
@media (max-height:760px){
  :root{--gze-h:252px}
  .gze-challenge{display:none}
  .gze-root{gap:6px}
}
@media (max-height:760px) and (max-width:760px){
  :root{--gze-h:290px}
}
/* Settings */
.gze-settings .gze-row-head{margin:4px 0 8px}
.gze-legal{margin:14px 0 0;font-size:13px;line-height:1.5;color:var(--gze-muted);text-align:center}
.gze-legal a{color:#5a2ad0;font-weight:700;text-decoration:underline}
.gze-legal a:focus-visible{outline:2px solid #ffd93d;outline-offset:3px;border-radius:4px;box-shadow:0 0 0 3px #1d1340}
.gze-lang-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin-bottom:14px}
.gze-lang{height:44px;border-radius:14px;background:var(--gze-tile) !important;font-size:16px !important;border:2px solid transparent !important;box-shadow:0 3px 0 rgba(0,0,0,.08)}
.gze-lang:hover{border-color:var(--gze-soft) !important}
.gze-lang.gze-on{background:var(--gze-yellow) !important;border-color:var(--gze-ink) !important}

@media (prefers-reduced-motion:reduce){[class^="gze-"],[class*=" gze-"]{animation:none !important;transition:none !important;scroll-behavior:auto !important}}

/* "I'm feeling lucky" (extension: editor/lucky-layer.js; the website editor has its own layer, web-editor.css). px only: YouTube's html font-size is 10px */
.gze-lucky{background:var(--gze-green)}
.gze-lucky-layer,.gze-lucky-layer *{box-sizing:border-box;font-family:'GZ Fredoka','GZ Rubik',system-ui,sans-serif}
.gze-lucky-layer{--gze-ink:#1d1340;--gze-muted:#6b5f99;position:fixed;inset:0;z-index:2400;display:flex;align-items:flex-start;justify-content:center;padding:16px;overflow-y:auto;background:rgba(20,10,50,.7);font-size:16px;line-height:1.3}
.gze-lucky-card{width:100%;max-width:460px;margin-top:max(16px,5vh);background:#fff;color:var(--gze-ink);border-radius:22px;padding:18px;box-shadow:0 20px 60px rgba(0,0,0,.4);text-align:start}
.gze-lucky-card h2{margin:0 0 6px;font-size:22px;font-weight:700;color:var(--gze-ink)}
.gze-lucky-help{margin:0 0 12px;color:var(--gze-muted);font-size:14px}
.gze-lucky-label{display:block;font-weight:700;font-size:14px;margin:8px 0 4px;padding:0;color:var(--gze-ink)}
.gze-lucky-opt{font-weight:500;color:var(--gze-muted)}
.gze-lucky-input{display:block;width:100%;height:46px;padding:0 12px;border:3px solid #8a7bb8;border-radius:14px;font-size:16px;color:var(--gze-ink);background:#fff;user-select:text;-webkit-user-select:text}
.gze-lucky-input:focus{outline:3px solid #ffd93d;outline-offset:2px;border-color:var(--gze-ink)}
.gze-lucky-input[aria-invalid=true]{border-color:#d11a2a}
.gze-lucky-err{display:block;min-height:16px;color:#d11a2a;font-size:13px;font-weight:600}
.gze-lucky-vibes{border:0;padding:0;margin:4px 0 12px;min-width:0;display:flex;flex-wrap:wrap;gap:8px}
.gze-lucky-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;border:2px solid #e0d8ff;font-weight:700;font-size:15px;color:var(--gze-ink);cursor:pointer}
.gze-lucky-chip:has(input:checked){border-color:var(--gze-ink);background:#ffd93d}
.gze-lucky-chip:has(input:focus-visible){outline:3px solid #1d1340;outline-offset:2px}
.gze-lucky-status{min-height:20px;margin:0 0 6px;color:var(--gze-muted);font-size:14px;font-weight:600}
.gze-lucky-row{display:flex;gap:10px;justify-content:flex-end}
.gze-lucky-btn{height:48px;padding:0 20px;border:0;border-radius:14px;background:#3ddc84;color:#0d3b20;font-size:17px;font-weight:700;cursor:pointer}
.gze-lucky-btn--ghost{background:#f0ebff;color:var(--gze-ink)}
.gze-lucky-btn:disabled{opacity:.6;cursor:default}
.gze-lucky-btn:focus-visible{outline:3px solid #ffd93d;outline-offset:2px;box-shadow:0 0 0 3px #1d1340}
