/* Robert OS: a personal desktop and browser. */
.home-photo>img {height:auto;}
.os-home .eyebrow {text-transform:none;letter-spacing:0;font-weight:400;}
.os-home .eyebrow::before {display:none;}
.robert-os {height:100svh; overflow:hidden; background:#10161a; color:#e7eae8; font-family:Inter,ui-sans-serif,system-ui,sans-serif;}
.robert-os::before,.robert-os::after,.robert-os>.site-header,.robert-os>.hero__agent-scene,.robert-os>.site-footer {display:none;}
[hidden] {display:none!important;}
button {font:inherit; cursor:pointer; color:inherit;}
button:focus-visible,a:focus-visible,input:focus-visible {outline:2px solid #badba5; outline-offset:4px;}
.desktop {height:100svh; padding:76px 5vw 104px; background:radial-gradient(ellipse at 80% 80%,#334b42 0,transparent 50%),radial-gradient(ellipse at 15% 10%,#414f48 0,transparent 60%),#111b1b;}
.os-panel {position:absolute; inset:0 0 auto; height:42px; display:flex; align-items:center; justify-content:space-between; padding:0 25px; background:#111817bd; border-bottom:1px solid #ffffff12; font-size:11px; backdrop-filter:blur(20px);}
.os-brand {display:flex; align-items:center; gap:7px; font-size:15px; font-weight:650; color:#fff; text-decoration:none;}.os-brand img {width:20px;height:22px;object-fit:contain;}.os-brand>span {color:#bfd1ab;margin-left:-5px;font-weight:400;}.os-brand small {margin-left:20px;font-size:10px;font-weight:400;color:#9baaa1;}
.panel-right {display:flex;gap:10px;align-items:center;}.panel-right button {border:1px solid #ffffff20;background:transparent;border-radius:5px;padding:3px 7px;font-size:10px;}
.online-dot {display:inline-block;width:5px;height:5px;border-radius:50%;background:#b9d59e;box-shadow:0 0 8px #b9d59e30;}
.desktop-wordmark {position:absolute;left:12%;top:30%;font-size:clamp(35px,5vw,75px);letter-spacing:-3px;line-height:1.05;color:#cfdfd2a0;}.desktop-wordmark span {display:block;font:11px ui-monospace,monospace;letter-spacing:2px;margin-top:30px;}
.browser-window {position:relative;display:flex;flex-direction:column;height:100%;max-width:1480px;margin:auto;border:1px solid #ffffff21;border-radius:12px;overflow:hidden;background:#111518;box-shadow:0 35px 100px #0007;}
.window-titlebar {height:40px;flex:none;display:flex;align-items:center;padding:0 16px;background:#202527;border-bottom:1px solid #ffffff07;gap:28px;}
.window-controls {display:flex;gap:8px;}.window-controls button {border:0;border-radius:50%;width:11px;height:11px;padding:0;font-size:9px;line-height:10px;color:#0000;background:#df7d74;}.window-controls button:nth-child(2){background:#dbbd77;}.window-controls button:nth-child(3){background:#a7bf88;}.window-controls:hover button {color:#0009;}
.active-tab {display:flex;align-items:center;gap:10px;align-self:end;height:32px;background:#151a1d;border-radius:7px 7px 0 0;padding:0 15px;font-size:10px;min-width:210px;color:#c4c9c5;}.active-tab>span:last-child {margin-left:auto;color:#7f8888;}.window-caption {margin-left:auto;font:10px ui-monospace,monospace;color:#737d7b;}
.browser-toolbar {height:43px;display:flex;align-items:center;gap:10px;padding:0 17px;background:#181d20;flex:none;}.browser-toolbar button {background:none;border:0;color:#9aa6a2;padding:4px;font-size:17px;}.browser-toolbar button:disabled {opacity:.25;cursor:default;}.address {display:flex;gap:12px;align-items:center;flex:1;background:#101517;border:1px solid #ffffff09;border-radius:6px;padding:7px 12px;font:10px ui-monospace,monospace;color:#c0c9c5;}.address>span:first-child,#address-path{color:#788680;}.address-end {margin-left:auto;color:#7f8c85;}
.browser-bookmarks {display:flex;gap:6px;padding:8px 22px;border-bottom:1px solid #ffffff0d;background:#151a1d;flex:none;}.browser-bookmarks button {display:flex;gap:7px;align-items:center;padding:7px 12px;border:0;border-radius:5px;font-size:10px;background:none;color:#89948f;white-space:nowrap;}.browser-bookmarks button[aria-current=page] {background:#b4cca514;color:#d0e3c5;}.browser-bookmarks button:hover{background:#ffffff08;color:#fff;}
.browser-content {flex:1;min-height:0;overflow:auto;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#38423d transparent;background:radial-gradient(ellipse at 90% 0%,#23342a38,transparent 55%),#111518;}.browser-content:focus{outline:none;}.browser-content main {overflow:visible;}.browser-status {display:flex;justify-content:space-between;gap:12px;padding:10px 24px;background:#141a1b;border-top:1px solid #ffffff0c;font-size:9px;color:#7e8b85;flex:none;}.browser-status>span {display:flex;align-items:center;gap:6px;}.browser-status div {display:flex;gap:18px;}.browser-status a {color:#9daaa2;text-decoration:none;}
.os-home {padding:24px 5% 32px;}.home-topline {display:flex;justify-content:space-between;gap:10px;font:9px ui-monospace,monospace;color:#728079;}.home-topline>span:last-child {display:flex;align-items:center;gap:7px;}.home-layout {display:grid;grid-template-columns:1.25fr 1fr;align-items:center;min-height:350px;padding-top:16px;gap:24px;}.eyebrow {font-size:12px;color:#b5bdb7;margin:18px 0;}.eyebrow span{color:#bfd4a6;margin-left:8px;}.home-copy h1 {font-size:clamp(25px,3.1vw,48px);line-height:1.16;font-weight:500;letter-spacing:-1.6px;margin:0;}.home-copy h1 em{font-style:normal;color:#bed0a7;}.home-description{font-size:12px;line-height:1.85;color:#8c9891;max-width:390px;margin:23px 0;}.home-signature {display:flex;align-items:center;gap:10px;font-size:10px;color:#c1cbc3;}.signature-line{width:20px;height:1px;background:#819374;}
.home-photo {height:340px;position:relative;overflow:hidden;align-self:end;}.home-photo>img {position:absolute;bottom:-25px;left:50%;transform:translateX(-50%);width:310px;max-width:100%;filter:grayscale(1);mask-image:linear-gradient(#000 80%,transparent);}.photo-orbit {position:absolute;width:270px;height:270px;max-width:90%;border:1px solid #a6c09718;border-radius:50%;left:50%;top:30px;transform:translateX(-50%);box-shadow:0 0 0 25px #a6c09704,0 0 0 60px #a6c09703;}.photo-caption {position:absolute;bottom:10px;right:20px;font:9px ui-monospace,monospace;color:#7e8e80;display:flex;gap:10px;align-items:center;}
.home-shortcuts {display:grid;grid-template-columns:repeat(3,1fr);gap:12px;border-top:1px solid #ffffff0c;padding-top:24px;margin-top:14px;}.home-shortcuts button {display:flex;align-items:center;gap:12px;text-align:left;border:1px solid #ffffff0d;background:#ffffff02;padding:17px 14px;border-radius:8px;transition:background .25s,transform .25s,border-color .25s;}.home-shortcuts button:hover{transform:translateY(-3px);background:#b5c99c09;border-color:#b5c99c30;}.shortcut-icon{font-size:21px;color:#b6c7a5;}.home-shortcuts strong {font-size:11px;font-weight:500;display:block;}.home-shortcuts small{font-size:9px;color:#728078;display:block;margin-top:4px;}.shortcut-arrow{margin-left:auto;color:#637264;font-size:14px;}
.os-dock {position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;padding:10px 13px;background:#b4c6b612;backdrop-filter:blur(25px);border:1px solid #ffffff20;border-radius:17px;box-shadow:0 8px 25px #0003;}.os-dock button {width:38px;height:38px;border-radius:10px;border:1px solid #ffffff16;background:#29332e;font-size:23px;transition:transform .2s;}.os-dock button:hover {transform:translateY(-5px);}.os-dock .dock-browser {background:#bdcfa9;color:#263d32;}.os-dock .dock-folder {background:#c8b490;color:#57442f;}.os-dock .dock-terminal{background:#1b2421;font:19px ui-monospace,monospace;}.os-dock .dock-purpose {background:#889982;color:#17291f;}.os-dock>span {width:1px;height:28px;background:#ffffff20;margin:0 3px;}.desktop-hint {position:absolute;bottom:44px;left:5vw;font:9px ui-monospace,monospace;color:#8c9f9190;}.desktop-hint span{display:block;margin-top:5px;}
.maximized {padding:42px 0 86px;}.maximized .browser-window{max-width:none;border-radius:0;}
.robert-os .section {padding:40px 0;min-height:0;background:none;box-shadow:none;}.robert-os .shell {width:88%;max-width:1100px;}.robert-os .section h2 {font-size:clamp(25px,3vw,38px);line-height:1.2;letter-spacing:-.9px;max-width:760px;}.robert-os .section p{font-size:13px;line-height:1.8;}.robert-os .section-heading {margin-bottom:28px;}.robert-os .reveal {opacity:1;transform:none;filter:none;}.robert-os .work-card{min-height:0;background:#ffffff03;border-color:#ffffff0c;}.robert-os .work-card__visual {min-height:135px;}.robert-os .work-card__body {padding:22px;}.robert-os .work-card h3{font-size:20px;}.robert-os .text-link{color:#bdd0a7;}.robert-os .principles{padding:0;}.robert-os .purpose-grid {gap:18px;}.robert-os .purpose-card{padding:22px;}.robert-os .about-portrait {height:350px;min-height:0;}.robert-os .learning-logos img{max-height:55px;}.robert-os .purpose-closing{font-size:24px;margin-top:35px;}
.terminal-dialog {padding:0;width:min(660px,90vw);border:1px solid #536454;border-radius:10px;background:#101916;color:#c5d8b8;box-shadow:0 30px 100px #000a;}.terminal-dialog::backdrop{background:#0005;backdrop-filter:blur(4px);}.terminal-dialog header{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;background:#202b24;font:11px ui-monospace,monospace;}.terminal-dialog header button {border:0;background:none;font-size:20px;}#terminal-output{padding:16px 22px;max-height:260px;overflow:auto;white-space:pre-wrap;font:12px/1.8 ui-monospace,monospace;}#terminal-output p{margin:0 0 8px;}#terminal-form{display:flex;gap:10px;padding:0 22px 24px;font:11px ui-monospace,monospace;}#terminal-form label{white-space:nowrap;}#terminal-form input {background:none;border:0;color:#f2f7ef;width:100%;min-width:0;font:inherit;padding:0;}#terminal-form label span{color:#738b6b;}
.boot-screen {position:fixed;inset:0;z-index:1000;background:#0e1512;display:grid;place-items:center;}.boot-inner {width:min(360px,80vw);}.boot-inner>img{width:36px;height:40px;}.boot-inner h2{font-size:36px;font-weight:500;letter-spacing:-1px;margin:12px 0 5px;}.boot-inner h2 span{color:#bcd2a4;}.boot-inner>p{color:#748675;font:10px ui-monospace,monospace;}.boot-lines{margin:38px 0;color:#b0c49e;font:11px/1.8 ui-monospace,monospace;}.boot-lines p{animation:boot-line .4s both;}.boot-lines p:nth-child(2){animation-delay:.5s;}.boot-lines p:nth-child(3){animation-delay:1s;}.boot-progress{height:2px;background:#b7cd9d;transform-origin:left;animation:boot-progress 2s ease both;}.boot-inner button{margin-top:30px;background:none;border:0;color:#80957b;padding:8px 0;font-size:11px;}@keyframes boot-line{from{opacity:0}to{opacity:1}}@keyframes boot-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(min-width:1500px){.os-home{padding-top:35px;}.home-layout{min-height:430px;}.home-photo{height:410px;}.home-photo>img{width:375px;}.home-shortcuts{margin-top:30px;}}
@media(max-width:850px){.desktop{padding:58px 20px 94px;}.home-layout{gap:4px;}.home-photo{height:285px;}.home-copy h1{font-size:29px;}.home-shortcuts button{padding:12px 9px;gap:8px;}.shortcut-arrow{display:none;}.desktop-hint{display:none;}.browser-bookmarks{padding-inline:10px;gap:0;overflow-x:auto;}.browser-bookmarks button{padding-inline:10px;}.robert-os .approach-layout,.robert-os .about-layout {grid-template-columns:1fr;}}
@media(max-width:600px){.desktop{padding:48px 8px 80px;}.os-panel{padding:0 12px;}.os-brand small,.panel-status,.window-caption{display:none;}.os-panel time{font-size:10px;}.window-titlebar{gap:18px;padding:0 12px;height:34px;}.active-tab{height:28px;min-width:185px;}.browser-toolbar{padding:0 8px;gap:7px;height:39px;}.browser-bookmarks button{font-size:10px;padding:7px 9px;}.browser-bookmarks button>span:first-child{display:none;}.os-home{padding:18px 20px 25px;}.home-topline{font-size:8px;}.home-layout{grid-template-columns:1fr;padding-top:14px;}.home-copy h1{font-size:32px;letter-spacing:-1px;}.home-description{font-size:12px;margin:18px 0;}.home-photo{height:220px;width:100%;margin-top:16px;}.home-photo>img{width:230px;bottom:-48px;}.home-signature{font-size:10px;}.photo-orbit{width:200px;height:200px;top:0;}.home-shortcuts{grid-template-columns:1fr;margin-top:8px;padding-top:18px;gap:8px;}.home-shortcuts button{padding:14px;}.shortcut-arrow{display:block;}.home-shortcuts small{font-size:10px;}.os-dock{bottom:10px;padding:8px 12px;gap:10px;border-radius:14px;}.os-dock button{width:32px;height:32px;font-size:21px;}.browser-status{padding:9px 12px;font-size:8px;}.browser-status div{gap:10px;}.browser-status>span{max-width:48%;}.robert-os .purpose-grid,.robert-os .work-grid{display:grid;grid-template-columns:1fr;}.robert-os .work-card{grid-column:auto;}.robert-os .work-card--feature{grid-template-columns:1fr;}.robert-os .section{padding:28px 0;}.robert-os .section h2{font-size:29px;}.robert-os .purpose-closing{font-size:22px;}.maximized{padding:42px 0 76px;}.terminal-dialog{width:94vw;}#terminal-form{flex-wrap:wrap;}#terminal-form input{padding:5px 0;}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important;}}

/* The desktop owns the viewport; only the browser content scrolls. */
html:has(body.robert-os) {height:100%;overflow:hidden;scroll-behavior:auto;scroll-snap-type:none;scroll-padding:0;}
.robert-os .desktop {position:fixed;inset:0;overflow:hidden;}
.robert-os .os-panel {position:fixed;top:0;left:0;right:0;}
.robert-os .desktop-wordmark {top:30%;max-width:80%;}
