@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&display=swap";:root{font-family:DM Sans,sans-serif;color:#1b2b24;background:#f6f8f2;font-synthesis:none}*{box-sizing:border-box}body{margin:0}.app-shell,.landing{min-height:100vh}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 6vw;border-bottom:1px solid #dfe6db}.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;background:#234b36;color:#eaf3df;width:32px;height:32px;border-radius:10px}.privacy{display:flex;align-items:center;gap:7px;color:#6e7c72;font:12px DM Mono,monospace}.nav-actions{display:flex;align-items:center;gap:18px}.icon-button,.avatar{border:0;background:transparent;color:#637268;cursor:pointer}.avatar{width:34px;height:34px;border-radius:50%;background:#d9e7cf;color:#234b36;font-weight:700}.dashboard{max-width:1150px;margin:0 auto;padding:72px 6vw}.welcome-row{display:flex;justify-content:space-between;align-items:end;gap:30px}h1,h2,p{margin:0}h1{font-size:clamp(42px,6vw,76px);line-height:1.02;letter-spacing:-.06em;font-weight:600}h1 em{font-family:Libre Baskerville,serif;font-weight:400;color:#758b55}h2{font-size:24px;letter-spacing:-.03em}.eyebrow{font:11px DM Mono,monospace;letter-spacing:.12em;color:#7d8b7e;margin-bottom:16px}.subtle{color:#78857b;margin-top:18px}.primary-button,.google-button,.outline-button,.complete-button,.text-button{font:600 13px DM Sans,sans-serif;cursor:pointer;display:inline-flex;align-items:center;gap:8px;border-radius:7px}.primary-button{border:0;background:#234b36;color:#fff;padding:13px 17px}.primary-button:hover{background:#193b29}.full{width:100%;justify-content:center;margin-top:24px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#dfe6db;margin-top:68px;border:1px solid #dfe6db}.stat{background:#fbfcf8;padding:24px}.stat strong{display:block;font-size:30px;letter-spacing:-.04em}.stat span{display:block;color:#7a887e;font-size:13px;margin-top:5px}.content-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:20px;margin-top:20px}.card{background:#fbfcf8;border:1px solid #dfe6db;border-radius:12px}.task-card{padding:28px}.card-heading{display:flex;justify-content:space-between;align-items:start}.text-button{background:none;border:0;color:#758b55;padding:4px}.task-list{margin-top:24px}.task-row{display:flex;align-items:center;gap:14px;padding:17px 0;border-top:1px solid #e7ece3}.check{border:0;background:none;color:#bac5bb;padding:0;cursor:pointer}.check.checked{color:#78945d}.task-icon{width:32px;height:32px;display:grid;place-items:center;background:#eef3e9;color:#758b55;border-radius:8px}.task-info{display:grid;gap:5px;flex:1}.task-info strong{font-size:14px}.task-info strong.completed{text-decoration:line-through;color:#9aa79d}.task-info span{font-size:12px;color:#89958b}.complete-button{border:0;background:#edf3e9;color:#4d704f;padding:8px 11px}.season-card{padding:28px;display:flex;flex-direction:column;align-items:flex-start;background:#e6efd9}.season-icon{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#c7dcb7;color:#426443;margin-bottom:34px}.season-card h2{font-family:Libre Baskerville,serif;font-weight:400;line-height:1.35}.season-card>p:not(.eyebrow){color:#607363;font-size:14px;line-height:1.6;margin-top:15px}.outline-button{border:1px solid #9bb18b;color:#426443;background:transparent;padding:10px 13px;margin-top:auto}.landing{background:#f1f5ec}.landing .topbar{border-color:#d6e0d1}.hero{max-width:1150px;min-height:calc(100vh - 150px);margin:0 auto;padding:10vh 6vw;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px}.hero-text{color:#718078;max-width:430px;line-height:1.7;margin:25px 0}.google-button{background:#234b36;color:#fff;border:0;padding:15px 19px}.login-note{font:11px DM Mono,monospace;color:#95a198;margin-top:16px}.hero-art{height:420px;border-radius:24px;background:#dce9d1;position:relative;overflow:hidden}.sun{position:absolute;width:230px;height:230px;background:#f5eac2;border-radius:50%;top:45px;right:48px}.grass{position:absolute;bottom:-85px;left:-20px;width:120%;height:180px;background:#9eb888;border-radius:50% 50% 0 0}.mower{position:absolute;bottom:90px;left:120px;width:210px;height:100px}.handle{position:absolute;width:90px;height:120px;border:8px solid #35563d;border-left:0;border-bottom:0;transform:rotate(21deg);top:-85px;left:75px;border-radius:6px}.mower-body{position:absolute;bottom:20px;width:190px;height:55px;background:#db9e52;border-radius:14px 25px 8px 8px;box-shadow:inset 0 -9px #bd793b}.mower-body span{position:absolute;right:12px;top:10px;width:55px;height:10px;background:#eac074;border-radius:8px}.wheel{position:absolute;bottom:0;width:28px;height:28px;border:6px solid #233e2d;background:#556b4f;border-radius:50%}.wheel.left{left:25px}.wheel.right{right:25px}.art-card{position:absolute;right:24px;bottom:24px;background:#fbfcf8;padding:12px 14px;border-radius:10px;display:flex;align-items:center;gap:10px;box-shadow:0 8px 28px #5f754044;color:#426443;font-size:12px}.art-card small{color:#91a095;font-size:10px}footer{display:flex;justify-content:space-between;color:#9aa79d;font:10px DM Mono,monospace;padding:0 6vw 25px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1b2b2470;display:grid;place-items:center;padding:20px}.modal{padding:30px;max-width:400px;width:100%}.modal h2{margin-bottom:12px}@media(max-width:750px){.hero{grid-template-columns:1fr;padding-top:50px}.hero-art{height:330px}.content-grid{grid-template-columns:1fr}.welcome-row{align-items:start;flex-direction:column}.stats-grid{margin-top:40px}.dashboard{padding-top:45px}.season-card{min-height:280px}}.modal label{display:grid;gap:7px;color:#536258;font-size:13px;margin-top:16px}.modal input,.modal select,.modal textarea{width:100%;border:1px solid #d7e1d4;border-radius:7px;background:#fff;color:#1b2b24;font:14px DM Sans,sans-serif;padding:11px 12px}.modal input:focus,.modal select:focus,.modal textarea:focus{outline:2px solid #b5cc9f;border-color:#78945d}.modal textarea{resize:vertical;min-height:78px}.modal h2{margin-bottom:16px}@media(max-width:480px){.modal{padding:24px}.modal-backdrop{padding:14px}}.recent-card{width:100%;padding:28px}.service-count{font:11px DM Mono,monospace;color:#89958b}.service-table{margin-top:22px}.service-header,.service-row{display:grid;grid-template-columns:minmax(180px,1fr) 110px 130px 80px;align-items:center;gap:12px}.service-header{padding:0 0 11px;border-bottom:1px solid #dfe6db;color:#89958b;font:10px DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.service-row{padding:15px 0;border-bottom:1px solid #e7ece3}.service-row .task-info{min-width:0}.service-row .task-info strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.service-category,.service-date,.service-hours{font-size:12px;color:#89958b}@media(max-width:700px){.service-header{display:none}.service-row{grid-template-columns:minmax(0,1fr) auto;gap:10px}.service-category,.service-date,.service-hours{font-size:11px}.service-date{display:none}.service-category{grid-column:1;grid-row:2}.service-hours{grid-column:4;grid-row:1}.service-row .task-info{grid-column:1;grid-row:1}}.auth-divider{display:flex;align-items:center;gap:12px;max-width:430px;margin:20px 0 12px;color:#9aa79d;font:10px DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:#d6e0d1;flex:1}.magic-link-form{display:flex;gap:8px;max-width:430px}.magic-link-form input{min-width:0;flex:1;border:1px solid #cbd8c5;border-radius:7px;background:#fbfcf8;padding:12px 13px;font:14px DM Sans,sans-serif;color:#1b2b24}.magic-link-form input:focus{outline:2px solid #b5cc9f;border-color:#78945d}.auth-success{color:#426443;font-size:13px;margin-top:12px}@media(max-width:520px){.magic-link-form{flex-direction:column}.magic-link-form .outline-button{justify-content:center}}.logout-button{border:0;background:transparent;color:#6e7c72;font:12px DM Mono,monospace;cursor:pointer;padding:8px 0}.logout-button:hover{color:#234b36}.equipment-section{margin-top:18px}.equipment-section:first-of-type{margin-top:0}
