.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.feature-button{height:42px;min-width:42px;padding:0 10px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.035);color:#d6d8df;cursor:pointer;font:700 18px/1 inherit;transition:.2s}.feature-button:hover{background:rgba(255,255,255,.07);transform:translateY(-1px)}.timer-button{width:42px;min-width:42px;padding:0;display:flex;align-items:center;justify-content:center;gap:6px;font-size:11px;letter-spacing:.02em}.timer-button-icon{font-size:17px;font-weight:400}.timer-button.running{width:auto;min-width:86px;padding-inline:10px;color:#b6f4cb;border-color:rgba(81,213,139,.28);background:rgba(81,213,139,.09)}.timer-button.urgent{color:#ffd78a;border-color:rgba(255,190,79,.5);background:rgba(255,176,45,.13);box-shadow:0 0 20px rgba(255,176,45,.1)}
.command-modal{width:min(650px,calc(100% - 24px));padding:8px;margin-top:12vh}.command-search{height:54px;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:0 12px;border-bottom:1px solid var(--line)}.command-search svg{width:20px;height:20px;color:var(--muted)}.command-search input{border:0;outline:0;background:transparent;color:var(--text);font-size:16px}.command-search kbd,.command-modal footer{color:var(--muted);font-size:10px}.command-results{display:flex;flex-direction:column;gap:3px;padding:7px;min-height:120px;max-height:420px;overflow:auto}.command-row{width:100%;display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;padding:9px;border:0;border-radius:10px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.command-row.active{background:rgba(139,149,255,.15)}.command-row>span:nth-child(2){display:flex;flex-direction:column;gap:3px}.command-row strong{font-size:13px}.command-row small{color:var(--muted);font-size:10px}.command-row kbd{opacity:.4}.command-icon{width:31px;height:31px;border-radius:8px;background:rgba(255,255,255,.07);display:grid;place-items:center;overflow:hidden}.command-icon svg{width:17px;height:17px}.command-icon img{width:100%;height:100%;object-fit:cover}.command-modal footer{display:flex;justify-content:flex-end;gap:15px;padding:3px 14px 9px}.command-empty{padding:30px;text-align:center;color:var(--muted)}
.command-icon.app{position:relative;background:linear-gradient(145deg,var(--command-light),var(--command-dark));color:#fff;box-shadow:inset 0 1px rgba(255,255,255,.28),0 4px 10px rgba(0,0,0,.18)}.command-icon.app:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(255,255,255,.22),transparent 50%);pointer-events:none}.command-icon.app svg,.command-icon.app img{position:relative}
.capture-text{display:flex;flex-direction:column;gap:7px}.capture-text span{font-size:12px;color:var(--muted);font-weight:620}.capture-text textarea{resize:vertical;border:1px solid var(--line);border-radius:12px;background:rgba(0,0,0,.17);color:var(--text);padding:12px;outline:0;line-height:1.5}.capture-options{margin-top:14px}
.timer-modal{width:min(560px,calc(100% - 24px))}.timer-form-grid{margin-bottom:17px}.timer-duration-fields{display:flex;align-items:flex-start;justify-content:center;gap:8px;padding:18px 12px 13px;border:1px solid var(--line);border-radius:15px;background:rgba(0,0,0,.12)}.timer-duration-fields label{display:flex;flex-direction:column;align-items:center;gap:6px}.timer-duration-fields input{width:82px;height:58px;border:0;border-radius:11px;background:rgba(255,255,255,.055);color:var(--text);text-align:center;font-size:27px;font-variant-numeric:tabular-nums;outline:0}.timer-duration-fields input:focus{box-shadow:0 0 0 2px rgba(139,149,255,.45)}.timer-duration-fields label span,.timer-until-field span{font-size:10px;color:var(--muted)}.timer-duration-fields b{margin-top:16px;color:var(--muted);font-size:20px}.timer-presets{display:flex;justify-content:center;flex-wrap:wrap;gap:7px;margin-top:10px}.timer-presets button{height:33px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:var(--glass);color:var(--muted);cursor:pointer;font-size:11px}.timer-presets button:hover{background:rgba(139,149,255,.14);color:var(--text)}.timer-until-field{display:flex;flex-direction:column;gap:7px;padding:15px;border:1px solid var(--line);border-radius:15px;background:rgba(0,0,0,.12)}.timer-until-field input{height:48px;border:1px solid var(--line);border-radius:10px;background:#171a22;color:var(--text);padding:0 12px;color-scheme:dark}.timer-overview{margin-top:16px}.timer-overview>p{margin:0 0 7px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.timer-overview-row{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:9px;background:rgba(255,255,255,.035);margin-top:5px}.timer-overview-row span{display:flex;flex-direction:column;gap:2px}.timer-overview-row strong{font-size:12px}.timer-overview-row small{font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}.timer-overview-row button{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:17px}
.floating-timers{position:fixed;inset:0;z-index:70;pointer-events:none}.floating-timer{position:absolute;width:276px;min-height:88px;padding:12px 14px 13px;border:1px solid rgba(255,255,255,.12);border-radius:17px;background:rgba(24,27,36,.98);color:#f5f6fa;box-shadow:0 6px 16px rgba(0,0,0,.34),0 18px 34px rgba(0,0,0,.14),inset 0 1px rgba(255,255,255,.055);pointer-events:auto;cursor:grab;touch-action:none;user-select:none;transition:border-color .25s,box-shadow .25s,background-color .25s,transform .18s}.floating-timer:active,.floating-timer.dragging{cursor:grabbing}.floating-timer.dragging{transform:scale(1.015);box-shadow:0 9px 22px rgba(0,0,0,.4),0 22px 38px rgba(0,0,0,.16);transition:none}.floating-timer-handle{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px}.timer-status-icon{width:18px;height:18px;border-radius:6px;display:grid;place-items:center;background:rgba(103,217,151,.1);color:#70dba0;font-size:9px;font-weight:800}.timer-status-icon.paused{background:rgba(255,255,255,.07);color:#aeb4c2;font-size:10px}.timer-status-icon.finished{background:rgba(255,91,101,.14);color:#ff737c;font-size:12px}.timer-name-button{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;border:0;background:transparent;color:inherit;padding:3px 5px;margin:-3px -5px;border-radius:6px;font:inherit;font-size:12px;font-weight:700;cursor:grab}.timer-name-button:hover{background:rgba(255,255,255,.055)}.timer-name-input{width:100%;min-width:0;height:25px;border:1px solid rgba(139,149,255,.5);border-radius:7px;background:rgba(7,9,14,.55);color:#fff;padding:0 7px;font:inherit;font-size:12px;font-weight:650;outline:0;box-shadow:0 0 0 2px rgba(139,149,255,.12);user-select:text;touch-action:auto}.floating-timer-handle>button[data-timer-delete]{width:25px;height:25px;border:0;border-radius:8px;background:transparent;color:#8f96a6;font-size:17px;cursor:pointer}.floating-timer-handle>button[data-timer-delete]:hover{background:rgba(255,255,255,.07);color:#fff}.floating-timer-time-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:7px 0 7px}.floating-timer-time{font-size:31px;line-height:1;font-weight:320;letter-spacing:-.045em;font-variant-numeric:tabular-nums}.timer-inline-toggle{width:30px;height:30px;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(255,255,255,.045);color:#b9c0d0;display:grid;place-items:center;padding:0;cursor:pointer;font-size:12px;touch-action:auto}.timer-inline-toggle:hover{background:rgba(255,255,255,.08);color:#fff}.floating-timer-progress{height:3px;border-radius:3px;background:rgba(255,255,255,.08);overflow:hidden}.floating-timer-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7785f2,#8d98ff);transition:width .5s linear}.floating-timer.urgent{border-color:rgba(255,190,79,.5);background-color:#2a251d;animation:timer-warm-pulse 1.8s ease-in-out infinite}.floating-timer.urgent .timer-status-icon{background:rgba(255,189,88,.14);color:#ffc36a}.floating-timer.urgent .floating-timer-progress i{background:linear-gradient(90deg,#e78d32,#ffc66d)}.floating-timer.critical{border-color:rgba(255,100,100,.72);background-color:#2d1c20;animation:timer-critical-pulse .9s ease-in-out infinite}.floating-timer.critical .timer-status-icon{background:rgba(255,100,100,.16);color:#ff7373}.floating-timer.critical .floating-timer-progress i{background:linear-gradient(90deg,#e04454,#ff7777)}.floating-timer.finished{border-color:rgba(255,92,102,.78);background-color:#311b20;animation:timer-finished-pulse 1.05s ease-in-out infinite}.floating-timer.finished .floating-timer-time{color:#ff8c94;font-size:25px}.timer-remove-confirm{position:absolute;z-index:5;inset:5px;border:1px solid rgba(255,120,128,.32);border-radius:13px;background:rgba(23,18,22,.985);display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;align-items:center;gap:5px 10px;padding:12px}.timer-remove-confirm>strong{font-size:12px}.timer-remove-confirm>span{display:flex;gap:5px;grid-row:1/3;grid-column:2}.timer-remove-confirm button{height:28px;padding:0 9px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(255,255,255,.055);color:#d7dae2;font-size:9px;font-weight:650;cursor:pointer;touch-action:auto}.timer-remove-confirm button[data-timer-confirm]{border-color:rgba(255,96,106,.3);background:rgba(255,76,88,.12);color:#ff9aa1}.timer-remove-confirm button:focus{outline:2px solid rgba(255,132,140,.55);outline-offset:1px}.timer-remove-confirm small{color:#8f96a6;font-size:8px}@keyframes timer-warm-pulse{50%{border-color:rgba(255,196,96,.72);box-shadow:0 6px 16px rgba(0,0,0,.34),0 0 0 3px rgba(255,177,56,.055)}}@keyframes timer-critical-pulse{50%{transform:scale(1.014);border-color:#ff7078;box-shadow:0 7px 18px rgba(0,0,0,.38),0 0 0 4px rgba(255,72,72,.065)}}@keyframes timer-finished-pulse{50%{transform:scale(1.018);border-color:#ff626d;background-color:#3a1e24;box-shadow:0 8px 20px rgba(0,0,0,.4),0 0 0 5px rgba(255,72,82,.08)}}
.undo-toast{position:fixed;z-index:250;left:50%;bottom:28px;transform:translate(-50%,20px);display:flex;align-items:center;gap:18px;padding:11px 12px 11px 16px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:rgba(25,28,37,.96);box-shadow:0 18px 50px rgba(0,0,0,.42);color:var(--text);font-size:12px;opacity:0;visibility:hidden;transition:.2s}.undo-toast.show{opacity:1;visibility:visible;transform:translate(-50%,0)}.undo-toast button{border:0;background:transparent;color:#aeb5ff;font-weight:700;cursor:pointer}
.app-card.touch-dragging{opacity:.35;transform:scale(.94)}.app-card.touch-drop-before:before,.app-card.touch-drop-after:after{content:"";position:absolute;top:8px;bottom:8px;width:3px;border-radius:3px;background:#9da6ff;box-shadow:0 0 10px #7d88ff}.app-card.touch-drop-before:before{left:-3px}.app-card.touch-drop-after:after{right:-3px}
@media(min-width:901px){.topbar{grid-template-columns:minmax(220px,1fr) auto minmax(220px,1fr)}.topbar>.groups{width:auto;max-width:min(720px,calc(100vw - 520px));justify-self:center}}
@media(max-width:650px){.topbar{grid-template-columns:56px minmax(0,1fr) auto;gap:7px}.top-actions{grid-column:3;grid-row:1;justify-content:flex-end;gap:4px}.feature-button{min-width:38px;width:38px;height:40px;padding:0}.timer-button{width:42px;min-width:42px;font-size:9px}.timer-button-icon{font-size:15px}.timer-duration-fields{gap:4px;padding-inline:7px}.timer-duration-fields input{width:70px}.floating-timer{width:min(276px,calc(100vw - 24px))}.command-modal{margin-top:7vh}.undo-toast{bottom:14px;width:calc(100% - 24px);justify-content:space-between}.app-card[data-id]{touch-action:pan-y}}

.modal,.command-modal{margin-top:70px;max-height:calc(100dvh - 90px)}.capture-header{align-items:center}.capture-heading{display:flex;align-items:center;gap:12px}.capture-heading-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:rgba(139,149,255,.12);color:#b8beff;border:1px solid rgba(151,160,255,.16)}.capture-heading-icon svg{width:20px;height:20px}.capture-heading p{margin-bottom:4px}.capture-options{grid-template-columns:repeat(2,minmax(0,1fr))}.capture-actions{grid-template-columns:minmax(0,1fr) auto;border-top:0;padding-top:14px;align-items:center}.capture-actions small{color:var(--muted);font-size:10px}
@media(max-width:900px){.modal,.command-modal{margin-top:62px;max-height:calc(100dvh - 82px)}}
@media(max-width:650px){.modal,.command-modal{margin-top:54px;max-height:calc(100dvh - 74px)}.capture-actions{grid-template-columns:1fr}.capture-actions small{display:none}}

.search-group-tab{display:flex;align-items:center;gap:6px}.search-group-tab svg{width:14px;height:14px}

.timer-remove-confirm{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px}.timer-remove-confirm button{min-width:82px;height:32px;font-size:10px}
.timer-notification-action{width:100%;min-height:42px;margin:14px 0 10px;padding:9px 12px;border:1px solid rgba(139,149,255,.18);border-radius:11px;background:rgba(139,149,255,.07);color:#c9cdff;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-size:11px;font-weight:650}.timer-notification-action:hover{background:rgba(139,149,255,.12)}.timer-notification-action[hidden]{display:none}

/* Final iPhone layout: four apps, readable groups, compact widgets and keyboard-safe search. */
@media(max-width:650px){
  .topbar{grid-template-columns:minmax(0,1fr) 42px!important;gap:8px!important}
  .topbar>.groups{display:grid!important;grid-template-columns:40px minmax(0,1fr) 40px;gap:8px;width:100%!important;min-width:0;margin:0!important;overflow:hidden}
  .topbar .group-tabs{display:flex;min-width:0!important;width:100%!important;overflow-x:auto;scroll-padding-inline:5px;padding:3px;gap:3px;border-radius:13px}
  .group-tab{min-height:34px;padding:7px 11px;font-size:12px;flex:0 0 auto}
  .group-tab.icon-only{width:34px}
  .top-actions{grid-column:2!important}
  .app-grid,body.compact .app-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;justify-content:stretch!important;gap:16px 0!important;width:100%!important}
  .app-card,body.compact .app-card{width:100%!important;min-width:0!important;flex:none!important;padding:7px 1px!important}
  .app-icon,body.compact .app-icon{width:min(64px,17vw)!important;height:min(64px,17vw)!important;border-radius:17px!important}
  .app-card strong,body.compact .app-card strong{font-size:11px!important;line-height:1.2;padding-inline:3px!important}
  .note-layer{display:grid!important;grid-template-columns:1fr;gap:10px!important;margin-top:26px!important}
  .board-stage{padding-bottom:24px!important}
  .sticky-card,.todo-card{width:100%!important;min-height:0!important;height:auto!important;padding:15px 16px 12px!important;border:1px solid rgba(255,255,255,.09);border-radius:17px!important;background:#171a22!important;color:#f3f4f7!important;box-shadow:0 10px 28px rgba(0,0,0,.2)!important;overflow:hidden}
  .sticky-card:after{background:linear-gradient(120deg,rgba(255,255,255,.045),transparent 45%)!important}
  .sticky-card:before{content:"";position:absolute;z-index:2;left:0;top:16px;bottom:16px;width:3px;border-radius:0 3px 3px 0;background:var(--card-accent,#8e96ff)}
  .sticky-card[data-color=yellow]{--card-accent:#d9c66d}.sticky-card[data-color=orange]{--card-accent:#df955c}.sticky-card[data-color=red]{--card-accent:#df7474}.sticky-card[data-color=pink]{--card-accent:#df83ab}.sticky-card[data-color=purple]{--card-accent:#a68ad0}.sticky-card[data-color=blue]{--card-accent:#6eace7}.sticky-card[data-color=teal]{--card-accent:#69b4aa}.sticky-card[data-color=green]{--card-accent:#77c27a}.sticky-card[data-color=mint]{--card-accent:#9ac28f}.sticky-card[data-color=graphite]{--card-accent:#828b99}
  .sticky-card header{margin-bottom:10px}.sticky-card h3{font-size:16px}.sticky-type{color:var(--card-accent);opacity:1;font-size:9px}
  .sticky-kind-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:color-mix(in srgb,var(--card-accent) 14%,transparent);color:var(--card-accent)}.sticky-kind-icon svg{width:16px;height:16px}
  .sticky-summary{color:#c7cad2;font-size:12px;line-height:1.48;-webkit-line-clamp:3}.sticky-footer{margin-top:12px;padding:0!important;color:#999fac;opacity:1}
  .sticky-action{width:30px;height:30px;border-radius:9px;background:rgba(255,255,255,.065);color:#d9dbe2;font-size:11px;font-weight:750}
  .todo-progress{height:3px;margin:-1px 0 12px;border-radius:3px;background:rgba(255,255,255,.07);overflow:hidden}.todo-progress i{display:block;height:100%;border-radius:inherit;background:var(--card-accent)}
  .todo-preview-list{gap:8px}.todo-preview-row{font-size:12px;color:#e6e7eb}.todo-preview-row input{width:17px;height:17px;margin-top:0;accent-color:var(--card-accent)}.todo-preview-row.done{color:#8d929e}.todo-more{padding-left:25px;color:#8f95a2;font-size:10px}.todo-empty{color:#9da3af}
  #commandLayer{top:var(--visual-viewport-top,0px);bottom:auto;height:var(--visual-viewport-height,100dvh);overflow:hidden}
  #commandLayer .modal-backdrop{position:absolute}
  .command-modal{display:flex;flex-direction:column;width:calc(100% - 20px);max-height:calc(var(--visual-viewport-height,100dvh) - env(safe-area-inset-top,0px) - 20px)!important;margin:calc(env(safe-area-inset-top,0px) + 10px) auto 10px!important;border-radius:22px;padding:7px}
  .command-search{height:50px;flex:0 0 50px}.command-search input{font-size:16px;min-width:0}.command-search kbd,.command-modal footer{display:none}
  .command-results{min-height:0;max-height:none;overflow-y:auto;padding-bottom:max(8px,env(safe-area-inset-bottom,0px))}
  .command-row{min-height:56px;grid-template-columns:38px minmax(0,1fr);padding:8px}.command-row>kbd{display:none}.command-row strong{font-size:14px}.command-row small{font-size:11px}
}
