:root{--touch: 44px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}html{-webkit-text-size-adjust:100%}body{min-height:100dvh;padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px);padding-bottom:calc(var(--nav-h) + var(--safe-bottom));overscroll-behavior-y:none}button,a,input,select,textarea,summary,label{touch-action:manipulation}.done-top{padding-top:calc(14px + var(--safe-top))}.theme-toggle{top:calc(12px + var(--safe-top))}.tabs{height:calc(var(--nav-h) + var(--safe-bottom));padding-bottom:var(--safe-bottom)}.toast{bottom:calc(var(--nav-h) + var(--safe-bottom) + 12px)}body.keyboard-open{padding-bottom:0}body.keyboard-open .tabs{display:none}body.keyboard-open .toast{bottom:12px}.modal{max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 24px)}.modal-box{max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 24px);overscroll-behavior:contain}.task.touch-dragging{opacity:.95;pointer-events:none;transform:scale(1.02);box-shadow:0 10px 28px var(--shadow);outline:2px solid var(--accent);outline-offset:-2px}#minimal-list.is-touch-dragging .task:not(.touch-dragging){transition:transform .12s ease}@media (pointer: coarse){input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important}.quick-add input,.edit-input,.docs-search,.comment-input{min-height:var(--touch)}.settings input:not([type=checkbox]),.settings select,.epic-target input{min-height:40px}input[type=checkbox]{width:22px;height:22px}input[type=checkbox]:after{width:10px;height:5px}input[type=checkbox]{position:relative}input[type=checkbox]:before{content:"";position:absolute;inset:-11px}.task{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.task .edit-input{-webkit-user-select:text;user-select:text}.day-nav-btn,.modal-close,.tab-order-btn,.block-remove{min-width:var(--touch);min-height:var(--touch)}.day-nav-btn{width:var(--touch);height:var(--touch);font-size:26px}.day-nav .upcoming-btn,.round-btn,.info-btn,.theme-toggle{width:40px;height:40px}.modal-close{font-size:28px}.link-btn,.ghost.small,.primary.small,.danger-btn.small,.minimal-today,.ended-move,.upcoming-go,#test-sound,#export-data,#import-data,.doc-link-btn,.suggest-btn{position:relative;min-height:40px}.link-btn:after,.ended-move:after,.minimal-today:after,.upcoming-go:after{content:"";position:absolute;inset:-10px -4px}.ghost.small,.primary.small,.danger-btn.small{padding-top:8px;padding-bottom:8px;font-size:14px}.primary,.danger-btn,.doc-link-btn{min-height:var(--touch)}.prob-tag[data-tip],.minimal-pct,.block-dot{position:relative}.prob-tag[data-tip]:after,.minimal-pct:after,.block-dot:after{content:"";position:absolute;inset:-14px -8px}.task .actions,[data-theme] .task .actions{position:static;display:flex;align-self:center;margin:-8px -8px -8px auto;padding:0;background:none;box-shadow:none}.task .actions button{min-width:var(--touch);min-height:var(--touch);font-size:18px}.task.dragging .actions,.task.touch-dragging .actions{visibility:hidden;display:flex}.comment-hint{display:none}.modal-close:focus-visible{outline:none}.md-toolbar button{min-height:40px;min-width:40px}.tab{font-size:12px}.settings label.check-row{min-height:var(--touch);align-items:center}}.install-steps{margin:4px 0 8px;padding-left:20px;display:flex;flex-direction:column;gap:4px}.install-section .ss-body p{margin:0 0 8px}.toast-action{margin-left:12px}@media (pointer: coarse){.toast-action{min-height:36px;padding:0 8px}}.app-foot{margin:8px 16px 24px;font-size:12px;color:var(--muted);text-align:center}.app-foot a{color:inherit}.day-nav .sync-btn{width:28px;height:28px;margin-left:6px}.day-nav .sync-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}@media (pointer: coarse){.day-nav .sync-btn{width:40px;height:40px}}.sync-btn.is-busy svg{animation:drive-spin .9s linear infinite}.is-busy{opacity:.7;cursor:progress}@keyframes drive-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.sync-btn.is-busy svg{animation:none}}.drive-section .ss-body p{margin:0 0 8px}
