@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;0,700;1,500;1,600&family=Inter:wght@400;500;600&display=swap');
:root{--ink:#2b342a;--muted:#74796c;--cream:#faf6ee;--line:#e5decd;--sage:#58664a;--sage-dark:#3f5038;--gold:#ad7d35;--serif:'Cormorant Garamond',Georgia,serif;--sans:Inter,Arial,sans-serif;color:var(--ink);font-family:var(--sans);font-size:14px;background:var(--cream);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,a,input,select{-webkit-tap-highlight-color:transparent}button,input,select{font:inherit}button,a{touch-action:manipulation}button{color:inherit;cursor:pointer}button{border:0}button:disabled{cursor:default;opacity:.45}a{color:inherit}svg{display:block;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5;width:24px;height:24px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #af822f;outline-offset:4px}button:disabled:focus-visible{outline:0}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:1000;left:20px;top:-80px;padding:14px;background:#fff;color:var(--ink)}.skip-link:focus{top:8px}
.site-header{height:88px;padding:0 30px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fdfaf3;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:13px;text-decoration:none}.brand>svg{width:42px;height:45px;color:var(--gold);stroke-width:1.3}.brand strong{display:block;font-family:var(--serif);font-size:24px;font-weight:600;letter-spacing:.085em}.brand small{display:block;font-size:9px;letter-spacing:.04em;margin-top:4px;color:#777260}.header-garden{align-items:center;display:flex;gap:10px;font-family:var(--serif);font-size:25px;color:var(--sage)}.header-garden svg{height:28px;width:28px}.header-actions{display:flex;align-items:center;gap:20px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:transparent;border:1px solid var(--line);border-radius:50%}.icon-button:hover{background:#eee9dc}.icon-button svg{height:21px;width:21px}.book-link{display:flex;align-items:center;gap:5px;flex-wrap:wrap;text-decoration:none;font-size:11px;line-height:1.7}.book-link em{font-family:var(--serif);font-size:18px}.book-link svg{height:14px;width:14px;margin-left:5px}.garden-app{display:grid;grid-template-columns:minmax(0,1fr) 330px;grid-template-rows:minmax(620px,calc(100svh - 204px)) 92px;max-width:2000px;margin:0 auto;padding:18px 20px 0;gap:0 16px}.garden-stage{isolation:isolate;position:relative;min-width:0;overflow:hidden;border-radius:12px;border:1px solid #e5dac8;box-shadow:0 9px 30px #3f392e10;background:#d7c5a7;outline:none}.garden-backdrop{position:absolute;inset:0;z-index:-3}.garden-backdrop img{height:100%;width:100%;object-fit:cover;object-position:52% center;transition:filter 1.3s ease}.scene-tone{position:absolute;inset:0;pointer-events:none;z-index:-2;transition:background 1.3s ease;background:linear-gradient(90deg,#f9f4e44f,transparent 42%),linear-gradient(180deg,#fff9e517,transparent 45%,#8761310d)}.garden-stage[data-light=morning] .garden-backdrop img{filter:brightness(1.1) saturate(.77)}.garden-stage[data-light=morning] .scene-tone{background:linear-gradient(110deg,#f8f5dc3d,transparent 65%)}.garden-stage[data-light=moon] .garden-backdrop img{filter:brightness(.36) saturate(.55) hue-rotate(20deg)}.garden-stage[data-light=moon] .scene-tone{background:linear-gradient(180deg,#0b274b96,#172a4c28 65%,#17233e4d)}.garden-stage[data-light=moon] .garden-piece canvas{filter:brightness(.63) saturate(.75) drop-shadow(0 10px 5px #0003)}.moon{display:none;position:absolute;z-index:-1;width:42px;height:42px;top:8%;right:29%;background:#fff9dc;border-radius:50%;box-shadow:0 0 40px #fff8dd6b;pointer-events:none}.stars{display:none;position:absolute;inset:0 0 57%;pointer-events:none;z-index:-1;background-image:radial-gradient(1px 1px at 62% 12%,#fff 70%,transparent),radial-gradient(1px 1px at 44% 8%,#fff 70%,transparent),radial-gradient(1.5px 1.5px at 55% 28%,#fff 70%,transparent),radial-gradient(1px 1px at 82% 31%,#fff 70%,transparent),radial-gradient(1px 1px at 92% 10%,#fff 70%,transparent)}.garden-stage[data-light=moon] .moon,.garden-stage[data-light=moon] .stars{display:block}.garden-intro{position:absolute;left:28px;top:28px;z-index:3;padding:24px 24px 21px;max-width:260px;background:#fffbf0ec;border:1px solid #fffdf3cc;border-radius:9px;box-shadow:0 8px 28px #4e3c2610;backdrop-filter:blur(12px)}.eyebrow{font-size:9px;line-height:1.7;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--gold);margin:0 0 10px}.garden-intro h1{font-family:var(--serif);font-size:42px;font-weight:500;line-height:.99;letter-spacing:-.02em;margin:0}.garden-intro h1 em{font-weight:500;color:var(--sage)}.intro-description{font-size:11px;line-height:1.9;color:#656c5c;margin:17px 0 0}.has-garden .intro-description{display:none}.has-garden .garden-intro{padding:18px 22px}.has-garden .garden-intro h1{font-size:35px}.setting-caption{position:absolute;top:24px;right:24px;z-index:2;display:flex;align-items:center;gap:7px;background:#fffaf0e8;border:1px solid #fff6dfb3;color:#625c49;padding:8px 12px;border-radius:20px;font-size:10px;box-shadow:0 3px 18px #58441d12}.setting-caption svg{height:14px;width:14px}.mode-rail{position:absolute;z-index:4;left:28px;top:301px;display:grid;gap:5px;background:#fffbf1eb;padding:7px;border:1px solid #fff9efb0;border-radius:9px;backdrop-filter:blur(10px);box-shadow:0 6px 25px #55432b14}.has-garden .mode-rail{top:200px}.mode-rail button{display:flex;align-items:center;gap:11px;padding:10px 14px;min-height:47px;min-width:132px;background:transparent;border-radius:5px;font-size:11px}.mode-rail button svg{height:21px;width:21px;color:#7c785e}.mode-rail button:hover{background:#ede8d9}.mode-rail button[aria-pressed=true]{color:#fffaf0;background:var(--sage)}.mode-rail button[aria-pressed=true] svg{color:#fffaf0}.objects-layer{position:absolute;inset:0}.garden-piece{position:absolute;transform:translate(-50%,-100%);padding:0;background:transparent;border:0;touch-action:none;user-select:none;cursor:grab;isolation:isolate;border-radius:12px;min-width:44px;min-height:44px}.garden-piece:active{cursor:grabbing}.garden-piece canvas{display:block;max-width:100%;height:auto;filter:drop-shadow(0 10px 5px #49361b30);transition:filter .4s,transform .3s;pointer-events:none}.garden-piece:hover canvas,.garden-piece:focus-visible canvas{filter:drop-shadow(0 0 5px #fff7c8) drop-shadow(0 9px 6px #47331d3b);transform:translateY(-3px)}.garden-piece[aria-grabbed=true]{cursor:grabbing;z-index:1090!important;opacity:.92}.piece-label{position:absolute;bottom:100%;left:50%;transform:translate(-50%,0);white-space:nowrap;font-size:10px;font-weight:500;color:var(--ink);background:#fffaf2f5;border:1px solid #ece3cb;border-radius:6px;padding:7px 10px;opacity:0;transition:opacity .2s;pointer-events:none;box-shadow:0 4px 12px #0001}.garden-piece:hover .piece-label,.garden-piece:focus-visible .piece-label{opacity:1}.garden-piece.just-added{animation:arrive .8s ease both}.garden-piece[data-piece=butterfly] canvas{animation:butterfly-drift 6s ease-in-out infinite;transform-origin:center}.garden-piece[data-piece=lantern].has-moment::before{content:'';position:absolute;inset:17% -60% -5%;z-index:-1;background:radial-gradient(ellipse,#ffe9a75e,transparent 65%);pointer-events:none;animation:lantern-glow 5s ease-in-out infinite}.garden-piece.has-moment::after{content:'';width:5px;height:5px;background:#fff4d5;border:1px solid #cda250;border-radius:50%;position:absolute;bottom:5%;left:50%;box-shadow:0 0 8px #fff9e7;opacity:.8}.garden-piece.has-moment:not([data-piece=water])::after{display:none}.garden-piece[data-piece=water].has-moment::after{width:38%;height:13%;border-radius:50%;background:transparent;bottom:36%;left:31%;border:1px solid #fcf4d8ad;animation:water-ring 4s ease-out infinite}.empty-invitation{position:absolute;left:54%;top:62%;transform:translate(-50%,-50%);width:310px;text-align:center;color:#3d4b36;z-index:2;background:#fff9e8cf;border:1px solid #fffcf1d9;padding:22px 24px;border-radius:12px;box-shadow:0 12px 38px #59422214;backdrop-filter:blur(8px)}.empty-sprout{display:flex;justify-content:center;color:#8c925e;margin:0 0 9px}.empty-sprout svg{width:30px;height:30px}.empty-invitation h2{font-family:var(--serif);font-weight:600;font-size:29px;margin:0 0 8px}.empty-invitation p{font-size:11px;line-height:1.8;margin:0 0 13px}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:transparent;padding:10px 4px;font-size:11px;min-height:44px;color:var(--sage-dark);text-underline-offset:4px}.text-button svg{height:17px;width:17px}.text-button:hover{text-decoration:underline}.stage-hint{position:absolute;bottom:17px;left:50%;transform:translateX(-50%);z-index:4;display:flex;align-items:center;justify-content:center;gap:9px;font-size:10px;line-height:1.6;padding:8px 13px;white-space:nowrap;border-radius:30px;background:#fffaf0e8;pointer-events:none;color:#655f4d}.stage-hint svg{height:16px;width:16px}.calm-return{position:absolute;z-index:8;left:24px;top:24px;display:flex;align-items:center;gap:10px;padding:13px 17px;border-radius:30px;background:#fffaf0e8;color:#3d4937;box-shadow:0 6px 25px #0002;font-size:12px;min-height:48px}.calm-return svg{height:18px;width:18px}.calm-message{position:absolute;bottom:7%;left:50%;transform:translateX(-50%);padding:11px 16px;background:#fffaf0bd;border-radius:24px;white-space:nowrap;font-family:var(--serif);font-style:italic;font-size:23px;color:#424d37}.scene-ripple{position:absolute;bottom:10%;left:50%;width:80px;height:30px;border:2px solid #fff7e9;border-radius:50%;pointer-events:none;z-index:30;opacity:0}.scene-ripple.play{animation:scene-ripple 1.5s ease-out}.collection-panel{background:#fffdf7;border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;min-height:0;overflow:hidden;box-shadow:0 9px 30px #3f392e08}.collection-heading{display:flex;align-items:center;justify-content:space-between;padding:26px 23px 0}.collection-heading .eyebrow{font-size:8px;letter-spacing:.14em;margin-bottom:6px}.collection-heading h2{font-family:var(--serif);font-size:33px;font-weight:600;letter-spacing:-.02em;margin:0}.collection-flourish{color:#9c975f}.collection-flourish svg{height:31px;width:31px;stroke-width:1.2}.collection-description{color:var(--muted);font-size:11px;line-height:1.8;margin:10px 23px 17px}.category-tabs{display:flex;margin:0 20px 15px;padding:0 0 9px;border-bottom:1px solid var(--line);gap:4px}.category-tabs button{flex:1;background:transparent;padding:8px 5px;min-height:36px;font-size:10px;border-radius:5px;white-space:nowrap;color:#797c6a}.category-tabs button[aria-pressed=true]{background:#ebeedd;color:#3f5038}.piece-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:0 20px 16px;gap:11px;overflow:auto;min-height:0;align-content:start;scrollbar-width:thin;scrollbar-color:#cec9b7 transparent}.piece-card{position:relative;text-align:left;background:#f8f5ed;border:1px solid #e8e0cf;border-radius:8px;padding:8px 11px 12px;transition:background .2s,border .2s;min-width:0}.piece-card:hover{border-color:#b4b693;background:#f0f1e5}.piece-card.in-garden{border-color:#aab292;background:#f1f3e9}.piece-card canvas{display:block;width:100%;height:77px;object-fit:contain;margin:0 auto 7px;pointer-events:none}.piece-card strong{display:block;font-family:var(--serif);font-size:19px;font-weight:600;line-height:1.05}.piece-card small{display:block;margin-top:4px;font-size:9px;color:#777c67}.piece-card .piece-add{position:absolute;right:7px;top:7px;background:#fffaf1ce;border:1px solid #e4ddc9;border-radius:50%;width:21px;height:21px;display:flex;align-items:center;justify-content:center;color:#878b6d;font-size:15px}.piece-add svg{width:12px;height:12px}.collection-footer{display:flex;align-items:center;gap:11px;margin:auto 20px 0;padding:16px 0 18px;border-top:1px solid var(--line);color:#899071}.collection-footer>span{display:block;flex:0 0 22px}.collection-footer svg{width:22px;height:22px}.collection-footer p{font-family:var(--serif);font-size:17px;margin:0;color:#656e56}.collection-footer small{display:block;font-family:var(--sans);font-size:8px;line-height:1.8;color:#868675;margin-top:4px}.reflection-list{padding:0 20px 20px;overflow:auto}.reflection-row{display:flex;gap:10px;align-items:center;width:100%;background:transparent;padding:13px 0;border-bottom:1px solid #ece6d9;text-align:left}.reflection-row canvas{height:47px;width:49px;object-fit:contain;flex:0 0 49px}.reflection-row>span{flex:1}.reflection-row strong{display:block;font-family:var(--serif);font-size:20px;font-weight:600}.reflection-row small{display:block;font-size:9px;color:#7d826f;line-height:1.7;margin-top:4px}.reflection-row>svg{height:16px;width:16px;color:#88916c}.empty-explore{grid-column:1/-1;text-align:center;font-family:var(--serif);font-size:23px;line-height:1.4;padding:40px 10px;color:#6b745b}.garden-toolbar{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:15px;background:#fdfaf3;border:1px solid var(--line);margin-top:15px;border-radius:10px;padding:13px 19px;box-shadow:0 4px 20px #3f392e05}.sound-controls{display:flex;align-items:center;gap:11px;min-width:0}.sound-toggle{height:44px;width:44px;flex:0 0 44px;border-radius:50%;background:#f3eddd;color:#8c7c4e;display:flex;align-items:center;justify-content:center}.sound-toggle[aria-pressed=true]{background:var(--sage);color:#fffaf0}.sound-toggle svg{height:22px;width:22px}.sound-select-label{display:block;flex:0 0 auto}.sound-select-label>span{font-size:9px;color:#8d8a78;display:block;margin:0 0 2px}.sound-select-label select{font-family:var(--serif);font-size:19px;background:transparent;border:0;color:var(--ink);min-height:27px;max-width:150px;padding:0 16px 0 0}.sound-controls input{accent-color:#a78a46;width:80px;height:40px;cursor:pointer}.sound-status{font-size:8px;color:#8a8b79;white-space:nowrap}.light-controls{display:flex;align-items:center;justify-content:center;gap:6px;border:0;border-left:1px solid var(--line);border-right:1px solid var(--line);margin:0;padding:0 17px}.light-controls button{background:transparent;border:1px solid transparent;min-height:48px;min-width:70px;padding:5px 8px;border-radius:6px;font-size:8px;display:flex;flex-direction:column;align-items:center;gap:3px;color:#797d68}.light-controls button svg{height:23px;width:23px;stroke-width:1.3}.light-controls button[aria-pressed=true]{background:#eeeedf;border-color:#dcdfc7;color:#526246}.garden-actions{display:flex;align-items:center;gap:9px}.primary-button,.quiet-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:11px;font-weight:500;min-height:45px;border-radius:6px;padding:12px 16px;text-decoration:none}.primary-button{color:#fffdf4;background:var(--sage);border:1px solid var(--sage)}.primary-button:hover{background:var(--sage-dark);border-color:var(--sage-dark)}.primary-button svg,.quiet-button svg{height:18px;width:18px;stroke-width:1.5}.quiet-button{background:transparent;border:1px solid #dcdac7;color:#626e52}.quiet-button:hover{background:#eeeedf}.privacy-strip{display:flex;align-items:center;justify-content:center;gap:7px;min-height:28px;padding:8px 15px;font-size:8px;line-height:1.7;color:#979681}.privacy-strip svg{height:11px;width:11px}.privacy-strip button{background:transparent;color:#7e846c;text-decoration:underline;text-underline-offset:3px;padding:4px 3px;font-size:8px}.toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);max-width:calc(100% - 30px);z-index:200;background:#2f4234;color:#fffaf0;padding:13px 19px;border-radius:9px;box-shadow:0 8px 35px #0002;font-size:12px;line-height:1.7;display:flex;align-items:center;gap:15px}.toast button{background:transparent;color:#f0dca1;font-weight:600;text-decoration:underline;min-height:34px;padding:3px 7px}
dialog{color:var(--ink);border:1px solid #e9e0ce;border-radius:15px;box-shadow:0 24px 100px #1b21194d;background:#fffcf5;padding:0}dialog::backdrop{background:#26322768;backdrop-filter:blur(5px)}.dialog-close{position:absolute;top:15px;right:15px;z-index:10;background:#fffaf0db;border-color:#e4dcc9}.piece-dialog{width:min(820px,calc(100% - 36px));max-height:88svh;overflow:auto}.piece-dialog[open]{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1fr)}.dialog-art{position:sticky;top:0;min-height:500px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(ellipse at 50% 42%,#f8e9b9,#ecebdc 70%,#e0e6d5);isolation:isolate;padding:25px}.dialog-art canvas{display:block;max-width:100%;height:auto;position:relative;z-index:1;filter:drop-shadow(0 20px 13px #4c492b22);transition:transform .9s ease}.dialog-art-orbit{position:absolute;border:1px solid #c1bd9254;border-radius:50%;width:240px;height:240px;box-shadow:0 0 0 28px #d2c99117,0 0 0 58px #e3d9ad1a}.dialog-copy{padding:45px 31px 27px}.dialog-copy>.eyebrow{font-size:8px;margin-bottom:8px}.dialog-copy h2{font-family:var(--serif);font-size:37px;font-weight:600;letter-spacing:-.02em;line-height:1.02;margin:0 0 13px;max-width:95%}.practice-intro{font-size:12px;line-height:1.85;color:#707761;margin:0 0 19px}.practice-body{min-height:90px;margin-bottom:20px}.practice-choices{display:grid;gap:7px}.practice-choice{display:flex;gap:10px;align-items:center;width:100%;text-align:left;padding:11px 13px;min-height:45px;background:#f5f3e9;border:1px solid #e3dfcc;border-radius:6px;font-size:11px;line-height:1.5}.practice-choice::before{content:'';height:13px;width:13px;flex:0 0 13px;border:1px solid #b4b79d;border-radius:50%;background:#fffdf5}.practice-choice[aria-pressed=true]{background:#e9eedc;border-color:#99a57f}.practice-choice[aria-pressed=true]::before{background:var(--sage);box-shadow:inset 0 0 0 3px #eef2e5}.practice-note{font-size:11px;line-height:1.85;color:#6c755f;margin:12px 0 0}.sensory-card{background:#eeefdf;border:1px solid #dbe0c6;border-radius:8px;padding:23px;text-align:center}.sensory-card .step-label{font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#879174}.sensory-card h3{font-family:var(--serif);font-size:28px;font-weight:500;line-height:1.13;margin:13px 0 11px}.sensory-card p{font-size:11px;line-height:1.8;margin:0;color:#737d61}.rest-circle{width:94px;height:94px;border-radius:50%;border:1px solid #b4be9a;box-shadow:0 0 0 17px #e7ecd9,0 0 0 35px #eff1e6;margin:36px auto;animation:rest-circle 8s ease-in-out infinite;background:#cbd5b655}.rest-copy{text-align:center;font-family:var(--serif);font-size:25px;line-height:1.3;color:#5d6e4d}.water-moment{display:flex;justify-content:center;align-items:center;height:104px;position:relative;background:radial-gradient(ellipse,#bdcdbd60,transparent 70%);overflow:hidden}.water-moment i{position:absolute;width:50px;height:18px;border:1px solid #769793a6;border-radius:50%;animation:water-spread 3s ease-out infinite}.water-moment i:nth-child(2){animation-delay:1s}.water-moment i:nth-child(3){animation-delay:2s}.butterfly-range{accent-color:#7c945b;width:100%;min-height:36px;margin:13px 0 3px}.range-captions{display:flex;justify-content:space-between;font-size:9px;color:#8a8c78}.companion-pat{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;gap:8px;border:1px solid #d7dcc4;border-radius:8px;background:#ebefdf;color:#5e704d;font-size:11px}.companion-pat svg{height:20px;width:20px}.piece-dialog.is-patted .dialog-art canvas{animation:happy-pat .7s ease}.story-thread{display:flex;gap:10px;border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.story-thread>span{color:#a29b77;padding-top:2px}.story-thread svg{width:18px;height:18px}.story-thread h3{font-size:10px;font-weight:500;color:#6d755c;margin:0 0 7px}.story-thread p{font-size:10px;line-height:1.85;color:#8b8d7c;margin:0}.practice-actions{display:flex;flex-direction:column;gap:2px;margin-top:22px}.practice-actions>.primary-button{font-size:11px;padding:13px 18px;min-height:46px}.practice-actions>.text-button{font-size:10px;color:#91917d}.placed-controls{border-top:1px solid var(--line);margin-top:15px;padding-top:15px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px;font-size:9px;color:#898b76}.nudge-controls{display:flex;gap:3px}.nudge-controls button{width:34px;height:34px;background:#f2f0e5;border:1px solid #e5e2ce;border-radius:4px;font-size:14px}.placed-controls>button{background:transparent;text-decoration:underline;text-underline-offset:3px;min-height:38px;color:#907366;padding:5px}.help-dialog{width:min(610px,calc(100% - 30px));max-height:89svh;overflow:auto;padding:38px 40px}.help-dialog>.eyebrow{font-size:8px}.help-dialog h2{font-family:var(--serif);font-size:42px;font-weight:600;line-height:1.05;margin:0 0 14px}.help-dialog>p:not(.eyebrow):not(.book-note){font-size:12px;line-height:1.9;color:#727960}.help-steps{padding:0;margin:26px 0;list-style:none;display:grid;gap:22px}.help-steps li{display:flex;gap:15px}.help-steps li>span{display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex:0 0 42px;background:#eeefdf;color:#7b8b5f;border-radius:50%}.help-steps h3{font-family:var(--serif);font-size:23px;font-weight:600;margin:0 0 4px}.help-steps p{font-size:11px;line-height:1.8;color:#7c816d;margin:0}.saving-note{background:#f3f2e7;padding:19px;border-radius:7px}.saving-note h3{font-family:var(--serif);font-size:23px;margin:0 0 8px;font-weight:600}.saving-note p{font-size:10px;line-height:1.9;margin:0;color:#818572}.help-actions{display:grid;gap:4px;margin-top:22px}.reset-button{font-size:9px;color:#9a8870}.book-note{font-size:9px;line-height:1.8;color:#9a9a87;margin:18px 0 0;text-align:center}.noscript{position:fixed;inset:30% 15%;background:#fffaf0;padding:30px;border:1px solid var(--line);z-index:999}
.garden-app.is-calm{display:block;padding:0;max-width:none}.is-calm .garden-stage{height:100svh;border:0;border-radius:0;min-height:600px}.is-calm .garden-intro,.is-calm .mode-rail,.is-calm .setting-caption,.is-calm .empty-invitation,.is-calm .stage-hint{display:none}.is-calm .garden-piece{cursor:pointer}.is-calm .garden-piece:hover canvas{transform:none}.is-calm .garden-piece .piece-label{display:none}.is-calm .garden-piece.has-moment::after{display:none}
@keyframes arrive{from{opacity:0;translate:0 13px}to{opacity:1;translate:0 0}}@keyframes lantern-glow{50%{opacity:.6;scale:1.08}}@keyframes butterfly-drift{50%{translate:2px -9px;rotate:3deg}}@keyframes water-ring{from{scale:.6;opacity:.8}to{scale:1.5;opacity:0}}@keyframes scene-ripple{from{opacity:.9;scale:.4}to{opacity:0;scale:7}}@keyframes rest-circle{50%{scale:1.12;opacity:.65}}@keyframes water-spread{from{scale:.3;opacity:.8}to{scale:4;opacity:0}}@keyframes happy-pat{25%{rotate:-2deg;translate:0 -3px}65%{rotate:2deg;translate:0 -1px}}
@media(min-width:1600px){.garden-app{grid-template-columns:minmax(0,1fr) 365px;grid-template-rows:minmax(680px,calc(100svh - 207px)) 92px}.piece-card canvas{height:94px}.piece-grid{gap:13px}.garden-intro{left:35px;top:35px}.mode-rail{left:35px;top:315px}.has-garden .mode-rail{top:209px}.garden-toolbar{padding-inline:26px}.sound-controls{gap:15px}.light-controls{padding-inline:35px}.garden-actions{gap:13px}}
@media(max-width:1200px){.site-header{padding-inline:22px}.brand strong{font-size:21px}.header-garden{font-size:23px}.garden-app{grid-template-columns:minmax(0,1fr) 290px;padding-inline:15px;gap:0 12px}.collection-heading{padding:24px 18px 0}.collection-description{margin-inline:18px}.piece-grid{padding-inline:16px;gap:9px}.category-tabs{margin-inline:16px}.collection-heading h2{font-size:29px}.collection-heading .eyebrow{font-size:7px}.collection-footer{margin-inline:16px}.sound-status{display:none}.garden-toolbar{padding:10px 12px;gap:9px}.sound-controls{gap:7px}.sound-controls input{width:55px}.light-controls{padding-inline:10px}.light-controls button{min-width:57px;padding:5px 6px;font-size:7px}.garden-actions .quiet-button{padding:10px}.garden-actions .primary-button{padding:10px 12px}.garden-actions button{font-size:10px}.garden-intro{left:21px;top:22px;padding:20px;max-width:232px}.garden-intro h1{font-size:39px}.mode-rail{left:21px;top:286px}.has-garden .mode-rail{top:189px}.empty-invitation{left:58%;width:270px;padding:20px}.setting-caption{top:21px;right:18px;font-size:9px}.stage-hint{font-size:8px;gap:5px;padding:7px 10px}.stage-hint svg{width:14px;height:14px}}
@media(max-width:950px){.brand small{font-size:8px}.header-garden{display:none}.garden-app{grid-template-columns:minmax(0,1fr) 265px;grid-template-rows:650px 145px}.garden-intro{max-width:210px;padding:18px}.garden-intro h1{font-size:35px}.intro-description{font-size:10px}.garden-intro .eyebrow{font-size:8px;letter-spacing:.09em}.mode-rail{top:264px}.mode-rail button{min-width:111px;padding:10px;gap:8px}.has-garden .garden-intro h1{font-size:30px}.has-garden .mode-rail{top:176px}.setting-caption{top:auto;bottom:55px;right:15px;font-size:8px}.collection-heading{padding:23px 16px 0}.collection-heading h2{font-size:27px}.collection-description{font-size:10px;margin-inline:16px}.piece-card{padding:7px 8px 10px}.piece-card strong{font-size:18px}.piece-card canvas{height:65px}.collection-footer small{font-size:7px}.collection-footer p{font-size:16px}.collection-flourish{display:none}.garden-toolbar{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:52px 52px;gap:8px 20px;padding:10px 18px}.sound-controls{grid-column:1;grid-row:1}.light-controls{grid-column:2;grid-row:1;padding:0;border-right:0}.garden-actions{grid-row:2;grid-column:1/-1;justify-content:flex-end;border-top:1px solid var(--line);padding-top:8px}.garden-actions button{font-size:11px}.sound-controls input{width:75px}.empty-invitation{left:59%;top:68%;width:246px;padding:18px}.empty-invitation h2{font-size:27px}.empty-invitation p{font-size:10px}.empty-invitation .text-button{font-size:10px}.stage-hint{white-space:normal;width:calc(100% - 30px);max-width:330px;text-align:center}.stage-hint>span:first-child{display:none}}
@media(max-width:700px){.site-header{height:73px;padding:0 17px;gap:8px}.brand{gap:9px}.brand>svg{width:30px;height:34px}.brand strong{font-size:18px;letter-spacing:.055em}.brand small{font-size:6.5px;letter-spacing:.02em;margin-top:2px}.header-actions{gap:0}.header-actions .icon-button{width:39px;height:39px}.book-link{display:none}.garden-app{display:flex;flex-direction:column;padding:10px 10px 0;gap:10px}.garden-stage{height:calc(100svh - 190px);min-height:540px;border-radius:9px}.garden-backdrop img{object-position:center center}.garden-intro{top:16px;left:16px;padding:17px 18px;max-width:217px}.garden-intro h1{font-size:35px}.garden-intro .eyebrow{font-size:7px;letter-spacing:.12em}.intro-description{font-size:10px;line-height:1.8;margin-top:13px}.setting-caption{top:16px;bottom:auto;right:14px;width:32px;height:32px;padding:8px;font-size:0;overflow:hidden;white-space:nowrap;gap:0}.setting-caption svg{height:15px;width:15px;flex:0 0 15px}.mode-rail{left:16px;right:16px;top:250px;display:flex;justify-content:space-between;padding:5px;background:#fffbf0e8}.mode-rail button{flex:1;min-width:0;min-height:49px;padding:7px 3px;gap:4px;justify-content:center;font-size:9px;flex-direction:column}.mode-rail button svg{height:18px;width:18px}.has-garden .garden-intro{padding:14px 17px}.has-garden .garden-intro h1{font-size:29px}.has-garden .mode-rail{top:158px}.empty-invitation{left:50%;top:71%;width:272px;padding:19px 22px}.empty-invitation h2{font-size:29px}.empty-invitation p{font-size:10px}.empty-invitation .text-button{font-size:11px}.empty-sprout svg{height:25px;width:25px}.stage-hint{bottom:13px;font-size:8px;max-width:330px;padding:8px 9px}.collection-panel{border-radius:9px;min-height:0;max-height:570px}.collection-heading{padding:22px 21px 0}.collection-heading h2{font-size:33px}.collection-heading .eyebrow{font-size:8px}.collection-flourish{display:block}.collection-description{font-size:11px;margin:9px 21px 14px}.category-tabs{margin:0 18px 14px}.category-tabs button{font-size:10px;min-height:40px}.piece-grid{grid-template-columns:repeat(3,minmax(0,1fr));padding:0 18px 17px;gap:9px;max-height:350px}.piece-card{padding:8px 8px 11px}.piece-card canvas{height:65px}.piece-card strong{font-size:18px}.piece-card small{font-size:8px}.collection-footer{padding:14px 0;margin-inline:20px}.collection-footer small{font-size:8px}.collection-footer p{font-size:17px}.garden-toolbar{margin-top:0;min-height:166px;grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:10px;padding:14px 17px;flex:0 0 auto}.sound-controls{grid-column:1;grid-row:1;gap:12px}.sound-select-label{flex:1}.sound-select-label select{font-size:20px}.sound-controls input{width:90px}.light-controls{grid-column:1;grid-row:2;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:9px 0;gap:13px}.light-controls button{flex:1;font-size:9px;flex-direction:row;gap:7px;min-height:39px;padding:7px}.light-controls button svg{height:21px;width:21px}.garden-actions{grid-column:1;grid-row:3;justify-content:stretch;border:0;padding:0;gap:10px}.garden-actions button{flex:1;min-height:46px;font-size:11px}.privacy-strip{font-size:8px;flex-wrap:wrap;gap:3px 6px;padding:10px 15px 15px;text-align:center}.privacy-strip button{font-size:8px}.privacy-strip>span:nth-child(2){max-width:280px}.piece-dialog{width:calc(100% - 20px);max-height:90svh;border-radius:12px}.piece-dialog[open]{display:block}.dialog-art{position:relative;min-height:170px;height:190px;padding:10px 80px}.dialog-art canvas{max-height:160px;width:100%;object-fit:contain}.dialog-art-orbit{width:135px;height:135px}.dialog-close{top:13px;right:13px;width:39px;height:39px}.dialog-copy{padding:23px 25px 24px}.dialog-copy h2{font-size:34px}.dialog-copy>.eyebrow{font-size:8px}.practice-intro{font-size:12px}.practice-body{margin-bottom:17px;min-height:0}.story-thread p{font-size:10px}.story-thread h3{font-size:11px}.practice-choice{font-size:12px;min-height:48px}.practice-actions>.primary-button{font-size:12px;min-height:48px}.practice-actions>.text-button{font-size:11px}.placed-controls{font-size:10px}.nudge-controls button{width:41px;height:41px}.placed-controls>button{min-height:42px}.help-dialog{padding:33px 26px}.help-dialog h2{font-size:36px}.help-steps li{gap:12px}.help-dialog>p:not(.eyebrow):not(.book-note){font-size:12px}.saving-note p{font-size:11px}.help-steps p{font-size:11px}.help-actions>.primary-button{font-size:12px;min-height:48px}.help-actions .text-button{font-size:10px}.help-dialog .book-note{font-size:9px}.reflection-list{max-height:360px}.reflection-row small{font-size:10px}.toast{bottom:15px;font-size:11px}.is-calm .garden-stage{min-height:100svh;height:100svh}.calm-return{top:17px;left:17px;min-height:46px;font-size:11px}.calm-message{font-size:20px;max-width:calc(100% - 40px);white-space:normal;text-align:center;bottom:7%;width:275px;line-height:1.3}.rest-circle{width:75px;height:75px;margin:27px auto}.rest-copy{font-size:23px}}
@media(max-width:370px){.brand strong{font-size:16px}.brand small{font-size:6px}.brand>svg{width:27px}.site-header{padding-inline:13px}.garden-stage{min-height:520px}.piece-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:380px}.piece-card canvas{height:79px}.sound-controls input{width:65px}.light-controls{gap:4px}.light-controls button{font-size:8px;gap:5px}.garden-actions button{font-size:10px;padding-inline:9px}.dialog-copy{padding-inline:21px}.placed-controls{justify-content:flex-start;gap:8px}.nudge-controls button{width:36px;height:38px}}
/* Keep the quiet interface readable and the controls comfortable to tap. */
:root{--gold:#89632e;--muted:#68725e}
.objects-layer{z-index:1}
.eyebrow,.collection-heading .eyebrow,.garden-intro .eyebrow,.dialog-copy>.eyebrow,.help-dialog>.eyebrow{font-size:9px}
.category-tabs button,.mode-rail button{min-height:44px}
.category-tabs button{font-size:11px;color:#657054}
.piece-card small{font-size:10px;color:#687359}
.collection-description{font-size:12px}
.collection-footer small{font-size:9px;color:#6d755e}
.collection-footer p{color:#59664a}
.stage-hint{font-size:10px}
.sound-select-label>span,.sound-status{font-size:10px;color:#6e755f}
.light-controls button{min-height:44px;color:#626f53}
.practice-intro{font-size:13px;color:#657157}
.story-thread h3{font-size:11px;color:#5d6a4d}
.story-thread p{font-size:11px;color:#6d765f}
.practice-actions>.text-button,.placed-controls{color:#6c745b}
.nudge-controls button{width:44px;height:44px}
.placed-controls>button{min-height:44px}
.privacy-strip,.privacy-strip button{color:#6d755e}
.header-actions .icon-button{width:44px;height:44px}
.reflection-row small{color:#687359}
.toast{z-index:1000}
.calm-message{z-index:4}
.dialog-close{width:44px;height:44px}
.dialog-close-wrap{position:sticky;top:0;height:0;z-index:20;pointer-events:none;grid-column:1/-1}
.dialog-close-wrap .dialog-close{pointer-events:auto;width:44px;height:44px}
.is-calm .calm-message{bottom:18px;font-size:19px;line-height:1.3;padding:7px 14px}
@media(min-width:951px){.garden-app{grid-template-rows:minmax(580px,calc(100svh - 230px)) 92px}}
@media(max-width:700px){.garden-stage{order:0}.garden-toolbar{order:1}.collection-panel{order:2}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.garden-piece:hover canvas{transform:none}}
/* Landscape studio — one integrated menu, with the garden kept open. */
.garden-app{display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-template-rows:minmax(650px,calc(100svh - 142px));gap:0;padding:0;margin:16px 20px 0;max-width:none;border:1px solid #ded6c4;border-radius:14px;overflow:hidden;background:#fffaf1;box-shadow:0 12px 40px #4a402b0c;position:relative}
.garden-stage{border:0;border-radius:0;box-shadow:none;min-height:0;height:auto;grid-column:1;grid-row:1}
.garden-world{position:absolute;inset:0;isolation:isolate;z-index:0;filter:brightness(var(--brightness,1));transition:filter .4s}
.garden-backdrop{pointer-events:none}.garden-backdrop img{object-position:center center}
.ground-canvas{position:absolute;inset:0;z-index:0;width:100%;height:100%;touch-action:none;outline:0}
.ground-canvas:focus-visible{outline:3px solid #fff7d3;outline-offset:-6px}
.objects-layer{pointer-events:none}.garden-piece{pointer-events:auto;transform:translate(-50%,-100%) rotate(var(--rotation,0deg));transform-origin:50% 100%}
.garden-piece.is-selected{outline:1px dashed #fff9de;outline-offset:6px;background:#fff9e510}
.is-raking .garden-piece{pointer-events:none}.is-raking .ground-canvas{cursor:crosshair}.is-raking .garden-intro{pointer-events:none}
.rake-cursor{position:absolute;z-index:5;aspect-ratio:1;border:1px solid #fff9e9d9;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #594e3938;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 7px,#fffbe95e 7px 8px);opacity:.9}
.garden-stage[data-light=moon] .ground-canvas{filter:brightness(.63) saturate(.75)}
.garden-stage[data-light=morning] .ground-canvas{filter:brightness(1.06) saturate(.85)}
.garden-piece[data-piece=lantern]::before,.garden-piece[data-piece=stone-lantern]::before{content:'';position:absolute;inset:17% -60% -5%;z-index:-1;background:radial-gradient(ellipse,#ffe9a75e,transparent 65%);pointer-events:none;animation:lantern-glow 5s ease-in-out infinite}
.no-glow .garden-piece[data-piece=lantern]::before,.no-glow .garden-piece[data-piece=stone-lantern]::before{display:none}
.garden-intro{left:24px;top:24px;padding:22px;max-width:236px}.garden-intro h1{font-size:40px}.intro-description{font-size:11px}
.has-garden .garden-intro{padding:16px 20px}.has-garden .garden-intro h1{font-size:33px}
.mode-rail{left:24px;top:291px}.has-garden .mode-rail{top:186px}.mode-rail button{min-width:122px;font-size:11px;min-height:46px}
.setting-caption{top:22px;right:20px;bottom:auto;font-size:10px;max-width:220px}
.empty-invitation{left:59%;top:67%;width:285px;padding:21px}.stage-hint{bottom:14px;font-size:10px;max-width:calc(100% - 28px);white-space:normal;width:max-content;text-align:center}
.collection-panel{grid-column:2;grid-row:1;display:flex;min-height:0;min-width:0;border:0;border-left:1px solid #e2dac8;border-radius:0;background:#fffdf7;box-shadow:none;overflow:hidden}
.panel-heading{display:flex;justify-content:space-between;align-items:center;padding:21px 21px 15px;gap:12px;flex-shrink:0}.panel-heading .eyebrow{font-size:8px;margin:0 0 3px}.panel-heading h2{font-family:var(--serif);font-size:33px;font-weight:500;letter-spacing:-.02em;margin:0;line-height:1.05}.panel-heading .icon-button{width:38px;height:38px;flex-shrink:0;border-color:#e9e3d6}.panel-heading .icon-button svg{width:17px;height:17px}
.panel-tabs{display:flex;border-top:1px solid #eee8da;border-bottom:1px solid #e7e0d0;padding:5px 9px;gap:4px;flex-shrink:0}.panel-tabs button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:52px;flex:1;padding:6px 3px;border-radius:6px;background:transparent;color:#737c65;font-size:10px;white-space:nowrap}.panel-tabs button svg{width:19px;height:19px}.panel-tabs button[aria-pressed=true]{background:#e9eedd;color:#445a36}.panel-tabs button:hover{background:#f0f1e7}
.panel-content{flex:1;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#d1cbb7 transparent}.collection-heading{padding:20px 20px 0}.collection-heading .eyebrow{display:none}.collection-heading h3{font-family:var(--serif);font-size:28px;font-weight:500;line-height:1.05;margin:0}.collection-description{font-size:11px;margin:9px 20px 12px;line-height:1.8;color:#6b765e}.category-tabs{margin:0 18px 16px;gap:3px;padding:0 0 10px}.category-tabs button{min-height:44px;padding:8px 6px;font-size:11px;flex:1}
.collection-scroll{padding:0 18px 18px}.piece-grid{padding:0;overflow:visible;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:none}.piece-card{border-color:#e7e0d0;background:#f8f5ed;padding:9px 10px 12px;border-radius:8px}.piece-card canvas{height:77px}.piece-card strong{font-size:20px;font-weight:500;line-height:1.12}.piece-card small{font-size:9px;line-height:1.5;margin-top:5px;color:#6e785f}.piece-card .piece-add{width:22px;height:22px;right:7px;top:7px;font-size:15px}.reflection-list{padding:0;max-height:none;overflow:visible}.reflection-row canvas{height:50px;width:52px}.reflection-row strong{font-size:21px}.reflection-row small{font-size:10px}
.surface-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}.surface-card{position:relative;background:#f6f3e9;border:1px solid #e6dfcf;padding:8px 9px 12px;border-radius:8px;text-align:left;min-width:0}.surface-swatch{display:block;height:59px;border-radius:5px;margin-bottom:9px;background-image:url('./assets/surfaces.webp');background-size:200% 200%;box-shadow:inset 0 0 0 1px #00000012}.surface-sand .surface-swatch{background-position:0 0}.surface-grass .surface-swatch{background-position:100% 0}.surface-gravel .surface-swatch{background-position:0 100%}.surface-moss .surface-swatch{background-position:100% 100%}.surface-pond .surface-swatch{background:radial-gradient(ellipse at 40% 30%,#b4c9b2,#709c8b 45%,#3b6e67 90%);border:4px solid #bab6a0;border-radius:48% 40% 48% 44%;box-shadow:inset 0 1px 8px #223c3533}.surface-card strong{font-family:var(--serif);display:block;font-size:22px;font-weight:500;line-height:1.1}.surface-card small{font-size:9px;color:#727a65;display:block;margin-top:5px;line-height:1.5}.surface-plus{position:absolute;right:13px;top:12px;background:#fff9ebd9;border-radius:50%;width:21px;height:21px;display:grid;place-items:center;color:#5f6f4d}.surface-card:hover{background:#eef1e3;border-color:#aeb99b}
.rake-tools{border-top:1px solid var(--line);padding-top:16px}.rake-tools h4,.settings-content h4{font-family:var(--serif);font-size:22px;font-weight:500;margin:0 0 8px;line-height:1.1}.rake-tools>p{font-size:11px;line-height:1.85;color:#727a65;margin:0 0 13px}.rake-tools .keyboard-note{font-size:9px;line-height:1.8;margin:6px 0 14px;color:#7b806e}.tool-buttons{display:flex;gap:7px;margin:12px 0 17px}.tool-buttons button{min-height:44px;padding:9px 11px;font-size:11px;flex:1}.tool-buttons [aria-pressed=true]{background:#586b48;color:#fffaf1;border-color:#586b48}.area-list{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.area-list button{background:#f1f1e6;border:1px solid #e0e3d0;min-height:44px;padding:7px 10px;font-size:10px;border-radius:5px}.area-list button[aria-pressed=true]{background:#dfe6ce;border-color:#a4b28a}
.settings-content{padding:23px 22px}.settings-content>.eyebrow{font-size:8px;margin-bottom:7px}.settings-content>h3{font-family:var(--serif);font-size:32px;font-weight:500;line-height:1.05;margin:0 0 12px}.panel-description{font-size:11px;line-height:1.9;color:#707b63;margin:0 0 18px}.scene-choices{display:grid;gap:10px;margin:20px 0 24px}.scene-choice{display:flex;align-items:center;gap:12px;padding:7px;background:#f8f5ec;border:1px solid #e4dece;border-radius:7px;text-align:left;min-height:77px}.scene-choice img{width:92px;height:66px;object-fit:cover;border-radius:4px;flex:0 0 92px}.scene-choice strong{font-size:12px;font-weight:500;display:block;line-height:1.5}.scene-choice small{font-size:9px;color:#778169;display:block;line-height:1.65;margin-top:4px}.scene-choice[aria-pressed=true]{border-color:#9baa83;background:#eaf0de}.scene-choice:hover{background:#f0f1e5}
.light-controls{display:flex;justify-content:space-between;gap:5px;padding:0;margin:12px 0 22px;border:0;min-width:0}.light-controls button{flex:1;min-width:0;min-height:65px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;font-size:10px;padding:9px 4px;background:#f3f1e6;border:1px solid #e5e0cf;border-radius:6px}.light-controls button svg{width:22px;height:22px}.light-controls button[aria-pressed=true]{color:#665027;background:#f4e9cc;border-color:#cdb77d}
.range-label{display:block;position:relative;font-size:10px;color:#67745a;line-height:1.5;margin:13px 0}.range-label output{float:right;color:#7e806b;font-size:10px}.range-label input{display:block;width:100%;min-height:30px;accent-color:#748451;margin:4px 0 0;cursor:pointer}.select-label{display:block;font-size:10px;color:#67745a;margin:15px 0}.select-label select{display:block;width:100%;font-family:var(--sans);font-size:12px;min-height:44px;background:#f6f4ea;color:#4b5e3e;border:1px solid #e0dfcd;border-radius:5px;padding:9px 10px;margin-top:7px}.toggle-label{display:flex;align-items:center;gap:10px;font-size:11px;line-height:1.7;color:#627053;min-height:44px;margin:18px 0}.toggle-label input{width:18px;height:18px;accent-color:#647947;flex:0 0 18px}
.sound-controls{display:flex;align-items:center;gap:14px;margin:24px 0}.sound-toggle{width:52px;height:52px;border:1px solid #d8ddc4;background:#eef1e2;color:#647851;border-radius:50%;display:flex;align-items:center;justify-content:center}.sound-toggle[aria-pressed=true]{background:#586b48;color:#fff9ed}.sound-status{display:inline;font-size:12px;color:#69765c}.sound-controls svg{width:24px;height:24px}.full-width{width:100%;margin-top:24px;white-space:normal;line-height:1.6}.garden-actions{display:grid;gap:10px;padding:0;border:0;margin:23px 0 18px}.garden-actions button{font-size:12px;justify-content:center;min-height:48px}.saving-note h4{font-size:22px}.saving-note p{font-size:11px;color:#6e785f}
.selection-controls{border-top:1px solid #dce2cc;background:#f2f4e9;padding:12px 18px 10px;flex-shrink:0;max-height:320px;overflow:auto;scrollbar-width:thin;scrollbar-color:#d1cbb7 transparent}.selection-title{display:flex;align-items:center;gap:9px;min-height:42px}.selection-title canvas{width:47px;height:42px;object-fit:contain;flex:0 0 47px}.selection-title>div{flex:1;min-width:0}.selection-title .eyebrow{font-size:7px;letter-spacing:.1em;margin:0 0 1px;display:block}.selection-title h3{font-family:var(--serif);font-size:23px;font-weight:600;margin:0;line-height:1.1}.selection-title .icon-button{width:32px;height:32px;border:0;flex:0 0 32px}.selection-title .icon-button svg{width:16px;height:16px}.selection-controls .range-label{margin:9px 0 3px}.selection-controls .range-label input{min-height:24px;margin-top:0}.selection-controls .select-label{margin:8px 0}.selection-controls .select-label select{min-height:36px;font-size:11px;margin-top:4px;padding:6px 8px}.range-pair{display:grid;grid-template-columns:1fr 1fr;gap:15px}.selection-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:4px}.nudge-controls{display:flex;gap:4px}.nudge-controls button{width:38px;height:38px;background:#fffdf3;border:1px solid #dde0ca;border-radius:4px}.selection-bottom>.text-button{font-size:10px;padding:5px}.selection-actions{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-top:4px}.selection-actions .quiet-button{min-height:40px;font-size:10px;padding:8px 11px;gap:7px}.selection-actions .quiet-button svg{width:15px;height:15px}.selection-actions .text-button{font-size:10px;padding:4px}
.panel-footnote{display:flex;align-items:center;gap:7px;flex-shrink:0;border-top:1px solid #ebe5d6;padding:9px 13px;font-size:8px;line-height:1.7;color:#7b826c;min-height:46px;background:#fffdf7}.panel-footnote>span:first-child svg{height:15px;width:15px}.panel-footnote>span:nth-child(2){flex:1}.panel-footnote button{min-height:34px;padding:4px 6px;background:transparent;color:#596c45;font-size:10px;text-decoration:underline;text-underline-offset:3px}
.show-panel{position:absolute;z-index:9;right:20px;top:20px;display:flex;align-items:center;gap:8px;background:#fffaf0f0;border:1px solid #ede5cf;padding:11px 14px;border-radius:25px;min-height:46px;font-size:11px;box-shadow:0 4px 16px #0001}.show-panel svg{width:18px;height:18px}.menu-collapsed{grid-template-columns:1fr}.menu-collapsed .setting-caption{top:78px}
.garden-app.is-calm{display:block;padding:0;margin:0;border:0;border-radius:0;overflow:hidden}.is-calm .garden-stage{height:100svh;min-height:100svh}.is-calm .show-panel,.is-calm .rake-cursor{display:none}.is-calm .garden-piece.is-selected{outline:0;background:transparent}.is-calm .calm-message{bottom:18px}.privacy-strip{min-height:25px}
@media(min-width:1600px){.garden-app{grid-template-columns:minmax(0,1fr) 365px;grid-template-rows:minmax(680px,calc(100svh - 142px))}.menu-collapsed{grid-template-columns:1fr}.piece-card canvas{height:88px}}
@media(max-width:1100px) and (min-width:701px){.garden-app{grid-template-columns:minmax(0,1fr) 310px;margin:13px 15px 0;grid-template-rows:minmax(670px,calc(100svh - 142px))}.menu-collapsed{grid-template-columns:1fr}.garden-intro{left:19px;top:20px;max-width:215px;padding:18px}.garden-intro h1{font-size:35px}.has-garden .garden-intro h1{font-size:30px}.mode-rail{left:19px;top:275px}.has-garden .mode-rail{top:177px}.mode-rail button{min-width:110px;padding:10px;gap:8px}.setting-caption{top:20px;right:15px;font-size:0;width:34px;height:34px;padding:9px}.setting-caption svg{width:15px;height:15px;flex:0 0 15px}.setting-caption>span:last-child{display:none}.panel-heading{padding-inline:18px}.panel-heading h2{font-size:31px}.settings-content{padding:22px 18px}.collection-heading h3{font-size:27px}.piece-card canvas{height:67px}.piece-card strong{font-size:19px}.scene-choice img{width:83px;flex-basis:83px}.scene-choice{gap:9px}.empty-invitation{left:59%;width:247px}.stage-hint{font-size:9px}.selection-controls{padding-inline:15px}}
@media(max-width:700px){.garden-app{display:flex;flex-direction:column;gap:0;margin:10px 10px 0;padding:0;border-radius:11px;overflow:hidden}.garden-stage{order:0;flex:none;height:calc(100svh - 175px);min-height:540px;border-radius:0}.collection-panel{order:1;border:0;border-top:1px solid #e2dac8;border-radius:0;flex:none;height:730px;max-height:none;min-height:0}.panel-heading{padding:18px 20px 14px}.panel-heading h2{font-size:33px}.panel-heading .icon-button{width:44px;height:44px}.panel-tabs{padding:5px 14px}.panel-tabs button{font-size:11px;min-height:55px}.panel-tabs button svg{width:20px;height:20px}.collection-heading{padding:20px 20px 0}.collection-description{margin-inline:20px}.category-tabs{margin-inline:18px}.collection-scroll{padding:0 18px 19px}.piece-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:0;overflow:visible;max-height:none}.piece-card canvas{height:66px}.piece-card strong{font-size:18px}.piece-card small{font-size:8px}.reflection-list{max-height:none}.surface-grid{grid-template-columns:1fr 1fr}.surface-swatch{height:76px}.surface-card strong{font-size:24px}.surface-card small{font-size:10px}.settings-content{padding:23px}.scene-choice img{width:105px;height:72px;flex-basis:105px}.scene-choice strong{font-size:13px}.scene-choice small{font-size:10px}.panel-description{font-size:12px}.light-controls{gap:7px;border:0;padding:0;margin:14px 0 20px}.light-controls button{flex-direction:column;min-height:67px;font-size:11px}.sound-controls{margin:22px 0}.sound-status{font-size:13px}.select-label,.range-label{font-size:11px}.range-label input{min-height:36px}.select-label select{min-height:46px;font-size:13px}.garden-actions{display:grid;gap:10px;grid-template-columns:1fr;grid-template-rows:auto}.garden-actions button{font-size:13px}.selection-controls{max-height:350px;padding:12px 20px}.selection-title h3{font-size:25px}.selection-title .eyebrow{font-size:8px}.selection-title .icon-button{width:44px;height:44px;flex-basis:44px}.selection-controls .range-label input{min-height:30px}.selection-controls .select-label select{min-height:44px}.nudge-controls button{width:44px;height:44px}.selection-actions .quiet-button{font-size:11px;min-height:44px}.selection-bottom>.text-button,.selection-actions .text-button{font-size:11px}.panel-footnote{font-size:9px;min-height:48px}.panel-footnote button{min-height:40px;font-size:11px}.garden-intro{top:17px;left:17px;max-width:215px;padding:17px 18px}.garden-intro h1{font-size:35px}.garden-intro .eyebrow{font-size:8px;letter-spacing:.1em}.has-garden .garden-intro{padding:14px 17px}.has-garden .garden-intro h1{font-size:29px}.mode-rail{left:16px;right:16px;top:251px;display:flex;justify-content:space-between;padding:5px}.has-garden .mode-rail{top:157px}.mode-rail button{flex:1;min-width:0;min-height:49px;font-size:9px;flex-direction:column;padding:6px 3px;gap:4px}.mode-rail button svg{width:18px;height:18px}.setting-caption{right:14px;top:17px;width:34px;height:34px;padding:9px;font-size:0}.setting-caption svg{width:15px;height:15px;flex:0 0 15px}.setting-caption>span:last-child{display:none}.empty-invitation{left:50%;top:71%;width:272px;padding:19px}.stage-hint{bottom:13px;font-size:9px;max-width:calc(100% - 25px);width:330px;line-height:1.6}.show-panel{right:14px;top:17px;padding:11px 13px;font-size:10px}.show-panel svg{width:16px;height:16px}.menu-collapsed .setting-caption{top:75px}.menu-collapsed .garden-stage{height:calc(100svh - 120px);min-height:600px}.garden-app.is-calm{margin:0;border:0;border-radius:0}.is-calm .garden-stage{height:100svh;min-height:100svh}.privacy-strip{padding-top:12px}.tool-buttons button{font-size:12px;min-height:46px}.rake-tools>p{font-size:12px}.rake-tools .keyboard-note{font-size:10px}}
@media(max-width:370px){.piece-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.piece-card canvas{height:80px}.collection-panel{height:730px}.panel-tabs button{font-size:10px}.selection-controls{padding-inline:16px}.nudge-controls button{width:40px;height:44px}.garden-stage{min-height:520px}.surface-swatch{height:65px}}
@media(prefers-reduced-motion:reduce){.garden-world{transition:none}}
.piece-dialog.is-bonsai{width:min(640px,calc(100% - 24px));max-height:90svh}.piece-dialog.is-bonsai[open]{display:block}.is-bonsai .dialog-art{display:none}.is-bonsai .dialog-copy{padding:30px 35px 24px}.is-bonsai .dialog-copy h2{font-size:35px;padding-right:18px}.is-bonsai .practice-intro{font-size:12px}.is-bonsai .practice-body{margin-top:15px}.bonsai-workspace{position:relative;aspect-ratio:560/400;border:1px solid #e3e7d3;background:radial-gradient(ellipse at 50% 70%,#e4e9d6,#f5f6eccc 67%);border-radius:10px;overflow:hidden}.bonsai-workspace>canvas{display:block;width:100%;height:auto}.shoot-targets{position:absolute;inset:0}.shoot-target{position:absolute;transform:translate(-50%,-50%);width:44px;height:44px;background:#fff9e7bd;border:1px dashed #6d8255;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 9px #3b512b15;transition:background .2s}.shoot-target svg{width:20px;height:20px;color:#506c3d}.shoot-target:hover,.shoot-target:focus-visible{background:#fff6d8;outline:2px solid #b6a568;outline-offset:2px}.bonsai-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 0 0}.bonsai-actions .quiet-button{font-size:11px;min-height:44px;padding:9px 12px}.bonsai-actions .text-button{font-size:10px}.is-bonsai .story-thread{margin-top:16px;padding-top:14px}.is-bonsai .practice-actions{margin-top:15px}
@media(max-width:700px){.is-bonsai .dialog-copy{padding:26px 22px 22px}.is-bonsai .dialog-copy h2{font-size:31px}.bonsai-workspace{margin-inline:-5px}.bonsai-actions .quiet-button,.bonsai-actions .text-button{font-size:10px}.shoot-target{width:44px;height:44px;background:#fff9e79c}.shoot-target svg{width:17px;height:17px}}
.mobile-preview{display:none}
@media(max-width:700px){.show-panel{width:44px;height:44px;padding:11px;gap:0;font-size:0;border-radius:50%}.show-panel svg{width:20px;height:20px}.setting-caption{display:none}.mobile-preview{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:44px;font-size:11px;margin:7px 0 1px}.selection-controls{max-height:390px}.selection-actions .text-button{white-space:nowrap}}
/* A physical rake, with its tooth tips anchored at the contact point. */
.rake-cursor{position:absolute;z-index:5;height:0;aspect-ratio:auto;border:0;border-radius:0;background:none;box-shadow:none;opacity:1;transform:translate(-50%,0) rotate(var(--rake-angle,-45deg));transform-origin:50% 0;pointer-events:none;will-change:left,top,transform}
.rake-cursor>img{display:block;width:100%;height:auto;max-width:none;transform:translateY(-99%);transform-origin:50% 99%;filter:drop-shadow(4px 11px 5px #3b2d2638);transition:filter .13s,translate .13s;user-select:none}
.rake-cursor.is-drawing>img{filter:drop-shadow(1px 3px 1.3px #4b3a2d60);translate:0 1px}
.rake-cursor.off-sand{opacity:.47}
.is-raking .ground-canvas{cursor:none}
.rake-contact{position:absolute;left:6%;right:6%;top:-5px;height:8px;border-radius:50%;background:radial-gradient(ellipse,#8d76533b,transparent 72%);opacity:0}
.is-drawing .rake-contact{opacity:1}
.rake-tool-thumbnail{width:18px;height:34px;object-fit:contain;rotate:25deg;flex:0 0 18px}
#rake-tool{display:flex;align-items:center;justify-content:center;gap:8px}
@media(max-width:700px){.rake-cursor>img{filter:drop-shadow(3px 8px 3px #3b2d2640)}.rake-cursor.is-drawing>img{filter:drop-shadow(1px 2px 1px #4b3a2d60)}}
@media(prefers-reduced-motion:reduce){.rake-cursor>img{transition:none}}
/* Planting enters the ground; petals retain the Living Gallery's gentle drift. */
.garden-piece.ground-plant::before{content:'';position:absolute;left:8%;right:8%;bottom:0;height:9%;border-radius:50%;background:radial-gradient(ellipse,#3e4b2938,transparent 72%);filter:blur(2px);z-index:-1;pointer-events:none}
.garden-piece.ground-plant canvas{filter:drop-shadow(0 3px 2px #3f422b24)}
.garden-stage[data-light=moon] .ground-plant canvas{filter:brightness(.63) saturate(.75) drop-shadow(0 3px 2px #0003)}
.garden-piece[data-piece=petals]>canvas{opacity:0}
.gallery-petal-drift{position:absolute;inset:0;pointer-events:none}
.gallery-petal-drift>span{position:absolute;display:block;transform:translate(-50%,-50%) rotate(var(--petal-angle));animation:gallery-petal-float 11s ease-in-out infinite alternate;will-change:transform;filter:drop-shadow(0 3px 2px #795c6321)}
.gallery-petal-drift img{display:block;width:100%;height:auto;user-select:none;pointer-events:none}
@keyframes gallery-petal-float{from{transform:translate(-50%,-50%) rotate(var(--petal-angle))}to{transform:translate(calc(-50% + var(--petal-x)),calc(-50% + var(--petal-y))) rotate(calc(var(--petal-angle) + 9deg))}}
.category-tabs{gap:2px}.category-tabs button{min-width:0;font-size:10px;padding:8px 4px}
@media(prefers-reduced-motion:reduce){.gallery-petal-drift>span{animation:none;will-change:auto}}
/* A visible home for sand tools and a clear, reversible removal action. */
.panel-tabs button{padding-inline:4px;font-size:10px}
.category-tabs button{font-size:9px;padding-inline:2px;min-height:44px}
.sand-tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}
.sand-tool-card{display:flex;flex-direction:column;align-items:center;gap:10px;padding:13px 9px 14px;min-height:170px;border:1px solid var(--line);border-radius:9px;background:#fcf9f0}
.sand-tool-card>img{height:89px;width:85px;object-fit:contain;rotate:18deg;filter:drop-shadow(2px 4px 2px #44331a25)}
.sand-tool-card strong{display:block;font-family:var(--serif);font-size:21px;font-weight:600;line-height:1.15}
.sand-tool-card small{display:block;font-size:9px;line-height:1.6;color:var(--muted);margin-top:5px}
.sand-tool-card[aria-pressed=true]{background:#eef0e3;border-color:#7f8e6c;box-shadow:0 0 0 1px #7f8e6c inset}
#panel-sand .practice-note{font-size:10px;line-height:1.75;margin-block:11px 17px}
#panel-sand .keyboard-note{font-size:10px;line-height:1.8;color:var(--muted)}
.sand-shortcut{position:absolute;right:24px;top:77px;z-index:4;display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 13px;background:#fbf6e8f2;border:1px solid #d1bd89;border-radius:24px;font-size:11px;box-shadow:0 4px 14px #55432b12}
.sand-shortcut>img{width:18px;height:27px;object-fit:contain;rotate:25deg}.sand-shortcut svg{width:15px;height:15px}
.is-calm .sand-shortcut{display:none}.sand-link{display:flex;align-items:center;justify-content:center;gap:8px;margin:12px 0 18px;font-size:11px}.sand-link svg{width:17px}
.collection-filter{margin:0 22px 15px;font-size:10px}.collection-filter select{width:100%;margin-top:6px;min-height:40px;font-size:11px}
.selection-bottom{flex-wrap:wrap;gap:9px}.remove-button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;border:1px solid #d9cebc;border-radius:6px;background:#fffaf0;font-size:10px;padding:9px 12px}.remove-button svg{width:16px;height:16px}.remove-button:hover{background:#f2e8d8}
.garden-usage{font-size:11px;line-height:1.8;border-top:1px solid var(--line);padding-top:14px;color:var(--sage)}
.piece-card .catalog-art{display:block;width:100%;height:75px;object-fit:contain;pointer-events:none}.reflection-row .catalog-art{width:62px;height:56px;object-fit:contain;flex:0 0 62px}
.garden-piece>canvas{width:100%}.garden-piece.art-loading>canvas{opacity:0}.garden-piece.art-loading{background:url('./assets/heart.svg') center/24px no-repeat;opacity:.5}
@media(max-width:1100px){.piece-card .catalog-art{height:67px}}
@media(max-width:700px){.panel-tabs button{font-size:11px}.category-tabs button{font-size:10px}.sand-shortcut{right:14px;top:76px;padding:8px 10px;font-size:10px;gap:5px}.sand-shortcut>img{width:15px}.sand-shortcut svg{display:none}.sand-tool-card{min-height:190px}.sand-tool-card>img{height:104px}.sand-tool-card strong{font-size:24px}.sand-tool-card small{font-size:10px}#panel-sand .practice-note,#panel-sand .keyboard-note{font-size:11px}.collection-filter{margin-inline:20px}.collection-filter select{min-height:44px;font-size:12px}.piece-card .catalog-art{height:66px}.selection-bottom .remove-button{flex:1 0 100%;font-size:11px}.selection-bottom{justify-content:center}.selection-controls{max-height:430px}}
@media(prefers-reduced-motion:reduce){.gallery-petal-drift>span{animation:none}}
/* Each placed copy owns its outline and remove button; the controls are siblings. */
.piece-instance{display:contents}
.piece-remove{position:absolute;width:44px;height:44px;min-width:44px;min-height:44px;display:grid;place-items:center;padding:0;transform:translate(-50%,-50%);border:0;border-radius:5px;background:transparent;color:#4b5542;cursor:pointer;touch-action:manipulation;opacity:0;pointer-events:none;transition:opacity .12s}
.piece-remove::before{content:'';position:absolute;inset:8px;background:#fffdf7;border:1px solid #fff;border-radius:3px;box-shadow:0 1px 7px #3f392e40}
.piece-remove>svg{position:relative;width:15px;height:15px;stroke-width:1.7;pointer-events:none}
.piece-instance:focus-within>.piece-remove,:is(.garden-piece,.garden-area).is-selected+.piece-remove{opacity:1;pointer-events:auto}
.piece-instance:focus-within>:is(.garden-piece,.garden-area){outline:1px solid #fffef5;outline-offset:4px;}
.piece-instance:focus-within>.piece-remove{z-index:1101!important}
.piece-instance>:is(.garden-piece,.garden-area):focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.piece-remove:focus-visible{outline:2px solid var(--gold);outline-offset:1px}
.piece-remove:hover::before{background:#fff;box-shadow:0 2px 9px #3f392e55}
@media(hover:hover){.piece-instance:hover>:is(.garden-piece,.garden-area){outline:1px solid #fffef5;outline-offset:4px;}.piece-instance:hover>.piece-remove{opacity:1;pointer-events:auto;z-index:1101!important}.piece-instance:hover .piece-label{opacity:1}}
:is(.garden-piece,.garden-area)[aria-grabbed=true]+.piece-remove{opacity:0;pointer-events:none}
.is-calm .piece-remove,.is-raking .piece-remove{display:none}
@media(prefers-reduced-motion:reduce){.piece-remove{transition:none}}

.piece-instance .piece-label{bottom:calc(100% + 18px)}
/* Selected objects have familiar corner points and a turn handle. */
.piece-transform{position:absolute;display:none;pointer-events:none;z-index:1102!important;transform:translate(-50%,-50%)}
button.piece-transform{width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border:0;background:transparent;touch-action:none;place-items:center;border-radius:4px}
:is(.garden-piece,.garden-area).is-selected~button.piece-transform{display:grid;pointer-events:auto}
:is(.garden-piece,.garden-area).is-selected~.piece-rotation-stem{display:block}
.piece-resize::before{content:'';position:absolute;inset:17px;background:#fff;border:1px solid #fff;box-shadow:0 0 0 1px #65715166,0 1px 4px #3f392e2b;transform:rotate(var(--handle-angle,0deg))}
.piece-rotate{cursor:grab;color:#4b5542}.piece-rotate:active{cursor:grabbing}
.piece-rotate::before{content:'';position:absolute;inset:8px;border:1px solid #fff;border-radius:50%;background:#fffdf7;box-shadow:0 1px 7px #3f392e40}
.piece-rotate>svg{position:relative;width:17px;height:17px;pointer-events:none}
.piece-rotation-stem{width:1px;height:34px;background:#fffef5;transform:translate(-50%,-100%) rotate(var(--handle-angle,0deg));transform-origin:50% 100%;box-shadow:0 0 1px #65715188;z-index:1101!important}
:is(.garden-piece,.garden-area).is-selected+.piece-remove{z-index:1103!important}
.garden-piece.is-selected .piece-label,.is-transforming .piece-label{display:none}
button.piece-transform:focus-visible{outline:2px solid var(--gold);outline-offset:1px}
.piece-resize:hover::before{box-shadow:0 0 0 2px #ad7d35,0 1px 4px #3f392e2b}
.is-raking .piece-transform,.is-calm .piece-transform{display:none!important}

/* The guideline stays above the scene while the artwork respects its layer. */
.piece-outline{display:none;position:absolute;pointer-events:none;border:1px solid #fffef5;border-radius:2px;transform:translate(-50%,calc(-100% + 4px)) rotate(var(--handle-angle,0deg));transform-origin:50% calc(100% - 4px);z-index:1100!important}
:is(.garden-piece,.garden-area).is-selected~.piece-outline,.piece-instance:focus-within>.piece-outline{display:block}
@media(hover:hover){.piece-instance:hover>.piece-outline{display:block}}
.piece-instance:focus-within>:is(.garden-piece,.garden-area),.piece-instance:hover>:is(.garden-piece,.garden-area),.piece-instance>:is(.garden-piece,.garden-area).is-selected{outline:none}
.is-raking .piece-outline,.is-calm .piece-outline{display:none!important}
.piece-layer{cursor:pointer;font-size:15px;color:#4b5542;isolation:isolate}
.piece-layer::before{content:'';position:absolute;inset:11px;border:1px solid #fff;border-radius:3px;background:#fffdf7;box-shadow:0 1px 5px #3f392e30;z-index:-1}
.piece-layer:disabled{opacity:.4}
.finish-controls{border-top:1px solid #dce2cc;margin-top:9px;padding-top:7px}.finish-controls fieldset{border:0;padding:0;margin:0 0 5px}.finish-controls legend{font-size:10px;width:100%;padding:0 0 2px}.finish-controls output{float:right;color:var(--muted);font-size:9px}.finish-swatches{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px}.finish-swatch{min-width:0;width:100%;height:44px;min-height:44px;display:grid;place-items:center;padding:0;background:transparent;border:1px solid transparent;border-radius:6px}.finish-swatch>span{width:24px;height:24px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #aab09855}.finish-swatch .natural-finish{background:conic-gradient(#c5ad81 0 25%,#f5eddf 0 50%,#8d9c76 0 75%,#dbc5a7 0)}.finish-swatch[aria-pressed=true]{border-color:#a18747;background:#fff9e8}.finish-swatch:hover{background:#f8f5e9}.clear-objects-note{font-size:10px;line-height:1.75;color:var(--muted);margin:0 0 8px}.selection-controls{max-height:420px}
@media(max-width:700px){.finish-controls legend{font-size:11px}.finish-controls output{font-size:10px}.selection-controls{max-height:450px}}

.piece-flip{cursor:pointer;color:#4b5542}.piece-flip::before{content:'';position:absolute;inset:10px;border:1px solid #fff;border-radius:3px;background:#fffdf7;box-shadow:0 1px 5px #3f392e30}.piece-flip>svg{position:relative;width:16px;height:16px;pointer-events:none}.piece-flip[aria-pressed=true]::before{background:#e4ead7;border-color:#a1af87}

.garden-stage.has-selection .stage-hint{display:none}

/* Terrain shares the same controls, with a shape-aware, floor-clipped hit target. */
.garden-area{position:absolute;display:block;min-width:0;min-height:0;padding:0;border:0;border-radius:0;background:transparent;transform:translate(-50%,-50%) rotate(var(--rotation,0deg));transform-origin:center;pointer-events:auto;touch-action:none;user-select:none;cursor:grab}
.garden-area[aria-grabbed=true]{cursor:grabbing}
.is-raking .garden-area,.is-calm .garden-area{pointer-events:none}
.moon{width:clamp(44px,5vw,64px);height:auto;aspect-ratio:1;background:transparent;box-shadow:none}
.moon::before{content:'';position:absolute;inset:-65%;background:radial-gradient(circle,#e6e9f21a 0,#dce4ef0b 32%,transparent 69%);border-radius:50%;pointer-events:none}
.moon img{position:relative;display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 5px #e9e9db4d);opacity:.94}

/* One garden menu: activities above tools; the scene stays open. */
.panel-heading{padding:14px 14px 10px;gap:8px}
.menu-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:4px;flex:1;min-width:0;background:#f0f0e7;border:1px solid #e4e4d5;border-radius:9px}
.menu-modes button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:50px;padding:7px 4px;background:transparent;border-radius:6px;color:#68725e;font-size:11px;white-space:nowrap;transition:background .15s,color .15s}
.menu-modes button svg{height:18px;width:18px;stroke-width:1.5}
.menu-modes button[aria-pressed=true]{background:var(--sage);color:#fffdf4;box-shadow:0 1px 4px #3c4b3624}
.menu-modes button:hover:not([aria-pressed=true]){background:#e6e9da}
.panel-heading .icon-button{width:44px;height:44px;flex:0 0 44px;border:0;color:#777b6b}
.panel-tabs{padding:3px 13px 7px;gap:4px;border-top:0}
.panel-tabs button{flex-direction:row;gap:6px;min-height:44px;font-size:11px;padding:7px 4px}
.panel-tabs button svg{height:16px;width:16px}
.panel-tabs button[aria-pressed=true]{background:#f0ebdc;color:#6b5c35}
.collection-heading{padding-top:20px}.collection-heading h3{font-size:27px}
.collection-description{margin-top:8px;margin-bottom:14px}
.selection-controls{background:#f7f6ed;border-top:1px solid #e3dfcc;padding:12px 18px 14px;max-height:310px}
.selection-title .icon-button{width:44px;height:44px;flex-basis:44px}
.selection-title .eyebrow{font-size:8px;letter-spacing:.07em}
.selection-title h3{font-size:23px}
.selection-controls .range-label input{min-height:44px}
.selection-controls .select-label select{min-height:44px}
.selection-controls .finish-controls{border:0;margin-top:6px;padding-top:0}
:is(.garden-piece,.garden-area).is-selected~.piece-actions{display:flex;pointer-events:auto}
.piece-actions{align-items:center;justify-content:center;padding:2px 3px;min-height:48px;background:#fffdf7f5;border:1px solid #fff;border-radius:7px;box-shadow:0 2px 12px #2c32272b;gap:0;touch-action:manipulation}
.piece-actions .piece-action{position:relative;display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;background:transparent;border:0;border-radius:5px;color:#4f5d46;touch-action:manipulation;transform:none;cursor:pointer;pointer-events:auto}
.piece-actions .piece-action::before{content:'';position:absolute;inset:5px;background:transparent;border:0;border-radius:4px;box-shadow:none}
.piece-actions .piece-action>svg{position:relative;width:17px;height:17px;pointer-events:none}
.piece-actions .piece-action:hover::before{background:#eceede}
.piece-actions .piece-flip[aria-pressed=true]::before,.piece-actions .piece-options[aria-expanded=true]::before{background:#e4ead7}
.piece-actions .piece-action:focus-visible{outline:2px solid var(--gold);outline-offset:-3px}
.is-reflecting .piece-transform,.is-reflecting .piece-remove,.is-reflecting .piece-outline{display:none!important}
.surface-koi-pond .surface-swatch{background:#6d8e74 url('./assets/koi-pond-preview.webp') center/cover;border:3px solid #b8b39b;border-radius:48% 40% 48% 44%}
@media(max-width:700px){.panel-heading{padding:13px 14px 9px}.menu-modes button{min-height:52px;font-size:12px}.panel-tabs{padding:3px 16px 8px}.panel-tabs button{font-size:11px}.collection-heading h3{font-size:27px}.selection-controls{max-height:320px;padding:12px 18px}.selection-title h3{font-size:23px}.collection-panel{height:680px}.piece-actions .piece-action>svg{width:18px;height:18px}}
.fabric-note{font-size:10px;line-height:1.7;margin:3px 0 0;color:#727a66}.fabric-current{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:40px;margin-bottom:6px}.finish-controls .fabric-current output{float:none;font-size:11px;color:#58634d}.fabric-original{min-height:44px;padding:6px 8px;background:transparent;color:#6f785f;border-radius:5px;font-size:10px;text-decoration:underline;text-underline-offset:3px}.fabric-original[aria-pressed=true]{text-decoration:none;color:#526044;background:#e9ecdf}.fabric-textures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.fabric-texture{display:flex;flex-direction:column;align-items:stretch;gap:6px;min-height:84px;min-width:0;background:#fffdf5;border:1px solid #dfdfcf;border-radius:7px;padding:5px 5px 7px;color:#556348}.fabric-texture>canvas{display:block;height:30px;width:100%;border-radius:4px;box-shadow:inset 0 0 6px #36452d22;object-fit:cover}.fabric-texture>span{display:flex;flex-direction:column;align-items:center;gap:2px}.fabric-texture strong{font-size:10px;line-height:1.3;font-weight:500}.fabric-texture small{font-size:9px;line-height:1.3;white-space:normal}.fabric-texture:hover{border-color:#aab394;background:#f9f8ee}.fabric-texture[aria-pressed=true]{border-color:#a58a49;box-shadow:0 0 0 1px #a58a4944;background:#f2f1e3}.fabric-texture:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.selection-controls{max-height:490px}.selection-controls .finish-controls output{font-size:10px}
@media(max-width:700px){.fabric-texture strong,.fabric-texture small{font-size:10px}.fabric-note{font-size:11px}.selection-controls{max-height:490px}}
/* Tending is a visible activity, with a still tool and one deliberate cut. */
.panel-tabs{padding-inline:9px;gap:2px}.panel-tabs button{font-size:10px;gap:4px;min-width:0}
.tend-preview{position:relative;display:flex;justify-content:center;align-items:center;min-height:190px;margin:5px 0 17px;background:radial-gradient(ellipse at 50% 72%,#e7ebd9,#f8f7ef 70%);border:1px solid #e6e6d8;border-radius:10px}.tend-preview>img:first-child{width:80%;height:180px;object-fit:contain;image-rendering:auto}.tend-preview>img:last-child{position:absolute;right:8px;bottom:8px;width:70px;height:70px;object-fit:contain;transform:rotate(-8deg)}
.piece-dialog.is-bonsai{width:min(850px,calc(100% - 24px));max-height:94svh}.is-bonsai .dialog-copy{padding:27px 32px 24px}.is-bonsai .practice-intro{max-width:650px}.bonsai-workspace{aspect-ratio:780/560;background:radial-gradient(ellipse at 50% 76%,#dee5cd,#f5f5e9 68%);border-color:#dfe4d1;box-shadow:inset 0 -15px 30px #dee5cc55}.bonsai-workspace>canvas:not(.cut-sprig){display:block;width:100%;height:auto}.shoot-target{background:transparent;border:0;border-radius:50%;box-shadow:none}.shoot-target::before{content:'';width:8px;height:8px;border-radius:50%;background:#fcf7d9bb;box-shadow:0 0 0 1px #64745066,0 1px 5px #2b3b232b;position:absolute;left:18px;top:18px}.shoot-guide{display:none;position:absolute;left:6px;right:6px;top:21px;border-top:2px dashed #fff9db;transform:rotate(-30deg);filter:drop-shadow(0 1px 1px #20321b)}.shoot-target:hover,.shoot-target:focus-visible{background:#eef2de18;outline:1px solid #fffae6;outline-offset:-3px}.shoot-target:is(:hover,:focus-visible,.is-previewing) .shoot-guide{display:block}.shoot-target:is(:hover,:focus-visible,.is-previewing)::before{opacity:0}.bonsai-shears{position:absolute;width:116px;height:116px;object-fit:contain;pointer-events:none;opacity:0;transform:translate(-8%,-10%);filter:drop-shadow(2px 3px 2px #25321b33);z-index:3}.bonsai-shears.is-visible{opacity:1}.cut-sprig{position:absolute;height:auto;pointer-events:none;z-index:2;animation:bonsai-snip-fall .9s ease-in forwards;transform-origin:25% 75%}
@keyframes bonsai-snip-fall{from{opacity:1;transform:translate(-25%,-72%) rotate(var(--sprig-angle))}to{opacity:0;transform:translate(18%,90%) rotate(calc(var(--sprig-angle) + 52deg))}}
.guided-breath{display:grid;place-items:center;min-height:180px;position:relative;padding:26px 0}.breath-orbit{width:105px;height:105px;border:1px solid #aeb994;border-radius:50%;background:radial-gradient(circle,#ecedda,#d4dfbd);box-shadow:0 0 0 14px #e8eddc66;transform:scale(.78);transition:transform var(--breath-time,4s) ease-in-out}.guided-breath.is-breathing[data-phase=in] .breath-orbit{transform:scale(1.08)}.guided-breath.is-breathing[data-phase=out] .breath-orbit{transform:scale(.78)}.breath-prompt{position:relative;font-family:var(--serif);font-size:21px;text-align:center;margin:25px 0 0;color:#526147}.guided-card{padding:20px;border:1px solid #e0e4d2;border-radius:9px;background:#f5f5eb}.guided-card h3{font-family:var(--serif);font-size:27px;font-weight:500;line-height:1.2;margin:8px 0 12px}.guided-card p{font-size:12px;line-height:1.9;color:#647058}.guided-step-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px}.practice-picker{margin:16px 0 0}.practice-picker select{min-height:44px;font-size:12px}.practice-sources{margin:16px 0;color:#647058;font-size:11px;line-height:1.8}.practice-sources summary{cursor:pointer;min-height:44px;display:flex;align-items:center}.practice-sources a{color:#627246;text-underline-offset:3px}.thought-stream{position:relative;height:140px;overflow:hidden;border-radius:9px;background:repeating-radial-gradient(ellipse at 20% 60%,#d5e3d566 0 5px,#e9efdf88 7px 24px)}.thought-leaf{position:absolute;top:45%;left:30%;width:44px;height:24px;border-radius:100% 0 100% 0;background:linear-gradient(140deg,#a3b474,#6b874e);transform:rotate(-25deg);box-shadow:0 5px 4px #55674722}.is-drifting .thought-leaf{animation:thought-drift 5s ease-out forwards}@keyframes thought-drift{to{left:110%;top:26%;transform:rotate(20deg);opacity:.1}}
@media(max-width:700px){.panel-tabs button{font-size:10px;gap:4px}.panel-tabs button svg{width:15px;height:15px}.is-bonsai .dialog-copy{padding:23px 18px}.is-bonsai .dialog-copy h2{font-size:30px}.bonsai-workspace{margin-inline:-7px}.bonsai-shears{width:85px;height:85px}.bonsai-actions{flex-wrap:wrap;gap:7px}.guided-card{padding:17px}.guided-card h3{font-size:26px}.guided-card p{font-size:12px}}
@media(prefers-reduced-motion:reduce){.cut-sprig{display:none}.breath-orbit{transition:none;transform:none!important}.is-drifting .thought-leaf{animation:none;left:65%}}
.bonsai-workspace{aspect-ratio:780/500}
@media(max-width:700px){.show-panel{width:auto;height:44px;padding:9px 12px;font-size:11px;border-radius:24px;gap:7px}.show-panel svg{width:18px;height:18px}}
.stone-controls .natural-finish{background:radial-gradient(circle at 30% 25%,#d1d0c4,#92978e 65%,#6e756d)}

/* Give the requested fabric library the menu space while it is open. */
.collection-panel:has(#selection-controls:not([hidden]) #finish-controls:not([hidden]) #fabric-controls:not([hidden])) #panel-build{display:none}
.collection-panel:has(#selection-controls:not([hidden]) #finish-controls:not([hidden]) #fabric-controls:not([hidden])) .selection-controls{flex:1;min-height:0;max-height:none}

/* Ready-made gardens remain ordinary editable layouts. */
.preset-choices{display:grid;gap:10px;margin:12px 0}.preset-choice{display:grid;grid-template-columns:126px minmax(0,1fr);align-items:center;gap:12px;min-height:116px;padding:6px;background:#f7f4eb;color:#4e6043;border:1px solid #dedbc9;border-radius:9px;text-align:left}.preset-choice>img{display:block;width:126px;height:106px;object-fit:cover;border-radius:6px}.preset-choice>span{padding-right:5px;min-width:0}.preset-choice strong{display:block;font-family:var(--serif);font-weight:500;font-size:21px;line-height:1.15}.preset-choice small{display:block;font-size:10px;line-height:1.6;color:#727b64;margin-top:7px}.preset-choice[aria-pressed=true]{border-color:#9fae84;background:#e9efdd;box-shadow:0 0 0 1px #a4b58744}.preset-choice:hover{background:#eff0e3}.preset-note{font-size:10px;color:#747d67;line-height:1.7;margin:5px 0 10px}.blank-scene-details,.view-light-options{border-top:1px solid #e3e0d0;padding-top:5px;margin:14px 0}.blank-scene-details>summary,.view-light-options>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px;font-size:12px;color:#5c6a4e}.blank-scene-details>summary::before,.view-light-options>summary::before{content:'+';font-size:18px;color:#8e7845}.blank-scene-details[open]>summary::before,.view-light-options[open]>summary::before{content:'−'}.blank-scene-details .scene-choices{margin:7px 0 16px}.view-light-options{margin-top:0;margin-bottom:18px}.view-light-options .light-controls{margin:9px 0 15px}.panel-tabs .menu-empty{flex:0 0 44px;min-width:44px;min-height:44px;align-self:center;border-left:1px solid #e4dfcd;border-radius:0 5px 5px 0;color:#7d765f}.panel-tabs .menu-empty:hover{background:#f0e8d8;color:#765540}.panel-tabs .menu-empty svg{width:18px;height:18px}
.welcome-dialog{padding:0;border:1px solid #eee5d0;border-radius:16px;background:#fffdf5;width:min(760px,calc(100% - 28px));max-height:94svh;color:#536249;box-shadow:0 20px 80px #17221566;overflow:auto}.welcome-dialog::backdrop{background:#17231a91;backdrop-filter:blur(5px)}.welcome-dialog .dialog-close{position:absolute;z-index:2;right:14px;top:14px;background:#fffdf3eb;width:44px;height:44px;border-color:#fff9ef}.welcome-picture{height:190px;overflow:hidden;border-radius:15px 15px 0 0;background:#d3b77b}.welcome-picture img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 39%}.welcome-copy{padding:27px 32px 24px}.welcome-copy>.eyebrow{font-size:9px;letter-spacing:.13em;margin:0 0 7px}.welcome-copy h2{font-family:var(--serif);font-size:40px;font-weight:500;line-height:1.1;margin:0 0 13px;color:#4c5a40}.welcome-copy>p{font-size:12px;line-height:1.8;margin:0 0 13px;color:#6c775f}.welcome-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:20px 0}.welcome-steps>div{padding:15px 13px;background:#f3f4e9;border:1px solid #e4e6d6;border-radius:8px}.welcome-steps svg{width:24px;height:24px;color:#7b875b}.welcome-steps h3{font-family:var(--serif);font-size:21px;font-weight:500;margin:8px 0 7px;line-height:1.2}.welcome-steps p{font-size:10px;line-height:1.8;margin:0;color:#6d785e}.welcome-copy .welcome-note{font-size:11px}.welcome-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin:19px 0 10px}.welcome-actions button{min-height:46px;font-size:12px}.welcome-copy .welcome-return{font-size:10px;margin:0;color:#929680}
@media(max-width:700px){.preset-choice{grid-template-columns:132px minmax(0,1fr)}.preset-choice>img{width:132px;height:110px}.preset-choice strong{font-size:23px}.preset-choice small,.preset-note{font-size:11px}.panel-tabs{padding-inline:7px}.panel-tabs .menu-empty{flex-basis:44px}.welcome-picture{height:135px}.welcome-copy{padding:22px 20px}.welcome-copy h2{font-size:33px}.welcome-copy>p{font-size:12px}.welcome-steps{grid-template-columns:1fr;gap:7px;margin:15px 0}.welcome-steps>div{display:grid;grid-template-columns:30px 1fr;gap:0 10px;padding:11px 12px}.welcome-steps>div>span{grid-row:1/3;align-self:center}.welcome-steps h3{font-size:20px;margin:0 0 4px}.welcome-steps p{font-size:11px;line-height:1.65}.welcome-actions{gap:8px 17px;margin-top:14px}.welcome-copy .welcome-return{font-size:10px}.welcome-actions .primary-button{padding-inline:15px}}

/* Direct moon editing keeps the existing lunar texture and night environment. */
.moon{right:auto;transform:translate(-50%,-50%);aspect-ratio:1;z-index:4;pointer-events:none}.moon #moon-image{display:none}.moon::before{opacity:1}.moon[data-phase=crescent]::before{opacity:.28}.moon[data-phase=new]::before{opacity:0}.moon button{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:0;background:transparent;padding:0;color:#fff8df;touch-action:none;pointer-events:none}.moon.is-editable #moon-move{pointer-events:auto;cursor:grab}.moon #moon-move{width:max(44px,var(--moon-size));height:max(44px,var(--moon-size));border-radius:50%}.moon canvas{display:block;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:var(--moon-size);height:var(--moon-size);filter:drop-shadow(0 0 3px #e9e9db3d);pointer-events:none}.moon[data-phase=new] canvas{filter:none}.moon .moon-resize{display:none;left:100%;top:100%;width:44px;height:44px;border-radius:5px;font-size:18px;text-shadow:0 1px 3px #000;cursor:nwse-resize}.moon.is-editable:hover .moon-resize,.moon.is-editable:focus-within .moon-resize,.moon.is-moving .moon-resize{display:block;pointer-events:auto;background:#fffdf52b;border:1px solid #fffdf5b0}.moon.is-editable #moon-move:focus-visible,.moon.is-moving #moon-move{outline:1px dashed #fffdf5;outline-offset:4px}.moon-settings{padding:12px 0 5px;border-bottom:1px solid var(--line);margin:8px 0 15px}.moon-settings .practice-note{margin:3px 0 9px}.piece-dialog.is-focused-reflect .story-thread,.piece-dialog.is-focused-reflect #place-only{display:none!important}

/* Heart Garden's journal-like menu: a small signature, quiet chapters and botanical plates. */
.collection-panel{background:#fbf8ef;border-left:1px solid #ddd3b9}.panel-heading{display:grid;grid-template-columns:1fr 44px;gap:5px 8px;padding:13px 17px 0;background:#fbf8ef}.menu-signature{margin:0;display:flex;align-items:center;gap:8px;color:#88713f;font:italic 18px/1.3 var(--serif)}.menu-signature svg{width:20px;height:20px;stroke-width:1.25}.panel-heading #hide-panel{grid-column:2;grid-row:1;color:#7e8169}.menu-modes{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:0;border:0;border-bottom:1px solid #dfd5bb;border-radius:0;background:transparent}.menu-modes button{position:relative;min-height:59px;padding:8px 4px 13px;background:transparent;border-radius:0;color:#757c65;font-size:11px}.menu-modes button svg{width:23px;height:23px;stroke-width:1.3}.menu-modes button:hover{background:#f3eedf}.menu-modes button[aria-pressed=true]{color:#4d6141;background:transparent}.menu-modes button[aria-pressed=true]::after{content:'';position:absolute;bottom:0;left:16px;right:16px;height:2px;background:#b39958}.panel-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 5px;padding:8px 17px;border-top:0;border-bottom:1px solid #dfd5bb;background:#f5f0e3}.panel-tabs button{display:flex;flex-direction:row;justify-content:flex-start;gap:7px;min-height:44px;padding:5px 6px;font-size:11px;color:#677253;background:transparent;border-radius:4px;white-space:nowrap}.panel-tabs button svg{width:18px;height:18px;flex:0 0 18px;stroke-width:1.35}.panel-tabs button[aria-pressed=true],.panel-tabs button:hover{background:#eae4d2;color:#4a5b3d}.panel-tabs .menu-empty{border:0;min-width:0;width:auto;justify-content:flex-start;color:#8b7a57}.collection-heading{padding-top:19px}.collection-heading h3{font-weight:500;line-height:1.05}.collection-description{color:#747b63}.category-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 7px;border:0;margin-bottom:10px;padding-bottom:5px}.category-tabs button{background:transparent;border:0;border-bottom:1px solid #e9e0ca;border-radius:0;min-height:44px;padding:7px 2px;font-size:11px;color:#798167}.category-tabs button[aria-pressed=true]{color:#536343;background:#f0ebdb;border-bottom-color:#b59a58}.piece-grid{gap:12px}.piece-card{border:0;border-bottom:1px solid #e3d8bd;border-radius:2px;background:linear-gradient(180deg,#fffdf6,#f3eee1);padding:10px 9px 12px;box-shadow:none}.piece-card:hover{background:#eee9d8;border-color:#baaa7b}.piece-card .catalog-art{height:90px;margin-bottom:7px}.piece-card strong{font:500 20px/1.05 var(--serif)}.piece-card small{font-size:10px;color:#7b8068}.piece-card .piece-add{background:#fffaf0;border-color:#dccfae;color:#9b8550}.reflection-row{border-bottom-color:#e4dbc4;padding:13px 0}.reflection-row strong{font:500 23px/1.05 var(--serif);color:#526342}.reflection-row small{color:#7d826b;font-size:10px}.reflection-row::after{content:'↗';font-size:19px;color:#ae9659}.reflection-row .catalog-art{width:65px;height:62px;flex-basis:65px}.reflection-row:hover{background:#f4eedf}.panel-footer{border-top-color:#e5dbc3;background:#f8f3e6}
@media(max-width:700px){.panel-heading{padding:13px 17px 0}.menu-signature{font-size:19px}.menu-modes button{min-height:58px}.panel-tabs{padding:7px 17px}.panel-tabs button{min-height:46px}.piece-card .catalog-art{height:96px}.category-tabs button{font-size:12px}.collection-panel{height:760px}.menu-modes button[aria-pressed=true]{background:transparent}}
/* Keep the garden chapters visible while the botanical collection scrolls. */
#panel-build:not([hidden]){display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;padding-bottom:0}#panel-build>.collection-heading,#panel-build>.collection-description,#panel-build>.category-tabs,#panel-build>.collection-filter{flex-shrink:0}.collection-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:12px}.collection-panel:has(#selection-controls:not([hidden])) #panel-build{display:none!important}.collection-panel .selection-controls:not([hidden]){flex:1;min-height:0;max-height:none;overflow-y:auto}

/* Garden readability and clear recovery controls. */
#collection-panel{--muted:#4c594d}
#collection-panel :is(.piece-card small,.reflection-row small,.collection-description,.panel-description,.collection-filter,.category-tabs button,.panel-tabs button,.menu-modes button,.panel-footnote,#save-status){color:#4c594d}
#collection-panel .piece-card small{font-size:11px;line-height:1.55}
#collection-panel .category-tabs button{font-size:11px}
#collection-panel .panel-footnote{min-height:62px;padding:8px 12px;font-size:10px;gap:9px}
#collection-panel #undo-edit{align-items:center;background:#344d40;border:1px solid #344d40;border-radius:7px;color:#fffaf1;display:inline-flex;flex:none;font-size:12px;font-weight:500;gap:7px;justify-content:center;min-height:44px;padding:9px 12px;text-decoration:none}
#collection-panel #undo-edit svg{height:18px;width:18px}
#collection-panel #undo-edit:disabled{background:#edf0e7;border-color:#c6cebc;color:#63715c;opacity:1}
#collection-panel #undo-edit:not(:disabled):hover{background:#243c30}
.garden-stage .stage-hint{transition:opacity 220ms ease}
.garden-stage.has-interacted .stage-hint{opacity:0;pointer-events:none}
@media(prefers-reduced-motion:reduce){.garden-stage .stage-hint{transition:none}}

#stylus-tool{grid-column:1/-1;flex-direction:row;min-height:92px;text-align:left;justify-content:center}
#stylus-tool>img{width:30px;height:68px}
