/* Extended study tools share the timer's black, white, and orange palette. */
.tools-menu{position:relative}.tools-menu summary{list-style:none;cursor:pointer}.tools-menu summary::-webkit-details-marker{display:none}.tools-menu[open] summary{background:var(--soft);color:var(--ink)}.tools-menu-list{position:absolute;right:0;top:calc(100% + 10px);width:230px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:8px;z-index:50;box-shadow:0 15px 50px #0006}.tools-menu-list button{display:block;text-align:left;width:100%;padding:12px;border-radius:8px;font-size:.875rem}.tools-menu-list button:hover{background:var(--soft)}.timer-kinds{display:flex;gap:6px;margin-bottom:24px}.timer-kinds button{padding:7px 12px;font-size:.875rem;color:var(--muted);border-radius:24px}.timer-kinds button.active{color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.timer-card{padding-top:40px}.timer-top:has(.mode-tabs[hidden]){min-height:40px}.inline-options{display:flex;align-items:center;gap:15px;margin-bottom:20px;font-size:.875rem}.inline-options input{width:80px;margin-left:10px}.subject-picker{display:flex;align-items:center;gap:10px;margin-top:12px;font-size:.875rem;color:var(--muted)}.subject-picker select{max-width:190px;padding:6px 8px;background:transparent;border:0}.subject-picker .text-button{font-size:.8125rem}.section-tabs{display:flex;gap:8px;margin-bottom:25px;flex-wrap:wrap}.section-tabs button{padding:10px 17px;border-radius:24px;font-size:.875rem;color:var(--muted);border:1px solid var(--line)}.section-tabs button.active{background:var(--soft);color:var(--ink);border-color:var(--muted)}.space-top{margin-top:24px}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));gap:16px}.feature-card{padding:20px;border:1px solid var(--line);border-radius:12px;background:var(--bg);min-width:0}.feature-card h3{margin:0 0 9px;font-size:1rem;font-weight:550;overflow-wrap:anywhere}.feature-card p{font-size:.875rem;color:var(--muted);line-height:1.7}.feature-card .big-value{font-size:1.8rem;letter-spacing:-.6px;margin:18px 0 6px;display:block}.feature-card .actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:15px}.meter{height:5px;background:var(--line);border-radius:5px;overflow:hidden;margin:12px 0}.meter span{height:100%;background:var(--accent);display:block}.subject-dot{width:10px;height:10px;display:inline-block;border-radius:50%;margin-right:8px}.feature-card .tag,.tag{display:inline-block;border:1px solid var(--line);padding:3px 8px;border-radius:12px;font-size:.75rem;color:var(--muted);margin:3px 3px 3px 0}.filter-row,.task-toolbar,.task-filters,.task-add-options{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-top:20px}.task-toolbar select{flex:1;min-width:130px}.task-filters label,.task-add-options label,.filter-row label,.stack-label,.inline-form label{display:flex;flex-direction:column;gap:8px;font-size:.875rem;color:var(--muted)}input,select,textarea{color:var(--ink)}.filter-row select,.filter-row input,.task-toolbar select,.task-filters input,.task-filters select,.task-add-options select,.task-add-options input,.stack-label input,.stack-label select,.stack-label textarea,.inline-form input,.inline-options input,.editor-field input,.editor-field textarea,.editor-field select{background:var(--soft);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:10px 12px;font-size:.875rem;min-width:0;max-width:100%}.task-add-options{padding-top:15px;border-top:1px solid var(--line)}.task-add-options label{flex:1;min-width:120px}.task-add-options label:last-child{flex:0 1 80px;min-width:70px}.task-filters label{flex:1;min-width:120px}.task-filters>input{width:100%;flex:1 1 190px}.task-row{padding:12px 0}.task-content{min-width:0;flex:1}.task-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:.75rem;color:var(--muted);margin-top:5px;line-height:1.5}.task-edit{width:30px;height:30px}.task-study{font-size:.8125rem;color:var(--accent);padding:7px}.task-check{width:24px;height:24px}.task-row.completed .task-title{color:var(--muted)}.tasks-panel-open .task-filters{display:none}.tasks-panel-open .task-add-options{flex-wrap:wrap}.tasks-panel-open .task-add-options label{min-width:110px}.tasks-panel-open .task-content .task-meta{gap:5px}.text-button{font-size:.875rem}.topbar{gap:15px}.topbar .top-actions>span{display:none}.nav-item{padding:11px 13px}.stat-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:22px 0}.stat-strip strong{display:block;font-size:1.8rem;font-weight:450;margin-bottom:7px}.stat-strip span{font-size:.875rem;color:var(--muted)}.breakdown-row{padding:15px 0;border-bottom:1px solid var(--line);font-size:.875rem}.breakdown-row>div:first-child{display:flex;justify-content:space-between;gap:15px}.export-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.heatmap{display:grid;grid-template-rows:repeat(7,12px);grid-auto-flow:column;grid-auto-columns:12px;gap:4px;overflow:auto;padding:24px 0}.heatmap button{width:12px;height:12px;background:var(--soft);border-radius:2px;border:0;padding:0}.heatmap button:focus-visible{outline-offset:2px}.heatmap button:hover{outline:1px solid var(--ink)}.plant{display:flex;align-items:center;gap:28px;padding:25px 0 5px}.plant-emoji{font-size:4.5rem}.plant h3{font-size:1.5rem;font-weight:500;margin:0 0 10px}.plant p{font-size:.875rem;color:var(--muted);line-height:1.7}.achievement-locked{opacity:.6}.achievement-icon{font-size:1.5rem;display:block;margin-bottom:14px}.planner-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));margin-top:30px;gap:9px}.planner-day{border:1px solid var(--line);border-radius:10px;padding:12px 9px;min-height:220px;overflow-wrap:anywhere}.planner-day.today{border-color:var(--accent)}.planner-day h3{font-size:.875rem;font-weight:500;margin:0 0 18px;color:var(--muted)}.plan-block{background:var(--soft);padding:11px 8px;border-radius:8px;margin-bottom:9px;font-size:.875rem;line-height:1.6}.plan-block small{font-size:.75rem;color:var(--muted);display:block}.plan-block .text-button{font-size:.8125rem}.habit-row,.simple-row{display:flex;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}.habit-row>div,.simple-row>div{flex:1;min-width:0}.habit-row h3,.simple-row h3{font-size:1rem;font-weight:500;margin:0 0 5px;overflow-wrap:anywhere}.habit-row p,.simple-row p{color:var(--muted);font-size:.875rem;line-height:1.6}.habit-toggle{width:30px;height:30px;border:1px solid var(--line);border-radius:50%;flex-shrink:0}.habit-toggle[aria-pressed=true]{background:var(--accent);color:#000}.habit-days{display:flex;gap:4px;margin-top:9px}.habit-days span{height:5px;width:18px;border-radius:2px;background:var(--line)}.habit-days .done{background:var(--accent)}.project-card{border-bottom:1px solid var(--line);padding:22px 0}.project-card:first-child{padding-top:0}.project-card h3{margin:0;font-size:1.1rem;font-weight:500}.project-card .card-subtitle{margin-bottom:10px}.milestone-line{display:flex;align-items:center;gap:10px;font-size:.875rem;margin:14px 0}.milestone-line input{accent-color:var(--accent);width:19px;height:19px}.inline-form{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.inline-form>input{flex:1;min-width:160px}.inline-form label{flex:1}.stack-label{margin-top:22px}.stack-label textarea{resize:vertical;line-height:1.7}.extra-preferences{padding-top:24px;margin-top:24px;border-top:1px solid var(--line)}.extra-preferences summary{cursor:pointer;font-size:.875rem}.editor-field{display:flex;flex-direction:column;gap:9px;margin-top:20px;font-size:.875rem;color:var(--muted)}.editor-field textarea{min-height:90px;resize:vertical}.editor-field input[type=color]{height:45px;width:80px;padding:5px}.editor-field small{font-size:.8125rem;line-height:1.6}.invite-line{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:.875rem;margin:24px 0}.invite-line code{background:var(--soft);padding:8px 10px;border-radius:8px;font-size:.875rem;overflow-wrap:anywhere}.group-layout{display:grid;grid-template-columns:1fr 280px;gap:24px}.group-timer{padding:24px;border:1px solid var(--line);border-radius:12px;text-align:center;margin-top:20px}.group-timer strong{font-size:3rem;font-weight:450;font-variant-numeric:tabular-nums;display:block;margin:14px 0}.group-timer .export-buttons{justify-content:center}.group-timer label{font-size:.875rem;color:var(--muted)}.group-timer input{width:70px;background:var(--soft);border:1px solid var(--line);padding:7px;border-radius:7px;margin-left:8px}.group-chat{max-height:360px;overflow:auto;padding:20px 0}.chat-message{font-size:.875rem;line-height:1.7;margin-bottom:17px;overflow-wrap:anywhere}.chat-message strong{font-weight:500}.chat-message small{color:var(--muted);font-size:.75rem;margin-left:10px}.chat-message p{margin-top:4px;color:var(--muted)}.group-members .simple-row{font-size:.875rem}.group-members h3{font-size:.875rem}.practice-question{font-size:1.35rem;line-height:1.7;margin:25px 0;overflow-wrap:anywhere}.practice-answer{border:1px solid var(--line);border-radius:10px;padding:18px;font-size:1rem;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.practice-options{display:grid;gap:10px;margin-top:20px}.practice-options button{border:1px solid var(--line);border-radius:10px;padding:14px;text-align:left;background:var(--soft);font-size:1rem;line-height:1.6}.practice-options button.correct{border-color:#68b684}.practice-options button.wrong{border-color:#df746c}.sync-banner{position:fixed;left:15px;right:15px;bottom:14px;z-index:110;border:1px solid var(--accent);background:var(--card);border-radius:12px;padding:14px 20px;display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;font-size:.875rem;line-height:1.5}.sync-banner button{font-size:.875rem;color:var(--accent);text-decoration:underline}.sync-error{color:#df746c}.sync-status-row{display:flex;justify-content:flex-end;margin:0 0 20px;font-size:.8125rem;color:var(--muted)}#built-prompt{width:100%;background:var(--soft);border:1px solid var(--line);border-radius:10px;color:var(--ink);padding:16px;margin-top:20px;font-size:.875rem;line-height:1.7}#timer-time.clock-display{font-size:clamp(4rem,12vw,10rem)}.focus-mode .timer-kinds,.focus-mode .subject-picker,.focus-mode #countdown-options{display:none}.timer-footer select:disabled,.subject-picker select:disabled{opacity:.65}.community-empty{padding:30px 0;font-size:1rem;color:var(--muted);line-height:1.7}.feature-card .outline-button{padding:9px 15px}.goal-card .text-button,.sound-card .text-button{font-size:.8125rem}
@media(max-width:1100px){.topbar{gap:10px;padding:0 20px}.nav-item{padding:10px;font-size:.8125rem}.top-actions{gap:6px}.planner-week{grid-template-columns:repeat(4,minmax(0,1fr))}.planner-day{min-height:170px}}
@media(max-width:800px){.topbar .nav-item{font-size:.8125rem;padding:9px}.topbar{flex-wrap:wrap;height:auto;padding:14px 18px 10px}.topbar>nav{order:3;width:100%;justify-content:center}.topbar .brand{margin-right:auto}.top-actions>.outline-button{font-size:0}.top-actions>.outline-button .icon{width:18px}.group-layout{grid-template-columns:1fr}.group-members{order:2}.timer-card{min-height:calc(100dvh - 110px);padding-top:30px}.stat-strip{gap:12px}.stat-strip strong{font-size:1.5rem}}
@media(max-width:600px){.topbar>nav{gap:1px}.topbar .nav-item{font-size:.75rem;padding:8px 9px}.tools-menu-list{right:0}.topbar .nav-item .nav-count{display:none}.timer-kinds{gap:1px;margin-bottom:18px}.timer-kinds button{font-size:.8125rem;padding:8px 10px}.timer-card{padding-top:25px}.timer-body{margin-top:25px}.timer-ring{margin:25px 0}.timer-footer{margin-top:25px}.focus-summary{margin-top:22px}.timer-dock{margin-top:24px;gap:8px}.timer-dock .dock-button{width:39px;height:39px}.subject-picker{font-size:.8125rem;gap:7px}.subject-picker select{max-width:165px}.section-tabs{gap:6px}.section-tabs button{font-size:.8125rem;padding:9px 12px}.card-header{flex-wrap:wrap}.card-header>.primary-button{font-size:.8125rem;padding:11px 15px}.task-add-options label{min-width:120px}.task-toolbar{gap:12px}.task-toolbar .text-button{font-size:.8125rem}.task-filters label{min-width:95px}.task-filters label:first-child{flex:1 1 100%}.task-title{font-size:.9375rem}.task-study{font-size:.75rem;padding:5px}.task-delete,.task-edit{width:27px;height:32px}.task-row{gap:8px}.planner-week{grid-template-columns:1fr}.planner-day{min-height:100px;padding:15px}.planner-day h3{margin-bottom:12px}.plant{gap:16px}.plant-emoji{font-size:3rem}.plant h3{font-size:1.25rem}.stat-strip{grid-template-columns:1fr;gap:15px}.stat-strip>div{display:flex;justify-content:space-between;align-items:center}.stat-strip strong{margin:0;font-size:1.5rem}.filter-row{gap:12px}.filter-row label{flex:1;min-width:130px}.inline-form{gap:10px}.inline-form .outline-button{padding:10px 15px}.habit-row .text-button{font-size:.8125rem}.simple-row{flex-wrap:wrap}.feature-card{padding:17px}.group-timer strong{font-size:2.8rem}.export-buttons .outline-button{font-size:.8125rem;padding:10px 14px}.right-stack,.tasks-panel-open .lower-grid{top:125px}.workspace-footer>span{max-width:calc(100% - 50px);font-size:.75rem}.workspace-footer #cloud-status{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-add input{font-size:.875rem}.task-add button{font-size:.8125rem}#finish-stopwatch{padding:12px 16px;font-size:.8125rem}.timer-controls{flex-wrap:wrap;justify-content:center}.timer-controls #finish-stopwatch{order:3}.timer-top{min-height:40px}.clock-display{font-size:20vw!important}}
@media(max-width:360px){.topbar .nav-item{padding:8px 6px;font-size:.6875rem}.timer-kinds button{padding:8px;font-size:.75rem}.task-meta{font-size:.75rem}}
@media print{.topbar,.page-heading,.workspace-footer,.section-tabs,.filter-row,.export-buttons,.text-button,button,.sync-banner{display:none!important}body,:root,:root.dark{background:#fff!important;color:#111!important;--card:#fff;--ink:#111;--muted:#555;--line:#ddd;--soft:#eee}.card{break-inside:avoid}main{width:100%;padding:0}}
@media(min-height:1000px){.timer-body{margin-top:35px}.timer-ring{margin:25px 0}.timer-footer{margin-top:25px}.focus-summary{margin-top:24px}.timer-dock{margin-top:28px}}
.top-actions>.online-count{display:block;font-size:.75rem;color:var(--muted)}.top-actions>#sign-in{font-size:.875rem;padding:9px 16px}.top-actions>#sign-out{font-size:.8125rem;white-space:nowrap}.share-progress{flex-direction:row!important;align-items:center!important;font-size:.875rem;line-height:1.6}.share-progress input{width:18px;accent-color:var(--accent)}#profile-form{align-items:center}#profile-form>.share-progress{flex:1 1 100%}
@media(max-width:1150px){.top-actions>.online-count{display:none}}
@media(max-width:600px){.top-actions>#sign-in{font-size:.75rem;padding:8px 12px}.top-actions>#sign-out{font-size:.75rem}}
.habit-days button{height:20px;width:22px;border-radius:4px;background:var(--line);border:0;padding:0}.habit-days button.done{background:var(--accent)}.habit-days button:hover{outline:1px solid var(--muted)}.month-layout{grid-template-columns:repeat(7,minmax(0,1fr))}.month-layout .planner-day{min-height:110px}.month-layout .planner-day h3{font-size:.75rem}.outside-month{opacity:.5}.plan-done{opacity:.65}.plan-block[draggable=true]{cursor:grab}.plan-block strong{font-weight:500}.month-layout .plan-block{font-size:.75rem;overflow:hidden}.month-layout .plan-block strong{display:block;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}
@media(max-width:800px){.month-layout{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.month-layout .planner-day{min-height:80px;padding:7px 4px}.month-layout .planner-day h3{font-size:.6875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:7px}.month-layout .plan-block{padding:6px 3px}.month-layout .plan-block small,.month-layout .plan-block .text-button{display:none}.month-layout .plan-block:focus-within{outline:1px solid var(--accent)}.month-layout .empty-day{display:none}}
.inline-options{flex-wrap:wrap;justify-content:center;max-width:500px}.inline-options label{font-size:.8125rem;display:flex;align-items:center}.inline-options input{width:55px;padding:8px;margin-left:6px}.countdown-presets{display:flex;gap:10px;flex-basis:100%;justify-content:center}.countdown-presets button{font-size:.8125rem;padding:5px 10px;color:var(--muted);border:1px solid var(--line);border-radius:14px}.countdown-presets button:hover{color:var(--ink);border-color:var(--muted)}

@media(max-width:600px){.topbar>nav{flex-wrap:wrap;row-gap:3px}.tools-menu-list{right:0;max-width:calc(100vw - 36px)}}
#timer-time.long-time{font-size:clamp(3rem,17vw,9rem)}
/* The timer's task menu is drawn in-page so its contrast follows every theme. */
.task-picker{position:relative;min-width:0;max-width:100%}.task-picker .native-task-select{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;padding:0;border:0;pointer-events:none}
.task-picker-trigger{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 6px;max-width:350px;min-width:160px;font-size:.875rem;color:var(--ink);text-align:left;border-radius:7px}
.task-picker-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.task-picker-arrow{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);flex-shrink:0;margin:0 3px 4px}
.task-picker-trigger:disabled{opacity:.65}.task-picker-trigger[aria-expanded=true]{color:var(--accent)}
.task-picker-options{position:absolute;right:0;top:calc(100% + 14px);width:max-content;min-width:100%;max-width:min(380px,calc(100vw - 40px));max-height:min(280px,50dvh);overflow:auto;overscroll-behavior:contain;z-index:45;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:6px;box-shadow:0 12px 35px #0005;font-size:.875rem;line-height:1.6}
.task-picker.opens-up .task-picker-options{top:auto;bottom:calc(100% + 14px)}.task-picker-options [role=option]{padding:10px 12px;border-radius:7px;cursor:pointer;overflow-wrap:anywhere;min-width:190px}.task-picker-options [role=option].highlighted{background:var(--soft);color:var(--ink)}.task-picker-options [aria-selected=true]{color:var(--accent)}.task-picker-options [aria-selected=true]::after{content:'✓';margin-left:14px;color:var(--accent)}
@media(max-width:600px){.task-picker-trigger{font-size:.8125rem;max-width:58vw;min-width:150px}.task-picker-options{max-width:calc(100vw - 52px);font-size:.8125rem}.task-picker-options [role=option]{min-width:170px}}
.timer-footer:has(.task-picker-trigger[aria-expanded=true]){position:relative;z-index:50}
