:root{color:#172033;background:#f5f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer;background:#fff;border:1px solid #cfd6e3;border-radius:8px;padding:.5rem .75rem}button.active,button.primary{color:#fff;background:#2557d6;border-color:#2557d6}button.primary:disabled{cursor:not-allowed;opacity:.5;box-shadow:none}button.primary.primary--working:disabled{opacity:1;cursor:wait;color:#fff;pointer-events:none;background:#1a4dca;border-color:#153f9e;transform:translateY(1px);box-shadow:inset 0 2px 6px #0003}.app{box-sizing:border-box;flex-direction:column;gap:.75rem;min-height:100vh;padding:1rem;display:flex}.appScheduleGrid{flex:1;grid-template-columns:minmax(0,1fr) 420px;align-items:stretch;gap:1rem;min-height:0;display:grid}.appHeader{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;display:flex}.appTitle{margin:0;font-size:1.35rem}.appTabs{background:#e8ecf4;border-radius:10px;gap:.35rem;padding:.2rem;display:flex}.appTabs button{color:#3d4a63;background:0 0;border:none;border-radius:8px;padding:.45rem 1rem;font-weight:600}.appTabs button.active{color:#1d4ed8;background:#fff;box-shadow:0 1px 3px #141e321f}.toolbarTitle{margin:0;font-size:1.1rem}.configurationPanel{background:#fff;border:1px solid #dde3ee;border-radius:16px;max-width:52rem;padding:1.25rem;box-shadow:0 10px 30px #141e3214}.configToolbar{flex-wrap:wrap;gap:.5rem;margin:.75rem 0 1rem;display:flex}.peakTimesSection{border-top:1px solid #e3e8f2;border-bottom:1px solid #e3e8f2;margin:1rem 0;padding:1rem 0}.peakTimesForm{flex-direction:column;gap:.75rem;display:flex}.peakTimesGrid{grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:.65rem .75rem;display:grid}.peakTimeField{color:#3d4a63;flex-direction:column;gap:.3rem;font-size:.85rem;font-weight:600;display:flex}.peakTimeField input{background:#fff;border:1px solid #cfd6e3;border-radius:8px;min-height:2.35rem;padding:.4rem .5rem}.peakTimesActions{flex-wrap:wrap;gap:.5rem;display:flex}.channelList{margin:0;padding:0;list-style:none}.channelListItem{background:#fbfcff;border:1px solid #dde3ee;border-radius:10px;margin-bottom:.5rem;overflow:hidden}.channelListItem button.channelListItemMain{text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:.2rem;width:100%;padding:.65rem .75rem;display:flex}.channelListItem.active{border-color:#1d4ed8;box-shadow:0 0 0 1px #1d4ed840}.channelName{color:#172033;font-weight:600}.channelMeta{color:#5c6470;font-size:.82rem}.channelDetail{gap:.5rem;padding:0 .75rem .75rem;display:flex}.buttonDanger{color:#9f2d28;background:#fff5f5;border-color:#f0a4a0}.buttonDanger:hover:not(:disabled){background:#ffe8e6}.modalOverlay{z-index:30;background:#141e3273;justify-content:center;align-items:flex-start;padding:2rem 1rem;display:flex;position:fixed;inset:0;overflow:auto}.modalPanel{background:#fff;border-radius:16px;width:100%;max-width:32rem;padding:1.25rem;box-shadow:0 20px 60px #0003}.modalHeader{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.connectProviderList{margin:0;padding:0;list-style:none}.connectProviderItem{border:1px solid #e3e8f2;border-radius:10px;flex-direction:column;gap:.5rem;margin-bottom:.5rem;padding:.65rem .75rem;display:flex}.connectType{color:#5c6470;margin-top:.15rem;font-size:.78rem;display:block}.connectProviderActions .stackForm,.connectProviderActions .inlineForm{flex-direction:column;gap:.4rem;margin-top:.35rem;display:flex}.connectProviderActions input{border:1px solid #cfd6e3;border-radius:8px;width:100%;padding:.4rem .5rem}.bufferPickForm{border-top:1px solid #e3e8f2;margin-top:1rem;padding-top:.75rem}.messageInline{color:#b42318;margin:.5rem 0;font-size:.9rem}.app--configTab{align-items:center}.calendarPanel,.composer{background:#fff;border:1px solid #dde3ee;border-radius:16px;min-width:0;padding:1rem;box-shadow:0 10px 30px #141e3214}.calendarPanel{overflow-x:hidden}.toolbar{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.toolbar.calendarToolbar{flex-wrap:wrap}.calendarRangeGroup{flex-wrap:wrap;flex:240px;justify-content:center;align-items:flex-end;gap:.75rem 1rem;min-width:0;display:flex}.calendarRangeGroup label{color:#4a5568;flex-direction:column;gap:.2rem;font-size:.78rem;font-weight:600;display:flex}.calendarRangeGroup input[type=date]{min-width:10.25rem;padding:.35rem .45rem}.toolbar div{gap:.4rem;display:flex}.toolbar .calendarRangeGroup{flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem;display:flex}h1,h2,h3{margin:0 0 .75rem}.calendarGrid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.75rem;min-width:0;display:grid}.calendarGrid.week,.calendarGrid.day,.calendarGrid.agenda{grid-template-columns:1fr}.dayCard{background:#fbfcff;border:1px solid #e3e8f2;border-radius:12px;min-width:0;min-height:140px;padding:.5rem;transition:border-color .15s,background .15s,box-shadow .15s}.dayCard--daySelected{background:#eff6ff;border-color:#2563eb;box-shadow:inset 0 0 0 1px #2563eb33}.dayCard--postOpen{background:#f5f3ff;border-color:#7c3aed;box-shadow:inset 0 0 0 2px #7c3aed47}.dayCard--daySelected.dayCard--postOpen{background:#e8e7ff;border-color:#4f46e5;box-shadow:inset 0 0 0 1px #2563eb40,0 0 0 2px #4f46e526}.dayHeader{text-align:left;cursor:pointer;color:#1a2332;background:0 0;border:0;border-radius:8px;width:100%;padding:.25rem .35rem;font-weight:700;transition:background .15s,color .15s}.dayHeader:hover{background:#193b900f}.dayHeader--selected{color:#1d4ed8;background:#2563eb1f}.eventList{flex-direction:column;gap:.35rem;max-height:220px;padding-right:.25rem;display:flex;overflow-y:auto}.eventPill{text-align:left;border:1px solid #cfdbff;border-left:3px solid var(--batch-color,#cfdbff);color:#193b90;cursor:pointer;background:#eef3ff;border-radius:8px;justify-content:space-between;gap:.5rem;width:100%;min-width:0;padding:.4rem .5rem;transition:background .12s,border-color .12s,box-shadow .12s,color .12s;display:flex}.eventPill span,.eventPill small{min-width:0}.eventPill span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.eventPill small{flex-shrink:0}.eventPill:hover{background:#e2ebff;border-color:#b8c9f5}.eventPill.selected{color:#fff;background:#1d4ed8;border-color:#1e40af;font-weight:600;box-shadow:0 0 0 2px #fff,0 0 0 4px #1d4ed873}.eventPill.selected small{color:#dbeafe;opacity:.95;font-weight:500}.eventPill--done{border-color:#c8ccd6;border-left-color:var(--batch-color,#c8ccd6);color:#5c6470;opacity:.92;cursor:pointer;background:#e8e9ec}.eventPill--done:hover{color:#3f4652;opacity:1;background:#dce0e6;border-color:#b4bac7}.eventPill--done.selected{color:#f3f4f6;opacity:1;background:#6b7280;border-color:#4b5563;box-shadow:0 0 0 2px #fff,0 0 0 4px #6b728080}.eventPill--done.selected small{color:#e5e7eb;opacity:.9}.eventStatusBadge{color:#6b7280;font-weight:500}.eventStatusBadge--failed{color:#b42318}.eventStatusBadge--posting{color:#1d4ed8}.popupStatus{color:#374151;margin:.75rem 0 0;font-size:.9rem}.popupError{color:#b42318;margin:.75rem 0 0;font-size:.9rem}.prompt{z-index:10;background:#fff;border:1px solid #cfd6e3;border-radius:14px;max-width:480px;padding:2.25rem 1rem 1rem;position:fixed;bottom:1.5rem;left:1.5rem;box-shadow:0 16px 50px #141e3233}.promptClose{color:#64748b;background:0 0;border-color:#0000;border-radius:6px;padding:.2rem .55rem;font-size:1.1rem;line-height:1.2;position:absolute;top:.5rem;right:.5rem}.promptClose:hover{color:#1e293b;box-shadow:none;background:#f1f5f9;border-color:#cbd5e1}.dayCaptionPrompt{max-width:min(760px,100vw - 3rem);max-height:calc(100vh - 3rem);overflow-y:auto}.dayCaptionList{gap:.75rem;margin:.75rem 0;display:grid}.dayCaptionItem{background:#fbfcff;border:1px solid #e3e8f2;border-radius:10px;gap:.35rem;padding:.65rem;display:grid}.dayCaptionItem>span{align-items:baseline;gap:.5rem;display:flex}.dayCaptionItem small{color:#66728a}.dayCaptionItem textarea{resize:vertical;border:1px solid #cfd6e3;border-radius:8px;width:100%;padding:.55rem}.captionLimit{justify-self:end}.captionLimit--error{font-weight:700;color:#b42318!important}.prompt button{margin-top:.5rem;margin-right:.5rem;transition:background .15s,border-color .15s,box-shadow .15s,transform 80ms}.prompt button:hover:not(:disabled){background:#f0f5ff;border-color:#8caef0;box-shadow:0 2px 10px #2557d624}.prompt button:focus-visible{outline-offset:2px;outline:2px solid #4a6cf7}.prompt button:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px 5px #2557d61f}.prompt button:disabled{opacity:.55;cursor:not-allowed}.popupSection{margin:.75rem 0}.popupSection p{white-space:pre-wrap;margin:.35rem 0 0}.popupMediaList{flex-direction:column;gap:.5rem;max-height:260px;margin:.75rem 0;display:flex;overflow-y:auto}.popupMediaItem{background:#fbfcff;border:1px solid #e3e8f2;border-radius:10px;grid-template-columns:64px 1fr;align-items:start;gap:.5rem;padding:.4rem;display:grid}.popupMediaItem img{object-fit:cover;border:1px solid #dde3ee;border-radius:8px;width:64px;height:64px}.imageFallback{color:#193b90;background:#eef3ff;border:1px solid #dde3ee;border-radius:8px;place-items:center;width:64px;height:64px;font-size:.8rem;font-weight:700;display:grid}.popupMediaItem div{min-width:0}.popupMediaItem small{color:#66728a;overflow-wrap:anywhere;display:block}.composer{flex-direction:column;gap:.65rem;height:100%;display:flex;overflow-y:auto}.composeCaptionBlock{flex-direction:column;flex:none;gap:.35rem;min-width:0;display:flex}.composeCaptionBlock .largeText{box-sizing:border-box;flex:none;min-height:11.5rem}.composer input,.composer select,.composer textarea{border:1px solid #cfd6e3;border-radius:8px;width:100%;padding:.6rem}.largeText{resize:vertical;min-height:130px}.mediaAddRow,.scheduleRow{grid-template-columns:1fr auto;align-items:center;gap:.5rem;display:grid}.scheduleRow{grid-template-columns:1fr 1fr}.hint{color:#66728a;margin:-.25rem 0 .25rem;font-size:.9rem}.hint.warning{color:#b45309}.clipboardBanner{color:#92400e;background:#fffbeb;border:1px solid #fcd34d;border-radius:6px;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;padding:.4rem .75rem;font-size:.875rem;display:flex}.mediaList{flex-direction:column;gap:.75rem;display:flex}.mediaItem{background:#fbfcff;border:1px solid #e3e8f2;border-radius:12px;grid-template-columns:74px 1fr 110px;gap:.5rem;padding:.65rem;display:grid}.mediaPreview{grid-row:span 3}.mediaPreview img{object-fit:cover;border:1px solid #dde3ee;border-radius:8px;width:64px;height:64px}.mediaItem strong,.mediaItem input,.mediaItem textarea,.mediaItem small{grid-column:2/-1}.thumbnailOverlay{z-index:20;background:#0c12208c;place-items:center;display:grid;position:fixed;inset:0}.thumbnailDialog{background:#fff;border-radius:16px;width:min(760px,100vw - 2rem);max-height:calc(100vh - 2rem);padding:2.25rem 1rem 1rem;position:relative;overflow:auto;box-shadow:0 20px 70px #00000059}.thumbnailGrid{gap:1rem;margin-top:.75rem;display:grid}.thumbnailItem img{object-fit:contain;border-radius:12px;max-width:100%;max-height:70vh;display:block}.thumbnailCarousel{grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem;margin-top:.75rem;display:grid}.carouselSlide{justify-content:center;align-items:center;min-width:0;display:flex}.carouselSlide img{object-fit:contain;border-radius:12px;width:auto;max-width:100%;max-height:min(70vh,720px);display:block}.carouselArrow{color:#1a2340;cursor:pointer;background:#e8ecf5;border:none;border-radius:50%;flex-shrink:0;place-items:center;width:2.5rem;height:2.5rem;font-size:1.75rem;line-height:1;transition:background .15s,transform .1s;display:grid}.carouselArrow:hover{background:#d0ddf5;transform:scale(1.06);box-shadow:0 2px 12px #2557d638}.carouselArrow:focus-visible{outline-offset:2px;outline:2px solid #4a6cf7;box-shadow:0 0 0 4px #4a6cf733}.carouselArrow:active{background:#c4d0e8;transform:scale(.98)}.carouselCounter{text-align:center;color:#66728a;margin:.5rem 0 0;font-size:.9rem}.thumbnailClose{color:#64748b;background:0 0;border-color:#0000;border-radius:6px;padding:.2rem .55rem;font-size:1.1rem;line-height:1.2;transition:background .15s,border-color .15s,box-shadow .15s,transform 80ms;position:absolute;top:.6rem;right:.6rem}.thumbnailClose:hover{background:#f0f5ff;border-color:#8caef0;box-shadow:0 2px 10px #2557d629}.thumbnailClose:focus-visible{outline-offset:2px;outline:2px solid #4a6cf7}.thumbnailClose:active{transform:translateY(1px);box-shadow:0 1px 5px #2557d61f}.thumbnailFallback{overflow-wrap:anywhere;background:#fbfcff;border:1px solid #dde3ee;border-radius:12px;margin-top:.75rem;padding:1rem}fieldset{border:1px solid #dde3ee;border-radius:12px}.platformFieldsetActions{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.2rem 0 .45rem;display:flex}button.subtleButton{color:#3d4a63;background:#f0f2f6;border-color:#c5cdd8;padding:.28rem .6rem;font-size:.85rem}button.subtleButton:hover:not(:disabled){background:#e6eaf2}button.subtleButton:disabled{opacity:.5;cursor:not-allowed}button.subtleButton--active{color:#1e40af;background:#dbeafe;border-color:#93c5fd}.dayEventActions{background:#f8f9fc;border:1px solid #e2e6ef;border-radius:6px;flex-direction:column;gap:.35rem;margin-bottom:.85rem;padding:.5rem .6rem;display:flex}.dayEventActionRow{justify-content:space-between;align-items:center;gap:.5rem;padding:.2rem 0;display:flex}.dayEventActionRow--active{background:#eff6ff;border-radius:4px;margin:0 -.35rem;padding:.2rem .35rem}.dayEventActionLabel{align-items:center;gap:.4rem;font-size:.875rem;display:flex}.dayEventActionLabel strong{font-weight:600}.dayEventActionLabel small{color:#6b7280;font-size:.78rem}.dayEventActionLabel .sentBadge{color:#065f46;background:#d1fae5;border-radius:4px;padding:0 .35rem;font-size:.72rem}.dayEventActionBtns{flex-shrink:0;gap:.3rem;display:flex}.checkRow{align-items:center;gap:.5rem;margin:.35rem 0;display:flex}.videoTag{letter-spacing:.03em;color:#4f6bed;background:#eef1fd;border:1px solid #c7d0f8;border-radius:3px;padding:1px 4px;font-size:.65rem;font-weight:600;line-height:1.4}.checkRow input{width:auto}.override{grid-template-columns:110px 1fr;align-items:center;gap:.5rem;display:grid}.override textarea,.override .checkRow{grid-column:1/-1}.status{color:#526079;min-height:1.5rem}.status.status--error{color:#b42318}@media (width<=1000px){.appScheduleGrid,.calendarGrid{grid-template-columns:1fr}}.dayCard--multiSelected{outline-offset:-2px;border-radius:8px;outline:2px solid #ef4444}.dayHeader--multiSelected{color:#991b1b!important;background:#fee2e2!important}.multiSelectCheck{color:#ef4444;font-size:.75rem;font-weight:700}.importSection{border-bottom:1px solid #e2e8f0;margin-bottom:1.25rem;padding-bottom:1rem}.importSection h2{margin:0 0 .75rem;font-size:1rem;font-weight:600}.importActions{flex-wrap:wrap;gap:.5rem;display:flex}.importBtn{cursor:pointer;font-size:.875rem;font:inherit;color:inherit;white-space:nowrap;background:#fff;border:1px solid #cfd6e3;border-radius:8px;align-items:center;gap:.25rem;padding:.4rem .75rem;text-decoration:none;display:inline-flex}.importBtn:hover{background:#f0f4ff;border-color:#3b82f6}.importSuccess{color:#15803d;margin:.5rem 0 0;font-size:.85rem}.importError{color:#b42318;margin:.5rem 0 0;font-size:.85rem}.importPreview{flex-direction:column;gap:.5rem;max-height:300px;margin-top:.75rem;display:flex;overflow-y:auto}.importRow{background:#fafbff;border:1px solid #e2e8f0;border-radius:8px;padding:.6rem .75rem;font-size:.85rem}.importRow.importRowError{background:#fff5f5;border-color:#fca5a5}.importCaption{color:#172033;margin:0 0 .25rem}.importMeta{color:#64748b;gap:1rem;margin-bottom:.25rem;font-size:.8rem;display:flex}.importMedia{margin-top:.25rem}.importLocalFile{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.importLocalPath{color:#92400e;text-overflow:ellipsis;white-space:nowrap;background:#fffbeb;border:1px dashed #f59e0b;border-radius:4px;max-width:200px;padding:.15rem .4rem;font-family:monospace;font-size:.8rem;overflow:hidden}.importUploadBtn{cursor:pointer;color:#92400e;background:#fffbeb;border:1px dashed #f59e0b;border-radius:6px;align-items:center;gap:.25rem;padding:.2rem .5rem;font-size:.8rem;display:inline-flex}.importUploadBtn:hover{background:#fef3c7}.importMediaReady{color:#15803d;font-size:.8rem}.importMediaUrl{color:#64748b;font-size:.8rem}.importCreateBtn{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;width:100%;margin-top:.75rem;padding:.6rem;font-weight:600}.importCreateBtn:hover{background:#1d4ed8}.importCreateBtn:disabled{cursor:not-allowed;background:#93c5fd}.importCancelBtn{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;width:100%;margin-top:.4rem;padding:.4rem;font-size:.85rem}.importCancelBtn:hover{background:#f8fafc}
