:root{--cream:#f7f4ec;--paper:#fffdf8;--sage:#4f6550;--sage-light:#e6ecdf;--gold:#c5a253;--ink:#29312c;--muted:#626b62;--line:#dfE3d8;--lavender:#eee8f3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:15px;line-height:1.6}a{color:var(--sage);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button,input,select,textarea{font:inherit}button,.button{background:var(--sage);color:white;border:1px solid var(--sage);padding:12px 21px;border-radius:9px;font-weight:600;text-decoration:none;cursor:pointer;display:inline-block;text-align:center}button:hover,.button:hover{filter:brightness(.94)}button.secondary,.button.secondary{background:transparent;color:var(--sage);border-color:#a3af9d}.danger{background:#fff7f3;color:#873c2e;border-color:#e5c8bf}.text-button{padding:5px 0;border:0;background:none;color:var(--sage);text-decoration:underline}.saving{opacity:.65}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #8b661c;outline-offset:4px}.topbar{height:94px;display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line);max-width:1440px;margin:auto;padding:0 5%}.brand{display:flex;align-items:center;gap:1px;font-family:Georgia,serif;font-size:44px;color:var(--ink);text-decoration:none;line-height:1}.ring{width:30px;height:35px;border:4px solid var(--gold);border-radius:50%;box-shadow:inset 1px 0 #ead59d;position:relative}.ring:after{content:'';position:absolute;width:6px;height:3px;background:#f5e3b5;transform:rotate(-42deg);top:0;left:2px}.brand-dot{color:var(--gold)}.tagline{color:var(--muted);font-size:13px}.notification-link{margin-left:auto;text-decoration:none;font-size:14px}.badge{background:var(--sage-light);padding:3px 8px;border-radius:20px;font-size:12px}.avatar{width:39px;height:39px;border-radius:50%;background:#e7e9dd;display:inline-flex;align-items:center;justify-content:center;color:var(--sage);text-decoration:none;font-weight:600;flex-shrink:0}.nav{display:flex;justify-content:center;gap:42px;padding:17px 20px;border-bottom:1px solid var(--line);background:var(--paper)}.nav a{font-size:14px;text-decoration:none;padding:4px 6px;color:var(--muted)}.nav a[aria-current]{color:var(--sage);font-weight:700;border-bottom:2px solid var(--sage)}.nav .nav-add{border-radius:20px;padding:4px 18px;background:var(--sage);color:white}main{max-width:1370px;margin:0 auto;padding:40px 5% 60px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.17}h1{font-size:48px;letter-spacing:-1.6px;margin-bottom:19px}h2{font-size:29px;letter-spacing:-.55px;margin-bottom:16px}h3{font-size:16px;font-weight:600;margin-bottom:12px}p{margin-bottom:18px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:var(--sage);display:block;margin-bottom:18px}.muted{color:var(--muted)}.small,small{font-size:12px}.soft{color:#6f806a}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:5px 0 32px}.page-heading>.button{flex-shrink:0}.compact h1{margin-bottom:0}.panel{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:27px;box-shadow:0 4px 13px #34472e03}.opportunity-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.feature-card{border-radius:15px;padding:32px 34px;background:var(--sage);color:#fffdf7;position:relative;overflow:hidden}.feature-card:after{content:'';position:absolute;width:185px;height:185px;border:1px solid #ffffff18;border-radius:50%;right:-32px;top:30px;box-shadow:0 0 0 28px #ffffff06,0 0 0 60px #ffffff04;pointer-events:none}.feature-card .eyebrow{color:#ead7a6}.feature-card h2,.window-card h2{font-size:33px}.feature-card p{color:#e7ebdf;font-size:14px}.feature-card a{color:#fff5db;font-weight:600;font-size:13px}.window-card{padding:32px 34px}.window-card p{color:var(--muted);font-size:14px}.window-card a{font-weight:600;font-size:13px}.window-card small{display:block;color:var(--muted);margin-top:16px;font-size:10px}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:22px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:31px 0 17px}.section-heading h2{font-size:25px;margin:0}.section-heading a{font-size:12px;white-space:nowrap}.person-heading{display:flex;align-items:center;gap:12px;margin-bottom:18px}.person-heading h3,.person-heading p{margin:0}.person-heading>.muted{margin-left:auto}.person-dot{width:12px;height:12px;display:inline-block;border-radius:50%;flex-shrink:0}.partner1{background:#e5eddf;color:#3e563c;border-color:#aec1a3}.partner2{background:#ede7f2;color:#604d70;border-color:#c6b6d3}.shared{background:#f4ead1;color:#6a531f;border-color:#d7bb73}.person-dot.partner1{background:#7f9478}.person-dot.partner2{background:#a38aae}.person-dot.shared{background:#c5a253}.event{display:flex;flex-direction:column;text-decoration:none;border-left:3px solid;padding:12px 15px;border-radius:7px;margin-bottom:10px;font-size:13px}.event span{font-size:12px}.event small{opacity:.9;font-size:11px}.lower{margin-top:27px}.update{display:flex;flex-direction:column;padding:14px 0;border-bottom:1px solid var(--line);text-decoration:none;font-size:13px;color:var(--ink)}.update:last-child{border-bottom:0}.update small{color:var(--muted);font-size:11px;margin-top:4px}.empty{padding:30px}.empty p{color:var(--muted);font-size:14px}.empty h3{font-family:Georgia,serif;font-size:23px;font-weight:400}.list-card{display:block;text-decoration:none;color:var(--ink)}.list-card h2,.list-card h3{margin-top:17px}.list-card p{font-size:14px}.list-card small{color:var(--muted)}.status{display:inline-block;font-size:11px;letter-spacing:.3px;font-weight:600;padding:4px 10px;border-radius:20px;background:#ecece7;color:#545a51}.status.pending{background:#fcf6e5;color:#786025;border:1px dashed #b69a55}.status.accepted,.status.off{background:var(--sage-light);color:#42583c}.status.declined,.status.cancelled{background:#f2e9e4;color:#774d40}.pending-event{border:1px dashed #a58c58;background:#fffaf0;opacity:.95}.calendar-toolbar,.calendar-pager{display:flex;align-items:center;justify-content:space-between;gap:16px}.calendar-pager h2{margin:0;font-size:29px}.icon-button{display:inline-block;border:1px solid var(--line);border-radius:7px;padding:4px 12px;text-decoration:none}.segmented{display:flex;gap:3px;background:#eceee5;padding:4px;border-radius:9px}.segmented a{padding:5px 14px;font-size:12px;text-decoration:none}.segmented a[aria-current]{background:var(--paper);border-radius:6px;box-shadow:0 1px 5px #00000009}.legend{display:flex;flex-wrap:wrap;gap:20px;align-items:center;margin:21px 0;font-size:11px;color:var(--muted)}.legend>span{display:flex;align-items:center;gap:6px}.off-dot{width:13px;height:13px;border-radius:3px;background:#e5ecdc;border:1px solid #9aaf89}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 272px;gap:22px;align-items:start}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--paper)}.day{border-bottom:1px solid var(--line);border-right:1px solid var(--line);min-height:153px;padding:7px 5px}.day.both-off{background:#e9efdf}.day.selected{box-shadow:inset 0 0 0 2px var(--sage)}.day.outside{background:#f0f0e9}.day-number{display:flex;justify-content:space-between;padding:1px 3px 4px;color:var(--ink);text-decoration:none;font-size:12px}.day-number span{font-size:9px;color:var(--muted)}.off-label{font-size:9px;color:#48613e;display:block;padding:0 2px;font-weight:600}.calendar-event{display:block;padding:4px;margin:4px 0;border-radius:4px;text-decoration:none;font-size:9px;line-height:1.4;overflow-wrap:anywhere}.calendar-event strong,.calendar-event span,.calendar-event small{display:block}.calendar-event small{font-size:8px}.day-detail{padding:22px;position:sticky;top:20px;scroll-margin-top:20px}.day-detail h2{font-size:25px}.day-detail h3{font-size:14px;margin-top:20px}.free-window{background:var(--sage-light);padding:7px 10px;border-radius:6px;margin-bottom:7px;font-size:12px;color:#3c5436}.text-action{font-size:12px;display:block;margin:15px 0}hr{border:0;border-top:1px solid var(--line);margin:25px 0}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.choice{position:relative;text-decoration:none;color:var(--ink);padding:30px}.choice h2{margin-top:20px;font-size:29px}.choice p{color:var(--muted);max-width:370px;font-size:14px}.choice>span:last-child{color:var(--sage);font-size:13px;font-weight:600}.choice-icon{color:#8d773d;font-family:Georgia,serif;font-size:21px}.featured-choice{background:var(--sage-light)}.schedule-row{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:15px 0;margin-bottom:20px;font-size:13px}.form-shell{max-width:680px;margin:10px auto}.form-shell h1{font-size:40px}.form-shell>p{font-size:14px}.edit-form{margin-top:25px}label{display:block;font-size:13px;font-weight:600;margin-bottom:7px}input,select,textarea{width:100%;max-width:100%;border:1px solid #b6bfb0;border-radius:7px;padding:11px 13px;background:#fffefa;color:var(--ink)}textarea{min-height:100px;height:120px}form p{margin-bottom:20px}.helptext{display:block;color:var(--muted);font-size:11px;margin-top:6px}.helptext ul{padding-left:17px}.errorlist{list-style:none;padding:10px 13px;background:#f9e7df;border-radius:6px;color:#842f20;font-size:13px}.cancel-link{display:inline-block;margin:15px;font-size:13px}.help{padding:18px;border:1px solid var(--line);border-radius:10px;background:#eeefe6;font-size:13px;margin:20px 0}.help summary{cursor:pointer;font-weight:600}.help p{margin-top:15px}.help code,code{overflow-wrap:anywhere;word-break:break-word}.exception-row{border-bottom:1px solid var(--line);padding:18px 0;margin-bottom:20px}.exception-row p{margin:5px 0}.actions{display:flex;gap:12px}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.notification-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px;border-bottom:1px solid var(--line)}.notification-row>a{text-decoration:none;color:var(--ink)}.notification-row small{display:block;color:var(--muted);margin-top:7px}.notification-row.unread{border-left:3px solid var(--sage);background:#f0f3e9}.notification-row button{white-space:nowrap;font-size:12px}.invite-box{background:#eef1e6;padding:20px;margin-top:20px}.invite-box code{display:block;padding:12px;background:white;margin:12px 0;user-select:all}.invite-box p{font-size:13px}.auth-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center;max-width:1000px;margin:30px auto}.auth-story h1{font-size:52px}.auth-story>p{color:var(--muted)}.auth-form{padding:35px}.auth-form h2{font-size:33px}.auth-form button{width:100%}.auth-form>p{font-size:13px}.rings{position:relative;height:110px;margin:25px 0}.rings i{position:absolute;left:10px;top:8px;width:90px;height:90px;border:3px solid var(--gold);border-radius:50%}.rings i+ i{left:70px;border-color:#8c9c7d}.message{padding:15px 20px;margin-bottom:25px;background:#e4ecda;border-radius:9px;border:1px solid #b3c49e;font-size:14px}.message.error{background:#fae9e0;border-color:#d5aea0}footer{max-width:1250px;margin:0 auto;padding:25px 30px;border-top:1px solid var(--line);text-align:center;color:var(--muted);font-size:11px}footer span{padding:0 10px;color:#8a743a}footer small{display:block;font-size:10px;margin-top:5px}.skip{position:absolute;top:-80px;left:10px;background:white;padding:10px;z-index:10}.skip:focus{top:10px}
@media(min-width:1550px){main{padding-left:25px;padding-right:25px}}@media(max-width:1100px){.calendar-layout{grid-template-columns:1fr}.day-detail{position:static}.calendar-event{font-size:11px}.day{min-height:170px}.calendar-event small{font-size:10px}.day-number span{font-size:11px}.auth-grid{gap:30px}.auth-story h1{font-size:44px}}@media(max-width:700px){.topbar{height:76px;padding:0 5%;gap:14px}.brand{font-size:37px}.ring{width:26px;height:30px;border-width:3px}.tagline{display:none}.nav{position:fixed;bottom:0;width:100%;z-index:5;gap:0;justify-content:space-around;padding:13px 5px 18px;box-shadow:0 -3px 15px #28322508}.nav a{font-size:12px}.nav .nav-add{padding:4px 12px}main{padding:28px 5% 35px}.page-heading{display:block;margin-bottom:25px}.page-heading>.button{margin-top:4px}h1{font-size:37px;letter-spacing:-1px}.eyebrow{font-size:9px;letter-spacing:1.5px}.opportunity-grid,.two-column,.choice-grid,.plan-grid,.auth-grid{grid-template-columns:1fr;gap:16px}.feature-card,.window-card{padding:25px}.feature-card h2,.window-card h2{font-size:29px}.panel{padding:23px}.section-heading h2{font-size:23px}.section-heading{margin-top:27px}.auth-grid{margin:0 auto}.auth-story h1{font-size:40px}.auth-story .rings,.auth-story .small{display:none}.auth-form{margin-top:6px}.calendar-toolbar{flex-wrap:wrap}.calendar-pager{width:100%}.legend{gap:11px;font-size:10px}.calendar{grid-template-columns:repeat(7,minmax(0,1fr));border-radius:8px}.day{padding:4px 2px;min-height:105px}.day-number{flex-direction:column;text-align:center;padding:0;font-size:12px}.day-number span{font-size:8px}.calendar-event{font-size:8px;padding:3px 2px;line-height:1.35;margin:3px 0}.calendar-event strong{font-size:8px;font-weight:500}.calendar-event small{font-size:7px}.off-label{font-size:8px;line-height:1.3;text-align:center;margin:4px 0}.week{grid-template-columns:1fr}.week .day{min-height:100px;padding:10px}.week .day-number{flex-direction:row;font-size:19px}.week .day-number span{font-size:13px}.week .calendar-event{font-size:13px;padding:10px}.week .calendar-event strong{font-size:13px}.week .calendar-event small{font-size:11px}.week .off-label{font-size:12px;text-align:left}.calendar-layout{gap:18px}.notification-row{padding:14px 8px;align-items:flex-start;flex-direction:column;gap:8px}.schedule-row{flex-direction:column;gap:8px}.form-shell h1{font-size:34px}.form-shell .panel{padding:20px}.choice{padding:25px}.lower{margin-top:18px}.actions{flex-wrap:wrap}footer{padding-bottom:110px}.status{font-size:10px}.day-detail{scroll-margin-top:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
input[type=checkbox]{width:auto;min-width:18px;height:18px;vertical-align:middle;margin-right:8px;accent-color:var(--sage)}#id_weekdays,#id_alternate_days{display:flex;flex-wrap:wrap;gap:8px 18px;padding:10px 0}#id_weekdays label,#id_alternate_days label{font-weight:400;min-width:125px}.activity-details{margin-top:8px;font-size:12px}.activity-details summary{cursor:pointer;color:var(--sage)}.activity-details p{margin:10px 0;overflow-wrap:anywhere}
.form-field{margin-bottom:22px}[hidden]{display:none!important}
/* Phase 2: shared opportunities and intent-led planning. */
.brand-ring{width:42px;height:49px;object-fit:contain;margin-left:-5px;margin-right:-2px;align-self:center}.brand{gap:0}.panel,.choice,.day-plan,.button,button{transition:box-shadow .16s ease,background-color .16s ease,transform .16s ease}.choice:hover{border-color:#adb99e;box-shadow:0 8px 24px #3d503b0c;transform:translateY(-2px)}.back-day{display:inline-block;font-size:13px;margin-bottom:23px;text-decoration:none}.intent-heading{max-width:900px;margin:0 auto 24px}.intent-heading h1{font-size:40px;margin-bottom:12px}.intent-heading .eyebrow{margin-bottom:12px}.intent-choices{max-width:900px;margin:auto}.intent-choices .choice{padding:25px 28px}.intent-choices .choice h2{font-size:27px;margin:15px 0 10px}.intent-choices .choice p{margin-bottom:18px}.choice-icon{display:inline-flex;justify-content:center;align-items:center;width:39px;height:39px;background:#f1ecdf;border:1px solid #e3d7b9;border-radius:11px;font-size:24px;color:#755d26}.featured-choice .choice-icon{background:#f7f1df}.intent-shell{max-width:620px}.intent-shell h1{font-size:37px;margin-bottom:12px}.intent-shell .eyebrow{margin:3px 0 13px}.intent-form{padding:28px;margin-top:24px}.intent-form input,.intent-form select,.intent-form textarea{background:#fffefa}.intent-form textarea{height:92px;min-height:80px}.intent-form label{font-size:14px}.toggle-field{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px 0}.toggle-field label{margin:0;cursor:pointer;font-weight:500}.toggle-field input{flex:none;width:19px;height:19px;margin:0;accent-color:var(--sage)}.toggle-field .errorlist{flex-basis:100%}.ending-field{padding-left:17px;border-left:2px solid #d5dfca}.form-caption{font-size:12px;line-height:1.6;color:#60695d;margin:14px 0}.form-actions{display:flex;align-items:center;gap:20px;margin-top:25px}.form-actions>a{font-size:13px}.delete-form{margin:22px 0;text-align:right}.repeat-link{padding:0 5px;margin-top:20px}.plan-detail>.panel{margin-top:5px;padding:32px}.plan-detail h1{margin-top:20px;overflow-wrap:anywhere}.plan-when{font-size:18px;line-height:1.7}.plan-location{display:flex;gap:16px;padding:18px;background:#f2efdf;border:1px solid #e5dcc3;border-radius:11px;margin:24px 0;overflow-wrap:anywhere}.plan-location>span{font-size:26px;color:#826932}.plan-location h3{margin-bottom:4px}.plan-location p{margin:0}.plan-location small{color:var(--muted)}.partner-message{border-left:3px solid #a3b391;background:#eef1e5;padding:18px 22px;margin:24px 0;border-radius:0 10px 10px 0;overflow-wrap:anywhere}.partner-message .eyebrow{font-size:10px;margin-bottom:10px}.partner-message p:last-child{margin-bottom:0}.note-card{border-top:3px solid #c5a253}.calendar-heading{margin-bottom:24px}.calendar-heading p.muted{margin:12px 0 0;font-size:14px}.calendar-toolbar{padding:15px 0}.calendar-pager .icon-button{width:38px;height:38px;text-align:center;padding:5px;background:var(--paper)}.legend{gap:13px 20px;margin:8px 0 21px;font-size:12px}.legend-opportunity{color:#425838;font-weight:600}.legend .off-dot{background:#d5e2c5;border-color:#b39a53;box-shadow:0 0 0 2px #f0e8ca}.calendar-layout{grid-template-columns:minmax(0,1fr) 300px;gap:24px}.calendar-wrap{min-width:0}.calendar-scroll{overflow-x:auto;overscroll-behavior-x:contain;border-radius:14px;scrollbar-width:thin;scrollbar-color:#b6c3a7 #f0f2e9}.calendar{border-radius:14px;border-color:#d8dfce;gap:1px;background:#dce3d4;border:1px solid #dce3d4}.day{border:0;background:var(--paper);padding:10px 7px;min-height:181px;display:flex;flex-direction:column;position:relative;gap:3px}.day.both-off{background:#dbe7ca;border-top:3px solid #c2a35c;padding-top:7px;box-shadow:inset 0 1px 15px #cedbb44d}.day.outside{background:#f1f2eb}.day.outside.both-off{background:#e3ebd8}.day.selected{outline:2px solid #4f6550;outline-offset:-3px;box-shadow:inset 0 0 0 5px #fffdf880}.day-number{padding:0 3px 4px;align-items:center;font-size:21px;line-height:1.25;min-height:35px}.day-number strong{font-weight:550}.day-number span{font-size:10px;text-transform:uppercase;letter-spacing:.5px}.is-today .day-number strong{border-radius:50%;background:var(--sage);color:white;min-width:30px;min-height:30px;display:inline-flex;align-items:center;justify-content:center;font-size:18px}.today-label{font-size:9px;color:#425838;text-align:right;font-weight:600;margin-top:-3px}.off-label{font-size:11px;color:#3e5430;line-height:1.4;text-align:left;padding:0 3px;font-weight:650;margin:0}.day-plan{display:flex;justify-content:center;align-items:center;gap:4px;padding:7px 3px;min-height:32px;border-radius:7px;background:#fcf8e9;border:1px solid #bca05a;box-shadow:0 2px 5px #64734512;text-decoration:none;font-size:11px;line-height:1.3;font-weight:650;color:#52633c;margin:5px 0 3px;white-space:nowrap}.day-plan:hover{background:#fffdf5;box-shadow:0 3px 9px #64734525}.plan-short{display:none}.day-events{flex:1;min-width:0}.calendar-event{padding:6px 5px;margin:5px 0 0;border-left:2px solid;font-size:10px;line-height:1.5;border-radius:5px;overflow-wrap:anywhere}.calendar-event strong{font-weight:650;font-size:11px}.calendar-event small{font-size:9px;line-height:1.4}.calendar-event.pending-event{border:1px dashed #ad924e;background:#fff9e9}.calendar-event.shared:not(.pending-event){border-left:3px solid #b39040}.calendar-event.partner1{border-left-color:#809770}.calendar-event.partner2{border-left-color:#a18bad}.empty-day{font-size:10px;color:#737b6c;display:block;margin:14px 3px;line-height:1.5}.note-indicator{display:block;text-decoration:none;font-size:11px;color:#695e38;padding:5px 3px;margin-top:4px}.day-detail{padding:24px 22px;border-top:3px solid #c5a253;position:static;scroll-margin-top:18px}.day-detail h2{font-size:27px;line-height:1.25}.day-detail .eyebrow{font-size:9px;letter-spacing:1.3px}.day-work-status{display:flex;flex-direction:column;gap:7px;font-size:12px;margin:14px 0}.day-work-status span{display:flex;align-items:center;gap:8px}.day-detail .status.off{background:#dbe7ca;padding:6px 10px}.day-actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin:20px 0;font-size:13px}.day-actions .button{padding:10px 14px}.day-group{padding-top:7px;margin-top:18px;border-top:1px solid var(--line)}.day-group>h3{margin-top:14px}.date-note{background:#f6f0dd;border-radius:9px;padding:14px;margin:10px 0;font-size:13px;overflow-wrap:anywhere;border-left:2px solid #c3a457}.date-note>a{color:#554c31;text-decoration:none}.date-note p{margin:8px 0}.date-note small{display:block;font-size:10px;color:#6e6a57}.date-note .note-edit{display:inline-block;font-size:11px;text-decoration:underline;margin-top:7px}.mobile-calendar-hint{display:none}.week .day{min-height:260px}.form-shell .errorlist{overflow-wrap:anywhere}.intent-form #id_kind{font-size:14px}.intent-form #id_kind input[type=radio]{width:auto;margin-right:6px;accent-color:var(--sage)}
@media(max-width:1150px){.calendar-layout{grid-template-columns:1fr}.calendar-event{font-size:12px}.calendar-event strong{font-size:12px}.day{padding:11px 8px;min-height:190px}.day.both-off{padding-top:8px}.day-plan{font-size:12px}.day-detail{display:block;max-width:none}.day-actions{flex-direction:row;flex-wrap:wrap;align-items:center;gap:15px}.day-work-status{flex-direction:row;flex-wrap:wrap;gap:20px}.day-detail .event{max-width:650px}}
@media(max-width:700px){.brand-ring{width:36px;height:42px;margin-left:-3px}.intent-heading h1,.intent-shell h1{font-size:32px;letter-spacing:-.8px}.intent-heading .back-day,.intent-shell .back-day{margin-bottom:20px}.intent-choices .choice{padding:21px}.intent-choices .choice h2{font-size:25px;margin-top:12px}.intent-choices{gap:12px}.intent-form{padding:21px}.intent-form .form-field{margin-bottom:19px}.intent-shell .form-caption{font-size:12px}.plan-detail>.panel{padding:24px}.plan-detail h1{font-size:34px}.plan-when{font-size:16px}.calendar-heading h1{font-size:35px}.calendar-heading .button{margin-top:16px}.calendar-toolbar{gap:13px;padding:8px 0}.calendar-pager h2{font-size:27px}.legend{font-size:11px;gap:10px 16px;margin:15px 0}.calendar.month{min-width:665px;grid-template-columns:repeat(7,minmax(94px,1fr))}.calendar.month .day{min-height:170px;padding:8px 6px}.calendar.month .day.both-off{padding-top:5px}.day-number{flex-direction:row;min-height:33px;font-size:21px;text-align:left}.day-number span{font-size:10px}.off-label{font-size:11px;text-align:left;margin:2px 0}.day-plan{font-size:12px;padding:6px 4px;min-height:32px}.plan-long{display:none}.plan-short{display:inline}.calendar-event,.calendar-event strong{font-size:11px}.calendar-event small{font-size:10px}.empty-day{font-size:11px}.mobile-calendar-hint{display:block;font-size:11px;line-height:1.5;color:var(--muted);margin:0 0 10px}.calendar-layout{gap:22px}.day-detail{padding:22px}.calendar.week{grid-template-columns:1fr}.calendar.week .day{min-height:120px;padding:14px;gap:5px}.week .day-plan{align-self:flex-start;padding:8px 14px;font-size:13px}.week .day-events{display:flex;flex-direction:column}.week .calendar-event{margin:4px 0}.week .off-label{font-size:12px}.day-actions{flex-direction:column;align-items:stretch}.day-actions>a:not(.button){padding:4px}.note-indicator{font-size:11px}.form-actions{align-items:stretch;flex-direction:column;gap:15px}.form-actions>a{text-align:center}.topbar .notification-link{font-size:12px}}
@media(prefers-reduced-motion:reduce){.panel,.choice,.day-plan,.button,button{transition:none}.choice:hover{transform:none}}
.calendar-event .time-short{display:none}@media(max-width:700px){.calendar-event .time-long{display:none}.calendar-event .time-short{display:block;white-space:nowrap;font-size:12px}.week .calendar-event .time-long{display:block}.week .calendar-event .time-short{display:none}}
@media(min-width:701px) and (max-width:1000px){.month .plan-long{display:none}.month .plan-short{display:inline}.month .calendar-event .time-long{display:none}.month .calendar-event .time-short{display:block;white-space:nowrap;font-size:12px}}
/* Compact month with accessible day detail on phones. */
@media(max-width:700px){.calendar.month{min-width:0;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar.month .day{min-height:125px;padding:5px 2px;min-width:0}.month .day-number{flex-direction:column;font-size:18px;min-height:44px}.month .day-number span{font-size:8px}.month .off-label{font-size:8px;padding:0;text-align:center}.month .day-plan{font-size:10px;padding:3px 0}.month .plan-short,.month .empty-day,.month .today-label{display:none}.month .day-events{display:flex;gap:3px;align-content:flex-start;justify-content:center;flex-wrap:wrap}.month .calendar-event{width:11px;height:11px;padding:0;margin-top:6px;border:1px solid currentColor;border-radius:50%;background:#809770}.month .calendar-event.partner2{background:#ac94b8}.month .calendar-event.shared{background:#c5a253}.month .calendar-event.pending-event{background:transparent;border-style:dashed}.month .calendar-event>*{display:none}.month .note-indicator{font-size:9px;text-align:center;padding:2px 0}.month .note-indicator span{display:none}.calendar-scroll{overflow:visible}.day-sheet{padding:0;border:0;border-radius:20px 20px 0 0;position:fixed;inset:auto 0 0;width:100%;max-width:none;max-height:85dvh;margin:0;background:var(--paper);color:var(--ink)}.day-sheet::backdrop{background:#1d2b2280}.day-sheet .day-detail{border:0;margin:0;border-radius:0}.sheet-close{position:sticky;top:0;z-index:2;width:100%;border-radius:0;background:var(--paper);color:var(--sage);border:0;border-bottom:1px solid var(--line);text-align:right}}
@media(max-width:700px){.month .calendar-event.timeoff{background:transparent;border-style:dotted}}

/* Memories: private day-linked photos and scrapbook. */
.photo-indicator{align-self:flex-end;margin-top:4px;padding:2px 5px;border-radius:12px;color:#77756c;text-decoration:none;font-size:10px;line-height:1.4}.photo-indicator.has-photos{background:#f4ead1;color:#69541e;font-weight:700}.day-memory-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.day-memory-strip a{aspect-ratio:1;border-radius:7px;overflow:hidden;background:#ece8dd}.day-memory-strip img{width:100%;height:100%;object-fit:cover;display:block}.memory-heading{align-items:end}.memory-heading h1{margin-bottom:8px}.memory-filter{margin:-14px 0 30px;font-size:13px}.memory-day{display:grid;grid-template-columns:190px minmax(0,1fr);gap:30px;border-top:1px solid #d9d6c9;padding:34px 0 48px}.memory-date{position:sticky;top:22px;align-self:start}.memory-date .eyebrow{margin-bottom:6px}.memory-date h2{font-size:25px;margin-bottom:8px}.memory-date>a{font-size:12px}.memory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px;align-items:start}.memory-card{background:#fffdfa;padding:10px 10px 15px;box-shadow:0 8px 24px #34302718;border:1px solid #e5dfd2;transform-origin:center;transition:transform .16s ease,box-shadow .16s ease}.memory-card.tilt-left{transform:rotate(-.7deg)}.memory-card.tilt-right{transform:rotate(.8deg)}.memory-card:hover{transform:rotate(0) translateY(-3px);box-shadow:0 12px 28px #34302725}.memory-card>a{display:block;aspect-ratio:1;overflow:hidden;background:#ece8df}.memory-card img{width:100%;height:100%;display:block;object-fit:cover}.memory-card p{font-family:Georgia,'Times New Roman',serif;font-size:17px;line-height:1.35;margin:13px 4px 4px;overflow-wrap:anywhere}.memory-card small{display:block;margin:5px 4px 0;color:var(--muted);font-size:10px}.memory-empty{text-align:center;padding:65px 25px}.memory-empty>span{font-size:36px}.memory-empty h2{margin:12px 0}.pagination{display:flex;justify-content:center;align-items:center;gap:28px;padding:24px;font-size:13px}.memory-detail{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,.7fr);gap:35px;align-items:start;max-width:1200px;margin:auto}.memory-detail-nav{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;font-size:13px}.memory-detail-nav>span{display:flex;gap:20px}.memory-photo-frame{background:#242722;padding:16px;border-radius:5px;box-shadow:0 12px 35px #1f251e24}.memory-photo-frame a{display:block}.memory-photo-frame img{display:block;width:100%;height:auto;max-height:75vh;object-fit:contain;margin:auto}.memory-detail-copy{padding:24px 8px}.memory-detail-copy h1{font-size:36px;overflow-wrap:anywhere}.caption-editor{border-top:1px solid var(--line);padding-top:17px;margin-top:24px}.caption-editor summary{cursor:pointer;color:var(--sage);font-weight:600}.caption-editor form{margin-top:18px}.caption-editor textarea{height:90px}.memory-detail-copy .delete-form{text-align:left}.intent-form input[type=file]{padding:9px;background:#f8f6ef}.intent-form input[type=file]::file-selector-button{font:inherit;color:var(--sage);background:var(--sage-light);border:1px solid #bdcbb5;border-radius:7px;padding:8px 12px;margin-right:12px;cursor:pointer}
@media(max-width:900px){.memory-day{grid-template-columns:1fr;gap:14px}.memory-date{position:static}.memory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.memory-detail{grid-template-columns:1fr}.memory-detail-copy{padding:8px}.memory-photo-frame img{max-height:68vh}}
@media(max-width:700px){.nav{gap:0}.nav a{font-size:10px;padding:4px}.nav .nav-add{padding:4px 9px}.month .photo-indicator{font-size:9px;padding:1px 3px;align-self:center}.memory-heading>.button{margin-top:16px}.memory-filter{margin:0 0 24px}.memory-day{padding:26px 0 36px}.memory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.memory-card{padding:7px 7px 11px}.memory-card p{font-size:15px}.memory-detail{gap:20px}.memory-detail-nav{font-size:12px}.memory-photo-frame{padding:8px}.memory-detail-copy h1{font-size:31px}.day-memory-strip{grid-template-columns:repeat(4,1fr)}}
@media(prefers-reduced-motion:reduce){.memory-card{transition:none}.memory-card.tilt-left,.memory-card.tilt-right,.memory-card:hover{transform:none}}
