:root{--ink:#493e48;--pink:#ad6d84;--cream:#fff9f1;--line:#e8d9d4;--mint:#c6dfd2}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:radial-gradient(circle at 10% 10%,#f7dee3,transparent 32%),radial-gradient(circle at 90% 15%,#dfede1,transparent 30%),#f9f4ee;font-family:system-ui,-apple-system,'Noto Sans TC',sans-serif}header{background:#fffaf4d9;border-bottom:1px solid var(--line);padding:24px max(20px,calc((100vw - 1120px)/2));display:flex;justify-content:space-between;align-items:center;gap:20px}header h1{font-size:30px;margin:3px 0;color:#885b77}header p{margin:0;color:#84767e}header small{letter-spacing:3px;color:#b48da0}.metrics{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.metrics span{background:#fff;border:1px solid var(--line);border-radius:30px;padding:10px 13px;font-weight:700}nav{display:flex;overflow:auto;gap:8px;padding:15px max(20px,calc((100vw - 1120px)/2));position:sticky;top:0;z-index:3;background:#faf3efee;backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}button,select,input,textarea{font:inherit}button{cursor:pointer;border:1px solid #d8b6be;background:white;color:#8b5c75;border-radius:12px;padding:10px 15px;font-weight:700;transition:.15s}button:hover{background:#fff0f4;transform:translateY(-1px)}button:disabled{opacity:.45;cursor:not-allowed}nav button{white-space:nowrap}nav button.active{background:#a87088;color:white;border-color:#a87088}main{max-width:1120px;margin:20px auto;padding:0 18px;min-height:65vh}.note{background:#eaf2e8;border:1px solid #cddbc8;border-radius:12px;padding:13px;margin-bottom:20px;font-size:14px}.page{display:none}.page.active{display:block}.heading{margin:24px 0}.heading h2{color:#825d78;font-size:26px;margin:0}.heading p{color:#867d81;margin:7px 0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.grid.two{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}.card{background:#fffcf8;border:1px solid #eadcda;border-radius:20px;box-shadow:0 5px 20px #79594a12;padding:21px;margin-bottom:16px}.card h3{margin:0 0 14px;color:#8d6276}.card p{line-height:1.6}.center{text-align:center}.tools,.buttons{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0}.tools input:not([type=checkbox]),select,textarea{padding:10px;border:1px solid #e1d1d1;border-radius:10px;background:white;color:var(--ink)}textarea{display:block;width:100%;min-height:90px;resize:vertical;margin:10px 0}.badge{display:inline-block;padding:5px 9px;border-radius:20px;background:#f6e9ed;color:#86566e;font-size:12px}.muted{color:#958b90;font-size:13px}.materials{display:flex;flex-wrap:wrap;gap:8px}.materials span{background:#f6f0e7;border-radius:8px;padding:7px 9px}.recipe-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.recipe{display:flex;flex-direction:column;gap:7px;background:#fffcf9;border:1px solid #eadbd4;padding:15px;border-radius:14px}.recipe>div:first-child{display:flex;align-items:center;justify-content:space-between}.recipe h4{font-size:17px;margin:0}.recipe button{margin-top:auto}.bigNumber{font-size:78px;font-weight:900;color:#b47c95;text-shadow:2px 3px #f6e5ea;margin:15px}.wheelWrap{margin:17px auto;width:180px;height:180px;display:grid;place-items:center;overflow:hidden;border:8px solid #ddb7c7;border-radius:50%;box-shadow:0 0 0 5px #fff3ec}#wheel{display:grid;place-items:center;width:100%;height:100%;border-radius:50%;background:conic-gradient(#f7dfb9 0 60deg,#e4d0e9 60deg 120deg,#c5e8d8 120deg 180deg,#f2ccd8 180deg 240deg,#dbe4f2 240deg 300deg,#efdcb9 300deg);line-height:3;font-size:23px;transition:transform 2s cubic-bezier(.15,.8,.2,1)}.tarotCards{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin:25px 0}.tarotCard{height:205px;width:126px;position:relative;perspective:650px;cursor:pointer}.tarotCard .inner{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .75s ease}.tarotCard.flipped .inner{transform:rotateY(180deg)}.tarotCard .face{position:absolute;inset:0;border-radius:10px;backface-visibility:hidden;display:grid;place-items:center;padding:10px;text-align:center;border:5px double #d7b57b;box-shadow:0 8px 15px #5b37422b}.tarotCard .back{background:repeating-linear-gradient(45deg,#604971,#604971 7px,#775b81 7px,#775b81 14px);color:#fbe3b4;font-size:34px}.tarotCard .front{background:linear-gradient(#faf2d7,#e8d8b3);color:#6a5067;transform:rotateY(180deg);font-size:13px;display:flex;flex-direction:column;justify-content:space-around}.tarotCard .symbol{font-size:43px}.petSprite{font-size:83px;display:inline-block;filter:drop-shadow(0 9px 3px #bca3aa44);transform-origin:center bottom;animation:breathe 2.4s infinite ease-in-out}.petSprite.play{animation:bounce .55s 3}.petSprite.pet{animation:tilt .4s 4}.petSprite.feed{animation:bounce .4s 4}.petSprite.sleep{animation:breathe 3.5s infinite}.petSprite.bathe{animation:wobble .6s 3}@keyframes breathe{50%{transform:translateY(-4px) scale(1.03)}}@keyframes bounce{50%{transform:translateY(-16px)}}@keyframes tilt{50%{transform:rotate(13deg)}}@keyframes wobble{25%{transform:rotate(-12deg)}75%{transform:rotate(12deg)}}.room{width:100%;max-width:475px;aspect-ratio:1.12;display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(6,1fr);gap:3px;padding:20px 14px 15px;background:linear-gradient(#f3e7d8 0 31%,#cfb096 31% 32%,#c89c73 32%);border:12px ridge #d5b69c;border-radius:8px;box-shadow:inset 0 14px 30px #00000013;position:relative;margin:12px auto}.room .tile{border:1px dashed #ffffff63;border-radius:5px;background:#ffffff0d;display:grid;place-items:center;font-size:28px;cursor:pointer;transition:.2s}.room .tile:hover{background:#fff7d044}.room .tile.furnished{background:#ffffff50}.room .tile span{filter:drop-shadow(1px 3px 1px #5b3f3066)}.homePet{font-size:47px;display:inline-block;animation:breathe 2.2s infinite;margin:8px}.pill{padding:5px 10px;background:#eaf0e8;border-radius:20px;font-size:13px}.listing{padding:12px;background:#f9f1ed;margin:9px 0;border-radius:10px;display:flex;justify-content:space-between;align-items:center;gap:12px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:12px 22px;color:white;background:#735268;border-radius:12px;opacity:0;transition:.2s;pointer-events:none;z-index:20}#toast.show{opacity:1}footer{text-align:center;font-size:13px;color:#ac96a1;padding:30px}@media(max-width:700px){header{flex-direction:column;align-items:start}header h1{font-size:25px}nav{padding:10px}.grid.two{grid-template-columns:1fr}.recipe-list{grid-template-columns:1fr}.metrics{justify-content:start}.card{padding:15px}}

.tarotCard .front{padding:4px 4px 9px}.tarotIllustration{height:146px;max-width:108px;border-radius:6px;object-fit:cover}.tarotCard{height:220px;width:138px}.tarotCard .front b{font-size:13px}
@media(prefers-reduced-motion:reduce){.petSprite,#wheel,.tarotCard .inner{animation:none!important;transition:none!important}}

/* 第13階段：生活職業、寵物互動、可辨識家具、更新日誌 */
#room{overflow:hidden}.furnitureArt{font-size:27px;filter:drop-shadow(1px 2px 1px #47332d55);display:inline-block}.tile.furnished{outline:1px solid #ffffff55}.room-pet{position:absolute;z-index:2;font-size:33px;pointer-events:none;transition:left 2s linear,top 2s linear;transform:translate(-50%,-50%);filter:drop-shadow(0 3px 2px #56412c55)}.room-pet .petWear{font-size:17px;top:-10px}.pet-with-wear{position:relative;display:inline-block}.petWear{position:absolute;left:50%;top:-14px;transform:translateX(-50%);z-index:3;font-size:34px;line-height:1;text-shadow:0 1px white}.petOutfitLabel{font-size:13px;color:#806878}.job-card{padding:13px;border-radius:12px;background:#f8f0ed;margin:10px 0}.progress{height:13px;border-radius:20px;background:#e7d9d4;overflow:hidden}.progress>span{display:block;height:100%;background:#a6c9bd}.timing-track{height:40px;border-radius:16px;position:relative;background:linear-gradient(90deg,#e5ccc4,#f7d6b0,#e0c1c3);border:2px solid #d9bcc4;overflow:hidden;margin:20px 0}.timing-target{position:absolute;left:43%;width:14%;height:100%;background:#a4dabc}.timing-track #timingMarker{position:absolute;left:0;height:100%;width:5px;background:#725673;transition:none}.memory-board{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.memory-board button{font-size:26px;min-height:65px;padding:6px}.memory-board button.matched{background:#def1e4;border-color:#8ab9a5}.update-card{padding:21px;background:#fffcf9;border:1px solid #eadbd4;border-radius:16px;margin:14px 0}.update-card h3{margin-top:0}.update-card time{color:#958b90;font-size:13px}.update-card li{margin:5px 0}.room-commands{font-size:13px;color:#857780}#room:focus-within{outline:3px solid #a6d3c2}
/* v0.14 Collecting areas and consistent leisure visuals */
.collection-map{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin-bottom:20px}.location-card{min-height:165px;background:linear-gradient(145deg,#fcf9ee,#e5f0e9);border:1px solid #c8d9ce;border-radius:21px;box-shadow:0 6px 19px #735f5320;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:42px}.location-card strong{font-size:19px;color:#66566b}.location-card small{font-size:13px;color:#7c7982}.idle-row{border-bottom:1px solid #eee2db;padding:14px 0}.idle-row>.idle-status{margin-top:8px}.idle-status{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.idle-status>b{color:#537f69}.idle-status span:last-child{margin-left:auto}.scene{height:175px;border-radius:17px;display:grid;place-items:center;position:relative;overflow:hidden}.scene-fish{background:linear-gradient(#e0f0eb 0 48%,#97c9d4 49%,#6daebf)}.scene-herb{background:linear-gradient(#deeee0 0 55%,#87bb91 56%,#7bb485)}.scene-ore{background:linear-gradient(135deg,#aab1c3,#777b9d,#c2acc7)}.scene-farm{background:linear-gradient(#e6f2e5 0 56%,#c4a07a 57%,#b1845c)}.scene-art{font-size:66px;color:#fffcf5;text-shadow:0 4px 14px #53635a69}.scene-caption{position:absolute;bottom:8px;left:15px;font-size:12px;background:#fff9;border-radius:12px;padding:5px 10px}.event-result{background:#f6f0e9;padding:12px;border-radius:10px;min-height:45px}.mini-marker{position:absolute;top:0;bottom:0;width:5px;background:#684b6b}.plant-choice{min-width:86px;display:flex;flex-direction:column;align-items:center;gap:5px}.plant-choice span{font-size:40px;color:#5b9772}.mining-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}.ore-choice{display:flex;flex-direction:column;min-height:95px}.ore-choice span{font-size:44px;color:#8c86ac}.farm-plots{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:15px}.farm-plot{border:2px dashed #b7d4b5;padding:13px;background:#f4f6e9;border-radius:13px;display:flex;align-items:center;flex-direction:column;gap:9px}.farm-icon{font-size:38px}.farm-plot small{color:#806f76}.farm-plot button,.farm-plot select{max-width:100%}.inventory-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:12px}.item-chip{background:#f7f0e9;padding:15px;border-radius:13px;display:flex;align-items:center;flex-direction:column;gap:7px;text-align:center}.item-chip .item-icon{font-size:33px}.item-chip small{font-weight:700;color:#87677a}.category-tabs{display:flex;flex-wrap:wrap;gap:9px;margin:15px 0}.category-tabs button{padding:10px 13px}.category-tabs button.selected{background:#8e6585;color:#fff;border-color:#8e6585}.category-tabs button small{font-size:11px;border-radius:10px;background:#ffffff38;padding:2px 5px}.pet-art{width:100%;height:100%;display:block;filter:drop-shadow(0 4px 5px #573d4640)}.petSprite.drawn-pet{width:115px;height:145px;margin:9px auto}.home-pet-frame{display:inline-flex;flex-direction:column;align-items:center;width:80px}.home-pet-frame .pet-art{width:70px;height:90px}.room-pet .pet-art{width:57px;height:67px}.furniture-svg{width:85%;height:85%;filter:drop-shadow(0 3px 2px #4a302c3d)}.room .tile{font-size:initial}.room .tile .furnitureArt{display:flex;align-items:center;justify-content:center;width:100%;height:100%}@media(max-width:700px){.mining-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.farm-plots{grid-template-columns:1fr}.idle-status span:last-child{margin-left:0}}

/* v0.15: compact new areas */
.seed-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}.seed-card{border:1px solid #dfd3c1;border-radius:17px;background:linear-gradient(145deg,#fffdf6,#ebf6e7);padding:18px;display:flex;flex-direction:column;align-items:flex-start;gap:9px;box-shadow:0 7px 16px #87795c17}.seed-art{font-size:38px;filter:drop-shadow(1px 5px 2px #59704355)}.seed-card small{display:block;line-height:1.5}.seed-card button{margin-top:auto}.idle-row{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:9px 3px;border-bottom:1px dashed #ddcdbd}.idle-row button{width:auto}.collection-map{grid-template-columns:repeat(auto-fit,minmax(165px,1fr))}.location-card{min-height:125px}#exchange .tools{align-items:end}#exchange input{max-width:220px}

/* v0.16 UI cohesion and responsive nav */
header{padding:14px 20px!important;min-height:0!important}header h1{font-size:clamp(1.25rem,2vw,2rem)!important;margin:2px 0!important}header p{margin:0!important}nav{display:flex;gap:6px;flex-wrap:wrap;max-height:none;overflow:visible;padding:8px 12px!important}nav button{padding:9px 12px!important;font-size:.9rem;white-space:nowrap}.quick-links{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 12px}.quick-links button{font-size:.85rem;padding:7px 10px}.location-card{min-height:105px!important}.dice-options{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.dice-options input{width:80px;padding:5px}.prize-table{background:#fff8e8;border-radius:12px;padding:12px;line-height:1.8}.fortune-jar{font-size:88px;filter:drop-shadow(0 12px 9px #c4a27d);transition:transform .35s}.fortune-jar.shaking{animation:jarShake .5s ease-in-out 3}@keyframes jarShake{0%,100%{transform:rotate(-8deg)}50%{transform:rotate(12deg)}}.ranch-scene{font-size:65px;background:linear-gradient(#c4e9dc,#83ba90);text-align:center;border-radius:15px;padding:20px}.fantasy-pet{position:relative;width:180px;height:180px;margin:0 auto;filter:drop-shadow(0 8px 8px #9b85a055);animation:petBreath 2.5s ease-in-out infinite}.fantasy-pet svg{width:100%;height:100%}@keyframes petBreath{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}.fantasy-pet .wear-layer{position:absolute;left:27%;top:39%;width:46%;height:45%;image-rendering:pixelated;pointer-events:none}.pet-card{background:linear-gradient(135deg,#fff,#f3eafb);border:1px solid #e7d9f0}.pet-actions{display:flex;gap:5px;justify-content:center;flex-wrap:wrap}.pet-actions button{font-size:12px;padding:6px 8px}#outfitCanvas{width:240px;height:240px;image-rendering:pixelated;touch-action:none;background-color:#fff;background-image:linear-gradient(45deg,#ddd 25%,transparent 25%),linear-gradient(-45deg,#ddd 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#ddd 75%),linear-gradient(-45deg,transparent 75%,#ddd 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0;border:3px solid #c8adc8;border-radius:7px;display:block;margin:12px auto}.deck-display{height:150px;display:flex;justify-content:center;align-items:center;perspective:600px}.deck-card{width:85px;height:135px;background:repeating-linear-gradient(45deg,#35255e,#35255e 7px,#6455a0 7px,#6455a0 13px);border:5px solid #dbc8a1;border-radius:8px;box-shadow:0 8px 15px #66527e55;display:grid;place-items:center;color:#ffe7aa;font-size:30px}.deck-display.shuffling .deck-card{animation:tarotShuffle .5s ease-in-out 5}@keyframes tarotShuffle{0%{transform:translateX(-32px) rotate(-14deg)}50%{transform:translateX(32px) rotate(14deg)}100%{transform:translateX(-32px) rotate(-14deg)}}.deck-display button{margin:8px}.tarotCard{cursor:pointer}.tarotIllustration{max-width:95%;max-height:130px}.rare-chip{color:#ab5b07;font-weight:700}.market-outfit{padding:7px;margin:5px;border-radius:10px;background:#fff8ec}.market-outfit img{width:40px;height:40px;image-rendering:pixelated;vertical-align:middle}#petCards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))} .nav-note{font-size:.8rem;color:#6a5574}@media(max-width:660px){.fantasy-pet{width:140px;height:140px}nav{gap:3px!important}nav button{font-size:12px!important;padding:6px!important}}
/* Lightweight pseudo-2.5D room and cards: gradients, consistent cast shadows, no large raster textures. */
#home .room{background:linear-gradient(155deg,#f4e8e3 0%,#f1dfce 30%,#c39d7f 31%,#ad8064 100%);box-shadow:inset 0 18px 36px #6d4d4d30,0 12px 24px #6e456b2b;border:12px ridge #ddbea5;transform:perspective(950px) rotateX(5deg);transform-origin:50% 85%}#home .room::before{content:'';position:absolute;pointer-events:none;inset:0;background:linear-gradient(135deg,#fff9 0%,transparent 34%),repeating-linear-gradient(0deg,transparent 0 36px,#ffffff19 36px 38px);opacity:.65}#home .room .tile{position:relative;z-index:1;background:linear-gradient(145deg,#ffffff20,#00000007);box-shadow:inset 1px 1px #fff8,inset -1px -2px #6f403611}#home .room .tile.furnished{box-shadow:0 4px 4px #3a274126,inset 1px 1px #fff7}.scene,.ranch-scene{box-shadow:inset 0 15px 23px #fff7,inset 0 -12px 18px #4e686922,0 6px 13px #705b5c20}.location-card{box-shadow:inset 0 4px 15px #ffffffb0,0 8px 0 #b4b6aa,0 12px 20px #6a5b5620!important}.location-card:active{transform:translateY(5px);box-shadow:inset 0 4px 15px #ffffffb0,0 3px 0 #b4b6aa!important}#petCards .pet-card{box-shadow:inset 0 3px 9px #fff,0 10px 0 #dac4d9,0 16px 26px #51445d1a}.recipe{box-shadow:inset 0 2px #fff,0 5px 13px #5c506012}
