html,body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}input,textarea{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}img,canvas{-webkit-user-drag:none}:root{font-family:Segoe UI,Microsoft JhengHei,sans-serif;color:#eff0dd;background:#071c24;font-synthesis:none;font-weight:400;color-scheme:dark;--ink:#eff0dd;--accent:#d0be85;--muted:#a7bdba}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}button,input,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{color:inherit;background:transparent;border:0;cursor:pointer;touch-action:manipulation}button:disabled{opacity:.36;cursor:not-allowed}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid #e7d49a;outline-offset:5px}button:hover:not(:disabled){color:#f5df9c}button{transition:color .2s,background .2s,transform .2s}button:active:not(:disabled){transform:translateY(1px)}.world-shell{width:100%;height:100%;position:relative;isolation:isolate}.world-canvas{width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;display:block;touch-action:none;z-index:-2}.world-vignette{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,rgba(3,20,26,.75),transparent 42%),linear-gradient(0deg,rgba(3,20,26,.94),transparent 24%,transparent 82%,rgba(3,20,26,.7))}.world-header{height:104px;padding:0 42px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #c1dcce24;gap:28px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);font-size:23px;letter-spacing:3px;font-weight:600;flex-shrink:0}.brand small{display:block;font-size:8px;font-weight:400;letter-spacing:3px;color:#bdd2ca;margin-top:5px}.brand em{font-size:9px;font-style:normal;align-self:flex-start;letter-spacing:1px;color:var(--accent);margin-top:5px}.brand-mark{font-size:42px;font-weight:300;color:var(--accent)}.world-header nav{display:flex;gap:36px;height:100%;align-items:center}.world-header nav button{position:relative;height:100%;font-size:13px;color:#b7c8c5;letter-spacing:2px;padding:0 4px}.world-header nav button.active{color:#f3e7c2}.world-header nav button.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--accent)}.world-header nav button span{margin-left:14px}.header-tools{display:flex;gap:25px;align-items:center}.currency{color:var(--accent);font-size:20px;white-space:nowrap}.currency b{font-weight:400;margin:0 8px}.currency small{font-size:10px;color:#c8d5ca;letter-spacing:1px}.sound-toggle{font-size:11px;letter-spacing:1px;border-left:1px solid #c1dcce44;padding-left:24px;white-space:nowrap}.scene-heading{position:absolute;top:20%;left:4.5%;pointer-events:none}.eyebrow{font-size:9px;letter-spacing:3.5px;color:#cbbd91;font-weight:500;margin:0 0 22px}.scene-heading h1{font-family:"Noto Serif TC",PMingLiU,serif;font-weight:400;font-size:clamp(34px,3.9vw,62px);letter-spacing:5px;line-height:1.5;margin:0;text-shadow:0 3px 30px #001c27}.scene-heading h1 span{color:#c2d2c3}.scene-description{font-size:12px;color:#acbfba;letter-spacing:2px;margin:20px 0 30px}.habitat-switch{display:flex;pointer-events:auto;border-bottom:1px solid #b7c4b93b;width:max-content}.habitat-switch button{font-size:12px;padding:12px 16px;color:#a0b6b4}.habitat-switch button:first-child{padding-left:0}.habitat-switch button.active{color:#e4d29f;border-bottom:1px solid #e4d29f}.tank-count{display:flex;gap:17px;align-items:center;margin-top:27px}.tank-count strong{font-size:44px;line-height:1;font-weight:200;letter-spacing:2px}.tank-count span{font-size:10px;line-height:1.9;color:#aec3bd;letter-spacing:1px}.scene-actions{position:absolute;right:38px;top:150px;display:flex;flex-direction:column;gap:3px}.scene-actions button{display:flex;align-items:center;gap:14px;font-size:12px;letter-spacing:1px;padding:16px 12px;background:#0a293544;border-bottom:1px solid #c3d8c22a;text-align:left;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.scene-actions button>span{color:var(--accent);font-size:19px;width:20px}.scene-actions small{margin-left:12px;color:var(--accent)}.tank-caption{position:absolute;right:6%;bottom:22%;text-align:right;pointer-events:none;text-shadow:0 2px 8px #001820}.tank-caption>span{font-size:8px;letter-spacing:3px;color:#b2c9c4}.tank-caption p{font-size:13px;letter-spacing:2px;margin:11px 0}.tank-caption i{font-style:normal;color:#9cbaaf;margin:0 9px}.aquarium-footer{position:absolute;bottom:53px;left:42px;right:42px;min-height:72px;display:flex;align-items:center;gap:32px;border-top:1px solid #c9dcc334}.view-controls{display:flex;gap:24px}.view-controls button,.light-controls button{font-size:11px;letter-spacing:1px;padding:10px 0;color:#c3d0c8}.view-controls button.selected{color:var(--accent)}.light-controls{display:flex;gap:18px;align-items:center;margin-left:auto}.light-controls>span{font-size:10px;color:#849e9e}.light-controls button.selected{color:var(--accent);border-bottom:1px solid var(--accent)}.primary-link{font-size:13px;letter-spacing:2px;padding:16px 23px;background:#d6c38d;color:#122b2e;border:1px solid #e6d6ac;min-width:200px}.primary-link:hover:not(:disabled),.primary:hover:not(:disabled){background:#ead6a0;color:#10232a}.primary-link span{margin-left:25px;font-size:19px}.status-strip{position:absolute;bottom:0;height:45px;left:42px;right:42px;display:flex;gap:9px;align-items:center;color:#8da7a6;font-size:10px;border-top:1px solid #ccd4bb1b}.status-strip p{margin:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;letter-spacing:.6px}.status-dot{height:4px;width:4px;background:#c2bc8a;border-radius:50%;flex-shrink:0}.status-strip select{margin-left:auto;font-size:10px;background:transparent;border:0;color:#acbfba;min-width:88px}.status-strip option,select option{background:#0b2b34;color:#e0e8d8}.drawer{position:absolute;right:0;top:104px;bottom:46px;width:430px;background:#09272eef;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-left:1px solid #b9c9ba33;display:flex;flex-direction:column;padding:28px 28px 0;box-shadow:-30px 0 70px #001a242b;animation:drawer-in .3s ease-out}.drawer>header{display:flex;align-items:flex-start;justify-content:space-between}.drawer .eyebrow{margin-bottom:9px;font-size:8px}.drawer h2{font-size:23px;letter-spacing:3px;font-weight:400;margin:0}.close{font-size:27px;font-weight:200;width:32px;height:32px;color:#a8c0bc}.drawer-note{font-size:11px;line-height:1.9;color:#a8beba;border-bottom:1px solid #c4d4c527;padding-bottom:18px}.collection-list,.journal-list{overflow-y:auto;flex:1;scrollbar-width:thin;scrollbar-color:#607b77 transparent}.collection-row{display:flex;align-items:center;gap:13px;padding:17px 0;border-bottom:1px solid #bed1c321}.collection-row h3,.shop-row h3{font-size:14px;font-weight:400;margin:0 0 5px;letter-spacing:1px}.collection-row p{font-size:10px;color:#a8bcb5;margin:0 0 7px}.collection-row span{font-size:9px;color:#d3c596}.specimen-icon{width:55px;flex-shrink:0}.specimen-icon svg{width:100%}.row-actions{margin-left:auto;display:flex;flex-direction:column;gap:8px}.row-actions button{border:1px solid #bcccab4a;padding:7px 9px;font-size:10px;white-space:nowrap}.row-actions button+button{border:0;color:#c9b887;padding:3px}.drawer>footer{display:flex;gap:15px;padding:15px 0;border-top:1px solid #c5d7c431;align-items:center}.drawer>footer button{font-size:10px;padding:6px 0}.drawer>footer span{font-size:8px;color:#91aaa4;margin-left:auto}.drawer:has(.shop-row){overflow-y:auto}.shop-row{display:flex;gap:20px;border-bottom:1px solid #b9cdba25;padding:18px 0}.shop-icon{width:62px;flex-shrink:0}.shop-icon svg{width:100%}.shop-row p{font-size:11px;line-height:1.8;color:#9db7b0;margin:0 0 12px}.shop-row button{padding:8px 11px;border:1px solid #caba854d;color:#d3c28c;font-size:10px}.expansion{padding:16px 0 25px}.expansion h3{font-size:16px;font-weight:400;letter-spacing:2px}.expansion p{font-size:11px;color:#a8b9b0}.expansion button{color:#d8c793;border-bottom:1px solid #bfb47c70;padding:10px 0;font-size:11px}.journal-list>div{display:flex;align-items:center;gap:20px;padding:12px 0;border-bottom:1px solid #d4e5cb17;color:#73948f}.journal-list>div.known{color:#e1d4ab}.journal-list svg{width:43px}.journal-list span{font-size:13px;letter-spacing:1px}.journal-list small{display:block;font-size:9px;margin-top:5px;color:#92afa8}.specimen-detail{position:absolute;right:40px;bottom:170px;width:280px;padding:24px;background:#0a2934e8;border:1px solid #c8d3b62e;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.specimen-detail .close{position:absolute;top:12px;right:10px}.specimen-detail h2{font-size:24px;font-weight:400}.specimen-detail p:not(.eyebrow){font-size:12px;color:#adc6bd;line-height:1.9}.specimen-detail strong{font-size:32px;font-weight:200;display:block}.specimen-detail small{font-size:13px}.specimen-detail>button:last-child{margin-top:18px;padding:10px 0;font-size:11px;border-bottom:1px solid var(--accent);color:var(--accent)}.save-warning,.fatal{position:absolute;top:110px;left:25%;right:25%;padding:18px;background:#3b3321;color:#fff0bc;border:1px solid #c9b785;z-index:10;font-size:12px;line-height:1.8}.save-warning button{margin-left:12px;text-decoration:underline}.fatal{top:40%;text-align:center}.debug{position:absolute;bottom:48px;right:40px;background:#000b;color:#fff;font:11px monospace;padding:6px;pointer-events:none}@keyframes drawer-in{0%{transform:translate(30px);opacity:0}to{transform:none;opacity:1}}@keyframes bite-pulse{to{box-shadow:0 -4px 35px #d6c18142}}@media (min-width:1600px){.scene-heading{left:5.5%;top:23%}.aquarium-footer{bottom:66px}.status-strip{height:52px}.scene-actions{top:170px}.tank-caption{bottom:23%}}@media (max-width:1100px){.world-header{padding:0 24px;gap:15px;height:85px}.brand{font-size:19px;gap:8px}.brand-mark{font-size:33px}.world-header nav{gap:20px}.header-tools{gap:12px}.sound-toggle{padding-left:12px}.scene-heading{left:30px;top:19%}.scene-heading h1{font-size:38px}.scene-actions{right:24px;top:125px}.aquarium-footer{left:25px;right:25px;gap:15px}.view-controls{gap:14px}.primary-link{min-width:170px;padding:13px 15px;font-size:11px}.light-controls{gap:13px}.status-strip{left:25px;right:25px}.drawer{top:85px}}@media (max-width:700px){.world-header{height:118px;padding:16px 18px 0;align-items:flex-start;flex-wrap:wrap;gap:0}.brand{font-size:18px}.brand small{font-size:7px;letter-spacing:2px}.brand-mark{font-size:30px}.world-header nav{position:absolute;top:72px;height:46px;left:18px;right:18px;justify-content:center;gap:55px}.world-header nav button{font-size:11px}.header-tools{padding-top:5px;gap:10px}.currency{font-size:16px}.currency small{display:none}.sound-toggle{font-size:10px}.scene-heading{top:145px;left:22px}.scene-heading .eyebrow{font-size:7px;letter-spacing:2px;margin-bottom:12px}.scene-heading h1{font-size:28px;letter-spacing:3px;line-height:1.45}.scene-description{display:none}.habitat-switch{margin-top:12px}.habitat-switch button{padding:9px 10px;font-size:10px}.tank-count{margin-top:14px;gap:12px}.tank-count strong{font-size:29px}.tank-count span{font-size:8px}.scene-actions{top:150px;right:13px;gap:2px}.scene-actions button{font-size:10px;gap:8px;padding:11px 7px}.scene-actions button>span{font-size:16px;width:15px}.scene-actions small{margin-left:3px}.tank-caption{right:22px;bottom:185px}.tank-caption>span{font-size:6px;letter-spacing:1.5px}.tank-caption p{font-size:10px;letter-spacing:1px}.aquarium-footer{bottom:43px;left:18px;right:18px;display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;padding-top:10px;min-height:105px}.view-controls{grid-column:1/-1;justify-content:space-between}.view-controls button{font-size:10px;padding:6px 0}.light-controls{margin-left:0;gap:14px}.light-controls>span{font-size:9px}.light-controls button{font-size:10px}.primary-link{min-width:0;padding:11px 9px;font-size:10px;letter-spacing:1px}.primary-link span{margin-left:8px;font-size:15px}.status-strip{left:18px;right:18px;height:38px;font-size:8px}.status-strip select{font-size:8px;min-width:75px}.drawer{top:118px;width:100%;bottom:38px;padding:22px 22px 0}.drawer h2{font-size:21px}.drawer>footer span{font-size:7px}.specimen-detail{right:20px;bottom:175px;width:250px}.save-warning,.fatal{left:10px;right:10px;top:125px}.debug{right:10px;bottom:40px;font-size:8px}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.scene-heading h1{font-size:clamp(26px,3vw,46px)}.scene-heading{pointer-events:none}.scene-heading button{pointer-events:auto}.view-controls{flex-wrap:wrap;gap:12px!important}.aquarium-footer{gap:14px}.immersive .scene-heading,.immersive .scene-actions,.immersive .scene-caption,.immersive .world-header,.immersive .status-bar{display:none}.immersive .aquarium-footer{background:#02122380;padding:12px;bottom:12px;opacity:.3;transition:opacity .2s}.immersive .aquarium-footer:hover,.immersive .aquarium-footer:focus-within{opacity:1}.immersive .light-controls,.immersive .primary-link{display:none}@media (max-width:650px){.view-controls{font-size:10px;gap:8px!important}.scene-heading h1{font-size:28px}}.immersive .tank-caption,.immersive .status-strip{display:none}.fish-portrait{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 7px 6px #0012188c)}.specimen-icon,.shop-icon{width:124px!important;height:88px!important;flex-shrink:0;background:radial-gradient(ellipse 52% 40% at 50% 58%,#a8dcd916,transparent 72%);border:0;overflow:visible}.portrait-loading{display:flex;align-items:center;justify-content:center;min-height:54px;font-size:10px;color:#b9ccd0}.journal-list>div>.fish-portrait{width:100px;height:68px;flex-shrink:0;background:radial-gradient(ellipse 52% 40% at 50% 58%,#a8dcd912,transparent 72%)}@media (max-width:700px){.specimen-icon,.shop-icon{width:94px!important;height:74px!important}.journal-list>div>.fish-portrait{width:76px;height:58px}.collection-row{gap:10px}}.beach-heading{pointer-events:auto;top:17%;left:4.5%;max-width:460px;padding:22px 24px;background:linear-gradient(90deg,#082832d9,#082832a8,transparent);border-left:1px solid #d5c58a}.beach-heading h1{font-size:clamp(29px,3vw,46px);line-height:1.45;letter-spacing:2px}.beach-heading h1{font-size:clamp(25px,2.5vw,38px);white-space:nowrap}.beach .world-vignette{background:linear-gradient(0deg,rgba(3,20,26,.42),transparent 18%,rgba(3,20,26,.14))}.beach-heading>p:not(.eyebrow){font-size:12px;line-height:1.85;color:#d2e0d3;letter-spacing:1px;margin:12px 0}.beach-heading>.beach-collection-count{color:#ead39a;font-weight:600;letter-spacing:1.4px}.dig-button,.dig-float{background:#d3c08b;color:#102b32;border:1px solid #f1e3b8;padding:13px 18px;margin-top:15px;letter-spacing:1px;box-shadow:0 8px 30px #001c2a66}.dig-float{position:absolute;right:5%;bottom:22%;font-size:15px;padding:18px 38px;z-index:2}.beach-pad{position:absolute;left:5%;bottom:14%;width:150px;height:150px;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:5px;z-index:2;touch-action:none}.beach-pad button{background:#0a293bbd;border:1px solid #d8d0ad55;border-radius:50%;font-size:19px;touch-action:none;-webkit-user-select:none;user-select:none}.beach-pad button:nth-child(1){grid-column:2;grid-row:1}.beach-pad button:nth-child(2){grid-column:1;grid-row:2}.beach-pad button:nth-child(3){grid-column:2;grid-row:3}.beach-pad button:nth-child(4){grid-column:3;grid-row:2}.beach .aquarium-footer{pointer-events:none}.beach .aquarium-footer>button{pointer-events:auto}@media (max-width:700px){.beach-heading{top:130px;left:16px;right:16px;padding:12px 15px;max-width:none}.beach-heading h1{font-size:clamp(20px,5.6vw,25px)}.beach-heading>p:not(.eyebrow){font-size:9px;margin:6px 0}.dig-button{padding:9px 12px;font-size:10px;margin-top:7px}.beach-pad{left:18px;bottom:115px;width:125px;height:125px}.dig-float{right:20px;bottom:165px;padding:14px 26px;font-size:12px}}.beach-touch-hint{display:none}@media (pointer:coarse){.beach-heading>p.beach-desk-hint{display:none}.beach-heading>p.beach-touch-hint{display:block}}@media (max-height:520px) and (orientation:landscape){.world-header{height:58px;padding:0 18px;gap:12px}.brand{font-size:16px;gap:6px}.brand small,.brand em{display:none}.brand-mark{font-size:26px}.world-header nav{gap:18px}.world-header nav button{font-size:11px;letter-spacing:1px}.world-header nav button span{margin-left:6px}.currency{font-size:15px}.currency small{display:none}.sound-toggle{font-size:10px;padding-left:10px}.scene-heading{top:68px;left:18px}.scene-heading .eyebrow,.scene-description{display:none}.scene-heading h1{font-size:21px;letter-spacing:3px;line-height:1.35}.habitat-switch{margin-top:6px}.habitat-switch button{padding:6px 10px;font-size:10px}.tank-count{margin-top:6px;gap:10px}.tank-count strong{font-size:24px}.tank-count span{font-size:8px;line-height:1.5}.scene-actions{top:66px;right:14px;gap:2px}.scene-actions button{font-size:10px;gap:8px;padding:8px}.scene-actions button>span{font-size:14px;width:14px}.tank-caption{display:none}.aquarium-footer{display:flex;bottom:34px;left:14px;right:14px;min-height:0;padding:6px 0;gap:16px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;flex-wrap:nowrap}.aquarium-footer::-webkit-scrollbar{display:none}.aquarium-footer>*{flex-shrink:0}.view-controls{flex-wrap:nowrap!important;gap:12px!important}.view-controls button,.light-controls button{font-size:10px;padding:6px 0;white-space:nowrap}.light-controls{margin-left:0;gap:10px}.light-controls>span{font-size:9px;white-space:nowrap}.primary-link{min-width:0;padding:9px 12px;font-size:10px;letter-spacing:1px;white-space:nowrap}.primary-link span{margin-left:8px;font-size:14px}.status-strip{left:14px;right:14px;height:32px;font-size:9px}.drawer{top:58px;bottom:32px}.beach-heading{top:66px;left:14px;right:auto;max-width:300px;padding:8px 14px 9px;background:linear-gradient(90deg,#082832b8,#08283266)}.beach-heading h1{font-size:17px;letter-spacing:2px;line-height:1.4}.beach-heading>p:not(.eyebrow){font-size:9px;margin:3px 0;line-height:1.6}.beach-heading>p.beach-desk-hint,.beach-heading>p.beach-explore,.beach-heading .dig-button{display:none}.beach-pad{left:22px;bottom:44px;width:126px;height:126px}.dig-float{right:24px;bottom:56px;padding:13px 30px;font-size:13px}.beach .aquarium-footer{top:64px;right:14px;left:auto;bottom:auto;border:0;padding:0;overflow:visible}.beach .aquarium-footer>button{font-size:10px;letter-spacing:1px;padding:8px 12px;background:#0a2935a8;border:1px solid #d8d0ad55}}.lang-switch{display:inline-flex;align-items:center;gap:4px;height:32px;padding:0 6px 0 10px;border-radius:16px;border:1px solid rgba(239,240,221,.28);background:#071c2473;color:var(--ink);font-size:12px}.lang-switch select{background:transparent;color:inherit;border:0;font:inherit;padding:4px 2px;cursor:pointer;outline-offset:2px}.lang-switch select option{color:#222;background:#fff}@media (pointer:coarse) and (max-height:520px){.aquarium-footer{flex-wrap:wrap;overflow:visible;row-gap:2px;align-items:center;background:#04141cad;border-radius:10px;padding:4px 10px;left:10px;right:10px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.view-controls{flex-wrap:wrap!important;row-gap:0!important;gap:0 4px!important}.view-controls button,.light-controls button{font-size:12px;min-height:36px;min-width:36px;padding:0 9px}.light-controls{gap:2px}.light-controls>span{font-size:10px}.light-controls.room-controls{grid-column:auto}}@keyframes drawer-pop{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}.drawer{left:4vw;right:4vw;top:92px;bottom:52px;width:auto;padding:22px 26px 0;border:1px solid #b9c9ba3a;border-radius:14px;box-shadow:0 24px 80px #001a2466;animation:drawer-pop .25s ease-out}.collection-list,.journal-list,.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;align-content:start;padding:14px 2px 18px}.shop-grid{padding-top:14px}.collection-row,.shop-row{flex-direction:column;align-items:stretch;gap:8px;padding:12px;border:1px solid #bed1c326;border-radius:10px;background:#ffffff08}.collection-row .specimen-icon,.shop-row .shop-icon{width:100%!important;height:104px!important}.collection-row>div:nth-child(2),.shop-row>div:nth-child(2){flex:1;display:flex;flex-direction:column}.shop-row p{margin:0 0 10px}.shop-row button{margin-top:auto;width:100%}.row-actions{margin-left:0;flex-direction:row;justify-content:space-between;align-items:center}.row-actions button+button{padding:7px 9px;border:1px solid #bcccab4a}.journal-list>div{flex-direction:column;align-items:stretch;gap:6px;padding:10px;border:1px solid #d4e5cb1f;border-radius:10px;text-align:center}.journal-list>div>.fish-portrait{width:100%;height:92px}.expansion{padding:6px 0 25px}.rotate-hint{display:none}@media (max-height:520px){.drawer{top:52px;bottom:30px;padding:10px 16px 0}.drawer .eyebrow{display:none}.drawer-note{margin:4px 0 0;padding-bottom:6px}.collection-list,.journal-list,.shop-grid{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:8px;padding-top:8px}.collection-row .specimen-icon,.shop-row .shop-icon{height:72px!important}.journal-list>div>.fish-portrait{height:66px}.collection-row,.shop-row{padding:8px;gap:5px}.collection-row h3,.shop-row h3{font-size:13px;margin-bottom:2px}.shop-row p{font-size:10px;line-height:1.5;margin-bottom:6px}}@media (orientation:portrait) and (pointer:coarse){.drawer>*:not(header):not(footer):not(.rotate-hint){display:none!important}.drawer .rotate-hint{display:flex;align-items:center;justify-content:center;flex:1;text-align:center;font-size:15px;line-height:1.9;letter-spacing:1px;color:#d3c596;padding:0 24px}.drawer{top:90px;bottom:60px}}.walk-stick{position:absolute;left:26px;bottom:148px;width:116px;height:116px;border-radius:50%;background:#081e266b;border:1px solid #d0be8566;touch-action:none;z-index:5;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.walk-stick i{position:absolute;left:50%;top:50%;width:48px;height:48px;margin:-24px 0 0 -24px;border-radius:50%;background:#d0be85b0;pointer-events:none}.walking .scene-heading,.walking .tank-caption{display:none}@media (orientation:portrait){.walk-stick{bottom:210px}}.world-header nav button{white-space:nowrap;flex-shrink:0}.world-header nav{min-width:0}@media (max-width:700px){.world-header nav{gap:clamp(8px,3.2vw,40px);justify-content:center}.world-header nav button{letter-spacing:.5px;font-size:clamp(10px,2.9vw,11px)}.world-header nav button span{margin-left:3px}}@media (max-height:520px) and (orientation:landscape){.world-header{gap:8px}.world-header nav{gap:clamp(8px,1.8vw,16px)}.world-header nav button{font-size:10.5px;letter-spacing:.5px;padding:0 2px}.header-tools{gap:10px;flex-shrink:0}.lang-switch{height:26px}.world-shell.fishing .world-header nav{gap:clamp(8px,1.8vw,16px)}.world-shell.fishing .world-header nav button{font-size:10.5px;letter-spacing:.08em}.world-shell.fishing .header-tools{gap:10px}.world-shell.fishing .sound-toggle{padding-left:8px;letter-spacing:.05em}}.beach-stick{position:absolute;left:5%;bottom:14%;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,#0a293b66 0,#0a293b66 38%,#0a293bbd 40%,#0a293bbd);border:1px solid #d8d0ad66;z-index:2;touch-action:none;-webkit-user-select:none;user-select:none}.beach-stick-knob{position:absolute;left:50%;top:50%;width:62px;height:62px;border-radius:50%;background:#f3efe4dd;border:1px solid #d8d0ad;box-shadow:0 4px 12px #0006;pointer-events:none}@media (max-width:700px){.beach-stick{left:18px;bottom:115px;width:130px;height:130px}}@media (max-height:520px) and (orientation:landscape){.beach-stick{left:22px;bottom:30px;width:128px;height:128px}}.camera-hidden{display:none}.fishing-hud,.world-shell.fishing{--washi:rgba(251,248,240,.9);--washi-strong:rgba(252,250,245,.96);--tengu:rgba(251,248,240,.36);--sumi:#22292b;--sumi-2:#4e5755;--sumi-3:rgba(34,41,43,.46);--sumi-4:rgba(34,41,43,.17);--shu:#c3412b;--shu-wash:rgba(195,65,43,.15);--kin:#b8a46c;--fiber:122,104,74;--bare:var(--sumi);--bare-2:var(--sumi-2);--ring-ink:var(--sumi);--halo:0 0 1px rgba(255,255,255,.95),0 0 5px rgba(255,255,255,.85),0 0 12px rgba(255,255,255,.55);--halo-drop:drop-shadow(0 0 4px rgba(255,255,255,.85));--mincho:"Yu Mincho","YuMincho","Noto Serif TC","Noto Serif CJK TC","Source Han Serif TC","Songti TC","PMingLiU","新細明體",serif;--fude:"DFKai-SB","標楷體","BiauKai","Kaiti TC","STKaiti","KaiTi",serif;--num:"Sitka Text","Sitka Small",Georgia,"Times New Roman",serif;--edge:24px}.fishing-hud[data-tone=dark],.world-shell.fishing:has(.fishing-hud[data-tone=dark]){--bare:#f3efe4;--bare-2:rgba(243,239,228,.82);--ring-ink:#f3efe4;--halo:0 0 1px rgba(6,22,28,.9),0 0 6px rgba(6,22,28,.7),0 0 14px rgba(6,22,28,.45);--halo-drop:drop-shadow(0 0 4px rgba(6,22,28,.75))}.world-shell.fishing .world-vignette{display:none}.world-shell.fishing .world-header{height:54px;padding:0 var(--edge);border-bottom:0;background:transparent;font-family:var(--mincho);text-shadow:var(--halo);transition:opacity .8s ease}.world-shell.fishing .brand{color:var(--bare);font-size:16px;font-weight:400;letter-spacing:.32em;gap:9px}.world-shell.fishing .brand-mark{font-size:22px;letter-spacing:0;line-height:1;color:var(--bare)}.world-shell.fishing .brand small{font-family:var(--num);font-size:7px;letter-spacing:.34em;color:var(--bare-2);margin-top:2px}.world-shell.fishing .brand em{font-family:var(--num);font-size:10px;letter-spacing:.1em;color:var(--bare-2);margin:4px 0 0 -4px}.world-shell.fishing .world-header nav{gap:34px}.world-shell.fishing .world-header nav button{font-size:12.5px;letter-spacing:.24em;color:var(--bare-2);padding:0 2px}.world-shell.fishing .world-header nav button.active{color:var(--bare)}.world-shell.fishing .world-header nav button.active:after{left:50%;right:auto;bottom:12px;width:14px;height:2px;margin-left:-9px;border-radius:2px;background:var(--shu)}.world-shell.fishing .world-header nav button span{margin-left:6px;font-size:10px}.world-shell.fishing .world-header button:hover:not(:disabled){color:var(--bare)}.world-shell.fishing .header-tools{gap:18px;font-size:12px}.world-shell.fishing .currency{font-family:var(--num);font-size:15px;letter-spacing:.04em;color:var(--bare)}.world-shell.fishing .currency b{margin:0 2px 0 6px}.world-shell.fishing .currency small{font-family:var(--mincho);font-size:10px;margin-left:4px;color:var(--bare-2)}.world-shell.fishing .sound-toggle{font-size:11px;letter-spacing:.16em;color:var(--bare-2);padding-left:16px;border-left:1px solid var(--sumi-4)}.world-shell.fishing .status-strip{left:var(--edge);right:auto;bottom:14px;height:28px;max-width:min(560px,calc(100% - 520px));gap:10px;padding:0 4px;border:0;font-family:var(--mincho);font-size:11.5px;letter-spacing:.08em;color:var(--bare-2);background:none;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;text-shadow:var(--halo);transition:opacity .8s ease}.world-shell.fishing .status-strip p{letter-spacing:.08em}.world-shell.fishing .status-strip .status-dot{width:5px;height:5px;border-radius:50%;background:var(--bare);box-shadow:0 0 4px #fffc;flex:none}.world-shell.fishing .status-strip select{flex:none;margin-left:0;padding-left:12px;border-left:1px solid var(--sumi-4);font-size:11px;color:var(--bare);background:transparent;min-width:0;font-family:var(--mincho)}.world-shell.fishing .status-strip select:focus-visible{outline:1.5px solid var(--bare);outline-offset:3px}.world-shell.fishing:has(.fishing-hud[data-calm="1"]) .world-header,.world-shell.fishing:has(.fishing-hud[data-calm="1"]) .status-strip{opacity:.38}.world-shell.fishing:has(.fishing-hud[data-calm="1"]) .world-header:is(:hover,:focus-within),.world-shell.fishing:has(.fishing-hud[data-calm="1"]) .status-strip:is(:hover,:focus-within){opacity:1}.fishing-hud{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;font-family:var(--mincho);color:var(--sumi);-webkit-font-smoothing:antialiased;font-synthesis:none;font-weight:400}.fishing-hud button,.fishing-hud select,.fishing-hud label{pointer-events:auto}.fishing-hud button,.fishing-hud select{font:inherit;color:inherit;letter-spacing:inherit}.fishing-hud button{background:none;border:0;padding:0;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.fishing-hud button:hover:not(:disabled){color:inherit}.fishing-hud button:active:not(:disabled){transform:none}.fishing-hud button:focus-visible,.fishing-hud select:focus-visible{outline:1.5px solid var(--sumi);outline-offset:3px}.fishing-hud .sr-only{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.fishing-hud .washi{background-color:var(--washi);background-image:radial-gradient(10px 1px at 18% 22%,rgba(var(--fiber),.13),transparent),radial-gradient(1px 6px at 63% 71%,rgba(var(--fiber),.1),transparent),radial-gradient(16px 1.5px at 72% 38%,rgba(255,255,255,.9),transparent),radial-gradient(7px 1px at 37% 81%,rgba(var(--fiber),.12),transparent),radial-gradient(1.5px 12px at 11% 58%,rgba(255,255,255,.8),transparent),radial-gradient(19px 1px at 54% 14%,rgba(var(--fiber),.08),transparent),radial-gradient(40% 30% at 30% 60%,rgba(232,224,204,.22),transparent),linear-gradient(172deg,#ffffff73,#fff0 46%,#e8e0cc42);background-size:83px 59px,67px 101px,131px 89px,53px 47px,97px 139px,113px 73px,173px 127px,auto}.fishing-hud .tengu{background-color:var(--tengu);background-image:radial-gradient(10px 1px at 18% 22%,rgba(var(--fiber),.12),transparent),radial-gradient(1px 6px at 63% 71%,rgba(var(--fiber),.1),transparent),radial-gradient(16px 1.5px at 72% 38%,rgba(255,255,255,.7),transparent),radial-gradient(7px 1px at 37% 81%,rgba(var(--fiber),.1),transparent),linear-gradient(172deg,#ffffff2e,#fff0 50%);background-size:83px 59px,67px 101px,131px 89px,53px 47px,auto;-webkit-backdrop-filter:blur(5px) saturate(1.04);backdrop-filter:blur(5px) saturate(1.04)}.fishing-hud .tengu,.fishing-hud .tengu *{text-shadow:0 0 1px rgba(255,255,255,.9),0 0 6px rgba(255,255,255,.75)}.fishing-hud .washi.strong{background-color:var(--washi-strong)}.fishing-hud .feather{-webkit-mask:linear-gradient(90deg,transparent,#000 12px,#000 calc(100% - 12px),transparent);mask:linear-gradient(90deg,transparent,#000 12px,#000 calc(100% - 12px),transparent)}.fishing-hud .fishing-heading{position:absolute;left:calc(var(--edge) + 2px);top:74px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;transition:opacity .8s ease}.fishing-hud .heading-cols{writing-mode:vertical-rl;text-shadow:var(--halo);color:var(--bare)}.fishing-hud .heading-cols>*{margin:0 0 0 7px}.fishing-hud .heading-cols h1{font-family:var(--fude);font-weight:400;font-size:34px;letter-spacing:.18em;line-height:1.05;color:var(--bare)}.fishing-hud .heading-cols .eyebrow{font-size:11.5px;font-weight:400;letter-spacing:.3em;line-height:1.3;color:var(--bare);padding-top:4px}.fishing-hud .heading-cols .sub{font-size:11px;letter-spacing:.22em;line-height:1.3;color:var(--bare-2);padding-top:4px}.fishing-hud .loc-switch{position:relative;display:inline-flex;align-items:center;height:28px;border-radius:14px;padding:0 26px 0 12px;font-size:12px;letter-spacing:.14em;color:var(--sumi);box-shadow:0 0 0 1px #22292b0f;white-space:nowrap}.fishing-hud .loc-switch:before{content:"";position:absolute;left:0;right:0;top:50%;height:36px;margin-top:-18px}.fishing-hud .loc-switch select{position:absolute;top:-4px;right:0;bottom:-4px;left:0;opacity:0;cursor:pointer;width:100%;height:calc(100% + 8px)}.fishing-hud .loc-switch select:disabled{cursor:default}.fishing-hud .loc-switch:after{content:"";position:absolute;right:11px;top:10px;width:5px;height:5px;border-right:1px solid var(--sumi);border-bottom:1px solid var(--sumi);transform:rotate(45deg)}.fishing-hud .loc-switch .k{color:var(--sumi-2);margin-right:7px;font-size:10.5px}.fishing-hud .loc-switch:has(select:focus-visible){outline:1.5px solid var(--sumi);outline-offset:3px}.fishing-hud .loc-switch.disabled{opacity:.42;background:transparent;box-shadow:none;color:var(--bare);text-shadow:var(--halo)}.fishing-hud .loc-switch.disabled .k{color:var(--bare-2)}.fishing-hud .loc-switch.disabled:after{border-color:var(--bare)}.fishing-hud .fishing-help{position:absolute;right:var(--edge);top:66px;display:flex;flex-direction:column;align-items:flex-end;gap:10px;transition:opacity .8s ease}.fishing-hud .help-row{display:flex;gap:8px;align-items:center}.fishing-hud .cam-toggle{position:relative;display:inline-flex;align-items:center;gap:8px;height:28px;padding:0 15px 0 12px;border-radius:14px;font-size:12px;letter-spacing:.12em;color:var(--sumi);box-shadow:0 0 0 1px #22292b0f;white-space:nowrap}.fishing-hud .cam-toggle:before,.fishing-hud .help-toggle:before{content:"";position:absolute;left:50%;top:50%;width:max(100%,40px);height:40px;transform:translate(-50%,-50%)}.fishing-hud .cam-dot{width:8px;height:8px;border-radius:50%;border:1px solid var(--sumi);flex:none}.fishing-hud .cam-toggle[data-status=tracking] .cam-dot{background:var(--sumi)}.fishing-hud .cam-toggle[data-status=searching] .cam-dot{background:linear-gradient(90deg,var(--sumi) 50%,transparent 50%)}.fishing-hud .cam-toggle[data-status=loading] .cam-dot{animation:fh-breath 1.2s ease-in-out infinite}.fishing-hud .cam-toggle[data-status=error] .cam-dot{border-color:var(--shu)}.fishing-hud .help-toggle{position:relative;width:28px;height:28px;border-radius:50%;font-size:13px;line-height:28px;text-align:center;color:var(--sumi);box-shadow:0 0 0 1px #22292b0f}.fishing-hud .help-toggle[aria-expanded=true]{box-shadow:inset 0 0 0 1px var(--sumi-3)}.fishing-hud .marumado{position:relative;margin:0;width:108px;height:108px}.fishing-hud .marumado .win{position:absolute;top:6px;right:6px;bottom:6px;left:6px;border-radius:50%;overflow:hidden;background:#fbf8f080}.fishing-hud .marumado .win>video{display:block;width:100%;height:100%;object-fit:cover;opacity:.8;transform:scaleX(-1);filter:grayscale(1) sepia(.28) contrast(.9) brightness(1.12)}.fishing-hud .marumado .maru-ring{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.fishing-hud .marumado .cam-min{position:absolute;left:-4px;top:-2px;width:20px;height:20px;border-radius:50%;font-size:12px;line-height:19px;text-align:center;color:var(--sumi);background:var(--washi-strong);box-shadow:0 0 0 1px var(--sumi-4)}.fishing-hud .marumado .cam-min:before{content:"";position:absolute;left:50%;top:50%;width:32px;height:32px;transform:translate(-50%,-50%)}.fishing-hud .marumado figcaption{position:absolute;left:50%;bottom:-16px;transform:translate(-50%);white-space:nowrap;font-size:10px;letter-spacing:.12em;color:var(--bare-2);text-shadow:var(--halo)}.fishing-hud .marumado figcaption i{display:inline-block;width:6px;height:6px;border-radius:50%;border:1px solid var(--bare);margin:0 6px 0 3px;vertical-align:1px}.fishing-hud .marumado figcaption i.on{background:var(--bare)}.fishing-hud .fishing-help.cam-min .marumado{width:28px;height:28px}.fishing-hud .fishing-help.cam-min .marumado .win{inset:auto;left:0;top:0;width:1px;height:1px;opacity:0}.fishing-hud .fishing-help.cam-min .marumado figcaption,.fishing-hud .fishing-help.cam-min .marumado .maru-ring{display:none}.fishing-hud .fishing-help.cam-min .marumado .cam-min{left:0;top:0;width:28px;height:28px;line-height:27px;font-size:12.5px;background:var(--washi);box-shadow:0 0 0 1px #22292b14}.fishing-hud .gesture-msg{margin:12px 0 0;max-width:190px;text-align:right;font-size:11px;line-height:1.6;letter-spacing:.08em;color:var(--bare);text-shadow:var(--halo)}.fishing-hud .gesture-diag{display:block;margin-top:2px;font-size:9px;letter-spacing:.06em;opacity:.55}.fishing-hud .gesture-guide{position:relative;width:256px;padding:12px 16px 11px 15px;border-radius:2px;font-size:12px;line-height:1.75;letter-spacing:.05em;color:var(--sumi)}.fishing-hud .gesture-guide:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:1px;background:var(--sumi-4)}.fishing-hud .gesture-guide h3{margin:0 0 4px;font-weight:400;font-size:10.5px;letter-spacing:.4em;color:var(--sumi-2)}.fishing-hud .gesture-guide ol{margin:0;padding:0;list-style:none}.fishing-hud .gesture-guide li{display:flex;gap:9px}.fishing-hud .gesture-guide li>b{flex:none;font-weight:400;color:var(--sumi-2)}.fishing-hud .gesture-guide li em{font-style:normal;color:var(--shu)}.fishing-hud .gesture-guide .alt{margin:6px 0 0;padding-top:6px;border-top:1px solid var(--sumi-4);font-size:10.5px;color:var(--sumi-2);line-height:1.65}.fishing-hud .gesture-guide .ok{position:absolute;right:14px;top:10px;font-size:10.5px;letter-spacing:.16em;border-bottom:1px solid var(--sumi);line-height:1.4}.fishing-hud[data-calm="1"] .fishing-heading,.fishing-hud[data-calm="1"] .fishing-help:not(.cam-on){opacity:.38}.fishing-hud[data-calm="1"] .fishing-heading:is(:hover,:focus-within):is(:hover,:focus-within),.fishing-hud[data-calm="1"] .fishing-help:is(:hover,:focus-within){opacity:1}.fishing-hud .bite-mark{position:absolute;left:var(--x);top:var(--y);width:0;height:0;pointer-events:none}.fishing-hud .bite-mark i{position:absolute;left:-36px;top:-11px;width:72px;height:22px;border-radius:50%;border:1.2px solid rgba(34,41,43,.55);opacity:0;animation:fh-ripple 1.8s cubic-bezier(.2,.6,.3,1) infinite}.fishing-hud[data-tone=dark] .bite-mark i{border-color:#f3efe4b3}.fishing-hud .bite-mark i:nth-child(2){animation-delay:.6s}.fishing-hud .bite-mark i:nth-child(3){animation-delay:1.2s}.fishing-hud .bite-mark b{position:absolute;left:16px;top:-66px;writing-mode:vertical-rl;padding:6px 3px;font-weight:400;font-size:13px;letter-spacing:.18em;color:#fff7ee;background:var(--shu);border-radius:2px;transform:rotate(-3deg);box-shadow:0 0 0 1px #fff6 inset;animation:fh-stamp .35s cubic-bezier(.3,1.6,.5,1) both}.fishing-hud .fishing-console{position:absolute;right:132px;bottom:24px;width:176px;height:168px;transform-origin:100% 100%}.fishing-hud .uki{position:absolute;left:4px;bottom:22px;width:40px;height:146px}.fishing-hud .uki svg{position:absolute;left:8px;top:0;width:24px;height:146px;overflow:visible}.fishing-hud .uki .t-tag{position:absolute;left:50%;top:-20px;transform:translate(-50%);white-space:nowrap;font-size:10.5px;letter-spacing:.2em;color:var(--bare-2);text-shadow:var(--halo)}.fishing-hud .uki .t-tag b{font-family:var(--num);font-weight:400;font-size:13px;letter-spacing:0;color:var(--bare);margin-left:3px}.fishing-hud .uki .let-go{position:absolute;left:-22px;top:2px;writing-mode:vertical-rl;padding:5px 2px;font-style:normal;font-size:11.5px;letter-spacing:.2em;color:#fff7ee;background:var(--shu);border-radius:2px;transform:rotate(-2deg);box-shadow:0 0 0 1px #ffffff59 inset;display:none}.fishing-hud .fishing-console.danger .uki .t-tag,.fishing-hud .fishing-console.danger .uki .t-tag b{color:var(--shu)}.fishing-hud .fishing-console.danger .uki .let-go{display:block;animation:fh-stamp2 .3s cubic-bezier(.3,1.6,.5,1) both}.fishing-hud .fishing-console.danger .uki svg{animation:fh-tremble .11s steps(2) infinite}.fishing-hud .reel{position:absolute;right:0;top:0;width:120px;height:120px}.fishing-hud .reel-art{position:absolute;top:0;right:0;bottom:0;left:0;width:120px;height:120px;overflow:visible;pointer-events:none;color:var(--ring-ink);filter:var(--halo-drop)}.fishing-hud .fishing-buttons{position:absolute;left:18px;top:18px;width:84px;height:84px}.fishing-hud .enso{position:relative;display:flex;align-items:center;justify-content:center;width:84px;height:84px;border-radius:50%;touch-action:none;user-select:none;-webkit-user-select:none;cursor:pointer}.fishing-hud .enso .disc{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;box-shadow:0 0 0 1px #22292b1a,0 10px 22px -14px #10282c80;transition:transform .12s,box-shadow .2s}.fishing-hud .enso .disc:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:radial-gradient(circle at 49% 52%,rgba(34,41,43,calc(.04 + .12*var(--f,0))) 0,transparent calc(30% + 30%*var(--f,0)));opacity:min(1,calc(var(--f,0)*8))}.fishing-hud .enso .label{position:relative;display:flex;flex-direction:column;align-items:center;line-height:1.18;letter-spacing:.14em;color:var(--sumi)}.fishing-hud .enso .label small{font-size:10px;letter-spacing:.2em;color:var(--sumi-2)}.fishing-hud .enso .label strong{font-weight:400;font-size:19px;letter-spacing:.16em;margin-left:.16em}.fishing-hud .enso.pressed .disc{transform:scale(.965)}.fishing-hud .enso:disabled{opacity:1;cursor:default}.fishing-hud .enso:disabled .label{opacity:.6}.fishing-hud .enso.bite .label strong,.fishing-hud .enso.bite .label small{color:var(--shu)}.fishing-hud .enso.danger .disc{box-shadow:0 0 0 1.5px var(--shu),0 10px 22px -14px #10282c80}.fishing-hud .enso:hover:not(:disabled) .disc{box-shadow:0 0 0 1px #22292b42,0 10px 22px -14px #10282c80}.fishing-hud .enso.danger:hover:not(:disabled) .disc{box-shadow:0 0 0 1.5px var(--shu),0 10px 22px -14px #10282c80}.fishing-hud .reel-readout{position:absolute;right:0;width:120px;bottom:0;display:flex;justify-content:center;gap:12px;font-size:10.5px;letter-spacing:.14em;color:var(--bare-2);text-shadow:var(--halo);white-space:nowrap}.fishing-hud .reel-readout b{font-family:var(--num);font-weight:400;font-size:12px;color:var(--bare);letter-spacing:.02em;margin-left:4px}.fishing-hud .ticks{display:inline-flex;gap:2.5px;margin-left:5px;vertical-align:-1px}.fishing-hud .ticks i{width:2px;height:10px;border-radius:1px 1px 2px 2px;background:var(--sumi-4)}.fishing-hud[data-tone=dark] .ticks i{background:#f3efe44d}.fishing-hud .ticks i.on{background:var(--bare)}.fishing-hud .bite-left{position:absolute;right:0;width:120px;bottom:2px;text-align:center;font-family:var(--num);font-size:15px;letter-spacing:.02em;color:var(--shu);text-shadow:var(--halo)}.fishing-hud .bite-left small{font-family:var(--mincho);font-size:10.5px;letter-spacing:.2em;margin-left:4px}.fishing-hud .caption{position:absolute;left:var(--edge);bottom:52px;max-width:330px;padding:9px 26px 10px 22px;color:var(--sumi);transition:opacity .6s ease}.fishing-hud .caption h2{margin:0;font-weight:400;font-size:15px;letter-spacing:.18em;line-height:1.5;text-wrap:balance}.fishing-hud .caption p{margin:2px 0 0;font-size:12px;letter-spacing:.08em;line-height:1.6;color:var(--sumi-2);text-wrap:balance}.fishing-hud .caption.alert h2{color:var(--shu)}.fishing-hud .caption.alert:before{content:"";position:absolute;left:12px;top:12px;bottom:12px;width:2px;border-radius:1px;background:var(--shu)}.fishing-hud .caption.faded{opacity:0}.fishing-hud .danger-wash{position:absolute;top:0;bottom:0;right:0;width:110px;pointer-events:none;background:linear-gradient(270deg,var(--shu-wash),transparent);opacity:0;transition:opacity .3s}.fishing-hud .danger-wash.on{opacity:1;animation:fh-pulse 1.1s ease-in-out infinite alternate}.fishing-hud .catch-card{position:absolute;right:clamp(24px,13%,230px);top:118px;width:136px;padding:20px 0 14px;display:flex;flex-direction:column;align-items:center;border-radius:2px;box-shadow:0 18px 40px -26px #10282c8c;animation:fh-hang .55s cubic-bezier(.2,.9,.3,1) both;pointer-events:auto}.fishing-hud .catch-card:before{content:"";position:absolute;left:50%;top:-104px;height:104px;width:1px;background:linear-gradient(transparent,var(--sumi-3))}.fishing-hud[data-tone=dark] .catch-card:before{background:linear-gradient(transparent,#f3efe499)}.fishing-hud .catch-card .inner{position:absolute;top:6px;right:6px;bottom:6px;left:6px;border:1px solid var(--sumi-4);pointer-events:none}.fishing-hud .catch-card{--v:clamp(150px, calc(55vh - 240px) ,236px)}.fishing-hud .catch-card .v{writing-mode:vertical-rl;height:var(--v)}.fishing-hud .catch-card .v>*{margin:0 0 0 9px}.fishing-hud .catch-card .v h2{font-family:var(--fude);font-weight:400;font-size:min(36px,calc((var(--v) - 30px) / var(--n,4)));letter-spacing:.14em;line-height:1.05;white-space:nowrap}.fishing-hud .catch-card .v p{font-size:11px;letter-spacing:.3em;line-height:1.3;color:var(--sumi-2)}.fishing-hud .catch-card .v .rar{padding-top:4px;color:var(--shu)}.fishing-hud .catch-card .v .where{padding-top:clamp(8px,calc(var(--v) - 184px),52px);letter-spacing:.2em;white-space:nowrap}.fishing-hud .catch-card .size{margin:14px 0 0;font-family:var(--num);font-size:26px;letter-spacing:.02em;line-height:1}.fishing-hud .catch-card .size small{font-size:11px;margin-left:3px;color:var(--sumi-2)}.fishing-hud .catch-card .coin{margin:6px 0 0;font-size:11px;letter-spacing:.16em;color:var(--sumi-2)}.fishing-hud .catch-card .coin b{font-family:var(--num);font-weight:400;color:var(--kin)}.fishing-hud .catch-card .go{position:relative;margin-top:12px;font-size:12px;letter-spacing:.1em;padding:3px 0;border-bottom:1px solid var(--sumi);color:var(--sumi)}.fishing-hud .catch-card .go:before{content:"";position:absolute;left:-8px;right:-8px;top:50%;height:36px;margin-top:-18px}.fishing-hud .seal{position:absolute;left:12px;top:14px;width:26px;height:26px;display:flex;align-items:center;justify-content:center;font-size:15px;color:#fff6ec;background:var(--shu);border-radius:3px;transform:rotate(-6deg);box-shadow:0 0 0 1px #ffffff59 inset;animation:fh-seal .4s .35s cubic-bezier(.3,1.6,.5,1) both}.fishing-hud .waiting-ring{transform-origin:60px 60px;animation:fh-spinslow 14s linear infinite}@keyframes fh-ripple{0%{transform:scale(.25);opacity:.9}to{transform:scale(1.6);opacity:0}}@keyframes fh-stamp{0%{transform:scale(1.6) rotate(-3deg);opacity:0}to{transform:scale(1) rotate(-3deg);opacity:1}}@keyframes fh-stamp2{0%{transform:scale(1.6) rotate(-2deg);opacity:0}to{transform:scale(1) rotate(-2deg);opacity:1}}@keyframes fh-seal{0%{transform:scale(1.6) rotate(-6deg);opacity:0}to{transform:scale(1) rotate(-6deg);opacity:1}}@keyframes fh-tremble{0%{transform:translate(.6px)}to{transform:translate(-.6px,.3px)}}@keyframes fh-pulse{0%{opacity:.55}to{opacity:1}}@keyframes fh-breath{50%{opacity:.25}}@keyframes fh-hang{0%{transform:translateY(-14px);opacity:0}to{transform:none;opacity:1}}@keyframes fh-spinslow{to{transform:rotate(360deg)}}@media (max-width:700px){.fishing-hud,.world-shell.fishing{--edge:14px}.world-shell.fishing .world-header{height:46px;padding:0 12px;align-items:center;flex-wrap:nowrap;gap:8px}.world-shell.fishing .brand>span:nth-child(2),.world-shell.fishing .brand em{display:none}.world-shell.fishing .brand-mark{font-size:20px}.world-shell.fishing .world-header nav{position:static;height:100%;gap:7px;justify-content:center}.world-shell.fishing .world-header nav button{font-size:10px;letter-spacing:.02em;padding:0}.world-shell.fishing .world-header nav button.active:after{bottom:9px}.world-shell.fishing .world-header nav button span{display:none}.world-shell.fishing .header-tools{gap:10px;padding-top:0}.world-shell.fishing .currency{font-size:13px}.world-shell.fishing .sound-toggle{font-size:10px;padding-left:9px;letter-spacing:.06em}.world-shell.fishing .status-strip{left:var(--edge);right:auto;bottom:12px;height:26px;max-width:calc(100% - 28px);font-size:10px;padding:0 4px}.world-shell.fishing .status-strip select{font-size:10px;padding-left:9px}.fishing-hud .fishing-heading{top:58px;left:10px;gap:10px}.fishing-hud .heading-cols h1{font-size:27px}.fishing-hud .heading-cols>*{margin-left:5px}.fishing-hud .heading-cols .eyebrow,.fishing-hud .heading-cols .sub{font-size:10px}.fishing-hud .loc-switch{height:26px;font-size:11px;padding:0 22px 0 10px}.fishing-hud .loc-switch:after{top:9px;right:9px}.fishing-hud .loc-switch .k{display:none}.fishing-hud .fishing-help{top:56px;gap:8px}.fishing-hud .cam-toggle{height:26px;font-size:11px;padding:0 11px 0 9px;letter-spacing:.06em}.fishing-hud .help-toggle{width:26px;height:26px;line-height:26px}.fishing-hud .marumado{width:76px;height:76px}.fishing-hud .marumado .win{top:5px;right:5px;bottom:5px;left:5px}.fishing-hud .gesture-msg{max-width:150px;font-size:10px;margin-top:10px}.fishing-hud .gesture-guide{width:184px;padding:9px 11px 8px 12px;font-size:11px;line-height:1.62;letter-spacing:.02em;background-color:#fbf8f042}.fishing-hud .gesture-guide h3{margin-bottom:2px}.fishing-hud .gesture-guide .alt{font-size:10px}.fishing-hud .gesture-guide .ok{right:11px;top:8px}.fishing-hud[data-guide=open] .caption,.fishing-hud[data-phase=fight][data-danger="0"] .caption{display:none}.fishing-hud[data-danger="1"] .caption{max-width:calc(100% - 216px)}.fishing-hud .fishing-console{right:10px;bottom:calc(44px + env(safe-area-inset-bottom,0px));width:164px;height:160px}.fishing-hud .uki{bottom:24px;height:134px}.fishing-hud .uki svg{height:134px}.fishing-hud .uki .t-tag{font-size:11px}.fishing-hud .uki .t-tag b{font-size:14px}.fishing-hud .reel-readout{font-size:11.5px}.fishing-hud .reel-readout b{font-size:13px}.fishing-hud .caption{bottom:50px;max-width:calc(100% - 196px);min-width:150px;padding:8px 16px 9px 18px}.fishing-hud .caption h2{font-size:13px;letter-spacing:.08em}.fishing-hud .caption p{font-size:11px;letter-spacing:.03em;line-height:1.55}.fishing-hud .caption.alert:before{left:8px}.fishing-hud .catch-card{right:50px;top:84px;width:92px;padding:14px 0 10px;background-color:var(--washi)}.fishing-hud .catch-card:before{top:-10px;height:10px}.fishing-hud .catch-card:after{content:"";position:absolute;left:50%;top:-13px;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;border:1px solid var(--sumi-3);background:var(--washi-strong)}.fishing-hud .catch-card .v{height:150px}.fishing-hud .catch-card .v>*{margin-left:7px}.fishing-hud .catch-card .v h2{font-size:min(26px,calc(130px / var(--n,4)))}.fishing-hud .catch-card .v p{font-size:10px}.fishing-hud .catch-card .v .where{padding-top:14px;letter-spacing:.12em}.fishing-hud .catch-card .size{font-size:19px;margin-top:9px}.fishing-hud .catch-card .coin{margin-top:4px;font-size:10px}.fishing-hud .catch-card .go{font-size:10px;margin-top:8px;letter-spacing:.04em}.fishing-hud .seal{width:22px;height:22px;font-size:13px;left:9px;top:11px}.fishing-hud .danger-wash{width:48px}}@media (max-height:520px) and (orientation:landscape){.fishing-hud .heading-cols h1{font-size:24px}.fishing-hud .fishing-console{transform:scale(.85)}.fishing-hud .catch-card{top:60px}.fishing-hud .marumado{width:84px;height:84px}.fishing-hud .gesture-msg{position:absolute;right:calc(100% + 14px);top:44px;margin:0;width:190px;max-width:none}}@media (prefers-reduced-motion:reduce){.fishing-hud *,.fishing-hud *:before,.fishing-hud *:after{animation:none!important;transition:none!important}}html[lang=en] .fishing-hud .heading-cols{writing-mode:horizontal-tb}html[lang=en] .fishing-hud .heading-cols>*{margin:0 0 4px}html[lang=en] .fishing-hud .heading-cols h1{font-size:24px;letter-spacing:.04em}html[lang=en] .fishing-hud .heading-cols .eyebrow,html[lang=en] .fishing-hud .heading-cols .sub{letter-spacing:.08em}html[lang=en] .fishing-hud .bite-mark b,html[lang=en] .fishing-hud .uki .let-go,html[lang=en] .fishing-hud .catch-card .v{writing-mode:horizontal-tb}html[lang=en] .fishing-hud .bite-mark b{padding:3px 6px;letter-spacing:.06em}html[lang=en] .fishing-hud .catch-card .v{height:auto}.fishing-hud .catch-card .catch-result{align-self:stretch;margin:8px 14px 0;font-size:10.5px;line-height:1.45;letter-spacing:.02em;text-align:center;overflow-wrap:anywhere;color:var(--sumi-2)}.fishing-hud .catch-card .catch-result .keep{color:var(--shu);font-weight:600}.fishing-hud .catch-card .catch-result .gain{color:#7f6320}.fishing-hud .catch-card .catch-ms{align-self:stretch;margin:6px 14px 0;padding:3px 4px;border:1px solid #9a7f3a;border-radius:2px;font-size:9.5px;line-height:1.4;letter-spacing:.02em;text-align:center;color:#7f6320;overflow-wrap:anywhere}.fishing-hud .catch-card .go{white-space:nowrap}@media (max-width:700px){.fishing-hud .catch-card{width:104px}.fishing-hud .catch-card .catch-result,.fishing-hud .catch-card .catch-ms{margin-left:10px;margin-right:10px;font-size:9.5px}}@media (max-height:520px) and (orientation:landscape){.fishing-hud .catch-card{--v:126px;width:124px;padding:12px 0 8px}.fishing-hud .catch-card .v .where{padding-top:6px;font-size:9.5px;letter-spacing:.04em}.fishing-hud .catch-card .size{margin-top:6px;font-size:20px}.fishing-hud .catch-card .catch-result{margin-top:4px;font-size:9.5px;line-height:1.35}.fishing-hud .catch-card .catch-ms{margin-top:4px;font-size:9px}.fishing-hud .catch-card .go{margin-top:6px}}@media (max-height:520px) and (orientation:landscape){.world-shell.fishing .world-header nav{gap:clamp(8px,1.8vw,16px)}.world-shell.fishing .world-header nav button{font-size:10.5px;letter-spacing:.08em}.world-shell.fishing .header-tools{gap:10px}.world-shell.fishing .sound-toggle{padding-left:8px;letter-spacing:.05em}.fishing-hud .fishing-heading{display:grid;grid-template-columns:auto auto;column-gap:10px;row-gap:6px;align-items:start;justify-items:start;top:54px}.fishing-hud .heading-cols{grid-row:1 / span 6}.fishing-hud .heading-cols .note{display:none}}@media (max-width:700px){.fishing-hud .heading-cols .note{display:none}}.beach .world-header nav button,.beach .world-header .brand{text-shadow:0 0 6px #021b24,0 0 2px #021b24}@media (min-width:701px){.fishing-hud .lang-hud{display:none}}@media (max-width:700px){.world-shell.fishing .header-tools .lang-switch{display:none}}@media (min-width:701px) and (min-height:521px){.fishing-hud .fishing-heading{display:grid;grid-template-columns:auto auto;column-gap:14px;row-gap:8px;align-items:start;justify-items:start}.fishing-hud .heading-cols{grid-row:1 / span 3}}@media (max-height:520px) and (orientation:landscape){.fishing-hud .catch-card{right:auto;left:calc(50% + 96px);top:52px;width:108px}}.world-shell.chasing .scene-heading,.world-shell.chasing .tank-caption{opacity:0;visibility:hidden;transition:opacity .35s,visibility 0s .35s}.world-shell.chasing .scene-actions{opacity:.5;transition:opacity .35s}.world-shell.chasing .scene-actions:hover,.world-shell.chasing .scene-actions:focus-within{opacity:1}.world-shell.chasing:after{content:"";position:absolute;left:0;right:0;bottom:0;height:240px;z-index:-1;pointer-events:none;background:linear-gradient(0deg,#040e188c,#040e1861 45%,#040e1800)}.world-shell.chasing .view-controls button{text-shadow:0 1px 4px rgba(0,10,18,.9)}@media (max-width:650px){.world-shell.chasing:after{height:300px}}.bait-shop{padding:10px 0 4px}.bait-shop h3{margin:0 0 2px}.bait-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:10px;padding:8px 2px 14px}.bait-card{display:flex;flex-direction:column;gap:4px;padding:10px;border:1px solid #bed1c326;border-radius:10px;background:#ffffff08}.bait-card.on{border-color:#d0be85a0;background:#d0be8512}.bait-card h4{margin:0;font-size:15px}.bait-card p{margin:0;font-size:12.5px;line-height:1.45;color:var(--muted)}.bait-card .pow{color:var(--accent);letter-spacing:2px;font-size:13px}.bait-card .meta{color:var(--ink)}.bait-actions{display:flex;gap:6px;margin-top:auto;padding-top:6px}.bait-actions button{flex:1;padding:7px 6px;border:1px solid #bcccab4a;border-radius:8px}.bait-actions button:disabled{opacity:.45}.skin-pick{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.skin-pick select{padding:3px 6px;border:1px solid #bcccab4a;border-radius:6px;background:#0b2630;color:var(--ink)}.journal-list .prog{display:flex;flex-direction:column;gap:3px;text-align:left;font-size:12px;color:var(--muted)}.journal-list .prog p{margin:0}.journal-list .prog .tier{color:var(--accent);letter-spacing:1px;font-size:13px}.journal-list .prog .tier small{display:inline;margin:0 0 0 6px;font-size:11px;letter-spacing:0;color:var(--muted)}.journal-list .prog .tier[data-t="4"],.journal-list .prog .tier[data-t="5"]{color:#f1c76b}.journal-list .prog .count b,.journal-list .prog .pts b{color:var(--ink)}.journal-list .prog progress{width:100%;height:6px;accent-color:#d0be85}.journal-list .prog .spend{display:flex;flex-direction:column;gap:5px;padding-top:4px}.journal-list .prog .spend button{padding:6px 8px;border:1px solid #d0be85a0;border-radius:8px;background:#d0be8514;text-align:left}.shop-row .gate{margin:0 0 8px;font-size:12px;color:#e3b97e}.shop-row.locked .shop-icon{filter:grayscale(1) brightness(.55)}.catch-result{margin:6px 0 0;font-size:13px;line-height:1.5}.catch-result .keep{color:#f1c76b;font-weight:600}.catch-result .gain{color:var(--accent)}.bait-pick{display:flex;align-items:center}@media (max-height:520px){.drawer>header{align-items:center}.drawer>header h2{font-size:17px;letter-spacing:2px}.drawer .close{width:28px;height:28px;font-size:22px}.drawer .drawer-note{font-size:10px;line-height:1.5;padding-bottom:4px}.drawer .bait-shop{padding:4px 0 0}.drawer .bait-shop h3{font-size:13px}.drawer .bait-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;padding:4px 0 8px}.drawer .bait-card{padding:6px 8px;gap:2px}.drawer .bait-card h4{font-size:12px}.drawer .bait-card p{font-size:10px;line-height:1.35}.drawer .bait-card .pow{font-size:10px}.drawer .bait-actions{padding-top:3px;gap:4px}.drawer .bait-actions button{padding:5px 4px;font-size:10px;white-space:nowrap}.drawer .journal-list .prog{font-size:10px}.drawer .journal-list .prog .tier{font-size:11px}.drawer .journal-list .prog .spend button{padding:4px 6px;font-size:10px}.drawer .skin-pick{font-size:10px}}.journal-list .legend-replay{margin-top:4px;align-self:flex-start;padding:3px 10px;border:1px solid rgba(241,199,107,.55);border-radius:999px;background:#f1c76b1f;color:#f1c76b;font-size:11px;letter-spacing:1px;cursor:pointer}.journal-list .legend-replay:hover{background:#f1c76b47}.light-controls.room-controls{margin-left:0;padding-left:18px;border-left:1px solid #c9dcc334}.immersive .room-controls{display:none}@media (max-width:1100px){.light-controls.room-controls{padding-left:13px}}@media (max-width:700px){.light-controls.room-controls{grid-column:1/-1;padding-left:0;border-left:0}}.world-shell.aquarium:not(.immersive):not([data-room=none]) .world-vignette{background:radial-gradient(ellipse 46% 58% at 12% 40%,rgba(4,27,33,.66),rgba(4,27,33,.32) 55%,transparent 78%),linear-gradient(0deg,rgba(3,20,26,.9),transparent 26%,transparent 84%,rgba(3,20,26,.5))}.world-shell.aquarium:not(.immersive):not([data-room=none]) .scene-heading h1{text-shadow:0 1px 3px #021a22d9,0 3px 26px #001c27}.world-shell.aquarium:not(.immersive):not([data-room=none]) :is(.eyebrow,.scene-description,.habitat-switch button){text-shadow:0 1px 3px #021a22e6,0 0 12px #021a2299}.world-shell.aquarium:not(.immersive):not([data-room=none]) .scene-actions button{background:#0a2832b8;border-bottom-color:#c3d8c233}.world-shell.aquarium:not(.immersive):not([data-room=none]) .tank-caption{text-shadow:0 1px 3px #021a22,0 2px 14px #001820e6}.world-shell.aquarium:not(.immersive):not([data-room=none]) .tank-caption>span{color:#cfe0da}.world-shell.fishing .voice-line{position:absolute;right:150px;bottom:208px;z-index:2;margin:0;pointer-events:none;font-family:var(--mincho);font-size:13px;letter-spacing:.16em;color:var(--bare-2);text-shadow:var(--halo);white-space:nowrap;animation:voice-line var(--d,1.6s) ease both}@keyframes voice-line{0%{opacity:0;transform:translateY(4px)}14%{opacity:.9;transform:none}80%{opacity:.9}to{opacity:0}}@media (max-width:700px){.world-shell.fishing .voice-line{right:16px;bottom:calc(214px + env(safe-area-inset-bottom,0px));font-size:12px}}@media (prefers-reduced-motion:reduce){.world-shell.fishing .voice-line{animation-name:voice-line-still}@keyframes voice-line-still{0%,to{opacity:.9}}}.dock{position:absolute;z-index:6;left:50%;bottom:54px;transform:translate(-50%);width:min(600px,calc(100% - 24px));display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.dock>*{pointer-events:auto}.dock-tabs{display:flex;gap:4px;padding:5px;border-radius:20px;background:#06222bdb;border:1px solid #b9c9ba3a;box-shadow:0 10px 30px #001a2470;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dock-tabs button{min-width:62px;height:54px;padding:0 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:12px;letter-spacing:1px;color:#d6dfd4;border-radius:15px}.dock-tabs button i{font-style:normal;font-size:19px;line-height:1;color:var(--accent)}.dock-tabs button.selected{background:#d3c08b;color:#102b32}.dock-tabs button.selected i{color:#102b32}.dock-tabs .dock-go{border-left:1px solid #b9c9ba30;border-radius:0 15px 15px 0;margin-left:2px}.dock.min .dock-tabs button{min-width:84px;flex-direction:row;gap:6px;height:46px;font-size:13px}.dock-sheet{width:100%;max-height:min(48vh,380px);overflow-y:auto;padding:12px 12px 14px;border-radius:18px;background:#082731f2;border:1px solid #b9c9ba3a;box-shadow:0 14px 40px #001a2480;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);animation:dock-up .18s ease-out;scrollbar-width:thin}@keyframes dock-up{0%{transform:translateY(10px);opacity:0}to{transform:none;opacity:1}}.dock-sheet header{display:flex;align-items:center;gap:10px;margin:0 2px 10px}.dock-sheet header b{font-size:15px;font-weight:500;letter-spacing:2px;color:#f1e6c4}.dock-sheet header small{font-size:11px;color:var(--muted)}.dock-close{margin-left:auto;width:40px;height:40px;border-radius:12px;font-size:16px;color:#a8c0bc;background:#ffffff0a}.dock-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}.dock-items button{display:flex;align-items:center;gap:10px;min-height:58px;padding:8px 12px;border-radius:13px;background:#ffffff0b;border:1px solid #bcccab2e;text-align:left}.dock-items button i{font-style:normal;font-size:21px;width:26px;text-align:center;color:var(--accent);flex-shrink:0}.dock-items button span{display:flex;flex-direction:column;font-size:14px;letter-spacing:1px;color:#eef0e0}.dock-items button small{font-size:11px;letter-spacing:0;color:var(--muted);margin-top:3px}.dock-items button.selected{background:#d3c08b2e;border-color:var(--accent)}.dock-items button.selected small{color:var(--accent)}.dock-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:12px;padding-top:10px;border-top:1px solid #bcccab24}.dock-chips>span{font-size:11px;color:var(--muted);margin-right:4px}.dock-chips button{min-height:38px;padding:0 13px;border-radius:19px;font-size:12px;border:1px solid #bcccab3a;background:#ffffff08}.dock-chips button.selected{background:#d3c08b;color:#102b32;border-color:#f1e3b8}.mode-bar{position:absolute;z-index:6;top:116px;left:50%;transform:translate(-50%);display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:calc(100% - 24px)}.mode-bar>span{display:flex;align-items:center;gap:6px;padding:4px 4px 4px 16px;border-radius:24px;background:#06222be6;border:1px solid #d0be8566;box-shadow:0 8px 22px #001a2466;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mode-bar b{font-size:13px;font-weight:500;letter-spacing:1px;color:var(--accent);margin-right:4px;white-space:nowrap}.mode-bar button{min-height:40px;padding:0 12px;border-radius:20px;font-size:12px;white-space:nowrap;background:#ffffff0c}.mode-bar .mode-end{background:#d3c08b;color:#102b32}.immersive .mode-bar{top:12px}.ui-min .scene-heading,.ui-min .tank-caption,.dock-on .scene-heading,.dock-on .tank-caption{display:none}@media (max-width:1100px){.mode-bar{top:96px}}@media (max-width:700px){.dock{bottom:44px;width:calc(100% - 16px)}.dock-tabs{width:100%;justify-content:space-between}.dock-tabs button{min-width:0;flex:1;padding:0 2px;font-size:11px;letter-spacing:0}.dock-items{grid-template-columns:1fr 1fr}.dock-items button{padding:8px 9px;gap:8px}.dock-items button small{font-size:10px}.mode-bar{top:126px}}@media (max-height:520px) and (orientation:landscape){.dock{bottom:42px}.dock-tabs button{height:46px;min-width:56px}.dock-sheet{max-height:calc(100vh - 160px)}.dock-items{grid-template-columns:repeat(3,1fr)}.dock-items button{min-height:50px}.dock-items button small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mode-bar{top:70px}}.walking .walk-stick{bottom:132px}@media (pointer:coarse){.habitat-switch button{min-height:40px}.build-tabs button,.super-view button{min-height:44px;font-size:13px}.build-pal button,.build-shop button{min-height:48px;font-size:13px}.build-pal small,.build-shop small{font-size:10px}.build-mats button{min-height:52px;font-size:10px}.build-pad button{min-height:44px;font-size:13px}.build-list button{min-height:40px;padding:0 12px;font-size:12px}.build-go{min-height:48px;font-size:15px}.build-panel .close,.build-panel .mini-toggle{min-width:44px;min-height:40px}}.build-panel .mini-toggle{margin-left:auto;padding:4px 10px;font-size:12px;border:1px solid #bcccab3a;border-radius:8px;background:#ffffff0a}.build-panel header{align-items:center}.build-panel.mini{bottom:auto!important;height:auto!important}.build-panel.mini>:not(header):not(.super-view){display:none}.build-quick{position:absolute;z-index:6;left:calc((100% - min(268px,38vw) - 24px)/2);bottom:52px;transform:translate(-50%);display:flex;gap:8px;padding:6px;border-radius:18px;background:#06222bd9;border:1px solid #b9c9ba3a;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 10px 30px #001a2480}.build-quick button{width:58px;height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:20px;line-height:1;border-radius:13px;border:1px solid #bcccab3a;background:#ffffff0c}.build-quick small{font-size:10px;letter-spacing:1px}.build-quick .go{background:#d3c08b;color:#102b32;border-color:#f1e3b8}@media (orientation:portrait) and (pointer:coarse){.build-quick{left:50%;bottom:calc(44vh + 18px)}.build-panel.mini~.build-quick{bottom:80px}}@media (max-height:520px){.build-quick{bottom:40px}.build-quick button{width:52px;height:50px}}.build-panel{position:absolute;top:66px;right:12px;bottom:40px;width:min(268px,38vw);z-index:6;display:flex;flex-direction:column;padding:10px 12px;background:#06222bea;border:1px solid #b9c9ba3a;border-radius:12px;box-shadow:0 14px 50px #001a2480;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:drawer-pop .22s ease-out}.build-panel header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.build-panel header h2{margin:0;font-size:17px;letter-spacing:2px}.build-panel header .eyebrow{margin:0 0 2px;font-size:8px}.build-panel .close{position:static;font-size:22px;line-height:1;padding:0 6px}.build-stat{display:flex;align-items:baseline;gap:5px;margin:6px 0;font-size:11px;color:var(--muted)}.build-stat b{color:var(--accent);font-size:15px;font-weight:600}.build-stat i{font-style:normal;opacity:.6}.build-stat span:nth-of-type(2){margin-left:auto}.build-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-bottom:6px}.build-tabs button{padding:6px 0;font-size:12px;letter-spacing:2px;border:1px solid #bcccab3a;border-radius:7px;background:#ffffff08}.build-tabs button.on{background:#d0be85;color:#102b32;border-color:#f1e3b8}.build-body{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;padding-right:3px}.build-body h3{margin:9px 0 5px;font-size:10px;letter-spacing:3px;font-weight:500;color:var(--muted)}.build-pal,.build-shop{display:grid;grid-template-columns:repeat(2,1fr);gap:5px}.build-pal button,.build-shop button{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:6px 8px;font-size:12px;text-align:left;border:1px solid #bcccab33;border-radius:7px;background:#ffffff0a}.build-pal button.on{border-color:#d0be85;background:#d0be8526}.build-pal small,.build-shop small{font-size:9px;color:var(--muted)}.build-pal button:disabled,.build-mats button:disabled,.build-body button:disabled{opacity:.38}.build-mats{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.build-mats button{display:flex;flex-direction:column;align-items:center;gap:3px;padding:5px 2px;font-size:9px;border:1px solid #bcccab2e;border-radius:7px;background:#ffffff08}.build-mats button.on{border-color:#d0be85;background:#d0be8526}.build-mats i,.mat-row i{display:block;width:22px;height:14px;border-radius:3px;border:1px solid #0006}.build-empty{margin:4px 0;font-size:11px;color:var(--muted)}.build-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:10px}.build-pad button{padding:7px 0;font-size:11px;border:1px solid #bcccab3a;border-radius:7px;background:#ffffff0c}.build-note{margin:8px 0 6px;font-size:11px;line-height:1.6;color:#cfe0d2}.build-note.bad{color:#ff9a8c}.build-go,.build-clear{width:100%;padding:9px 0;margin-top:2px;font-size:13px;letter-spacing:4px;border-radius:8px;background:#d3c08b;color:#102b32;border:1px solid #f1e3b8}.build-clear{margin-top:8px;background:transparent;color:#e8b6a8;border-color:#e8b6a855;letter-spacing:2px;font-size:11px;padding:7px 0}.build-picked{margin:4px 0 8px;font-size:15px;color:var(--accent)}.build-list{display:flex;flex-direction:column;gap:5px}.build-list article{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid #bcccab26;border-radius:8px;background:#ffffff06}.build-list article>div{flex:1;min-width:0;display:flex;flex-direction:column}.build-list b{font-size:12px;font-weight:500}.build-list small{font-size:9px;color:var(--muted);line-height:1.4}.build-list .mat-row{flex-direction:row;align-items:center;gap:8px}.build-list .own{font-size:10px;color:var(--muted)}.build-list button{padding:5px 9px;font-size:11px;white-space:nowrap;border:1px solid #d0be8599;border-radius:7px;color:var(--accent);background:transparent}.build-shop button span{font-size:12px}.building .scene-actions,.building .scene-heading,.building .tank-caption{display:none}@media (orientation:portrait) and (pointer:coarse){.build-panel{top:auto;left:8px;right:8px;bottom:8px;width:auto;height:44vh}}@media (max-height:520px){.build-panel{top:60px;bottom:34px;padding:8px 10px}.build-body h3{margin:6px 0 4px}}.super-view{display:flex;gap:4px;margin:6px 0}.super-view button{flex:1;padding:6px 0;font-size:12px;letter-spacing:1px;border:1px solid #bcccab3a;border-radius:7px;background:#ffffff08}.super-view button.on{background:#d0be85;color:#102b32;border-color:#f1e3b8}.super-view button:disabled{opacity:.4}.super-link{width:100%;box-sizing:border-box;margin:4px 0 8px;padding:7px 8px;font-size:11px;color:var(--ink);background:#ffffff0c;border:1px solid #bcccab3a;border-radius:7px}.build-pad button.on{border-color:#d0be85;background:#d0be8526}.super-lock{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:6;width:min(340px,86vw);padding:18px 20px;text-align:center;background:#06222bf0;border:1px solid #b9c9ba3a;border-radius:14px;box-shadow:0 14px 50px #001a2480;animation:drawer-pop .22s ease-out}.super-lock h2{margin:0 0 6px;font-size:18px;letter-spacing:3px}.super-lock p{margin:6px 0;font-size:12px;line-height:1.7;color:#cfe0d2}.super-lock button{margin:6px 4px 0;padding:8px 14px;font-size:12px;border:1px solid #d0be85aa;border-radius:8px;color:var(--accent);background:transparent}.visit-bar{position:absolute;left:50%;bottom:48px;transform:translate(-50%);z-index:6;display:flex;align-items:center;gap:12px;padding:8px 14px;font-size:12px;background:#06222bea;border:1px solid #b9c9ba3a;border-radius:20px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.visit-bar button{padding:5px 12px;font-size:12px;border:1px solid #d0be85aa;border-radius:12px;color:var(--accent);background:transparent}.world-shell.super .scene-heading,.world-shell.super .tank-caption{display:none}.intro-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:center;justify-content:center;background:#001017b8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.intro-card{position:relative;width:min(440px,92vw);max-height:88vh;display:flex;flex-direction:column;padding:18px 20px 12px;background:#06222bf5;border:1px solid #b9c9ba44;border-radius:16px;box-shadow:0 24px 80px #000a;animation:drawer-pop .25s ease-out}.intro-card .close{position:absolute;top:8px;right:10px;font-size:22px;line-height:1;padding:0 6px}.intro-stage{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;touch-action:pan-y}.intro-page h2{margin:0 0 8px;font-size:20px;letter-spacing:3px}.intro-page h3{margin:8px 0 4px;font-size:16px;color:var(--accent);font-weight:500}.intro-page p{margin:6px 0;font-size:13px;line-height:1.75;color:#d6e6d8}.intro-page .eyebrow{margin:0 0 4px}.intro-fish{height:190px;display:flex;align-items:center;justify-content:center}.intro-fish>*{max-width:100%;max-height:100%}.intro-shot{margin:6px 0}.intro-shot img{display:block;width:100%;border-radius:10px;border:1px solid #bcccab33}.intro-spots,.intro-check{list-style:none;margin:8px 0;padding:0;display:grid;gap:4px}.intro-spots li,.intro-check li{display:flex;align-items:center;gap:8px;padding:5px 8px;font-size:12px;border:1px solid #bcccab22;border-radius:7px;color:var(--muted)}.intro-spots li.on,.intro-check li.on{color:var(--ink);border-color:#d0be8566;background:#d0be8512}.intro-spots i,.intro-check i{font-style:normal;width:16px;text-align:center;color:var(--accent)}.intro-spots small{margin-left:auto;font-size:10px;color:var(--muted)}.intro-spots.small{grid-template-columns:repeat(2,1fr)}.intro-spots.small li{padding:3px 6px;font-size:11px}.intro-card footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px}.intro-card footer button{padding:7px 12px;font-size:12px;border:1px solid #bcccab3a;border-radius:8px;background:#ffffff08}.intro-card footer button:disabled{opacity:.35}.intro-card footer .go{background:#d3c08b;color:#102b32;border-color:#f1e3b8}.intro-dots{display:flex;gap:6px}.intro-dots i{width:7px;height:7px;border-radius:50%;background:#fff3;cursor:pointer}.intro-dots i.on{background:var(--accent)}.super-reopen{position:absolute;top:66px;right:12px;z-index:6;padding:7px 12px;font-size:12px;border:1px solid #d0be85aa;border-radius:10px;color:var(--accent);background:#06222bea}.legend{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;overflow:hidden;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;animation:legend-out .45s ease var(--out) both}.legend-ink{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:start center;padding-top:14vh;animation:legend-out .5s ease var(--fade) both}.legend-bar{position:absolute;left:0;right:0;height:11vh;background:#000;pointer-events:none}.legend-bar.top{top:0;animation:bar-top .5s cubic-bezier(.2,.8,.2,1) both}.legend-bar.bottom{bottom:0;animation:bar-bottom .5s cubic-bezier(.2,.8,.2,1) both}.legend-flash{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;pointer-events:none;animation:legend-flash .55s ease-out both}.legend-paper{position:absolute;left:50%;top:50%;width:min(90vw,820px);height:min(38vh,380px);transform:translate(-50%);top:13vh;pointer-events:none;background:radial-gradient(ellipse at center,#faf4e480,#faf4e452 40%,#faf4e400 70%);opacity:0;animation:paper-in 1s ease var(--paper,2.8s) both}.legend-title{position:relative;display:flex;flex-direction:column;align-items:center;gap:min(1.2vh,10px)}.legend-main,.legend-name{display:flex;justify-content:center;align-items:center}.legend-main{gap:0}.legend-name{gap:0;margin-top:.4vh}.ink-line{position:relative;max-width:100vw}.ink-line.main{width:min(92vw,calc(30vh * var(--ar)))}.ink-line.name{width:min(92vw,calc(15vh * var(--ar)));margin-top:-.5vh}.ink-layer{position:absolute;display:block;pointer-events:none;opacity:0;animation:ink-slam .7s cubic-bezier(.16,1,.3,1) both}.ink{display:block;width:min(21vw,29vh);height:min(21vw,29vh);opacity:0;animation:ink-pop .62s cubic-bezier(.2,1.1,.3,1) both}.ink.big{width:min(22vw,30vh);height:min(22vw,30vh)}.legend-name .ink{width:min(calc(92vw / var(--n)),21vh);height:min(calc(92vw / var(--n)),21vh)}.ink img{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none;transform:scale(1.28);filter:drop-shadow(0 .5vh 1.2vh rgba(30,20,10,.3))}.ink-text{display:grid;place-items:center;width:100%;height:100%;font:900 min(18vw,24vh)/1 "DFKai-SB","BiauKai","標楷體","Kaiti TC","Noto Serif TC",serif;color:#15110e;text-shadow:0 0 .3em rgba(0,0,0,.35),.02em .03em 0 #000}.legend-name .ink-text{font-size:min(calc(70vw / var(--n)),14vh)}.legend-skip{position:absolute;top:calc(14px + env(safe-area-inset-top,0px));right:calc(14px + env(safe-area-inset-right,0px));z-index:3;padding:10px 14px;border:1px solid rgba(232,226,210,.5);border-radius:6px;background:#00000059;cursor:pointer;font:13px/1 var(--mincho,serif);letter-spacing:.2em;color:#e8e2d2;opacity:0;animation:skip-in .6s ease .8s both}@keyframes ink-pop{0%{opacity:0;transform:scale(2.6) rotate(-7deg);filter:blur(20px) contrast(.6)}38%{opacity:1;transform:scale(.88) rotate(1.4deg);filter:blur(1.5px)}62%{transform:scale(1.08) rotate(-.6deg);filter:blur(0)}to{opacity:1;transform:none;filter:none}}@keyframes ink-slam{0%{opacity:0;transform:translateY(-2vh) scale(1.7) rotate(-4deg);filter:blur(14px)}28%{opacity:1;transform:scaleX(1.22) scaleY(.76);filter:blur(0)}42%{transform:scale(.93)}58%{transform:scale(1.04)}78%{transform:scale(.99)}to{opacity:1;transform:none;filter:none}}.ink-burst{position:absolute;width:0;height:0;pointer-events:none}.ink-burst:after{content:"";position:absolute;left:-3vh;top:-3vh;width:6vh;height:6vh;border-radius:50%;border:.35vh solid rgba(20,16,12,.55);opacity:0;animation:ink-ring .5s ease-out forwards;animation-delay:inherit}.ink-burst b{position:absolute;left:0;top:0;width:var(--s);height:var(--s);margin:calc(var(--s) / -2);border-radius:50%;background:#14100c;opacity:0;animation:ink-fling .55s cubic-bezier(.1,.8,.3,1) forwards}@keyframes ink-fling{0%{opacity:.95;transform:rotate(var(--a)) translate(0) scale(.5)}70%{opacity:.85}to{opacity:0;transform:rotate(var(--a)) translate(var(--d)) scale(1.1)}}@keyframes ink-ring{0%{opacity:.8;transform:scale(.3)}to{opacity:0;transform:scale(2.2)}}@keyframes paper-in{0%{opacity:0}to{opacity:1}}@keyframes bar-top{0%{transform:translateY(-100%)}to{transform:none}}@keyframes bar-bottom{0%{transform:translateY(100%)}to{transform:none}}@keyframes legend-flash{0%{opacity:.95}to{opacity:0}}@keyframes legend-out{0%{opacity:1}to{opacity:0}}@keyframes skip-in{0%{opacity:0}to{opacity:.7}}.world-shell.legend-on .fishing-hud{opacity:0;transition:opacity .25s;pointer-events:none}@media (prefers-reduced-motion:reduce){.ink{animation-name:ink-fade}@keyframes ink-fade{0%{opacity:0}to{opacity:1}}.legend-flash{display:none}}
