@import "https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap";:root{--brown-dark:#3b2314;--brown-mid:#6b3a2a;--brown-light:sienna;--parchment:#f5e6c8;--parchment-dark:#e8d4a8;--green-dark:#2d5a1b;--green-mid:#4a7c2f;--green-light:#7ab648;--gold:#f0c040;--gold-dark:#c8900a;--blue:#5b8dd9;--red:#c0392b;--text-dark:#2c1810;--text-mid:#5a3825;--shadow:#0006}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;color:var(--text-dark);background-color:#1a2f1a;background-image:repeating-linear-gradient(0deg,#0000,#0000 31px,#0000000d 31px 32px),repeating-linear-gradient(90deg,#0000,#0000 31px,#0000000d 31px 32px);font-family:"Press Start 2P",monospace}.app-header{background-color:var(--brown-dark);border-bottom:4px solid var(--gold-dark);padding:16px 24px;padding-top:max(16px, env(safe-area-inset-top));text-align:center}.app-header h1{color:var(--gold);text-shadow:2px 2px 0 var(--brown-dark), -1px -1px 0 #000;letter-spacing:2px;font-size:14px;line-height:1.8}.app-header .subtitle{color:var(--parchment);letter-spacing:1px;margin-top:6px;font-size:9px}.overall-progress{background:var(--brown-dark);border-bottom:3px solid var(--brown-mid);align-items:center;gap:12px;padding:12px 24px;display:flex}.progress-label{color:var(--parchment);white-space:nowrap;font-size:9px}.progress-track{border:3px solid var(--brown-mid);background:#1a0a00;flex:1;height:16px;position:relative;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--green-mid), var(--green-light));height:100%;transition:width .4s;position:relative}.progress-fill:after{content:"";background:#ffffff4d;height:4px;position:absolute;top:2px;left:0;right:0}.progress-count{color:var(--gold);white-space:nowrap;font-size:9px}.app-main{max-width:1100px;margin:0 auto;padding:24px 16px}.room-section{margin-bottom:32px}.room-header{background:var(--brown-dark);border:3px solid var(--gold-dark);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:12px;margin-bottom:4px;padding:10px 16px;transition:background .15s;display:flex}.room-header:hover{background:var(--brown-mid)}.room-title{color:var(--gold);text-shadow:1px 1px #000;flex:1;font-size:12px}.room-progress-pill{background:var(--green-dark);color:#fff;border:2px solid var(--green-light);padding:3px 8px;font-size:9px}.room-progress-pill.complete{background:var(--gold-dark);border-color:var(--gold);color:var(--brown-dark)}.room-chevron{color:var(--parchment);font-size:10px;transition:transform .2s}.room-chevron.open{transform:rotate(90deg)}.bundles-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;padding:12px 0;display:grid}.bundle-card{background:var(--parchment);border:3px solid var(--brown-mid);box-shadow:4px 4px 0 var(--brown-dark);transition:transform .1s;overflow:hidden}.bundle-card:hover{box-shadow:5px 5px 0 var(--brown-dark);transform:translate(-1px,-1px)}.bundle-card.complete{border-color:var(--green-dark);background:#dff0c8}.bundle-card-header{background:var(--brown-mid);border-bottom:2px solid var(--brown-dark);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.bundle-card.complete .bundle-card-header{background:var(--green-dark)}.bundle-name{color:var(--parchment);text-shadow:1px 1px #000;font-size:9px;line-height:1.6}.bundle-check-count{color:var(--gold);white-space:nowrap;margin-left:8px;font-size:8px}.bundle-reward{color:var(--text-mid);background:#00000014;border-bottom:1px solid #0000001a;padding:4px 12px;font-size:8px}.bundle-reward span{color:var(--gold-dark)}.items-list{flex-direction:column;gap:6px;padding:10px 12px;display:flex}.item-row{cursor:pointer;-webkit-user-select:none;user-select:none;border:2px solid #0000;align-items:center;gap:8px;padding:4px 6px;transition:background .1s,border-color .1s;display:flex}.item-row:hover{border-color:var(--brown-light);background:#00000012}.item-row.checked{border-color:var(--green-mid);background:#4a7c2f26}.item-checkbox{border:3px solid var(--brown-mid);width:16px;height:16px;color:var(--green-dark);background:#fff;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;display:flex}.item-row.checked .item-checkbox{background:var(--green-light);border-color:var(--green-dark)}.item-sprite{width:32px;height:32px;image-rendering:pixelated;object-fit:contain;flex-shrink:0}.item-name{color:var(--text-dark);font-size:8px;line-height:1.6}.item-row.checked .item-name{color:var(--text-mid);opacity:.7;text-decoration:line-through}.bundle-complete-banner{text-align:center;background:var(--green-dark);color:var(--gold);text-shadow:1px 1px #000;letter-spacing:1px;padding:8px;font-size:8px}.reset-btn{background:var(--brown-dark);color:var(--parchment);border:3px solid var(--brown-light);cursor:pointer;margin:8px auto 32px;padding:8px 14px;font-family:"Press Start 2P",monospace;font-size:9px;transition:transform .1s;display:block;box-shadow:3px 3px #000}.reset-btn:hover{background:var(--red);border-color:#e74c3c;transform:translate(-1px,-1px);box-shadow:4px 4px #000}.reset-btn:active{transform:translate(1px,1px);box-shadow:1px 1px #000}.app-nav{background:var(--brown-dark);border-bottom:3px solid var(--brown-mid);flex-wrap:wrap;justify-content:center;gap:0;display:flex}.nav-tab{color:var(--parchment);border:none;border-right:2px solid var(--brown-mid);cursor:pointer;letter-spacing:1px;white-space:nowrap;background:0 0;border-bottom:3px solid #0000;margin-bottom:-3px;padding:10px 16px;font-family:"Press Start 2P",monospace;font-size:9px;transition:background .1s,color .1s}.nav-tab:hover{background:var(--brown-mid);color:var(--gold)}.nav-tab.active{color:var(--gold);background:#1a2f1a;border-bottom:3px solid #1a2f1a}.nav-tab:first-child{color:var(--gold)}.nav-tab:first-child.active{border-bottom-color:var(--gold);background:#2a1f00}@media (width<=600px){.app-nav{border-bottom:none}.nav-tab{text-align:center;border-bottom:2px solid var(--brown-mid);border-right:2px solid var(--brown-mid);letter-spacing:0;flex:calc(25% - 2px);margin-bottom:0;padding:10px 4px;font-size:8px}.nav-tab.active{color:var(--gold);border-bottom:2px solid var(--gold);background:#1a2f1a}}.fishing-guide{max-width:1100px;margin:0 auto;padding:20px 16px}.fish-search-bar{margin-bottom:16px}.fish-search-wrap{background:var(--parchment);border:3px solid var(--brown-mid);box-shadow:4px 4px 0 var(--brown-dark);align-items:center;margin-bottom:10px;display:flex}.fish-search-icon{flex-shrink:0;padding:0 10px;font-size:16px}.fish-search-input{color:var(--text-dark);background:0 0;border:none;outline:none;flex:1;padding:12px 8px;font-family:"Press Start 2P",monospace;font-size:11px}@media (width<=768px){.fish-search-input{font-size:16px}}.fish-search-input::placeholder{color:var(--text-mid);opacity:.6}.fish-search-clear{cursor:pointer;color:var(--brown-mid);background:0 0;border:none;padding:0 12px;font-family:"Press Start 2P",monospace;font-size:10px}.fish-search-clear:hover{color:var(--red)}.fish-type-filters{flex-wrap:wrap;gap:6px;display:flex}.fish-type-pill{background:var(--brown-dark);color:var(--parchment);border:2px solid var(--brown-mid);cursor:pointer;padding:5px 10px;font-family:"Press Start 2P",monospace;font-size:8px;transition:background .1s}.fish-type-pill:hover{background:var(--brown-mid)}.fish-type-pill.active{background:var(--green-dark);color:var(--gold);border-color:var(--green-light)}.fish-layout{grid-template-columns:280px 1fr;align-items:start;gap:16px;display:grid}@media (width<=700px){.fish-layout{grid-template-columns:1fr}.fish-detail-panel{display:none}}@media (width>=768px){.detail-modal-overlay{display:none}.app-header h1{font-size:22px}.app-header .subtitle{font-size:11px}.nav-tab{padding:14px 16px;font-size:12px}.fish-result-name,.fish-result-price,.fish-result-type{font-size:11px}.fish-result-row{padding:10px 12px}.fish-card-name{font-size:14px}.fish-card-type,.fish-stat-label,.fish-stat-value{font-size:11px}.fish-price-tag{font-size:10px}.fish-price-val{font-size:12px}.fish-tag,.fish-note,.fish-detail-empty-text,.fish-type-pill{font-size:11px}.fish-search-input{font-size:16px}.villager-card-name{font-size:14px}.villager-card-address,.villager-marriageable-badge,.villager-desc,.villager-birthday-label,.villager-birthday-badge,.villager-gift-tier-label,.villager-gift-tag{font-size:11px}.recipe-card-name{font-size:13px}.recipe-source-pill{font-size:10px}.recipe-ingredients-label,.recipe-ingredient-tag,.recipe-sell-price{font-size:11px}.recipe-learn-btn{font-size:10px}.home-section-label{font-size:11px}.home-section-desc{font-size:10px}.home-hero-title{font-size:28px}.home-hero-sub{font-size:13px}.home-hero-tagline{font-size:12px}}.fish-results-list{background:var(--parchment);border:3px solid var(--brown-mid);box-shadow:4px 4px 0 var(--brown-dark);max-height:70vh;overflow-y:auto}.fish-result-row{cursor:pointer;border-bottom:1px solid var(--parchment-dark);align-items:center;gap:8px;padding:6px 10px;transition:background .1s;display:flex}.fish-result-row:hover{background:var(--parchment-dark)}.fish-result-row.selected{border-left:3px solid var(--green-mid);background:#4a7c2f26}.fish-result-sprite{width:28px;height:28px;image-rendering:pixelated;object-fit:contain;flex-shrink:0}.fish-result-name{color:var(--text-dark);flex:1;font-size:8px}.fish-result-price{color:var(--gold-dark);font-size:8px}.fish-result-type{color:var(--text-mid);margin-left:4px;font-size:7px}.fish-no-results{text-align:center;color:var(--text-mid);padding:20px;font-size:9px}.fish-detail-panel{position:sticky;top:16px}.detail-modal-overlay{z-index:1000;padding:12px;padding-top:max(12px, env(safe-area-inset-top));-webkit-overflow-scrolling:touch;background:#000000b8;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0;overflow-y:auto}.detail-modal{background:var(--parchment,#f5e6c8);border:2px solid var(--gold,#c8a000);-webkit-overflow-scrolling:touch;border-radius:10px;width:100%;max-width:520px;max-height:calc(100dvh - 24px);position:relative;overflow-y:auto}.detail-modal-close{z-index:10;color:#fff;cursor:pointer;background:#0000008c;border:none;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-family:inherit;font-size:14px;line-height:1;display:flex;position:absolute;top:8px;right:8px}.fish-detail-empty{background:var(--parchment);border:3px dashed var(--brown-mid);opacity:.6;flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.fish-detail-empty-icon{margin-bottom:16px;font-size:40px}.fish-detail-empty-text{color:var(--text-mid);text-align:center;font-size:9px;line-height:2}.fish-card{background:var(--parchment);border:3px solid var(--brown-mid);box-shadow:5px 5px 0 var(--brown-dark)}.fish-card-header{background:var(--brown-mid);border-bottom:3px solid var(--brown-dark);align-items:center;gap:12px;padding:12px 16px;display:flex}.fish-card-sprite{width:56px;height:56px;image-rendering:pixelated;object-fit:contain;filter:drop-shadow(2px 2px #00000080);flex-shrink:0}.fish-card-title-block{flex:1}.fish-card-name{color:var(--gold);text-shadow:1px 1px #000;margin:0 0 4px;font-size:12px;line-height:1.4}.fish-card-type{color:var(--parchment);opacity:.8;font-size:8px}.fish-card-diff{text-align:center;white-space:nowrap;padding:4px 8px;font-size:8px}.fish-card-body{flex-direction:column;gap:12px;padding:14px 16px;display:flex}.fish-stat-section{flex-direction:column;gap:5px;display:flex}.fish-stat-label{color:var(--text-mid);text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid var(--parchment-dark);padding-bottom:2px;font-size:8px}.fish-price-row{gap:8px;display:flex}.fish-price-cell{background:var(--parchment-dark);border:2px solid var(--brown-light);text-align:center;flex:1;padding:6px 8px}.fish-price-tag{color:var(--text-mid);margin-bottom:3px;font-size:7px}.fish-price-val{color:var(--text-dark);font-size:10px}.fish-stats-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.fish-stat-block{background:var(--parchment-dark);border:2px solid var(--brown-light);flex-direction:column;gap:4px;padding:6px 8px;display:flex}.fish-stat-value{color:var(--text-dark);font-size:9px;line-height:1.5}.fish-stat-badges,.fish-tag-list{flex-wrap:wrap;gap:4px;display:flex}.fish-tag{padding:3px 7px;font-size:8px;line-height:1.5}.fish-tag-loc{color:#1a5c00;background:#e8f4d8;border:1px solid #4a7c2f}.fish-tag-bundle{color:#7a4800;background:#fff0c0;border:1px solid #c8900a}.fish-tag-cook{color:#5c1800;background:#fde8d0;border:1px solid #c05020}.fish-tag-quest{color:#3c0080;background:#ecdcf8;border:1px solid #8040c0}.fish-note{color:#5c1800;background:#fde8d0;border:2px solid #c05020;padding:6px 10px;font-size:8px;line-height:2}.villager-guide{max-width:1100px;margin:0 auto;padding:16px}.villager-result-portrait{width:40px;height:40px;image-rendering:pixelated;object-fit:contain;flex-shrink:0}.villager-list-heart{margin-left:auto;padding-right:4px;font-size:12px}.villager-card{background:var(--parchment);border:3px solid var(--brown-mid);box-shadow:4px 4px 0 var(--brown-dark);image-rendering:pixelated}.villager-card-header{background:var(--brown-mid);border-bottom:3px solid var(--brown-dark);align-items:center;gap:12px;padding:12px;display:flex}.villager-card-portrait{width:72px;height:72px;image-rendering:pixelated;object-fit:contain;border:2px solid var(--brown-dark);background:var(--brown-dark);flex-shrink:0}.villager-card-title-block{flex-direction:column;gap:6px;display:flex}.villager-card-name{color:var(--parchment);text-shadow:2px 2px 0 var(--brown-dark);font-size:12px}.villager-card-address{color:var(--parchment-dark);font-size:8px}.villager-marriageable-badge{color:#800040;background:#ffe0f0;border:2px solid #e0407a;padding:2px 6px;font-size:8px;display:inline-block}.villager-card-body{flex-direction:column;gap:10px;padding:12px;display:flex}.villager-desc{color:var(--text-mid);border-left:3px solid var(--brown-light);padding-left:8px;font-size:8px;line-height:2}.villager-birthday-row{align-items:center;gap:10px;display:flex}.villager-birthday-label{color:var(--text-dark);flex-shrink:0;font-size:9px}.villager-birthday-badge{padding:3px 8px;font-family:inherit;font-size:9px}.villager-gifts-section{flex-direction:column;gap:8px;display:flex}.villager-gift-tier{flex-direction:column;gap:4px;display:flex}.villager-gift-tier-label{width:fit-content;padding:3px 8px;font-family:inherit;font-size:9px;display:inline-block}.villager-gift-list{flex-wrap:wrap;gap:4px;display:flex}.villager-gift-tag{padding:2px 6px;font-family:inherit;font-size:8px;line-height:1.6}.museum-checklist{flex-direction:column;gap:10px;max-width:1000px;margin:0 auto;padding:16px;display:flex}.museum-overall-progress{margin-bottom:0}.museum-search-bar{margin:0}.museum-sub-progress{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.museum-sub-pill{border:2px solid;padding:4px 10px;font-family:inherit;font-size:9px}.museum-complete-banner{color:var(--gold);text-shadow:1px 1px 0 var(--brown-dark);background:var(--brown-dark);border:2px solid var(--gold);padding:4px 10px;font-size:10px}.museum-sections{flex-direction:column;gap:8px;display:flex}.museum-section{border:3px solid var(--brown-mid);box-shadow:4px 4px 0 var(--brown-dark)}.museum-section-header{cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:2px solid;align-items:center;gap:8px;padding:8px 12px;display:flex}.museum-section-header:hover{filter:brightness(1.1)}.museum-section-title{color:var(--parchment);flex:1;font-size:10px}.museum-section-count{color:var(--parchment-dark);font-size:9px}.museum-items-grid{background:var(--parchment-dark);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:2px;padding:6px;display:grid}.museum-item{background:var(--parchment);cursor:pointer;border:1px solid #0000;align-items:center;gap:8px;padding:6px 8px;display:flex}.museum-item:hover{border-color:var(--brown-mid);background:#fffdf0}.museum-item.donated{opacity:.7;background:#e8f5e0}.museum-item.donated:hover{opacity:.9}.museum-item-checkbox{border:2px solid var(--brown-mid);width:18px;height:18px;color:var(--green-dark);background:#fff;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;display:flex}.museum-item.donated .museum-item-checkbox{background:var(--green-mid);border-color:var(--green-dark);color:#fff}.museum-item-sprite{width:32px;height:32px;image-rendering:pixelated;object-fit:contain;flex-shrink:0}.museum-item-info{flex-direction:column;gap:3px;min-width:0;display:flex}.museum-item-name{color:var(--text-dark);white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.museum-item-source{color:var(--text-mid);white-space:nowrap;text-overflow:ellipsis;font-size:7px;overflow:hidden}.crop-planner{flex-direction:column;gap:12px;max-width:1000px;margin:0 auto;padding:16px;display:flex}.crop-controls{background:var(--parchment);box-shadow:4px 4px 0 var(--brown-dark);border:3px solid;flex-direction:column;gap:10px;padding:12px;display:flex}.crop-season-tabs{gap:6px;display:flex}.crop-season-tab{background:var(--parchment-dark);border:2px solid var(--brown-mid);color:var(--text-dark);cursor:pointer;padding:6px 14px;font-family:inherit;font-size:9px}.crop-season-tab.active{color:var(--parchment);box-shadow:2px 2px 0 var(--brown-dark)}.crop-control-row{flex-wrap:wrap;align-items:flex-start;gap:16px;display:flex}.crop-control-label{color:var(--text-mid);margin-bottom:6px;font-size:9px;display:block}.crop-day-picker{flex:1;min-width:200px}.crop-day-input-wrap{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.crop-day-slider{cursor:pointer;flex:1;min-width:120px;height:6px}.crop-day-badge{white-space:nowrap;border:2px solid;padding:4px 10px;font-family:inherit;font-size:10px}.crop-days-left{color:var(--text-mid);white-space:nowrap;font-size:8px}.crop-sort-picker{flex:1;min-width:200px}.crop-sort-pills{flex-wrap:wrap;gap:4px;display:flex}.crop-results{flex-direction:column;gap:8px;display:flex}.crop-summary{border:2px solid;padding:8px 12px}.crop-list{flex-direction:column;gap:6px;display:flex}.crop-row{background:var(--parchment);border:2px solid var(--brown-mid);box-shadow:3px 3px 0 var(--brown-dark);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;display:flex}.crop-row-dim{opacity:.45}.crop-row-identity{flex:1;align-items:center;gap:8px;min-width:180px;display:flex}.crop-row-sprite{width:40px;height:40px;image-rendering:pixelated;object-fit:contain;flex-shrink:0}.crop-row-name-block{flex-direction:column;gap:3px;display:flex}.crop-row-name{color:var(--text-dark);font-size:10px}.crop-row-seed{color:var(--text-mid);font-size:7px}.crop-tag{padding:1px 5px;font-family:inherit;font-size:7px;display:inline-block}.crop-tag-trellis{color:#003858;background:#d8f0f8;border:1px solid #3080a0}.crop-tag-multi{color:#3c0080;background:#ecdcf8;border:1px solid #8040c0}.crop-stat-cell{flex-direction:column;align-items:center;gap:2px;min-width:64px;display:flex}.crop-stat-label{color:var(--text-mid);text-align:center;font-size:7px}.crop-stat-val{color:var(--text-dark);font-size:9px}.crop-cost{color:#c03030}.crop-revenue{color:#2d7a00}.crop-profit-pos{color:#1a7a00}.crop-profit-neg{color:#c03030}.crop-cant-plant{color:#909090;flex:1;font-size:8px;font-style:italic}.crop-note{color:#5c2000;background:#fde8d0;border:1px solid #c05020;width:100%;margin-top:2px;padding:4px 8px;font-size:7px;line-height:2}.crop-unplantable-section{flex-direction:column;gap:6px;display:flex}.crop-unplantable-toggle{background:var(--parchment-dark);border:2px solid var(--brown-mid);color:var(--text-mid);cursor:pointer;text-align:left;padding:6px 12px;font-family:inherit;font-size:9px}.crop-unplantable-toggle:hover{background:var(--parchment)}.birthday-calendar{max-width:1100px;margin:0 auto;padding:16px}.birthday-seasons-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (width<=540px){.birthday-seasons-grid{grid-template-columns:1fr}}.birthday-season-card{box-shadow:4px 4px 0 var(--brown-dark);border:3px solid;overflow:hidden}.birthday-season-header{border-bottom:3px solid;align-items:center;gap:6px;padding:8px 10px;display:flex}.birthday-season-icon{font-size:14px}.birthday-season-title{flex:1;font-size:10px}.birthday-season-count{opacity:.8;font-size:8px}.birthday-entries{flex-direction:column;gap:2px;padding:6px;display:flex}.birthday-entry{background:#ffffff80;border:1px solid #00000014;align-items:center;gap:8px;padding:5px 6px;display:flex}.birthday-entry:hover{background:#fffc}.birthday-day-badge{border:2px solid;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-family:inherit;font-size:10px;display:flex}.birthday-portrait{width:36px;height:36px;image-rendering:pixelated;object-fit:contain;flex-shrink:0}.birthday-info{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.birthday-name-btn{color:var(--brown-mid);cursor:pointer;text-align:left;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;padding:0;font-family:inherit;font-size:9px;overflow:hidden}.birthday-name-btn:hover{color:var(--brown-dark);text-decoration:underline}.birthday-loved-gifts{flex-wrap:wrap;gap:2px;margin-top:2px;display:flex}.birthday-gift-tag{color:#800040;white-space:nowrap;background:#ffe0f0;border:1px solid #e0407a;padding:1px 4px;font-family:inherit;font-size:7px}.birthday-gift-more{background:var(--parchment-dark);color:var(--text-mid);border-color:var(--brown-mid)}.birthday-heart{flex-shrink:0;font-size:12px}.home-screen{flex-direction:column;gap:24px;max-width:700px;margin:0 auto;padding:24px 16px 32px;display:flex}.home-hero{text-align:center;background:var(--brown-dark);border:3px solid var(--gold-dark);border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:28px 16px 24px;display:flex}.home-logo-star{color:var(--gold);text-shadow:0 0 20px #f0c04099, 2px 2px 0 var(--gold-dark);margin-bottom:4px;font-size:48px;line-height:1}.home-hero-title{color:var(--gold);text-shadow:2px 2px 0 var(--brown-dark);letter-spacing:1px;margin:0;font-family:"Press Start 2P",monospace;font-size:16px}.home-hero-sub{color:var(--parchment);letter-spacing:2px;margin:0;font-family:"Press Start 2P",monospace;font-size:10px}.home-hero-tagline{color:var(--gold-dark);letter-spacing:1px;margin:4px 0 0;font-family:"Press Start 2P",monospace;font-size:8px}.home-sections-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (width>=500px){.home-sections-grid{grid-template-columns:repeat(3,1fr)}}.home-section-card{cursor:pointer;text-align:left;appearance:none;border:2px solid;border-radius:8px;flex-direction:column;margin:0;padding:0;font-family:inherit;transition:transform .1s,filter .1s;display:flex;overflow:hidden}.home-section-card:hover,.home-section-card:active{filter:brightness(1.05);transform:scale(1.03)}.home-section-card-header{border-bottom:2px solid;border-radius:6px 6px 0 0;align-items:center;gap:8px;padding:8px 10px;display:flex}.home-section-emoji{flex-shrink:0;font-size:18px;line-height:1}.home-section-label{letter-spacing:.5px;font-family:"Press Start 2P",monospace;font-size:9px}.home-section-desc{margin:0;padding:8px 10px;font-family:"Press Start 2P",monospace;font-size:7px;line-height:1.7}.home-footer{text-align:center;color:var(--gold-dark);letter-spacing:2px;opacity:.7;font-family:"Press Start 2P",monospace;font-size:8px}.recipe-tracker{flex-direction:column;gap:12px;max-width:1100px;margin:0 auto;padding:16px;display:flex}.recipe-source-pill{white-space:nowrap;border-radius:4px;flex-shrink:0;padding:3px 6px;font-family:"Press Start 2P",monospace;font-size:7px}.recipe-list-icon{width:24px;height:24px;image-rendering:pixelated;flex-shrink:0}.recipe-list-check{color:#2e7d32;flex-shrink:0;margin-left:auto;font-size:12px;font-weight:700}.fish-result-row.recipe-row-learned{opacity:.6}.recipe-card{background:var(--parchment);border:2px solid var(--brown-mid);border-radius:8px;overflow:hidden}.recipe-card.recipe-learned{border-color:#4caf50}.recipe-card-header{background:var(--parchment-dark);border-bottom:2px solid;align-items:center;gap:10px;padding:12px;display:flex}.recipe-card-icon{width:40px;height:40px;image-rendering:pixelated;flex-shrink:0}.recipe-card-title-block{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.recipe-card-name{color:var(--brown-dark);margin:0;font-family:"Press Start 2P",monospace;font-size:10px}.recipe-learn-btn{border:2px solid var(--brown-mid);background:var(--parchment);color:var(--brown-dark);cursor:pointer;white-space:nowrap;border-radius:4px;flex-shrink:0;padding:6px 10px;font-family:"Press Start 2P",monospace;font-size:8px;transition:background .1s}.recipe-learn-btn:hover{background:var(--brown-mid);color:var(--parchment)}.recipe-learn-btn.learned{color:#2e7d32;background:#e8f5e9;border-color:#4caf50}.recipe-card-body{flex-direction:column;gap:10px;padding:12px;display:flex}.recipe-ingredients-label{color:var(--text-mid);text-transform:uppercase;font-family:"Press Start 2P",monospace;font-size:8px}.recipe-ingredients-list{flex-wrap:wrap;gap:6px;display:flex}.recipe-ingredient-tag{color:#7a4800;background:#fff8e1;border:1px solid #c8900a;border-radius:4px;align-items:center;gap:3px;padding:4px 7px;font-family:"Press Start 2P",monospace;font-size:8px;display:flex}.recipe-ingredient-qty{color:#c8900a;font-weight:700}.recipe-sell-price{color:var(--text-mid);font-family:"Press Start 2P",monospace;font-size:8px}.recipe-sell-price span{color:var(--gold)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--brown-dark)}::-webkit-scrollbar-thumb{background:var(--brown-mid);border:2px solid var(--brown-dark)}::-webkit-scrollbar-thumb:hover{background:var(--brown-light)}.appstore-banner{border-bottom:2px solid var(--gold-dark);background:#1a1a2e;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.appstore-banner-left{align-items:center;gap:10px;min-width:0;display:flex}.appstore-banner-star{color:var(--gold);flex-shrink:0;font-size:22px}.appstore-banner-text{flex-direction:column;gap:2px;min-width:0;display:flex}.appstore-banner-title{color:var(--gold);white-space:nowrap;font-family:"Press Start 2P",monospace;font-size:10px}.appstore-banner-sub{color:#aab4be;white-space:nowrap;text-overflow:ellipsis;font-family:"Press Start 2P",monospace;font-size:7px;overflow:hidden}.appstore-banner-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.appstore-badge-btn{flex-shrink:0;display:block}.appstore-badge-svg{width:110px;height:37px;display:block}.appstore-banner-dismiss{color:#aab4be;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:4px;font-size:14px;line-height:1}.appstore-banner-dismiss:hover{color:#fff}@media (width<=480px){.appstore-banner-sub{display:none}.appstore-badge-svg{width:90px;height:30px}}
