/* Generated artwork defines the surfaces. CSS positions artwork and live labels. */
:root{--ui-panel:url('assets/generated/pastel-v1/ui/panel.svg');--ui-slot:url('assets/generated/pastel-v1/ui/slot.svg');--ui-button:url('assets/generated/pastel-v1/ui/button.svg');--ui-secondary:url('assets/generated/pastel-v1/ui/button-secondary.svg');--ui-ribbon:url('assets/generated/pastel-v1/ui/ribbon.svg');--ink:#665347;--muted:#8b8072;--cream:#fff9ec;--line:#c7b59a}
.play-screen{background:#c5eff5;color:#665347}
.play-screen .scene-backdrop{background:#c5eff5;opacity:1}
.play-screen .ui-icon{background-image:var(--icon-image);background-position:center;background-size:contain;background-repeat:no-repeat}
.play-screen .tool-label{color:#604e42;text-shadow:0 1px 0 #fff9eb,1px 0 0 #fff9eb,-1px 0 0 #fff9eb;font-weight:700}
.play-screen .float-tool:hover:not(:disabled) .tool-disc{filter:brightness(1.04);transform:translateY(-2px)}
.play-screen .tool-disc{transition:transform .18s ease}
.play-screen .wallet{background-image:var(--ui-ribbon);background-size:100% 100%;color:#665347;padding-block:9px}
.play-screen .wallet small{opacity:1;color:#8b7862}
.play-screen .profile,.play-screen .profile strong{color:#685444}
.play-screen .profile small{color:#867861}
.play-screen .avatar b,.play-screen .tool-count{color:#695544}
.play-screen #quest-dot{background:url('assets/generated/pastel-v1/icons/check.svg') center/contain no-repeat}
.play-screen .sound-toggle{font-size:0;background:url('assets/generated/pastel-v1/icons/sound-on.svg') center/contain no-repeat}
.play-screen .sound-toggle[aria-pressed="false"]{background-image:url('assets/generated/pastel-v1/icons/sound-off.svg');opacity:1}
.play-screen dialog{border-image-slice:12% fill;border-image-width:30px;background:none;filter:drop-shadow(0 10px 18px #6853472b);color:#685444}
.play-screen dialog::backdrop{background:#61797055;backdrop-filter:blur(3px)}
.play-screen .dialog-heading h2,.play-screen .shop-feature h3,.play-screen .upgrade-flower-name h3{font-family:'Be Vietnam Pro',system-ui,sans-serif;font-weight:700;color:#705644;letter-spacing:-.5px}
.play-screen .dialog-heading h2{font-size:24px}
.play-screen .primary,.play-screen .secondary,.play-screen .return-home{background-size:100% 100%;color:#4e6043;text-shadow:none;font-weight:700}
.play-screen .secondary{background-image:var(--ui-secondary);color:#70523e}
.play-screen .primary:disabled,.play-screen .secondary:disabled{opacity:.6;filter:saturate(.55)}
.play-screen .toast{background-image:var(--ui-ribbon);background-size:100% 100%;color:#695344}
.play-screen .xp-track,.play-screen .plant-progress,.play-screen .progress-line{background-image:var(--ui-slot);background-size:125% 650%}
.play-screen .xp-track i,.play-screen .plant-progress i,.play-screen .progress-line i{background-image:var(--ui-button);background-size:125% 800%}
.play-screen :is(.profile,.item-row,.seed-choice,.requirements>div,.plant-stats>div,.shop-crop,.quantity,.collection-filter,.collection-family,.shop-row,.upgrade-resource,.sound-settings,.session-goal,.harvest-item,.sowing-bar,.neighbor-join,.neighbor-membership,.visit-label,.species-select select){border-image-slice:24% fill}
.play-screen :is(.dialog-copy,.collection-guide,.plant-summary p,.yield-note,.shop-specs dt,.upgrade-kicker,.upgrade-spend-note,.upgrade-resource-info>small,.neighbor-section small){color:#89785f}
.play-screen :is(.collection-family-heading h3,.collection-family h4,.item-row h3,.plant-summary h3,.upgrade-cost-heading h3,.seed-choice strong,.shop-row h3){color:#6e5645}
.play-screen :is(.section-title,.collection-family-count,.collection-tile p,.stock-keep,.shop-feature p){color:#8a7964}
.play-screen .collection-art{padding:9px;background-size:100% 100%}
.play-screen .collection-family{padding:10px 7px 7px}
.play-screen .collection-family .crop-art{height:78px}
.play-screen .collection-tile.unknown .crop-art{filter:brightness(0);opacity:1}
.play-screen .collection-filter select{color:#705b48}
.play-screen :is(.quantity input,.neighbor-join input,.neighbor-search input,.seed-amount input){color:#705b48;background:#fffaf0;border-color:#bcab91}
.play-screen .quantity button,.play-screen .sowing-bar button{background:var(--ui-secondary) center/100% 100% no-repeat;border:0;border-radius:0;color:#70523e;box-shadow:none}
.play-screen .sowing-bar .sowing-done{background-image:var(--ui-button);color:#4e6043}
.play-screen .sowing-bar,.play-screen .session-goal,.play-screen .neighbor-join,.play-screen .neighbor-membership{color:#705846}
/* Keep the short notification's rounded artwork intact instead of slicing through its corners. */
.play-screen .session-goal{border-image:none;background:var(--ui-slot) center/100% 100% no-repeat;background-origin:border-box}
.play-screen .session-goal small{color:#8a7962}
.play-screen .neighbor-join strong{color:#6f5744}
.play-screen .sign-copy,.play-screen .sign-level{fill:#705443;font-family:'Be Vietnam Pro',sans-serif;paint-order:stroke;stroke:none}
.play-screen .sign-copy{font-size:14px;font-weight:500}.play-screen .sign-level{font-size:20px;font-weight:700}
.play-screen .bg-moon{width:clamp(115px,13vw,186px);top:2.5%}
.play-screen .bg-cloud{opacity:.88}
.play-screen .bg-leaves{width:26%}
.play-screen .bg-leaves-bottom-left,.play-screen .bg-leaves-bottom-right{width:21%}
.play-screen .bg-lantern-left,.play-screen .bg-lantern-right{width:10%}
.play-screen .bg-lantern-left-inner,.play-screen .bg-lantern-right-inner{width:7%}
.play-screen button:focus-visible,.play-screen a:focus-visible{outline-color:#b47c56;outline-offset:3px}
@media(max-width:760px) and (orientation:portrait),(max-width:1024px) and (max-height:600px) and (orientation:landscape){
 .play-screen dialog{border-image-width:23px}.play-screen .dialog-heading h2{font-size:19px}
 .play-screen .bg-moon{top:2%;width:125px}.play-screen .bg-leaves{width:29%}
 .play-screen .bg-leaves-bottom-left,.play-screen .bg-leaves-bottom-right{width:19%}
 .play-screen .bg-lantern-left,.play-screen .bg-lantern-right{width:11%}
 .play-screen .bg-lantern-left-inner{width:7%}
 .play-screen .wallet{padding-block:6px}.play-screen .collection-family{padding:7px 4px 5px}
}
@media(prefers-reduced-motion:reduce){.play-screen .tool-disc{transition:none}.play-screen .float-tool:hover:not(:disabled) .tool-disc{transform:none}}

/* Consistent painted frames and readable live labels across every game panel. */
.play-screen dialog{clip-path:inset(4px round 10px);font-size:13px;line-height:1.55}
.play-screen .dialog-heading{padding:6px 48px 16px;min-height:54px;align-items:center}
.play-screen .dialog-heading>div{min-width:0}
.play-screen .dialog-heading h2{line-height:1.35;margin:0;overflow-wrap:anywhere}
.play-screen .close,.play-screen .panel-back{width:42px;height:42px;display:grid;place-items:center}
.play-screen .close .ui-icon{width:42px;height:42px}
.play-screen #panel-body{padding:4px 10px 8px;scrollbar-gutter:stable both-edges;scroll-padding-block:14px}
.play-screen #panel-actions{padding:10px 10px 0;gap:8px}
.play-screen #panel-message{overflow-wrap:anywhere}
.play-screen :is(.primary,.secondary){font-size:12px;line-height:1.45;min-height:40px;padding:10px 20px;white-space:normal;text-align:center;overflow-wrap:anywhere}
.play-screen :is(.dialog-copy,.collection-guide,.shop-help){font-size:12px;line-height:1.65;color:#756955}
.play-screen :is(.item-row,.seed-choice,.shop-row,.upgrade-resource,.harvest-item){min-width:0}
.play-screen :is(.item-row h3,.shop-row-info h3,.seed-choice strong){font-size:14px;line-height:1.45}
.play-screen :is(.item-row p,.shop-row-info p,.shop-row-info small,.seed-choice small,.seed-choice em,.seed-choice .seed-time){font-size:11px;line-height:1.6;color:#756955}
.play-screen :is(.item-row h3,.shop-row-info h3,.seed-choice strong,.plant-summary h3,.collection-family h4,.upgrade-resource-info strong){overflow-wrap:break-word}
.play-screen .seed-choice>span{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}
.play-screen .seed-choice :is(strong,small,em,.seed-time){display:block;margin:0}
.play-screen .seed-picker{gap:10px}
.play-screen .seed-choice{padding:11px;gap:12px}
.play-screen .item-list,.play-screen .shop-catalog{gap:10px}
.play-screen .item-row{padding:10px;gap:12px}
.play-screen .quest-action small{font-size:10px;line-height:1.5;text-align:center}
.play-screen .quest-complete{white-space:normal;text-align:center}
.play-screen :is(.collection-filter,.quantity){border-image:var(--ui-slot) 24% fill/16px stretch;background:none}
.play-screen .collection-filter select{display:block;min-height:32px;max-width:180px;font-size:12px;padding-inline:8px;line-height:1.4}
.play-screen .collection-family{padding:12px 9px 8px}
.play-screen .collection-family-heading{gap:10px;margin:0 4px 10px;align-items:center}
.play-screen .collection-family-heading h3{font-size:15px;line-height:1.45}
.play-screen .collection-family .collection-tile{flex-basis:calc((100% - 40px)/5);min-width:100px;max-width:none}
.play-screen .collection-family h4{font-size:11px;line-height:1.5;min-height:3em}
.play-screen .collection-family .collection-tile p{font-size:10px;line-height:1.5;color:#756955}
.play-screen .collection-variants{align-items:stretch;gap:10px;padding:0 2px 8px}
.play-screen .collection-milestone{font-size:11px;line-height:1.5;gap:12px;margin-top:8px}
.play-screen .collection-milestone .secondary{min-height:34px;font-size:11px;padding:8px 16px}
.play-screen .shop-list-heading{font-size:12px;line-height:1.5;flex-wrap:wrap}
.play-screen .shop-row{padding:9px;gap:12px;grid-template-columns:62px minmax(0,1fr) 148px}
.play-screen .shop-row-purchase{gap:6px;min-width:0}
.play-screen .shop-row-purchase .primary{font-size:12px;min-height:38px}
.play-screen .shop-row-quantity{width:126px;min-height:40px;border-width:5px}
.play-screen .shop-row-quantity button{width:34px;min-height:30px;flex:none}
.play-screen .shop-row-quantity input{width:38px;height:30px;background:transparent;border:0;padding:0;font-size:13px}
.play-screen .shop-locked-label{font-size:11px;line-height:1.5;color:#756955}
.play-screen .plant-stats{gap:10px}
.play-screen .plant-stats>div{padding:11px;min-width:0}
.play-screen .plant-stats dt{font-size:12px;line-height:1.5;min-height:1.5em}
.play-screen .plant-stats dd{font-size:18px;line-height:1.4;overflow-wrap:anywhere}
.play-screen .plant-stats small,.play-screen .plant-summary p,.play-screen .yield-note{font-size:11px;line-height:1.55;color:#756955}
.play-screen .variant-details summary{font-size:12px;gap:10px;line-height:1.5}
.play-screen .odds-row{align-items:center;min-height:25px}
.play-screen .upgrade-resource-info>strong{font-size:12px}
.play-screen .upgrade-resource-info>small,.play-screen .upgrade-resource-count>small,.play-screen .upgrade-resource-target,.play-screen .upgrade-spend-note{font-size:10px;line-height:1.5}
.play-screen .upgrade-resource{padding:10px;gap:10px}
.play-screen .upgrade-resource-count{font-size:14px;line-height:1.5}
.play-screen .upgrade-gifts{font-size:12px;line-height:1.5}
.play-screen .upgrade-kicker{font-size:10px;letter-spacing:.08em}
.play-screen .upgrade-flower-name{min-width:0}
.play-screen .upgrade-flower-name h3{overflow-wrap:break-word}
.play-screen .neighbor-section{flex-wrap:wrap;align-items:center;gap:8px}
.play-screen .neighbor-section h3{font-size:14px;line-height:1.5}
.play-screen .neighbor-section small{font-size:11px;line-height:1.5}
.play-screen .neighbor-join label,.play-screen .neighbor-search input{min-width:0}
.play-screen .sound-settings{font-size:12px;line-height:1.6;padding:12px}
.play-screen .sound-settings label{flex-wrap:wrap}
.play-screen .sound-settings input[type=range]{min-width:100px}
.play-screen .harvest-grid{gap:10px}
.play-screen .harvest-item{width:calc((100% - 20px)/3);padding:12px 8px}
.play-screen .harvest-item h3{font-size:12px;line-height:1.5;overflow-wrap:break-word}
.play-screen .session-goal{max-width:310px;gap:14px;padding:8px 18px}
.play-screen .session-goal strong{font-size:12px;line-height:1.45}
.play-screen .session-goal small{font-size:11px;line-height:1.5}
.play-screen .goal-arrow{flex:none}
.play-screen .sowing-bar{gap:10px;padding:10px 16px}
.play-screen .sowing-bar button{flex:none;min-height:40px;line-height:1.5;padding:8px 16px}
.play-screen .sowing-bar small{font-size:11px;line-height:1.5}
.play-screen.sowing .toast{bottom:112px}
.play-screen :is(.tool-count,.wallet strong,.upgrade-resource-count,.plant-stats dd){font-variant-numeric:tabular-nums}
@media(max-width:760px) and (orientation:portrait),(max-width:1024px) and (max-height:600px) and (orientation:landscape){
 .play-screen dialog{font-size:12px;clip-path:inset(3px round 9px)}
 .play-screen .dialog-heading{min-height:38px;padding:0 42px 9px}
 .play-screen .dialog-heading h2{font-size:20px;line-height:1.35}
 .play-screen .close,.play-screen .panel-back{width:36px;height:36px;top:-2px}
 .play-screen .close .ui-icon,.play-screen .panel-back .ui-icon{width:36px;height:36px}
 .play-screen #panel-body{padding:3px 7px 6px}
 .play-screen #panel-actions{padding:7px 7px 0;gap:5px}
 .play-screen :is(.primary,.secondary){font-size:11px;min-height:36px;padding:8px 16px}
 .play-screen :is(.dialog-copy,.collection-guide,.shop-help){font-size:11px;line-height:1.55;margin-bottom:10px}
 .play-screen :is(.item-row h3,.shop-row-info h3,.seed-choice strong){font-size:13px}
 .play-screen :is(.item-row p,.shop-row-info p,.shop-row-info small,.seed-choice small,.seed-choice em,.seed-choice .seed-time){font-size:10.5px;line-height:1.5}
 .play-screen .item-row{padding:7px;gap:9px}
 .play-screen .seed-choice{padding:8px;gap:9px}
 .play-screen .shop-row{grid-template-columns:46px minmax(0,1fr) 126px;gap:8px;padding:6px}
 .play-screen .shop-row-purchase .primary{font-size:11px;min-height:34px;padding:7px 12px}
 .play-screen .shop-row-quantity{width:116px;min-height:36px}
 .play-screen .shop-row-quantity button{width:30px}
 .play-screen .shop-list-heading{font-size:11px}
 .play-screen .collection-family{padding:8px 6px 6px}
 .play-screen .collection-family-heading{margin-bottom:7px;gap:8px}
 .play-screen .collection-family-heading h3{font-size:14px}
 .play-screen .collection-family .crop-art{height:64px}
 .play-screen .collection-family .collection-tile{min-width:90px;flex-basis:calc((100% - 40px)/5)}
 .play-screen .collection-family h4{font-size:10.5px}
 .play-screen .collection-family .collection-tile p{font-size:10px}
 .play-screen .collection-milestone{font-size:10px}
 .play-screen .plant-stats{gap:7px}
 .play-screen .plant-stats>div{padding:8px 6px}
 .play-screen .plant-stats dt{font-size:11px;min-height:3em}
 .play-screen .plant-stats dd{font-size:16px}
 .play-screen .plant-stats small,.play-screen .plant-summary p,.play-screen .yield-note{font-size:10px}
 .play-screen .upgrade-resource{padding:5px 7px;gap:7px}
 .play-screen .upgrade-resource-info>strong{font-size:11px}
 .play-screen .upgrade-resource-info>small,.play-screen .upgrade-resource-count>small,.play-screen .upgrade-resource-target{font-size:9px}
 .play-screen .upgrade-resource-count{font-size:12px}
 .play-screen .upgrade-gifts{font-size:10px}
 .play-screen .upgrade-kicker{font-size:9px}
 .play-screen .harvest-item{width:calc((100% - 30px)/4)}
 .play-screen .harvest-item h3{font-size:11px}
 .play-screen .session-goal{max-width:255px;padding:5px 12px;gap:10px}
 .play-screen .session-goal strong{font-size:11px}.play-screen .session-goal small{font-size:10px}
 .play-screen .sowing-bar{width:min(520px,calc(var(--play-width) - 250px));padding:7px 12px;gap:8px}
 .play-screen.sowing .toast{bottom:88px}
 .play-screen .sowing-bar strong{font-size:12px}.play-screen .sowing-bar small{font-size:10px}
 .play-screen .sowing-bar button{font-size:11px;min-height:36px;padding:7px 12px}
}
/* Selection follows the actual alpha edge; the hit target remains invisible. */
.play-screen .plot .plot-hit,.sowing .plot.empty .plot-hit{fill:transparent;stroke:none}
.plot-highlight{opacity:0;transition:opacity .15s}
.plot:hover .plot-highlight,.plot:focus-visible .plot-highlight{opacity:1}
.sowing .plot.empty .plot-highlight{opacity:.6}
.sowing .plot.empty:hover .plot-highlight,.sowing .plot.empty:focus-visible .plot-highlight{opacity:1}
.play-screen .sound-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.play-screen .sound-heading>strong{font-size:15px}
.play-screen .sound-heading label{margin:0}
.play-screen .sound-channels{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:10px}
.play-screen .sound-channel{min-width:0}
.play-screen .sound-channel>label:first-child{font-weight:700;margin:5px 0}
.play-screen .sound-channel p{font-size:11px;color:#897769;margin:4px 0 9px}
.play-screen .sound-settings input[type=checkbox]{accent-color:#84985b;width:17px;height:17px;margin:0}
.play-screen .sound-slider{flex-wrap:nowrap;gap:8px}
.play-screen .sound-slider input{width:0;min-width:0;flex:1;accent-color:#84985b}
.play-screen .sound-slider output{font-size:11px;min-width:34px;text-align:right;font-variant-numeric:tabular-nums}
.play-screen .sound-channel small{font-size:10px;line-height:1.6;display:block}
.play-screen .sound-previews{display:flex;gap:6px;flex-wrap:wrap}
.play-screen .sound-previews .secondary{font-size:10px;padding:6px 11px;min-height:30px}
@media(max-width:600px){.play-screen .sound-channels{grid-template-columns:1fr;gap:10px}.play-screen .sound-heading>strong{font-size:13px}}
