/* Night Garden: reference-led landing layout; existing functional controls retained. */
.paradise-desk .desk-brand .garden-wordmark { width:190px; height:53px; object-fit:contain; }
@media(max-width:700px) { .paradise-desk .desk-brand .garden-wordmark { width:155px; height:44px; } }
@media(max-width:700px) { body.paradise-desk .desk-companions { grid-template-columns:1fr; } }
.paradise-desk .desk-companions { grid-template-columns:minmax(220px,1fr) minmax(360px,1.4fr); }
.paradise-desk .card-type { color:#b1d9c9; }
.paradise-desk .desk-nav a > :not(.nav-symbol),.paradise-desk .desk-nav button > :not(.nav-symbol) { display:inline; }
.paradise-desk #weather-temperature { font-size:21px; line-height:1.2; }
.paradise-desk .project-grid .card-art { opacity:.65; }
.paradise-desk .project-grid .card-art img { filter:none; object-position:right center; }
.paradise-desk .project-grid .card-art::after { background:linear-gradient(90deg,#071316fa 10%,#071316c4 48%,#07131625),linear-gradient(0deg,#071316b0,transparent 70%); }
.paradise-desk .project-card-icon-wrap img { width:100%; height:100%; object-fit:contain; }
body.paradise-desk { --accent:#b1d9c9; --bg:#080e10; background:#080e10; }
.paradise-desk .desk-sidebar { position:absolute; top:0; left:0; right:0; bottom:auto; width:100%; height:80px; padding:14px 4.7%; flex-direction:row; align-items:center; justify-content:space-between; background:#080e10f5; border:0; border-bottom:1px solid #293638; }
.desk-brand { flex-direction:row; gap:16px; color:#e8eeee; }
.desk-brand img { width:40px; height:44px; }
.desk-brand strong { font-family:Georgia,serif; font-size:15px; letter-spacing:.3em; color:#e0e7e7; }
.desk-brand > span,.desk-sidebar-bottom,.desk-nav a:first-child,.desk-nav .nav-symbol { display:none; }
.desk-nav { display:flex; margin:0; gap:24px; }
.desk-nav a,.desk-nav button { width:auto; color:#e1e7e4; background:none!important; border:0!important; white-space:nowrap; }
.paradise-desk .desk-main { margin:0; padding:80px 0 0; width:100%; max-width:none; }
.desk-header { min-height:475px; padding:66px 4.7% 145px; display:block; margin:0; position:relative; background:linear-gradient(90deg,#080e10e8 0%,#080e1055 45%,#080e1000 70%),url('assets/paradise-night-garden.webp') center 48%/cover; }
.desk-header h1 { font-family:Batang,'Noto Serif KR',Georgia,serif; font-weight:400; font-size:clamp(38px,4.5vw,68px); line-height:1.22; max-width:650px; letter-spacing:-.04em; }
.desk-header p { color:#d2dcd8; font-size:19px; margin-top:22px; }
.desk-header-link { display:inline-flex; margin-top:28px; padding-bottom:6px; border-bottom:1px solid var(--accent); color:#e7eee9; font-size:15px; }
.desk-layout { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:28px; padding:0 3.3% 50px; }
.desk-content { display:contents; }
.search-panel { position:absolute; z-index:35; top:18px; left:25%; width:44%; padding:0; background:none; border:0; box-shadow:none; }
.search-panel label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.search-bar { min-height:42px; border-radius:28px; background:#10191bb0; border-color:#354348; }
.paradise-desk .search-bar input,.paradise-desk .search-bar select,.paradise-desk .search-bar button { height:42px; background:transparent; }
.paradise-desk .quick-links { position:absolute; left:4.7%; top:443px; width:auto; display:flex; gap:30px; margin:0; }
.paradise-desk .quick-links a { border:0; background:none; flex-direction:column; gap:10px; padding:0; min-height:65px; font-size:11px; color:#e2e9e4; }
.quick-links img { width:29px; height:29px; }
.quick-arrow { display:none; }
.desk-companions { grid-column:1/-1; grid-row:1; display:grid; grid-template-columns:minmax(240px,1fr) minmax(370px,1.3fr) minmax(260px,1fr); gap:0; align-items:center; margin:0 -3.55%; padding:10px 4.7%; background:#0b1315; border-top:1px solid #2d3a3b; border-bottom:1px solid #2d3a3b; }
.paradise-desk .desk-weather { min-height:60px; padding:0 20px 0 0; background:none; border:0; border-radius:0; box-shadow:none; display:grid; grid-template-columns:90px 36px 1fr; align-items:center; gap:6px; }
.desk-weather h2 { font-size:13px; }
.paradise-desk .desk-weather .weather-orb { width:26px; height:20px; margin:0; }
.paradise-desk .desk-weather .weather-orb::after { width:26px; height:12px; left:5px; box-shadow:-10px 0 0 -2px #cad1ce; }
.weather-reading { margin:0; display:flex; gap:8px; align-items:center; }
.paradise-desk .weather-reading strong { font-size:21px; }
.weather-copy b { font-size:11px; }
.weather-poem,.weather-copy small,.weather-location { display:none!important; }
.weather-bottom { grid-column:3; margin:0!important; }
.gateway-panel { border:0; border-left:1px solid #334044; border-radius:0; background:none; padding:0 16px; }
.gateway-panel .panel-heading { display:none; }
.gateway-tiles { display:flex; gap:8px; justify-content:center; }
.gateway-tile { display:flex; gap:7px; min-height:44px; padding:8px; border:0; background:none; font-size:12px; white-space:nowrap; }
.gateway-tile > span:last-child { display:none; }
.gateway-icon { color:#d4e0dc; font-size:20px; }
.paradise-desk .desk-player,.paradise-desk .desk-player.is-expanded { padding:0 0 0 20px; border:0; border-left:1px solid #334044; border-radius:0; background:none; position:relative; }
.player-heading { display:none; }
.player-cover { width:42px; height:48px; }
.player-copy span { display:none; }
.player-copy strong { font-size:12px; }
.paradise-desk .desk-player .player-play { width:34px; height:34px; background:none; border-color:#90bbaa; color:#d4e4db; }
.paradise-desk .desk-player .player-drawer { position:absolute; z-index:40; right:0; top:65px; width:330px; max-width:85vw; padding:20px; background:#111d20; border:1px solid #47605b; border-radius:12px; box-shadow:0 15px 35px #0009; }
.desk-projects { grid-column:2; grid-row:2; margin:0; padding:0; }
.desk-games { grid-column:1; grid-row:2; margin:0; }
.panel-heading h2 { font-family:Batang,Georgia,serif; font-size:27px; font-weight:400; }
.paradise-desk .project-grid { grid-template-columns:1fr; gap:12px; }
.paradise-desk .project-card { min-height:150px; border-radius:12px; background:#0d191b; }
.paradise-desk .project-card h3 { font-family:Georgia,Batang,serif; font-weight:400; font-size:25px; }
.paradise-desk .project-card-icon-wrap { width:62px; height:62px; background:#182429; }
.card-art { opacity:.25; }
.card-art::after { background:linear-gradient(90deg,#0a1516 5%,transparent),linear-gradient(0deg,#0a1516,transparent); }
.paradise-desk .detail-button { color:#c5e4d6; border-color:#537267; background:none; }
.game-grid { grid-template-columns:1fr; gap:18px; }
.paradise-desk .game-grid .card-content { display:block; width:100%; }
.paradise-desk .game-grid .project-card { min-height:310px; padding:28px; justify-content:flex-end; }
.game-grid .card-art { opacity:.9; }
.game-grid .card-body { margin-top:auto; }
.game-grid .project-card-icon-wrap,.game-grid .project-card-type { display:none; }
.paradise-desk .game-grid .project-card h3 { font-size:32px; }
.game-grid .card-art::after { background:linear-gradient(0deg,#081314 3%,#08131470 45%,transparent 85%); }
.paradise-desk .update-section,.paradise-desk .about-section { margin:0 4.7% 45px; }
.paradise-desk footer { padding:25px 4.7%; }
@media(max-width:1100px) { .search-panel { left:29%; width:39%; } .desk-companions { grid-template-columns:1fr 1.3fr; } .paradise-desk .desk-player { grid-column:1/-1; border:0; padding:10px 0 0; max-width:350px; margin:auto; } .desk-layout { gap:22px; } }
@media(max-width:700px) { .paradise-desk .desk-sidebar { height:130px; padding:12px 20px 65px; } .desk-brand strong { font-size:12px; } .desk-nav { gap:0; } .desk-nav a,.desk-nav button { padding:8px; font-size:12px; } .search-panel { top:77px; left:5%; width:90%; } .paradise-desk .desk-main { padding-top:130px; } .desk-header { min-height:410px; padding:48px 6% 125px; background-position:62% center; } .desk-header h1 { font-size:39px; max-width:330px; } .desk-header p { font-size:16px; } .paradise-desk .quick-links { top:460px; left:6%; gap:25px; } .desk-layout { grid-template-columns:1fr; padding:0 5% 35px; } .desk-companions { grid-template-columns:1fr; gap:10px; margin:0 -5.55%; padding:14px 5%; } .gateway-panel { border:0; padding:0; } .paradise-desk .desk-weather { padding:0; min-height:48px; } .paradise-desk .desk-player { grid-column:1; padding:0; width:100%; } .desk-games { grid-column:1; grid-row:2; } .desk-projects { grid-column:1; grid-row:3; } .paradise-desk .game-grid .project-card { min-height:260px; } }
