:root{--color-bg:#2a231c;--color-bg-panel:#382e23;--color-bg-panel-alt:#46392a;--color-border:#715a3a;--color-accent:#d99a4e;--color-accent-strong:#a8712f;--color-text:#f8efe0;--color-text-muted:#cdb694;--color-danger:#c15f45;--color-danger-strong:#8a3c29;--color-info:#e2c589;--color-select:#85a35a;--color-select-strong:#5f7a3c}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{background:var(--color-bg);color:var(--color-text);font-family:Segoe UI,sans-serif}.hidden{display:none!important}button{font-family:inherit}#login-screen{flex-direction:column;align-items:center;min-height:100vh;font-family:Charter,Iowan Old Style,Palatino Linotype,Georgia,serif;display:flex;position:relative;overflow-x:hidden}.login-glow{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.login-glow:before,.login-glow:after,.login-glow span{content:"";filter:blur(60px);opacity:.28;border-radius:50%;animation:14s ease-in-out infinite login-glow-drift;position:absolute}.login-glow:before{background:var(--color-accent);width:32vw;height:32vw;animation-delay:0s;top:18vh;left:8vw}.login-glow:after{background:var(--color-select);width:26vw;height:26vw;animation-delay:-5s;top:8vh;right:6vw}.login-glow span{background:var(--color-info);width:22vw;height:22vw;animation-delay:-9s;bottom:-6vh;left:40vw}@keyframes login-glow-drift{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-3vh)scale(1.08)}}@media (prefers-reduced-motion:reduce){.login-glow:before,.login-glow:after,.login-glow span{animation:none}}.login-page{z-index:1;text-align:center;flex-direction:column;flex:1;align-items:center;width:100%;max-width:32rem;padding:clamp(2rem,6vw,4.5rem) 1.5rem 0;display:flex;position:relative}.login-sprout{width:2.75rem;height:2.75rem;color:var(--color-select);margin-bottom:.75rem}.login-wordmark{text-transform:uppercase;letter-spacing:.06em;color:var(--color-accent);margin:0;font-family:Futura,Century Gothic,Avenir Next,Trebuchet MS,sans-serif;font-size:clamp(2.1rem,6vw,3.2rem);font-weight:700;line-height:1.05}.login-subhead{color:var(--color-text-muted);margin:.6rem 0 0;font-size:clamp(.95rem,2vw,1.1rem);font-style:italic}.login-card{background:var(--color-bg-panel);border:1.5px solid var(--color-border);width:320px;max-width:100%;margin-top:clamp(2rem,5vw,3rem);padding:1.4rem 1.6rem}#login-form{flex-direction:column;gap:.6rem;display:flex}#login-form input{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);padding:.5rem;font-family:inherit;font-size:1rem}#login-form button{text-transform:uppercase;letter-spacing:.03em;background:var(--color-accent);color:var(--color-bg);border:1px solid var(--color-accent-strong);cursor:pointer;padding:.5rem;font-family:Futura,Century Gothic,Avenir Next,Trebuchet MS,sans-serif;font-size:.95rem;font-weight:600}#login-form button:hover{background:var(--color-info)}.login-actions{gap:.5rem;display:flex}.login-actions button{flex:1}#login-error{color:var(--color-danger);min-height:1.2em;font-family:Segoe UI,sans-serif;font-size:.85rem}.login-fence{background:linear-gradient(180deg, transparent, var(--color-bg-panel) 78%);align-items:flex-end;width:100%;height:clamp(2.2rem,5vw,3.2rem);margin-top:clamp(3rem,8vw,5rem);display:flex}.login-picket{background:var(--color-bg-panel-alt);clip-path:polygon(0 30%,50% 0,100% 30%,100% 100%,0 100%);border-right:2px solid var(--color-bg);flex:1 0 clamp(1.1rem,2.4vw,1.8rem);height:78%}.login-credit{background:var(--color-bg-panel);text-align:center;letter-spacing:.1em;text-transform:uppercase;width:100%;color:var(--color-text-muted);padding:.9rem 1rem 1.3rem;font-family:Futura,Century Gothic,Avenir Next,Trebuchet MS,sans-serif;font-size:.66rem}#game-screen{flex-direction:column;height:100vh;display:flex}#top-bar{background:var(--color-bg-panel);border-bottom:2px solid var(--color-border);color:var(--color-info);flex:none;padding:.6rem 1rem;font-weight:600}#game-body{flex:1;min-height:0;display:flex}#left-panel{background:var(--color-bg-panel);border-right:2px solid var(--color-border);flex-direction:column;flex:0 0 280px;gap:.4rem;padding:.75rem;display:flex;overflow-y:auto}.nav-button{background:var(--color-bg-panel-alt);color:var(--color-text);border:1px solid var(--color-border);text-align:left;cursor:pointer;padding:.6rem .75rem;font-size:.95rem}.nav-button:hover{border-color:var(--color-accent);color:var(--color-info)}.nav-button.active{background:var(--color-accent);color:var(--color-bg);border-color:var(--color-accent-strong);font-weight:600}.nav-home{border-color:var(--color-accent-strong);font-weight:700}.nav-sub-button{border-left:2px solid var(--color-border);margin-left:1rem;padding-left:.6rem;font-size:.88rem}.nav-spacer{flex:1}.nav-logout{border-color:var(--color-danger);color:var(--color-danger)}.nav-logout:hover{background:var(--color-danger);color:var(--color-text)}#content-area{flex-direction:column;flex:1;min-width:0;display:flex}#garden-view,#settings-view{flex-direction:column;flex:1;min-height:0;display:flex}#scene-container{flex:1;min-height:0;overflow:hidden}#content-panel{background:var(--color-bg-panel);border-top:2px solid var(--color-border);flex:none;max-height:38vh;padding:.75rem 1.25rem;overflow-y:auto}.content-tab h3{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin:.4rem 0 .3rem;font-size:.85rem}.content-tab ul{margin:0 0 .5rem;padding-left:0;list-style:none}.content-tab li{border-bottom:1px solid var(--color-border);align-items:center;gap:.5rem;padding:.3rem .2rem;display:flex}.content-tab li span{flex:1}.content-tab li input[type=number]{background:var(--color-bg);width:3.5rem;color:var(--color-text);border:1px solid var(--color-border);padding:.15rem .3rem}.content-tab button,#planting-controls button,select{background:var(--color-accent);color:var(--color-bg);border:1px solid var(--color-accent-strong);cursor:pointer;padding:.3rem .6rem;font-size:.8rem}.content-tab button:hover,#planting-controls button:hover{background:var(--color-info)}.content-tab button:disabled,#planting-controls button:disabled{opacity:.4;cursor:not-allowed;background:var(--color-bg-panel-alt);color:var(--color-text-muted)}select{background:var(--color-bg);color:var(--color-text)}#planting-controls{border-bottom:1px solid var(--color-border);align-items:center;gap:.5rem;margin-bottom:.5rem;padding-bottom:.5rem;display:flex}#merchant-tabs{gap:.3rem;margin-bottom:.6rem;display:flex}.merchant-tab-button{background:var(--color-bg-panel-alt);color:var(--color-text);border:2px solid var(--color-border);cursor:pointer;padding:.35rem .9rem}.merchant-tab-button:hover{border-color:var(--color-accent)}.merchant-tab-button.active{background:var(--color-select);color:var(--color-bg);border-color:var(--color-select-strong);box-shadow:0 3px 0 var(--color-select-strong);font-weight:600}#merchant-tab-size{padding-top:.3rem}#quest-panel p{white-space:pre-line;margin:0 0 .5rem;font-size:.85rem}#quest-panel button{width:100%}#settings-view{background:var(--color-bg);align-items:center;padding:1.5rem 2rem;overflow-y:auto}#settings-view h2{color:var(--color-accent);margin-top:0}.settings-form{background:var(--color-bg-panel);border:1px solid var(--color-border);flex-direction:column;gap:.5rem;width:420px;max-width:100%;margin-bottom:1.25rem;padding:.9rem 1rem;display:flex}.settings-form h3{color:var(--color-info);margin:0 0 .2rem;font-size:.95rem}.settings-form input[type=text],.settings-form input[type=password]{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);padding:.4rem}.settings-form button{background:var(--color-accent);color:var(--color-bg);border:1px solid var(--color-accent-strong);cursor:pointer;align-self:flex-start;padding:.4rem .9rem;font-weight:600}.settings-form button:hover{background:var(--color-info)}.settings-toggle-label{align-items:center;gap:.5rem;font-size:.85rem;display:flex}.settings-danger{border-color:var(--color-danger)}.settings-danger p{color:var(--color-text-muted);margin:0;font-size:.8rem}.danger-button{background:var(--color-danger)!important;border-color:var(--color-danger-strong)!important}.danger-button:hover{background:var(--color-danger-strong)!important}#settings-version-info{color:var(--color-text-muted);margin:0;font-size:.85rem}#feedback-view,#roadmap-view{background:var(--color-bg);flex-direction:column;flex:1;align-items:center;min-height:0;padding:1.5rem 2rem;display:flex;overflow-y:auto}#feedback-view h2,#roadmap-view h2{color:var(--color-accent);margin-top:0}.feedback-form{background:var(--color-bg-panel);border:1px solid var(--color-border);flex-direction:column;gap:.5rem;width:760px;max-width:100%;margin-top:auto;margin-bottom:1.25rem;padding:.9rem 1rem;display:flex}.feedback-form h3{color:var(--color-info);margin:0 0 .2rem;font-size:.95rem}.feedback-form input,.feedback-form select,.feedback-form textarea,.feedback-edit-form input,.feedback-edit-form select,.feedback-edit-form textarea{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);resize:vertical;padding:.4rem;font-family:inherit}.feedback-form button{background:var(--color-accent);color:var(--color-bg);border:1px solid var(--color-accent-strong);cursor:pointer;align-self:flex-start;padding:.4rem .9rem;font-weight:600}.feedback-form button:hover{background:var(--color-info)}#feedback-post-list{flex-direction:column;gap:1rem;width:760px;max-width:100%;margin-bottom:1.25rem;display:flex}.feedback-post{background:var(--color-bg-panel);border:1px solid var(--color-border);padding:.9rem 1rem}.feedback-post h3{margin:.2rem 0 .4rem}.feedback-post-header{align-items:center;gap:.6rem;margin-bottom:.3rem;display:flex}.feedback-category{border:1px solid var(--color-border);text-transform:uppercase;letter-spacing:.03em;padding:.1rem .5rem;font-size:.75rem}.feedback-category-bug{background:var(--color-danger);color:var(--color-text);border-color:var(--color-danger-strong)}.feedback-category-feedback{background:var(--color-select);color:var(--color-bg);border-color:var(--color-select-strong)}.feedback-meta{color:var(--color-text-muted);font-size:.78rem}.feedback-text{white-space:pre-line;margin:0 0 .5rem}.feedback-actions{gap:.4rem;margin-bottom:.3rem;display:flex}.feedback-actions button,.feedback-comment button{background:var(--color-bg-panel-alt);color:var(--color-text);border:1px solid var(--color-border);cursor:pointer;padding:.2rem .55rem;font-size:.78rem}.feedback-actions button:hover,.feedback-comment button:hover{border-color:var(--color-accent)}.feedback-comment-list{border-top:1px solid var(--color-border);flex-direction:column;gap:.4rem;margin-top:.5rem;padding-top:.5rem;display:flex}.feedback-comment{align-items:center;gap:.5rem;font-size:.85rem;display:flex}.feedback-comment-text{flex:1}.feedback-comment-form{gap:.4rem;margin-top:.5rem;display:flex}.feedback-comment-form input{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);flex:1;padding:.3rem}.feedback-comment-form button{background:var(--color-accent);color:var(--color-bg);border:1px solid var(--color-accent-strong);cursor:pointer;padding:.3rem .6rem;font-size:.8rem}.feedback-comment-form button:hover{background:var(--color-info)}.feedback-edit-form{flex-direction:column;gap:.4rem;display:flex}#settings-status-message{min-height:1.2em;color:var(--color-info);white-space:pre-line}#roadmap-content{background:var(--color-bg-panel);border:1px solid var(--color-border);white-space:pre-line;text-align:left;width:700px;max-width:100%;padding:1rem 1.25rem;line-height:1.5}#status-message{min-height:1.2em;color:var(--color-info);white-space:pre-line;background:var(--color-bg-panel);border-top:1px solid var(--color-border);flex:none;padding:.4rem 1.25rem}
