*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}:root{--bg:#efe8d6;--card:#f8f2e4;--olive:#8c9467;--dark:#3d3d2e;--muted:#77785f;--white:#fff}body{background:var(--bg);justify-content:center;min-height:100vh;font-family:Georgia,serif;display:flex}#root{background:var(--bg);width:100%;max-width:430px;min-height:100vh;position:relative}.app{background:var(--bg);width:100%;min-height:100vh}.screen{background:var(--bg);min-height:100vh;animation:.25s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.page{padding:22px 22px 100px}.scrollable{overflow-y:auto}.center{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:28px;display:flex}.logo-box{border:12px solid var(--olive);border-radius:28px;justify-content:center;align-items:center;width:130px;height:130px;margin-bottom:20px;display:flex}.paw{font-size:58px}.logo{color:var(--olive);letter-spacing:-1px;font-size:52px;font-weight:900}.title{color:var(--dark);margin-bottom:14px;font-size:32px;font-weight:800}.subtitle{color:var(--muted);text-align:center;margin-bottom:28px;font-size:17px;line-height:1.5}.text{color:var(--muted);font-size:15px;line-height:1.4}.section-title{color:var(--dark);margin:16px 0 10px;font-size:19px;font-weight:800}.btn-primary{background:var(--olive);color:var(--white);cursor:pointer;border:none;border-radius:22px;width:100%;margin-top:14px;padding:16px 28px;font-family:inherit;font-size:16px;font-weight:800;transition:transform .1s,opacity .1s}.btn-primary:active{opacity:.9;transform:scale(.97)}.btn-secondary{color:var(--olive);cursor:pointer;background:0 0;border:none;border-radius:22px;width:100%;margin-top:8px;padding:16px 28px;font-family:inherit;font-size:15px;font-weight:700}.btn-small{background:var(--olive);color:var(--white);cursor:pointer;border:none;border-radius:14px;width:100%;margin-top:12px;padding:10px 18px;font-family:inherit;font-weight:800}.input{background:var(--card);color:var(--dark);border:none;border-radius:18px;outline:none;width:100%;margin-bottom:12px;padding:16px;font-family:inherit;font-size:15px}.input:focus{box-shadow:0 0 0 2px var(--olive)}.check-row{align-items:center;gap:10px;margin-bottom:12px;display:flex}.check{color:var(--olive);font-size:20px;font-weight:900}.header{justify-content:space-between;margin-bottom:20px;display:flex}.header-text,.coin{color:var(--olive);font-size:16px;font-weight:800}.card{background:var(--card);border-radius:24px;padding:20px}.card-title{color:var(--dark);margin-bottom:4px;font-size:18px;font-weight:800}.camera-button{background:var(--olive);cursor:pointer;border:none;border-radius:36px;flex-direction:column;justify-content:center;align-items:center;width:100%;height:230px;margin-bottom:20px;transition:transform .1s;display:flex}.camera-button:active{transform:scale(.98)}.camera-icon{margin-bottom:12px;font-size:54px}.camera-text{color:var(--white);font-family:inherit;font-size:20px;font-weight:900}.grid{gap:12px;display:flex}.mini-card{background:var(--card);border-radius:22px;flex-direction:column;flex:1;gap:4px;margin-bottom:12px;padding:18px;display:flex}.bottom-nav{background:var(--card);z-index:100;border-radius:26px;justify-content:space-around;width:calc(100% - 44px);max-width:386px;padding:14px 0;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 4px 24px #00000014}.bottom-nav button{cursor:pointer;background:0 0;border:none;border-radius:12px;padding:4px 10px;font-size:24px;transition:transform .1s}.bottom-nav button:active{transform:scale(.85)}.camera-screen{background:#1e1e1a;flex-direction:column;justify-content:flex-end;align-items:center;min-height:100vh;padding-bottom:45px;display:flex;position:relative}.camera-help{color:var(--bg);font-size:18px;font-weight:700;position:absolute;top:90px}.corner{border-color:var(--olive);border-style:solid;width:80px;height:80px;position:absolute}.corner.tl{border-width:8px 0 0 8px;top:130px;left:40px}.corner.tr{border-width:8px 8px 0 0;top:130px;right:40px}.corner.bl{border-width:0 0 8px 8px;bottom:170px;left:40px}.corner.br{border-width:0 8px 8px 0;bottom:170px;right:40px}.shutter{border:5px solid var(--bg);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;width:82px;height:82px;display:flex}.shutter-inner{background:var(--bg);border-radius:50%;width:58px;height:58px}.big-emoji{margin-bottom:12px;font-size:72px}.confetti{margin:20px 0;font-size:28px}.badge-row{flex-wrap:wrap;gap:10px;margin-top:10px;display:flex}.badge{background:var(--card);border-radius:20px;flex-direction:column;align-items:center;gap:4px;width:31%;padding:14px;display:flex}.badge.locked{opacity:.4}.badge-icon{font-size:28px}.activity-card{background:var(--card);border-radius:24px;align-items:center;gap:14px;margin-bottom:14px;padding:16px;display:flex}.avatar{background:var(--bg);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:54px;height:54px;font-size:24px;display:flex}.download-section{flex-direction:column;align-items:center;gap:12px;width:100%;margin-top:28px;display:flex}.download-title{color:var(--dark);margin-bottom:4px;font-size:16px;font-weight:800}.download-btn{border-radius:20px;align-items:center;gap:14px;width:100%;padding:14px 20px;text-decoration:none;transition:transform .1s,opacity .1s;display:flex}.download-btn:active{opacity:.9;transform:scale(.97)}.download-btn.android{background:#3ddc84}.download-btn.ios{background:var(--dark)}.download-icon{font-size:28px}.download-btn div{flex-direction:column;display:flex}.download-label{color:#fffc;font-size:11px;font-weight:600}.download-os{color:#fff;font-size:16px;font-weight:800}.download-hint{color:var(--muted);margin-top:4px;font-size:13px}.map-mock{background:var(--card);border-radius:28px;height:360px;margin-top:10px;position:relative;overflow:hidden}.map-pin{background:var(--bg);border:2px solid var(--olive);border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;display:flex;position:absolute}.filter-row{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.filter{background:var(--card);color:var(--olive);border-radius:16px;padding:9px 14px;font-size:14px;font-weight:800}.remember-row{cursor:pointer;align-items:center;gap:10px;margin:4px 0 8px;display:flex}.remember-checkbox{width:20px;height:20px;accent-color:var(--olive);cursor:pointer;flex-shrink:0}.remember-label{color:var(--dark);font-size:15px;font-weight:500}
