@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap";:root{color-scheme:dark;--text-secondary: #a0a0a0;--accent: #646cff;--accent-hover: #535bf2;--border: #333;--error: #ff4d4d;--success: #4caf50;--warning: #ff9800;--surface: #1a1a1a;--surface-hover: #242424}html,body,#root{height:100%}body{margin:0;background:#011502;color:#9ec5ab;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Inter,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol}.segmented-control{display:flex;background:var(--surface);border-radius:8px;padding:4px;gap:4px;border:1px solid var(--border)}.segment{flex:1;padding:6px 12px;border:none;background:transparent;color:var(--text-secondary);border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.segment:hover{color:var(--text-primary);background:var(--surface-hover)}.segment.active{background:var(--accent);color:var(--bg)}.error-text{font-size:12px;color:var(--error);margin-top:4px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}:root{--bg: #011502;--card: #011502;--border: #104f55;--text-primary: #9ec5ab;--text-secondary: #32746d;--accent: #9ec5ab;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px;--space-5: 48px;--space-6: 64px;--shadow: 0 2px 8px rgba(0, 0, 0, .15);--shadow-hover: 0 4px 16px rgba(0, 0, 0, .25)}*{box-sizing:border-box}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;font-weight:400;line-height:1.5;color:var(--text-primary);background:var(--bg);overflow-x:hidden;min-height:100dvh}#root{min-height:100dvh}.layout{color:var(--text-primary);min-height:100dvh;display:grid;grid-template-rows:auto auto 1fr auto;grid-template-areas:"header" "scramble" "main" "footer";padding:var(--space-2);box-sizing:border-box;animation:fadeIn .3s ease-out;max-width:100%;overflow-x:hidden;overflow-y:visible;width:100%;position:relative}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.header{grid-area:header;display:grid;grid-template-columns:auto 1fr auto;align-items:center;padding:var(--space-2) 0;animation:slideUp .4s ease-out .1s both;position:relative;z-index:100}.header-left{display:flex;align-items:center;gap:var(--space-2);justify-self:start;margin-left:var(--space-3)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.logo{font-family:JetBrains Mono,Courier New,monospace;font-size:32px;font-weight:700;color:var(--text-primary);letter-spacing:-.02em;display:flex;align-items:center}.logo-link{text-decoration:none;color:inherit;transition:transform .2s ease}.logo-link:hover{transform:scale(1.05)}.icon{width:20px;height:20px;display:block}.scramble-layer{grid-area:scramble;display:flex;justify-content:center;align-items:center;padding:var(--space-2) 0;animation:slideUp .4s ease-out .2s both;width:100%;max-width:100vw;min-width:0;box-sizing:border-box;overflow-x:hidden}.header-right{justify-self:end;display:flex;gap:var(--space-2);margin-right:var(--space-3)}.header-link{background:transparent;border:none;color:var(--text-primary);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);font-family:Inter,sans-serif;font-size:18px;font-weight:500;text-decoration:none;transition:all .2s ease;animation:slideUp .4s ease-out .1s both;display:flex;align-items:center;justify-content:center;min-width:0;height:36px;box-sizing:border-box}.header-link:hover{transform:scale(1.1)!important}.help-tooltip{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:12px;background:var(--bg);border:1px solid var(--accent);border-radius:8px;padding:8px 12px;box-shadow:var(--shadow);z-index:1000;white-space:nowrap;animation:fadeIn .3s ease-out}.help-tooltip-content{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-primary)}.help-tooltip-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:16px;padding:0;line-height:1;display:flex;align-items:center}.help-tooltip-close:hover{color:var(--text-primary)}.help-tooltip-arrow{position:absolute;top:-5px;left:50%;transform:translate(-50%) rotate(45deg);width:8px;height:8px;background:var(--bg);border-left:1px solid var(--accent);border-top:1px solid var(--accent)}.card{background:var(--bg);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);padding:var(--space-3)}.tabs{display:flex;align-items:center;gap:var(--space-2)}.tab{background:#9ec5ab0f;color:var(--text-secondary);border:1px solid transparent;border-radius:var(--radius-md);padding:10px 16px;cursor:pointer;font-family:Inter,sans-serif;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:8px;font-size:14px}.tab:hover{background:#9ec5ab1f;color:var(--text-primary);transform:translateY(-1px)}.tab.active{background:var(--text-primary);color:var(--bg);border-color:transparent;box-shadow:0 2px 8px #9ec5ab4d}.tab-icon{opacity:.8}.tab.active .tab-icon{opacity:1}.tabs-spacer{flex:1}.form{display:grid;gap:var(--space-2);margin-top:var(--space-2)}.form-row{display:grid;gap:6px}.form-row label{color:var(--text-secondary);font-size:12px}.input{background:#9ec5ab0f;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text-primary);padding:10px 12px;outline:none;font-family:Inter,sans-serif;font-size:16px}.input:focus{background:#9ec5ab0f}.input:-webkit-autofill,.input:-webkit-autofill:hover,.input:-webkit-autofill:focus,.input:-webkit-autofill:active{-webkit-box-shadow:0 0 0px 1000px rgba(158,197,171,.06) inset!important;-webkit-text-fill-color:var(--text-primary)!important;caret-color:var(--text-primary)!important}.input:focus{border-color:transparent;box-shadow:0 0 0 3px #9ec5ab1f}.input::placeholder{color:var(--text-primary)}.form-actions{display:flex;gap:var(--space-2)}.btn{background:#9ec5ab0f;color:var(--text-primary);border:1px solid transparent;border-radius:var(--radius-md);padding:10px 14px;cursor:pointer;transition:all .2s ease;font-family:Inter,sans-serif}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-hover)}.btn:disabled{cursor:not-allowed}.btn.ghost,.btn.dark{background:#9ec5ab0f;color:var(--text-primary)}.toast-container{position:fixed;right:24px;bottom:24px;display:grid;gap:8px;z-index:1000}.toast{background:#011502e6;border:1px solid var(--border);color:var(--text-primary);padding:10px 12px;border-radius:8px;box-shadow:var(--shadow)}.toast.success{border-color:#2e7d32}.toast.error{border-color:#c62828}.toast.info{border-color:var(--border)}.main{grid-area:main;display:flex;flex-direction:column;align-items:center;justify-content:center;animation:slideUp .4s ease-out .3s both;padding-bottom:15vh;width:100%;max-width:100vw;min-width:0;box-sizing:border-box;overflow-x:hidden;position:relative;z-index:1}.scramble-wrapper{width:100%;max-width:100vw;min-width:0;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;gap:1rem}.scramble-container{display:flex;align-items:center;gap:var(--space-2);background:#9ec5ab14;border-radius:999px;padding:6px 12px;width:fit-content;max-width:100%;min-width:0;flex-wrap:wrap;justify-content:center;box-sizing:border-box}.scramble-loading{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:14px;font-family:JetBrains Mono,monospace}.spinner-small{width:14px;height:14px;border:2px solid rgba(158,197,171,.2);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@media (max-width: 768px) and (orientation: portrait){.scramble-container{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto;gap:.5rem;padding:8px 12px;justify-items:center}.scramble-container .scramble-text{grid-row:1;grid-column:1;width:100%;text-align:center;padding:0}.scramble-container .scramble-nav-btn:first-of-type{grid-row:2;grid-column:1;justify-self:start}.scramble-container .scramble-nav-btn:last-of-type{grid-row:2;grid-column:1;justify-self:end}}.scramble-nav-btn{background:transparent;color:var(--text-secondary);border:none;cursor:pointer;transition:all .2s ease;font-size:20px;padding:var(--space-1);border-radius:var(--radius-md);font-family:Inter,sans-serif;font-weight:500}.scramble-nav-btn:hover{color:var(--text-primary);transform:scale(1.02);background:#9ec5ab1a}.scramble-text{font-family:JetBrains Mono,Courier New,monospace;font-size:18px;font-weight:500;color:var(--text-primary);word-break:break-word}.scramble-visualization{width:100%;height:200px;display:flex;justify-content:center;align-items:center;margin-top:var(--space-2)}.timer-container{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;width:100%;max-width:100vw;min-width:0;text-align:center;box-sizing:border-box;z-index:1;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;cursor:pointer}.timer-abort-btn{display:none;position:fixed;top:20px;right:20px;background:#ffffff1a;border:none;color:var(--text-secondary);width:44px;height:44px;border-radius:50%;font-size:24px;cursor:pointer;z-index:9999;touch-action:manipulation;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@media (max-width: 768px){.timer-abort-btn{display:flex}}.timer-display{font-family:JetBrains Mono,Courier New,monospace;font-size:80px;font-weight:400;font-variant-numeric:tabular-nums;color:var(--text-primary);letter-spacing:-.02em;line-height:1;transition:color .2s ease;text-align:center;width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow-wrap:break-word;word-break:break-word}.timer-display.ready,.timer-display.ready-red{color:var(--error)}.timer-display.ready-green{color:var(--accent)}.timer-display.timing{color:var(--error)}.timer-display.stopped{color:var(--text-primary)}.timer-container:after{content:"hold space to start timer";position:absolute;bottom:-60px;left:50%;transform:translate(-50%);font-family:Inter,sans-serif;font-size:12px;font-weight:400;color:var(--text-secondary);text-align:center;white-space:nowrap;transition:opacity .2s ease;max-width:100vw;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis}.timer-container.focused:after{opacity:0}.timer-container{transition:transform .3s ease}.timer-container.focused{transform:scale(1.1)}.timer-display{transition:font-size .3s ease}.timer-display.focused{font-size:120px}.hidden{display:none!important}.footer{grid-area:footer;display:flex;justify-content:center;align-items:center;padding-top:var(--space-2);padding-bottom:var(--space-4);animation:slideUp .4s ease-out .4s both;transition:all .3s ease;position:relative;z-index:10;width:100%;max-width:100vw;min-width:0;box-sizing:border-box}.session-container{width:100%;max-width:min(560px,100vw);min-width:0;position:relative;height:44px;overflow:visible;margin:0 auto;box-sizing:border-box;z-index:10}.solves-list-container{width:100%;max-width:min(560px,100vw);min-width:0;box-sizing:border-box}.session-collapsed{width:100%;background:var(--bg);border-radius:12px;box-shadow:var(--shadow);height:44px;display:flex;align-items:center;position:relative;transition:all .2s ease;opacity:1;transform:scale(1)}.session-collapsed:hover{box-shadow:var(--shadow-hover);transform:scale(1.02)}.session-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:10px 14px;border-radius:12px;background:transparent;transition:all .2s ease;height:44px;box-sizing:border-box}.session-header:hover{box-shadow:var(--shadow-hover);transform:scale(1.02)}.session-header.expanded{box-shadow:none;border-radius:0 0 12px 12px}.session-left{display:flex;flex-direction:column;gap:var(--space-1)}.latest-solve{font-family:JetBrains Mono,monospace;font-size:16px;font-weight:600;color:var(--text-primary)}.latest-scramble{font-family:JetBrains Mono,monospace;font-size:12px;color:var(--text-secondary)}.session-title{font-family:Inter,sans-serif;font-weight:600;font-size:16px;color:var(--text-primary)}.session-toggle{font-family:JetBrains Mono,monospace;font-size:18px;color:var(--text-secondary);font-weight:600}.solves-list{position:absolute;bottom:100%;left:0;right:0;background:var(--bg);border-radius:12px 12px 0 0;box-shadow:var(--shadow);max-height:0;overflow:hidden;transition:max-height .3s ease-out;z-index:10}.solves-list.expanded{max-height:300px;overflow-y:auto}.solve-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;width:100%;box-sizing:border-box;transition:background-color .2s ease}.session-collapsed .solve-item{padding:8px 12px}.solve-index{font-family:JetBrains Mono,monospace;font-size:clamp(10px,min(1.2vw,1.2vh),14px);color:var(--text-secondary);font-weight:500;flex-shrink:0;min-width:fit-content;white-space:nowrap}.solve-inline{display:flex;align-items:baseline;gap:clamp(4px,min(1vw,1vh),16px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-right:clamp(4px,min(1vw,1vh),16px);flex:1;min-width:0}.solve-inline>.solve-time+.solve-avg+.solve-avg{margin-left:clamp(8px,min(1.5vw,1.5vh),24px)}.solve-time{font-family:JetBrains Mono,monospace;font-size:clamp(10px,min(1.2vw,1.2vh),14px);color:var(--text-primary);font-weight:600;flex-shrink:0;white-space:nowrap}.solve-avg{color:var(--text-secondary);font-family:JetBrains Mono,monospace;font-size:clamp(9px,min(1vw,1vh),12px);flex-shrink:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.solve-menu{position:fixed;inset:auto;background:#011502f2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 32px #0006;padding:6px;z-index:9999;min-width:min(220px,90vw);max-width:min(220px,90vw);width:min(220px,90vw);display:flex;flex-direction:column;gap:4px;margin-bottom:8px;transform-origin:bottom center;animation:menuPop .2s cubic-bezier(.16,1,.3,1);box-sizing:border-box;overflow-y:auto;overflow-x:hidden}@keyframes menuPop{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.menu-item{background:transparent;border:none;color:var(--text-primary);padding:10px 12px;text-align:left;cursor:pointer;font-family:Inter,sans-serif;font-size:14px;font-weight:500;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:space-between}.menu-item:hover{background:#9ec5ab1a;transform:translate(2px)}.menu-item.active{background:#ff6b6b1a;color:#ff6b6b}.menu-divider{height:1px;background:var(--border);margin:4px 0}.menu-scramble{padding:8px 12px;font-family:JetBrains Mono,monospace;font-size:12px;color:var(--text-secondary);word-break:break-all;line-height:1.4}.solve-actions{display:flex;gap:4px}.solve-btn{background:transparent;border:none;color:var(--text-secondary);padding:8px;border-radius:50%;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.solve-btn:hover{background:#8080801a;color:var(--text-primary)}.solve-btn.danger{background:transparent;color:var(--text-secondary)}.solve-btn.danger:hover{background:transparent;color:var(--text-primary)}.solve-scramble-full{grid-column:1 / -1;background:#9ec5ab0d;padding:var(--space-2);margin-top:var(--space-1);border-radius:6px;font-family:JetBrains Mono,monospace;font-size:12px;color:var(--text-secondary);word-break:break-all}.no-solves{padding:var(--space-4);text-align:center;color:var(--text-secondary);font-style:italic}@media (max-width: 768px){:root{--space-1: 1vw;--space-2: 2vw;--space-3: 3vw;--space-4: 4vw;--space-5: 6vw;--space-6: 8vw}body{font-size:clamp(10px,min(3vw,3vh),14px);overflow-x:hidden;width:100vw;max-width:100vw;box-sizing:border-box}.layout{width:100%;max-width:100vw;overflow-x:hidden;padding:var(--space-1)}.timer-display{font-size:clamp(20px,min(18vw,18vh),120px);line-height:1;width:100%;max-width:100vw;box-sizing:border-box}.scramble-text{font-size:clamp(6px,min(2.5vw,2.5vh),14px);line-height:1.2;padding:0 1vw;width:100%;max-width:100%;box-sizing:border-box;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:normal!important;text-align:center}.scramble-nav-btn{padding:0;font-size:clamp(14px,min(5vw,5vh),20px);min-width:0;flex-shrink:1}.footer{flex-direction:column;gap:var(--space-1);padding-bottom:var(--space-1);width:100%;max-width:100vw;min-width:0;box-sizing:border-box;overflow-x:hidden}.header{display:flex;flex-wrap:nowrap;align-items:center;gap:1vw;padding:1vw 0;width:100%;max-width:100vw;min-width:0;overflow:visible;box-sizing:border-box}.header-left{display:flex;align-items:center;flex:1;min-width:0;gap:1vw;box-sizing:border-box}.header-right{display:flex;align-items:center;flex:0 0 auto;gap:1vw;min-width:0;box-sizing:border-box}.logo-link{margin-right:0}.header-link{padding:.5vw;min-width:0;width:auto;height:auto;flex-shrink:1}.icon{width:clamp(14px,min(4vw,4vh),20px);height:clamp(14px,min(4vw,4vh),20px);flex-shrink:0}.header-control{flex:1;width:auto;min-width:0;margin-top:0;order:unset;position:static}.session-manager{position:static;width:100%}.session-selector{width:100%;min-width:0}.session-trigger{width:100%;min-width:0;justify-content:space-between;padding:1vw;font-size:clamp(10px,min(3.5vw,3.5vh),14px);gap:1vw;white-space:nowrap;overflow:hidden;box-sizing:border-box}.logo{font-size:clamp(16px,min(5vw,5vh),24px);min-width:0;flex-shrink:1}.session-dropdown{width:min(94vw,400px);min-width:0;max-width:min(94vw,400px);max-height:50vh;overflow-y:auto;position:absolute;left:50%;transform:translate(-50%);top:100%;right:auto;z-index:1000;margin-top:4px;box-sizing:border-box;padding:clamp(2px,1vw,4px);margin-left:clamp(-47vw,-200px,0)}.session-option-main{padding:clamp(4px,1.5vw,8px);font-size:clamp(10px,min(3.5vw,3.5vh),14px);min-width:0;box-sizing:border-box}.session-option-wrapper{min-width:0;box-sizing:border-box}.option-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.option-type{font-size:clamp(8px,min(2vw,2vh),12px);min-width:0;flex-shrink:0}.session-actions{min-width:0;flex-shrink:0}.action-btn{padding:clamp(2px,.5vw,4px);font-size:clamp(10px,min(2.5vw,2.5vh),14px);min-width:0}.session-name{max-width:100%;overflow:hidden;text-overflow:ellipsis}.session-header{height:auto;min-height:0;padding:1vmin}.session-collapsed{height:auto;min-height:0}.latest-solve{font-size:clamp(10px,min(2.5vw,2.5vh),14px)}.session-title{font-size:clamp(8px,min(2.2vw,2.2vh),12px)}.solve-item{padding:1vw;height:auto;min-height:0;min-width:0;box-sizing:border-box}.solve-time,.solve-index{font-size:clamp(7px,min(2vw,2vh),11px)}.solve-avg{font-size:clamp(8px,min(2vw,2vh),12px)}.solve-inline{gap:clamp(3px,min(1.5vw,1.5vh),12px)}.solve-inline>.solve-time+.solve-avg+.solve-avg{margin-left:clamp(6px,min(1.5vw,1.5vh),20px)}@media (orientation: portrait){.ao100-display{display:none!important}}.latest-scramble{font-size:clamp(8px,min(2vw,2vh),11px)}.session-toggle{font-size:clamp(10px,min(2.5vw,2.5vh),14px)}.tour-tooltip{max-width:95vw!important;min-width:0!important;padding:clamp(1rem,3vw,1.5rem)!important;max-height:75vh!important;overflow-y:auto;left:50%!important;transform:translate(-50%)!important;right:auto!important;box-sizing:border-box!important}.tour-tooltip h3{font-size:clamp(14px,min(4.5vw,4.5vh),18px)!important;margin-bottom:clamp(.5rem,1.5vw,1rem)!important}.tour-tooltip p{font-size:clamp(11px,min(3.5vw,3.5vh),14px)!important;line-height:1.5!important;margin-bottom:clamp(1rem,2vw,1.5rem)!important}.tour-actions{margin-top:clamp(1rem,2vw,1.5rem)!important;gap:clamp(.5rem,1.5vw,1rem)!important}.tour-actions .btn{padding:clamp(.4rem,1.5vw,.5rem) clamp(.8rem,3vw,1rem)!important;font-size:clamp(11px,min(3.5vw,3.5vh),13px)!important;min-width:0!important}.tour-progress{font-size:clamp(10px,min(2.5vw,2.5vh),12px)!important}.tour-tooltip .keybindings-list li{font-size:clamp(10px,min(3vw,3vh),13px)!important;padding:clamp(4px,1vw,6px) 0!important}.tour-tooltip .keybindings-list kbd{font-size:clamp(9px,min(2.5vw,2.5vh),11px)!important;padding:clamp(2px,.5vw,3px) clamp(4px,1vw,5px)!important}.tour-tooltip .key-combo{font-size:clamp(10px,min(3vw,3vh),13px)!important;gap:clamp(3px,.8vw,5px)!important}.main{padding-bottom:5vh;width:100%;max-width:100vw;min-width:0;overflow-x:hidden;box-sizing:border-box;position:relative;z-index:1}.footer{position:relative;z-index:20}.session-container{z-index:20}.solves-list-container{z-index:200}.solves-list-container.expanded{z-index:200;max-height:min(600px,85vh)!important}.scramble-visualization{width:100%;max-width:100vw;min-width:0;height:clamp(80px,min(20vw,20vh),150px);transform:scale(.6)!important;transform-origin:center top!important;margin-top:-1vw;box-sizing:border-box;overflow:hidden}}@media (max-width: 900px) and (orientation: landscape){.layout{grid-template-rows:auto 1fr auto;grid-template-areas:"header" "main" "footer";padding:var(--space-1);height:100dvh;overflow:hidden;width:100%;max-width:100vw;min-width:0;box-sizing:border-box}.header{padding:4px 0;width:100%;max-width:100vw;min-width:0;box-sizing:border-box}.logo{font-size:clamp(16px,min(5vw,5vh),20px);min-width:0}.header-link{padding:4px;min-width:0;height:32px;box-sizing:border-box}.main{flex-direction:row;padding-bottom:0;gap:var(--space-3);align-items:center;width:100%;max-width:100vw;min-width:0;box-sizing:border-box;overflow-x:hidden}.scramble-layer{position:absolute;top:50px;left:0;right:0;z-index:10;pointer-events:none;width:100%;max-width:100vw;min-width:0;box-sizing:border-box}.scramble-container{pointer-events:auto;background:#011502cc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:4px 12px;max-width:100vw;min-width:0;box-sizing:border-box}.scramble-text{font-size:clamp(10px,min(3.5vw,3.5vh),14px)}.timer-display{font-size:clamp(60px,min(18vw,18vh),120px);width:100%;max-width:100vw;min-width:0;box-sizing:border-box}.footer{padding:4px;position:absolute;bottom:0;left:0;right:0;background:transparent;pointer-events:none;width:100%;max-width:100vw;min-width:0;box-sizing:border-box}.session-container{pointer-events:auto;margin:0 auto 4px;width:calc(100% - 2 * var(--space-2));max-width:560px;min-width:0;box-sizing:border-box}@media (max-width: 768px){.timer-container:after{content:"tap and hold to start"}}.scramble-visualization{display:none!important}}.solves-list-container{background:var(--bg);border-radius:12px;box-shadow:var(--shadow);transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden;position:fixed;bottom:var(--space-4);left:0;right:0;margin:0 auto;transform:translateY(20px);width:calc(100% - 2 * var(--space-2));max-width:560px;z-index:100;max-height:0;opacity:0;pointer-events:none;visibility:hidden;transform-origin:bottom center;will-change:transform,opacity,max-height;box-sizing:border-box}.solves-list-container:hover{box-shadow:var(--shadow-hover)}.solves-list-container.expanded{max-height:min(400px,70vh);opacity:1;transform:translateY(0);overflow-y:auto;pointer-events:auto;visibility:visible;z-index:9999}@media (max-width: 768px){.timer-container{width:80%!important;max-width:300px;margin:0 auto}}@media (orientation: portrait){.solves-list-container.expanded{max-height:min(600px,85vh)!important}.tour-tooltip{max-width:92vw!important;padding:clamp(1rem,4vw,1.5rem)!important;max-height:80vh!important}.tour-tooltip h3{font-size:clamp(16px,min(5vw,5vh),20px)!important}.tour-tooltip p{font-size:clamp(12px,min(4vw,4vh),15px)!important}.tour-actions .btn{padding:clamp(.5rem,2vw,.6rem) clamp(1rem,4vw,1.2rem)!important;font-size:clamp(12px,min(4vw,4vh),14px)!important}.tour-tooltip .keybindings-list li{font-size:clamp(11px,min(3.5vw,3.5vh),14px)!important;padding:clamp(5px,1.2vw,7px) 0!important}.tour-tooltip .keybindings-list kbd{font-size:clamp(10px,min(3vw,3vh),12px)!important;padding:clamp(2px,.6vw,4px) clamp(4px,1.2vw,6px)!important}.tour-tooltip .key-combo{font-size:clamp(11px,min(3.5vw,3.5vh),14px)!important;gap:clamp(4px,1vw,6px)!important}}@media (orientation: landscape) and (max-width: 900px){.tour-tooltip{max-width:85vw!important;padding:clamp(.8rem,2vw,1.2rem)!important;max-height:70vh!important}.tour-tooltip h3{font-size:clamp(13px,min(3.5vw,3.5vh),16px)!important}.tour-tooltip p{font-size:clamp(10px,min(3vw,3vh),13px)!important}.tour-actions .btn{padding:clamp(.3rem,1vw,.4rem) clamp(.6rem,2vw,.8rem)!important;font-size:clamp(10px,min(3vw,3vh),12px)!important}.tour-tooltip .keybindings-list li{font-size:clamp(9px,min(2.5vw,2.5vh),12px)!important;padding:clamp(3px,.8vw,5px) 0!important}.tour-tooltip .keybindings-list kbd{font-size:clamp(8px,min(2vw,2vh),10px)!important;padding:clamp(1px,.4vw,2px) clamp(3px,.8vw,4px)!important}.tour-tooltip .key-combo{font-size:clamp(9px,min(2.5vw,2.5vh),12px)!important;gap:clamp(2px,.6vw,4px)!important}}.solves-list-container.is-collapsed{max-height:44px;opacity:0;transform:translateY(100%);pointer-events:none;visibility:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.solve-item-wrapper{border-bottom:none;width:100%}.solve-item-wrapper:last-child{border-bottom:none}.solve-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2);height:44px}.solve-left{display:flex;align-items:center;gap:clamp(4px,min(1vw,1vh),16px);flex:1;min-width:0}.solve-inline{display:grid;align-items:center;grid-template-columns:minmax(60px,1fr) minmax(70px,1.2fr) minmax(80px,1.4fr) minmax(90px,1.6fr);column-gap:clamp(8px,min(1.5vw,1.5vh),16px);min-width:0;box-sizing:border-box}.solve-inline>.solve-time+.solve-avg{margin-right:clamp(12px,min(2vw,2vh),32px)}@media (max-width: 768px){.solve-inline{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) minmax(0,1.2fr) minmax(0,1.3fr);column-gap:clamp(4px,min(1.5vw,1.5vh),12px)}.solve-inline>.solve-time+.solve-avg{margin-right:clamp(8px,min(1.5vw,1.5vh),24px)}}.solve-index{color:var(--text-secondary);font-family:JetBrains Mono,monospace;font-size:clamp(10px,min(1.2vw,1.2vh),14px);min-width:fit-content;text-align:right;flex-shrink:0;white-space:nowrap}.pb-value{color:var(--accent)!important;font-weight:700!important}.solve-time{font-weight:600;color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:clamp(10px,min(1.2vw,1.2vh),14px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.solve-avg{font-size:clamp(9px,min(1vw,1vh),12px);color:var(--text-secondary);font-family:JetBrains Mono,monospace;text-transform:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.solve-actions{display:flex;gap:4px;min-width:0;flex-shrink:0;justify-content:flex-end;align-items:center}.solve-scramble-full{padding:var(--space-2);color:var(--text-secondary);font-family:JetBrains Mono,monospace;line-height:1.4;word-break:break-all;background:#9ec5ab0d;border-radius:6px;margin-top:var(--space-1)}.no-solves{padding:1rem;text-align:center;color:#888}.session-toggle{font-family:JetBrains Mono,monospace;font-size:14px;color:var(--text-secondary);-webkit-user-select:none;user-select:none;pointer-events:none;margin-left:.5rem}.analytics-container{padding:2rem;max-width:1200px;margin:0 auto;color:var(--text-primary);width:100%;box-sizing:border-box}.analytics-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.analytics-header h2{font-size:2rem;font-weight:700;color:var(--primary);margin:0}.close-btn{font-size:2rem;color:var(--text-secondary);text-decoration:none;transition:color .2s;display:flex;align-items:center;justify-content:center;width:40px;height:40px}.close-btn:hover{color:var(--primary)}.stats-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem;margin-bottom:3rem}.stat-card{background:var(--bg);border:1px solid var(--border);padding:clamp(1rem,3vw,1.5rem);border-radius:12px;text-align:center;min-width:0;box-sizing:border-box}.stat-card label{display:block;color:var(--text-secondary);font-size:clamp(.7rem,min(2.5vw,2.5vh),.9rem);margin-bottom:clamp(.25rem,1vw,.5rem);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-card .value{font-size:clamp(1.2rem,4vw,1.8rem);font-weight:600;color:var(--text-primary);font-family:JetBrains Mono,monospace;word-break:break-all}.charts-section h3{color:var(--text-secondary);margin-bottom:1rem;font-weight:500}.chart-wrapper{background:var(--bg);border:1px solid var(--border);padding:1.5rem;border-radius:12px;margin-bottom:2rem;box-shadow:var(--shadow);width:100%;box-sizing:border-box;overflow:hidden;aspect-ratio:16/9;min-height:0;display:flex;flex-direction:column}@media (max-width: 768px){.chart-wrapper{padding:1rem;aspect-ratio:16/9}}.analytics-container.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;text-align:center;padding:1rem}.analytics-container.empty h2{color:var(--text-secondary);margin-bottom:1.5rem;font-size:clamp(1.2rem,5vw,2rem)}@media (max-width: 1024px){.stats-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.analytics-container{padding:1rem}.analytics-header{margin-bottom:1.5rem}.analytics-header h2{font-size:1.5rem}.stats-grid{grid-template-columns:repeat(2,1fr);gap:.5rem;margin-bottom:2rem}.stat-card{padding:1rem}.stat-card label{font-size:.75rem}.chart-wrapper{padding:1rem;margin-bottom:1.5rem}}@media (max-width: 480px){.stats-grid{grid-template-columns:repeat(2,1fr)}.activity-heatmap-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}}.settings-container{padding:2rem;max-width:800px;margin:0 auto;color:var(--text-primary)}.settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.settings-header h2{font-size:2rem;font-weight:700;color:var(--primary);margin:0}.theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem}.theme-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;border:2px solid transparent;border-radius:12px;cursor:pointer;transition:all .2s ease;font-family:Inter,sans-serif;font-weight:600;gap:.5rem}.theme-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}.theme-btn.active{border-color:var(--accent);box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--accent)}.theme-preview{display:flex;gap:4px}.color-dot{width:12px;height:12px;border-radius:50%}.session-manager{position:relative}.session-selector{position:relative;min-width:0;width:100%}.session-trigger{display:flex;align-items:center;gap:8px;background:transparent;border:none;color:var(--text-primary);font-family:Inter,sans-serif;font-size:16px;cursor:pointer;padding:8px 12px;border-radius:var(--radius-md);transition:all .2s ease}.session-trigger:hover{background:#9ec5ab1a}.session-name{font-weight:600}.session-type{color:var(--text-secondary);font-size:12px;background:#9ec5ab1a;padding:2px 6px;border-radius:4px}.chevron{color:var(--text-secondary);transition:transform .2s ease}.chevron.open{transform:rotate(180deg)}.session-dropdown{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:4px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-hover);min-width:0;max-width:min(240px,95vw);width:max-content;z-index:100;padding:4px;display:flex;flex-direction:column;gap:2px;box-sizing:border-box;margin-left:clamp(-120px,-47.5vw,0)}.session-option-wrapper{display:flex;align-items:center;justify-content:space-between;padding:4px;border-radius:var(--radius-sm);transition:all .2s ease}.session-option-wrapper:hover{background:#9ec5ab1a}.session-option-wrapper.active{background:#9ec5ab26}.session-option-main{flex:1;display:flex;align-items:center;justify-content:space-between;padding:8px;background:transparent;border:none;color:var(--text-primary);cursor:pointer;text-align:left;font-family:Inter,sans-serif;min-width:0;box-sizing:border-box}.session-option-wrapper.active .session-option-main{color:var(--accent)}.session-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s ease;padding-right:4px}.session-option-wrapper:hover .session-actions{opacity:1}.action-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .2s ease}.action-btn:hover{background:#ffffff1a;color:var(--text-primary)}.action-btn.danger:hover{background:#ff52521a;color:var(--error)}.option-type{font-size:12px;color:var(--text-secondary);min-width:0;flex-shrink:0;white-space:nowrap}.option-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.dropdown-divider{height:1px;background:var(--border);margin:4px 0}.create-new{color:var(--accent);font-weight:500;min-width:0;box-sizing:border-box;padding:clamp(4px,1.5vw,8px);font-size:clamp(10px,min(3.5vw,3.5vh),14px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 768px){.create-new{padding:clamp(4px,1.5vw,8px);font-size:clamp(10px,min(3.5vw,3.5vh),14px)}}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.modal{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;width:100%;max-width:400px;box-shadow:var(--shadow-hover);animation:slideUp .3s ease-out}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.modal-header h3{margin:0;font-size:20px;font-weight:600}.close-btn{background:transparent;border:none;color:var(--text-secondary);font-size:24px;cursor:pointer;padding:0;line-height:1}.close-btn:hover{color:var(--text-primary)}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:var(--text-secondary);font-size:14px;font-weight:500}.puzzle-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px}.puzzle-option{background:#9ec5ab0d;border:1px solid transparent;border-radius:var(--radius-sm);padding:8px;color:var(--text-secondary);cursor:pointer;font-size:13px;transition:all .2s ease}.puzzle-option:hover{background:#9ec5ab1a;color:var(--text-primary)}.puzzle-option.selected{background:#9ec5ab26;border-color:var(--accent);color:var(--accent)}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:32px}.analytics-container{padding:2rem;width:100%;box-sizing:border-box;color:var(--text-primary);animation:fadeIn .3s ease-out;height:100%;overflow-y:auto;grid-column:1 / -1;grid-row:2 / -1}.analytics-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.analytics-title{display:flex;flex-direction:column;gap:1rem}.analytics-title h2{font-size:2rem;font-weight:700;margin:0;color:var(--primary)}.filter-tabs{display:flex;gap:.5rem;background:#9ec5ab0d;padding:4px;border-radius:8px}.filter-tab{background:transparent;border:none;color:var(--text-secondary);padding:6px 12px;border-radius:6px;cursor:pointer;font-family:Inter,sans-serif;font-size:14px;font-weight:500;transition:all .2s ease}.filter-tab:hover{color:var(--text-primary)}.filter-tab.active{background:var(--bg);color:var(--accent);box-shadow:var(--shadow)}.type-selector{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem;padding:1rem;background:#9ec5ab0d;border-radius:12px}.type-pill{background:transparent;border:1px solid transparent;color:var(--text-secondary);padding:4px 10px;border-radius:999px;cursor:pointer;font-size:12px;transition:all .2s ease}.type-pill:hover{background:#9ec5ab1a}.type-pill.active{background:#9ec5ab26;color:var(--accent);border-color:var(--accent)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:clamp(1rem,3vw,1.5rem);display:flex;flex-direction:column;gap:.5rem;transition:transform .2s ease;min-width:0;box-sizing:border-box}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}.stat-card label{font-size:clamp(10px,min(2.5vw,2.5vh),12px);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.stat-card .value{font-family:JetBrains Mono,monospace;font-size:clamp(16px,min(4vw,4vh),24px);font-weight:600;color:var(--text-primary)}.stat-card .value.highlight{color:var(--accent)}.charts-grid-vertical{display:flex;flex-direction:column;gap:2rem;width:100%}.chart-card.full-width{width:100%}.chart-section{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:1.5rem}.chart-section.full-width{grid-column:1 / -1}.chart-section h3{margin:0 0 1.5rem;font-size:1.1rem;color:var(--text-secondary);font-weight:600}.chart-wrapper{width:100%;height:100%;min-height:300px}.empty-state{text-align:center;padding:4rem;color:var(--text-secondary);font-style:italic}@media (max-width: 768px){.charts-grid{grid-template-columns:1fr}.analytics-header{flex-direction:column;gap:1rem}.filter-tabs{width:100%;overflow-x:auto}.about-content .stats-grid{grid-template-columns:repeat(2,1fr)!important;gap:clamp(.5rem,2vw,1rem)!important}.about-content .stat-card{padding:clamp(.75rem,2.5vw,1rem)!important}.about-content .stat-card .value{font-size:clamp(14px,min(3.5vw,3.5vh),20px)!important}.about-content .stat-card label{font-size:clamp(9px,min(2.2vw,2.2vh),11px)!important}}@media (max-width: 480px){.about-content .stats-grid{grid-template-columns:1fr!important}}.settings-container{padding:2rem 2rem 6rem;max-width:1400px;margin:0 auto;width:100%;height:100vh;overflow-y:auto;grid-column:1 / -1;grid-row:2 / -1}.range-input{-webkit-appearance:none;appearance:none;width:100%;height:4px;background:var(--border);border-radius:2px;outline:none;margin:10px 0}.range-input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--accent);cursor:pointer;transition:transform .1s ease;box-shadow:0 0 0 2px var(--bg)}.inspection-warning{color:var(--error)!important}.range-input::-webkit-slider-thumb:hover{transform:scale(1.2)}.heatmap-week{display:grid;grid-template-rows:repeat(7,1fr);gap:4px;flex:1;height:105px}.settings-layout{display:flex;flex-direction:column;gap:2rem;width:100%}.settings-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(350px,100%),1fr));gap:2rem;width:100%}.settings-section.full-width{width:100%}.settings-section{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.5rem;margin-bottom:2rem;display:flex;flex-direction:column}.settings-section h3{margin:0 0 1.5rem;font-size:1.2rem;color:var(--primary);font-weight:600}.setting-item{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid var(--border)}.setting-item:last-child{border-bottom:none}.setting-info label{display:block;font-weight:500;margin-bottom:4px}.setting-info p{margin:0;font-size:12px;color:var(--text-secondary)}.toggle-switch{position:relative;display:inline-block;width:48px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#9ec5ab1a;transition:.4s;border-radius:24px;border:1px solid var(--border)}.slider:before{position:absolute;content:"";height:18px;width:18px;left:2px;bottom:2px;background-color:var(--text-secondary);transition:.4s;border-radius:50%}input:checked+.slider{background-color:var(--accent);border-color:var(--accent)}input:checked+.slider:before{transform:translate(24px);background-color:var(--bg)}.input.small{width:80px;text-align:right}.data-actions{display:flex;gap:1rem;align-items:center}.drop-zone{border:2px dashed var(--border);border-radius:8px;padding:4px;transition:all .2s;flex:1;display:flex;flex-direction:column;min-height:120px}.data-actions-col{display:flex;flex-direction:column;flex:1;gap:2rem}.data-group{display:flex;flex-direction:column}.data-group:last-child{flex:1}.file-input-wrapper.full-width{height:100%;flex:1}.file-input-wrapper.full-width .btn{height:100%;display:flex;align-items:center;justify-content:center}.drop-zone.dragging{border-color:var(--accent);background:#9ec5ab1a}.file-input-wrapper{position:relative;overflow:hidden;display:inline-block}.file-input-wrapper input[type=file]{position:absolute;left:0;top:0;opacity:0;width:100%;height:100%;cursor:pointer}.account-container{display:flex;justify-content:center;align-items:flex-start;padding-top:10vh;min-height:calc(100vh - 80px)}.account-card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:2rem;width:100%;max-width:480px;box-shadow:var(--shadow);animation:slideUp .3s ease-out}.profile-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.avatar-placeholder{width:64px;height:64px;border-radius:50%;background:#9ec5ab1a;color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;font-family:JetBrains Mono,monospace}.profile-info h2{margin:0;font-size:1.5rem;color:var(--text-primary)}.profile-info p{margin:4px 0 0;color:var(--text-secondary);font-size:14px}.profile-stats{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:2rem}.stat-item{background:#9ec5ab0d;padding:1rem;border-radius:8px;text-align:center}.stat-item label{display:block;font-size:12px;color:var(--text-secondary);margin-bottom:4px}.stat-item .value{font-family:JetBrains Mono,monospace;font-size:20px;font-weight:600;color:var(--text-primary)}.auth-form h2{margin:0 0 1.5rem;text-align:center;color:var(--primary)}.auth-actions{display:grid;gap:1rem;margin-top:1.5rem}.full-width{width:100%}.auth-footer{margin-top:1.5rem;text-align:center;font-size:14px;color:var(--text-secondary)}.auth-footer button{background:transparent;border:none;color:var(--accent);cursor:pointer;font-weight:500;padding:0;margin-left:4px}.auth-footer button:hover{text-decoration:underline}.sync-prompt{margin-top:2rem;background:#9ec5ab0d;border:1px solid var(--border);border-radius:8px;padding:1rem}.sync-prompt p{margin:0 0 1rem;font-size:14px;color:var(--text-primary)}.sync-actions{display:flex;gap:.5rem}.btn.small{padding:6px 12px;font-size:13px}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;color:var(--text-secondary)}.spinner{width:24px;height:24px;border:2px solid rgba(158,197,171,.1);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.chart-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.5rem;min-height:250px}.about-content p{color:var(--text-secondary);line-height:1.6;margin-bottom:1rem}.version-badge{display:inline-block;background:#9ec5ab1a;color:var(--accent);padding:4px 8px;border-radius:4px;font-family:JetBrains Mono,monospace;font-size:12px}.keybindings-list{list-style:none;padding:0;margin:0}.keybindings-list li{display:flex;align-items:center;justify-content:space-between;padding:clamp(6px,1.5vw,8px) 0;border-bottom:1px solid var(--border);font-size:clamp(11px,3vw,14px)}.keybindings-list li:last-child{border-bottom:none}.keybindings-list kbd{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:clamp(2px,.5vw,4px) clamp(4px,1vw,6px);font-family:JetBrains Mono,monospace;font-size:clamp(10px,2.5vw,12px);color:var(--text-primary)}.key-combo{display:flex;align-items:center;gap:clamp(4px,1vw,6px);color:var(--text-secondary);font-size:clamp(11px,3vw,14px)}.credits-list{display:grid;gap:1rem}.credit-item strong{display:block;color:var(--primary);margin-bottom:4px}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.time-range-selector{display:flex;gap:.5rem;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%;padding-bottom:4px}.range-btn{white-space:nowrap;flex-shrink:0}.heatmap-nav{display:flex;align-items:center;gap:1rem;font-family:JetBrains Mono,monospace;font-size:14px}.nav-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease}.nav-btn:hover:not(:disabled){background:#9ec5ab1a;color:var(--text-primary)}.nav-btn:disabled{opacity:.3;cursor:not-allowed}.activity-heatmap-wrapper{display:flex;flex-direction:column;gap:.5rem;width:100%}.heatmap-labels-row{display:flex;font-size:11px;color:var(--text-secondary);margin-bottom:4px}.heatmap-y-axis-placeholder{width:30px;flex-shrink:0}.heatmap-months{display:grid;grid-template-columns:repeat(53,1fr);flex:1;position:relative}.heatmap-months span{grid-column-end:span 2}.heatmap-body{display:flex;gap:.5rem;height:100%}.heatmap-days{display:flex;flex-direction:column;justify-content:space-between;font-size:11px;color:var(--text-secondary);padding-top:2px;padding-bottom:2px;width:30px}.activity-heatmap{display:flex;gap:4px;width:100%;flex:1;min-width:600px}.heatmap-week{display:grid;grid-template-rows:repeat(7,1fr);gap:4px;flex:1;height:150px}.heatmap-cell{width:100%;height:100%;border-radius:2px;background:#9ec5ab0d;transition:all .1s ease}.heatmap-cell.empty{background:transparent;pointer-events:none}.heatmap-cell:hover{transform:scale(1.2);z-index:10;border:1px solid var(--border)}.intensity-0{background:#9ec5ab0d}.intensity-1{background:#9ec5ab33}.intensity-2{background:#9ec5ab66}.intensity-3{background:#9ec5abb3}.intensity-4{background:var(--accent)}.chart-controls{display:flex;justify-content:flex-end;margin-bottom:1rem}.time-range-selector{display:flex;background:#9ec5ab0d;padding:4px;border-radius:8px;gap:2px}.range-btn{background:transparent;border:none;color:var(--text-secondary);padding:6px 12px;border-radius:6px;cursor:pointer;font-family:Inter,sans-serif;font-size:13px;font-weight:500;transition:all .2s ease}.range-btn:hover{color:var(--text-primary)}.range-btn.active{background:var(--bg);color:var(--accent);box-shadow:var(--shadow)}.solves-list-section{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.5rem;margin-top:2rem}.solves-list-section h3{margin:0 0 1.5rem;color:var(--text-secondary);font-size:1.1rem}.analytics-solves-list{display:flex;flex-direction:column;gap:0}.analytics-solves-list .solve-item{border-bottom:1px solid var(--border);padding:12px 0;height:auto;min-height:44px;align-items:flex-start}.analytics-solves-list .solve-item:last-child{border-bottom:none}.solve-date{font-size:12px;color:var(--text-secondary);margin-left:1rem}.solve-scramble-small{font-family:JetBrains Mono,monospace;font-size:10px;color:var(--text-secondary);white-space:normal;word-break:break-word;line-height:1.3;flex:1;text-align:right;padding-left:1rem}.support-section{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3);background:#9ec5ab05;border-radius:var(--radius-lg);border:1px solid rgba(158,197,171,.05);animation:fadeIn .3s ease-out}.support-section h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.support-section p{margin:0;color:var(--text-secondary);line-height:1.6;font-size:15px}.kofi-container{display:flex;justify-content:center;margin-top:var(--space-4);margin-bottom:var(--space-2)}.kofi-button{background:linear-gradient(135deg,#ff5e5b,#ff8a88);color:#fff;display:flex;align-items:center;gap:10px;padding:12px 24px;border-radius:999px;text-decoration:none;font-weight:600;font-family:Inter,sans-serif;font-size:16px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #ff5e5b40;border:1px solid rgba(255,255,255,.1)}.kofi-button:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 20px #ff5e5b59}.kofi-button:active{transform:translateY(0) scale(.98)}.kofi-img{height:24px;width:auto;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.ad-container{display:flex;justify-content:center;margin-top:var(--space-3);padding:var(--space-4);background:#0003;border-radius:var(--radius-lg);border:1px dashed var(--border);position:relative;overflow:hidden}.ad-placeholder{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;position:relative;z-index:1}.ad-label{font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:var(--text-secondary);opacity:.6;font-weight:600}.ad-content{color:var(--text-primary);font-size:14px;max-width:200px;line-height:1.5}.feedback-form{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-1)}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.settings-select,.settings-input{background:#0003;border:1px solid rgba(158,197,171,.1);border-radius:var(--radius-md);color:var(--text-primary);padding:12px 14px;outline:none;font-family:Inter,sans-serif;font-size:15px;transition:all .2s ease;width:100%}.settings-select:focus,.settings-input:focus{background:#0000004d;border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.settings-input{resize:vertical;min-height:120px;line-height:1.5}.custom-select-container{position:relative;width:100%}.custom-select-trigger{background:#0003;border:1px solid rgba(158,197,171,.1);border-radius:var(--radius-md);color:var(--text-primary);padding:12px 14px;font-family:Inter,sans-serif;font-size:15px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .2s ease;-webkit-user-select:none;user-select:none}.custom-select-trigger:hover,.custom-select-trigger.open{background:#0000004d;border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.custom-select-trigger .select-arrow{position:static;transform:none;margin-left:8px;color:var(--accent);display:flex}.custom-select-options{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);z-index:100;overflow:hidden;box-shadow:0 4px 12px #0000004d;animation:fadeIn .1s ease-out}.custom-option{padding:12px 14px;cursor:pointer;color:var(--text-secondary);transition:all .1s ease;font-size:15px}.custom-option:hover{background:#9ec5ab1a;color:var(--text-primary)}.custom-option.selected{background:#9ec5ab26;color:var(--accent);font-weight:500}.feedback-success{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-4);background:#9ec5ab0d;border-radius:var(--radius-lg);border:1px solid rgba(158,197,171,.1);animation:fadeIn .3s ease-out}.success-icon{width:48px;height:48px;border-radius:50%;background:#9ec5ab1a;color:var(--accent);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-2)}.success-icon svg{width:24px;height:24px}.feedback-success h4{margin:0 0 8px;font-size:18px;color:var(--text-primary)}.feedback-success p{margin:0 0 var(--space-3) 0;color:var(--text-secondary)}.settings-tabs{display:flex;gap:1rem;margin-bottom:2rem}.settings-container.dragging-global:after{content:"";position:absolute;inset:0;background:#9ec5ab1a;border:2px dashed var(--accent);border-radius:16px;pointer-events:none;z-index:10}.settings-container.dragging-global .drop-zone{border-color:var(--accent);background:#9ec5ab1a}.share-modal{max-width:400px;width:90%}.share-preview{margin:1.5rem 0;padding:1.5rem;background:var(--bg);border:1px solid var(--border);border-radius:12px;display:flex;justify-content:center}.share-card{text-align:center}.share-time{font-size:3rem;font-weight:700;color:var(--accent);font-family:JetBrains Mono,monospace;margin-bottom:.5rem}.share-scramble{font-size:.9rem;color:var(--text-secondary);font-family:JetBrains Mono,monospace;margin-bottom:1rem;line-height:1.4}.share-footer{font-size:.8rem;color:var(--text-secondary);opacity:.7;text-transform:uppercase;letter-spacing:1px}.share-actions{display:flex;gap:1rem;flex-direction:column}.copied-badge{margin-left:8px;font-size:.8rem;background:#fff3;padding:2px 6px;border-radius:4px}.onboarding-modal{display:flex;width:min(800px,95vw);max-width:95vw;height:500px;max-height:90vh;padding:0;overflow:hidden;background:var(--bg);border:1px solid var(--border)}.onboarding-sidebar{width:200px;background:#0003;border-right:1px solid var(--border);padding:2rem 0;display:flex;flex-direction:column}.onboarding-logo{font-family:JetBrains Mono,monospace;font-size:1.5rem;font-weight:700;color:var(--accent);padding:0 1.5rem;margin-bottom:2rem}.onboarding-nav{display:flex;flex-direction:column}.nav-item{text-align:left;background:none;border:none;padding:.75rem 1.5rem;color:var(--text-secondary);cursor:pointer;font-size:.9rem;transition:all .2s;border-left:2px solid transparent}.nav-item:hover{color:var(--text-primary);background:#ffffff0d}.nav-item.active{color:var(--accent);background:#9ec5ab1a;border-left-color:var(--accent)}.onboarding-content{flex:1;padding:3rem;position:relative;overflow-y:auto}.close-btn-absolute{position:absolute;top:1rem;right:1rem;background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:.5rem;line-height:1}.close-btn-absolute:hover{color:var(--text-primary)}.onboarding-section{max-width:500px;margin:0 auto;height:100%;display:flex;flex-direction:column;justify-content:center}.onboarding-section h1{font-size:2rem;margin-bottom:.5rem;color:var(--text-primary)}.onboarding-section h2{font-size:1.8rem;margin-bottom:1.5rem;color:var(--text-primary)}.subtitle{color:var(--text-secondary);font-size:1.1rem;margin-bottom:2rem;line-height:1.5}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem}.feature-item{text-align:center}.feature-item .icon{font-size:2rem;margin-bottom:.5rem}.feature-item h3{font-size:.9rem;margin-bottom:.25rem;color:var(--text-primary)}.feature-item p{font-size:.8rem;color:var(--text-secondary);line-height:1.4}.feature-list{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.feature-row{display:flex;gap:1rem;align-items:flex-start}.feature-icon{font-size:1.5rem;background:#ffffff0d;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:8px}.feature-text h3{font-size:1rem;margin-bottom:.25rem;color:var(--text-primary)}.feature-text p{font-size:.9rem;color:var(--text-secondary);line-height:1.4}.shortcuts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem}.shortcut-item{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.9rem}kbd{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:2px 6px;font-family:JetBrains Mono,monospace;font-size:.8rem;color:var(--text-primary)}.btn.large{width:100%;padding:1rem;font-size:1rem;margin-top:auto}.fade-in{animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.onboarding-modal{flex-direction:column;height:100%;max-height:100vh;width:100%;border-radius:0}.onboarding-sidebar{width:100%;flex-direction:row;align-items:center;padding:1rem;border-right:none;border-bottom:1px solid var(--border)}.onboarding-logo{margin-bottom:0;margin-right:auto}.onboarding-nav{flex-direction:row}.nav-item{padding:.5rem 1rem;border-left:none;border-bottom:2px solid transparent}.nav-item.active{border-left-color:transparent;border-bottom-color:var(--accent)}.feature-grid{grid-template-columns:1fr}}.tour-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:9999;pointer-events:auto}.tour-mask{position:absolute;top:0;left:0;pointer-events:none;transition:all .3s ease}.spotlight-rect,.spotlight-border{transition:all .3s cubic-bezier(.4,0,.2,1)}.tour-tooltip{position:absolute;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:clamp(1rem,2vw,1.5rem);width:min(320px,90vw);max-width:90vw;min-width:0;box-shadow:0 10px 30px #00000080;z-index:10000;transition:opacity .2s ease;box-sizing:border-box}.tour-tooltip.fade-out{opacity:0}.tour-tooltip.fade-in{opacity:1}.tour-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.tour-header h3{font-size:clamp(1rem,3vw,1.1rem);color:var(--text-primary);margin:0}.close-btn-small{background:none;border:none;color:var(--text-secondary);font-size:clamp(1rem,3vw,1.2rem);cursor:pointer;padding:0;line-height:1;min-width:clamp(24px,6vw,32px);min-height:clamp(24px,6vw,32px);display:flex;align-items:center;justify-content:center}.close-btn-small:hover{color:var(--text-primary)}.tour-tooltip p{color:var(--text-secondary);font-size:clamp(.85rem,2.5vw,.95rem);line-height:1.5;margin-bottom:clamp(1rem,2vw,1.5rem)}.tour-footer{display:flex;justify-content:space-between;align-items:center}.tour-progress{font-size:clamp(.7rem,2vw,.8rem);color:var(--text-secondary);font-family:JetBrains Mono,monospace}.tour-actions{display:flex;gap:.5rem}.btn.small{padding:clamp(.3rem,1.5vw,.4rem) clamp(.6rem,2vw,.8rem);font-size:clamp(.75rem,2vw,.85rem)}.stat-card{position:relative}.stat-share-btn{position:absolute;top:.5rem;right:.5rem;background:#ffffff1a;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .2s ease}.stat-card:hover .stat-share-btn{opacity:1}.stat-share-btn:hover{background:var(--accent);color:var(--bg)}.pb-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2000;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.pb-container.visible{opacity:1;pointer-events:auto}.pb-container.minor{justify-content:center;align-items:flex-start;padding-top:100px}.pb-content{text-align:center;animation:popIn .5s cubic-bezier(.175,.885,.32,1.275);position:relative}.pb-text{font-size:4rem;font-weight:800;color:var(--primary);text-shadow:0 4px 12px rgba(0,0,0,.3);margin-bottom:.5rem}.pb-subtext{font-size:1.5rem;color:var(--text-secondary);text-transform:lowercase}.pb-toast{background:var(--card);border:1px solid var(--primary);padding:.75rem 1.5rem;border-radius:99px;display:flex;align-items:center;gap:.5rem;box-shadow:0 4px 12px #0003;transform:translateY(-20px);transition:transform .3s ease}.pb-container.visible .pb-toast{transform:translateY(0)}.pb-icon{color:var(--primary)}@keyframes popIn{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.confetti-container{position:absolute;top:50%;left:50%;width:0;height:0}.confetti{position:absolute;width:12px;height:12px;background:var(--primary);top:0;left:0;opacity:0;border-radius:2px}.confetti:nth-child(3n){background:var(--error)}.confetti:nth-child(3n+1){background:var(--primary)}.confetti:nth-child(3n+2){background:var(--accent)}.pb-container.visible .confetti{animation:confetti-explode 2s ease-out forwards}@keyframes confetti-explode{0%{transform:rotate(calc(var(--i) * 12deg)) translateY(0) rotate(0);opacity:1}to{transform:rotate(calc(var(--i) * 12deg)) translateY(300px) rotate(720deg);opacity:0}}.account-container{display:flex;justify-content:center;align-items:center;height:100%;width:100%;padding:var(--space-3);overflow-y:auto}.account-card{background:var(--bg);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);padding:var(--space-4);width:100%;max-width:800px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}.account-card .input{width:100%}.text-content{line-height:1.6;color:var(--text-secondary)}.text-content h3{color:var(--text-primary);margin-top:2rem;margin-bottom:1rem;font-size:1.2rem;font-weight:600}.text-content p{margin-bottom:1rem}.text-content ul{margin-bottom:1rem;padding-left:1.5rem}.text-content li{margin-bottom:.5rem}.legal-links{display:flex;gap:1.5rem;margin-top:.5rem;justify-content:center}.legal-link{color:var(--text-secondary);text-decoration:none;font-size:.9rem;transition:color .2s;border-bottom:1px solid transparent}.legal-link:hover{color:var(--primary);border-bottom-color:var(--primary)}
