.inline-form,.schedule-row>form{margin:0}.nav-link-button{border:0;background:transparent;color:var(--ink);font-weight:650;cursor:pointer;padding:0}.account-email{color:var(--muted);font-size:12px}.nav-signup{padding:8px 12px;border-radius:7px;background:var(--green);color:#fff!important}.auth-shell{padding:75px 0 95px}.auth-card{width:min(480px,100%);margin:auto;padding:38px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:var(--shadow)}.auth-card h1{font:500 44px var(--serif);margin:0}.auth-card>p{color:var(--muted)}.auth-form{display:grid;gap:18px;margin-top:25px}.auth-form label{display:grid;gap:6px;font-size:13px;font-weight:700}.auth-form label small{font-weight:400;color:var(--muted)}.auth-form input{width:100%;padding:12px;border:1px solid #aebdb4;border-radius:6px;font:inherit}.form-error{padding:11px 13px;border-radius:6px;background:#f8e3df;color:#7a2920;font-size:13px}.auth-switch{text-align:center;font-size:13px}.account-prompt{margin-top:35px;padding:24px;border-radius:10px;background:var(--green-2);text-align:center}.account-prompt p{margin:5px 0 15px;color:var(--muted)}
.form-success{background:#e8f3ea;border:1px solid #b8d3be;color:#214f37;padding:12px 14px;border-radius:7px;margin:18px 0}.button-danger{background:#8b2f27;color:#fff}.danger-zone{border:1px solid #dbb8b3;background:#fff8f6;border-radius:12px;padding:30px}.danger-zone h2{font:500 34px var(--serif);margin-top:0}.legal{max-width:760px;padding-top:75px;padding-bottom:90px}.legal h1{font:500 clamp(44px,6vw,67px)/1 var(--serif);letter-spacing:-2px}.legal h2{font:500 29px var(--serif);margin-top:42px}.legal p{color:#52655d}.legal .fine-print{border-top:1px solid #dfe4dc;margin-top:45px;padding-top:20px;font-size:12px}
.view-tabs{display:flex;gap:8px;overflow:auto;margin-bottom:34px}.view-tabs a{white-space:nowrap;text-decoration:none;border:1px solid var(--line);border-radius:20px;padding:7px 13px;font-size:12px;font-weight:700;background:#fff}.schedule-groups{display:grid;gap:40px}.group-title{font:500 31px var(--serif);border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:0}.planned-card{display:grid;grid-template-columns:1fr auto;gap:20px;padding:24px 4px;border-bottom:1px solid var(--line)}.planned-card.status-overdue{border-left:4px solid #a94436;padding-left:17px}.planned-main h3{font:600 22px var(--serif);margin:9px 0 5px}.planned-main h3 a{text-decoration:none}.due-meta{font-size:12px;color:var(--muted)}.complete-form{display:flex;gap:8px;align-items:end}.complete-form label,.inline-settings label,.settings-grid label{display:grid;gap:4px;font-size:11px;font-weight:700}.complete-form input,.inline-settings input,.inline-settings select,.settings-grid input,.settings-grid select{border:1px solid #aebdb4;border-radius:6px;padding:9px;background:#fff;font:inherit}.task-settings{grid-column:1/-1;font-size:12px}.task-settings summary,.add-equipment summary{cursor:pointer;color:var(--green);font-weight:700}.inline-settings{display:flex;align-items:end;gap:9px;padding:16px 0;flex-wrap:wrap}.inline-settings label:first-of-type input{width:75px}.text-danger{border:0;background:transparent;color:#8b2f27;text-decoration:underline;cursor:pointer;padding:0}.profile-panel{margin-top:65px;padding:30px;border:1px solid var(--line);border-radius:12px;background:#fff}.profile-panel h2{font:500 32px var(--serif);margin:0}.settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px;margin-top:24px}.settings-grid .button{align-self:end}.equipment-list{list-style:none;padding:0;margin:25px 0}.equipment-list li{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:13px 0}.equipment-list strong,.equipment-list small{display:block}.equipment-list small{color:var(--muted)}.add-equipment{margin-top:20px}@media(max-width:700px){.planned-card{grid-template-columns:1fr}.complete-form{align-items:stretch;flex-direction:column}.task-settings{grid-column:1}.settings-grid{grid-template-columns:1fr}.profile-panel{padding:22px}}
.import-status{padding:12px 15px;margin-bottom:25px;border:1px solid #b8d3be;border-radius:7px;background:#e8f3ea;color:#214f37;font-size:13px}.import-status.is-error{border-color:#e4b5aa;background:#fff0ec;color:#7b2e22}
.hub-safety,.editorial-note{padding:22px;border-left:4px solid var(--gold);background:#fbf3e3}.hub-safety p{margin-bottom:0;color:var(--muted)}.editorial-note{margin-top:50px;border-left-color:#8aa99a;background:#edf3ec}.editorial-note h2{font-size:27px}.season-dot{width:14px;height:14px;margin-top:8px;border-radius:50%;background:var(--green-2);border:3px solid var(--green)}
.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 20px;margin:18px 0 28px}.check-grid label{display:flex;gap:8px;align-items:flex-start}.destination-home{display:flex;gap:6px;align-items:center;margin:8px 0;font-size:12px}.destination-home select{border:1px solid #aebdb4;border-radius:6px;padding:7px;background:#fff}.planned-card.status-paused{opacity:.72;border-left:4px solid #89948e;padding-left:17px}@media(max-width:700px){.check-grid{grid-template-columns:1fr}}
.plan-card{display:block}.plan-card h2{font:600 24px/1.2 var(--serif);margin:0 0 8px}.plan-card p{color:var(--muted);min-height:3.2em}.plan-card>span{color:var(--green);font-size:13px;font-weight:750}

/* New homeowner checklist and calendar share the existing server-rendered plan. */
.homeowner-link{margin-top:24px;font-size:15px}
.move-in-checklist{padding:28px;margin:32px 0;border:1px solid var(--line);border-radius:12px;background:#fff}
.move-in-checklist h2{font:500 32px var(--serif);margin:0 0 12px}
.move-in-checklist>ul,.calendar-grid ul,.calendar-agenda ul{list-style:none;padding:0;margin:0}
.checklist-row{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:20px 0;border-top:1px solid var(--line)}
.checklist-row h3{font:600 21px var(--serif);margin:0 0 6px}
.checklist-row p{margin:0 0 8px;color:var(--muted);font-size:14px}
.checklist-row small{display:block;margin-top:8px;color:var(--green)}
.checklist-row form{flex-shrink:0;margin:0}
.checklist-row.is-complete h3{color:var(--green)}
.view-tabs a[aria-current="page"]{background:var(--green);color:#fff}
.planned-card[id],#move-in-checklist{scroll-margin-top:100px}
.calendar-section{padding-top:10px}
.calendar-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin:32px 0 12px}
.calendar-heading h2{font:500 36px var(--serif);margin:0}
.calendar-heading .button-row{margin:0;gap:8px}
.calendar-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:13px}
.calendar-key{padding:4px 10px;border:1px solid var(--line);border-radius:5px}
.calendar-key.due,.calendar-event.due{background:#fbf3e3;border-color:#c9a65a}
.calendar-key.completed,.calendar-event.completed{background:#e8f3ea;border-color:#8aaf95}
.calendar-key.estimate,.calendar-event.estimate{background:#f4f5f2;border-style:dashed}
.calendar-grid{table-layout:fixed;width:100%;border-collapse:collapse;background:#fff;margin-top:24px}
.calendar-grid th{padding:12px 4px;font-size:13px;background:var(--green-2);border:1px solid var(--line)}
.calendar-grid td{height:140px;vertical-align:top;border:1px solid var(--line);padding:8px;overflow-wrap:anywhere}
.calendar-grid td>time{display:block;font-size:13px;font-weight:750;margin-bottom:8px}
.calendar-grid .calendar-padding{background:#f5f6f3}
.calendar-grid .calendar-today{box-shadow:inset 0 0 0 2px var(--green)}
.calendar-grid .calendar-today>time{color:var(--green)}
.calendar-event{display:block;padding:8px;margin-bottom:7px;border:1px solid var(--line);border-radius:5px;text-decoration:none;font-size:12px;line-height:1.4;color:var(--ink);overflow-wrap:anywhere}
.calendar-event:hover,.calendar-event:focus-visible{outline:2px solid var(--green);outline-offset:1px}
.calendar-event-kind{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:750;margin-bottom:4px}
.calendar-event small{display:block;font-size:11px;margin-top:4px}
.calendar-overdue{padding:22px;border-left:4px solid #a94436;background:#fff5ee}
.calendar-overdue h2{font:500 28px var(--serif);margin:0}
.calendar-overdue p{font-size:14px;color:var(--muted)}
.calendar-overdue li{margin:9px 0;font-size:14px}
.calendar-overdue li span{display:block;font-size:12px;color:var(--muted)}
.calendar-empty{padding:20px;background:var(--green-2);border-radius:8px}
.calendar-agenda{display:none}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:700px){
  .move-in-checklist{padding:20px}
  .checklist-row{align-items:flex-start;flex-direction:column;gap:12px}
  .calendar-grid{display:none}
  .calendar-agenda{display:block}
  .agenda-day{margin:26px 0}
  .agenda-day h3{font:600 23px var(--serif)}
  .calendar-agenda .calendar-event{padding:14px;font-size:15px}
  .calendar-heading .button{padding:10px 12px;font-size:13px}
  .calendar-heading h2{width:100%}
  .calendar-heading .button-row{flex-direction:row;flex-wrap:wrap;width:100%}
  .calendar-section>.view-tabs{flex-wrap:wrap;overflow:visible}
}
