:root{--ink:#2f402d;--muted:#66715f;--green:#526d42;--light:#edf1e7;--paper:#fffdf8;--bg:#f7f4ec;--line:#e2e4d8;--peach:#f4e5d2;--radius:22px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:"PingFang TC","Microsoft JhengHei",sans-serif;font-size:15px;line-height:1.7}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid var(--line);border-radius:99px;padding:11px 22px;background:var(--paper);color:var(--ink);font-weight:600;transition:background .2s,transform .2s}button:hover,.btn:hover{background:var(--light);transform:translateY(-1px)}button.primary,.btn.primary{color:#fff;background:var(--green);border-color:var(--green)}button:disabled{opacity:.5;cursor:default}button.small,.btn.small{padding:6px 15px;font-size:13px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #ad7b42;outline-offset:4px}.skip{position:fixed;left:15px;top:-60px;z-index:50;background:white;padding:15px}.skip:focus{top:5px}header{height:88px;padding:0 max(4%,calc((100% - 1280px)/2));display:flex;align-items:center;gap:35px;background:#fffdf8;border-bottom:1px solid var(--line)}.brand{font-family:"Noto Serif TC","Songti TC",serif;font-size:25px;font-weight:700;letter-spacing:3px;display:flex;align-items:center;gap:11px;white-space:nowrap}.brand small{display:block;font-family:Arial,sans-serif;font-size:8px;letter-spacing:3px;font-weight:400;line-height:1.2}.brandmark{font-size:38px;color:var(--green)}nav{display:flex;align-items:center;gap:24px;flex:1;justify-content:center}nav a{font-size:14px;white-space:nowrap;position:relative;padding:28px 0}nav a.active{font-weight:700;color:var(--green)}nav a.active:after{content:'';position:absolute;height:3px;background:var(--green);bottom:16px;left:0;right:0}.profile{border:1px solid var(--line);padding:8px 16px;border-radius:99px;font-size:13px;white-space:nowrap}.menu{display:none}.demo{background:#e9eee2;text-align:center;font-size:11px;letter-spacing:.5px;padding:5px 16px;color:#526048}.demo span{margin-left:13px;color:#626c5d}main{max-width:1280px;margin:0 auto;padding:32px 24px 64px;min-height:70vh}h1,h2,h3,p{margin-top:0}h1,h2{font-family:"Noto Serif TC","Songti TC",serif;font-weight:600}h1{font-size:40px;line-height:1.4;letter-spacing:2px;margin-bottom:12px}h2{font-size:26px;letter-spacing:1px;margin-bottom:16px}h3{font-size:18px;margin-bottom:7px}p{color:var(--muted)}.hero{height:500px;border-radius:28px;background:#e8eddf url('assets/garden.png') 50% 56%/cover;position:relative;overflow:hidden;display:flex;align-items:flex-start;padding:48px}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,253,244,.94),rgba(255,253,244,.65) 35%,transparent 66%)}.hero-copy{position:relative;max-width:510px}.eyebrow{font-size:12px;letter-spacing:3px;color:#687a58;margin-bottom:14px}.hero h1{font-size:42px;line-height:1.5}.hero p{font-size:16px;max-width:370px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.hero-note{position:absolute;bottom:22px;right:25px;border-radius:18px;background:#fffcf2ed;padding:14px 20px;max-width:280px;font-size:13px}.hero-note b{display:block;font-size:16px}.quick{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:24px 0 44px}.quick a{padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);display:flex;gap:14px;align-items:center}.quick .number{font-family:serif;font-size:30px;color:#95a17e}.quick strong{display:block}.quick small{color:var(--muted)}.sectionhead{display:flex;justify-content:space-between;align-items:center;margin:20px 0}.sectionhead h2{margin:0}.sectionhead a{font-size:13px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:24px}.card p:last-child{margin-bottom:0}.petart{height:190px;background:#e9eddc url('assets/garden.png') center 70%/cover;border-radius:17px;margin:-8px -8px 18px;position:relative}.petart.cat{background-position:70% 75%;background-size:180%}.petart.dog{background-position:38% 76%;background-size:165%}.petart .accessory{position:absolute;top:20%;left:45%;font-size:60px;filter:drop-shadow(0 3px 2px #544a3b55)}.tag{display:inline-flex;font-size:11px;padding:3px 10px;border-radius:99px;background:var(--light);color:#526844;margin:0 5px 6px 0}.muted{color:var(--muted)}.subtle{font-size:12px;color:var(--muted)}.row{display:flex;gap:12px;align-items:center}.spread{justify-content:space-between}.avatar{width:42px;height:42px;border-radius:50%;background:#e6ead9 url('assets/garden.png') 40% 72%/350%;flex-shrink:0}.avatar.cat{background-position:67% 72%}.posthead{margin-bottom:17px}.posthead strong{display:block;font-size:14px}.posthead small{color:var(--muted);font-size:11px}.posttext{font-size:16px;color:var(--ink);line-height:1.9;min-height:60px}.event{padding:11px 15px;background:#f0f2e9;border-radius:12px;font-size:12px;margin-bottom:18px}.postfoot{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px}.postfoot button{background:none;border:0;padding:4px 0;font-size:12px}.pageintro{margin:15px 0 30px}.pageintro p{max-width:700px;margin-bottom:0}.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:26px}.feed{display:grid;gap:18px}.side{display:flex;flex-direction:column;gap:20px}.toolbar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}.toolbar button.active{background:var(--green);color:white;border-color:var(--green)}input,textarea,select{padding:12px 14px;border:1px solid #c8cebf;border-radius:12px;background:#fffefa;color:var(--ink);width:100%}textarea{resize:vertical;min-height:115px}label{display:block;font-size:13px;font-weight:600;margin:18px 0 7px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.formgrid .full{grid-column:1/-1}.formcard{max-width:850px}.search{max-width:300px;margin-left:auto}.divider{height:1px;background:var(--line);margin:25px 0}.notice{padding:16px 20px;background:var(--light);border-radius:14px;font-size:13px;margin:18px 0}.empty{text-align:center;padding:45px 20px}.petprofile{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.petprofile .petart{height:360px;margin:0}.petprofile h2{font-size:34px}.quote{font-family:serif;font-size:20px;line-height:1.8;color:#58664b;border-left:3px solid #b4c099;padding-left:20px}.itemgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.item{padding:20px;text-align:center;border:1px solid var(--line);background:var(--paper);border-radius:18px}.item.selected{border:2px solid var(--green);background:var(--light)}.item .icon{font-size:44px;display:block;margin-bottom:10px}.item p{font-size:12px;margin-bottom:12px}.balance{font-size:26px;font-family:serif}.chatlayout{display:grid;grid-template-columns:260px 1fr;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:var(--paper)}.threads{padding:20px;background:#f0f2e9}.threads button{width:100%;border:0;justify-content:flex-start;text-align:left;margin:5px 0;border-radius:14px}.threads button.active{background:#fffdf8}.chatpane{min-height:520px;display:flex;flex-direction:column}.chatheader{padding:18px 24px;border-bottom:1px solid var(--line)}.chatbody{padding:24px;flex:1;max-height:450px;overflow:auto}.bubble{max-width:80%;padding:13px 18px;border-radius:18px 18px 18px 2px;background:#eef1e8;margin-bottom:12px;width:fit-content}.bubble.mine{margin-left:auto;background:#dfe8d6;border-radius:18px 18px 2px 18px}.chatcomposer{padding:18px 24px;border-top:1px solid var(--line);display:flex;gap:10px}.chatcomposer button{flex-shrink:0}.setting{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}.setting p{margin:4px 0 0;font-size:13px}.setting input[type=checkbox]{width:22px;height:22px;accent-color:var(--green)}footer{padding:35px max(5%,calc((100% - 1232px)/2));border-top:1px solid var(--line);display:flex;gap:25px;align-items:center;flex-wrap:wrap;background:var(--paper);font-size:12px;color:var(--muted)}footer .brand{font-size:18px}footer p{margin:0}footer span{width:100%;font-size:11px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#34452d;color:white;padding:12px 24px;border-radius:15px;opacity:0;pointer-events:none;transition:opacity .2s;z-index:100;max-width:90vw;font-size:14px}#toast.show{opacity:1}dialog{border:0;border-radius:24px;background:var(--paper);padding:30px;width:min(530px,90vw);box-shadow:0 20px 80px #0003;color:var(--ink)}dialog::backdrop{background:#24312077;backdrop-filter:blur(3px)}dialog .close{float:right;padding:4px 13px}.comments{padding:15px;background:var(--light);border-radius:12px;margin-top:10px}.comments p{font-size:13px;margin-bottom:8px}.uploadpreview{width:90px;height:90px;border-radius:18px;object-fit:cover;display:block;margin-top:10px}.actualphoto{width:100%;height:100%;object-fit:cover;border-radius:inherit}.warning{color:#83562e}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:1100px){header{gap:15px;padding:0 24px}nav{gap:16px}nav a{font-size:12px}.brand{font-size:21px}.profile{display:none}.hero h1{font-size:36px}.hero{height:470px;padding:35px}.quick a{padding:15px}.quick .number{display:none}}@media(max-width:768px){header{height:72px;justify-content:space-between;padding:0 20px;position:relative;z-index:5}.menu{display:block;padding:5px 12px}nav{display:none;position:absolute;top:71px;left:0;right:0;background:var(--paper);padding:10px 20px;flex-wrap:wrap;box-shadow:0 10px 20px #0001}nav.open{display:flex}nav a{padding:10px 5px;font-size:14px}nav a.active:after{bottom:0}.demo{font-size:10px}.demo span{display:none}main{padding:20px 16px 40px}h1{font-size:30px}.hero{height:580px;padding:27px 23px;background-position:57% 100%;background-size:auto 80%;background-repeat:no-repeat;background-color:#edf0e1}.hero:before{background:linear-gradient(#fffdf4 2%,#fffdf4ed 20%,#fffdf477 43%,transparent 62%)}.hero h1{font-size:31px}.hero p{font-size:14px;max-width:300px}.hero-note{font-size:11px;bottom:16px;right:16px;padding:11px 14px}.hero-note b{font-size:13px}.quick{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:30px}.quick a{padding:14px;font-size:13px}.quick small{font-size:11px}.grid{grid-template-columns:1fr}.layout{grid-template-columns:1fr}.side{order:2}.formgrid{grid-template-columns:1fr}.petprofile{grid-template-columns:1fr}.petprofile .petart{height:260px}.itemgrid{grid-template-columns:repeat(2,1fr)}.chatlayout{grid-template-columns:1fr}.threads{display:flex;overflow:auto;padding:10px;gap:6px}.threads h3{display:none}.threads button{white-space:nowrap;width:auto;font-size:12px;padding:8px 12px}.chatpane{min-height:460px}.chatbody{padding:17px}.chatcomposer{padding:14px;gap:7px}.chatcomposer button{padding:10px 15px}.search{max-width:none;margin:0;width:100%}.card{padding:20px}.toolbar{gap:7px}.toolbar button{padding:8px 15px;font-size:12px}footer{gap:15px;padding:25px 20px}.sectionhead h2{font-size:23px}.bubble{max-width:92%}.actions .btn,.actions button{padding:10px 17px;font-size:13px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.reduce-motion *{transition:none!important}
/* Faithful image-backed home. Artwork remains the user's exact bytes; CSS crops only the supplied screenshot margin. */
body.home-exact{background:#fafafa}body.home-exact>header,body.home-exact>.demo,body.home-exact>footer{display:none}body.home-exact main{max-width:1229px;padding:0;margin:16px auto 0;min-height:0}.original-home{width:100%;aspect-ratio:1229/694;position:relative;overflow:hidden;background:#f8f1e7;box-shadow:0 4px 8px #00000010}.original-art{position:absolute;width:119.772172%;height:auto;max-width:none;left:-8.787632%;top:-2.305475%;display:block}.home-hotspot{position:absolute;z-index:1;border-radius:12px;background:transparent}.home-hotspot:hover{background:#ffffff0b;box-shadow:inset 0 0 0 2px #ffffff7a}.home-hotspot:focus-visible{outline:3px solid #2b4d28;outline-offset:-3px;background:#ffffff33}.home-utilities{padding:22px 24px 32px}.home-utilities p{margin:0}.home-utilities .actions{margin-top:10px}.home-mobile-nav{display:none}@media(max-width:768px){body.home-exact main{margin:0 auto}.home-utilities{padding:18px 16px}.home-mobile-nav{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:16px}.home-mobile-nav .btn{font-size:13px;padding:11px 9px;min-height:44px}.home-hotspot{border-radius:4px}}
/* Interior garden design system: same illustrated world as the reference homepage. */
body:not(.home-exact){--green:#6d8252;--ink:#354c31;--muted:#786752;--paper:#fffaf1;--line:#e6d8c4;--light:#f0eddf;background:#f3e9d8;background-image:linear-gradient(#fffaf1e6,#f4e8d7f2),url('assets/inner-garden.png');background-size:cover;background-attachment:fixed;color:var(--ink)}
body:not(.home-exact)>header{max-width:1229px;margin:16px auto 0;height:68px;padding:0 26px;background:linear-gradient(100deg,#fffdf6,#f8efe4);border:1px solid #ede3d5;border-radius:0 0 22px 22px;gap:20px;box-shadow:0 5px 16px #70593210;position:relative;z-index:5}body:not(.home-exact) header .brand{width:208px;flex-shrink:0}.original-brand{display:block;width:208px;height:51px;background:url('assets/home-original.png') -200px -21px/1472px 738px no-repeat}body:not(.home-exact) nav{gap:21px}body:not(.home-exact) nav a{font-family:'Noto Serif TC','Songti TC','PMingLiU',serif;font-size:15px;letter-spacing:1px;padding:20px 0;color:#655140;font-weight:600}body:not(.home-exact) nav a.active{color:#45633b}body:not(.home-exact) nav a.active:after{bottom:8px;border-radius:5px;background:#7a8d60}body:not(.home-exact) .profile{display:none}body:not(.home-exact)>.demo{max-width:1180px;margin:8px auto 0;background:transparent;color:#7c765f;font-size:10px;padding:2px 14px}body:not(.home-exact) main{max-width:1229px;padding:14px 28px 58px}.garden-banner{position:relative;min-height:235px;margin:0 0 28px;padding:27px 34px 30px;border-radius:25px 25px 58px 25px;overflow:hidden;background:#eee8d9 url('assets/inner-garden.png') 70% 53%/cover;box-shadow:0 8px 25px #7f694321;border:1px solid #fffdf4}.garden-banner:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#fffbf2f7 1%,#fffbf2e8 37%,#fffbf255 64%,#fffaf100 90%)}.banner-copy{position:relative;z-index:1;width:67%}.garden-back{font-size:12px;color:#6c7955;letter-spacing:2px;display:block;margin-bottom:18px}.garden-back span{color:#958570;letter-spacing:1px}.garden-banner h1{font-size:38px;font-family:'Noto Serif TC','Songti TC','PMingLiU',serif;letter-spacing:4px;margin-bottom:10px}.garden-banner p{font-size:15px;line-height:1.9;color:#81694f;max-width:540px;margin:0}.banner-illustration{position:absolute;right:34px;bottom:17px;width:125px;height:132px;background-image:url('assets/home-original.png');background-size:1472px 738px;filter:drop-shadow(0 6px 8px #6c4e3333);border-radius:50%}.banner-illustration.upload{background-position:-177px -538px}.banner-illustration.garden,.banner-illustration.pet{background-position:-458px -538px}.banner-illustration.dress{background-position:-742px -538px}.banner-illustration.diary{background-position:-1030px -538px}.mini-art{width:96px;height:96px;margin:0 auto 15px;background-image:url('assets/home-original.png');background-size:1104px 553.5px;border-radius:50%;filter:drop-shadow(0 4px 5px #87694522)}.mini-art.garden{background-position:-344px -402px}.mini-art.dress{background-position:-557px -402px}.cabinet-head{text-align:center;padding:20px 12px;background:linear-gradient(#fffaf2,#f4e8d6);border:1px solid #e6d8c4;border-radius:24px;margin-bottom:18px}.cabinet-head h3{font-family:serif;font-size:23px;letter-spacing:3px}.cabinet-head p{margin:0}body:not(.home-exact) .card,body:not(.home-exact) .item{background:linear-gradient(135deg,#fffdf7,#fbf2e5);border:1px solid #fffdf8;box-shadow:0 5px 14px #8c704b19,inset 0 0 0 1px #eadcca;border-radius:24px}body:not(.home-exact) .card{padding:28px}body:not(.home-exact) .petprofile{grid-template-columns:.92fr 1.08fr;gap:35px}body:not(.home-exact) .petprofile .petart{height:320px;border:8px solid #fff9eb;box-shadow:0 4px 14px #725b3426;border-radius:45% 45% 20px 20px;transform:rotate(-1deg);background-size:175%}body:not(.home-exact) .petprofile h2{font-size:35px;letter-spacing:5px}body:not(.home-exact) .petprofile .quote{border-left:0;padding:18px 20px;background:#f4ead9;border-radius:16px;color:#786147;font-family:'Noto Serif TC','Songti TC',serif;font-size:18px}body:not(.home-exact) h2,body:not(.home-exact) h3{font-family:'Noto Serif TC','Songti TC','PMingLiU',serif}body:not(.home-exact) h3{letter-spacing:2px}body:not(.home-exact) .btn,body:not(.home-exact) button{border-color:#ddd4c0;box-shadow:0 3px 6px #8a724113;background:linear-gradient(#fffef8,#f7eddf);font-size:14px}body:not(.home-exact) .btn.primary,body:not(.home-exact) button.primary,body:not(.home-exact) .toolbar button.active{background:linear-gradient(#8c9d6a,#61794a);color:#fff;border:1px solid #fffdf5;box-shadow:0 4px 8px #6c724128}body:not(.home-exact) input,body:not(.home-exact) select,body:not(.home-exact) textarea{background:#fffdf8;border:1px solid #d8cbb7;box-shadow:inset 0 2px 4px #8c714a08;border-radius:13px}body:not(.home-exact) label{color:#6a5945;font-size:14px}body:not(.home-exact) .event{background:#eee8d8;border-left:3px solid #9aa77b;color:#6e624c}body:not(.home-exact) .tag{background:#e8ebd9;color:#566d40}body:not(.home-exact) .notice{background:#eee7d7;color:#796b52;border:1px solid #e3d9c3;border-radius:18px;line-height:1.9}body:not(.home-exact) .postfoot{border-color:#e8dcc8}body:not(.home-exact) .postfoot button{border:0;background:none;box-shadow:none;font-size:12px}body:not(.home-exact) .avatar{border:2px solid #fff9e9;box-shadow:0 2px 5px #81664133}body:not(.home-exact) .chatlayout{border:1px solid #e1d1b8;border-radius:26px;box-shadow:0 7px 20px #7e654221;background:linear-gradient(#fffdf7,#faf1e3)}body:not(.home-exact) .threads{background:#eee5d3;padding:22px 18px}body:not(.home-exact) .threads h3{color:#715f47}body:not(.home-exact) .threads button{box-shadow:none;border:1px solid transparent;background:transparent}body:not(.home-exact) .threads button.active{background:#fffbf0;border:1px solid #d8c9b1;box-shadow:0 3px 7px #7f633414}body:not(.home-exact) .chatheader{background:linear-gradient(90deg,#f7efdf,#f8f0e4);border-color:#e5d6bd}body:not(.home-exact) .chatbody{background-image:linear-gradient(#fffaf3e8,#fffaf3e8),url('assets/inner-garden.png');background-size:cover;background-position:center}body:not(.home-exact) .bubble{background:#f4e8d6;border:1px solid #e7d9c3;color:#6c5843}body:not(.home-exact) .bubble.mine{background:#e6ead7;color:#465b35;border-color:#d6dec2}body:not(.home-exact) .chatcomposer{background:#fbf5e9;border-color:#e6d9c4}body:not(.home-exact) .item{padding:25px 20px}body:not(.home-exact) .item .icon{font-size:48px;background:#f3e8d5;width:90px;height:90px;border-radius:50%;margin:0 auto 17px;line-height:90px;box-shadow:inset 0 2px 6px #89682e12}body:not(.home-exact) .item.selected{box-shadow:0 0 0 2px #879b62,inset 0 0 0 4px #fffaf0}body:not(.home-exact) .formcard{max-width:none;padding:30px 38px;background:linear-gradient(120deg,#fffdf7,#fcf3e5)}body:not(.home-exact) .formgrid{gap:0 28px}body:not(.home-exact) .setting{border-color:#e7dac4}body:not(.home-exact)>footer{background:#f2e6d3;border-color:#e4d6bf;color:#7b694e;justify-content:center;padding:28px 24px}body:not(.home-exact)>footer span{text-align:center}body:not(.home-exact)>footer .brand{font-size:22px}
@media(max-width:1100px){body:not(.home-exact)>header{padding:0 18px;gap:12px}body:not(.home-exact) nav{gap:13px}body:not(.home-exact) nav a{font-size:13px;letter-spacing:0}body:not(.home-exact) header .brand{width:185px}.original-brand{transform:scale(.88);transform-origin:left center}body:not(.home-exact) main{padding:14px 22px 45px}}
@media(max-width:768px){body:not(.home-exact)>header{margin:0;height:70px;border-radius:0 0 20px 20px;padding:0 18px}body:not(.home-exact) header .brand{width:208px}.original-brand{transform:none}body:not(.home-exact) nav{top:69px;background:#fff8ed;gap:10px;padding:14px 20px;border-radius:0 0 20px 20px}body:not(.home-exact) nav a{padding:8px;font-size:14px}body:not(.home-exact) nav a.active:after{bottom:2px}body:not(.home-exact)>.demo{margin-top:5px}body:not(.home-exact) main{padding:12px 16px 38px}.garden-banner{min-height:218px;padding:21px 21px 25px;border-radius:22px 22px 45px 22px;margin-bottom:22px;background-position:65% center}.garden-banner:before{background:linear-gradient(90deg,#fffaf2f5,#fffaf2d9 58%,#fffaf255)}.banner-copy{width:100%;padding-right:25px}.garden-back{font-size:10px;margin-bottom:16px;letter-spacing:1px}.garden-banner h1{font-size:29px;letter-spacing:3px;max-width:240px}.garden-banner p{font-size:13px;line-height:1.9;padding-right:65px}.banner-illustration{transform:scale(.58);transform-origin:bottom right;right:7px;bottom:10px}body:not(.home-exact) .card{padding:21px}body:not(.home-exact) .petprofile{grid-template-columns:1fr;gap:25px}body:not(.home-exact) .petprofile .petart{height:270px;max-width:340px;width:100%;margin:auto}body:not(.home-exact) .petprofile h2{font-size:29px;margin-top:10px}body:not(.home-exact) .petprofile .quote{font-size:16px;padding:16px;line-height:1.9}body:not(.home-exact) .formcard{padding:22px}body:not(.home-exact) .btn,body:not(.home-exact) button{min-height:42px;font-size:13px}body:not(.home-exact) .postfoot button{min-height:40px;font-size:11px}body:not(.home-exact) .threads{padding:10px}.cabinet-head{margin-top:4px}body:not(.home-exact) .item{padding:18px 12px}body:not(.home-exact) .item .icon{width:75px;height:75px;line-height:75px;font-size:40px}body:not(.home-exact) .item .row{flex-wrap:wrap;justify-content:center}body:not(.home-exact) .item h3{font-size:17px}.banner-illustration.pet{background-position:-458px -538px}body:not(.home-exact) .formgrid{gap:0}body:not(.home-exact) .pageintro+ .actions{gap:10px}}
@font-face{font-family:GardenSerif;src:url('assets/garden-serif.woff') format('woff');font-weight:400 700;font-display:swap}body:not(.home-exact) h1,body:not(.home-exact) h2,body:not(.home-exact) h3,body:not(.home-exact) nav a,body:not(.home-exact) .quote{font-family:GardenSerif,'Noto Serif CJK TC','Songti TC',serif}

main:focus{outline:none}

.hongpaw-hero{position:relative;isolation:isolate;min-height:460px;display:flex;align-items:flex-start;padding:clamp(30px,6vw,85px);overflow:hidden;border-radius:22px;background:#eee0c6 url(assets/inner-garden.png) center/cover}
.hongpaw-copy{z-index:1;max-width:65%}
.hongpaw-copy h1{font-size:clamp(32px,4vw,60px);line-height:1.15;margin:0;color:#30462e;text-shadow:0 1px 12px #fff9}
.hongpaw-copy p{font-size:clamp(17px,2vw,25px);color:#604b3b;margin:14px 0 22px}
.hongpaw-ai{position:absolute;top:16px;right:18px;padding:6px 12px;border-radius:20px;background:#35472de8;color:white;font-size:13px}
.hongpaw-profile{position:absolute;right:2%;top:30%;display:flex;gap:12px;align-items:center;padding:10px;background:#fff8ed;color:#30462e;border-radius:16px}
.hongpaw-profile img{width:70px;height:88px;object-fit:cover;border-radius:10px}
.hongpaw-profile strong,.hongpaw-cards strong{display:block;font-size:21px}
.hongpaw-profile small,.hongpaw-cards small{display:block;color:#604b3b}
.hongpaw-pets{position:absolute;bottom:0;left:16%;width:min(40%,440px);border-radius:38% 42% 22% 20%;z-index:-1}
.hongpaw-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}
.hongpaw-cards a{display:flex;align-items:center;gap:9px;padding:12px;background:#fff8ed;border:1px solid #e7d9c6;border-radius:17px;color:#30462e}
.hongpaw-cards img{width:44%;max-width:100px;border-radius:9px}
.hongpaw-hero a:focus-visible,.hongpaw-cards a:focus-visible{outline:3px solid #30462e;outline-offset:3px}
@media(max-width:1050px){.hongpaw-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.hongpaw-hero{min-height:385px}}
@media(max-width:620px){.hongpaw-hero{display:flex;flex-direction:column;padding:0;background:#f8f0e3;min-height:0}.hongpaw-pets{position:static;order:-1;width:100%;height:240px;object-fit:cover;object-position:50% 45%;border-radius:0;z-index:0}.hongpaw-ai{z-index:1}.hongpaw-copy{max-width:none;width:100%;padding:20px 14px 12px}.hongpaw-copy h1{font-size:clamp(25px,7vw,36px)}.hongpaw-copy a{display:block;text-align:center}.hongpaw-profile{position:static;margin:0 14px 14px}.hongpaw-cards a{flex-direction:column;align-items:flex-start}.hongpaw-cards img{width:100%;height:84px;object-fit:contain;align-self:center}}
.hongpaw-brand{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;color:#30462e}
.hongpaw-brand img{object-fit:contain}
@media(max-width:460px){.hongpaw-brand img{width:34px}.hongpaw-brand{font-size:18px}}

/* The original garden illustration already contains the pets */
.hongpaw-hero{background-image:url(assets/garden.png);background-position:center 53%}
.hongpaw-copy h1,.hongpaw-copy p{text-shadow:0 1px 8px #fff,0 0 18px #fff8}
.hongpaw-pets{display:none}
@media(max-width:620px){
  .hongpaw-hero{background:#f8f0e3}
  .hongpaw-pets{display:block;object-position:center 64%}
}

.hp-map-view{overflow:auto;border-radius:18px;margin:16px 0;overscroll-behavior:contain}
.hp-map{min-height:390px;padding:clamp(35px,9vw,125px) clamp(20px,10vw,145px);display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));align-content:center;gap:16px;background:linear-gradient(#26351e20,#26351e45),url(assets/inner-garden.png) center/cover}
.hp-map-view.zoomed .hp-map{width:145%;min-height:510px}
.hp-marker{justify-self:center;max-width:100%;overflow-wrap:anywhere;background:#fff1db;color:#35452d;border:2px solid #c3a77f;border-radius:28px 28px 10px 10px;box-shadow:0 5px 0 #69543c,0 8px 16px #0004;padding:10px 14px;min-height:68px}
.hp-marker span,.hp-marker strong{display:block}
.hp-marker[aria-pressed=true]{outline:3px solid #fce29b;outline-offset:4px}
.hp-garden-detail{display:grid;grid-template-columns:minmax(0,260px) 1fr;gap:20px;overflow-wrap:anywhere}
@media(max-width:620px){.hp-map{min-height:320px}.hp-garden-detail{grid-template-columns:1fr}}

.hp-world{background:#202d23;color:#fff0d2;border:1px solid #c5a77b;border-radius:22px;overflow:hidden;padding:clamp(12px,2vw,24px)}
.hp-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:12px}
.hp-toolbar h1{margin:0 auto 0 0;color:#fff0d2}
.hp-toolbar label{color:inherit}
.hp-toolbar input,.hp-toolbar select{width:auto;max-width:100%;background:#fff4df;color:#253522}
.hp-camera{height:clamp(310px,50vw,530px);display:grid;place-items:center;perspective:1050px;overflow:hidden;touch-action:pan-y;cursor:grab;border-radius:16px;margin:16px 0;background:radial-gradient(ellipse,#536c50,#192721 72%)}
.hp-land{width:min(78vw,810px);aspect-ratio:1.45;position:relative;transform-style:preserve-3d;transform:rotateX(48deg) rotateZ(var(--turn,-14deg)) scale(var(--zoom,1));border-radius:20%;background-color:#536238;background-image:radial-gradient(ellipse at 35% 30%,#75884b,#344a2c);box-shadow:0 14px 0 #293824,0 25px 0 #1d2c20,0 35px 45px #0008}
.hp-path{position:absolute;inset:12% 14%;border:18px solid #b0926a;border-radius:48%;box-shadow:0 0 0 4px #72694c}
.hp-stone,.hp-tree{position:absolute;transform-origin:center bottom;transform:translate(-50%,-100%) rotateZ(calc(0deg - var(--turn))) rotateX(-48deg)}
.hp-stone{border-radius:50% 50% 13% 13%;width:clamp(48px,9vw,100px);min-height:60px;padding:6px;background:linear-gradient(135deg,#f2dcc0,#9a816a);box-shadow:0 6px 0 #665746;color:#30241b;overflow-wrap:anywhere}
.hp-stone span{display:block}.hp-stone[aria-pressed=true]{outline:3px solid #ffe49a;box-shadow:0 0 22px #ffc76c}.hp-dim{opacity:.6}
.hp-tree{width:clamp(24px,6vw,72px);height:clamp(38px,9vw,100px);background:radial-gradient(ellipse at 33% 25%,#9ca965,#405f39 66%,#263a2b);border-radius:60% 60% 40% 40%;box-shadow:0 8px 0 -5px #846649;pointer-events:none}
.hp-controls{gap:8px}.hp-world #garden-pet-detail{color:#30462e}

.hp-land{background-image:linear-gradient(135deg,#78934022,#132a1c55),url(assets/garden-grass.webp);background-size:auto,240px 240px}
.hp-camera.hp-webgl{display:block;perspective:none}
.hp-webgl .hp-land{display:none}
.hp-webgl canvas{width:100%;height:100%;display:block}

.hp-world{padding:0;background:#202923;color:#f4e4cb;border-color:#6e5e49}
.hp-world [hidden]{display:none!important}
.hp-entry{min-height:clamp(460px,65vw,740px);display:flex;flex-direction:column;justify-content:space-between;padding:clamp(22px,5vw,70px);background:linear-gradient(0deg,#131912e8 0%,transparent 76%),url(assets/garden-entry.webp) center/cover}
.hp-entry>a{align-self:flex-start;color:#fff1d6;background:#19221bd9;padding:.65rem 1rem;border-radius:30px}
.hp-entry-copy h1{font-size:clamp(42px,8vw,90px);line-height:1.15;margin:0 0 24px;color:#fff2d9;text-shadow:0 3px 24px #141b13}
.hp-entry button{background:#efd2a0;color:#2e271c}
.hp-entry .btn{background:#232d25db;color:#fff1d6;border-color:#c4ab81}
.hp-interior{padding:clamp(12px,2.5vw,28px)}
.hp-toolbar{display:grid;grid-template-columns:auto 1fr auto auto minmax(110px,1fr) auto;gap:12px;align-items:end}
.hp-toolbar h1{font-size:clamp(24px,3vw,38px);margin:0}
.hp-toolbar input,.hp-toolbar select{width:100%;min-height:44px;border-radius:10px}
.hp-interior .actions button,.hp-interior .btn,.hp-entry button,.hp-entry .btn{min-height:44px}
.hp-camera{margin:16px 0 10px;border:1px solid #80745b}
.hp-controls{padding-bottom:8px;border-bottom:1px solid #f0d8b52e}
#hp-zone-status{color:#e9d6b7}
.hp-world .hp-garden-detail{background:#f8ead3;color:#362d20;border-radius:18px}
.hp-world #hp-light{background:#795632;color:#fff5e5}
.hp-world #hp-light[aria-pressed=true]{background:#f4d299;color:#392713}
@media(max-width:900px){.hp-toolbar{grid-template-columns:repeat(3,minmax(0,1fr))}.hp-toolbar h1{grid-column:span 2}}
@media(max-width:520px){.hp-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.hp-toolbar h1{grid-column:auto}.hp-entry{min-height:500px;background-position:56% center}}

:root{--rebuild-green:#1f3b2e;--rebuild-ivory:#f9f4e6;--rebuild-gold:#d89a3c}
body>header{background:var(--rebuild-green);color:var(--rebuild-ivory)}
body>header a,body>header .hongpaw-brand,body>header nav a{color:var(--rebuild-ivory)}
body>header nav a.active{color:#ffd996}
body>footer{background:var(--rebuild-green);color:var(--rebuild-ivory)}
body>footer a{color:var(--rebuild-ivory)}
.rebuild-home{overflow:hidden;border-radius:24px;background:var(--rebuild-ivory)}
.rebuild-hero{display:flex;flex-direction:column;align-items:center;text-align:center;min-height:clamp(460px,50vw,690px);padding:clamp(30px,6vw,84px) 20px 48px;color:#fff1d6;background:linear-gradient(#111a14a8,transparent 43%,#171b13a8),url(assets/garden-entry.webp) center/cover}
.rebuild-hero h1{font-size:clamp(44px,7vw,86px);line-height:1.1;margin:0 0 12px;text-shadow:0 3px 15px #171912;color:inherit}
.rebuild-hero p{font-size:clamp(16px,2vw,23px);margin:0;color:inherit;text-shadow:0 2px 8px #171912}
.rebuild-hero .actions{margin-top:auto;justify-content:center;padding-top:24px;gap:14px}
.rebuild-hero .btn{min-height:48px;display:inline-flex;align-items:center;padding:10px 22px;border:1px solid #edd19f;background:var(--rebuild-green);color:#fff5df}
.rebuild-hero .rebuild-gold{background:#f1d299;color:#2a261a}
.rebuild-guide{padding:26px clamp(18px,4vw,55px) 36px;text-align:center;color:#2d392b}
.rebuild-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.rebuild-steps a{display:flex;gap:12px;align-items:center;text-align:left;color:inherit}
.rebuild-steps img{width:60px;height:60px;object-fit:cover;border-radius:14px}
.rebuild-steps small{display:block}
.hp-entry{background-image:linear-gradient(0deg,#131912e8 0%,transparent 75%),url(assets/rebuild-arch.webp)}
.pageintro.garden-banner{background-image:linear-gradient(90deg,#faf1df 8%,#faf1dfe0 35%,#faf1df10 75%),url(assets/rebuild-wide.webp)}
@media(max-width:600px){.rebuild-hero{min-height:525px;background-image:linear-gradient(#151c14a8,transparent 43%,#171b13cf),url(assets/garden-entry.webp);background-position:59% center}.rebuild-hero .actions{width:min(100%,310px);display:grid}.rebuild-hero .btn{justify-content:center}.rebuild-steps{grid-template-columns:1fr}.rebuild-steps a{padding:8px 0;border-bottom:1px solid #e5d8bb}}

/* Garden occupies the viewport with controls over the scene. */
body[data-page="garden"]{overflow:hidden;background:#18251e}
body[data-page="garden"]>header,body[data-page="garden"]>.demo,body[data-page="garden"]>footer{display:none}
body[data-page="garden"] #main{position:fixed;inset:0;width:100%;max-width:none;margin:0;padding:0;overflow:hidden}
.hp-world,.hp-entry,.hp-interior{height:100%;min-height:0;border:0;border-radius:0;margin:0}
.hp-world{position:relative;isolation:isolate}
.hp-entry{padding:clamp(20px,5vw,72px)}
.hp-interior{position:relative;padding:0}
.hp-camera{position:absolute;inset:0;height:auto;margin:0;border:0;border-radius:0;z-index:-1}
.hp-toolbar{position:absolute;top:max(12px,env(safe-area-inset-top));left:12px;right:12px;margin:0 auto;width:fit-content;max-width:calc(100% - 24px);display:flex;flex-wrap:wrap;align-items:center;padding:10px;gap:8px;border:1px solid #ddbd823f;border-radius:16px;background:#13231bed;box-sizing:border-box}
.hp-toolbar h1{font-size:clamp(19px,2.6vw,32px);color:#fff0cf;margin:0}
.hp-toolbar label{display:grid;gap:3px;font-size:12px;color:#fff0cf;margin:0}
.hp-toolbar input{width:min(30vw,190px)}
.hp-toolbar select,.hp-toolbar input{min-height:40px}
.hp-controls{position:absolute;bottom:max(16px,env(safe-area-inset-bottom));left:14px;margin:0;padding:6px;border:0;border-radius:18px;background:#13231bee;gap:4px}
.hp-controls button{background:#263a2d;color:#fff1d2;border-color:#c5a57566;min-width:44px;padding:8px 12px}
#hp-stone-list{position:absolute;bottom:82px;left:14px;max-width:min(50%,480px);max-height:22vh;overflow:auto;margin:0;gap:5px}
#hp-stone-list button{background:#263a2de8;color:#fff1d2;border-color:#c5a57566;padding:6px 12px}
#hp-zone-status{position:absolute;left:14px;bottom:calc(82px + min(22vh, 100px));margin:0;padding:5px 10px;background:#13231bef;border-radius:12px;max-width:50%;font-size:13px;pointer-events:none}
#garden-pet-detail{position:absolute;right:14px;bottom:max(16px,env(safe-area-inset-bottom));width:min(44%,470px);max-height:45%;overflow:auto;border-radius:18px}
#garden-pet-detail:empty{display:none}
.hp-world .hp-garden-detail{grid-template-columns:minmax(82px,30%) 1fr;margin:0;padding:12px;gap:10px}
.hp-world .hp-garden-detail .petart{min-height:110px;height:100%;border-radius:12px}
.hp-world .hp-garden-detail h2,.hp-world .hp-garden-detail p{margin:0 0 5px}
@media(max-width:650px){
 .hp-toolbar{width:calc(100% - 24px);gap:6px}
 .hp-toolbar h1{order:-1;flex:1 0 48%}
 .hp-toolbar input{width:100%}
 .hp-toolbar label:has(input){flex:1;min-width:90px}
 .hp-toolbar .btn,.hp-toolbar button{min-height:40px;padding:6px 10px}
 #garden-pet-detail{bottom:72px;left:12px;right:12px;width:auto;max-height:34%}
 #hp-stone-list{bottom:75px;max-width:calc(100% - 28px);max-height:16vh}
 #hp-zone-status{left:12px;bottom:calc(78px + 16vh);max-width:calc(100% - 24px)}
 .hp-interior:has(#garden-pet-detail:not(:empty)) #hp-stone-list,.hp-interior:has(#garden-pet-detail:not(:empty)) #hp-zone-status{display:none}
}

.hp-illustrated{background:#1b271b;color:#fff0ce}
.hp-picture{position:absolute;inset:0;background:url(assets/garden-approved.webp) center/cover;filter:blur(12px) brightness(.55);transform:scale(1.04)}
.hp-garden-ui,.hp-welcome{position:absolute;inset:0}
.hp-welcome{display:grid;place-content:center;text-align:center;background:#161d1140}
.hp-welcome h1{color:#fff1d0;text-shadow:0 3px 12px #18190d;font-size:clamp(42px,7vw,88px);margin:0 0 20px}
.hp-wordmark,.hp-zone-tabs,.hp-dock{position:absolute;z-index:2}
.hp-wordmark{top:14px;left:16px;color:#fff1ce;background:#212716d9;border-radius:30px;padding:8px 14px}
.hp-zone-tabs{top:12px;right:12px;display:flex;gap:5px;align-items:center}
.hp-zone-tabs select{width:auto;min-height:42px;margin:0;background:#ffedc9}
.hp-illustrated button,.hp-dock .btn{background:#ffedc9;color:#372817;border:1px solid #f6cc89;min-height:42px;padding:6px 13px}
.hp-zone-tabs button[aria-pressed=true]{background:#dca654}
.hp-dock{bottom:max(14px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;gap:8px;white-space:nowrap}
.hp-dock button[aria-pressed=true]{background:#c67b25;color:white}
.hp-places{position:absolute;width:min(100vw,calc(100dvh * 1.777));height:min(100dvh,calc(100vw / 1.777));top:50%;left:50%;transform:translate(-50%,-50%)}
.hp-illustrated .hp-place{position:absolute;left:var(--spot-x);top:var(--spot-y);transform:translate(-50%,-50%);min-width:44px;max-width:112px;min-height:44px;padding:3px 7px;background:#2b271bdf;color:#fff2d2;overflow-wrap:anywhere}
.hp-place[aria-pressed=true]{outline:3px solid #ffe3a0;box-shadow:0 0 24px #ffb545}
.hp-place.hp-lit::before{content:'✦';color:#ffdc7e;margin-right:4px;text-shadow:0 0 9px #ffaf24}
.hp-illustrated #garden-pet-detail{z-index:2;bottom:70px;color:#3d2c1e;width:min(390px,calc(100% - 28px));max-height:45vh}
.hp-story{position:relative;padding:14px 34px 14px 14px;display:grid;grid-template-columns:90px 1fr;gap:12px;background:#fae8c7;overflow-wrap:anywhere}
.hp-story .petart{min-height:92px;border-radius:9px}
.hp-story h2,.hp-story p{margin:0 0 5px}
.hp-illustrated #hp-close-story{position:absolute;right:4px;top:4px;padding:0 8px;min-height:34px}
#hp-garden-status{position:absolute;bottom:64px;left:12px;background:#202619e8;border-radius:10px;margin:0;padding:6px 10px}
#hp-garden-status:empty{display:none}
.hp-picture::after{content:'';position:absolute;inset:0;background:url(assets/garden-approved.webp) center/contain no-repeat}
.hp-picture{filter:none;transform:none;background:none}
.hp-picture::before{content:'';position:absolute;inset:0;background:url(assets/garden-approved.webp) center/cover;filter:blur(10px) brightness(.55)}
@media(max-width:580px){.hp-zone-tabs{top:63px;left:12px;right:auto}.hp-illustrated #garden-pet-detail{bottom:66px}.hp-place span{font-size:12px}}
.hp-scene{position:absolute;inset:0;touch-action:none;cursor:grab}
.hp-scene canvas{display:block;width:100%;height:100%}
.hp-pan{position:absolute;inset:0;overflow:hidden;container-type:size;touch-action:none;cursor:grab}
.hp-pan:active{cursor:grabbing}
.hp-pan .hp-places{width:max(100cqw,calc(100cqh * 1672 / 941));height:max(100cqh,calc(100cqw * 941 / 1672));background:url(assets/garden-approved.webp) center/100% 100% no-repeat;transform:translate(calc(-50% + var(--pan-x,0px)),calc(-50% + var(--pan-y,0px))) scale(var(--pan-zoom,1));}
#petform details{padding:12px 0}
#petform summary{cursor:pointer;font-weight:bold;margin-bottom:12px}
#petform [hidden]{display:none!important}
#petform .uploadpreview{max-width:min(240px,100%);max-height:220px;object-fit:contain}
