.lp .pl-page{max-width:1440px;padding:26px 24px 36px}
.pl-page{font-family:var(--font-sans);color:var(--text-strong)}
.pl-heading{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-bottom:14px}
.pl-heading h1{font-family:var(--font-display);font-size:28px;font-weight:700;letter-spacing:-.025em;line-height:1.3;margin:0 0 5px}
.pl-heading p{font-size:15px;color:var(--text-muted);text-transform:capitalize}
.pl-date-nav{display:flex;align-items:center;gap:8px}
.pl-date-nav>button{display:grid;place-items:center;width:34px;height:38px;background:white;border:1px solid var(--border-default);border-radius:9px;cursor:pointer}
.pl-date-nav label{display:flex;align-items:center;gap:8px;background:white;border:1px solid var(--border-default);border-radius:9px;padding:0 10px;height:38px}
.pl-date-nav input{border:0;font:600 13px var(--font-sans);color:var(--text-strong);background:none;min-width:0;max-width:160px}
.pl-icon{width:20px;height:20px;flex-shrink:0;vertical-align:middle;object-fit:contain}
.pl-week-toggle{display:inline-flex;align-items:center;gap:8px;font:600 13px var(--font-sans);color:var(--aurora-700);background:none;border:0;cursor:pointer;padding:8px 0;text-decoration:underline;text-underline-offset:4px}
.pl-button{display:inline-flex;justify-content:center;align-items:center;gap:9px;font:650 13px var(--font-sans);border-radius:9px;padding:11px 16px;cursor:pointer;border:1px solid transparent;line-height:1.4;transition:background .15s;white-space:nowrap;text-decoration:none}
.pl-primary{background:#007f5f;color:#fff}.pl-primary:hover{background:#006f54}.pl-primary>.pl-icon{filter:brightness(0) invert(1)}
.pl-secondary{background:white;color:#006f54;border-color:#008966}.pl-secondary:hover{background:#e7f5ee}.pl-button:disabled{background:var(--surface-sunken);color:var(--text-muted);border-color:var(--border-subtle);cursor:default}.pl-button:disabled>.pl-icon{filter:none;opacity:.5}
.pl-add-personal{margin-left:auto}
.pl-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:11px;color:var(--text-muted);margin-bottom:18px}
.pl-meta .pl-text{margin-left:auto}.pl-text{display:inline-flex;align-items:center;gap:7px;font:600 12px var(--font-sans);background:none;border:0;padding:0;color:var(--aurora-700);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.pl-notice{padding:11px 15px;border:1px solid #bee1d2;background:#e6f6ef;border-radius:9px;font-size:13px;line-height:1.6;color:#145b45;margin-bottom:16px}.pl-notice.is-error{color:#8f3d24;border-color:#edc6b7;background:#fff2e9}
.pl-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(310px,1fr);gap:20px;align-items:start}
.pl-timeline-panel{background:#fff;border:1px solid var(--border-subtle);border-radius:16px;padding:24px 18px 30px 15px;min-width:0}
.pl-timeline{position:relative;min-height:570px;margin:0}
.pl-hour{position:absolute;left:0;right:0;height:1px;border-top:1px dashed #dce5ed;pointer-events:none}.pl-hour>span{position:absolute;width:55px;left:0;top:-10px;background:white;font-size:12px;color:var(--text-muted);padding-right:10px}
.pl-entry,.pl-free{position:absolute;left:65px;right:0;min-height:0;border-radius:10px;box-sizing:border-box}
.pl-free{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;background:#e4f5ef99;overflow:hidden;border:1px solid #e0f2eb}
.pl-free>div{min-width:0}.pl-free strong{display:block;font-size:14px;line-height:1.35;font-weight:650}.pl-free span{display:block;font-size:12px;color:var(--text-muted);margin-top:3px;line-height:1.4}
.pl-free-action{display:inline-flex;gap:7px;align-items:center;flex-shrink:0;background:#007f5f;color:white;border:0;border-radius:7px;padding:8px 10px;cursor:pointer;font:600 12px var(--font-sans)}.pl-free-action .pl-icon{width:16px;height:16px;filter:brightness(0) invert(1)}
.pl-entry{display:flex;align-items:center;gap:10px;padding:6px 10px;border:1px solid #b9ded0;background:#f2fbf7;overflow:hidden}
.pl-entry-personal{background:#e9eef4;border-color:#d5dfe9}.pl-entry-conflict{border-color:#c67b43;background:#fff1e5}
.pl-entry-image{display:block;width:76px;height:100%;max-height:65px;object-fit:cover;border-radius:6px;flex-shrink:0}
.pl-entry-copy{flex:1;min-width:0;line-height:1.3}.pl-entry-copy strong{display:block;font-size:14px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pl-entry-copy>span{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--text-muted);margin-top:3px}.pl-entry-copy small{display:block;font-size:10px;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin-top:2px}
.pl-conflict-tag{font-size:10px;color:#9d4c24;font-weight:600}
.pl-entry-edit{display:grid;place-items:center;background:transparent;border:0;cursor:pointer;width:28px;height:28px;flex-shrink:0;border-radius:6px}.pl-entry-edit:hover{background:white}.pl-entry-edit .pl-icon{width:17px;height:17px}
.pl-suggestions{background:#fff;border:1px solid var(--border-subtle);border-radius:16px;padding:18px;min-width:0}
.pl-suggestion-heading h2{font-family:var(--font-display);font-size:20px;line-height:1.4;font-weight:700;letter-spacing:-.02em;margin:0 0 7px}.pl-suggestion-heading>p{font-size:12px;color:var(--text-muted);line-height:1.5;margin-bottom:16px}
#planSuggestions{display:flex;flex-direction:column;gap:12px;max-height:410px;overflow-y:auto;scrollbar-width:thin;padding:2px}
.pl-recommendation{display:flex;gap:12px;padding:12px;border:1px solid var(--border-subtle);border-radius:12px;min-width:0}
.pl-rec-image{width:96px;height:132px;object-fit:cover;border-radius:8px;flex-shrink:0}
.pl-rec-body{min-width:0;flex:1}.pl-rec-title{font-size:14px;line-height:1.4;font-weight:700;color:var(--text-strong);text-decoration:none;display:block}.pl-rec-title:hover{color:var(--aurora-700)}
.pl-rec-time{display:flex;gap:6px;align-items:center;font-size:14px;margin-top:7px}.pl-rec-time .pl-icon{width:16px;height:16px}.pl-rec-location{font-size:11px;color:var(--text-muted);line-height:1.5;margin-top:5px}.pl-rec-help{font-size:11px;line-height:1.5;color:var(--text-muted);margin:7px 0}.pl-rec-body .pl-button{width:100%;font-size:12px;padding:8px 10px;white-space:normal}
.pl-suggestion-empty{padding:24px 10px;text-align:center;font-size:13px;line-height:1.6;color:var(--text-muted)}.pl-suggestion-empty>.pl-icon{width:30px;height:30px;opacity:.55;margin-bottom:12px}.pl-suggestion-empty h3{font-size:15px;color:var(--text-strong);font-weight:700;margin-bottom:8px}.pl-suggestion-empty p{margin-bottom:18px}.pl-loading{padding:24px;font-size:13px;color:var(--text-muted)}
.pl-settings{margin:20px 0 14px;border-top:1px solid var(--border-subtle)}
.pl-switch-label,.pl-buffer-label{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 0;font-size:12px;border-bottom:1px solid var(--border-subtle);line-height:1.5}
.pl-switch-label input{width:18px;height:18px;accent-color:#008966;cursor:pointer}.pl-buffer-label select{font:600 12px var(--font-sans);padding:7px;border:1px solid var(--border-default);border-radius:7px;background:white;color:var(--text-strong)}.pl-settings>p{font-size:11px;line-height:1.6;color:var(--text-muted);margin-top:12px}
.pl-toolbar{display:flex;align-items:center;gap:12px;padding:16px 18px;border:1px solid var(--border-subtle);background:#fff;border-radius:13px;margin-top:20px}.pl-toolbar>span{font-size:12px;color:var(--text-muted);padding-left:14px;border-left:1px solid var(--border-subtle)}
.pl-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:18px}.pl-week[hidden]{display:none}.pl-week-day{display:flex;flex-direction:column;text-align:left;gap:7px;padding:12px;border:1px solid var(--border-subtle);border-radius:10px;background:#fff;cursor:pointer;font-family:var(--font-sans);min-width:0}.pl-week-day.is-active{border-color:#008966;background:#edf9f3}.pl-week-day strong{font-size:12px;color:var(--text-strong);text-transform:capitalize}.pl-week-day small{font-size:11px;color:var(--text-muted)}.pl-week-day span{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;color:var(--text-body)}
.pl-dialog{margin:auto;padding:25px;border:1px solid var(--border-default);border-radius:18px;width:min(460px,calc(100% - 30px));max-height:90dvh;overflow:auto;background:#fff;color:var(--text-strong);font-family:var(--font-sans)}.pl-dialog::backdrop{background:#0b1b2e75}
.pl-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.pl-dialog-heading h2{font-size:21px;font-weight:750;line-height:1.4}.pl-dialog-heading button{display:grid;place-items:center;border:0;background:var(--surface-sunken);border-radius:50%;width:30px;height:30px;cursor:pointer}
.pl-dialog label{font-size:13px;display:block;margin-top:14px;font-weight:600}.pl-dialog input{display:block;width:100%;min-width:0;font:400 14px var(--font-sans);padding:11px 12px;margin-top:7px;border:1px solid var(--border-default);border-radius:9px;background:#fff;color:var(--text-strong)}.pl-dialog input[readonly]{background:var(--surface-sunken);color:var(--text-muted)}
.pl-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.pl-form-help,.pl-editor-source{font-size:12px;line-height:1.65;color:var(--text-muted);margin-top:14px}.pl-form-error{font-size:13px;line-height:1.6;padding:12px;border:1px solid #edc6b7;background:#fff2e9;color:#8f3d24;border-radius:9px;margin-top:14px}.pl-form-actions{display:flex;gap:14px;align-items:center;margin-top:22px}.pl-form-actions .pl-text{color:#a44532}
.pl-page button:focus-visible,.pl-page a:focus-visible,.pl-page input:focus-visible,.pl-dialog button:focus-visible,.pl-dialog input:focus-visible,.pl-dialog a:focus-visible{outline:2px solid #008966;outline-offset:3px}
.planner-nav{font-size:12px!important;white-space:nowrap;padding:8px 11px!important;gap:6px!important;color:var(--aurora-700)!important;border:1px solid var(--border-default);border-radius:9px;text-decoration:none;font-weight:700;display:inline-flex;align-items:center}.planner-nav img{width:17px;height:17px}
.hd-planner-entry{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 15px;margin-top:16px;border-radius:10px;background:#e7f5ee;border:1px solid #c5e6d8}.hd-planner-entry strong{font-size:14px;color:var(--text-strong)}.hd-planner-entry span{font-size:12px;color:var(--text-muted);margin-left:8px}.hd-planner-entry a{font-size:13px;color:#006f54;font-weight:700;white-space:nowrap;text-decoration:none}
@media(max-width:1600px){.lp-right:has(.planner-nav)>.btn-pri{display:none}}
@media(max-width:1100px){.pl-heading{gap:12px}.pl-heading h1{font-size:25px}.pl-add-personal{margin-left:0}.pl-layout{grid-template-columns:minmax(0,1.5fr) minmax(290px,1fr)}.pl-free-action{font-size:11px;padding:7px}.pl-rec-image{width:70px;height:110px}.pl-suggestion-heading h2{font-size:18px}}
@media(max-width:800px){.pl-layout{grid-template-columns:1fr}.pl-heading{gap:12px 18px}.pl-heading>div:first-child{flex-basis:100%}.pl-add-personal{margin-left:auto}.pl-free-action{font-size:12px}.pl-suggestions{padding:18px}#planSuggestions{max-height:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.pl-recommendation{display:block}.pl-rec-image{width:100%;height:100px;margin-bottom:10px}.pl-week{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){.lp .pl-page{padding:20px 16px 28px}.pl-heading h1{font-size:24px}.pl-date-nav label{padding-inline:8px}.pl-date-nav input{font-size:12px;width:140px}.pl-week-toggle{font-size:12px}.pl-add-personal{margin-left:0;width:100%;padding:10px}.pl-meta{gap:8px;font-size:10px}.pl-meta .pl-text{margin-left:0;font-size:11px}.pl-timeline-panel{padding:20px 10px 25px 10px;border-radius:12px}.pl-hour>span{font-size:10px;width:43px;padding-right:5px}.pl-entry,.pl-free{left:47px}.pl-entry{gap:6px;padding:5px 7px}.pl-entry-image{width:45px;max-height:48px}.pl-entry-copy strong{font-size:12px}.pl-entry-copy>span{font-size:10px}.pl-entry-copy small{display:none}.pl-entry>.pl-icon{display:none}.pl-entry-edit{width:24px;height:24px}.pl-free{padding:6px 8px;align-items:flex-start;justify-content:center;flex-direction:column;gap:5px}.pl-free strong{font-size:12px}.pl-free span{font-size:10px;margin-top:2px}.pl-free-action{font-size:10px;padding:5px 7px}.pl-free-action .pl-icon{width:12px;height:12px}.pl-toolbar{flex-wrap:wrap;padding:12px;gap:10px}.pl-toolbar>.pl-button{flex:1;font-size:12px;padding:10px}.pl-toolbar>span{flex-basis:100%;padding-left:0;border:0;font-size:11px}.pl-week{grid-template-columns:repeat(2,minmax(0,1fr))}.pl-week-day{padding:10px}.pl-dialog{padding:20px}.pl-form-actions{flex-wrap:wrap}.pl-meta #planSaveStatus{flex-basis:100%}.hd-planner-entry{align-items:flex-start}.hd-planner-entry>div span{display:block;margin:4px 0 0}.planner-nav{padding:6px!important;font-size:0!important}.planner-nav img{width:18px;height:18px}}

/* Final fidelity pass: legible schedule text and a proper switch state. */
.pl-hour>span{font-size:13px}.pl-entry-copy strong{font-size:15px}.pl-entry-copy>span{font-size:13px}.pl-free strong{font-size:15px}.pl-free span{font-size:13px}.pl-rec-title{font-size:15px}.pl-rec-help,.pl-rec-location{font-size:12px}.pl-entry-short .pl-entry-copy small{display:none}
.pl-switch-label input[role=switch]{appearance:none;position:relative;width:38px;height:22px;border:0;border-radius:20px;background:#a7b6c4;flex-shrink:0;transition:background .15s}
.pl-switch-label input[role=switch]::before{content:'';position:absolute;width:16px;height:16px;left:3px;top:3px;background:#fff;border-radius:50%;transition:transform .15s}
.pl-switch-label input[role=switch]:checked{background:#008966}.pl-switch-label input[role=switch]:checked::before{transform:translateX(16px)}
.lp:has(.pl-page) .lp-foot{background:#fff;color:var(--text-body);border-top:1px solid var(--border-subtle)}.lp:has(.pl-page) .lp-foot .lp-logo,.lp:has(.pl-page) .lp-foot h5{color:var(--text-strong)}.lp:has(.pl-page) .lp-foot .ab p,.lp:has(.pl-page) .lp-foot .fc a,.lp:has(.pl-page) .lp-fb{color:var(--text-muted)}.lp:has(.pl-page) .lp-fb{border-color:var(--border-subtle)}.lp:has(.pl-page) .lp-fb a{color:var(--aurora-700)}
@media(max-width:600px){.pl-hour>span{font-size:11px}.pl-entry-copy strong{font-size:12px}.pl-entry-copy>span{font-size:11px}.pl-free strong{font-size:13px}.pl-free span{font-size:11px}}

.pl-short-list{margin:24px 0 0 65px;border-top:1px solid var(--border-subtle);padding-top:14px}.pl-short-list h3{font-size:13px;font-weight:700;margin-bottom:8px}.pl-short-item{font:500 12px var(--font-sans);display:flex;align-items:center;gap:9px;width:100%;text-align:left;background:none;border:0;color:var(--text-body);cursor:pointer;padding:8px 0}.pl-short-item .pl-icon{width:15px;height:15px}.pl-entry-compact{padding:0 6px}.pl-entry-compact .pl-entry-image,.pl-entry-compact>.pl-icon,.pl-entry-compact .pl-entry-copy>span{display:none}.pl-entry-compact .pl-entry-copy strong{font-size:10px;line-height:1}.pl-entry-compact .pl-entry-edit{width:18px;height:100%;padding:0}.pl-entry-compact .pl-entry-edit .pl-icon{width:12px;height:12px}
@media(max-width:600px){#planSuggestions{display:flex;flex-direction:column}.pl-recommendation{display:flex;gap:10px}.pl-rec-image{width:76px;height:112px;margin:0}.pl-rec-title{font-size:14px}.pl-rec-body .pl-button{white-space:normal}.pl-free{flex-direction:row;align-items:center;justify-content:space-between;gap:6px}.pl-free-action{font-size:0;width:28px;height:28px;padding:5px}.pl-free-action .pl-icon{width:16px;height:16px}.pl-short-list{margin-left:47px}}
