.cube-timer{--ink:var(--foreground);--panel:var(--surface);--panel-soft:var(--surface-raised);--line:var(--border);--lime:var(--accent);--green:#68df9e;--red:#ff8279;color:var(--foreground)}.cube-timer button,.cube-timer select{font:inherit}.cube-timer button{cursor:pointer}.cube-timer button:disabled,.cube-timer select:disabled{cursor:not-allowed;opacity:.45}.cube-timer.timer-app{grid-template-columns:310px minmax(0,1fr);align-items:start;min-height:100dvh;display:grid;overflow:hidden}.cube-timer .sidebar{background:var(--panel);color:#f5f8f3;z-index:2;flex-direction:column;height:100dvh;min-height:0;padding:24px 20px 18px;display:flex;position:relative;overflow-y:auto}.cube-timer .sidebar>*{flex-shrink:0}.cube-timer .brand-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.cube-timer .brand{letter-spacing:-.7px;align-items:center;gap:10px;font-size:21px;font-weight:680;display:flex}.cube-timer .brand>span:last-child>span{color:var(--lime)}.cube-timer .home-button{border:1px solid var(--line);color:var(--muted);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.cube-timer .home-button:hover,.cube-timer .home-button:focus-visible{background:var(--panel-soft);color:var(--lime)}.cube-timer .home-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:18px;height:18px}.cube-timer .session-heading{justify-content:space-between;align-items:flex-end;margin-top:30px;display:flex}.cube-timer .session-heading p,.cube-timer .scramble-area p,.cube-timer .modal-title p{color:var(--muted);letter-spacing:1.8px;margin:0 0 4px;font-size:10px;font-weight:700}.cube-timer .session-heading h2{margin:0;font-size:17px;font-weight:600}.cube-timer .session-heading>span{color:var(--muted);font-size:12px}.cube-timer .stats-grid{grid-template-columns:1fr 1fr;gap:1px;margin:18px -4px 24px;display:grid}.cube-timer .stat{background:var(--panel-soft);min-width:0;padding:11px 12px}.cube-timer .stat:first-child{border-radius:10px 0 0}.cube-timer .stat:nth-child(2){border-radius:0 10px 0 0}.cube-timer .stat:nth-last-child(2){border-radius:0 0 0 10px}.cube-timer .stat:last-child{border-radius:0 0 10px}.cube-timer .stat span{color:var(--muted);letter-spacing:1.1px;margin-bottom:3px;font-size:10px;font-weight:700;display:block}.cube-timer .stat strong{color:#e9efeb;font-family:var(--font-cube-mono),monospace;font-size:15px;font-weight:500}.cube-timer .stat.accent strong{color:var(--lime)}.cube-timer .history-heading,.cube-timer .solve-row{grid-template-columns:52px minmax(0,1fr) minmax(0,1fr);gap:8px;display:grid}.cube-timer .history-heading{border-bottom:1px solid var(--line);color:var(--muted);letter-spacing:1.3px;padding:0 10px 9px;font-size:10px;font-weight:700}.cube-timer .history-heading span:not(:first-child){text-align:right}.cube-timer .solve-list{scrollbar-color:#33414a transparent;scrollbar-width:thin;flex:1 1 0;min-height:110px;padding-top:5px;overflow-y:auto}.cube-timer .history-pagination{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding-top:12px;font-size:11px;display:flex}.cube-timer .history-pagination span{color:var(--muted);font-variant-numeric:tabular-nums}.cube-timer .history-pagination button{background:var(--panel-soft);border:1px solid var(--line);border-radius:7px;padding:7px 9px}.cube-timer .history-pagination button:hover:not(:disabled){border-color:var(--lime);color:var(--lime)}.cube-timer .solve-row{color:#dce4df;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;width:100%;padding:8px 9px;transition:background .12s}.cube-timer .solve-row:hover,.cube-timer .solve-row.selected{background:var(--panel-soft)}.cube-timer .solve-row.selected{box-shadow:inset 2px 0 var(--lime)}.cube-timer .solve-number{color:var(--muted);font-size:11px}.cube-timer .solve-row strong,.cube-timer .solve-average{font-family:var(--font-cube-mono),monospace;text-align:right;font-size:13px;font-weight:500}.cube-timer .solve-average{color:var(--muted)}.cube-timer .empty-state{color:var(--muted);text-align:center;padding:28px 8px}.cube-timer .empty-state span{color:#2a3740;font-family:var(--font-cube-mono),monospace;font-size:28px}.cube-timer .empty-state p{margin:7px 0 0;font-size:12px}.cube-timer .solve-detail{background:var(--surface-raised);border:1px solid var(--line);border-radius:12px;margin-top:10px;padding:13px;box-shadow:0 -12px 30px #0003}.cube-timer .solve-detail-title{justify-content:space-between;align-items:center;display:flex}.cube-timer .solve-detail-title strong{color:var(--lime);font-family:var(--font-cube-mono),monospace;font-size:20px;font-weight:500}.cube-timer .solve-detail-title button,.cube-timer .modal-title button{color:var(--muted);background:0 0;border:0;font-size:25px;line-height:1}.cube-timer .solve-detail p{color:var(--muted);font-family:var(--font-cube-mono),monospace;margin:8px 0 11px;font-size:10px;line-height:1.5}.cube-timer .penalty-actions{grid-template-columns:repeat(4,1fr);gap:5px;display:grid}.cube-timer .penalty-actions button{background:var(--surface-raised);color:var(--muted);border:1px solid #0000;border-radius:6px;padding:7px 4px;font-size:10px;font-weight:700}.cube-timer .penalty-actions button:hover,.cube-timer .penalty-actions button.active{border-color:var(--lime);color:var(--lime)}.cube-timer .penalty-actions button.delete-action:hover{border-color:var(--red);color:var(--red)}.cube-timer .timer-panel{background:var(--background);grid-template-rows:auto auto minmax(0,1fr) auto;height:100dvh;min-height:560px;transition:background-color .18s;display:grid;position:sticky;top:0;overflow:hidden}.cube-timer .timer-panel.phase-holding{background-color:#221e16}.cube-timer .timer-panel.phase-ready{background-color:#13271e}.cube-timer .toolbar{border-bottom:1px solid var(--border);z-index:1;justify-content:space-between;align-items:center;min-height:66px;padding:12px 24px;display:flex;position:relative}.cube-timer .event-control{align-items:center;gap:8px;display:flex}.cube-timer .event-control>span{background:var(--surface-raised);color:var(--accent);letter-spacing:1px;border-radius:5px;padding:5px 7px;font-size:10px;font-weight:800}.cube-timer .event-control select,.cube-timer .setting-row select{appearance:none;background-color:var(--surface-raised);border:1px solid var(--border);color:var(--ink);background-image:linear-gradient(45deg,#0000 50%,#a3afb9 50%),linear-gradient(135deg,#a3afb9 50%,#0000 50%);background-position:calc(100% - 13px) calc(50% - 2px),calc(100% - 9px) calc(50% - 2px);background-repeat:no-repeat;background-size:4px 4px,4px 4px;border-radius:7px;padding:7px 27px 7px 10px;font-size:12px;font-weight:650}.cube-timer .toolbar-actions{gap:7px;display:flex}.cube-timer .toolbar-actions button{background:var(--surface);border:1px solid var(--border);border-radius:8px;justify-content:center;align-items:center;width:35px;height:35px;transition:background .12s,transform .12s;display:flex}.cube-timer .toolbar-actions button:hover{background:var(--surface-raised);transform:translateY(-1px)}.cube-timer .toolbar-actions svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:17px;height:17px}.cube-timer .scramble-area{text-align:center;z-index:1;width:100%;max-width:1050px;margin:0 auto;padding:clamp(26px,5vh,54px) 42px 10px;position:relative}.cube-timer .scramble-area p{color:var(--muted);margin-bottom:11px}.cube-timer .scramble-area h1{color:var(--foreground);font-family:var(--font-cube-mono),monospace;letter-spacing:.02em;min-height:42px;margin:0;font-size:clamp(17px,2.1vw,27px);font-weight:550;line-height:1.55}.cube-timer .timer-touch-area{touch-action:manipulation;-webkit-user-select:none;user-select:none;z-index:1;outline:none;flex-direction:column;justify-content:center;align-items:center;min-height:260px;padding:20px 20px clamp(72px,14dvh,150px);display:flex;position:relative}.cube-timer .timer-readout{color:var(--foreground);font-family:var(--font-cube-mono),monospace;font-variant-numeric:tabular-nums;letter-spacing:-.09em;padding-right:.09em;font-size:clamp(82px,16vw,230px);font-weight:540;line-height:.9;transition:color .13s,transform .13s}.cube-timer .phase-holding .timer-readout{color:#f2bf68;transform:scale(.985)}.cube-timer .phase-ready .timer-readout{color:var(--green);transform:scale(.985)}.cube-timer .phase-running .timer-readout{color:var(--foreground)}.cube-timer .timer-status{color:var(--muted);letter-spacing:.03em;text-transform:uppercase;min-height:18px;margin:28px 0 0;font-size:12px;font-weight:600}.cube-timer .phase-holding .timer-status{color:#f2bf68}.cube-timer .phase-ready .timer-status{color:var(--green)}.cube-timer .timer-footer{color:var(--muted);z-index:1;justify-content:center;align-items:center;gap:22px;min-height:58px;padding:10px 22px;font-size:10px;display:flex;position:relative}.cube-timer .timer-footer kbd{background:var(--surface-raised);border:1px solid var(--border);color:var(--muted);font-family:var(--font-cube-mono),monospace;border-bottom-width:2px;border-radius:4px;margin-right:4px;padding:3px 5px;font-size:10px}.cube-timer .timer-footer a{color:var(--muted);margin-left:auto;text-decoration:none}.cube-timer .timer-footer a:hover{color:var(--ink)}.cube-timer .modal-backdrop{z-index:10;background:#05090c94;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.cube-timer .settings-modal{background:var(--surface);border-radius:16px;width:100%;max-width:510px;padding:24px;overflow:hidden;box-shadow:0 28px 80px #00000052}.cube-timer .modal-title{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.cube-timer .modal-title p{color:var(--muted)}.cube-timer .modal-title h2{letter-spacing:-.5px;margin:0;font-size:23px}.cube-timer .setting-row{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;padding:17px 0;display:flex}.cube-timer .setting-row span{flex-direction:column;gap:4px;display:flex}.cube-timer .setting-row strong{font-size:14px}.cube-timer .setting-row small{color:var(--muted);font-size:11px}.cube-timer .danger-row{padding-bottom:2px}.cube-timer .danger-row>button{color:var(--red);background:0 0;border:1px solid #cc3a2f59;border-radius:7px;padding:8px 13px;font-size:12px;font-weight:650}.cube-timer .danger-row>button:hover{background:#342127}@media (max-width:900px){.cube-timer.timer-app{flex-direction:column;align-items:stretch;display:flex;overflow:visible}.cube-timer .timer-panel{order:1;height:auto;min-height:72dvh;position:relative}.cube-timer .sidebar{order:2;height:auto;min-height:520px;overflow:visible}.cube-timer .solve-list{flex:auto;max-height:330px}.cube-timer .scramble-area{padding-top:22px}.cube-timer .timer-readout{font-size:clamp(78px,23vw,170px)}}@media (max-width:560px){.cube-timer .toolbar{min-height:58px;padding:10px 14px}.cube-timer .scramble-area{padding:20px 18px 4px}.cube-timer .scramble-area h1{font-size:15px;line-height:1.45}.cube-timer .timer-touch-area{min-height:260px;padding:12px 12px 48px}.cube-timer .timer-readout{font-size:clamp(68px,24vw,118px)}.cube-timer .timer-footer{justify-content:space-between}.cube-timer .timer-footer span:nth-child(2){display:none}.cube-timer .timer-footer a{margin-left:0}.cube-timer .sidebar{padding:20px 14px}.cube-timer .settings-modal{padding:20px}.cube-timer .setting-row{flex-direction:column;align-items:flex-start;gap:12px}}
