*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html{height:100%}body{-webkit-font-smoothing:antialiased;background:#ede5d8;justify-content:center;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;display:flex;overflow-x:clip}#root{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='400'%3E%3Cg fill='none' stroke='%232E7D32' stroke-opacity='0.07' stroke-width='1.2'%3E%3C!-- House 1 --%3E%3Cpath d='M30 110 L30 75 L55 52 L80 75 L80 110 Z'/%3E%3Crect x='47' y='87' width='16' height='23'/%3E%3Crect x='34' y='79' width='18' height='14'/%3E%3C!-- House 2 --%3E%3Cpath d='M290 200 L290 165 L318 142 L346 165 L346 200 Z'/%3E%3Crect x='306' y='177' width='16' height='23'/%3E%3Crect x='294' y='169' width='18' height='14'/%3E%3C!-- House 3 --%3E%3Cpath d='M140 330 L140 300 L162 280 L184 300 L184 330 Z'/%3E%3Crect x='153' y='310' width='14' height='20'/%3E%3C!-- Building 1 --%3E%3Crect x='240' y='40' width='55' height='80'/%3E%3Cline x1='240' y1='60' x2='295' y2='60'/%3E%3Cline x1='240' y1='80' x2='295' y2='80'/%3E%3Cline x1='240' y1='100' x2='295' y2='100'/%3E%3Crect x='255' y='45' width='10' height='10'/%3E%3Crect x='273' y='45' width='10' height='10'/%3E%3Crect x='255' y='63' width='10' height='10'/%3E%3Crect x='273' y='63' width='10' height='10'/%3E%3C!-- Building 2 --%3E%3Crect x='20' y='200' width='45' height='70'/%3E%3Cline x1='20' y1='220' x2='65' y2='220'/%3E%3Cline x1='20' y1='240' x2='65' y2='240'/%3E%3Cline x1='20' y1='260' x2='65' y2='260'/%3E%3Crect x='27' y='205' width='8' height='8'/%3E%3Crect x='43' y='205' width='8' height='8'/%3E%3C!-- Tree 1 --%3E%3Ccircle cx='340' cy='310' r='20'/%3E%3Cline x1='340' y1='330' x2='340' y2='350'/%3E%3C!-- Tree 2 --%3E%3Ccircle cx='110' cy='170' r='16'/%3E%3Cline x1='110' y1='186' x2='110' y2='202'/%3E%3C!-- Key --%3E%3Ccircle cx='185' cy='60' r='12'/%3E%3Cline x1='197' y1='60' x2='220' y2='60'/%3E%3Cline x1='214' y1='60' x2='214' y2='68'/%3E%3Cline x1='206' y1='60' x2='206' y2='66'/%3E%3C!-- Grid lines --%3E%3Cline x1='0' y1='400' x2='400' y2='0' stroke-opacity='0.03'/%3E%3Cline x1='100' y1='400' x2='400' y2='100' stroke-opacity='0.03'/%3E%3Cline x1='0' y1='300' x2='300' y2='0' stroke-opacity='0.03'/%3E%3C/g%3E%3C/svg%3E"),linear-gradient(160deg,#f8f4ed 0%,#f2ebe0 40%,#ede5d4 70%,#f8f4ed 100%);width:100%;max-width:430px;min-height:100vh;position:relative;overflow-x:clip}::-webkit-scrollbar{display:none}*{-ms-overflow-style:none;scrollbar-width:none}button{cursor:pointer;background:0 0;border:none;outline:none;font-family:inherit}input,textarea,select{font-family:inherit}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes glow{0%,to{box-shadow:0 0 20px #2e7d324d}50%{box-shadow:0 0 40px #2e7d3299}}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes sliderFade{0%{opacity:0}to{opacity:1}}@keyframes floatDown{0%{opacity:0;transform:translateY(-60px)rotate(0)}10%{opacity:1}90%{opacity:.8}to{opacity:0;transform:translateY(110vh)rotate(25deg)}}@keyframes floatSway{0%{opacity:0;transform:translateY(-60px)translate(0)rotate(-5deg)}10%{opacity:.9}50%{transform:translateY(50vh)translate(18px)rotate(5deg)}90%{opacity:.7}to{opacity:0;transform:translateY(110vh)translate(-8px)rotate(-8deg)}}
