/* Shared sea atmosphere. Content remains stable above a fixed looping scene. */
:root{--ocean-deep:#061b2d;--ocean-gold:#d3b477;--ocean-white:#f6f8f8}
.ocean-scene{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:#061b2d center/cover no-repeat}
.ocean-scene[data-ocean-scene=surface]{background-image:url('/workspace/ocean-assets/surface-v1.png')}
.ocean-scene[data-ocean-scene=underwater]{background-image:url('/workspace/ocean-assets/underwater-v1.png')}
.ocean-scene canvas{width:100%;height:100%;display:block;opacity:0;transition:opacity .5s ease}
.ocean-toggle{min-height:42px;padding:10px 16px;border:1px solid #b7d1da80;background:#061b2dcc;color:#f6f8f8;border-radius:24px;font-family:inherit;font-size:14px;line-height:1.4;cursor:pointer}
.ocean-toggle:hover{background:#10394c}.ocean-toggle:focus-visible{outline:3px solid #e7c78e;outline-offset:4px}
.ocean-login{margin:0;min-height:100vh;min-height:100svh;background:#061b2d;color:#fff;font:16px/1.8 "HarmonyOS Sans SC","PingFang SC","Microsoft YaHei",system-ui,sans-serif}
.ocean-login *{box-sizing:border-box}.ocean-login a{color:inherit}
.ocean-login::after{content:'';position:fixed;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#0317278a,transparent 75%),linear-gradient(0deg,#031727ad,transparent 65%)}
.ocean-login-header,.ocean-login-main,.ocean-login-footer{position:relative;z-index:2}
.ocean-login-header{padding:30px 4vw;display:flex;justify-content:space-between;align-items:center;gap:20px}
.ocean-wordmark{display:flex;align-items:center;gap:14px;font-size:18px;font-weight:600}.ocean-wordmark-mark{display:grid;place-items:center;width:44px;height:44px;background:linear-gradient(120deg,#c7a566,#eed7a3,#c7a566);color:#152c35;border-radius:11px;font-size:19px;font-weight:750}
.ocean-login-main{max-width:1680px;margin:auto;padding:clamp(60px,11vh,130px) 6vw 80px;display:grid;grid-template-columns:minmax(0,1fr) 410px;gap:80px;align-items:center;min-height:calc(100svh - 190px)}
.ocean-login-copy{align-self:center;padding-bottom:60px;max-width:720px}.ocean-login-copy h1{font-size:clamp(44px,4.5vw,76px);font-weight:600;line-height:1.35;letter-spacing:-.04em;margin:0 0 22px;text-shadow:0 2px 25px #00121e33}
.ocean-login-copy p{font-size:18px;max-width:32ch;color:#e6f1f4;margin:0;line-height:1.9}.ocean-login-copy .ocean-intro-line{display:block;width:48px;height:2px;background:#ecd4a2;margin-bottom:28px}
.ocean-login-card{padding:38px 34px 34px;border:1px solid #d8e9ec40;border-radius:18px;background:#061b2de8;box-shadow:0 22px 64px #00131e3d;backdrop-filter:blur(14px)}
.ocean-login-card .login-context{font-size:14px;color:#e9cf9f;margin:0 0 14px}.ocean-login-card h2{font-size:30px;line-height:1.4;margin:0 0 14px}.ocean-login-card .login-message{font-size:16px;line-height:1.8;color:#d1e0e7;margin:0 0 28px;min-height:58px}
.ocean-login-card .button{display:flex;justify-content:center;align-items:center;gap:20px;min-height:54px;text-decoration:none;color:#142a36;background:linear-gradient(110deg,#d3b477,#e8d1a1);padding:13px 20px;border-radius:8px;font-weight:650;box-shadow:inset 0 1px 0 #fff6}
.ocean-login-card .button:hover{background:#efdab0}.ocean-login-card .button:focus-visible{outline:3px solid white;outline-offset:4px}.ocean-login-card .disabled{opacity:.6}.ocean-login-card .note{font-size:13px;color:#b4c9d3;border-top:1px solid #a8c2cd33;margin-top:26px;padding-top:20px;line-height:1.85}
.ocean-login-footer{padding:0 4vw 24px;display:flex;justify-content:space-between;gap:20px;color:#d4e4eb;font-size:13px}
body.ocean-workspace{background:#061b2d;color:#f6f8f8}.ocean-workspace .app{position:relative;z-index:auto;background:transparent}.ocean-workspace .sidebar{background:#041522e8;border-right:1px solid #bfdce41f;backdrop-filter:blur(12px)}
.ocean-workspace .brand-name,.ocean-workspace .nav button.active{color:#f5dfb6}.ocean-workspace .brand-sub,.ocean-workspace .sidebar-foot,.ocean-workspace .nav-label{color:#b8cfd9}.ocean-workspace .nav button{color:#d6e7ed}.ocean-workspace .nav button:hover{background:#c6e6ed12}.ocean-workspace .nav button.active{background:#bad6dc12;box-shadow:inset 2px 0 #d3b477}
.ocean-workspace .topbar{background:#051d2db8;border-color:#c5e1e51f;color:#ecf5f8;backdrop-filter:blur(12px)}.ocean-workspace .topbar .breadcrumb,.ocean-workspace .topbar .breadcrumb strong,.ocean-workspace .topbar-right,.ocean-workspace .topbar a{color:#e0edf1}.ocean-workspace .privacy{border-color:#bfdbe633;color:#cce0e9}
.ocean-workspace .heading h1,.ocean-workspace .section-title h2{color:#f6f8f8}.ocean-workspace .heading p,.ocean-workspace .section-title span,.ocean-workspace .inline-note,.ocean-workspace .module-result{color:#d1e2e9}
.ocean-workspace .header-mark{color:#d1b47a66}.ocean-workspace .launchpad{margin-top:26px}.ocean-workspace .lead-entry{background:#041e309e;border-color:#cfe4ea47;box-shadow:none;backdrop-filter:blur(8px)}.ocean-workspace .lead-navigation-art{display:none}.ocean-workspace .lead-entry h2{color:#fff}.ocean-workspace .lead-entry p,.ocean-workspace .lead-meta,.ocean-workspace .lead-scope{color:#d4e6ed}
.ocean-workspace .preparation{background:#092337df;border-color:#b7d9e433;backdrop-filter:blur(8px)}.ocean-workspace .preparation h2,.ocean-workspace .preparation b{color:#f0f5f7}.ocean-workspace .preparation span{color:#c7dce5}
.ocean-workspace .module{background:#092337eb;border-color:#bdd9e32e;box-shadow:none}.ocean-workspace .module:hover{background:#10364beF;border-color:#e2c38c80;transform:none}.ocean-workspace .module.module-content{background:#133c4aeb;border-color:#d7bb815e}
.ocean-workspace .module h3{color:#f0f6f8}.ocean-workspace .module p{color:#c3d9e4}.ocean-workspace .module-link{color:#dbeaf0}.ocean-workspace .module-content .module-link{color:#f0d29c}.ocean-workspace .module-icon{color:#d1e5ed;background:#d7edf20d;border-color:#b8d8e624}
.ocean-workspace .module-tools,.ocean-workspace .module-search,.ocean-workspace .module-filter{color:#d3e6ec}.ocean-workspace .module-search input{background:#092337ed;color:#edf5f8;border-color:#c0dce647}.ocean-workspace .module-search input::placeholder{color:#b4cedb}.ocean-workspace .module-search svg{stroke:#bed7e0}
.ocean-workspace .module-filters button{background:#092337df;color:#d7e7ef;border-color:#bed9e633}.ocean-workspace .module-filters button[aria-pressed=true]{background:#d6bb86;color:#122a35;border-color:#d6bb86}
.ocean-workspace .hub-intro,.ocean-workspace .hub-card,.ocean-workspace .hub-preparation,.ocean-workspace .source{background:#092337eb;border-color:#bed9e62e}.ocean-workspace .hub-readiness{background:#0b3346e8;border-color:#94c3d13d}.ocean-workspace .hub-readiness h2,.ocean-workspace .hub-intro h2,.ocean-workspace .hub-card strong,.ocean-workspace .source b,.ocean-workspace .hub-preparation h3,.ocean-workspace .hub-preparation summary b{color:#edf5f8}.ocean-workspace .hub-readiness p,.ocean-workspace .hub-readiness-state,.ocean-workspace .hub-intro p,.ocean-workspace .hub-card p,.ocean-workspace .source small,.ocean-workspace .hub-preparation p,.ocean-workspace .hub-preparation li{color:#c5dce6}
.ocean-workspace .topbar .workspace-account{color:#d1e5ec!important}.ocean-workspace .drawer{background:#fafbf9}.ocean-workspace .drawer-layer{background:#00121eb3}.ocean-workspace .drawer .close{background:#fff}.ocean-workspace .drawer{color:#263b37}
.ocean-workspace .ocean-toggle{min-height:36px;padding:8px 12px;font-size:13px}.ocean-workspace .ocean-scene::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#03172455,#03172405 65%)}
.ocean-arriving .ocean-scene{animation:ocean-arrival 1.4s ease-out both}@keyframes ocean-arrival{0%{filter:brightness(1.6) blur(6px);transform:scale(1.045)}100%{filter:brightness(1) blur(0);transform:scale(1)}}
@media(max-width:1100px){.ocean-login-main{gap:40px;grid-template-columns:minmax(0,1fr) 370px;padding-inline:4vw}.ocean-login-card{padding:32px 26px}.ocean-workspace .privacy{display:none}}
@media(max-width:760px){.ocean-login-header{padding:22px 20px}.ocean-wordmark{font-size:16px;gap:10px}.ocean-wordmark-mark{width:38px;height:38px}.ocean-login-main{display:flex;flex-direction:column;align-items:stretch;gap:30px;padding:32px 22px 36px;min-height:0}.ocean-login-copy{padding:10px 0 0}.ocean-login-copy h1{font-size:38px;margin-bottom:16px}.ocean-login-copy p{font-size:16px}.ocean-login-copy .ocean-intro-line{margin-bottom:20px}.ocean-login-card{max-width:480px;width:100%;align-self:center;padding:28px 24px}.ocean-login-footer{padding:10px 22px 24px;flex-wrap:wrap}.ocean-login-header .ocean-toggle{font-size:13px;white-space:nowrap}.ocean-workspace .topbar{gap:10px}.ocean-workspace .topbar-right{gap:8px}.ocean-workspace .sidebar{background:#041522fa}.ocean-workspace .topbar .ocean-toggle{font-size:12px;padding:8px}.ocean-workspace .workspace-account{font-size:12px!important;gap:6px!important}}
@media(prefers-reduced-motion:reduce){.ocean-scene canvas{transition:none}.ocean-arriving .ocean-scene{animation:none}}

/* Legibility against the sunlit surface. */
.ocean-workspace .account-name,.ocean-workspace .module-results,.ocean-workspace .hub-select{color:#d9e9ef}.ocean-workspace .module.featured .module-icon{color:#d1e5ed}.ocean-workspace .mobile-menu{background:#082739;color:#e9f2f5;border-color:#b4d2df66}.ocean-workspace .mobile-menu svg{stroke:currentColor}.ocean-workspace .ocean-scene::after{background:linear-gradient(90deg,#031b2d40,#031b2d30),linear-gradient(0deg,#02162270,transparent 65%)}
.ocean-scene video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .45s ease}@media(prefers-reduced-motion:reduce){.ocean-scene video{transition:none}}
