/* BandHQ v0.9.18.0 — desktop and mobile band calendar */
.bh-calendar-page{display:grid;gap:14px}
.bh-cal-head{align-items:flex-start}
.bh-cal-head p{margin:4px 0 0}
.bh-cal-toolbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.bh-cal-toolbar strong{font-size:19px;min-width:143px;text-align:center;text-transform:capitalize}
.bh-cal-toolbar .outline{min-height:38px;padding:7px 14px}
.bh-cal-filter-row{display:flex;flex-wrap:wrap;gap:8px}
.bh-cal-filter{border:1px solid #6385b4;color:#dceaff;background:#2a405d;border-radius:999px;padding:5px 12px;font-size:12px;display:inline-flex;align-items:center;gap:7px}
.bh-cal-filter[aria-pressed=false]{opacity:.45;background:transparent}
.bh-cal-filter-dot{width:9px;height:9px;border-radius:50%;background:#78a8ff;flex:none}
.bh-cal-concert{background:#78a8ff}.bh-cal-task{background:#f4bc70}.bh-cal-arrival{background:#65cdb1}.bh-cal-rehearsal{background:#d9a8ff}
.bh-cal-grid-wrap{border:1px solid #354b69;border-radius:14px;padding:12px;overflow-x:auto;background:#182639}
.bh-cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;min-width:440px}
.bh-cal-dayname{text-align:center;font-weight:650;color:#b6c9e5;font-size:11px;padding:7px 0}
.bh-cal-cell{min-height:100px;border:1px solid #39516e;border-radius:9px;padding:7px;background:#213149;color:#f0f6ff;display:flex;align-items:flex-start;flex-direction:column;gap:5px;text-align:left;min-width:0}
.bh-cal-cell:hover{background:#30435f;border-color:#85aaf5}
.bh-cal-cell.bh-cal-other{background:#1c293c;color:#8593aa}
.bh-cal-cell.bh-cal-selected{border:2px solid #8eb7ff;background:#314968;padding:6px}
.bh-cal-cell.bh-cal-today .bh-cal-number{background:#88b1ff;color:#102543;border-radius:6px;padding:2px 7px}
.bh-cal-number{font-size:12px;font-weight:750}
.bh-cal-badges{display:grid;gap:3px;max-width:100%;width:100%}
.bh-cal-pill{border-radius:4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:2px 4px;font-size:10px;color:#eff6ff;border-left:3px solid #78a8ff;background:#334a6a}
.bh-cal-pill.bh-cal-task{border-left-color:#f4bc70;background:#554532}
.bh-cal-pill.bh-cal-arrival{border-left-color:#65cdb1;background:#275347}
.bh-cal-pill.bh-cal-rehearsal{border-left-color:#d9a8ff;background:#503c61}
.bh-cal-extra{font-size:9px;color:#b5c9e9}
.bh-cal-columns{display:grid;grid-template-columns:1.1fr .9fr;gap:12px}
.bh-cal-section{padding:16px;background:#1b293b;border:1px solid #374e6b;border-radius:13px;min-width:0}
.bh-cal-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 13px}
.bh-cal-section-head strong{font-size:14px}
.bh-cal-agenda{display:grid;gap:8px}
.bh-cal-entry{display:grid;gap:8px;border:1px solid #3a5270;background:#26374d;border-radius:11px;padding:12px}
.bh-cal-entry-main{display:grid;gap:4px}
.bh-cal-kind{font-size:11px;color:#b5d4fa}
.bh-cal-kind.bh-cal-task{color:#f4bc70}.bh-cal-kind.bh-cal-arrival{color:#65cdb1}.bh-cal-kind.bh-cal-rehearsal{color:#d9a8ff}
.bh-cal-entry-actions{display:flex;flex-wrap:wrap;gap:7px}
.bh-cal-entry-actions .outline{font-size:11px;min-height:31px;padding:6px 10px;text-decoration:none;display:inline-flex;align-items:center}
.bh-calendar-page textarea{width:100%;border:1px solid #47607f;border-radius:9px;background:#172439;color:#eef4ff;padding:11px;font:inherit}
.bh-calendar-page .form-stack{margin-top:0;padding-top:0;border:0;display:grid;gap:8px}
.bh-calendar-page .form-stack.hidden{display:none}
.bh-calendar-page #calendarFormHelp{font-size:13px}
.bh-calendar-page .status.error{color:#ff9d9d}
@media(max-width:760px){.bh-cal-columns{grid-template-columns:1fr}.bh-cal-cell{min-height:75px}.bh-cal-head{gap:10px}.bh-cal-head h2{font-size:18px}}
@media(max-width:480px){.bh-cal-grid-wrap{padding:6px}.bh-cal-cell{min-height:61px;padding:5px}.bh-cal-pill{font-size:9px}.bh-cal-toolbar strong{min-width:105px;font-size:16px}}
/* On small phones show all seven weekdays without horizontal scrolling. */
@media(max-width:480px){.bh-cal-grid{min-width:0;gap:3px}.bh-cal-grid-wrap{overflow-x:visible}.bh-cal-cell{min-width:0;padding:3px;min-height:68px;border-radius:6px}.bh-cal-cell.bh-cal-selected{padding:2px}.bh-cal-number{font-size:11px}.bh-cal-pill{font-size:8px;padding:2px;max-width:100%}.bh-cal-dayname{font-size:10px}.bh-cal-extra{font-size:8px}}

/* SKENE 0.9.26.2 – focused Google Calendar subscription card */
.sk-google-sync{padding:19px;background:linear-gradient(130deg,#213450,#19283b);border:1px solid #496487;border-radius:15px;display:grid;gap:13px;min-width:0}
.sk-google-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}
.sk-google-head h3{margin:2px 0 6px;font-size:19px;color:#eef4ff}
.sk-google-head p{margin:0;max-width:740px;font-size:13px}
.sk-google-state{font-size:12px;border-radius:30px;padding:7px 10px;border:1px solid #5c779b;color:#c3d6f7;white-space:nowrap}
.sk-google-state[data-state=on]{background:#194b3b;color:#a3f2c9;border-color:#32755b}
.sk-google-state[data-state=off]{background:#483f31;color:#f3d49e;border-color:#81674a}
.sk-google-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.sk-google-options label{display:flex;align-items:center;gap:11px;padding:12px 14px;border:1px solid #47617d;background:#233550;border-radius:10px;cursor:pointer;font-size:13px;color:#e4edfc}
.sk-google-options input{accent-color:#aebcff;width:17px;height:17px;flex:none}
.sk-google-actions{margin:0;display:flex;gap:8px;flex-wrap:wrap}
.sk-google-external{display:inline-flex;align-items:center;text-decoration:none;justify-content:center}
.sk-google-link{border:1px solid #6581aa;border-radius:11px;padding:13px;background:#15233a;min-width:0;display:grid;gap:9px}
.sk-google-link>label{font-size:12px;color:#ccdafa;font-weight:650}
.sk-google-link-row{display:flex;gap:9px;min-width:0}
.sk-google-link input{flex:1;min-width:0;background:#0e1b30;color:#f5f8ff;font-size:12px;font-family:ui-monospace,monospace;border:1px solid #54709a;padding:10px;border-radius:8px}
.sk-google-help summary{cursor:pointer;color:#cdddfa;font-size:13px;font-weight:650}
.sk-google-help p{font-size:12px;color:#b4c7e0;max-width:850px;margin:9px 0}
.sk-google-sync p.status{margin:0}
@media(max-width:680px){.sk-google-sync{padding:13px}.sk-google-options{grid-template-columns:1fr}.sk-google-link-row{flex-direction:column}.sk-google-link-row button{align-self:flex-start}}

/* SKENE 0.9.26.3 – calendar-first layout and one-click Google connection */
.sk-calendar-page-head{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:3px}
.sk-calendar-page-head h2{margin-bottom:4px}
.sk-calendar-head-actions{display:flex;align-items:center;flex-wrap:wrap;gap:9px}
.sk-connect-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:42px;padding:10px 17px;border-radius:11px;
 background:linear-gradient(120deg,#b6c3ff,#a7baf8);color:#112344;font-weight:760;border:1px solid #c7d3ff;cursor:pointer;
 box-shadow:0 5px 18px rgba(53,77,154,.16);transition:transform .16s ease,filter .16s ease}
.sk-connect-button:hover{filter:brightness(1.06);transform:translateY(-1px)}
.sk-connect-button:focus-visible,.sk-direct-panel :focus-visible,.sk-ics-advanced summary:focus-visible{outline:3px solid #96cfff;outline-offset:3px}
.sk-connect-button[data-connected="true"]{background:#233d50;color:#a3f0d2;border-color:#397a6c}
.sk-direct-panel{display:grid;gap:15px;padding:21px;background:linear-gradient(140deg,#202f4d,#17263b);border:1px solid #53709a;border-radius:17px;min-width:0}
.sk-direct-panel.hidden{display:none}
.sk-direct-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.sk-direct-title-row h3{font-size:20px;margin:2px 0 7px;color:#f2f6ff}
.sk-direct-title-row p{margin:0;max-width:620px;font-size:13px}
.sk-direct-connected{border:1px solid #3d776b;border-radius:12px;padding:14px 16px;background:#193c3b;display:grid;gap:4px}
.sk-direct-connected.hidden{display:none}.sk-direct-connected strong{font-size:16px;color:#d4ffed}
.sk-direct-connected p{font-size:12px;margin:0}.sk-direct-warning{color:#ffca99!important}
.sk-direct-choice{border:0;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}
.sk-direct-choice legend{font-weight:700;color:#ecf2ff;padding:0 0 10px;font-size:13px}
.sk-direct-choice label{display:flex;align-items:center;gap:11px;background:#263952;border:1px solid #45617f;border-radius:10px;padding:12px;color:#dce6f8;cursor:pointer;font-size:13px}
.sk-direct-choice input{accent-color:#aebcff;width:17px;height:17px;flex:none}
.sk-direct-actions{display:flex;gap:9px;flex-wrap:wrap;align-items:center}.sk-direct-actions a{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.sk-direct-danger{color:#f2b5b5!important;border-color:#8c5962!important}
.sk-direct-footnote{font-size:12px;margin:0;max-width:840px;line-height:1.6}
.sk-ics-advanced{border:1px solid #344966;border-radius:13px;background:#162338;overflow:hidden}
.sk-ics-advanced>summary{list-style:none;cursor:pointer;padding:17px 19px;display:flex;align-items:center;gap:15px;color:#dfeafd}
.sk-ics-advanced>summary::-webkit-details-marker{display:none}
.sk-ics-advanced>summary:after{content:'⌄';font-size:24px;margin-left:auto;color:#a2b7d6;transition:transform .2s}
.sk-ics-advanced[open]>summary:after{transform:rotate(180deg)}
.sk-ics-advanced>summary span{font-size:11px;color:#9db2d3;letter-spacing:.065em;text-transform:uppercase}
.sk-ics-advanced>summary strong{font-size:14px}
.sk-ics-advanced>summary small{font-size:12px;color:#9fb2ce}
.sk-ics-advanced .sk-google-sync{margin:0 11px 11px;border-radius:11px}
@media(max-width:780px){.sk-ics-advanced>summary{flex-wrap:wrap;gap:5px 13px}.sk-ics-advanced>summary small{width:100%}.sk-direct-choice{grid-template-columns:1fr}}
@media(max-width:590px){.sk-calendar-head-actions{width:100%}.sk-connect-button{flex:1}.sk-calendar-head-actions #calendarNewBtn{flex:1;white-space:nowrap}
 .sk-direct-panel{padding:14px}.sk-ics-advanced>summary{padding:13px}.sk-ics-advanced>summary small{font-size:11px}}
