.journal{margin-top:32px}.journal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:19px}.journal-heading h2{font-family:Manrope;font-size:21px;letter-spacing:-.6px;margin:0 0 7px}.journal-heading p{font-size:11px;color:#829075;margin:0;line-height:1.7}.journal-tools{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:19px;flex-wrap:wrap}.journal-tools select{background:#fff;border:1px solid var(--line);border-radius:7px;padding:10px 12px;color:#64765a;font-size:11px;max-width:210px}.journal-tools label{font-size:10px;color:#839277;display:flex;align-items:center;gap:8px}.journal-tools .journal-count{font-size:10px;color:#8b987f}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.photo-card{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden;min-width:0}.photo-image-button{width:100%;padding:0;display:block;border:0;background:#e9ede2;position:relative}.photo-image-button img{display:block;width:100%;height:190px;object-fit:cover}.photo-image-button .photo-badge{position:absolute;bottom:12px;left:12px;border-radius:5px;padding:6px 9px;background:#fffef4ed;color:#677956;font-size:9px;backdrop-filter:blur(4px)}.photo-body{padding:18px}.photo-body h3{font-family:Manrope;font-size:14px;letter-spacing:-.4px;line-height:1.5;margin:0 0 7px;overflow-wrap:anywhere}.photo-body p{font-size:10px;color:#7d8a70;margin:0 0 13px;line-height:1.8}.photo-body .photo-note{font-size:11px;color:#89947c;overflow-wrap:anywhere}.photo-card-bottom{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid var(--line);padding-top:13px}.photo-review-summary{font-size:10px;color:var(--green);line-height:1.8}.photo-card-bottom button{font-size:10px}.photo-empty{grid-column:1/-1;background:#fff;border:1px dashed #cdd6c2;border-radius:12px;padding:45px 25px;text-align:center}.photo-empty svg{width:33px;height:33px;color:#9aa989;margin-bottom:14px}.photo-empty h3{font-family:Manrope;font-size:17px;letter-spacing:-.5px;margin:0 0 8px}.photo-empty p{font-size:11px;color:#89977c;line-height:1.8;margin:0 auto;max-width:390px}.room-photo-info{display:flex;align-items:center;justify-content:space-between;font-size:9px;margin-top:12px;color:var(--green);gap:8px}.room-card.photo-selected{border-color:var(--green);background:var(--soft)}.journal-note{font-size:10px;color:#8e9982;line-height:1.8;margin-top:20px}.upload-picker{border:1px dashed #bdcbb0;background:#f5f7ef;border-radius:11px;padding:21px;text-align:center;margin:18px 0}.upload-picker svg{width:27px;height:27px;color:#8da078}.upload-picker p{margin:9px 0 13px;font-size:11px}.upload-picker .primary,.upload-picker .secondary{font-size:11px;padding:10px 14px}.upload-picker-buttons{display:flex;justify-content:center;gap:8px}.photo-upload-preview{width:100%;max-height:220px;object-fit:contain;border-radius:8px;margin-bottom:12px;background:#edf1e6}.photo-dialog{width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 35px);overflow-y:auto}.photo-detail-dialog{width:min(700px,calc(100% - 32px));max-height:calc(100dvh - 35px);overflow-y:auto}.photo-detail-image{width:100%;max-height:400px;object-fit:contain;background:#eef1e8;border-radius:10px;display:block;margin:18px 0}.photo-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.photo-detail-header h2{font-size:21px;overflow-wrap:anywhere}.photo-detail-header .icon-btn{font-size:21px}.photo-detail-meta{font-size:10px;line-height:1.8;color:#8c9781;margin-top:8px}.photo-detail-note{font-size:12px;line-height:1.8;color:#6e7e61;overflow-wrap:anywhere;margin:15px 0}.photo-review-box{background:var(--soft);border-radius:10px;padding:18px;margin:19px 0}.photo-review-box h3{font-family:Manrope;font-size:13px;letter-spacing:-.3px;margin:0 0 9px}.photo-review-box p{font-size:11px;line-height:1.8;margin:0;color:#6d805d;overflow-wrap:anywhere}.photo-review-box small{font-size:9px;color:#849676;display:block;margin-top:9px}.rating-buttons{display:flex;gap:7px;margin:10px 0 15px}.rating-buttons button{width:42px;height:42px;border:1px solid #d6dfcc;border-radius:8px;background:white;font-size:23px;color:#c1cbb5}.rating-buttons button.chosen{color:#9a8254;background:#f1eadb;border-color:#baa777}.rating-label{font-size:11px;color:#748568}.photo-review-form h3{font-family:Manrope;font-size:15px;margin:23px 0 7px}.photo-review-form>p{font-size:11px;line-height:1.8;color:#829274;margin:0 0 15px}.photo-review-form .field{margin-top:18px}.photo-detail-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:18px;margin-top:22px}.photo-detail-actions .danger{margin:0;font-size:10px}.photo-detail-actions .secondary{font-size:11px}.photo-switch-note{font-size:11px;color:#869778;line-height:1.8;margin:20px 0 0}.photo-switch-note button{font-size:11px;margin-top:10px}.photo-status-message{font-size:11px;line-height:1.8;color:#798a6c;margin:10px 0}.photo-setting-note{color:#7d8a70;font-size:11px;line-height:1.8}.photo-area-task{font-size:10px;color:#8b9980;margin:8px 0 0}.photo-add-mobile{white-space:nowrap}.photo-review-form fieldset{border:0;padding:0;margin:0}.photo-review-form legend{font-size:11px;color:#748568}.camera-icon{display:block}
@media(max-width:1150px){.photo-grid{grid-template-columns:1fr 1fr}.photo-image-button img{height:180px}}
@media(max-width:650px){.photo-grid{grid-template-columns:1fr;gap:14px}.photo-image-button img{height:215px}.journal-heading{gap:12px}.journal-heading h2{font-size:18px}.journal-heading .primary{font-size:10px;padding:10px 12px}.journal-heading p{font-size:10px}.journal-tools select{max-width:170px;font-size:10px}.journal-tools label{font-size:9px}.photo-dialog,.photo-detail-dialog{padding:20px}.photo-detail-image{max-height:290px}.photo-detail-header h2{font-size:19px}.upload-picker{padding:17px}.journal{margin-top:26px}.room-photo-info{font-size:8px}.photo-review-box{padding:16px}.photo-detail-meta{font-size:9px}.photo-empty{padding:33px 20px}.rating-buttons{gap:9px}}

.room-detail-toolbar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:28px}.room-frequency{font-size:13px;margin:24px 0 12px;color:var(--green)}.room-directory-note{color:var(--muted);font-size:12px;margin-bottom:20px}#roomDetail .task-info{flex-wrap:wrap}#roomDetail .task-name{overflow-wrap:anywhere}

.task-completed-date{font-size:11px;color:var(--green);line-height:1.6;margin-top:7px;overflow-wrap:anywhere}
.task-plan-note{font-size:11px;line-height:1.7;color:#60745f;margin-top:7px;overflow-wrap:anywhere}.task-plan-note .text-button,.task-completed-date .text-button{font-size:11px;margin-left:6px;text-decoration:underline}.sync-banner{padding:12px 16px;border:1px solid #d6e2d1;border-radius:9px;background:var(--soft);font-size:12px;margin:0 0 18px;line-height:1.6;color:#38583f}.sync-banner[data-status="error"]{background:#fff0e8;border-color:#d6a68c;color:#824c31}.preference-check{display:flex;align-items:center;gap:10px;line-height:1.7;font-size:13px}.preference-check input{accent-color:var(--green)}.weekday-picker{display:flex;flex-wrap:wrap;gap:14px;margin:12px 0 20px}.weekday-picker label{display:flex;align-items:center;gap:4px}#shareStatus{font-size:12px;line-height:1.7;margin:12px 0}.small-label,.task-info,.task-list .task-name,.room-card small{color:#677562}.task.done .task-name{color:#727e6d}.section-top{gap:12px;flex-wrap:wrap}.room-card b{font-size:13px}#sharedGoalSection p{font-size:12px;color:#62725b}#calendarDownload{display:inline-block;margin-top:12px}dialog{max-height:90vh;overflow:auto}

.household-sharing-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:20px}.settings .household-sharing-actions button{margin:0}.household-sharing-actions button{max-width:100%;white-space:normal;min-height:44px}#customerInviteDialog>p:first-of-type{margin:14px 0 26px;line-height:1.75}#customerInviteDialog .invite-email-field{margin:0 0 22px}#customerInviteDialog .invite-email-field label{margin-bottom:10px}#customerInviteDialog #partnerEmail{display:block;min-height:44px}#customerInviteDialog #inviteStatus:not(:empty){margin:22px 0 16px;line-height:1.7;overflow-wrap:anywhere}#customerInviteDialog #inviteStatus:empty{display:none}#customerInviteDialog #customerInviteLink{display:block;width:100%;min-width:0;padding:12px;border:1px solid var(--line);border-radius:7px;background:var(--bg);color:var(--ink);margin-top:16px}#customerInviteDialog .invitation-footer{display:flex;flex-wrap:wrap;gap:14px;margin-top:24px}#customerInviteDialog #createPartnerInvite{max-width:100%;white-space:normal}@media(max-width:480px){.household-sharing-actions{gap:12px}.household-sharing-actions button{flex:1 1 100%;justify-content:center}.invitation-footer button{min-height:44px}}

.settings-action-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:20px 0}.settings .settings-action-row button{margin:0;max-width:100%;white-space:normal;min-height:44px}@media(max-width:480px){.settings-action-row{gap:12px}.settings-action-row button{flex:1 1 100%;justify-content:center}}

#customerInviteDialog .invitation-confirmed{padding:18px;background:var(--soft);border:1px solid var(--line);border-radius:10px;color:var(--green);font-size:13px}#customerInviteDialog .invitation-not-sent{font-size:13px;color:var(--ink)}#customerInviteDialog #inviteManualShare{margin-top:20px;color:var(--green);font-size:12px}#customerInviteDialog #inviteManualShare summary{cursor:pointer;min-height:44px;display:flex;align-items:center;text-decoration:underline}#customerInviteDialog #inviteStatus:focus{outline:none}

#week .day{border:0;background:transparent;font-family:inherit;padding:4px 1px;cursor:pointer;min-width:30px;min-height:44px}#week .day:hover{background:var(--soft);border-radius:8px}#week .day:focus-visible{outline:2px solid var(--green);outline-offset:2px}#weekTaskPreview{width:min(540px,calc(100% - 32px));max-height:90dvh;overflow:auto}.week-preview-navigation{display:flex;justify-content:space-between;gap:12px;margin:20px 0}.week-preview-navigation button{min-height:44px}.week-preview-task{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border-top:1px solid var(--line);padding:16px 0}.week-preview-task b{font-size:13px;overflow-wrap:anywhere}.week-preview-task small{display:block;font-size:11px;color:var(--muted);line-height:1.7;margin-top:5px}.week-preview-state{display:block;font-size:11px;color:var(--green);margin-top:8px}.week-preview-note{margin:20px 0 0!important;line-height:1.7}#weekTaskPreview .dialog-buttons{flex-wrap:wrap;gap:12px}#weekPreviewTitle:focus{outline:none}

.week-preview-top-actions{display:flex;justify-content:flex-end;position:sticky;top:0;z-index:1;background:var(--white);padding:0 0 14px;margin-bottom:8px}.week-preview-top-actions button{min-height:44px}@media(max-width:650px){.week-preview-top-actions{top:0}}
