/* farm.css — 虛擬里山農場（2026-08-08 從內嵌抽離 + 主題化）
   色票來自 theme.css；頁面品牌色保留：--orange（亮橘） */
:root{--orange:#ff6b35;--line:var(--border);--del-bg:#3a2440;--del-fg:#fff}
:root[data-theme="light"]{--del-bg:rgba(214,69,69,.14);--del-fg:#b23b3b}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(circle at 75% -10%,var(--bg-glow) 0,transparent 36%),var(--bg);color:var(--text);font:15px/1.6 system-ui,-apple-system,"Noto Sans TC",sans-serif;min-height:100vh}
button,input,textarea,select{font:inherit}
button{cursor:pointer;border:0}
.wrap{max-width:1180px;margin:auto;padding:25px 20px 90px}
.top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:21px}
.brand{display:flex;align-items:center;gap:12px}
.brand h1{font-size:28px;margin:0}
.brand small{color:var(--muted);display:block}
.score{background:linear-gradient(135deg,#332c18,#1d1b17);border:1px solid #6f5a1b;color:var(--gold);padding:9px 16px;border-radius:14px;font-weight:700;white-space:nowrap}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}
.tab{background:var(--panel);color:var(--muted);border:1px solid var(--border);padding:10px 16px;border-radius:10px}
.tab.active,.tab:hover{background:var(--gold);color:#201b09;border-color:var(--gold);font-weight:700}
.view{display:none}
.view.active{display:block}
.hero,.section,.crop-card,.note,.member,.plot{background:var(--card-bg);border:1px solid var(--border);border-radius:16px}
.hero{padding:20px 22px;margin-bottom:17px}
.hero h2,.section h2{margin:0 0 6px;font-size:20px}
.muted{color:var(--muted)}
.season{color:var(--gold)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.section{padding:18px;margin-top:18px}
.plots{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.plot{min-height:210px;padding:17px;position:relative;display:flex;flex-direction:column;justify-content:space-between}
.plot.empty{border-style:dashed;text-align:center;justify-content:center;align-items:center;color:var(--muted)}
.plot h3{margin:0;font-size:18px}
.plot .cropbig{font-size:47px;text-align:center;padding:8px}
.status{display:inline-block;border-radius:999px;padding:2px 9px;font-size:12px;background:#25365a;color:var(--blue)}
.status.ready{background:#3d381b;color:var(--gold)}
.status.harvested{background:#203b2b;color:var(--green)}
/* 亮色主題：狀態徽章改淺底深字 */
:root[data-theme="light"] .status{background:rgba(59,111,224,.14);color:#2a56b8}
:root[data-theme="light"] .status.ready{background:rgba(201,162,39,.16);color:#8a6d10}
:root[data-theme="light"] .status.harvested{background:rgba(47,143,91,.14);color:#1e6b3f}
.progress{height:7px;background:var(--border-strong);border-radius:10px;overflow:hidden;margin:9px 0}
.progress i{height:100%;display:block;background:linear-gradient(90deg,var(--orange),var(--gold));border-radius:inherit}
.btn{background:var(--orange);color:white;padding:8px 13px;border-radius:9px;font-weight:700}
.btn.secondary{background:var(--panel2);color:var(--text)}
.btn.gold{background:var(--gold);color:#241d08}
.btn:disabled{opacity:.42;cursor:not-allowed}
.formrow{display:flex;gap:9px;flex-wrap:wrap}
.input,.textarea,.select{background:var(--input-bg);color:var(--text);border:1px solid var(--border);border-radius:9px;padding:9px 11px;outline:none}
.input:focus,.textarea:focus{border-color:var(--gold)}
.input{min-width:180px}
.textarea{width:100%;min-height:100px;resize:vertical}
.crop-card{padding:17px;cursor:pointer;transition:.2s}
.crop-card:hover{transform:translateY(-3px);border-color:var(--gold)}
.crop-top{display:flex;justify-content:space-between;align-items:flex-start}
.emoji{font-size:42px}
.rarity{font-size:12px;color:var(--gold);font-weight:bold}
.crop-card h3{margin:5px 0 0}
.tags{display:flex;gap:6px;flex-wrap:wrap;margin:7px 0}
.tag{background:var(--panel2);border-radius:99px;padding:2px 8px;font-size:12px;color:var(--text-2)}
.locked{opacity:.65}
.imported{color:var(--green);font-size:12px}
.note{padding:15px;margin-top:12px}
.note h3{margin:0;color:var(--gold)}
.note-meta{font-size:12px;color:var(--muted);margin:4px 0 7px}
.two{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}
.member{padding:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:9px}
.member strong{display:block}
.member small{color:var(--muted)}
.advice{border-left:3px solid var(--gold);padding:9px 12px;background:var(--panel);border-radius:5px;margin-top:10px}
.linkrow{display:flex;gap:18px;flex-wrap:wrap;margin-top:12px}
.linkrow a{color:var(--blue);text-decoration:none}
.linkrow a:hover{text-decoration:underline}
.bottom{position:fixed;bottom:0;left:0;right:0;background:var(--top-bg);backdrop-filter:blur(10px);border-top:1px solid var(--border);padding:9px 20px;display:flex;justify-content:center;gap:26px;color:var(--muted);z-index:3}
.bottom a{color:var(--blue);text-decoration:none}
.modal{position:fixed;inset:0;background:var(--overlay);display:none;place-items:center;padding:20px;z-index:5}
.modal.open{display:grid}
.modalbox{background:var(--panel);border:1px solid var(--border);border-radius:17px;max-width:540px;width:100%;padding:22px;box-shadow:0 20px 70px #0008}
.modalhead{display:flex;justify-content:space-between;align-items:center}
.close{background:none;color:var(--muted);font-size:24px}
.toast{position:fixed;right:20px;top:20px;background:var(--panel2);border:1px solid var(--blue);padding:10px 15px;border-radius:10px;z-index:8;display:none}
.toast.show{display:block}
.emptytext{text-align:center;padding:18px;color:var(--muted)}
@media(max-width:760px){.wrap{padding:17px 12px 100px}.top{align-items:flex-start}.brand h1{font-size:23px}.score{font-size:13px;padding:7px 10px}.grid,.plots{grid-template-columns:1fr 1fr}.two{grid-template-columns:1fr}.bottom{font-size:12px;gap:10px;padding:8px 8px}.plot{min-height:190px}}
@media(max-width:480px){.grid,.plots{grid-template-columns:1fr}.tabs{display:grid;grid-template-columns:1fr 1fr}.tab{padding:9px 5px}.member{align-items:flex-start;flex-direction:column}.member .btn{width:100%}}
