:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#e8eaf0;--surface:#fff;--text:#171717;--text-muted:#17171773;--border:#505a7838;--accent:#2aabee;--card-shadow:0 2px 8px #00000012;--tile-shadow:0 2px 6px #00000014;--tile-bg-from:#f8f9fb;--tile-bg-to:#f2f4f7;--flashcard-surface:#e9ecf0;--flashcard-shell-top:#edf0f3;--flashcard-shell-bottom:#dfe3e8;--flashcard-shadow:#0e121a2e;font-family:Segoe UI,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#101216;--surface:#1a1f27;--text:#f2f3f5;--text-muted:#f2f3f573;--border:#fff3;--accent:#38bdf8;--card-shadow:0 2px 8px #00000047;--tile-shadow:0 2px 6px #0000004d;--tile-bg-from:#282c34;--tile-bg-to:#191d25;--flashcard-surface:#31353d;--flashcard-shell-top:#3c4147;--flashcard-shell-bottom:#171b22;--flashcard-shadow:#0000007a}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}:focus,:focus-visible{box-shadow:none!important;outline:none!important}html,body,#root{overscroll-behavior-y:none;-webkit-text-size-adjust:100%;min-height:100%;margin:0;overflow-x:hidden}body{background:var(--bg);color:var(--text);touch-action:pan-y}.page{max-width:760px;margin:0 auto;padding:20px 16px}.page.decks-page-shell{flex-direction:column;height:100dvh;max-height:100dvh;display:flex;overflow:hidden}.topbar{touch-action:none;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.topbar-actions{align-items:center;gap:8px;display:inline-flex;position:relative}.title{margin:0;font-size:1.55rem}.back-to-decks-btn{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:.98rem;font-weight:700;text-decoration:none;display:inline-flex}.back-to-decks-btn:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.content{touch-action:pan-y;overscroll-behavior-y:auto;gap:12px;margin-top:14px;display:grid}.decks-page-shell .topbar,.decks-page-shell .content{flex-shrink:0}.decks-page-shell .content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.sync-debug-clear{appearance:none;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:8px;padding:5px 8px;font-size:.85rem}.sync-debug-list{gap:4px;max-height:190px;margin-top:8px;display:grid;overflow:auto}.sync-debug-line{gap:8px;margin:0;font-size:.82rem;line-height:1.3;display:flex}.sync-debug-time{opacity:.65;min-width:58px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--card-shadow);border-radius:16px;padding:12px}.stack{gap:10px;display:grid}.row{flex-wrap:wrap;gap:10px;display:flex}.btn{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:10px 14px;font-size:1rem}.btn-danger{background:#c0392b}.muted{opacity:.75;margin:0}.blocked-access-card{max-width:680px}.deck-tile{--deck-title-font-size:1.02em;--deck-text-secondary:color-mix(in srgb, var(--text) 66%, transparent);--deck-text-meta:color-mix(in srgb, var(--text) 46%, transparent);--deck-progress-rail-width:8px;--deck-progress-rail-curve-width:17px;--deck-progress-rail-fill-start:#8797a4;--deck-progress-rail-fill-end:#65737f;text-align:left;background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 86%, #2b3440 14%), color-mix(in srgb, var(--surface) 88%, #0d1117 12%));width:100%;color:var(--text);padding:12px 12px 12px calc(var(--deck-progress-rail-width) + 12px);box-shadow:0 0 0 1px color-mix(in srgb, var(--deck-progress-solid,var(--text)) 30%, var(--border)), 0 16px 30px #00000057, 0 3px 0 #0003, inset 0 1px 0 #ffffff1a;border:none;border-radius:14px;gap:8px;transition:box-shadow .18s;display:grid;position:relative;overflow:hidden}.deck-tile-progress-rail{z-index:0;width:var(--deck-progress-rail-curve-width);color:inherit;cursor:pointer;appearance:none;background:0 0;border:0;padding:0;position:absolute;inset:0 auto 0 0;overflow:hidden}.deck-tile-progress-rail:after{content:"";width:var(--deck-progress-rail-curve-width);pointer-events:none;opacity:0;background:linear-gradient(90deg, color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 58%, transparent) 0, color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 30%, transparent) 48%, transparent 100%);filter:saturate(1.12);position:absolute;inset:0 auto 0 0;transform:translateY(16%)}.deck-tile-progress-rail:focus-visible{outline:2px solid color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 58%, transparent);outline-offset:-3px}.deck-tile-progress-rail-svg{width:100%;height:100%;display:block}.deck-tile-progress-rail-track{fill:color-mix(in srgb, #a8b7c4 10%, var(--surface) 90%)}.deck-tile-progress-rail-fill{transform-box:fill-box;transform-origin:bottom;transition:y .5s cubic-bezier(.22,.9,.36,1),height .5s cubic-bezier(.22,.9,.36,1)}.deck-tile-progress-rail.progress-recognized:after{animation:1.8s ease-out deck-progress-rail-recognition}.deck-tile-progress-rail.progress-recognized .deck-tile-progress-rail-fill{animation:1.8s ease-out deck-progress-fill-recognition}.deck-tile-progress-rail-edge{fill:none;stroke:#c5d4e02e;stroke-width:1px;vector-effect:non-scaling-stroke}.deck-tile-progress-rail-label{top:50%;left:calc(var(--deck-progress-rail-width) / 2);z-index:3;color:#f5faffeb;letter-spacing:0;font-variant-numeric:tabular-nums;text-align:center;text-shadow:0 1px 2px #000c;opacity:0;pointer-events:none;transform-origin:50%;white-space:nowrap;background:#070a0e85;border-radius:999px;min-width:34px;padding:3px 6px;font-size:.7rem;font-weight:800;line-height:1;transition:opacity .14s;position:absolute;transform:translate(-50%,-50%)rotate(-90deg)}.deck-tile-progress-rail.labels-visible .deck-tile-progress-rail-label{opacity:1}.deck-tile-header,.deck-tile-progress-action{z-index:1;position:relative}@keyframes deck-progress-rail-recognition{0%{opacity:0;transform:translateY(18%)}16%{opacity:.95}54%{opacity:.66;transform:translateY(0)}to{opacity:0;transform:translateY(-4%)}}@keyframes deck-progress-fill-recognition{0%{filter:none;transform:scaleY(var(--deck-progress-recognition-from-scale,1))}18%{filter:brightness(1.22) saturate(1.18) drop-shadow(0 0 11px color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 58%, transparent));transform:scaleY(1)}58%{filter:drop-shadow(0 0 9px color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 46%, transparent));transform:scaleY(1)}to{filter:none;transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){.deck-tile-progress-rail.progress-recognized:after,.deck-tile-progress-rail.progress-recognized .deck-tile-progress-rail-fill{animation:none}}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.deck-tile.skeleton{pointer-events:none;min-height:90px}.skeleton-line{background:linear-gradient(90deg, var(--border) 25%, color-mix(in srgb, var(--border) 50%, var(--surface)) 50%, var(--border) 75%);background-size:200% 100%;border-radius:6px;animation:1.4s ease-in-out infinite skeleton-shimmer}.skeleton-line-title{width:60%;height:18px}.skeleton-line-short{width:35%;height:13px;margin-top:4px}.deck-tile:hover{box-shadow:0 0 0 1px color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 52%, var(--border)), 0 18px 34px #0000006b, 0 3px 0 #0003, inset 0 1px 0 #ffffff24}.deck-tile-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.deck-tile-heading{flex:1;gap:4px;min-width:0;display:grid}.deck-tile-title-row{justify-content:space-between;align-items:center;gap:7px;min-width:0;display:flex}.deck-tile-title-main{flex:1;align-items:center;gap:7px;min-width:0;display:flex}.deck-tile-title-icon{color:color-mix(in srgb, #f4b740 72%, var(--text));flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.deck-tile-title-icon svg{width:1em;height:1em;font-size:var(--deck-title-font-size)}.deck-tile-pin-btn{border:1px solid color-mix(in srgb, var(--border) 70%, transparent);background:color-mix(in srgb, var(--text) 4%, transparent);width:24px;height:24px;color:color-mix(in srgb, var(--text) 42%, transparent);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .15s,border-color .15s,color .15s,transform .15s;display:inline-flex}.deck-tile-pin-btn svg{width:14px;height:14px}.deck-tile-pin-btn:hover{color:var(--text);border-color:color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 38%, var(--border));background:color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 8%, transparent)}.deck-tile-pin-btn.pinned{color:#f6c862;border-color:color-mix(in srgb, #f6c862 54%, var(--border));background:linear-gradient(180deg, #f6c86224, #f08c0017), color-mix(in srgb, var(--surface) 82%, #000 18%);box-shadow:0 0 14px #f6c86224,inset 0 1px #ffffff1a}.deck-tile-pin-btn.pinned:hover{transform:translateY(-1px)}.deck-tile-status{min-width:0;color:var(--deck-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;line-height:1.3;overflow:hidden}.deck-tile-status.downloading{white-space:normal;text-overflow:unset;max-width:min(100%,32ch);overflow:visible}.deck-tile-status.ready{color:var(--deck-text-secondary)}.deck-tile-status.downloading{color:color-mix(in srgb, var(--accent) 70%, var(--text) 30%)}.deck-tile-status.stale{color:color-mix(in srgb, #f08c00 78%, var(--text) 22%)}.deck-tile-status.error{color:color-mix(in srgb, #e5484d 84%, var(--text) 16%)}.deck-tile h3{color:var(--text);font-size:var(--deck-title-font-size);text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.01em;flex:1;min-width:0;margin:0;font-weight:700;line-height:1.15;overflow:hidden}.deck-tile-header-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.deck-tile-header-actions:empty{display:none}.deck-tile-menu-btn{border:1px solid color-mix(in srgb, var(--border) 36%, transparent);background:color-mix(in srgb, var(--text) 2%, transparent);width:24px;height:24px;color:color-mix(in srgb, var(--text) 34%, transparent);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.deck-tile-menu-btn:hover{color:color-mix(in srgb, var(--text) 72%, transparent);border-color:color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 24%, var(--border));background:color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 4%, transparent)}.deck-tile-menu-btn:disabled{opacity:.3;cursor:default;pointer-events:none}.deck-tile-menu-btn svg{width:15px;height:15px}.deck-tile-progress-action{grid-template-columns:minmax(0,1fr) 36px;align-items:stretch;gap:8px;display:grid}.deck-tile-progress-meter{border:1px solid color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 22%, var(--border));background:color-mix(in srgb, var(--text) 5%, transparent);border-radius:12px;min-height:36px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0d,0 2px 6px #00000014}.deck-tile-progress-meter-fill{background:color-mix(in srgb, var(--deck-progress-solid,#63b8ea) 76%, var(--surface) 24%);opacity:.62;border-radius:11px;transition:width .5s cubic-bezier(.22,.9,.36,1);position:absolute;inset:0 auto 0 0}.deck-tile-progress-meter-fill:after{content:none}.deck-tile-progress-meter-content{z-index:1;justify-content:space-between;align-items:center;gap:12px;min-height:36px;padding:0 12px;display:flex;position:relative}.deck-tile-progress-meter-value{color:color-mix(in srgb, #fff 72%, var(--deck-progress-solid,#8fd7ad) 28%);font-variant-numeric:tabular-nums;opacity:.82;white-space:nowrap;align-items:baseline;gap:4px;margin-left:auto;font-size:.72rem;font-weight:600;display:inline-flex}.deck-tile-progress-meter-label{color:color-mix(in srgb, #fff 42%, var(--deck-progress-solid,#8fd7ad) 58%);font-weight:560}.deck-tile-progress-meter-count{color:inherit}.deck-tile-btn-icon{flex-shrink:0;width:18px;height:18px}.deck-group-title{margin:0;font-size:1rem;font-weight:700}.decks-toolbar{flex-shrink:0;align-items:center;gap:8px;display:flex}.decks-page{background:color-mix(in srgb, var(--bg) 94%, #000 6%);touch-action:none;overscroll-behavior-y:contain;flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}:root[data-theme=dark] .decks-page{background:color-mix(in srgb, var(--bg) 62%, #05070a 38%)}:root[data-theme=dark] .deck-tile{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 80%, #323942 20%) 0%, color-mix(in srgb, var(--surface) 84%, #12161c 16%) 100%);box-shadow:0 0 0 1px color-mix(in srgb, #9aadbd 36%, var(--deck-progress-solid,var(--accent)) 18%), 0 18px 34px #0000006b, 0 4px 0 #0003, inset 0 1px 0 #ffffff18}:root[data-theme=dark] .deck-tile:hover{box-shadow:0 0 0 1px color-mix(in srgb, #afc2cf 42%, var(--deck-progress-solid,var(--accent)) 22%), 0 20px 38px #0000007a, 0 4px 0 #00000038, inset 0 1px 0 #ffffff1f}.decks-list-scroll{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;flex:1;min-height:0;margin:-3px -2px -8px;padding:3px 2px 8px;overflow:hidden auto}.decks-list-content{padding-bottom:max(4px, env(safe-area-inset-bottom));gap:18px}.decks-search-wrap{flex:1;align-items:center;min-width:0;display:flex;position:relative}.decks-search-icon{width:16px;height:16px;color:color-mix(in srgb, var(--text) 42%, transparent);pointer-events:none;position:absolute;left:12px}.decks-search-input{appearance:none;border:1px solid var(--border);background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 8%, transparent), color-mix(in srgb, var(--text) 3%, transparent)), var(--surface);width:100%;min-height:36px;color:var(--text);border-radius:10px;outline:none;padding:0 12px 0 36px;font-size:.9rem;font-weight:650;transition:border-color .15s,box-shadow .15s,background .15s}.decks-search-input::placeholder{color:color-mix(in srgb, var(--text) 42%, transparent);font-weight:650}.decks-search-input:focus{border-color:color-mix(in srgb, var(--accent) 70%, var(--border));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 15%, transparent);background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 12%, transparent), color-mix(in srgb, var(--text) 4%, transparent)), var(--surface)}.decks-search-input::-webkit-search-cancel-button{-webkit-appearance:none;background:color-mix(in srgb, var(--text) 42%, transparent);cursor:pointer;border-radius:50%;width:14px;height:14px;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2 2l12 12M14 2L2 14' stroke='%23fff' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2 2l12 12M14 2L2 14' stroke='%23fff' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.deck-icon-btn{border:1px solid var(--border);background:var(--surface);width:36px;height:36px;color:color-mix(in srgb, var(--text) 72%, transparent);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;padding:0;transition:border-color .15s,color .15s;display:flex}.deck-icon-btn svg{width:18px;height:18px}.deck-icon-btn:disabled{opacity:.4;cursor:default}.deck-icon-btn.active{border-color:var(--accent);color:var(--accent)}@keyframes deck-spin{to{transform:rotate(360deg)}}.deck-icon-btn svg.spinning,.deck-sort-option-icon.spinning{animation:.8s linear infinite deck-spin}.deck-sort-wrap{position:relative}.deck-sort-dropdown{z-index:10;background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;min-width:210px;display:flex;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 4px 16px #00000024}.deck-sort-option{color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;padding:10px 14px;font-size:.9rem;transition:background .12s}.deck-sort-option:hover{background:color-mix(in srgb, var(--border) 35%, transparent)}.deck-sort-option:disabled{color:color-mix(in srgb, var(--text) 48%, transparent);cursor:default}.deck-sort-option:disabled:hover{background:0 0}.deck-sort-option.active{color:var(--accent);font-weight:600}.deck-sort-option{justify-content:space-between;align-items:center;gap:8px;display:flex}.deck-sort-option-content{align-items:center;gap:10px;min-width:0;display:inline-flex}.deck-sort-dir{opacity:.8;font-size:.85rem}.deck-sort-option-icon{opacity:.82;flex-shrink:0;width:16px;height:16px}.deck-sort-section-label{border-top:1px solid color-mix(in srgb, var(--border) 72%, transparent);color:color-mix(in srgb, var(--text) 48%, transparent);letter-spacing:.04em;text-transform:uppercase;margin-top:4px;padding:8px 14px 6px;font-size:.72rem;font-weight:700}.deck-catalog-btn{border:1px dashed var(--border);color:var(--text);cursor:pointer;text-align:center;opacity:.7;background:0 0;border-radius:10px;width:100%;padding:10px 14px;font-size:.88rem;transition:opacity .15s,border-color .15s}.deck-catalog-btn:hover{opacity:1;border-color:color-mix(in srgb, var(--accent) 50%, var(--border))}.deck-catalog-title{margin:0;font-size:1.05rem;font-weight:700}.deck-catalog-search-wrap{align-items:center;display:flex;position:relative}.deck-catalog-search-icon{width:15px;height:15px;color:color-mix(in srgb, var(--text) 45%, transparent);pointer-events:none;flex-shrink:0;position:absolute;left:11px}.deck-catalog-search{appearance:none;background:color-mix(in srgb, var(--text) 5%, var(--surface));border:1px solid var(--border);width:100%;color:var(--text);border-radius:10px;outline:none;padding:8px 12px 8px 34px;font-size:.9rem;transition:border-color .15s,box-shadow .15s}.deck-catalog-search::placeholder{color:color-mix(in srgb, var(--text) 40%, transparent)}.deck-catalog-search:focus{border-color:color-mix(in srgb, var(--accent) 70%, var(--border));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 15%, transparent)}.deck-catalog-search::-webkit-search-cancel-button{-webkit-appearance:none;background:color-mix(in srgb, var(--text) 35%, transparent);cursor:pointer;border-radius:50%;width:14px;height:14px;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2 2l12 12M14 2L2 14' stroke='%23fff' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2 2l12 12M14 2L2 14' stroke='%23fff' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.deck-catalog-tile{--fill-pct:0%;border:1px solid var(--border);background:linear-gradient(to right, color-mix(in srgb, var(--accent) 18%, var(--surface)) var(--fill-pct), var(--surface) var(--fill-pct));border-radius:12px;align-items:center;gap:10px;padding:12px 14px;transition:background .3s,border-color .2s;display:flex}.deck-catalog-tile.downloading{border-color:color-mix(in srgb, var(--accent) 50%, var(--border))}.deck-catalog-tile.done{border-color:color-mix(in srgb, var(--accent) 50%, var(--border));background:color-mix(in srgb, var(--accent) 12%, var(--surface))}.deck-catalog-tile-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.deck-catalog-tile-name{white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:600;overflow:hidden}.deck-catalog-tile-count{font-size:.8rem}.deck-catalog-tile-action{flex-shrink:0}.deck-catalog-dl-btn{padding:6px 12px;font-size:.85rem}.deck-catalog-progress{text-align:right;flex-direction:column;gap:1px;font-size:.8rem;display:flex}.deck-catalog-done{font-size:.85rem}@keyframes decks-list-in{0%{opacity:0}to{opacity:1}}.decks-list-animated{animation:.2s forwards decks-list-in}.deck-tags-row{flex-wrap:wrap;gap:6px;display:flex}.deck-tag{border:1px solid color-mix(in srgb, var(--border) 75%, transparent);opacity:.88;border-radius:999px;padding:3px 8px;font-size:.72rem}.create-deck-panel{border-top:1px solid color-mix(in srgb, var(--border) 65%, transparent);padding-top:8px}.deck-create-label{opacity:.86;font-size:.82rem}.deck-create-input,.deck-create-select{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 94%, var(--bg) 6%);width:100%;min-height:38px;color:var(--text);border-radius:10px;padding:8px 10px;font-size:.94rem}.deck-words-page{touch-action:pan-y}.deck-words-header{gap:3px;display:grid}.deck-words-title{margin:0;font-size:1rem;font-weight:700}.deck-words-search-row{align-items:center;gap:6px;display:flex}.deck-words-search{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 94%, var(--bg) 6%);min-width:0;min-height:36px;color:var(--text);border-radius:10px;flex:1;padding:8px 10px;font-size:.95rem}.deck-words-star-filter-btn{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 94%, var(--bg) 6%);color:var(--text);cursor:pointer;opacity:.65;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;padding:0;transition:opacity .15s,border-color .15s,color .15s;display:flex}.deck-words-star-filter-btn.active{color:#f5c518;border-color:color-mix(in srgb, #f5c518 50%, var(--border));opacity:1}.deck-words-bulk-btn{border:1px solid var(--border);width:100%;min-height:34px;color:var(--text);cursor:pointer;opacity:.75;background:0 0;border-radius:10px;font-size:.88rem;transition:opacity .15s}.deck-words-bulk-btn:disabled{opacity:.4;cursor:default}@media (hover:none) and (pointer:coarse){.deck-words-search,.decks-search-input,.deck-create-input,.deck-create-select,.user-menu-inline-input,.user-menu-input{font-size:16px}}.deck-words-list-scroll{touch-action:pan-y;overscroll-behavior-y:contain;max-height:min(68vh,100dvh - 245px);padding-right:2px;overflow:hidden auto}.deck-words-sentinel{width:100%;height:2px}.deck-tile-learn-btn{aspect-ratio:1;width:38px;min-width:0;height:36px;min-height:0;color:color-mix(in srgb, #fff 92%, var(--deck-progress-solid,var(--accent)) 8%);letter-spacing:.01em;background:#ffffff0a;border:1px solid #ffffff7a;border-radius:10px;justify-content:center;align-items:center;padding:0;font-size:.92rem;font-weight:850;transition:color .15s,transform .15s,opacity .15s,filter .15s;display:flex;box-shadow:inset 0 1px #ffffff1f}.deck-tile-learn-btn:hover:not(:disabled){color:#fff;filter:drop-shadow(0 0 10px color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 42%, transparent));background:#ffffff14;border-color:#ffffffb3;transform:translate(2px)scale(1.06)}.deck-tile-learn-btn:active:not(:disabled){transform:translate(1px)scale(.98)}.deck-tile-learn-btn:disabled{opacity:.3;cursor:default}.deck-tile-learn-btn .deck-tile-btn-icon{width:26px;height:26px;filter:drop-shadow(0 1px 2px #00000073) drop-shadow(0 0 10px color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 22%, transparent))}@media (width<=430px){.deck-tile-learn-btn{width:36px;height:36px}}.deck-tile-study-chips{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.deck-tile-progress-meter-chips{flex:auto;align-items:center;min-width:0;display:flex;overflow:hidden}.deck-tile-study-summary{min-width:0;max-width:100%;color:color-mix(in srgb, #fff 54%, var(--deck-progress-solid,var(--accent)) 46%);opacity:.9;text-overflow:ellipsis;text-shadow:0 1px 1px #00000057;white-space:nowrap;padding:0 2px;font-size:.72rem;font-weight:600;line-height:1;display:inline-block;overflow:hidden}.deck-tile-study-chip{border:1px solid color-mix(in srgb, var(--border) 70%, transparent);max-width:100%;min-height:24px;color:color-mix(in srgb, var(--text) 62%, transparent);background:color-mix(in srgb, var(--text) 4%, transparent);white-space:nowrap;border-radius:999px;align-items:center;padding:0 8px;font-size:.73rem;font-weight:700;line-height:1;display:inline-flex}.deck-tile-study-chip.today,.deck-tile-study-chip.done{color:color-mix(in srgb, #4caf7d 78%, var(--text) 22%);border-color:color-mix(in srgb, #4caf7d 32%, var(--border));background:#4caf7d17}.deck-tile-study-chip.due{color:color-mix(in srgb, #f08c00 82%, var(--text) 18%);border-color:color-mix(in srgb, #f08c00 32%, var(--border));background:#f08c0017}.deck-tile-study-chip.new{color:color-mix(in srgb, var(--accent) 72%, var(--text) 28%);border-color:color-mix(in srgb, var(--accent) 28%, var(--border));background:color-mix(in srgb, var(--accent) 8%, transparent)}:root:not([data-theme=dark]) .deck-tile{box-shadow:0 0 0 1.5px color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 32%, #8aa0b5), 0 12px 26px #23334821, inset 0 1px 0 #ffffffe6;background:linear-gradient(#fbfdff 0%,#f2f7fb 100%)}:root:not([data-theme=dark]) .deck-tile:hover{box-shadow:0 0 0 1.5px color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 48%, #6f879f), 0 14px 30px #23334829, inset 0 1px 0 #fffffff2}:root:not([data-theme=dark]) .deck-tile{--deck-progress-rail-fill-start:#e1e7ed;--deck-progress-rail-fill-end:#d0d8e0}:root:not([data-theme=dark]) .deck-tile-progress-rail-track{fill:#f8fafc}:root:not([data-theme=dark]) .deck-tile-progress-rail-edge{stroke:#526f871f}:root:not([data-theme=dark]) .deck-tile-progress-rail-label{color:#16202be0;text-shadow:0 1px #ffffff8c;background:#ffffffb8}:root:not([data-theme=dark]) .deck-tile h3{color:#141820}:root:not([data-theme=dark]) .deck-tile-menu-btn{color:#14182061;background:#ffffff47;border-color:#7e91a533}:root:not([data-theme=dark]) .deck-tile-menu-btn:hover{color:#141820ad;border-color:color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 22%, #a9b6c2);background:#ffffff80}:root:not([data-theme=dark]) .deck-tile-progress-meter{border-color:color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 30%, #9eb0c0);background:#eef4f8;box-shadow:inset 0 1px #ffffffb8,0 1px 3px #3e56701a}:root:not([data-theme=dark]) .deck-tile-progress-meter-fill{background:color-mix(in srgb, var(--deck-progress-solid,#63b8ea) 54%, #fff 46%);opacity:.76}:root:not([data-theme=dark]) .deck-tile-progress-meter-fill:after{content:none}:root:not([data-theme=dark]) .deck-tile-progress-meter-value{color:#233142a8;opacity:1;text-shadow:none}:root:not([data-theme=dark]) .deck-tile-progress-meter-label{color:#2331426b}:root:not([data-theme=dark]) .deck-tile-study-summary{color:#2331427a;opacity:1;text-shadow:0 1px #ffffff5c}:root:not([data-theme=dark]) .deck-tile-learn-btn{color:#4b5a66;background:linear-gradient(#fffffff0,#eff4f9e0);border-color:#7e91a547;box-shadow:0 4px 12px #2e40561c,inset 0 1px #fffffff2}:root:not([data-theme=dark]) .deck-tile-learn-btn:hover:not(:disabled){color:color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 54%, #243040);border-color:color-mix(in srgb, var(--deck-progress-solid,var(--accent)) 42%, #90a2b3);background:linear-gradient(#fffffffa,#e8f1f8f0)}:root:not([data-theme=dark]) .deck-tile-learn-btn .deck-tile-btn-icon{filter:drop-shadow(0 1px 1px #ffffffb8)drop-shadow(0 2px 4px #3143582e)}.deck-tile-context-menu{background:var(--surface);border:1px solid var(--border);z-index:100;border-radius:12px;min-width:210px;max-width:calc(100vw - 16px);padding:4px;position:fixed;box-shadow:0 4px 20px #0000002e}.deck-tile-context-menu-item{cursor:pointer;text-align:left;width:100%;color:var(--text);white-space:nowrap;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:.9rem;display:flex}.deck-tile-context-menu-count{color:var(--deck-text-meta,color-mix(in srgb, var(--text) 46%, transparent));font-variant-numeric:tabular-nums;margin-left:auto;font-size:.82em;font-weight:600}.deck-tile-context-menu-item.danger{color:#e5484d}.deck-tile-context-menu-item.danger:hover{background:#e5484d1a}.deck-tile-context-menu-item:disabled{opacity:.4;cursor:default}.deck-offline-icon-btn{width:32px;height:32px;color:color-mix(in srgb, var(--text) 62%, transparent);cursor:pointer;background:0 0;border:none;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.deck-offline-icon-btn.ready{color:color-mix(in srgb, var(--text) 58%, transparent)}.deck-offline-icon-btn.downloading{color:var(--accent)}.deck-offline-icon-btn.stale{color:#f08c00}.deck-offline-icon-btn.error{color:#e5484d}.deck-offline-icon-btn:disabled{opacity:.55;cursor:default}.deck-offline-icon-svg{width:20px;height:20px;display:block}.deck-offline-icon-svg.connecting{animation:1.1s linear infinite deck-spin}.deck-offline-icon-track,.deck-offline-icon-progress{fill:none;stroke-width:2px}.deck-offline-icon-track{stroke:color-mix(in srgb, var(--border) 80%, transparent);opacity:1}.deck-offline-icon-progress{stroke:currentColor;stroke-linecap:round;transform-origin:50%;transition:stroke-dashoffset .16s linear;transform:rotate(-90deg)}.deck-offline-icon-mark{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.deck-offline-icon-mark-dot{fill:currentColor;stroke:none}.deck-offline-icon-stop{fill:currentColor}.deck-storage-diagnostics{margin-top:-2px;margin-bottom:2px;font-size:.8rem}.deck-offline-diagnostics{gap:4px;margin-top:6px;display:grid}.deck-offline-diagnostics-line{margin:0;font-size:.78rem}.deck-offline-diagnostics-error{color:#e5484d;word-break:break-word;margin:0;font-size:.78rem}.deck-word-list{gap:8px;display:grid}.deck-word-item{border:1px solid color-mix(in srgb, var(--border) 78%, transparent);background:color-mix(in srgb, var(--surface) 96%, var(--bg) 4%);border-radius:10px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 8px;display:grid}.deck-word-image-wrap{background:color-mix(in srgb, var(--surface) 88%, var(--bg) 12%);border-radius:8px;width:48px;height:48px;overflow:hidden}.deck-word-image{object-fit:cover;width:100%;height:100%;display:block}.deck-word-image-fallback{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 25%, transparent), color-mix(in srgb, var(--surface) 88%, #000 12%));width:100%;height:100%}.deck-word-content{gap:3px;min-width:0;display:grid}.deck-word-value{overflow-wrap:anywhere;margin:0;font-size:.95rem;font-weight:700;line-height:1.18}.deck-word-translation{opacity:.7;overflow-wrap:anywhere;margin:0;font-size:.8rem}.deck-word-fsrs{align-items:center;gap:6px;margin-top:2px;display:flex}.deck-word-fsrs-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:4px;padding:1px 6px;font-size:.7rem;font-weight:600}.deck-word-fsrs-badge--new{background:color-mix(in srgb, var(--hint-color,#8e8e93) 18%, transparent);color:var(--hint-color,#8e8e93)}.deck-word-fsrs-badge--learning{color:#d97706;background:#f59e0b2e}.deck-word-fsrs-badge--review{color:#16a34a;background:#22c55e2e}.deck-word-fsrs-badge--relearning{color:#dc2626;background:#ef44442e}.deck-word-fsrs-due{opacity:.65;font-size:.72rem}.deck-word-actions{flex-direction:row;flex-shrink:0;align-items:center;gap:6px;display:flex}.deck-word-audio-btn{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--border));color:var(--text);cursor:pointer;background:0 0;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}.deck-word-audio-btn.playing{background:color-mix(in srgb, var(--accent) 24%, transparent);color:#fff;border-color:color-mix(in srgb, var(--accent) 80%, var(--border))}.deck-word-star-btn{border:1px solid color-mix(in srgb, var(--border) 60%, transparent);color:var(--text);cursor:pointer;opacity:.65;background:0 0;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}.deck-word-star-btn.starred{color:#f5c518;border-color:color-mix(in srgb, #f5c518 50%, var(--border));opacity:1}.deck-word-reset-btn{border:1px solid color-mix(in srgb, var(--border) 60%, transparent);color:var(--text);cursor:pointer;opacity:.55;background:0 0;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}.deck-word-reset-btn:hover{opacity:1;color:#f97316;border-color:#f97316}.deck-word-edit-btn{border:1px solid color-mix(in srgb, var(--border) 60%, transparent);color:var(--text);cursor:pointer;opacity:.65;background:0 0;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}.deck-word-edit-btn:hover{opacity:1;border-color:var(--accent);color:var(--accent)}.learning-screen{touch-action:manipulation;overscroll-behavior-y:contain}.learn-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.learn-header p{margin:0;font-size:.95rem;font-weight:600}.learn-summary{background:0 0;border:0;border-radius:0;gap:7px;padding:0 2px 2px;display:grid}.learn-summary-header{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex;position:relative}.learn-summary-deck{text-align:center;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;margin:0;font-size:.98rem;font-weight:800;line-height:1.15;overflow:hidden}.learn-summary-strip{justify-content:center;align-items:center;gap:9px;min-width:0;padding:0 2px 2px;display:flex;position:relative}.learn-summary-stats{grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:5px;display:grid}.learn-summary-stats-wrap{gap:5px;min-width:0;display:grid;position:relative}.learn-summary-strip .learn-summary-stats{gap:9px;display:flex}.learn-summary-strip .learn-summary-stats-wrap{position:static}.learn-summary-strip .learn-session-progress,.learn-summary-strip .learn-pill{min-width:54px}.learn-summary-strip .learn-stats-popup{width:min(340px,100vw - 32px);left:50%;right:auto;transform:translate(-50%)}.learn-summary-strip .learn-session-progress-wrap{position:static}.learn-session-progress-wrap{flex-shrink:0;position:relative}.learn-session-progress{appearance:none;color:#435365;white-space:nowrap;cursor:pointer;background:color-mix(in srgb, #8b9bae 12%, var(--surface));-webkit-tap-highlight-color:transparent;font-variant-numeric:tabular-nums;border:1px solid #8b9bae8c;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;gap:2px;min-height:28px;padding:0 10px;font-family:inherit;font-size:.9rem;font-weight:800;display:flex}:root[data-theme=dark] .learn-session-progress{color:#e8f1fb}.learn-session-progress:hover{filter:brightness(1.04)}.learn-session-progress:focus-visible,.learn-session-progress[aria-expanded=true]{box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 24%, transparent);outline:none}.learn-session-done{font-size:inherit;font-weight:inherit;color:currentColor}.learn-session-sep{opacity:.58}.learn-session-total{opacity:.78}.learn-pill{appearance:none;border:1px solid var(--border);white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px;justify-content:center;align-items:center;gap:5px;min-width:0;min-height:28px;margin:0;padding:0 10px;font-family:inherit;font-size:.85rem;font-weight:700;display:inline-flex}.learn-pill:hover{filter:brightness(1.04)}.learn-pill:focus-visible,.learn-pill[aria-expanded=true]{box-shadow:0 0 0 2px color-mix(in srgb, currentColor 28%, transparent);outline:none}.learn-pill.new{background:color-mix(in srgb, #1ba65a 10%, var(--surface));color:#126d39;border-color:#1ba65a8c;animation:.56s cubic-bezier(.22,.88,.34,1) pill-bump-known}:root[data-theme=dark] .learn-pill.new{color:#9fe7bf}.learn-pill.learning{background:color-mix(in srgb, #d97706 10%, var(--surface));color:#92510a;border-color:#d977068c;animation:.56s cubic-bezier(.22,.88,.34,1) pill-bump-unknown}:root[data-theme=dark] .learn-pill.learning{color:#fbbf6e}.learn-pill.review{background:color-mix(in srgb, #5b7ec9 10%, var(--surface));color:#2f4d96;border-color:#5b7ec98c}:root[data-theme=dark] .learn-pill.review{color:#93b4f0}.learn-pill.known{background:color-mix(in srgb, #1ba65a 10%, var(--surface));color:#126d39;border-color:#1ba65a8c}:root[data-theme=dark] .learn-pill.known{color:#9fe7bf}.learn-pill.unknown{background:color-mix(in srgb, #de4c4c 10%, var(--surface));color:#912525;border-color:#de4c4c8c}:root[data-theme=dark] .learn-pill.unknown{color:#ffc3c3}.learn-pill-icon{flex-shrink:0;width:13px;height:13px}.learn-pill-count{font-variant-numeric:tabular-nums;font-size:.9rem;font-weight:800;line-height:1}.learn-stats-popup{z-index:18;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;gap:8px;max-height:min(360px,100dvh - 220px);padding:10px;display:grid;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 28px #0000003d}.learn-stats-popup.new{border-color:color-mix(in srgb, #1ba65a 35%, var(--border));background:color-mix(in srgb, #1ba65a 9%, var(--surface))}.learn-stats-popup.learning{border-color:color-mix(in srgb, #d97706 35%, var(--border));background:color-mix(in srgb, #d97706 9%, var(--surface))}.learn-stats-popup.review{border-color:color-mix(in srgb, #5b7ec9 35%, var(--border));background:color-mix(in srgb, #5b7ec9 9%, var(--surface))}.learn-stats-popup.session{border-color:color-mix(in srgb, var(--accent) 35%, var(--border));background:color-mix(in srgb, var(--accent) 8%, var(--surface));width:min(340px,100vw - 32px);left:50%;right:auto;transform:translate(-50%)}.learn-stats-popup-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.learn-stats-popup-title{margin:0;font-weight:800}.learn-stats-popup-session{border:1px solid color-mix(in srgb, var(--border) 82%, transparent);color:var(--text-muted);border-radius:999px;flex-shrink:0;padding:2px 7px;font-size:.78rem;font-weight:700;line-height:1.2}.learn-stats-popup-description{color:var(--text-muted);margin:0;font-size:.86rem;line-height:1.35}.learn-stats-popup-list{gap:6px;display:grid}.learn-stats-popup-row{border-top:1px solid color-mix(in srgb, var(--border) 70%, transparent);justify-content:space-between;align-items:baseline;gap:12px;padding-top:6px;font-size:.9rem;display:flex}.learn-stats-popup-row span{color:var(--text-muted)}.learn-stats-popup-row strong{color:var(--text);font-variant-numeric:tabular-nums}.flashcard{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--border) 88%, #ffffff26);background:linear-gradient(164deg, var(--flashcard-shell-top) 0%, var(--flashcard-surface) 64%, var(--flashcard-shell-bottom) 100%);text-align:center;-webkit-user-select:none;user-select:none;touch-action:none;width:100%;box-shadow:0 18px 30px var(--flashcard-shadow), inset 0 1px 0 #fff3, inset 0 -12px 20px #0000001a;will-change:transform;z-index:2;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;margin-top:0;padding:22px 16px 94px;transition:transform .22s cubic-bezier(.22,.92,.32,1),background-color .22s,box-shadow .22s,opacity .22s;display:flex;position:relative;overflow:hidden}.learn-card-actions-wrap{gap:0;width:100%;display:grid;position:relative}.flashcard-clip-wrap{aspect-ratio:1;border-radius:18px;width:100%;margin-top:4px;position:relative;overflow:hidden}.flashcard-media-bg{opacity:.45;pointer-events:none;background-position:50%;background-repeat:no-repeat;background-size:cover;transition:filter .17s,opacity .17s;position:absolute;inset:0}.flashcard-media-bg.blurred{filter:blur(14px);transform:scale(1.12)}.flashcard:before{content:"";pointer-events:none;z-index:1;background:linear-gradient(#4a9e52 0% 59%,#3d82c4 61% 100%) 100%/8px 100% no-repeat,linear-gradient(#c08830 0% 59%,#e56c6c 61% 100%) 0/8px 100% no-repeat;position:absolute;inset:0}.flashcard:after{content:"";pointer-events:none;background:radial-gradient(circle at 50% -18%,#ffffff4d,#0000 45%);position:absolute;inset:0}.flashcard-zone-rails{--rail-split:60%;--rail-overflow:18px;z-index:0;pointer-events:none;position:absolute;inset:0}.flashcard-zone-rail{opacity:1;border-radius:0;width:21px;position:absolute}.flashcard-zone-rail.left{left:0}.flashcard-zone-rail.right{right:0}.flashcard-zone-rail.top{top:calc(-1 * var(--rail-overflow));bottom:calc(100% - var(--rail-split))}.flashcard-zone-rail.bottom{top:var(--rail-split);bottom:calc(-1 * var(--rail-overflow))}.flashcard-zone-rail.left.top{background:0 0;border-top-left-radius:999px;border-top-right-radius:999px;border-bottom-right-radius:21px}.flashcard-zone-rail.left.bottom{background:0 0;border-top-right-radius:21px;border-bottom-right-radius:999px;border-bottom-left-radius:999px}.flashcard-zone-rail.right.top{background:0 0;border-top-left-radius:999px;border-top-right-radius:999px;border-bottom-left-radius:21px}.flashcard-zone-rail.right.bottom{background:0 0;border-top-left-radius:21px;border-bottom-right-radius:999px;border-bottom-left-radius:999px}.flashcard-word,.flashcard-translation,.swipe-indicator,.flashcard-audio-btn,.flashcard-star-btn,.flashcard-corner-hit-layer{z-index:1;position:relative}.flashcard.pressed{box-shadow:0 8px 14px color-mix(in srgb, var(--flashcard-shadow) 72%, transparent), inset 0 3px 8px #0000001f, inset 0 -6px 12px #00000014;transform:translateY(4px)scale(.987)}.flashcard.dragging{transition:none}.flashcard.drag-right{background:linear-gradient(160deg, color-mix(in srgb, #1ba65a 24%, var(--flashcard-shell-top)) 0%, color-mix(in srgb, #1ba65a 15%, var(--flashcard-surface)) 100%);box-shadow:0 16px 32px #23b45d42}.flashcard.drag-left{background:linear-gradient(160deg, color-mix(in srgb, #de4c4c 24%, var(--flashcard-shell-top)) 0%, color-mix(in srgb, #de4c4c 15%, var(--flashcard-surface)) 100%);box-shadow:0 16px 32px #e0484842}.flashcard.drag-hard{background:linear-gradient(160deg, color-mix(in srgb, #d38b2e 26%, var(--flashcard-shell-top)) 0%, color-mix(in srgb, #d38b2e 17%, var(--flashcard-surface)) 100%);box-shadow:0 16px 32px #d38b2e47}.flashcard.drag-easy{background:linear-gradient(160deg, color-mix(in srgb, #2e7fd3 26%, var(--flashcard-shell-top)) 0%, color-mix(in srgb, #2e7fd3 17%, var(--flashcard-surface)) 100%);box-shadow:0 16px 32px #2e7fd347}.flashcard.examples-revealed{transform:translateY(75%)}.flashcard-word-group{text-align:center;flex-direction:column;align-items:center;transition:transform .22s cubic-bezier(.22,.92,.32,1);display:flex}.flashcard.dragging .flashcard-word-group{transition:none}.flashcard.swipe-right{opacity:0;transform:translate(calc(100vw + 280px),-14px)rotate(17deg)scale(.97)}.flashcard.swipe-left{opacity:0;transform:translate(calc(-100vw - 280px),-14px)rotate(-17deg)scale(.97)}.flashcard-back{z-index:1;border:1px solid color-mix(in srgb, var(--border) 88%, #ffffff14);background:linear-gradient(164deg, var(--flashcard-shell-top) 0%, var(--flashcard-surface) 64%, var(--flashcard-shell-bottom) 100%);text-align:left;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;border-radius:18px;flex-direction:column;justify-content:flex-start;align-items:flex-start;height:calc(75% - 10px);padding:20px 22px 16px;display:flex;position:absolute;top:0;left:0;right:0;overflow-y:auto}.flashcard-back:after{content:"“";opacity:.055;color:#fff;pointer-events:none;-webkit-user-select:none;user-select:none;font-family:Georgia,serif;font-size:8rem;line-height:1;position:absolute;bottom:-14px;right:18px}.flashcard-back-label{letter-spacing:.14em;text-transform:uppercase;opacity:.35;margin-bottom:14px;font-size:.6rem;font-weight:700}.flashcard-back-examples{flex-direction:column;gap:10px;width:100%;display:flex}.flashcard-example-block{border-top:1px solid #ffffff14;align-items:flex-start;gap:10px;padding-top:10px;display:flex}.flashcard-example-block:first-child{border-top:none;padding-top:0}.flashcard-example-num{color:#ffffff73;letter-spacing:0;background:#ffffff1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:17px;height:17px;margin-top:2px;font-size:.58rem;font-weight:700;display:flex}.flashcard-example-content{flex-direction:column;flex:1;gap:3px;display:flex}.flashcard-example-line.source{color:#ffffffeb;margin:0;font-size:.92rem;font-weight:600;line-height:1.4}.flashcard-example-line.translation{color:#ffffff6b;margin:0;font-size:.78rem;font-style:italic;line-height:1.35}.flashcard.enter-from-top{transition:none;animation:.16s ease-out both flashcard-enter-center-fade}.flashcard-word{text-shadow:0 2px 5px #00000061,0 0 18px #0003;margin-bottom:10px;font-size:2rem;font-weight:700;line-height:1.15}.flashcard-translation{opacity:.9;text-shadow:0 1px 3px #00000057;font-size:1.2rem;transition:opacity .17s,transform .17s,filter .17s}.flashcard-translation.blurred{filter:blur(10px);-webkit-user-select:none;user-select:none}.flashcard-translation.hidden{opacity:0;visibility:hidden;min-height:1.3em;transform:translateY(6px)}.flashcard-examples{z-index:1;text-align:left;border-top:1px solid #ffffff26;margin-top:14px;padding-top:12px;transition:opacity .17s,transform .17s;position:relative}.flashcard-examples.hidden{opacity:0;visibility:hidden;transform:translateY(6px)}.flashcard-example-line{margin:0}.flashcard-example-line em{opacity:.72;font-style:italic}.flashcard-example-line strong{font-weight:600}.flashcard-audio-btn{color:#fff;cursor:pointer;background:#00000057;border:1px solid #ffffff4d;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;transition:background .15s,border-color .15s;display:flex;position:absolute;top:10px;right:10px}.flashcard-audio-btn.is-playing{background:#ffffff2e;border-color:#fff9}.flashcard-star-btn{color:#fff9;cursor:pointer;background:#00000057;border:1px solid #ffffff4d;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;transition:background .15s,border-color .15s,color .15s;display:flex;position:absolute;top:10px;left:10px}.flashcard-star-btn.is-starred{color:#f5c518;background:#f5c51826;border-color:#f5c51899}.flashcard-examples-toggle{appearance:none;z-index:5;color:#ffffffad;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#0000002e;border:1px solid #ffffff2e;border-radius:999px;justify-content:center;align-items:center;width:34px;height:28px;transition:background .15s,border-color .15s,color .15s,filter .12s;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.flashcard-examples-toggle:active:not(:disabled){filter:brightness(.86)}.flashcard-examples-toggle:focus-visible{border-color:#ffffff80;outline:none;box-shadow:0 0 0 2px #ffffff1f}.flashcard-examples-toggle:disabled{opacity:.46;cursor:default}.flashcard-corner-hit-layer{z-index:2;pointer-events:none;transition:opacity .18s;position:absolute;inset:0}.flashcard-corner-hit-layer.is-hidden{display:none}.flashcard-corner-hit-layer.disabled{opacity:.42}.flashcard-corner-shape{fill:#ffffff08;stroke:none;transition:fill .18s,transform .12s,filter .12s,opacity .12s}.flashcard-corner-hit-path{pointer-events:auto;cursor:pointer}.flashcard-corner-hit-layer.disabled .flashcard-corner-hit-path{cursor:default}.flashcard-corner-hit-path-unknown{transform-origin:0 100%}.flashcard-corner-hit-path-known{transform-origin:100% 100%}.flashcard-corner-hit-path-unknown.flashcard-corner-shape,.flashcard-corner-hit-path-known.flashcard-corner-shape{fill:#0000}.flashcard-corner-label{fill:#f5f7faf5;letter-spacing:.02em;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:18px;font-weight:760;transition:transform .12s,filter .12s,opacity .12s}.flashcard-corner-label-unknown{transform-origin:0 100%}.flashcard-corner-label-known{transform-origin:100% 100%;fill:#a0d2fffa;font-size:18px;font-weight:780}.flashcard-corner-label-unknown{fill:#ff9e9efa}.flashcard-corner-label-unknown-top{font-size:17px}.flashcard-corner-label-unknown-bottom{font-size:17px;font-weight:800}.flashcard-corner-label.pressed{filter:brightness(.9);opacity:.94;transform:translateY(3px)scale(.985)}.flashcard-corner-hit-path.pressed{filter:brightness(.86)saturate(.9);opacity:.92;transform:translateY(3px)scale(.985)}.flashcard-corner-hit-path:active{filter:brightness(1.16)}.swipe-indicator{border:1px solid #0000;border-radius:10px;align-items:center;gap:6px;padding:6px 10px;font-size:.76rem;font-weight:700;display:inline-flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.swipe-indicator.indicator-top-left{top:19%;left:25%}.swipe-indicator.indicator-top-right{top:19%;left:75%}.swipe-indicator.indicator-bottom-left{top:66%;left:25%}.swipe-indicator.indicator-bottom-right{top:66%;left:75%}.swipe-indicator-icon{flex-shrink:0;width:16px;height:16px}.swipe-indicator-interval{opacity:.85;font-size:.72rem;font-weight:600}.swipe-indicator.right{color:#f5fff9;text-shadow:0 1px 2px #0000008c;background:#0f60386b;border-color:#70e7aa9e}.swipe-indicator.right .swipe-indicator-icon{animation:.82s ease-in-out infinite swipe-indicator-move-right}.swipe-indicator.left{color:#fff6f6;text-shadow:0 1px 2px #0000008c;background:#7d21216b;border-color:#f791919e}.swipe-indicator.left .swipe-indicator-icon{animation:.82s ease-in-out infinite swipe-indicator-move-left}.swipe-indicator.hard{color:#fff8ec;text-shadow:0 1px 2px #0000008c;background:#8d521475;border-color:#f6c26ba8}.swipe-indicator.easy{color:#f3f9ff;text-shadow:0 1px 2px #0000008c;background:#23569375;border-color:#82bdfcad}.swipe-indicator.hidden,.swipe-indicator .si-icon-right,.swipe-indicator .si-icon-left{display:none}.swipe-indicator.right .si-icon-right,.swipe-indicator.easy .si-icon-right,.swipe-indicator.left .si-icon-left,.swipe-indicator.hard .si-icon-left{display:block}.swipe-indicator .si-label{display:none}.swipe-indicator.right .si-label-right,.swipe-indicator.left .si-label-left,.swipe-indicator.hard .si-label-hard,.swipe-indicator.easy .si-label-easy{display:inline}.learn-card-actions-wrap.swipe-in-progress .learn-attached-rating-row{pointer-events:none;opacity:.45;z-index:1}.learn-attached-rating-row{z-index:3;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:100%;margin-top:10px;padding:0 2px 6px;display:grid}.learn-attached-btn{--btn-color:#3d82c4;appearance:none;background:var(--btn-color);color:#fff;cursor:pointer;pointer-events:auto;-webkit-tap-highlight-color:transparent;border:none;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;min-height:54px;padding:10px 6px;transition:filter .1s;display:flex}.learn-attached-btn:active:not(:disabled){filter:brightness(.85)}.learn-attached-btn:disabled{opacity:.5;cursor:default}.learn-attached-btn-interval{opacity:.9;min-height:1em;font-size:.75rem;font-weight:500;line-height:1}.learn-attached-btn-text{white-space:nowrap;font-size:1rem;font-weight:600;line-height:1}.timing-control{margin-top:4px}.timing-control label{opacity:.9;margin-bottom:6px;font-size:.9rem;display:block}.timing-control input[type=range]{width:100%}.status-line{margin:0;font-size:.95rem}.visually-hidden{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.learn-btn{--btn-top:#60b3f5;--btn-bottom:#2e7fd3;--btn-glow:#2e7fd357;appearance:none;background:linear-gradient(180deg, var(--btn-top) 0%, var(--btn-bottom) 100%);min-height:70px;box-shadow:0 14px 24px var(--btn-glow), 0 9px 18px #0003, inset 0 1px 0 #ffffff38;-webkit-tap-highlight-color:transparent;border:1px solid #ffffff47;border-radius:16px;outline:none;justify-content:center;align-items:center;gap:10px;padding:14px 12px;font-size:1.2rem;font-weight:700;line-height:1;transition:transform .22s cubic-bezier(.22,.84,.31,1),box-shadow .22s cubic-bezier(.22,.84,.31,1),filter .22s cubic-bezier(.22,.84,.31,1),border-color .22s cubic-bezier(.22,.84,.31,1);display:flex;position:relative;overflow:visible}.learn-btn:before{content:"";border:1px solid color-mix(in srgb, var(--btn-top) 80%, #fff 20%);clip-path:polygon(8% 0,92% 0,100% 100%,0 100%);background:linear-gradient(180deg, color-mix(in srgb, var(--btn-top) 85%, #fff 15%) 0%, color-mix(in srgb, var(--btn-top) 72%, var(--btn-bottom) 28%) 100%);width:78%;height:21px;box-shadow:0 8px 12px color-mix(in srgb, var(--btn-glow) 70%, transparent), inset 0 1px 0 #ffffff47;transform-origin:bottom;pointer-events:none;border-radius:12px 12px 10px 10px;transition:top .22s cubic-bezier(.22,.84,.31,1),height .22s cubic-bezier(.22,.84,.31,1),box-shadow .22s cubic-bezier(.22,.84,.31,1),filter .22s cubic-bezier(.22,.84,.31,1);position:absolute;top:-15px;left:50%;transform:translate(-50%)}.learn-rating-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:14px;display:grid}.learn-rating-grid-hidden{display:none}.learn-btn:active{box-shadow:0 7px 14px color-mix(in srgb, var(--btn-glow) 65%, transparent), 0 4px 10px #0003, inset 0 1px 0 #ffffff29;transform:translateY(5px)scale(.988)}.learn-btn:active:before{height:15px;box-shadow:0 5px 8px color-mix(in srgb, var(--btn-glow) 58%, transparent), inset 0 1px 0 #ffffff2e;filter:saturate(.94);top:-9px}.learn-btn:focus,.learn-btn:focus-visible{box-shadow:0 14px 24px var(--btn-glow), 0 9px 18px #0003, inset 0 1px 0 #ffffff38;outline:none}.learn-btn-text{z-index:1;white-space:nowrap;letter-spacing:.01em;text-shadow:0 1px 2px #0000003d;font-size:1.2rem;position:relative}.learn-btn-known{--btn-color:#4a9e52}.learn-btn-unknown{--btn-color:#c25050}.learn-btn-hard{--btn-color:#c08830}.learn-btn-easy{--btn-color:#3d82c4}.btn:disabled{opacity:.6;cursor:default}.sync-lamp-wrap,.user-menu-wrap{position:relative}.user-menu-trigger{appearance:none;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;-webkit-tap-highlight-color:transparent;border-radius:999px;outline:none;min-width:92px;max-width:170px;height:36px;padding:0 12px;font-size:.9rem;font-weight:700;overflow:hidden}.user-menu-trigger:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.user-menu-trigger:focus,.user-menu-trigger:focus-visible{box-shadow:none;outline:none}.user-menu-trigger:disabled{opacity:.58;cursor:default}.user-menu-popup{-webkit-overflow-scrolling:touch;touch-action:pan-y;border:1px solid color-mix(in srgb, var(--border) 80%, var(--text) 20%);background:color-mix(in srgb, var(--surface) 96%, var(--text) 4%);width:auto;max-width:420px;max-height:calc(100dvh - 70px);color:var(--text);z-index:24;border-radius:14px;gap:10px;margin-inline:auto;padding:12px;display:grid;position:fixed;top:60px;left:8px;right:8px;overflow-y:auto;box-shadow:0 12px 48px #00000052,0 2px 8px #00000024}.user-menu-popup-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.user-menu-title{color:var(--text);margin:0;font-size:.95rem;font-weight:700}.user-menu-close{appearance:none;color:color-mix(in srgb, var(--text) 55%, transparent);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:6px;flex-shrink:0;padding:4px 6px;font-size:1rem;line-height:1}.user-menu-close:hover{color:var(--text);background:color-mix(in srgb, var(--text) 8%, transparent)}.user-menu-reminder-section{border:1px solid var(--border);background:color-mix(in srgb, var(--text) 4%, transparent);border-radius:10px}.user-menu-reminder-section-header{align-items:center;gap:8px;padding:8px 10px;display:flex}.user-menu-tabs{align-items:center;gap:6px;width:100%;display:inline-flex}.user-menu-tab{appearance:none;border:1px solid var(--border);background:color-mix(in srgb, var(--text) 6%, transparent);color:var(--text);cursor:pointer;border-radius:8px;min-height:30px;padding:0 10px;font-size:.78rem;font-weight:700}.user-menu-tab.active{border-color:color-mix(in srgb, var(--accent) 38%, transparent);background:color-mix(in srgb, var(--accent) 22%, transparent);color:var(--text)}.user-menu-row{white-space:normal;justify-content:space-between;align-items:center;gap:14px;display:flex}.user-menu-label{color:color-mix(in srgb, var(--text) 88%, transparent);overflow-wrap:anywhere;flex:0 auto;min-width:0;max-width:40%;padding-top:0;font-size:.84rem;line-height:1.2}.user-menu-hint{color:color-mix(in srgb, var(--text) 55%, transparent);margin:0;padding-top:2px;font-size:.78rem;line-height:1.3}.user-menu-value{color:var(--text);text-align:right;word-break:break-word;flex:170px;min-width:0;font-size:.82rem;font-weight:700}.user-menu-spoiler{border:1px solid var(--border);background:color-mix(in srgb, var(--text) 4%, transparent);border-radius:10px}.user-menu-spoiler-summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:8px 10px;list-style:none;display:flex}.user-menu-spoiler-summary::-webkit-details-marker{display:none}.user-menu-spoiler-summary:before{content:"▶";opacity:.55;flex-shrink:0;font-size:.6rem;transition:transform .16s}.user-menu-spoiler[open] .user-menu-spoiler-summary:before{transform:rotate(90deg)}.user-menu-spoiler-title{letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 72%, transparent);flex:1;font-size:.75rem;font-weight:800}.user-menu-spoiler-badge{border-radius:999px;padding:1px 7px;font-size:.7rem;font-weight:700}.user-menu-spoiler-badge.on{color:#126d39;background:#1ba65a2e}:root[data-theme=dark] .user-menu-spoiler-badge.on{color:#9fe7bf}.user-menu-spoiler-badge.off{background:color-mix(in srgb, var(--text) 10%, transparent);color:color-mix(in srgb, var(--text) 65%, transparent)}.user-menu-spoiler-body{gap:8px;padding:0 8px 8px;display:grid}.user-menu-reminder-block{border:1px solid var(--border);background:color-mix(in srgb, var(--text) 5%, transparent);border-radius:10px;gap:8px;padding:8px;display:grid}.user-menu-admin{border-top:1px solid var(--border);gap:8px;margin-top:2px;padding-top:8px;display:grid}.user-menu-maintenance{border-top:1px solid var(--border);gap:10px;margin-top:2px;padding-top:8px;display:grid}.user-menu-help-tabs{background:color-mix(in srgb, var(--text) 8%, transparent);border-radius:8px;gap:4px;padding:3px;display:flex}.user-menu-help-tab{color:color-mix(in srgb, var(--text) 70%, transparent);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;padding:5px 8px;font-size:.8rem;font-weight:500;transition:background .15s,color .15s}.user-menu-help-tab.active{background:var(--surface);color:var(--text);font-weight:600}.maintenance-clear-btn{color:#e5484d;cursor:pointer;background:0 0;border:1px solid #e5484d;border-radius:8px;justify-content:center;align-items:center;padding:8px 16px;font-size:.85rem;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.maintenance-clear-btn:hover:not(:disabled){color:#fff;background:#e5484d}.maintenance-clear-btn:disabled{opacity:.5;cursor:default}.user-menu-admin-link{border:1px solid var(--border);background:color-mix(in srgb, var(--accent) 20%, transparent);min-height:32px;color:var(--text);border-radius:8px;justify-content:center;align-items:center;padding:0 10px;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-flex}.user-menu-admin-note{color:color-mix(in srgb, var(--text) 70%, transparent);margin:0;font-size:.8rem}.user-menu-admin-divider{border:none;border-top:1px solid var(--border);margin:2px 0}.user-menu-admin-link--spoiler{justify-content:space-between}.user-menu-spoiler-chevron{opacity:.6;font-size:.65rem}.user-menu-admin-spoiler-body{gap:8px;display:grid}.about-version-panel{gap:10px;display:grid}.about-version-group{border:1px solid var(--border);background:color-mix(in srgb, var(--text) 4%, transparent);border-radius:8px;gap:7px;padding:9px 10px;display:grid}.about-version-heading{color:color-mix(in srgb, var(--text) 58%, transparent);margin:0;font-size:.76rem;font-weight:800;line-height:1.1}.about-version-row{grid-template-columns:minmax(58px,.7fr) minmax(0,1fr);align-items:baseline;gap:8px;display:grid}.about-version-label{color:color-mix(in srgb, var(--text) 62%, transparent);font-size:.78rem}.about-version-value{background:color-mix(in srgb, var(--text) 7%, transparent);min-width:0;max-width:100%;color:var(--text);text-align:right;overflow-wrap:anywhere;border-radius:6px;justify-self:end;padding:3px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;font-weight:700;line-height:1.25}.about-version-value--muted{color:color-mix(in srgb, var(--text) 58%, transparent);font-family:inherit}.user-menu-admin-error{color:#e5484d;margin:0;font-size:.8rem}.feedback-textarea{box-sizing:border-box;border:1px solid var(--color-border,#ccc);background:var(--color-input-bg,#fff);width:100%;color:var(--color-text,#000);resize:vertical;border-radius:6px;padding:8px;font-family:inherit;font-size:.9rem}.feedback-textarea:disabled{opacity:.6}.feedback-image-label{flex-direction:column;gap:4px;margin-top:8px;display:flex}.feedback-image-input{font-size:.85rem}.feedback-success{color:#30a46c;margin:0;font-size:.8rem}.user-menu-admin-list{gap:8px;max-height:280px;padding-right:2px;display:grid;overflow-y:auto}.user-menu-admin-card{border:1px solid var(--border);background:color-mix(in srgb, var(--text) 5%, transparent);border-radius:10px;gap:8px;padding:8px;display:grid}.user-menu-admin-user-title{color:var(--text);margin:0;font-size:.82rem;font-weight:700}.user-menu-admin-user-hash{color:color-mix(in srgb, var(--text) 63%, transparent);word-break:break-all;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.67rem}.admin-users-page{gap:12px;display:grid}.admin-users-toolbar{justify-content:space-between;align-items:center;gap:8px;display:flex}.admin-users-toolbar h2{margin:0}.admin-users-search{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 86%, var(--bg) 14%);width:100%;min-height:38px;color:var(--text);border-radius:10px;padding:0 12px;font-size:.95rem}.admin-users-list{gap:10px;display:grid}.admin-users-sentinel{height:1px}.admin-user-card{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 94%, var(--bg) 6%);border-radius:12px;gap:8px;padding:10px;display:grid}.admin-user-title{margin:0;font-size:.92rem;font-weight:700}.admin-user-actions{justify-content:flex-end;display:flex}.admin-user-delete-btn{appearance:none;color:var(--text);cursor:pointer;background:#ef444429;border:1px solid #ef444461;border-radius:8px;min-height:30px;padding:0 10px;font-size:.8rem;font-weight:700}.admin-user-delete-btn:disabled{opacity:.6;cursor:default}.admin-users-error{color:#fca5a5;margin:0}.admin-decks-page{gap:12px;display:grid}.admin-decks-toolbar,.admin-deck-card-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.admin-decks-toolbar h2{margin:0}.admin-decks-search{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 86%, var(--bg) 14%);width:100%;min-height:38px;color:var(--text);border-radius:8px;padding:0 12px;font-size:.95rem}.admin-decks-list{gap:10px;display:grid}.admin-deck-card{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 94%, var(--bg) 6%);border-radius:8px;gap:8px;padding:10px;display:grid}.admin-deck-title,.admin-deck-meta,.admin-deck-owner{margin:0}.admin-deck-title{font-size:.95rem;font-weight:700}.admin-deck-meta,.admin-deck-owner,.admin-deck-language,.admin-deck-back-link{color:var(--muted);font-size:.78rem}.admin-deck-language{flex:none}.admin-deck-owner{overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.admin-deck-edit-form{gap:7px;display:grid}.admin-deck-edit-form label{font-size:.78rem;font-weight:700}.admin-deck-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.admin-decks-sentinel{height:1px}.admin-decks-error{color:#fca5a5;margin:0}@media (width<=520px){.admin-decks-toolbar{align-items:flex-start}.admin-deck-actions{justify-content:stretch}.admin-deck-actions .btn{flex:auto}}.sound-theme-create-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sound-theme-card{gap:10px;display:grid}.sound-theme-card-header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.sound-theme-card-title{flex-direction:column;gap:2px;display:flex}.sound-theme-slug{opacity:.6;font-size:.78rem}.sound-theme-card-actions{flex-shrink:0;gap:6px;display:flex}.sound-theme-events{gap:6px;display:grid}.sound-theme-event-row{border-bottom:1px solid color-mix(in srgb, var(--border) 40%, transparent);grid-template-columns:1fr auto;align-items:center;gap:8px;padding:4px 0;display:grid}.sound-theme-event-row:last-child{border-bottom:none}.sound-theme-event-name{font-family:monospace;font-size:.83rem}.sound-theme-event-empty{opacity:.4;padding:0 4px;font-size:.78rem}.sound-theme-play-btn{min-width:32px;min-height:26px;padding:2px 8px;font-size:.72rem}.sound-theme-play-btn.playing{background:color-mix(in srgb, var(--accent) 30%, transparent)}.sound-theme-event-actions{gap:4px;display:flex}.sound-theme-upload-btn,.sound-theme-remove-btn{min-height:26px;padding:2px 8px;font-size:.78rem}.sound-theme-row-error{grid-column:1/-1;font-size:.78rem}.app-select{flex:168px;min-width:0;max-width:100%;position:relative}.app-select-trigger{appearance:none;border:1px solid var(--border);background:color-mix(in srgb, var(--text) 6%, transparent);width:100%;min-height:36px;color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px;outline:none;justify-content:space-between;align-items:center;gap:8px;padding:0 14px;font-size:.85rem;font-weight:700;display:flex}.app-select-chevron{color:var(--text-muted);font-size:.9rem;line-height:1;transition:transform .15s}.app-select-chevron.open{transform:rotate(180deg)}.app-select-dropdown{z-index:9999;border:1px solid var(--border);background:var(--surface);border-radius:14px;margin:0;padding:4px;list-style:none;overflow:hidden;box-shadow:0 8px 24px #0000002e}.app-select-option{cursor:pointer;color:var(--text);-webkit-tap-highlight-color:transparent;border-radius:10px;padding:8px 12px;font-size:.85rem;font-weight:600}.app-select-option:hover{background:color-mix(in srgb, var(--text) 7%, transparent)}.app-select-option.active{background:color-mix(in srgb, var(--accent) 30%, transparent)}.user-menu-inline-input{flex:170px;justify-content:flex-end;align-items:center;gap:6px;min-width:0;max-width:100%;display:inline-flex}.user-menu-input{border:1px solid var(--border);background:color-mix(in srgb, var(--text) 8%, transparent);width:min(170px,100%);min-width:0;min-height:30px;color:var(--text);border-radius:8px;flex:128px;padding:0 8px;font-size:.8rem}.user-menu-time-inputs{flex:170px;justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:inline-flex}.user-menu-time-input{text-align:center;flex:0 0 64px;width:64px}.user-menu-time-sep{color:var(--text);font-weight:700}.user-menu-input::placeholder{color:color-mix(in srgb, var(--text) 55%, transparent)}.user-menu-save{appearance:none;border:1px solid var(--border);background:color-mix(in srgb, var(--accent) 26%, transparent);color:var(--text);cursor:pointer;border-radius:8px;min-height:30px;padding:0 10px;font-size:.78rem;font-weight:700}.user-menu-segmented{border:1px solid var(--border);background:color-mix(in srgb, var(--text) 6%, transparent);border-radius:999px;flex:168px;justify-content:flex-end;align-items:center;min-width:0;max-width:100%;padding:2px;display:inline-flex}.user-segment{appearance:none;color:var(--text);text-align:center;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:999px;outline:none;flex:1;min-height:28px;padding:0 10px;font-size:.8rem;font-weight:700;line-height:1.1}.user-segment.active{background:color-mix(in srgb, var(--accent) 30%, transparent);color:var(--text)}.user-segment:focus,.user-segment:focus-visible{box-shadow:none;outline:none}.sync-lamp{appearance:none;border:1px solid var(--border);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#7f7f7f1a;border-radius:999px;outline:none;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:inline-flex}.sync-lamp:focus,.sync-lamp:focus-visible{box-shadow:none;outline:none}.sync-dot{background:#e09b2a;border-radius:50%;width:12px;height:12px;display:inline-block}.sync-dot.ok{background:#1ba65a}.sync-dot.pending,.sync-dot.error,.sync-dot.idle{background:#e09b2a}.sync-dot.offline{background:#8a8a9a}.sync-popup{border:1px solid var(--border);background:var(--surface);width:min(100vw - 16px,728px);max-height:calc(100dvh - 70px);color:var(--text);z-index:20;border-radius:12px;gap:8px;padding:10px;display:grid;position:fixed;top:60px;right:8px;overflow-y:auto;box-shadow:0 10px 30px #00000038}.sync-popup-title{margin:0;font-weight:700}.sync-offline-badge{color:#8a8a9a;letter-spacing:.04em;background:#8a8a9a38;border-radius:6px;align-self:flex-start;margin:0;padding:2px 8px;font-size:.82rem;font-weight:600}.sync-popup-queue{margin:0}.sync-popup-legend{grid-template-columns:14px 1fr;align-items:center;gap:8px;display:grid}.sync-popup-action{width:100%}.sync-popup-secondary{appearance:none;border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 90%, var(--bg) 10%);width:100%;color:var(--text);cursor:pointer;border-radius:10px;padding:9px 12px;font-size:.95rem;font-weight:600}.sync-popup-logs{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 92%, var(--bg) 8%);border-radius:10px;padding:10px}.sync-popup-logs-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.sync-popup-logs-actions{align-items:center;gap:6px;display:inline-flex}.sync-popup-logs .sync-debug-list{max-height:220px;margin-top:10px}.theme-toggle{appearance:none;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px;outline:none;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:inline-flex}.theme-toggle:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.theme-toggle:focus,.theme-toggle:focus-visible{box-shadow:none;outline:none}.theme-icon{transform-origin:50%;width:18px;height:18px;animation:.34s cubic-bezier(.22,.95,.33,1) theme-icon-pop}.lang-toggle{appearance:none;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px;outline:none;min-width:44px;height:36px;padding:0 12px;font-size:.9rem;font-weight:700}.lang-toggle:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.lang-toggle:focus,.lang-toggle:focus-visible{box-shadow:none;outline:none}@keyframes theme-icon-pop{0%{opacity:.3;transform:rotate(-90deg)scale(.72)}70%{opacity:1;transform:rotate(12deg)scale(1.1)}to{opacity:1;transform:rotate(0)scale(1)}}@keyframes flashcard-enter-center-fade{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes swipe-indicator-move-right{0%{opacity:.75;transform:translate(0)}55%{opacity:1;transform:translate(3px)}to{opacity:.75;transform:translate(0)}}@keyframes swipe-indicator-move-left{0%{opacity:.75;transform:translate(0)}55%{opacity:1;transform:translate(-3px)}to{opacity:.75;transform:translate(0)}}@keyframes pill-bump-known{0%{transform:scale(1);box-shadow:0 0 #1ba65a00}45%{transform:scale(1.06);box-shadow:0 0 0 5px #1ba65a29}to{transform:scale(1);box-shadow:0 0 #1ba65a00}}@keyframes pill-bump-unknown{0%{transform:scale(1);box-shadow:0 0 #dc484800}45%{transform:scale(1.06);box-shadow:0 0 0 5px #dc484829}to{transform:scale(1);box-shadow:0 0 #dc484800}}.card-edit-page{gap:16px}.card-edit-header{align-items:center;gap:10px;display:flex}.card-edit-back-btn{color:var(--text);cursor:pointer;opacity:.7;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:4px;display:flex}.card-edit-back-btn:hover{opacity:1}.card-edit-title{margin:0;font-size:1.05rem;font-weight:700}.card-edit-form{gap:8px;display:grid}.card-edit-label{opacity:.7;margin-bottom:-4px;font-size:.82rem;font-weight:600}.card-edit-input{box-sizing:border-box;border:1px solid color-mix(in srgb, var(--border) 80%, transparent);background:color-mix(in srgb, var(--surface) 90%, var(--bg) 10%);width:100%;color:var(--text);border-radius:8px;padding:9px 12px;font-family:inherit;font-size:.95rem}.card-edit-input:focus{border-color:var(--accent);outline:none}.card-edit-textarea{box-sizing:border-box;border:1px solid color-mix(in srgb, var(--border) 80%, transparent);background:color-mix(in srgb, var(--surface) 90%, var(--bg) 10%);width:100%;color:var(--text);resize:vertical;border-radius:8px;min-height:80px;padding:9px 12px;font-family:inherit;font-size:.9rem}.card-edit-textarea:focus{border-color:var(--accent);outline:none}.card-edit-save-btn{margin-top:4px}.card-edit-message{opacity:.8;margin:0;font-size:.84rem}.card-edit-media{gap:10px;display:grid}.card-edit-media[hidden]{display:none}.card-edit-media-title{opacity:.7;margin:0;font-size:.82rem;font-weight:600}.card-edit-image-preview{object-fit:contain;background:color-mix(in srgb, var(--surface) 88%, var(--bg) 12%);border-radius:8px;width:100%;max-height:180px}.card-edit-image-placeholder{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 18%, transparent), color-mix(in srgb, var(--surface) 88%, #000 12%));border-radius:8px;width:100%;height:80px}.card-edit-media-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.image-search-modal-overlay{z-index:1000;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.image-search-modal{background:var(--bg);border-radius:12px;flex-direction:column;gap:12px;width:min(360px,92vw);padding:16px;display:flex}.image-search-modal-header{gap:8px;display:flex}.image-search-modal-header .card-edit-input{flex:1;min-width:0}.image-search-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.image-search-thumb-btn{all:unset;cursor:pointer;aspect-ratio:1;border-radius:8px;display:block;overflow:hidden}.image-search-thumb-btn:disabled{opacity:.5;cursor:not-allowed}.image-search-thumb{object-fit:cover;width:100%;height:100%;display:block}.image-search-thumb-btn:not(:disabled):hover .image-search-thumb{opacity:.85}.image-search-empty{text-align:center;padding:8px 0}.deck-tts-voice-row{align-items:center;gap:8px;min-width:0;display:flex}.deck-tts-select{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.confirm-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.confirm-dialog{background:var(--surface);border-radius:16px;flex-direction:column;gap:12px;width:100%;max-width:340px;padding:20px;display:flex;box-shadow:0 8px 32px #0003}.confirm-message{color:var(--text);margin:0;font-size:.95rem;line-height:1.5}.confirm-warning{color:#e5484d;background:color-mix(in srgb, #e5484d 10%, var(--surface));border:1px solid color-mix(in srgb, #e5484d 30%, var(--border));border-radius:8px;margin:0;padding:8px 10px;font-size:.88rem;line-height:1.5}.confirm-actions{justify-content:flex-end;gap:8px;display:flex}.confirm-btn{cursor:pointer;border-radius:10px;padding:8px 16px;font-size:.9rem}.confirm-btn-cancel{border:1px solid var(--border);color:var(--text);background:0 0}.confirm-btn-ok{border:1px solid color-mix(in srgb, #e5484d 60%, var(--border));background:color-mix(in srgb, #e5484d 15%, var(--surface));color:var(--text)}
