:root{--background-color:#f7fbfb;--elevated-background-color:#fff;--soft-background-color:#eef5f4;--text-color:#2d3436;--soft-text-color:#636e72;--muted-text-color:#a0a8ab;--border-color:#dde6e6;--strong-border-color:#c3cdcd;--soft-border-color:#f7fbfb;--accent-color:#ed3a8e;--strong-accent-color:#ed3a8e;--soft-accent-color:rgba(var(--accent-color-rgb), .18);--accent-color-rgb:237, 58, 142;--good-color:#37b24d;--strong-good-color:#2b8c3e;--warning-color:#f08c00;--strong-warning-color:#cc7400;--warning-color-rgb:240, 140, 0;--love-color:#ff6b6b;--strong-love-color:#fa5252;--hate-color:#c92a2a;--strong-hate-color:#a61e1e;--hate-color-rgb:201, 42, 42;--neutral-color:#e0a800;--strong-neutral-color:#c49200;--radius:10px;--radius-small:6px;--icon-toggle-button-size:calc(.875rem * 1.45 + 14px);--shadow:0 6px 24px #2d343614, 0 2px 6px #2d34360d;--spacing-extra-small:2px;--spacing-small:4px;--spacing-medium:6px;--spacing-large:8px;--spacing-extra-large:10px;--sans-serif-font:system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--monospace-font:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;font:16px/1.45 var(--sans-serif-font);color:var(--text-color);background:var(--background-color);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--background-color:#0f0f0f;--soft-background-color:#212121;--elevated-background-color:#141414;--text-color:#f1f4f4;--soft-text-color:#b0b8ba;--muted-text-color:#7c8688;--border-color:#383f42;--strong-border-color:#49545a;--soft-border-color:#151819;--accent-color:#0aa6b5;--strong-accent-color:#0aa6b5;--soft-accent-color:rgba(var(--accent-color-rgb), .18);--accent-color-rgb:9, 145, 165;--love-color:#06b354;--strong-love-color:#06b354;--good-color:#08944f;--strong-good-color:#08944f;--warning-color:#c83a3a;--strong-warning-color:#c83a3a;--warning-color-rgb:200, 58, 58;--hate-color:#d93a4f;--strong-hate-color:#d93a4f;--hate-color-rgb:217, 58, 79;--neutral-color:#c99a06;--strong-neutral-color:#b08600;--shadow:0 6px 24px #00000073, 0 2px 6px #0000004d}}body{min-height:100svh;margin:0}#root{flex-direction:column;min-height:100svh;display:flex}*{box-sizing:border-box}input,button,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn{border-radius:var(--radius-small);background:var(--soft-background-color);color:var(--text-color);border:none;justify-content:center;align-items:center;gap:6px;padding:10px 17px;font-size:.875rem;font-weight:500;transition:background .12s,color .12s,border-color .12s,transform 60ms;display:inline-flex}.btn:hover:not(:disabled){background:var(--soft-accent-color)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.55}.btn-primary{background:var(--accent-color);color:#fff}.btn-primary:hover:not(:disabled){background:var(--strong-accent-color)}.btn-large{padding:12px 26px;font-size:1rem}.btn-primary .kbd-hint,.btn-like-it .kbd-hint,.btn-dislike-it .kbd-hint,.btn-neutral .kbd-hint,.btn-love-it .kbd-hint,.btn-hate-it .kbd-hint{--_kbd-bg:#ffffff26;--_kbd-border:#ffffff59;--_kbd-color:#ffffffd9}.btn-secondary{background:var(--soft-background-color);border-color:var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--elevated-background-color);border-color:var(--strong-border-color)}.btn-ghost{border-color:var(--border-color);background:0 0}.btn-small{padding:5px 10px;font-size:.8125rem}.btn-love-it{background:var(--love-color);color:#fff}.btn-love-it:hover:not(:disabled){background:var(--strong-love-color)}.btn-like-it{background:var(--good-color);color:#fff}.btn-like-it:hover:not(:disabled){background:var(--strong-good-color)}.btn-neutral{background:var(--neutral-color);color:#fff}.btn-neutral:hover:not(:disabled){background:var(--strong-neutral-color)}.btn-dislike-it{background:var(--warning-color);color:#fff}.btn-dislike-it:hover:not(:disabled){background:var(--strong-warning-color)}.btn-hate-it{background:var(--hate-color);color:#fff}.btn-hate-it:hover:not(:disabled){background:var(--strong-hate-color)}.btn-danger{border-color:var(--warning-color);color:var(--warning-color);background:0 0}.btn-danger:hover:not(:disabled){background:var(--warning-color);color:#fff}.app{flex-direction:column;gap:28px;width:100%;max-width:880px;margin:0 auto;padding:32px 20px 64px;display:flex}.app-title{font-size:clamp(1.5rem,5vw,2.125rem)}.app-error{background:var(--elevated-background-color);border:1px solid var(--border-color);border-radius:var(--radius);color:var(--strong-warning-color);border-color:var(--warning-color);background:rgba(var(--warning-color-rgb), .08);padding:16px 20px}.app-sync-indicator{background:var(--elevated-background-color);border:1px solid var(--border-color);box-shadow:var(--shadow);color:var(--soft-text-color);z-index:30;border-radius:999px;align-items:center;gap:8px;padding:6px 14px;font-size:.75rem;display:flex;position:fixed;top:14px;left:50%;transform:translate(-50%)}.app-panel{background:var(--elevated-background-color);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:14px;padding:20px 22px;display:flex}.app-panel-tight{box-shadow:none;background:0 0;border:none;gap:4px;padding:10px 18px}.app-panel-title{justify-content:space-between;align-items:center;gap:10px;display:flex}.app-panel h2{letter-spacing:-.2px;margin:0;font-size:1.125rem;font-weight:600}.app-panel-filter-badge{background:var(--soft-accent-color);color:var(--strong-accent-color);vertical-align:middle;border-radius:999px;margin-left:8px;padding:2px 8px;font-size:.75rem;font-weight:500;display:inline-block}.app-footer{text-align:center;color:var(--muted-text-color);padding-top:10px;font-size:.8125rem}.wheel-header{flex-direction:column;gap:0;padding-top:4px;display:flex;position:relative}.wheel-header.is-pinned{z-index:20;background:var(--background-color);padding-bottom:8px;position:sticky;top:12px}.wheel-header-auth-row{z-index:5;position:absolute;top:10px;right:0}@media (width>=1440px){.app,.wheel-tabs-wrap{max-width:1200px}}@media (height<=480px) and (orientation:landscape){.app{gap:16px;padding:16px 20px 32px}}@media (width<=599px){.app{padding:20px 14px 48px}.wheel-header-auth-row{justify-content:flex-end;margin-bottom:8px;display:flex;position:static}}.display-name-editor-input{border-radius:var(--radius-small);border:1px solid var(--accent-color);background:var(--elevated-background-color);color:var(--text-color);box-shadow:0 0 0 3px var(--soft-accent-color);outline:none;padding:8px 14px;font-size:.875rem;font-weight:600}.loading-spinner{color:var(--accent-color);animation:.7s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-button{align-items:center;gap:8px;font-size:.875rem;display:flex}.auth-button-loading{color:var(--muted-text-color);align-items:center;height:34px;display:flex}.auth-button-name,.auth-button-import,.auth-button-signout{background:var(--soft-background-color);border-radius:var(--radius-small);color:var(--text-color);cursor:pointer;border:0;padding:8px 14px;font-size:.875rem;font-weight:500;transition:background .12s,border-color .12s}.auth-button-name:hover,.auth-button-import:hover,.auth-button-signout:hover{background:var(--elevated-background-color);border-color:var(--strong-border-color)}.auth-button-name{font-weight:600}.auth-button-import-status{color:var(--muted-text-color);font-size:.8125rem}.google-signin-btn{border-radius:var(--radius-small);border:1px solid var(--border-color);background:var(--soft-background-color);color:var(--text-color);cursor:pointer;align-items:center;gap:8px;padding:8px 16px 8px 12px;font-size:.875rem;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex}.google-signin-btn:hover{background:var(--elevated-background-color);border-color:var(--strong-border-color)}.shared-wheel-gate{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.shared-wheel-gate-card{background:var(--elevated-background-color);border:1px solid var(--strong-border-color);border-radius:var(--radius);width:100%;max-width:360px;box-shadow:var(--shadow);text-align:center;flex-direction:column;gap:12px;padding:28px;display:flex}.shared-wheel-gate-title{color:var(--text-color);font-size:1.375rem}.shared-wheel-gate-subtitle{color:var(--soft-text-color);font-size:.875rem}.shared-wheel-gate-input{border-radius:var(--radius-small);border:1px solid var(--border-color);background:var(--background-color);color:var(--text-color);padding:10px 12px;font-size:.9375rem}.shared-wheel-gate-input:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--soft-accent-color);outline:none}.shared-wheel-gate-error{color:var(--strong-warning-color);font-size:.8125rem}.toast{background:var(--elevated-background-color);border:1px solid var(--strong-border-color);border-radius:var(--radius);width:max-content;max-width:min(90vw,480px);box-shadow:var(--shadow);color:var(--text-color);z-index:20;align-items:center;gap:14px;padding:10px 18px;font-size:.875rem;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.toast-message{-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;min-width:0;display:-webkit-box;overflow:hidden}.toast-action{border-radius:var(--radius-small);color:var(--strong-accent-color);background:0 0;border:none;flex-shrink:0;padding:4px 8px;font-size:.875rem;font-weight:600}.toast-action:hover{background:var(--soft-accent-color)}@media (pointer:coarse){.toast-action{min-width:44px;min-height:44px}}.wheel-tabs-wrap{flex-direction:column;gap:0;width:100%;margin:0 auto;padding:0 20px;display:flex}.wheel-tabs{flex-wrap:wrap;align-items:stretch;gap:4px;padding:12px 0 0;display:flex}.wheel-tab{border-radius:var(--radius-small) var(--radius-small) 0 0;background:var(--soft-background-color);border-bottom:none;align-items:center;transition:background .12s;display:flex;position:relative;overflow:hidden}.wheel-tab:hover{background:var(--elevated-background-color)}.wheel-tab-active{background:var(--elevated-background-color);border-color:var(--strong-border-color);border-bottom:2px solid var(--accent-color);z-index:1}.wheel-tab-btn{color:var(--soft-text-color);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;align-items:center;gap:6px;max-width:180px;padding:8px 14px;font-size:.875rem;font-weight:500;display:flex;overflow:hidden}.wheel-tab-active .wheel-tab-btn{color:var(--text-color);font-weight:600}.wheel-tab-btn:hover{color:var(--text-color)}.wheel-tab-hotkeys{opacity:.55;gap:2px;display:inline-flex}.wheel-tab-delete{width:20px;height:20px;color:var(--muted-text-color);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-right:4px;font-size:1rem;line-height:1;transition:background .1s,color .1s;display:none;position:relative}.wheel-tab:hover .wheel-tab-delete{display:flex}.wheel-tab-delete:hover{background:rgba(var(--warning-color-rgb), .15);color:var(--warning-color)}.wheel-tab-rename-input{border:none;border-bottom:2px solid var(--accent-color);color:var(--text-color);background:0 0;outline:none;min-width:80px;max-width:180px;padding:6px 10px;font-size:.875rem;font-weight:600}.wheel-tab-add{border-radius:var(--radius-small) var(--radius-small) 0 0;border:1px dashed var(--border-color);color:var(--muted-text-color);cursor:pointer;background:0 0;border-bottom:none;justify-content:center;align-items:center;padding:8px 12px;font-size:1.125rem;line-height:1;transition:color .12s,border-color .12s,background .12s;display:flex}.wheel-tab-add:hover{color:var(--accent-color);border-color:var(--accent-color);background:var(--soft-accent-color)}.wheel-create-form{background:var(--elevated-background-color);border:1px solid var(--strong-border-color);border-radius:0 var(--radius-small) var(--radius-small) var(--radius-small);box-shadow:var(--shadow);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;animation:.12s slideDown;display:flex}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.wheel-create-name{border:1px solid var(--border-color);border-radius:var(--radius-small);background:var(--background-color);min-width:140px;color:var(--text-color);flex:1;padding:7px 10px;font-size:.875rem}.wheel-create-name:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--soft-accent-color);outline:none}.wheel-create-label{color:var(--soft-text-color);white-space:nowrap;align-items:center;gap:6px;font-size:.8125rem;display:flex}.wheel-create-select{border-radius:var(--radius-small);border:1px solid var(--border-color);background:var(--background-color);color:var(--text-color);padding:6px 8px;font-size:.8125rem}.wheel-create-reset{color:var(--soft-text-color);cursor:pointer;align-items:center;gap:6px;font-size:.8125rem;display:flex}.wheel-create-actions{gap:6px;margin-left:auto;display:flex}.wheel-tab-shared-icon{color:var(--soft-text-color);vertical-align:-1px;margin-right:4px}@media (pointer:coarse){.wheel-tab-delete:after{content:"";position:absolute;inset:-11px}}@media (hover:none){.wheel-tab-delete{display:flex}}.wheel-size-wrap{aspect-ratio:1;width:min(420px,100vw - 80px,60vh)}@media (width>=1440px){.wheel-size-wrap{width:min(480px,100vw - 80px,60vh)}}.wheel{justify-content:center;align-items:center;display:flex;position:relative}.wheel-rotor{will-change:transform;transform-origin:50%;justify-content:center;align-items:center;display:flex;position:relative}.wheel-canvas{box-shadow:0 0 0 4px var(--elevated-background-color), 0 0 0 5px var(--strong-border-color), var(--shadow);border-radius:50%;display:block}.wheel-pointer{border-left:14px solid #0000;border-right:14px solid #0000;border-top:22px solid var(--strong-accent-color);filter:drop-shadow(0 2px 3px #00000040);z-index:2;pointer-events:none;width:0;height:0;position:absolute;top:-10px;left:50%;transform:translate(-50%)}.keyboard-hint{--_keyboard-hint-background-color:color-mix(in srgb, currentColor 15%, transparent);--_keyboard-hint-border-color:color-mix(in srgb, currentColor 45%, transparent);--_keyboard-hint-text-color:color-mix(in srgb, currentColor 65%, transparent);border:1px solid var(--_keyboard-hint-border-color);background:var(--_keyboard-hint-background-color);letter-spacing:.03em;color:var(--_keyboard-hint-text-color);vertical-align:middle;pointer-events:none;-webkit-user-select:none;user-select:none;border-radius:4px;margin-left:7px;padding:2px 6px;font-family:inherit;font-size:.6875rem;font-weight:600;line-height:1.4;display:inline-block}.keyboard-hint-tag-pill{font-family:var(--monospace-font);background:#ffffff26;border:1px solid #ffffff59;border-radius:3px;margin-left:3px;padding:1px 4px;font-size:.625rem;line-height:1.4}@media (hover:none),(width<=599px){.keyboard-hint{display:none}}.post-spin{flex-direction:column;align-items:center;gap:14px;width:100%;display:flex;container-type:inline-size}.post-spin-result{flex-direction:column;align-items:center;gap:4px;width:100%;display:flex}.post-spin-label{color:var(--soft-text-color);text-transform:uppercase;letter-spacing:1px;font-size:.8125rem}.post-spin-name{letter-spacing:-.2px;text-align:center;font-size:clamp(1.125rem,4.5vw,1.375rem);font-weight:600}.post-spin-name-editable{cursor:pointer;border-radius:6px;padding:2px 6px;transition:background .12s,color .12s}.post-spin-name-editable:hover{background:var(--soft-accent-color);color:var(--strong-accent-color)}.post-spin-name-edit{letter-spacing:-.2px;text-align:center;background:var(--background-color);color:var(--text-color);border:2px solid var(--accent-color);box-shadow:0 0 0 3px var(--soft-accent-color);border-radius:6px;outline:none;width:100%;min-width:120px;padding:2px 10px;font-size:clamp(1.125rem,4.5vw,1.375rem);font-weight:600}.post-spin-decision{flex-wrap:wrap;justify-content:center;gap:10px;width:100%;display:flex}@container (width<=480px){.post-spin-decision .btn{flex:1 1 0;min-width:max-content;padding-left:17px;padding-right:17px}}.post-spin-feedback-header{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.post-spin-feedback-question{color:var(--muted-text-color);font-size:.9375rem}.post-spin-feedback{grid-template-columns:repeat(5,auto);grid-template-areas:"love like neutral dislike hate";justify-content:center;justify-items:center;gap:8px;width:100%;display:grid}.post-spin-feedback .btn{white-space:nowrap}@container (width<=700px){.post-spin-feedback{grid-template-columns:repeat(5,1fr);justify-content:stretch;justify-items:stretch;gap:6px}.post-spin-feedback .btn{padding-left:8px;padding-right:8px}}@container (width<=620px){.post-spin-feedback{flex-wrap:wrap;gap:8px;display:flex}.post-spin-feedback .btn{flex:1 1 0;min-width:max-content;padding-left:17px;padding-right:17px}.post-spin-feedback .btn-neutral{flex-basis:100%}}.post-spin-nav{flex-wrap:wrap;justify-content:center;gap:10px;width:100%;display:flex}.wheel-tag-empty{flex-direction:column;align-items:center;gap:10px;display:flex}@media (width<=599px){.post-spin-nav{width:100%}.post-spin-nav>*{flex:auto}}.wheel-view{background:var(--elevated-background-color);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;align-items:center;gap:22px;padding:28px 20px;display:flex;position:relative}.wheel-pin-btn{background:var(--soft-background-color);width:32px;height:32px;box-shadow:var(--shadow);cursor:pointer;color:var(--text-color);opacity:.55;border:none;border-radius:50%;justify-content:center;align-items:center;transition:opacity .15s,transform .15s;display:flex;position:absolute;top:12px;right:12px}.wheel-pin-btn:hover{opacity:1}.wheel-pin-btn.is-active{opacity:1;background:var(--accent-color);transform:rotate(-35deg)}.wheel-actions{flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:60px;display:flex}.wheel-empty,.wheel-spinning{color:var(--soft-text-color);margin:0;font-size:.9375rem}@media (pointer:coarse){.wheel-pin-btn{min-width:44px;min-height:44px}}@media (width<=599px){.wheel-pin-btn{top:8px;right:8px}}@media (height<=480px) and (orientation:landscape){.wheel-view{padding:12px 16px}}.icon-btn-love-it.is-last-rating:not(:hover){background:color-mix(in srgb, var(--love-color) 22%, var(--elevated-background-color));color:var(--strong-love-color)}.icon-btn-like-it.is-last-rating:not(:hover){background:color-mix(in srgb, var(--good-color) 22%, var(--elevated-background-color));color:var(--strong-good-color)}.icon-btn-neutral.is-last-rating:not(:hover){background:color-mix(in srgb, var(--neutral-color) 22%, var(--elevated-background-color));color:var(--strong-neutral-color)}.icon-btn-dislike-it.is-last-rating:not(:hover){background:color-mix(in srgb, var(--warning-color) 22%, var(--elevated-background-color));color:var(--strong-warning-color)}.icon-btn-hate-it.is-last-rating:not(:hover){background:color-mix(in srgb, var(--hate-color) 22%, var(--elevated-background-color));color:var(--strong-hate-color)}.how-was-it{gap:10px}.how-was-it-items{flex-direction:column;gap:4px;max-height:200px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.how-was-it-item{background:var(--background-color);border-radius:var(--radius-small);justify-content:space-between;align-items:center;gap:10px;padding:4px 8px;display:flex}.how-was-it-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.9375rem;font-weight:500;overflow:hidden}.how-was-it-actions{flex-shrink:0;gap:4px;display:flex}.how-was-it-dismiss{color:var(--muted-text-color);font-size:.8125rem}@media (pointer:coarse){.how-was-it-actions .icon-btn{min-width:44px;min-height:44px}}@media (width<=599px){.how-was-it-items{max-height:280px}.how-was-it-item{flex-wrap:wrap}.how-was-it-name{flex-basis:100%}.how-was-it-actions{flex-wrap:wrap}}.tag-color-picker{background:var(--elevated-background-color);border:1px solid var(--border-color);border-radius:var(--radius-small);box-shadow:var(--shadow);z-index:9001;flex-direction:column;gap:5px;min-width:200px;max-width:calc(100vw - 16px);padding:10px 12px;display:flex}.tag-color-picker-header{align-items:center;gap:4px;margin-bottom:4px;display:flex}.tag-color-picker-name-input{min-width:0;color:var(--text-color);box-sizing:border-box;background:0 0;border:1px solid #0000;border-radius:4px;flex:1;padding:2px 4px;font-size:.85rem;font-weight:600;display:block}.tag-color-picker-delete{border-radius:var(--radius-small);background:var(--elevated-background-color);width:24px;height:24px;color:var(--hate-color);border:none;border:1px solid rgba(var(--hate-color-rgb), .4);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.tag-color-picker-delete:hover{background:var(--hate-color);border-color:var(--hate-color);color:#fff}@media (prefers-color-scheme:dark){.tag-color-picker-delete{color:#ff8787;border-color:#ff87874d}}.tag-color-picker-name-input:focus{border-color:var(--border-color);background:var(--soft-background-color);outline:none}.tag-color-picker-name-error{color:var(--hate-color);margin-bottom:6px;font-size:.7rem}.tag-color-presets{flex-wrap:wrap;gap:5px;margin-bottom:8px;display:flex}.tag-color-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:22px;height:22px;padding:0;transition:transform 80ms,border-color 80ms;position:relative}.tag-color-swatch:hover{transform:scale(1.2)}.tag-color-swatch-active{border-color:var(--text-color)}.tag-color-picker-actions{border-top:1px solid var(--border-color);flex-wrap:wrap;align-items:center;gap:6px;padding-top:6px;display:flex}.tag-color-custom-label{color:var(--soft-text-color);align-items:center;gap:5px;font-size:.75rem;display:flex}.tag-color-custom-input{border:1px solid var(--border-color);cursor:pointer;background:0 0;border-radius:4px;width:32px;height:22px;padding:1px}@media (pointer:coarse){.tag-color-swatch:after{content:"";position:absolute;inset:-11px}}.activity-row{background:var(--background-color);border-radius:var(--radius-small);-webkit-user-select:none;user-select:none;border:none;flex-direction:row;align-items:stretch;padding:4px 10px 4px 0;transition:border-color .12s,background .12s;display:flex}.activity-row.is-selected{border-color:var(--accent-color);background:var(--soft-accent-color)}.activity-row-selector{cursor:pointer;flex-shrink:0;justify-content:center;align-items:flex-start;width:36px;min-width:36px;padding-top:6px;display:flex}.activity-row-selector-circle{border:1.5px solid #0000;border-color:var(--soft-border-color);pointer-events:none;background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;transition:border-color .1s,background .1s;display:flex}.activity-row:hover .activity-row-selector-circle,.activity-list-items.is-select-mode .activity-row-selector-circle{border-color:var(--strong-border-color)}.activity-row.is-selected .activity-row-selector-circle{background:var(--accent-color);border-color:var(--accent-color)}.activity-row-body{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.activity-row-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.activity-row-name-area{flex-wrap:wrap;flex:1;align-items:center;gap:4px 6px;min-width:0;display:flex}.activity-row-date{color:var(--muted-text-color);white-space:nowrap;flex-shrink:0;font-size:.75rem}.activity-row-feedback{flex-shrink:0;gap:4px;display:flex}.activity-row-name{text-align:left;color:var(--text-color);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;border-radius:4px;flex:0 auto;align-items:center;gap:8px;min-width:0;padding:0;font-size:.9375rem;font-weight:500;display:inline-flex;overflow:hidden}.activity-row-name:hover{color:var(--soft-text-color)}.activity-row-edit{border-radius:var(--radius-small);border:1px solid var(--accent-color);background:var(--background-color);min-width:0;box-shadow:0 0 0 3px var(--soft-accent-color);outline:none;flex:1;padding:5px 8px;font-size:.875rem}.meta-pill{background:var(--soft-background-color);border:1px solid var(--border-color);font-family:var(--monospace-font);color:var(--soft-text-color);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:1px 8px;font-size:.6875rem}.activity-row-pills{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;gap:6px;display:flex}.activity-row.is-compact .activity-row-top{flex:100%;align-items:center;gap:8px;min-width:0;display:flex}.activity-row.is-compact .activity-row-compact-primary{flex-wrap:wrap;flex:1 1 0;align-items:center;gap:6px 8px;min-width:0;display:flex}.activity-row.is-compact .activity-row-pills{flex-shrink:1}.activity-row.is-compact .activity-row-selector{align-items:center;width:28px;min-width:28px;padding-top:0;padding-left:8px;padding-right:8px}.activity-row.is-compact .activity-row-body{justify-content:center}.activity-row.is-compact .activity-row-name{flex:0 auto;min-width:40px;font-size:.8125rem}.activity-row.is-compact .activity-row-edit{flex:1;padding:3px 7px;font-size:.8125rem}.activity-row-compact-fields{flex:0 auto;align-items:center;gap:6px;min-width:0;display:flex}.activity-row-compact-fields.is-editing{flex:auto}.activity-row-compact-date{color:var(--muted-text-color);white-space:nowrap;flex-shrink:0;font-size:.75rem}.activity-row-compact-spacer{flex:1 1 0;min-width:0}.activity-row-compact-tags{scrollbar-width:none;flex-wrap:nowrap;flex:1 1 0;align-items:center;gap:4px;min-width:0;display:flex;overflow-x:auto}.activity-row-compact-tags::-webkit-scrollbar{display:none}.activity-row-compact-tags>*{flex-shrink:0}.activity-row.is-compact .icon-btn{width:26px;height:26px;font-size:.875rem}.icon-btn{border-radius:var(--radius-small);background:var(--elevated-background-color);width:30px;height:30px;color:var(--text-color);border:none;justify-content:center;align-items:center;font-size:1.0625rem;line-height:1;transition:background .12s,color .12s,border-color .12s,transform 80ms;display:inline-flex}.icon-btn:hover:not(:disabled){background:var(--soft-accent-color);border-color:var(--accent-color);color:var(--strong-accent-color)}.icon-btn:active:not(:disabled){background:var(--soft-accent-color);border-color:var(--accent-color);color:var(--strong-accent-color);transform:scale(.9)}.icon-btn-love-it:active:not(:disabled){background:var(--strong-love-color);border-color:var(--strong-love-color);color:#fff}.icon-btn-hate-it:active:not(:disabled){background:var(--strong-hate-color);border-color:var(--strong-hate-color);color:#fff}.icon-btn-love-it:hover:not(:disabled){background:var(--love-color);border-color:var(--strong-love-color);color:#fff}.icon-btn-hate-it:hover:not(:disabled){background:var(--hate-color);border-color:var(--strong-hate-color);color:#fff}.icon-btn-like-it:hover:not(:disabled){background:color-mix(in srgb, var(--good-color) 22%, var(--elevated-background-color));border-color:var(--good-color);color:var(--strong-good-color)}.icon-btn-like-it:active:not(:disabled){background:color-mix(in srgb, var(--good-color) 38%, var(--elevated-background-color));border-color:var(--strong-good-color);color:var(--strong-good-color)}.icon-btn-neutral:hover:not(:disabled){background:color-mix(in srgb, var(--neutral-color) 22%, var(--elevated-background-color));border-color:var(--neutral-color);color:var(--strong-neutral-color)}.icon-btn-neutral:active:not(:disabled){background:color-mix(in srgb, var(--neutral-color) 38%, var(--elevated-background-color));border-color:var(--strong-neutral-color);color:var(--strong-neutral-color)}.icon-btn-dislike-it:hover:not(:disabled){background:color-mix(in srgb, var(--warning-color) 22%, var(--elevated-background-color));border-color:var(--warning-color);color:var(--strong-warning-color)}.icon-btn-dislike-it:active:not(:disabled){background:color-mix(in srgb, var(--warning-color) 38%, var(--elevated-background-color));border-color:var(--strong-warning-color);color:var(--strong-warning-color)}.icon-btn-danger:hover:not(:disabled){background:var(--warning-color);border-color:var(--warning-color);color:#fff}.icon-btn-delete{color:var(--hate-color);border-color:rgba(var(--hate-color-rgb), .4);flex-shrink:0}.icon-btn-delete:hover:not(:disabled){background:var(--hate-color);border-color:var(--hate-color);color:#fff}@media (prefers-color-scheme:dark){.icon-btn-delete{color:#ff8787;border-color:#ff87874d}}.activity-row-tags{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.activity-tag-pill{background:var(--soft-background-color);color:var(--soft-text-color);white-space:nowrap;cursor:default;-webkit-user-select:none;user-select:none;border:none;border-radius:999px;align-items:center;gap:3px;padding:3px 8px;font-size:.6875rem;font-weight:500;transition:padding-right .1s;display:inline-flex;position:relative}.activity-tag-pill-suffix{flex-shrink:0;place-items:center;width:14px;height:14px;margin-left:2px;display:inline-grid}.activity-tag-count,.activity-tag-remove{grid-area:1/1}.activity-tag-count{opacity:.45;color:inherit;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:.5625rem;font-weight:600;line-height:1;transition:opacity .1s}.activity-tag-remove{width:14px;height:14px;color:inherit;opacity:0;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:.5625rem;line-height:1;transition:opacity .1s,background .1s;display:inline-flex;position:relative}.activity-row:hover .activity-tag-count{opacity:0}.activity-row:hover .activity-tag-remove{opacity:.7}.activity-tag-remove:hover{background:#00000026;opacity:1!important}.activity-tag-add{border:1px dashed var(--strong-border-color);color:var(--muted-text-color);cursor:pointer;white-space:nowrap;opacity:0;background:0 0;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:2px 8px;font-size:.6875rem;font-weight:500;transition:border-color .1s,color .1s,background .1s;display:inline-flex}.activity-row:hover .activity-tag-add,.activity-tag-add:focus{opacity:1}.activity-tag-add:hover{border-color:var(--accent-color);color:var(--accent-color);background:var(--soft-accent-color)}.tag-combobox-dropdown{background:var(--elevated-background-color);border:1px solid var(--border-color);border-radius:var(--radius-small);box-shadow:var(--shadow);z-index:9000;max-width:calc(100vw - 16px);overflow:hidden}.tag-combobox-input{border:none;border-bottom:1px solid var(--border-color);background:var(--background-color);width:100%;color:var(--text-color);outline:none;padding:8px 10px;font-size:.8125rem;display:block}.tag-combobox-input:focus{border-bottom-color:var(--accent-color);box-shadow:inset 0 -2px 0 var(--accent-color)}.tag-combobox-list{max-height:200px;margin:0;padding:4px 0;list-style:none;overflow-y:auto}.tag-combobox-option{color:var(--text-color);cursor:pointer;padding:7px 12px;font-size:.8125rem;transition:background 80ms}.tag-combobox-option:hover{background:var(--soft-accent-color);color:var(--strong-accent-color)}.tag-combobox-create{color:var(--strong-accent-color);font-style:italic}.tag-combobox-empty{color:var(--muted-text-color);padding:8px 12px;font-size:.75rem;font-style:italic;list-style:none}@media (pointer:coarse) and (width>=600px){.icon-btn{min-width:44px;min-height:44px}.activity-row.is-compact .icon-btn{min-width:34px;min-height:34px}}@media (pointer:coarse) and (width<=599px){.activity-row:not(.is-compact) .icon-btn{min-width:44px;min-height:44px}}@media (hover:none){.activity-tag-remove{opacity:.7}.activity-tag-count{opacity:0}.activity-tag-add{opacity:1}}@media (width<=599px){.activity-row-body{gap:8px}.activity-row.is-compact .activity-row-feedback .icon-btn:not(.icon-btn-delete){display:none}.activity-row-top{display:contents}.activity-row.is-compact .activity-row-top{display:flex}.activity-row-name-area{order:1}.activity-row-pills{order:2;justify-content:flex-start}.activity-row-tags{order:3}.activity-row-feedback{flex-wrap:wrap;order:4}.icon-btn,.activity-row.is-compact .icon-btn{width:var(--icon-toggle-button-size);height:var(--icon-toggle-button-size)}}.icon-toggle-button{height:var(--icon-toggle-button-size);aspect-ratio:1;border-radius:var(--radius-small);background:var(--background-color);color:var(--text-color);border:none;flex-shrink:0;justify-content:center;align-items:center;transition:background .12s,color .12s;display:inline-flex}.icon-toggle-button:hover:not(:disabled){background:var(--soft-accent-color)}.icon-toggle-button.is-active,.icon-toggle-button.is-active:hover:not(:disabled){background:var(--soft-accent-color);color:var(--strong-accent-color)}.activity-list{gap:var(--spacing-extra-large);flex-direction:column;display:flex}.activity-list-controls{gap:var(--spacing-extra-large);flex-wrap:wrap;align-items:center;display:flex}.activity-list-buttons{justify-content:space-between;align-items:center;gap:var(--spacing-extra-large);flex:auto;min-width:0;display:flex}.activity-list-toggle-group{gap:var(--spacing-small);flex:none;display:flex}.activity-list-controls.is-hidden{visibility:hidden;pointer-events:none}.activity-list-search{border-radius:var(--radius-small);background:var(--background-color);border:none;flex:999 0 160px;min-width:160px;padding:8px 12px;font-size:.875rem}.activity-list-search:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--soft-accent-color);outline:none}.activity-list-sort{align-items:center;gap:var(--spacing-medium);flex:auto;min-width:0;display:flex}.activity-list-sort-label{color:var(--soft-text-color);flex-shrink:0;font-size:.8125rem}.activity-list-sort-select{border-radius:var(--radius-small);background:var(--background-color);white-space:nowrap;text-overflow:ellipsis;border:none;flex:auto;min-width:0;max-width:max-content;padding:7px 8px;font-size:.875rem;overflow:hidden}.activity-list-empty{color:var(--soft-text-color);margin:8px 0;font-size:.875rem;font-style:italic}.activity-list-items{gap:var(--spacing-medium);max-height:480px;scroll-padding-block:var(--spacing-large);scrollbar-width:none;flex-direction:column;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.activity-list-items::-webkit-scrollbar{display:none}.activity-list-items.is-compact{gap:var(--spacing-extra-small);max-height:none}.activity-list-header{position:relative;container-type:inline-size}.activity-list-batch-bar{align-items:center;gap:var(--spacing-large);background:var(--soft-accent-color);border:1px solid var(--accent-color);border-radius:var(--radius-small);flex-wrap:wrap;padding:0 12px;display:flex;position:absolute;inset:0}.batch-count{color:var(--strong-accent-color);flex:1;min-width:max-content;font-size:.8125rem;font-weight:600}.batch-clear-btn{color:var(--soft-text-color)}@media (width<=599px){.activity-list-items{max-height:min(480px,55vh)}.activity-list-sort-label{display:none}.activity-list-buttons{gap:var(--spacing-medium)}}.add-activity{gap:10px;display:flex}.add-activity-input{border-radius:var(--radius-small);background:var(--background-color);color:var(--text-color);border:none;flex:1;padding:10px 12px;font-size:.875rem;transition:border-color .12s,box-shadow .12s}.add-activity-input:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--soft-accent-color);outline:none}@media (width<=599px){.add-activity{flex-wrap:wrap}.add-activity-input{flex-basis:100%}}.debug-panel{background:var(--elevated-background-color);border-radius:var(--radius);border:none;padding:8px 14px}.debug-panel+.backup,.backup+.debug-panel{margin-top:10px}.debug-panel-summary{cursor:pointer;color:var(--soft-text-color);-webkit-user-select:none;user-select:none;padding:6px 0;font-size:.875rem;font-weight:500}.debug-panel-body{flex-direction:column;gap:10px;padding:8px 0 12px;display:flex}.debug-row{align-items:center;gap:8px;font-size:.875rem;display:flex}.debug-row-stack{flex-direction:column;align-items:flex-start;gap:4px}.debug-seed{border-radius:var(--radius-small);background:var(--background-color);width:100%;max-width:280px;font-family:var(--monospace-font);border:none;padding:7px 9px;font-size:.8125rem}.debug-slider{width:100%;max-width:420px;accent-color:var(--accent-color)}.backup{background:var(--elevated-background-color);border-radius:var(--radius);border:none;padding:8px 14px}.backup-summary{cursor:pointer;color:var(--soft-text-color);-webkit-user-select:none;user-select:none;padding:6px 0;font-size:.875rem;font-weight:500}.backup-body{flex-direction:column;gap:10px;padding:8px 0 12px;display:flex}.backup-help{color:var(--soft-text-color);margin:0;font-size:.8125rem}.backup-actions{flex-wrap:wrap;gap:8px;display:flex}.backup-status{color:var(--soft-text-color);margin:0;font-size:.8125rem}@media (width<=599px){.backup-actions{width:100%}.backup-actions .btn{flex:1}}.tag-filter-bar{background:var(--elevated-background-color);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:10px;padding:12px 16px;display:flex}.tag-filter-bar-active{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--soft-accent-color), var(--shadow)}.tag-filter-top-row{align-items:center;gap:8px;display:flex}.tag-filter-search{border-radius:var(--radius-small);background:var(--background-color);color:var(--text-color);border:none;flex:1;min-width:0;padding:7px 10px;font-size:.8125rem}.tag-filter-search:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--soft-accent-color);outline:none}.tag-filter-mode-toggle{letter-spacing:.06em;border-radius:var(--radius-small);background:var(--soft-background-color);color:var(--soft-text-color);border:none;flex-shrink:0;padding:5px 10px;font-size:.6875rem;font-weight:700;transition:background .12s,color .12s,border-color .12s}.tag-filter-mode-toggle:hover:not(:disabled){border-color:var(--accent-color);color:var(--strong-accent-color)}.tag-filter-mode-and{background:var(--accent-color);border-color:var(--accent-color);color:#fff}.tag-filter-mode-and:hover:not(:disabled){background:var(--strong-accent-color);border-color:var(--strong-accent-color);color:#fff}.tag-filter-pills{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tag-pill{background:var(--soft-background-color);color:var(--soft-text-color);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;border:none;border-radius:999px;align-items:center;gap:3px;padding:5px 11px;font-size:.75rem;font-weight:500;transition:background .1s,color .1s,border-color .1s,box-shadow .1s;display:inline-flex}.tag-pill:hover{border-color:var(--accent-color);color:var(--strong-accent-color);background:var(--soft-accent-color)}.tag-pill-active{background:var(--accent-color);border-color:var(--accent-color);color:#fff}.tag-pill-active:hover{background:var(--strong-accent-color);border-color:var(--strong-accent-color);color:#fff}.tag-pill-untagged{font-style:italic}.tag-pill:not(.tag-pill-active) .keyboard-hint-tag-pill{color:var(--muted-text-color);background:#00000012;border-color:#0000002e}@media (width<=599px){.tag-filter-pills{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}}
