:root{--night:#0d1741;--sky:#8bd4ff;--ink:#152449;--cream:#fff4d3;--coral:#ff6b4a;--sun:#ffcf54}.island-world{position:fixed!important;inset:0;z-index:1;min-height:100svh!important;height:100svh!important;overflow:hidden;background:var(--sky)!important;opacity:0;transition:opacity .65s ease}.island-world.is-visible{opacity:1}.island-canvas{display:block;width:100%;height:100%;touch-action:none;outline:none}.island-brand{position:absolute;z-index:2;left:clamp(18px,3.4vw,54px);bottom:clamp(18px,4vw,46px);display:flex;align-items:flex-end;gap:9px;color:var(--cream);pointer-events:none;text-shadow:2px 2px 0 rgba(21,36,73,.62)}.island-brand p{font-size:clamp(27px,3.5vw,58px);letter-spacing:-.1em;font-weight:950;margin:0;line-height:.78}.island-brand b{font:900 clamp(9px,.8vw,12px)/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;background:var(--coral);padding:6px 7px}.island-brand span{font:900 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.11em;padding-bottom:4px}.island-instruction{position:absolute;z-index:2;left:50%;transform:translateX(-50%);bottom:31px;display:flex;align-items:center;gap:12px;color:var(--cream);text-shadow:1px 1px 0 var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;font-weight:900;letter-spacing:.12em;pointer-events:none;white-space:nowrap}.island-instruction i{height:1px;width:38px;background:currentColor}.island-controls{position:absolute;z-index:3;right:clamp(16px,3.5vw,54px);bottom:clamp(22px,4vw,48px);display:grid;gap:9px}.island-control{display:grid;grid-template-columns:38px 1fr;align-items:center;gap:7px;min-width:126px;height:43px;border:2px solid var(--cream);background:rgba(21,36,73,.72);backdrop-filter:blur(10px);color:var(--cream);padding:0 12px 0 0;text-align:left;box-shadow:4px 4px 0 rgba(21,36,73,.32);transition:transform .18s ease,background .18s ease}.island-control:hover{transform:translate(-3px,-3px);background:var(--coral)}.island-control[aria-pressed=true]{background:#273462}.control-icon{display:grid;place-items:center;height:100%;border-right:2px solid var(--cream);font-size:18px}.island-control b{font-size:10px;letter-spacing:.13em}.object-hint{position:absolute;z-index:4;border:2px solid var(--ink);background:var(--sun);padding:7px 9px;color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:900;letter-spacing:.06em;pointer-events:none;transform:translate(10px,-34px);box-shadow:3px 3px 0 var(--ink)}.island-fallback{position:absolute;z-index:3;inset:0;display:grid;place-content:center;text-align:center;gap:13px;background:linear-gradient(135deg,var(--night),#273d9a);color:var(--cream);padding:24px}.island-fallback[hidden]{display:none}.island-fallback b{font-size:26px;letter-spacing:-.04em}.island-fallback span{max-width:420px;line-height:1.6;font-size:14px}.island-world.is-night .island-brand p{color:#f5f0d3}.island-world.is-night .island-brand b{background:#5268d8}.island-world.is-night .island-control{background:rgba(4,10,29,.72)}.island-world.is-night .object-hint{background:#dcecff}@media(max-width:700px){.island-brand{left:17px;bottom:17px;gap:5px}.island-brand p{font-size:29px}.island-brand b{font-size:8px;padding:5px}.island-brand span{font-size:8px;padding-bottom:3px}.island-controls{right:12px;bottom:67px;gap:7px}.island-control{min-width:101px;height:38px;grid-template-columns:32px 1fr}.island-instruction{left:17px;transform:none;bottom:67px;font-size:7px;gap:6px}.island-instruction i{width:15px}.about-window,.work-window,.contact-window{z-index:30}.desktop-window{z-index:31}.project-window{z-index:32}}

/* Fixed scene label hierarchy: portfolio lives upper-left, with name and year aligned beneath. */
.island-brand{top:clamp(18px,3.6vw,46px);bottom:auto;display:grid;gap:10px;align-items:start}.brand-meta{display:flex;align-items:baseline;gap:17px}.island-brand b{background:transparent;padding:0}.island-brand span{font:900 clamp(9px,.8vw,12px)/1 ui-monospace,SFMono-Regular,Menlo,monospace;padding-bottom:0}@media(max-width:700px){.island-brand{top:17px;bottom:auto;gap:7px}.brand-meta{gap:11px}.island-brand b,.island-brand span{font-size:8px;padding:0}}

/* A compact audio switch sits below the title without obstructing the scene.
   Playback begins from the visitor's START click, which satisfies browser
   audio-permission rules while keeping music enabled by default. */
.ambient-toggle{position:absolute;z-index:4;left:clamp(18px,3.4vw,54px);top:clamp(104px,9.5vw,142px);display:grid;place-items:center;width:40px;height:36px;border:2px solid var(--cream);border-radius:0;background:rgba(21,36,73,.72);color:var(--cream);box-shadow:3px 3px 0 rgba(21,36,73,.33);font:900 22px/1 ui-monospace,SFMono-Regular,Menlo,monospace;cursor:pointer;transition:transform .18s ease,background .18s ease,color .18s ease}.ambient-toggle:hover{transform:translate(-2px,-2px);background:var(--coral)}.ambient-toggle::after{content:'';position:absolute;right:5px;bottom:5px;width:5px;height:5px;border-radius:50%;background:var(--sun);box-shadow:0 0 0 2px rgba(255,244,211,.35)}.ambient-toggle.is-muted{background:rgba(21,36,73,.42);color:rgba(255,244,211,.64)}.ambient-toggle.is-muted::after{width:13px;height:2px;right:3px;bottom:7px;border-radius:0;background:var(--coral);box-shadow:none;transform:rotate(-42deg)}.island-world.is-night .ambient-toggle{background:rgba(4,10,29,.72)}@media(max-width:700px){.ambient-toggle{left:17px;top:68px;width:34px;height:31px;font-size:18px}}
