/* A desktop shell around the feature tour; the Dock stays in the viewport. */
.startup{position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:45px;background:#101510;pointer-events:none;animation:startup-exit .2s ease .65s forwards}.startup img{width:82px;height:82px}.startup-track{width:142px;height:4px;border-radius:3px;background:#ffffff18;overflow:hidden}.startup-track span{display:block;height:100%;border-radius:3px;background:#a2d8ae;transform-origin:left;animation:startup-progress .6s cubic-bezier(.2,.6,.4,1) both}@keyframes startup-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes startup-exit{to{opacity:0;visibility:hidden}}@media(prefers-reduced-motion:reduce){.startup{display:none}}
.desktop{height:100svh;min-height:430px;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 80% 0%,#46604a55,transparent 55%),radial-gradient(ellipse at 10% 100%,#366d5755,transparent 65%),#11201a}
.desktop:before,.desktop:after{content:"";position:absolute;pointer-events:none;z-index:-1;border:1px solid #c3edce25;box-shadow:0 -1px 12px #b3ead715,0 -25px 70px #80c9b812,0 40px 0 #afdac506,0 85px 0 #afdac505;border-radius:45%;transform:rotate(-23deg);width:160vw;height:90vw;left:-40vw;top:37vh}.desktop:after{width:150vw;height:95vw;left:auto;right:-65vw;top:17vh;transform:rotate(-30deg);border-radius:47%}
.menu-bar{height:34px;display:flex;align-items:center;padding:0 22px;gap:23px;background:#09150e66;border-bottom:1px solid #ffffff09;font-size:12px;position:relative;z-index:5;color:#e9eee7}.wordmark{display:flex;align-items:center;gap:8px;font-size:14px}.menu-action{border:0;padding:3px 0;background:none;font-size:12px}.menu-right{margin-left:auto;display:flex;align-items:center;gap:18px}.menu-label{color:#b3c1b4;font-size:11px}.menu-right button{display:grid;place-items:center;border:0;background:none;width:25px;height:26px;font-size:20px}.menu-right time{font-size:11px;font-variant-numeric:tabular-nums}
main{height:calc(100% - 34px);padding:32px 142px 106px 40px;display:flex;align-items:center;justify-content:center;position:relative}.desktop-shortcuts{position:absolute;right:22px;top:26px;display:grid;gap:22px;width:92px}.desktop-shortcut{display:flex;align-items:center;flex-direction:column;gap:9px;border:1px solid transparent;border-radius:8px;background:none;padding:8px 3px;font-size:11px;text-align:center;color:#e8f1ed;text-shadow:0 1px 4px #0008}.desktop-shortcut:hover{background:#ffffff0c;border-color:#ffffff16;text-decoration:none}.shortcut-tile{display:grid;place-items:center;width:58px;height:58px;border-radius:14px;box-shadow:0 7px 13px #0003,inset 0 1px 1px #ffffff33;text-shadow:none}.shortcut-tile .icon{width:31px;height:31px}.frog-tile{box-shadow:0 7px 13px #0003}.download-tile{background:linear-gradient(#79b8db,#376fb0);color:#edf9ff}.source-tile{background:linear-gradient(#454b52,#20262c);color:#fff}
.desktop-welcome{text-align:center;color:#e2ede7}.desktop-welcome h1{font-size:46px;line-height:1.08;letter-spacing:-.045em;margin:22px 0 16px;font-weight:500}.desktop-welcome p{font-size:13px;color:#a6bcb6}.desktop-welcome .primary{margin-top:12px}
.app-window{position:relative;z-index:2;display:grid;grid-template-columns:212px minmax(0,1fr);grid-template-rows:44px minmax(0,1fr);width:100%;max-width:1050px;height:min(690px,100%);min-height:0;border:1px solid #a9c3bd35;border-radius:14px;overflow:hidden;background:var(--surface);box-shadow:0 35px 100px #0005,0 8px 24px #0003;transform:translate(var(--window-x,0px),var(--window-y,0px))}.window-chrome{grid-column:1/-1;display:flex;align-items:center;gap:25px;padding:0 16px;font-size:11px;font-weight:600;cursor:grab;touch-action:none;user-select:none}.window-chrome:active{cursor:grabbing}.window-controls{display:flex;gap:8px}.window-controls button{width:12px;height:12px;padding:0;border:0;border-radius:50%;background:#ff6058;color:transparent;font-size:11px;line-height:12px}.window-controls button:nth-child(2){background:#febc2e}.window-controls button:nth-child(3){background:#28c840}.window-controls:hover button,.window-controls button:focus-visible{color:#0009}.chrome-divider{margin:0 9px;color:var(--muted);font-weight:400}.chrome-subtitle{font-weight:400;color:var(--muted)}.chrome-hint{margin-left:auto;font-size:9px;color:var(--muted);font-weight:400}
.sidebar{display:flex;flex-direction:column;min-height:0;background:var(--sidebar);padding:25px 14px 14px;border-right:1px solid var(--line)}.app-identity{display:flex;align-items:center;gap:13px;margin:3px 9px 31px}.app-identity strong{font-size:29px;letter-spacing:-.05em}.sidebar-label{font-size:8px;letter-spacing:.12em;color:var(--muted);margin:0 13px 11px}.app-nav{display:grid;gap:4px}.app-nav button{display:flex;align-items:center;gap:11px;border:0;border-radius:9px;padding:12px 11px;background:none;color:var(--muted);text-align:left;font-size:12px;font-weight:550;white-space:nowrap}.app-nav button .icon{width:21px;height:21px}.app-nav button:hover{background:var(--line)}.app-nav button.selected{background:var(--selected);color:var(--accent)}.sidebar-bottom{margin-top:auto;padding:26px 9px 0;font-size:9px;color:var(--muted);line-height:1.7}.sidebar-bottom .status-dot{margin-right:5px}.sidebar-footnote{display:block;margin-top:10px;font-size:10px}.memory{display:block;width:100%;height:20px;fill:none;stroke:var(--accent);stroke-width:1;opacity:.55;margin-top:16px}
.desktop-footer{position:fixed;z-index:10;bottom:0;left:0;right:0;height:94px;padding:0 25px 18px;display:flex;align-items:end;justify-content:space-between;pointer-events:none;color:#a6bcb6}.desktop-footer>*{pointer-events:auto}.desktop-footer>span{font-size:8px;letter-spacing:.13em;padding-bottom:5px}.desktop-footer>a{font-size:10px;padding-bottom:5px}.dock{position:absolute;left:50%;bottom:max(14px,env(safe-area-inset-bottom));transform:translateX(-50%);display:flex;align-items:center;padding:9px 11px 13px;gap:11px;border-radius:18px;background:#9fb79f22;border:1px solid #d0e5dc2b;box-shadow:0 8px 25px #0003,inset 0 1px 0 #ffffff0d;backdrop-filter:blur(24px)}.dock button,.dock>a{position:relative;display:grid;place-items:center;width:48px;height:48px;border:0;border-radius:12px;box-shadow:0 3px 7px #0004;padding:0;flex-shrink:0}.dock .icon{width:28px;height:28px}.dock button:hover,.dock a:hover{transform:translateY(-5px);text-decoration:none}.dock-frog{background:transparent}.dock-frog.running:after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;bottom:-8px;background:#d9e5df}.dock-divider{width:1px;height:33px;background:#d0e5dc30;margin:0 2px}.dock [data-tooltip]:before{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 18px);left:50%;transform:translateX(-50%);white-space:nowrap;font-size:11px;background:var(--surface);color:var(--ink);padding:7px 10px;border:1px solid var(--line);border-radius:6px;opacity:0;pointer-events:none}.dock [data-tooltip]:hover:before,.dock [data-tooltip]:focus-visible:before{opacity:1}
.quick-menu{position:absolute;right:150px;top:42px;width:245px;z-index:6;background:var(--surface);border:1px solid #a9c3bd35;border-radius:12px;padding:18px;box-shadow:0 12px 40px #0005}.quick-menu>strong{display:block;font-size:14px;margin-bottom:12px}.quick-menu button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;border:0;background:none;padding:10px 7px;border-radius:5px;text-align:left;font-size:12px}.quick-menu button:hover{background:var(--line)}.quick-menu button span{color:var(--muted)}
.app-window.is-expanded{position:fixed;inset:45px 24px 104px;width:auto;max-width:none;height:auto;transform:none}
[data-theme=light] .desktop{background:radial-gradient(ellipse at 80% 0%,#dce8d7,transparent 65%),#a6c0ac}[data-theme=light] .menu-bar{background:#e5eee080;color:#253b2d}[data-theme=light] .menu-label,[data-theme=light] .desktop-footer,[data-theme=light] .desktop-welcome,[data-theme=light] .desktop-welcome p{color:#36563f}[data-theme=light] .desktop-shortcut{color:#234a3a;text-shadow:0 1px 3px #ffffff66}
@media(max-width:1100px){main{padding:25px 118px 102px 24px}.app-window{grid-template-columns:190px minmax(0,1fr)}.chrome-hint{display:none}.sidebar{padding-left:10px;padding-right:10px}.app-nav button{font-size:11px;gap:9px}.desktop-shortcuts{right:10px}.desktop-footer>span{display:none}}
@media(max-height:740px) and (min-width:701px){main{padding-top:18px}.sidebar{padding-top:12px}.app-identity{margin-bottom:18px}.sidebar-footnote,.memory{display:none}.app-nav button{padding-top:10px;padding-bottom:10px}}
@media(max-height:560px) and (min-width:701px){.sidebar{overflow-y:auto}.sidebar-bottom,.sidebar-label,.app-identity{display:none}.app-nav button{padding-top:9px;padding-bottom:9px}.desktop-shortcuts{gap:10px;top:10px}.shortcut-tile,.frog-tile img{width:44px;height:44px}.desktop-shortcut{gap:5px}.desktop-footer{height:80px}.dock button,.dock>a,.dock-frog img{width:42px;height:42px}.dock{bottom:8px}.app-window.is-expanded{bottom:90px}}
@media(max-width:700px){.desktop{height:auto;min-height:100svh;overflow:clip}.menu-bar{padding:0 14px;gap:17px}.menu-right{gap:10px}.menu-right .menu-label,.menu-right time{display:none}main{height:auto;min-height:calc(100svh - 34px);display:block;padding:129px 14px 116px}.desktop-shortcuts{top:15px;left:14px;right:auto;width:auto;display:flex;gap:12px}.desktop-shortcut{width:82px;font-size:10px;gap:6px}.shortcut-tile,.frog-tile img{width:48px;height:48px}.shortcut-tile .icon{width:27px;height:27px}.app-window,.app-window.is-expanded{position:relative;inset:auto;display:flex;flex-direction:column;width:100%;height:auto;max-width:none;min-height:0;transform:none}.window-chrome{height:42px;flex-shrink:0;padding:0 13px;gap:18px;cursor:default;touch-action:auto}.chrome-subtitle{font-size:9px}.sidebar{padding:7px;border-right:0;border-bottom:1px solid var(--line)}.app-identity,.sidebar-label,.sidebar-bottom{display:none}.app-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px}.app-nav button{justify-content:center;gap:6px;padding:10px 4px;font-size:10px;white-space:normal}.app-nav button .icon{width:17px;height:17px}.desktop-footer>a{display:none}.quick-menu{right:12px;top:42px}.desktop-welcome{padding:40px 0 80px}.desktop-welcome h1{font-size:40px}.desktop:before{width:220vw;height:190vw;top:30%;left:-90vw}.desktop:after{height:220vw;width:230vw;right:-150vw;top:12%}}
/* Compact feature window, with a single mobile navigation control. */
.app-window{max-width:820px;height:min(530px,100%);grid-template-columns:166px minmax(0,1fr)}
.sidebar{padding:20px 10px 15px;border-right:0}
.app-identity{margin:0 9px 24px;gap:10px}.app-identity img{width:34px;height:34px}.app-identity strong{font-size:24px}
.app-nav{gap:3px}.app-nav button{font-size:11px;gap:9px;padding:11px 10px}.app-nav button .icon{width:18px;height:18px}
.sidebar-bottom{padding:18px 10px 0;font-size:10px;line-height:1.8}
.window-chrome{font-size:12px}.mobile-feature-picker{display:none}
.desktop-footer>span,.desktop-footer>a{display:none}
@media(max-height:560px) and (min-width:701px){.sidebar{padding-top:8px}.app-nav button{padding-top:8px;padding-bottom:8px}}
@media(max-width:700px){
  main{padding:16px 12px 106px}.desktop-shortcuts{display:none}
  .app-window,.app-window.is-expanded{max-width:460px;height:auto;margin:0 auto;border-radius:12px}
  .sidebar{display:none}.window-chrome{height:38px;justify-content:center}.window-controls{position:absolute;left:14px}.window-controls button:nth-child(2),.window-controls button:nth-child(3){display:none}
  .mobile-feature-picker{display:block;padding:3px 20px 0}
  .mobile-feature-picker select{width:100%;padding:11px 12px;font-size:13px;font-weight:500;color:var(--accent);background:var(--inset);border:0;border-radius:7px}
  .desktop-welcome{padding-top:65px}.dock button,.dock>a,.dock-frog img{width:42px;height:42px}.dock .icon{width:25px;height:25px}.dock{padding:8px 10px 12px;gap:10px}
}
