:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#252c29;background:#f8faf8;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;border:1px solid #d5ded7;border-radius:9px;background:white;color:inherit;padding:10px 15px;font-weight:600}button:hover{background:#edf3ee}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #398267;outline-offset:3px}button:disabled{opacity:.5;cursor:wait}.primary{background:#215c47;border-color:#215c47;color:white}.primary:hover{background:#194735}.topbar{height:78px;border-bottom:1px solid #e0e6e0;display:flex;align-items:center;justify-content:space-between;padding:0 5%}.brand{display:flex;align-items:center;gap:12px;font-weight:750;font-size:20px;color:inherit;text-decoration:none}.logo{background:#215c47;color:#fff;border-radius:11px;padding:8px 12px}.badge{font-size:12px;border:1px solid #d8e2d9;padding:6px 10px;border-radius:20px;color:#57685b}main{max-width:1440px;margin:auto;padding:40px 5%}.welcome{max-width:900px;padding:40px 0}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:750;color:#53735f}h1{font-size:36px;letter-spacing:-1.3px;margin:8px 0 12px;line-height:1.15}.welcome h1{font-size:clamp(36px,5vw,62px)}.intro{font-size:18px;line-height:1.7;max-width:620px;color:#647168}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin:40px 0}.steps b{color:#588069;font-size:13px}.steps h3{margin:12px 0 6px}.steps p,.muted{color:#657369;font-size:14px;line-height:1.6}.page-heading,.calendar-toolbar,.footer,.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.actions{display:flex;gap:10px;align-items:center}.notice{display:flex;gap:16px;background:#ecf2eb;border:1px solid #d7e3d5;padding:14px 18px;border-radius:10px;margin:24px 0;font-size:13px;color:#486044}.calendar-toolbar h2{min-width:180px;text-align:center;font-size:19px}.calendar-toolbar label{display:flex;gap:10px;align-items:center;font-size:13px}select,input{border:1px solid #d5ded7;padding:10px;border-radius:7px;background:white;color:inherit}.calendar-help{font-size:12px;color:#69756d;margin:8px 0 18px}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:#dce4dd;border:1px solid #dce4dd;border-radius:12px;overflow:hidden}.weekday{background:#f4f7f3;text-align:center;padding:12px;font-size:11px;font-weight:700;color:#718073}.day{min-height:142px;background:#fff;padding:8px}.outside{background:#f4f6f3}.outside .day-number{color:#a1aba2}.day-number{font-size:12px;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;margin-bottom:6px}.current{background:#215c47;color:white;border-radius:50%}.video{width:100%;text-align:left;border:1px solid #d2e2d3;background:#edf4ec;padding:8px;border-radius:6px;margin-bottom:5px;cursor:grab;overflow-wrap:anywhere}.video span{font-size:10px;display:block;color:#547158;font-weight:500}.video strong{font-size:12px;display:block;margin:5px 0}.video small{font-size:9px;color:#738274;font-weight:400}.footer{margin-top:14px;font-size:12px;color:#728075}.footer button{font-size:12px;background:transparent}.activity{margin-top:20px;padding:22px 0;border-top:1px solid #dce4dd}.activity h2{font-size:16px}.activity ul{padding-left:18px;font-size:13px;color:#657369;line-height:1.9}#message{font-size:14px;color:#215c47}dialog{border:1px solid #d5ded7;border-radius:16px;box-shadow:0 24px 80px #12352433;padding:28px;max-width:520px;width:calc(100% - 32px);color:inherit}dialog::backdrop{background:#182e2366}dialog h2{font-size:22px;margin:0}dialog label{display:grid;gap:8px;margin:20px 0;font-size:13px;font-weight:650}dialog p,dialog li{font-size:14px;line-height:1.65}dialog li{margin:8px 0}.dialog-heading button{border:0;font-size:22px;padding:2px 8px}.end{justify-content:flex-end;margin-top:24px}#error{color:#af3029}.calendar-scroll{overflow-x:auto}[hidden]{display:none!important}@media(max-width:760px){main{padding:24px 16px}.topbar{padding:0 16px}.page-heading,.calendar-toolbar{align-items:flex-start;flex-direction:column}.page-heading h1{font-size:30px}.notice{flex-direction:column;gap:5px}.calendar{min-width:760px}.steps{grid-template-columns:1fr;gap:12px}.calendar-toolbar h2{min-width:145px;font-size:17px}.actions{flex-wrap:wrap}}
.connection{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid #d7e3d5;border-radius:12px;padding:18px;margin-bottom:28px;background:white}.connection p{margin:6px 0 0}#connection-error,#setup-error{color:#af3029;font-size:14px}#import-progress{margin-bottom:20px;font-size:13px}code{overflow-wrap:anywhere}a{color:#215c47}#credentials-file{max-width:100%}@media(max-width:760px){.connection{align-items:flex-start;flex-direction:column}}
.site-footer{text-align:center;padding:24px;color:#657369;font-size:12px}#client-id{width:100%}
/* Calendar workspace */
main{max-width:1600px;padding:28px 4%}.calendar-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.calendar-header h1{font-size:25px;letter-spacing:-.6px;margin:0 0 4px}.calendar-header .muted{font-size:12px}.calendar-toolbar{margin-bottom:18px}.calendar-toolbar .muted{font-size:12px}.calendar-footer{display:flex;align-items:center;gap:16px;padding:16px 0;font-size:12px}.calendar-footer a{margin-left:auto;color:#657369}.calendar-footer .muted{font-size:12px}.day{min-height:clamp(110px,14vh,165px)}#connection-error:empty,#connection-status:empty,#message:empty{display:none}dialog details{margin:20px 0;font-size:14px;line-height:1.6}dialog summary{cursor:pointer;font-weight:600}@media(max-width:760px){.calendar-header{align-items:flex-start;flex-direction:column}main{padding:20px 16px}.calendar-toolbar{flex-direction:row;align-items:center;flex-wrap:wrap}}
.video.saving{opacity:.75;cursor:progress}.saving-label{display:block;margin-top:4px;font-size:10px;color:#53735f}
.video.saving{opacity:1;background:#e7f1e7}.saving-label{display:block;line-height:1.5;margin-top:8px;color:#355e43;font-weight:500}.saving-label time,.saving-label span{display:block;font-size:10px;color:inherit}.saving-spinner{display:inline-block;vertical-align:-2px;width:11px;height:11px;margin-right:5px;border:2px solid #a3bba9;border-top-color:#215c47;border-radius:50%;animation:saving-spin .8s linear infinite}@keyframes saving-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.saving-spinner{animation:none}}
.video.pending{background:#fff5de;border-color:#e3c583}.pending-label{display:block;margin-top:8px;color:#78591d;font-size:10px;line-height:1.5}
#queue-notice{padding:12px 16px;border-radius:8px;background:#fff5de;color:#78591d;font-size:13px}#queue-error{font-size:13px;color:#af3029}

.planner-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start}.calendar-panel{min-width:0}.private-sidebar{background:white;border:1px solid #dce4dd;border-radius:12px;padding:18px}.private-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.private-heading h2{font-size:17px;margin:0}.private-sidebar .muted{font-size:12px}.private-list{list-style:none;padding:0;margin:16px 0 0;max-height:70vh;overflow-y:auto}.private-list li+li{border-top:1px solid #e5ebe5}.private-list a{display:block;padding:14px 3px;text-decoration:none;overflow-wrap:anywhere}.private-list a:hover{background:#f4f7f3}.private-list strong{display:block;font-size:13px;line-height:1.5}.private-list span{display:block;font-size:11px;color:#657369;margin-top:6px}@media(max-width:1100px){.planner-layout{grid-template-columns:minmax(0,1fr)}.private-list{max-height:360px}}

.unscheduled-video{width:100%;text-align:left;border:0;background:transparent;padding:14px 12px;cursor:grab;overflow-wrap:anywhere}.unscheduled-video:active{cursor:grabbing}

.picker{margin-top:20px}.picker-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:12px}.picker-days span{text-align:center;font-size:12px;padding:5px}.picker-days button{padding:8px 0;font-size:13px}.picker-days button[aria-pressed="true"]{background:#215c47;color:white}.picker .actions label{margin:16px 0 0}.picker .dialog-heading button{font-size:18px;padding:6px 10px}

.private-sidebar.drop-active{background:#edf4ec;border-color:#215c47;outline:2px dashed #215c47;outline-offset:4px}

.unscheduled-video{display:flex;align-items:center;gap:12px}.private-list .unscheduled-thumbnail{display:flex;align-items:center;justify-content:center;flex:0 0 72px;width:72px;height:48px;margin:0;border-radius:6px;overflow:hidden;background:#e4eae5}.unscheduled-thumbnail img{width:100%;height:100%;object-fit:cover}.private-list .unscheduled-details{min-width:0;margin:0;flex:1}.private-list .thumbnail-placeholder{margin:0;color:#829188;font-size:20px}

.video{display:flex;align-items:flex-start;gap:8px}.video .calendar-thumbnail{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:33px;overflow:hidden;border-radius:4px;background:#dce7dc}.calendar-thumbnail img{width:100%;height:100%;object-fit:cover}.video .calendar-video-details{flex:1;min-width:0;color:inherit}.video .thumbnail-placeholder{font-size:16px;color:#829188}.calendar-video-details strong{margin:4px 0 0}

/* Scheduling editor */
#editor{max-width:800px;padding:0;border-radius:20px;background:#fff}#editor .editor-heading{padding:25px 28px 22px}.editor-eyebrow{color:#657d6d;font-size:10px!important;letter-spacing:1.5px;font-weight:700;margin:0 0 7px!important}#editor-heading{font-size:22px}.editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:30px;padding:28px}.editor-video{min-width:0}.editor-video img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:10px;background:#edf4ec}.editor-video h3{font-size:18px;line-height:1.4;margin:18px 0 10px;overflow-wrap:anywhere}#editor-description{font-size:13px;line-height:1.65;color:#657369;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line;overflow-wrap:anywhere}#editor .picker{margin:0;padding:0 0 0 26px}.picker-heading{display:flex;justify-content:space-between;align-items:center;gap:8px}.picker-heading button{border:0;background:transparent;padding:8px;border-radius:7px}.picker-heading button:hover{background:#edf4ec}#picker-month{font-size:14px;text-align:left;padding-left:0;font-weight:700}.picker-navigation{display:flex;gap:2px}.picker-navigation button{font-size:18px;width:30px;padding:5px}#editor .picker-days{gap:3px;margin-top:13px;min-height:260px;grid-template-rows:24px repeat(6,1fr)}#editor .picker-days button{border:0;background:transparent;border-radius:7px;font-size:12px;font-weight:500;padding:7px 0}#editor .picker-days button:hover{background:#edf4ec}#editor .picker-days .outside{color:#98a69d}#editor .picker-days button[aria-current="date"]{box-shadow:inset 0 0 0 1px #729b83;color:#215c47;font-weight:700}#editor .picker-days button[aria-pressed="true"]{background:#215c47;color:#fff;box-shadow:none}#editor .picker-weekday{font-size:10px;color:#7a887f;padding:4px 0}#editor .picker-overview{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(4,1fr);gap:8px}.picker-summary{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding-top:12px;font-size:12px;color:#657369}.picker-summary button{border:0;padding:5px 8px;font-size:12px;color:#215c47;background:#edf4ec}.picker-time{display:flex;align-items:center;justify-content:space-between;margin-top:16px;font-size:12px;font-weight:600}#editor .picker-time label{margin:0}#editor .picker-time select{padding:7px 9px;background:#f8faf8;font-size:13px}#editor .picker-time .actions{gap:6px}#time-help{font-size:11px;margin:8px 0 0;text-align:right}.editor-footer{display:flex;justify-content:space-between;gap:12px;padding:18px 28px;background:#f8faf8}.editor-footer>.actions{margin-left:auto}.editor-footer button{font-size:13px}#editor #error{margin:0 28px 16px}#editor #error:empty{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media(max-width:640px){.editor-layout{grid-template-columns:minmax(0,1fr);padding:20px;gap:24px}#editor .picker{border-left:0;padding:0}.editor-video img{max-height:160px}.editor-video h3{margin-top:12px}#editor .editor-heading{padding:20px}.editor-footer{padding:16px 20px;flex-wrap:wrap}#editor{max-height:calc(100dvh - 24px);overflow:auto}.editor-footer>.actions{flex-wrap:wrap}}

#youtube-setup{max-width:650px;max-height:calc(100dvh - 32px);overflow-y:auto}.setup-guide>ol{padding-left:24px}.setup-guide>ol>li{padding-left:6px;margin:24px 0}.setup-guide h3{font-size:15px;margin:0 0 6px}.setup-guide p{margin:10px 0}.setup-guide code{font-size:12px}.setup-origin{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:12px;background:#edf4ec;border-radius:8px}.setup-origin code{flex:1}.setup-origin button{font-size:12px;white-space:nowrap}.setup-scope{display:block;padding:12px;background:#f4f7f3;border-radius:8px;overflow-wrap:anywhere}.setup-troubleshooting{padding:14px;background:#f8faf8;border-radius:10px}
