.cave-theme-list{max-width:940px;margin:15px auto;display:grid;grid-template-columns:1fr 1fr;gap:22px}.cave-theme{padding:32px;text-align:left;border-radius:25px;background:#214e48;color:#f9ebc7;border:1px solid #7f9870;min-height:240px}.cave-theme h2{font-size:29px;margin:16px 0}.cave-theme p{line-height:1.8;color:#ccdbbf}.cave-theme strong{display:block;margin-top:25px}.forest-theme{background:#faf8e9;color:#35583b;border-color:#dce4c9}.forest-theme p{color:#6d8065}.cave-player{background:#183e39;color:#f3e9cd;padding:18px;border:1px solid #5b7863;border-radius:24px;box-shadow:0 16px 45px #112f3a33}.cave-header{display:flex;align-items:center;gap:18px}.cave-header h1{font-size:27px;margin:4px 0}.cave-header small{color:#b6cdb3;letter-spacing:2px;font-size:12px}.cave-header>.cave-help{margin-left:auto}.cave-help{border:1px solid #8a9e7a;border-radius:14px;background:#294f44;color:#e7eaca;padding:12px 16px;min-height:44px}.cave-objectives{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 15px}.cave-objectives span{background:#244d43;border:1px solid #52715c;border-radius:30px;padding:9px 16px;font-size:13px;color:#e9dfb4}.cave-play-layout{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:22px;align-items:start}.cave-map-wrap{overflow:hidden;border:1px solid #7b7754;border-radius:18px;background:#143c36}.cave-map{display:block;width:100%;touch-action:none;user-select:none;-webkit-user-select:none}.cave-map:focus-visible{outline:3px solid #f0ca6f;outline-offset:-4px}.cave-map [data-node]{cursor:pointer}.cave-map .node-dot{opacity:.25}.cave-map .reachable .node-dot{opacity:1;stroke:#fff2b7;stroke-width:5;filter:drop-shadow(0 0 6px #ffdc81)}.cave-map [data-node]:focus-visible{outline:none}.cave-map [data-node]:focus-visible circle:first-child{stroke:#ffe5a1;stroke-width:3}.cave-map-label,.spider-label{font-family:inherit;font-size:16px;fill:#fff0c9;paint-order:stroke;stroke:#284338;stroke-width:5px;stroke-linejoin:round}.spider-label{font-size:14px}.spider-body{transition:transform .6s ease}.sleeping .spider-body{transform:translate(45px,-43px) scale(.7);opacity:.6}.sleeping .spider-label{fill:#b9f4c7}.cave-sidebar>small{color:#b3cba6;letter-spacing:2px}.cave-sidebar h2{font-size:20px;line-height:1.5;margin:10px 0}.cave-sidebar p{font-size:13px;line-height:1.8;color:#cbd9bd}.cave-spider-guide{padding:14px;border-radius:16px;background:#234d42;border:1px solid #54705a}.cave-spider-guide strong{font-size:14px;color:#e2cda0}.cave-spider-guide p{margin:5px 0 0}.cave-sidebar #caveMessage{color:#ffe2a0;min-height:70px}.cave-sidebar .maze-pad{margin:12px 0 20px}.cave-sidebar>.cave-help{width:100%}.cave-sidebar .cave-scoring{display:block;letter-spacing:0;font-size:11px;line-height:1.8;margin-top:12px;color:#a4bba3}.cave-player #caveExplorer{transition:transform .18s ease;pointer-events:none}main:has(.cave-player){max-width:1540px;padding-bottom:12px}body:has(.cave-player){background:linear-gradient(#e6ecd7,#cdd9be)}
@media(max-width:900px){.cave-play-layout{grid-template-columns:1fr}.cave-sidebar{display:grid;grid-template-columns:1fr 190px;gap:8px 18px}.cave-sidebar>small:first-child,.cave-sidebar>h2,.cave-sidebar>p:first-of-type,.cave-spider-guide{display:none}.cave-sidebar #caveMessage{grid-column:1;grid-row:1;min-height:0;margin:0}.cave-sidebar .maze-pad{grid-column:2;grid-row:1/4;margin:0}.cave-sidebar>.cave-help{grid-column:1}.cave-sidebar .cave-scoring{grid-column:1;margin:0}.cave-theme-list{grid-template-columns:1fr}.cave-header h1{font-size:21px}.cave-header{gap:10px}.cave-header .capsule{padding:0 12px}.cave-player{padding:10px}.cave-objectives{gap:6px;margin:12px 0}.cave-objectives span{font-size:12px;padding:7px 10px}}
@media(max-width:450px){.cave-header>.cave-help{padding:8px;font-size:12px}.cave-header small{letter-spacing:0;font-size:10px}.cave-header h1{font-size:17px}.cave-sidebar{grid-template-columns:1fr 155px;gap:8px}.cave-sidebar .maze-pad{grid-template-columns:repeat(3,44px);grid-template-rows:repeat(2,44px);gap:6px}.cave-sidebar .maze-pad button{min-height:44px}.cave-map-wrap{overflow:auto}.cave-map{min-width:560px}.cave-map-wrap:before{content:'左右滑动画面边缘查看洞穴 · 也可横屏玩';display:block;padding:7px 10px;font-size:11px;color:#c7d4bb}.cave-theme{padding:24px}.cave-theme h2{font-size:25px}}
@media(orientation:landscape) and (max-height:600px){body:has(.cave-player) .topbar{display:none}.cave-header h1{font-size:19px}.cave-objectives{margin:8px 0}.cave-play-layout{grid-template-columns:minmax(0,1fr) 180px;gap:12px}.cave-sidebar{display:block}.cave-sidebar #caveMessage{font-size:12px;min-height:50px}.cave-sidebar .maze-pad{grid-template-columns:repeat(3,44px);grid-template-rows:repeat(2,44px);gap:6px;margin:6px 0 12px}.cave-sidebar .maze-pad button{min-height:44px}.cave-sidebar .cave-scoring{display:none}.cave-map{max-height:calc(100dvh - 125px)}.cave-sidebar>.cave-help{padding:8px;min-height:42px}}
