@charset "UTF-8";

/*
 * Internal sections:
 * 1. Base, layout and board
 * 2. Components and vision layer
 * 3. Full-screen and print
 * 4. Responsive adjustments
 * 5. Internationalization (LTR / RTL)
 */

/* === Core application styles === */
:root{--bg:#f6f7fb;--surface:#fff;--surface2:#fafafa;--text:#172033;--muted:#667085;--border:#d8dee9;--accent:#ff7a00;--soft:#fff1e5;--danger:#c03744;--wa:#25d366;--shadow:0 14px 30px rgba(16,24,40,.12);--radius:18px}
html.i18n-pending body{visibility:hidden}
.item a,.item a:visited{color:#e34b1b;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.item a:hover,.item a:focus{color:#bf2f12}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(circle at top left,rgba(255,122,0,.12),transparent 26rem),var(--bg);font-family:Arial,"Noto Sans Hebrew",sans-serif;color:var(--text);line-height:1.55}button,input,select{font:inherit}button{cursor:pointer;border:0}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);border-bottom:1px solid var(--border);backdrop-filter:blur(14px)}.header-inner{max-width:1100px;margin:auto;padding:10px 16px;display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center}.logo-link{justify-self:start}.logo-link img{height:30px;display:block}.header-mini-title{text-align:center;margin:0;color:#323b4d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-actions{justify-self:end;display:flex;gap:8px;align-items:center;position:relative}.icon-btn,.tool-btn,.btn{border:1px solid var(--border);background:#fff;color:var(--text);border-radius:12px;min-width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;}.icon-btn:hover,.tool-btn:hover,.btn:hover{background:var(--soft);border-color:#ffc58b}.whatsapp{background:var(--wa);color:#fff;border-color:var(--wa)}.whatsapp svg{width:20px;height:20px;fill:currentColor}.menu-popover{width:min(240px,calc(100vw - 24px));padding:8px}.menu-list{display:grid;gap:4px}.menu-item{width:100%;display:flex;align-items:center;gap:7px;text-align:right;background:#fff;border:1px solid transparent;border-radius:10px;padding:7px 9px;color:var(--text);font-weight:700;font-size:.9rem;line-height:1.25;min-height:34px}.menu-item:hover{background:var(--soft);border-color:#ffc58b}.menu-item span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-icon{width:22px;height:22px;min-width:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;background:#f7f7f7;color:var(--accent);font-size:.86rem}.menu-icon svg{width:15px;height:15px;fill:var(--wa)}.settings-popover{position:absolute;left:0;top:48px;width:min(360px,calc(100vw - 24px));display:none;background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);padding:16px;z-index:80}.settings-popover.open{display:block}.settings-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 12px}.settings-popover h2{font-size:1.1rem;margin:0}.settings-close{width:34px;height:34px;min-width:34px;border-radius:10px;color:var(--muted);background:#fff}.settings-close:hover{background:var(--soft);color:var(--text)}.settings-block{padding-top:3px;margin-top:3px}.settings-block:first-of-type{border-top:0;margin-top:0;padding-top:0}.settings-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;margin:8px 0}.settings-row.triple{grid-template-columns:1fr 1fr 1fr}.settings-row label{font-weight:700}.time-settings-panel[hidden]{display:none!important}.time-options label{font-weight:400}.settings-row input,.settings-row select{width:100%;border:1px solid var(--border);border-radius:10px;padding:8px;background:#fff}.settings-control{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fafafa;border:1px solid var(--border);border-radius:14px;padding:10px 12px;margin:8px 0;font-weight:700}.settings-control input[type=checkbox]{width:auto;min-width:18px;height:18px;margin:0;accent-color:var(--accent)}.settings-input-only{display:block;margin:8px 0}.settings-input-only input{width:100%;border:1px solid var(--border);border-radius:10px;padding:8px;background:#fff}.settings-block .btn.primary{width:100%;justify-content:center;margin-top:8px}.settings-actions{display:flex;gap:8px;flex-wrap:wrap}.settings-actions .btn{flex:1;justify-content:center}.settings-note{margin:6px 0 0;color:var(--muted);font-size:.86rem}.days-settings{margin-top:8px}.days-preview{margin-top:5px;color:var(--muted);font-size:.82rem}.days-settings .settings-row{grid-template-columns:1fr 1fr}.hidden-slots{max-height:190px;overflow:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px}.period-options{max-height:360px;grid-template-columns:1fr}.period-option{display:block!important}.period-option-main{display:flex;align-items:center;gap:7px;font-weight:700}.period-time-controls{margin-top:8px;padding:8px;border-top:1px solid var(--border);display:none}.period-option.has-hours .period-time-controls{display:block}.period-time-controls .settings-row.triple{margin:6px 0}.period-hidden-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;max-height:120px;overflow:auto;margin-top:6px}.period-hidden-slots label{font-weight:400!important;font-size:.82rem;padding:5px}.period-sub-label{display:block;font-size:.78rem;color:#667085;font-weight:700;margin-top:2px}.hidden-slots label{display:flex;gap:5px;align-items:center;font-size:.86rem;background:#fafafa;border:1px solid var(--border);border-radius:10px;padding:6px}.btn{height:auto;padding:9px 12px;min-width:0}.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn.soft{background:var(--soft);color:#7a3b00;border-color:#ffd0a3}.btn.danger{background:#fff0f3;color:var(--danger);border-color:#ffc8d1}.link-danger{appearance:none;background:none;border:0;color:var(--danger);text-decoration:underline;font-size:.86rem;font-weight:400;padding:4px 0;height:auto;min-width:0;border-radius:0}.link-danger:hover{background:transparent;color:#8a1f2c;text-decoration:none}.status-box{display:flex;gap:7px;align-items:baseline;justify-content:center;background:#fafafa;border:1px solid var(--border);border-radius:14px;padding:10px}main{max-width:1100px;margin:auto;padding:24px 8px}.board-head{display:flex;justify-content:center;margin-bottom:14px}.editable-title{color:#515151;font-size:clamp(1.55rem,4vw,1.8rem);line-height:1.2;text-align:center;margin:0;outline:0;padding:0;min-width:min(560px,100%)}.editable-title:focus{background:#fff;border:1px solid var(--border);box-shadow:0 0 0 4px rgba(255,122,0,.12)}.board-wrap{background:#fff;border:1px solid var(--border);border-radius:22px;box-shadow:0 18px 35px rgba(16,24,40,.08);overflow:auto;padding:0;position:relative}.week-grid{display:grid;grid-template-columns:repeat(var(--day-count,7),minmax(130px,1fr));direction:rtl;margin:0;padding:0;border-spacing:0}.week-grid.time-mode{grid-template-columns:76px repeat(var(--day-count,7),minmax(130px,1fr));overflow:visible;grid-auto-rows:min-content}.day-head,.time-head,.time-label{background:#fff7ed;border-bottom:1px solid var(--border);border-inline-start:1px solid var(--border);text-align:center;padding:8px 6px;margin:0;position:sticky;top:0;z-index:4;min-height:0;line-height:1.2}.time-head{right:0;z-index:5}.time-label{background:#fafafa;color:#475467;position:sticky;right:0;z-index:2;border-bottom:1px solid var(--border);min-height:30px;display:flex;align-items:center;justify-content:center;padding:3px 6px}.day-cell,.time-cell,.period-cell{min-height:360px;border-inline-start:1px solid var(--border);border-bottom:1px solid var(--border);padding:0;background:#fff}.time-cell{min-height:30px}.period-cell{min-height:110px}.period-label{min-height:110px}.slot{min-height:100%;padding:0;margin:0;display:flex;flex-direction:column;gap:0}.time-cell .slot{min-height:30px}.period-cell .slot{min-height:110px}.slot.empty::before{content:"";display:none}.item{position:relative;background:transparent;border:0;margin:0;padding:3px 6px;border-radius:0;min-height:22px;word-break:break-word;outline:0;touch-action:auto;user-select:text;-webkit-user-select:text;cursor:text}.item:hover,.item.editing{background:#fff;box-shadow:0 0 0 1px rgba(255,122,0,.22)}.item-drag-zone{position:absolute;left:0;top:0;bottom:0;width:16px;cursor:grab;user-select:none;-webkit-user-select:none;touch-action:none;opacity:0;display:flex;align-items:center;justify-content:center;color:#98a2b3;font-size:14px;line-height:1}.item-drag-zone::before{content:"⋮"}.item:hover .item-drag-zone,.item.editing .item-drag-zone{opacity:.65}.item-drag-zone:hover{opacity:1;background:rgba(255,122,0,.08)}.item-drag-zone:active{cursor:grabbing}.item.dragging{opacity:.35}.item img.inline-img{height:auto;max-height:40px;width:auto;max-width:100%;object-fit:contain;vertical-align:middle;border-radius:8px}.time-badge{display:inline-block;color:#667085;font-size:.78rem;margin-inline-start:5px}.floating-toolbar{position:absolute;display:none;background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);padding:8px;z-index:70;width:min(292px,calc(100vw - 20px));gap:6px;overflow:hidden;min-height:88px}.floating-toolbar.open{display:grid}.toolbar-row{display:flex;gap:6px;align-items:center;justify-content:flex-start;flex-wrap:wrap}.toolbar-row-primary{border-bottom:1px solid #edf0f5;padding-bottom:6px}.tool-btn{min-width:32px;height:32px;border-radius:10px;font-size:.9rem;transition:background .15s,border-color .15s,transform .15s}.tool-btn:hover{transform:translateY(-1px)}.tool-btn.danger{color:var(--danger)}.tool-btn.bold{font-weight:900}.text-color-btn span{font-size:1rem;line-height:1;border-bottom:3px solid var(--accent);padding:0 1px 2px}.bg-color-btn span{width:17px;height:17px;border-radius:4px;background:linear-gradient(135deg,#fff7ed 0 49%,#ffbd7a 50% 100%);border:1px solid #e27a22;box-shadow:inset 0 0 0 2px rgba(255,255,255,.7)}.floating-char-count{position:absolute;display:none;z-index:69;font-size:.76rem;color:var(--muted);background:rgba(255,255,255,.94);border:1px solid var(--border);border-radius:999px;padding:2px 8px;box-shadow:0 6px 14px rgba(16,24,40,.08);line-height:1.3;pointer-events:none}.floating-char-count.open{display:block}.palette-popover{display:none;position:absolute;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);padding:7px;gap:5px;grid-template-columns:repeat(4,24px);z-index:90}.palette-popover.open{display:grid}.toolbar-color-menu,.toolbar-icon-menu{position:relative;display:inline-flex}.swatch{width:24px;height:24px;border-radius:50%;border:1px solid rgba(0,0,0,.18)}.icon-popover{grid-template-columns:repeat(5,30px)}.icon-choice{font-size:18px;background:#fff;border:1px solid var(--border);border-radius:8px;width:30px;height:30px}.toolbar-panel{display:none;position:absolute;inset:0;background:#fff;border-radius:16px;z-index:3;padding:10px;grid-template-rows:auto 1fr;gap:8px}.toolbar-panel.open{display:grid}.toolbar-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-weight:900}.toolbar-panel-title{font-size:.9rem;color:#172033;display:flex;align-items:center;gap:6px}.toolbar-panel-title::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent)}.toolbar-panel-close{width:28px;height:28px;min-width:28px;border-radius:9px;background:#f7f7f7;color:var(--muted);font-weight:900}.toolbar-panel-close:hover{background:var(--soft);color:var(--text)}.toolbar-panel-body{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;overflow:auto;padding:2px}.toolbar-panel-body .swatch{width:24px;height:24px;border:1px solid rgba(0,0,0,.14);box-shadow:none}.toolbar-panel-body .swatch:hover{outline:2px solid rgba(255,122,0,.22);outline-offset:2px}.toolbar-panel-body .icon-choice{width:36px;height:36px;font-size:20px;box-shadow:none;background:#f8f8f8;border:0}.toolbar-panel-body .icon-choice:hover{background:var(--soft)}.color-panel-body{position:relative;display:grid;grid-template-rows:1fr 1fr;align-content:stretch;gap:6px;height:100%;padding:0 26px 0 0}.color-panel-row{display:grid;grid-template-columns:18px 1fr;gap:6px;align-items:center;min-height:0}.color-panel-label{writing-mode:vertical-rl;transform:rotate(180deg);font-size:.72rem;color:#475467;text-align:center;justify-self:end;line-height:1}.color-swatches{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;min-width:0}.color-swatches .swatch{width:20px;height:20px}.color-panel-close{position:absolute;top:0;left:0;width:26px;height:26px;min-width:26px;border-radius:8px;background:#f7f7f7;color:var(--muted);z-index:2}.toast{position:fixed;bottom:20px;right:20px;z-index:90;background:#172033;color:#fff;padding:10px 14px;border-radius:14px;box-shadow:var(--shadow);opacity:0;transform:translateY(12px);transition:.2s}.toast.show{opacity:1;transform:none}.help-panel{margin-top:16px;background:#fff;border:1px solid var(--border);border-radius:18px;padding:10px 16px}.help-panel summary{cursor:pointer}.help-content{color:#475467}.site-footer{border-top:1px solid var(--border);background:#fff}.footer-inner{max-width:1100px;margin:auto;padding:18px 16px;display:flex;gap:12px;justify-content:center;color:#667085}.footer-inner a{color:#172033;font-weight:700}.help-popover{width:min(430px,calc(100vw - 24px))}.help-popover .help-content{max-height:min(68vh,520px);overflow:auto}.help-popover ul{margin:0;padding-inline-start:20px}.help-popover li{margin:7px 0}@media(max-width:760px){.header-inner{grid-template-columns:auto auto;grid-template-areas:"logo actions" "title title"}.logo-link{grid-area:logo}.header-actions{grid-area:actions}.header-mini-title{grid-area:title}.week-grid:not(.time-mode){grid-template-columns:1fr}.day-head{position:static}.day-cell{min-height:190px}.week-grid.time-mode{grid-template-columns:64px repeat(var(--day-count,7),minmax(115px,1fr))}.day-head,.time-head{top:0}.floating-toolbar{position:fixed!important;right:10px!important;left:10px!important;top:auto!important;bottom:12px!important;width:auto}.settings-row.triple{grid-template-columns:1fr}.hidden-slots{grid-template-columns:repeat(2,1fr)}.period-hidden-slots{grid-template-columns:repeat(2,1fr)}}.print-logo{display:none}
.board-stage{position:relative;overflow:visible}.board-stage::after{content:"";display:block;height:0}.board-wrap{position:relative;z-index:1}.week-grid{position:relative;z-index:1}.vision-layer{position:absolute;top:0;left:0;z-index:3;pointer-events:none;min-width:0;min-height:0;width:100%;height:100%;overflow:visible}.vision-item{position:absolute;box-sizing:border-box;pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:28px;padding:6px 8px;border:1px dashed transparent;border-radius:12px;background:rgba(255,255,255,.02);cursor:move;user-select:none;touch-action:none;transform-origin:center center;line-height:1.25;text-align:center;word-break:break-word}.vision-item:hover,.vision-item.selected{border-color:rgba(255,122,0,.7);background:rgba(255,255,255,.18);box-shadow:0 8px 18px rgba(16,24,40,.12)}.vision-item.vision-image{padding:0;border-radius:8px;overflow:visible}.vision-item img{max-width:none;width:100%;height:100%;display:block;pointer-events:none;object-fit:fill;border-radius:6px}.vision-resize-handle{position:absolute;width:16px;height:16px;background:#fff;border:1px solid var(--accent);border-radius:50%;box-shadow:0 2px 8px rgba(16,24,40,.18);z-index:2}.vision-resize-handle.n{top:-8px;left:50%;transform:translateX(-50%);cursor:ns-resize}.vision-resize-handle.s{bottom:-8px;left:50%;transform:translateX(-50%);cursor:ns-resize}.vision-resize-handle.e{right:-8px;top:50%;transform:translateY(-50%);cursor:ew-resize}.vision-resize-handle.w{left:-8px;top:50%;transform:translateY(-50%);cursor:ew-resize}.vision-resize-handle.ne{right:-8px;top:-8px;cursor:nesw-resize}.vision-resize-handle.nw{left:-8px;top:-8px;cursor:nwse-resize}.vision-resize-handle.se{right:-8px;bottom:-8px;cursor:nwse-resize}.vision-resize-handle.sw{left:-8px;bottom:-8px;cursor:nesw-resize}.vision-item:not(.selected):not(:hover) .vision-resize-handle{display:none}.vision-text{font-size:1.08rem}.vision-symbol{font-size:2rem}.vision-toolbar{position:absolute;display:none;background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);padding:8px;z-index:95;width:min(330px,calc(100vw - 20px));gap:6px}.vision-toolbar.open{display:grid}.vision-toolbar .toolbar-row{justify-content:flex-start}.vision-toolbar label{font-size:.78rem;color:var(--muted);display:flex;align-items:center;gap:5px}.vision-toolbar input[type=range]{width:92px}.vision-form{display:grid;gap:8px}.vision-form input[type=text]{width:100%;border:1px solid var(--border);border-radius:10px;padding:8px;background:#fff}.vision-form-row{display:flex;gap:8px;align-items:center}.vision-form-row .btn{flex:1}.vision-symbols{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.vision-symbols button{height:34px;border:1px solid var(--border);border-radius:10px;background:#fff;font-size:18px}.vision-symbols button:hover{background:var(--soft)}

/* Full-screen display mode: show only the printable board area */
body.fullscreen-display{background:#fff!important;overflow:auto!important}
body.fullscreen-display .site-header,
body.fullscreen-display .settings-popover,
body.fullscreen-display .floating-toolbar,
body.fullscreen-display .floating-char-count,
body.fullscreen-display .vision-toolbar,
body.fullscreen-display .toast{display:none!important}
body.fullscreen-display .print-logo{display:block!important;position:fixed;top:12px;right:16px;width:80px;height:auto;z-index:999;cursor:pointer;pointer-events:auto}
body.fullscreen-display main{max-width:none!important;width:100%!important;margin:0!important;padding:32px 40px 44px!important;pointer-events:none}
body.fullscreen-display .editable-title{color:#515151;border:0!important;box-shadow:none!important;outline:0!important;pointer-events:none}
body.fullscreen-display .board-stage{position:relative!important;overflow:visible!important;width:100%!important;max-width:100%!important}
body.fullscreen-display .board-wrap{box-shadow:none!important;border:1px solid #dfe4ec!important;overflow:visible!important;width:100%!important;max-width:100%!important;background:#fff!important}
body.fullscreen-display .week-grid{width:100%!important;max-width:100%!important;border-spacing:0!important}
body.fullscreen-display .week-grid:not(.time-mode){grid-template-columns:repeat(var(--day-count,7),minmax(0,1fr))!important}
body.fullscreen-display .week-grid.time-mode{grid-template-columns:76px repeat(var(--day-count,7),minmax(0,1fr))!important;grid-auto-rows:min-content!important}
body.fullscreen-display .day-head,
body.fullscreen-display .time-head,
body.fullscreen-display .time-label{position:static!important;border-color:#dfe4ec!important}
body.fullscreen-display .day-cell,
body.fullscreen-display .time-cell,
body.fullscreen-display .period-cell,
body.fullscreen-display .day-head,
body.fullscreen-display .time-head,
body.fullscreen-display .time-label{border-color:#dfe4ec!important}
body.fullscreen-display .item-drag-zone,
body.fullscreen-display .vision-resize-handle{display:none!important}
body.fullscreen-display .item,
body.fullscreen-display .vision-item{pointer-events:none!important;box-shadow:none!important;border-color:transparent!important}
body.fullscreen-display .item:hover,
body.fullscreen-display .item.editing,
body.fullscreen-display .vision-item:hover,
body.fullscreen-display .vision-item.selected{box-shadow:none!important;background:transparent!important;border-color:transparent!important}

@page{margin:4mm}
@media print{
  html,body{background:#fff!important;width:auto;min-height:0;overflow:visible!important}
  .site-header,.settings-popover,.floating-toolbar,.floating-char-count,.vision-toolbar,.toast,.help-panel,.site-footer,.help-panel summary::marker{display:none!important}
  .print-logo{display:block!important;position:fixed;top:2mm;right:7mm;width:80px;height:auto;z-index:999}
  main{max-width:none!important;width:100%!important;padding: 3px 8px;}
  .editable-title{color:#000;border:0!important;box-shadow:none!important}
  .board-stage{position:relative!important;overflow:visible!important;width:100%!important;max-width:100%!important;min-height:auto!important}
  .board-wrap{box-shadow:none!important;border:1px solid #4b5563!important;border-radius:22px!important;overflow:hidden!important;width:100%!important;max-width:100%!important;background:#fff!important;position:relative!important;break-inside:avoid;page-break-inside:avoid}
  .week-grid{width:100%!important;max-width:100%!important;display:grid!important;border-spacing:0!important;break-inside:avoid;page-break-inside:avoid}
  .week-grid:not(.time-mode){grid-template-columns:repeat(var(--day-count,7),minmax(0,1fr))!important}
  .week-grid.time-mode{grid-template-columns:76px repeat(var(--day-count,7),minmax(0,1fr))!important;grid-auto-rows:min-content!important}
  .day-head,.time-head,.time-label{position:static!important;border-color:#4b5563!important}
  .day-cell,.time-cell,.period-cell,.day-head,.time-head,.time-label{border-color:#4b5563!important}
  .item-drag-zone{display:none!important}
  .item{box-shadow:none!important;break-inside:avoid;page-break-inside:avoid}
  .item:hover,.item.editing{box-shadow:none!important;background:transparent!important}
  .slot.empty::before,.footer-inner span{display:none!important}
  .vision-layer{position:absolute!important;top:0!important;right:auto!important;bottom:0!important;left:0!important;width:100%!important;height:auto!important;min-width:0!important;min-height:0!important;overflow:visible!important;pointer-events:none!important;z-index:3!important;transform:none!important}
  .vision-item{box-shadow:none!important;border-color:transparent!important;background:transparent!important;break-inside:avoid;page-break-inside:avoid}
}

/* Responsive page width: wider only for weekly boards with more than seven days. */
body:not(.wide-weekly-board) main,body:not(.wide-weekly-board) .header-inner{max-width:1000px}
body.wide-weekly-board main,body.wide-weekly-board .header-inner{max-width:1200px}
@media print{main,.header-inner{max-width:none!important}}

/* Compact settings window */

.board-head{flex-direction:column;align-items:center}
.editable-description{width:min(760px,100%);margin:0;text-align:center;color:var(--muted);font-size:1rem;line-height:1.45;outline:0;border-radius:12px;padding:5px 12px;white-space:pre-wrap}
.editable-description:focus{background:#fff;border:1px solid var(--border);box-shadow:0 0 0 4px rgba(255,122,0,.1)}
.editable-description[hidden],.board-description-input[hidden]{display:none!important}
.board-description-input textarea{width:100%;min-height:66px;resize:vertical;border:1px solid var(--border);border-radius:10px;padding:8px;background:#fff}
.free-text-area{position:relative;width:100%;margin-top:14px;background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:0 12px 26px rgba(16,24,40,.07);overflow:hidden}
.free-text-area[hidden]{display:none}
.free-text-close{position:absolute;top:6px;left:6px;z-index:6;width:26px;height:26px;border:0;border-radius:8px;background:rgba(255,255,255,.92);color:var(--muted);font-size:1rem;font-weight:800;line-height:1;display:flex;align-items:center;justify-content:center}
.free-text-close:hover{background:var(--soft);color:var(--text)}
.free-text-slot{min-height:120px;display:flex;flex-direction:row;align-items:stretch;direction:rtl;padding:0}
.free-text-slot .item{flex:1 1 0;min-width:0;min-height:120px;padding:10px 14px;border-inline-start:1px solid var(--border)}
.free-text-slot .item:first-child{border-inline-start:0}
.free-text-slot.empty::before{content:"";display:none}
@media(max-width:760px){.free-text-slot{min-width:520px}.free-text-area{overflow-x:auto}}

#settingsPanel .site-font-size-row{grid-template-columns:1fr 112px;margin:5px 0}
#settingsPanel .site-font-size-row select{padding:5px 7px;min-height:30px}
#settingsPanel{padding:10px 12px;border-radius:14px;width:min(340px,calc(100vw - 20px));font-size:.9rem;line-height:1.35}
#settingsPanel{max-height:calc(100vh - 76px);overflow-y:auto;overscroll-behavior:contain}
#settingsPanel .settings-title-row{position:sticky;top:-10px;z-index:12;background:#fff;padding:10px 0 6px}
#settingsPanel .settings-save-block{position:sticky;bottom:-10px;z-index:11;background:#fff;padding-bottom:10px;box-shadow:0 -8px 14px rgba(255,255,255,.94)}
#settingsPanel .settings-control.has-collapse{display:grid;grid-template-columns:1fr auto auto}
#settingsPanel .settings-collapse-btn{width:25px;height:25px;min-width:25px;padding:0;border-radius:7px;background:#fff;border:1px solid var(--border);color:var(--muted);line-height:1}
#settingsPanel .settings-collapse-btn:hover{background:var(--soft);color:var(--text)}
#settingsPanel .time-settings-panel{padding-inline:2px}
#settingsPanel .settings-control.has-collapse:has(+.time-settings-panel:not([hidden])){
  margin-bottom:0;
  border-end-start-radius:0;
  border-end-end-radius:0;
  border-bottom-color:transparent;
  background:#f7f9fc;
}
#settingsPanel .settings-control.has-collapse+.time-settings-panel:not([hidden]){
  margin-top:0;
  padding:5px 7px 7px;
  border:1px solid var(--border);
  border-top:0;
  border-end-start-radius:10px;
  border-end-end-radius:10px;
  background:#f7f9fc;
}
#settingsPanel .settings-title-row{margin:0 0 7px;gap:6px}
#settingsPanel h2{font-size:1rem;line-height:1.2}
#settingsPanel .settings-close{width:28px;height:28px;min-width:28px;border-radius:8px}
#settingsPanel .settings-block{padding-top:1px;margin-top:1px}
#settingsPanel .settings-row{gap:5px;margin:5px 0}
#settingsPanel .settings-row label{font-weight:600;font-size:.86rem}
#settingsPanel .settings-row input,#settingsPanel .settings-row select{border-radius:8px;padding:5px 6px;min-height:30px}
#settingsPanel .settings-control{border-radius:10px;padding:6px 8px;margin:5px 0;font-size:.88rem;font-weight:600;min-height:32px}
#settingsPanel .settings-control input[type=checkbox]{min-width:16px;width:16px;height:16px}
#settingsPanel .settings-note{font-size:.78rem;margin:3px 0 0}
#settingsPanel .hidden-slots{max-height:145px;gap:4px;margin-top:5px}
#settingsPanel .hidden-slots label{font-size:.78rem;border-radius:8px;padding:4px 5px;gap:4px}
#settingsPanel .period-options{max-height:280px}
#settingsPanel .period-time-controls{margin-top:5px;padding:5px}
#settingsPanel .period-hidden-slots{gap:4px;max-height:90px;margin-top:4px}
#settingsPanel .period-hidden-slots label{font-size:.74rem!important;padding:3px 4px}
#settingsPanel .btn{padding:7px 10px;border-radius:10px;min-height:32px}
#settingsPanel .link-danger{font-size:.78rem;padding:2px 0;min-height:0}

/* Periodic local-storage notice for guests */

.vision-popup-settings{margin-top:3px;padding:0;border:0;background:transparent;display:grid;gap:0}
.vision-popup-settings>.settings-control{margin:0}
.vision-popup-settings:has(#visionPopupEnabled:checked)>.settings-control{border-end-start-radius:0;border-end-end-radius:0;border-bottom-color:transparent;background:#f4f7fb}
.vision-popup-editor{display:grid;gap:5px;padding:7px;border:1px solid #dbe3ef;border-top:0;border-end-start-radius:10px;border-end-end-radius:10px;background:#f4f7fb}
.vision-popup-editor[hidden]{display:none!important}
.vision-popup-settings textarea{width:100%;min-height:62px;resize:vertical;border:1px solid var(--border);border-radius:8px;padding:6px 7px;background:#fff;color:var(--text);font:inherit;line-height:1.35}
.vision-popup-title-field{display:block}
.vision-popup-title-field input{width:100%;border:1px solid var(--border);border-radius:8px;padding:5px 7px;background:#fff;color:var(--text);font:inherit}
.vision-popup-settings .settings-row{align-items:center}
.vision-popup-backdrop{position:fixed;inset:0;z-index:2900;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(15,23,42,.32);backdrop-filter:blur(2px)}
.vision-popup-backdrop.open{display:flex}
.vision-popup-dialog{position:relative;width:min(560px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:24px 24px 20px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 22px 60px rgba(15,23,42,.24);color:#1e293b;text-align:center}
.vision-popup-dialog h2{margin:0 28px 12px;font-size:1.3rem;line-height:1.35}
.vision-popup-message{white-space:pre-wrap;font-size:1rem;line-height:1.8;word-break:break-word}
.vision-popup-close{position:absolute;top:8px;left:8px;width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:#64748b;font-size:1.3rem;cursor:pointer}
.vision-popup-close:hover{background:#f1f5f9;color:#0f172a}
.vision-popup-actions{display:flex;justify-content:center;margin-top:18px}
@media(max-width:520px){.vision-popup-dialog{padding:22px 16px 18px}.vision-popup-message{font-size:.95rem}}
@media print{.vision-popup-backdrop{display:none!important}}
.guest-disclaimer-backdrop{position:fixed;inset:0;z-index:3000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(15,23,42,.34);backdrop-filter:blur(2px)}
.guest-disclaimer-backdrop.open{display:flex}
.guest-disclaimer{position:relative;width:min(520px,100%);padding:20px 22px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;box-shadow:0 20px 55px rgba(15,23,42,.22);color:#1e293b;text-align:right}
.guest-disclaimer h2{margin:0 0 9px;font-size:1.08rem;line-height:1.35}
.guest-disclaimer p{margin:0;font-size:.94rem;line-height:1.75}
.guest-disclaimer-actions{display:flex;align-items:center;justify-content:flex-start;gap:8px;margin-top:16px}
.guest-disclaimer-close{position:absolute;top:8px;left:8px;width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:#64748b;font-size:1.25rem;cursor:pointer}
.guest-disclaimer-close:hover{background:#f1f5f9;color:#0f172a}
body.fullscreen-display .guest-disclaimer-backdrop{display:none!important}
@media(max-width:520px){.guest-disclaimer{padding:18px 16px}.guest-disclaimer-actions{flex-direction:column;align-items:stretch}.guest-disclaimer-actions .btn{width:100%}}
@media print{.guest-disclaimer-backdrop{display:none!important}}
@media print{.free-text-close{display:none!important}}
body.fullscreen-display .free-text-close{display:none!important}

/* Compact symbol picker in Add items to board. */
.vision-symbols{grid-template-columns:repeat(7,1fr);gap:4px}
.vision-symbols button{height:30px;min-width:0;padding:2px;border-radius:8px;font-size:16px;line-height:1}
.vision-symbols .vision-svg-choice{display:flex;align-items:center;justify-content:center}
.vision-symbols .vision-svg-choice img{display:block;width:21px;height:21px;object-fit:contain;pointer-events:none}

/* Notes window: below the board or on its language-aware outer side. */
.board-content-layout{width:100%}
.board-content-layout.side-notes{display:flex;align-items:stretch;gap:14px}
.side-notes .board-stage{flex:1 1 auto;min-width:0}
.side-notes .free-text-area{flex:0 0 var(--notes-window-width,170px);width:var(--notes-window-width,170px);margin-top:0}
.side-notes .free-text-slot{height:calc(100% - 33px);min-height:calc(100% - 33px)}
.side-notes .free-text-slot{flex-direction:column;align-items:stretch}
.side-notes .free-text-slot .item{flex:0 0 auto;width:100%;min-height:20px;padding:2px 6px 1px;border-inline-start:0}
.free-text-head{min-height:33px;padding:8px 34px;background:#fff7ed;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:center;text-align:center;font-weight:700;line-height:1.2}
.free-text-close{top:4px}
.notes-position-row{transition:opacity .15s}
.notes-position-row:has(select:disabled){opacity:.5}
body.fullscreen-display .side-notes .board-stage{width:auto!important;flex:1 1 0!important}
@media print{.side-notes .board-stage{width:auto!important;flex:1 1 0!important}}
@media(max-width:760px){.board-content-layout.side-notes{display:block}.side-notes .free-text-area{width:100%;margin-top:14px}.side-notes .free-text-slot{height:auto;min-height:120px}}

/* Wider board, narrower time column, and header settings shortcut. */
main{max-width:1000px}
.week-grid.time-mode{grid-template-columns:68px repeat(var(--day-count,7),minmax(130px,1fr))}
.remember-row-label,.remember-cell{min-height:54px;border-inline-start:1px solid var(--border);border-top:1px solid var(--border);background:#fffdf8}
.remember-row-label{display:flex;align-items:center;justify-content:center;padding:5px;background:#fff7ed;color:#98a2b3;font-weight:700;font-size:.82rem;text-align:center}
.remember-cell{display:flex;flex-direction:column;min-width:0}
.remember-cell-title{padding:4px 6px 2px;color:#98a2b3;font-size:.76rem;font-weight:700;line-height:1.2}
.remember-slot{flex:1;min-height:32px}
.remember-slot .item{font-size:.88rem}
.focus-row-label,.focus-cell{min-height:54px;border-inline-start:1px solid var(--border);border-bottom:1px solid var(--border);background:#fffdf8}
.focus-row-label{display:flex;align-items:center;justify-content:center;padding:5px;background:#fff7ed;color:#98a2b3;font-weight:700;font-size:.82rem;text-align:center}
.focus-cell{display:flex;flex-direction:column;min-width:0}
.focus-cell-title{padding:4px 6px 2px;color:#98a2b3;font-size:.76rem;font-weight:700;line-height:1.2}
.focus-slot{flex:1;min-height:32px}
.focus-slot .item{font-size:.88rem}
.day-separation-control{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:7px}
.day-separation-control select{width:68px;min-height:28px;padding:3px 5px;border:1px solid var(--border);border-radius:8px;background:#fff;font-size:.8rem}
.day-separation-control select:disabled{opacity:.5;cursor:not-allowed}
.board-wrap:has(.week-grid.separate-days){border:0;background:transparent;box-shadow:none;border-radius:0}
.week-grid.separate-days{column-gap:var(--day-separation-gap,8px)}
.week-grid.separate-days .day-head,.week-grid.separate-days .day-cell,.week-grid.separate-days .time-cell,.week-grid.separate-days .period-cell,.week-grid.separate-days .focus-cell,.week-grid.separate-days .remember-cell{border-inline:1px solid var(--border)}
.week-grid.separate-days .day-head{border-top:1px solid var(--border);border-radius:14px 14px 0 0}
.week-grid.separate-days .day-column-end{border-bottom:1px solid var(--border);border-radius:0 0 14px 14px;overflow:hidden}
.week-grid.separate-days .time-head,.week-grid.separate-days .time-label,.week-grid.separate-days .focus-row-label,.week-grid.separate-days .remember-row-label{border-inline:1px solid var(--border)}
.week-grid.separate-days .time-head{border-top:1px solid var(--border);border-radius:14px 14px 0 0}
.week-grid.separate-days .time-axis-end{border-bottom:1px solid var(--border);border-radius:0 0 14px 14px;overflow:hidden}
body.fullscreen-display .week-grid.time-mode{grid-template-columns:68px repeat(var(--day-count,7),minmax(0,1fr))!important}
.header-right-actions #visionBtn{order:1}
.header-right-actions #settingsBtn{order:2;display:inline-flex!important}
.header-right-actions #loginBtn{order:3}
.header-right-actions #menuBtn{order:4}

/* Start day and day count match the compact settings cards. */
#settingsPanel .days-settings{margin:0;padding:0}
#settingsPanel .days-settings .settings-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5px;margin:5px 0}
#settingsPanel .days-settings .settings-row label{display:flex;align-items:center;justify-content:space-between;gap:5px;min-width:0;min-height:32px;padding:6px 7px;border:1px solid var(--border);border-radius:10px;background:#fafafa;font-size:.8rem;font-weight:600;white-space:nowrap}
#settingsPanel .days-settings .settings-row select{width:auto;min-width:0;min-height:28px;padding:4px 5px;border-radius:8px;font-size:.8rem}
#settingsPanel .days-settings .settings-row label:first-child select{width:70px}
#settingsPanel .days-settings .settings-row label:last-child select{width:46px}

@media print{.week-grid.time-mode{grid-template-columns:68px repeat(var(--day-count,7),minmax(0,1fr))!important}}
@media(max-width:760px){.week-grid.time-mode{grid-template-columns:58px repeat(var(--day-count,7),minmax(115px,1fr))}}

/* Notes window typography and single-line settings control. */
.free-text-head{font-size:.88rem;font-weight:600}
.free-text-slot .item{font-size:.9rem;font-weight:400}
#settingsPanel .notes-window-control{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px}
#settingsPanel .notes-window-control label{font-size:.88rem;font-weight:600}
#settingsPanel .notes-window-control select{width:auto;min-width:104px;min-height:28px;padding:4px 6px;border:1px solid var(--border);border-radius:8px;background:#fff;font-size:.78rem}
#settingsPanel .notes-window-control input[type=checkbox]{width:18px;min-width:18px;height:18px}

/* Header order: add items, settings, login, menu. */
.header-right-actions #visionBtn{order:1}
.header-right-actions #settingsBtn{order:2}
.header-right-actions #loginBtn{order:3}
.header-right-actions #menuBtn{order:4}


/* Header: centered logo, right menu/login, desktop actions on the left */
.header-inner{position:relative;grid-template-columns:1fr auto 1fr;gap:12px}
.header-right-actions,.header-left-actions{display:flex;align-items:center;gap:8px;position:relative}
.header-right-actions{justify-self:start;justify-content:flex-start}
.header-left-actions{justify-self:end;justify-content:flex-end}
.logo-link{justify-self:center;grid-column:2;grid-row:1}
.header-right-actions{grid-column:1;grid-row:1}
.header-left-actions{grid-column:3;grid-row:1}
#menuPanel{right:0;left:auto;top:48px}
#settingsPanel,#helpPanel,#visionPanel{left:0;right:auto;top:58px}
.mobile-menu-action,.mobile-left-menu-btn{display:none}
@media(max-width:700px){
  .header-inner{grid-template-columns:1fr auto 1fr;padding:8px 10px;gap:7px}
  .desktop-header-action{display:none!important}
  .mobile-menu-action,.mobile-left-menu-btn{display:flex}
  .header-right-actions,.header-left-actions{gap:5px}
  .icon-btn{min-width:35px;height:35px;border-radius:10px}
  .logo-link img{height:27px}
  #menuPanel{right:0;left:auto;top:44px}
  #leftMenuPanel{left:0;right:auto;top:44px}
  #settingsPanel,#helpPanel,#visionPanel{left:10px;right:10px;top:52px;width:auto;max-height:calc(100vh - 64px);overflow:auto}
}

/* === Internationalization: LTR / RTL === */
html[dir="ltr"] .week-grid,html[dir="ltr"] .free-text-slot{direction:ltr}
html[dir="rtl"] .week-grid,html[dir="rtl"] .free-text-slot{direction:rtl}
html[dir="rtl"] .time-badge{margin-inline-start:0;margin-inline-end:5px}
html[dir="ltr"] .menu-item,html[dir="ltr"] .settings-popover,html[dir="ltr"] .guest-disclaimer{text-align:left}
html[dir="rtl"] .menu-item,html[dir="rtl"] .settings-popover,html[dir="rtl"] .guest-disclaimer{text-align:right}
html[dir="ltr"] #menuPanel{left:0;right:auto}html[dir="ltr"] #leftMenuPanel{right:0;left:auto}
html[dir="ltr"] #settingsPanel,html[dir="ltr"] #helpPanel,html[dir="ltr"] #accessibilityPanel,html[dir="ltr"] #visionPanel{right:0;left:auto}
html[dir="rtl"] .header-right-actions #menuPanel{left:0!important;right:auto!important}
html[dir="ltr"] .header-right-actions #menuPanel{right:0!important;left:auto!important}
html[dir="ltr"] .settings-popover{right:0;left:auto}
html[dir="ltr"] .item-drag-zone{right:0;left:auto}
html[dir="ltr"] .print-logo{left:16px;right:auto}
html[lang="en"] .free-text-slot.empty::before,html[lang="he"] .free-text-slot.empty::before{content:""}
.item,.editable-title,.editable-description,.vision-text,.vision-popup-message{unicode-bidi:plaintext}
html[dir="rtl"] .item{direction:rtl;text-align:right}
html[dir="ltr"] .item{direction:ltr;text-align:left}
html[dir="rtl"] .item[contenteditable="true"]{direction:rtl;text-align:right;caret-color:currentColor}
html[dir="ltr"] .item[contenteditable="true"]{direction:ltr;text-align:left;caret-color:currentColor}
.item[contenteditable="true"].empty-note-editor{caret-color:transparent!important}
@keyframes empty-note-caret-blink{0%,48%{opacity:1}49%,100%{opacity:0}}
.item[contenteditable="true"].empty-note-editor::after{content:"";position:absolute;inset-inline-start:var(--note-padding,3px);top:50%;width:1px;height:1em;background:currentColor;transform:translateY(-50%);animation:empty-note-caret-blink 1s steps(1,end) infinite;pointer-events:none}
.language-settings-row{grid-template-columns:1fr 132px!important}
.vision-header-btn svg{width:21px;height:21px;fill:none;stroke:#111;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.vision-menu-icon svg{width:17px;height:17px;fill:none!important;stroke:#111;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.header-left-actions #visionBtn{order:49}.header-left-actions #settingsBtn{order:50}
.vision-arrow{padding:0;min-width:36px;min-height:36px;overflow:visible}
.vision-arrow-svg{display:block;width:100%;height:100%;overflow:visible;pointer-events:none;fill:none;stroke:#111;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.vision-arrow-svg *{vector-effect:non-scaling-stroke}
.vision-arrow-choice{font-family:Arial,sans-serif;font-weight:900;color:#111}
#visionRotateLeft,#visionRotateRight,#visionSize{display:none!important}
#visionSize+*{display:none!important}
.vision-toolbar label:has(#visionSize){display:none!important}
.vision-rotate-handle{position:absolute;bottom:-34px;left:50%;transform:translateX(-50%);width:18px;height:18px;border:1px solid var(--accent);border-radius:50%;background:#fff;box-shadow:0 2px 8px rgba(16,24,40,.18);cursor:grab;z-index:3}
.vision-rotate-handle::after{content:"";position:absolute;left:50%;bottom:17px;width:1px;height:16px;background:var(--accent)}
.vision-rotate-handle:active{cursor:grabbing}
.vision-item:not(.selected):not(:hover) .vision-rotate-handle{display:none}
.header-left-actions #printBtn,.header-left-actions #settingsBtn,.header-left-actions #fullscreenModeBtn,.header-left-actions #menuWhatsappBtn,.header-left-actions #leftMenuBtn{display:none!important}
.header-left-actions #visionBtn{display:inline-flex!important;order:0}
#menuPanel .menu-list{gap:5px}
#menuPanel .menu-item{display:flex!important}
.menu-language-control{margin-top:5px;padding-top:8px;border-top:1px solid var(--border)}
.menu-language-control label{display:grid;grid-template-columns:1fr 120px;align-items:center;gap:8px;padding:7px 9px;font-weight:700}
.menu-language-control select{width:100%;border:1px solid var(--border);border-radius:8px;padding:5px 7px;background:#fff}

/* Headerless top row: title at inline start, controls and logo at inline end. */
.site-header{position:static;top:auto;z-index:auto;background:transparent;border:0;backdrop-filter:none}
.header-inner{max-width:1100px;margin:0 auto;padding:24px 16px 0;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:none;gap:7px;align-items:center}
.header-inner .board-head{grid-column:1;grid-row:1;display:flex;align-items:flex-start;justify-content:flex-start;min-width:0;margin:0;padding:0}
.header-inner .editable-title{min-width:0;width:100%;text-align:start;font-size:clamp(1.35rem,3.1vw,3.1rem)}
.header-inner .editable-description{width:100%;padding:2px 0;text-align:start}
html[dir="ltr"] .header-inner .board-head{justify-self:start;align-items:flex-start;text-align:left}
html[dir="ltr"] .header-inner .editable-title,html[dir="ltr"] .header-inner .editable-description{text-align:left!important}
html[dir="rtl"] .header-inner .board-head{justify-self:start;align-items:flex-start;text-align:right}
html[dir="rtl"] .header-inner .editable-title,html[dir="rtl"] .header-inner .editable-description{text-align:right!important}
.header-right-actions{grid-column:2;grid-row:1;display:flex;justify-self:end;gap:6px}
.header-right-actions #visionBtn{order:1}
.header-right-actions #loginBtn{order:2}
.header-right-actions #menuBtn{order:3}
.header-left-actions{display:none!important}
.logo-corner{position:fixed;inset-inline-end:16px;bottom:16px;z-index:45;width:80px;display:flex;flex-direction:column;align-items:stretch;gap:2px}
.logo-link{position:static;width:80px;height:auto;display:flex;align-items:center;justify-content:center}
.logo-link img{display:block;width:80px;height:auto;object-fit:contain}
.logo-links{display:none;width:80px;align-items:center;justify-content:space-between;gap:2px;direction:rtl;color:var(--accent);font-size:11px;line-height:1.2;white-space:nowrap}
html[lang="he"] .logo-links{display:flex}
.logo-links a{color:var(--accent);text-decoration:none}
.logo-links a:hover,.logo-links a:focus{text-decoration:underline}
@media(max-width:700px){.header-inner{grid-template-columns:minmax(0,1fr) auto;padding:8px 10px 0;gap:5px}.header-inner .board-head{grid-area:auto;grid-column:1;grid-row:1}.header-right-actions{grid-column:2;grid-row:1}.logo-corner{inset-inline-end:10px;bottom:10px}.logo-link{width:80px;height:auto}.logo-link img{width:80px;height:auto}.header-inner .editable-title{font-size:clamp(1.05rem,5vw,1.35rem);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}
@media print{.site-header{display:block!important}.site-header .header-inner{display:block!important;max-width:none;padding:0 0 4mm}.site-header .header-right-actions,.site-header .header-left-actions,.site-header .logo-corner{display:none!important}.site-header .board-head{display:flex!important;align-items:center!important}.site-header .board-head .editable-title,.site-header .board-head .editable-description,html[dir] .site-header .header-inner .board-head .editable-title,html[dir] .site-header .header-inner .board-head .editable-description{text-align:center!important;width:100%!important}.site-header .editable-title{font-size:1.8rem!important;margin-top:4px;}}
body.fullscreen-display .site-header{display:block!important}
body.fullscreen-display .site-header .header-inner{display:block!important;max-width:none;padding:18px 40px 4px}
body.fullscreen-display .site-header .header-right-actions,body.fullscreen-display .site-header .header-left-actions,body.fullscreen-display .site-header .logo-corner{display:none!important}
body.fullscreen-display .site-header .board-head .editable-title,body.fullscreen-display .site-header .board-head .editable-description{text-align:center!important;width:100%!important}

/* Compact text-only main menu. */
#menuPanel{width:min(215px,calc(100vw - 16px));padding:5px;border-radius:11px}
#menuPanel .settings-title-row{position:absolute;top:4px;inset-inline-end:4px;z-index:2;display:block;margin:0;min-height:0}
#menuPanel .settings-close{width:25px;height:25px;min-width:25px;border-radius:7px;font-size:.9rem}
#menuPanel .menu-list{gap:1px}
#menuPanel .menu-icon{display:none!important}
#menuPanel .menu-item{min-height:27px;padding:4px 7px;gap:0;border-radius:7px;font-size:.8rem;line-height:1.2;font-weight:650}
#menuPanel .menu-list>.menu-item:first-child{padding-inline-end:31px}
#menuPanel .menu-item{border-top:0!important;border-bottom:0!important}
#menuPanel .menu-paired-row{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:3px;min-height:27px}
#menuPanel .menu-paired-row .menu-item{width:auto;min-width:0;padding-inline:4px;justify-content:flex-start;font-size:.78rem}
#menuPanel .menu-paired-row .menu-item:last-child{width:100%}
#menuPanel .menu-paired-divider{color:var(--muted);font-size:.78rem}
#menuPanel .menu-separator{height:1px;margin:4px 6px;background:var(--border)}
#menuPanel .menu-language-control{margin-top:0;padding-top:0;border-top:0;border-bottom:0}
#menuPanel .menu-language-control label{grid-template-columns:1fr 82px;gap:5px;min-height:27px;padding:4px 7px;border:0;border-radius:7px;background:#fff;font-size:.8rem;font-weight:650}
#menuPanel .menu-language-control label:hover{background:var(--soft)}
#menuPanel .menu-language-control select{min-height:27px;padding:3px 5px;border-radius:7px;font-size:.78rem}
#settingsPanel .site-font-size-row{display:grid;grid-template-columns:1fr 112px;align-items:center;gap:8px;margin:5px 0;padding:6px 8px;border:1px solid var(--border);border-radius:10px;background:#fafafa;min-height:32px}
#settingsPanel .site-font-size-row label{font-size:.88rem;font-weight:600}

/* Tighter note rows. */
.item{padding-top:2px;padding-bottom:1px;min-height:20px;line-height:1.35;border-bottom:1px solid transparent}
.slot{position:relative;overflow:visible}
.item:not(.timed-span){flex-shrink:0}
.item.pixel-resizable{overflow:visible;resize:none}
.item .item-drag-zone{top:0;bottom:-1px;width:14px;height:auto;transform:none;background:transparent}
.item .item-drag-zone::before{content:"";display:block;width:3px;height:3px;border-radius:50%;background:currentColor;box-shadow:0 -5px currentColor,0 5px currentColor}
html[dir="rtl"] .item .item-drag-zone{left:0;right:auto}
html[dir="ltr"] .item .item-drag-zone{right:0;left:auto}
@media(pointer:coarse){.item{padding:var(--note-padding,3px)}.item .item-drag-zone{top:0;bottom:-1px;width:16px;height:auto;opacity:.5}}
.item-resize-handle{position:absolute;inset-inline:7px;bottom:-6px;width:auto;min-width:0;height:12px;margin:0;padding:0;border:0;border-radius:0;background:transparent;z-index:8;cursor:ns-resize;touch-action:none;user-select:none;-webkit-user-select:none;opacity:0}
.item-resize-handle::after{content:"";position:absolute;inset-inline:0;bottom:5px;height:2px;border-radius:999px;background:#ff9b42;pointer-events:none}
.item:hover .item-resize-handle,.item.editing .item-resize-handle{opacity:.8}
.item.editing .item-drag-zone{opacity:.75;z-index:9}
.item-resize-handle:hover{opacity:1!important}
.item.height-resizing .item-resize-handle{opacity:1!important}
body.note-height-resizing{cursor:ns-resize!important;user-select:none!important;-webkit-user-select:none!important}
.item.timed-span{position:absolute!important;top:0;margin-top:0!important;box-sizing:border-box;overflow:hidden}
html.notes-have-gap .item.timed-span{margin-inline:0!important}
.item.vertical-center{display:flex;flex-direction:column;justify-content:center;align-items:stretch;align-content:stretch;flex-wrap:nowrap}

/* Keep the board heading centered in presentation and print layouts. */
body.fullscreen-display .site-header .board-head{width:100%!important;justify-content:center!important;align-items:center!important;text-align:center!important}
body.fullscreen-display .site-header .editable-title,body.fullscreen-display .site-header .editable-description{width:100%!important;margin-inline:auto!important;text-align:center!important}
@media print{
  .item-resize-handle{display:none!important}
  .site-header .board-head{width:100%!important;justify-content:center!important;align-items:center!important;text-align:center!important}
  .site-header .editable-title,.site-header .editable-description{width:100%!important;margin-inline:auto!important;text-align:center!important}
  .board-wrap:has(.week-grid.separate-days){border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
  .week-grid.separate-days{column-gap:min(var(--day-separation-gap,8px),8px)!important}
  .focus-row-label,.focus-cell,.remember-row-label,.remember-cell{border-color:#4b5563!important}
  .week-grid.separate-days .day-column-end{border-bottom:1px solid #4b5563!important}
  .week-grid.separate-days .time-axis-end{border-bottom:1px solid #4b5563!important}
  .free-text-area,.free-text-head{border-color:#4b5563!important}
  .board-content-layout.side-notes{display:flex!important;flex-direction:row!important;align-items:stretch!important;gap:8px!important;width:100%!important}
  .board-content-layout.side-notes .board-stage{flex:1 1 0!important;width:auto!important;min-width:0!important}
  .board-content-layout.side-notes .free-text-area{display:flex!important;flex-direction:column!important;flex:0 0 var(--notes-window-width,170px)!important;width:var(--notes-window-width,170px)!important;margin:0!important;overflow:hidden!important;break-inside:avoid;page-break-inside:avoid}
  .board-content-layout.side-notes .free-text-slot{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;min-width:0!important;min-height:0!important;height:auto!important;overflow:visible!important}
  .board-content-layout.side-notes .free-text-slot .item{display:block!important;flex:0 0 auto!important;width:100%!important;max-width:100%!important;min-width:0!important;min-height:20px!important;border-inline-start:0!important;break-inside:avoid;page-break-inside:avoid}
  .site-header .board-title-line{width:100%!important;justify-content:center!important;gap:3mm!important}
  .site-header .board-title-line .editable-title{width:auto!important;flex:0 1 auto!important;margin:0!important}
  .site-header .board-month-label{font-size:1rem!important;color:#111!important}
  .manual-date-line{display:inline-block!important;width:12mm;height:.9em;border-bottom:1px solid #111;vertical-align:baseline}
  .day-head .day-date{color:#111!important}
  .month-date-number{color:#111!important;font-size:.68rem!important}
  .week-grid.monthly-mode.monthly-manual-dates .month-day-cell{padding-top:22px}
  .week-grid.monthly-mode.monthly-manual-dates .month-day-cell::before{content:"";position:absolute;top:0;inset-inline-start:0;display:block;width:22px;height:22px;box-sizing:border-box;border-block-end:1px solid #111;border-inline-end:1px solid #111}
}

/* Standalone help page. */
.menu-item{text-decoration:none}
.help-page{background:#f7f8fa}
.help-page-shell{width:min(760px,calc(100% - 28px));margin:28px auto;padding:24px;background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow)}
.help-page-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.help-page-header h1{margin:0;font-size:clamp(1.5rem,4vw,2rem)}
.help-content-lead{margin:0 0 8px;color:#344054;font-size:1rem;line-height:1.45}
.help-page-logo{width:80px;height:auto;object-fit:contain}
.help-page-content{color:#475467}
.help-page-content h2{margin:24px 0 8px;color:#344054;font-size:1.08rem;line-height:1.35}
.help-page-content h2:first-of-type{margin-top:20px}
.help-page-content ul{margin:0;padding-inline-start:24px}
.help-page-content li{margin:8px 0}
.help-page-back{display:inline-flex;margin-top:16px;color:#7a3b00;font-weight:700;text-decoration:none}
.help-page-back:hover{text-decoration:underline}
.legal-page-content p,.legal-page-content li{margin-block:8px}
.legal-page-content ol{margin:0;padding-inline-start:24px}
.legal-page-meta{color:#667085;font-size:.9rem}
.legal-language-switch{display:flex;gap:6px;justify-content:flex-end;margin-bottom:16px}
.legal-language-switch button{border:1px solid var(--border);border-radius:999px;background:#fff;color:#344054;padding:6px 12px;font-weight:700}
.legal-language-switch button[aria-pressed="true"]{background:var(--soft);border-color:#ffc58b;color:#7a3b00}
@media(max-width:600px){.help-page-shell{margin:10px auto;padding:18px}.help-page-content ul{padding-inline-start:22px}}

/* Basic accessibility controls and keyboard focus. */
:focus-visible{outline:3px solid #1261a0!important;outline-offset:2px}
/* Notes keep their regular appearance unless high contrast is enabled. */
.item:focus-visible,.item-content:focus-visible{outline:0!important}
.item[tabindex="0"]:focus-visible{box-shadow:none!important}
html.accessibility-high-contrast .item:focus-visible,
html.accessibility-high-contrast .item.editing{
  position:relative;
  z-index:8;
  outline:3px solid #1261a0!important;
  outline-offset:-3px;
  box-shadow:none!important;
}
.accessibility-popover{width:min(330px,calc(100vw - 24px))}
.accessibility-popover .accessibility-reset{width:100%;justify-content:center;margin-top:8px}
#toolbarMovePrevious,#toolbarMoveNext{display:none;padding-inline:8px;font-size:.78rem;white-space:nowrap}
html.accessibility-note-day-navigation #toolbarMovePrevious,html.accessibility-note-day-navigation #toolbarMoveNext{display:inline-flex}
.tool-btn:disabled{opacity:.42;cursor:not-allowed;transform:none!important}
html.accessibility-highlight-links a{text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:3px}
html.accessibility-reduce-motion{scroll-behavior:auto}
html.accessibility-reduce-motion *,html.accessibility-reduce-motion *::before,html.accessibility-reduce-motion *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
html.accessibility-high-contrast{--bg:#fff;--text:#000;--muted:#202020;--border:#000;--soft:#fff4d6;--accent:#8a3600}
html.accessibility-high-contrast body{background:#fff;color:#000}
html.accessibility-high-contrast .site-header,html.accessibility-high-contrast .settings-popover,html.accessibility-high-contrast .board-wrap,html.accessibility-high-contrast .day-head,html.accessibility-high-contrast .time-head,html.accessibility-high-contrast .time-label,html.accessibility-high-contrast .day-cell,html.accessibility-high-contrast .time-cell,html.accessibility-high-contrast .period-cell,html.accessibility-high-contrast .month-day-cell,html.accessibility-high-contrast .item,html.accessibility-high-contrast .floating-toolbar{background:#fff!important;color:#000!important;border-color:#000!important}
html.accessibility-high-contrast .item{border-bottom-color:#000!important}
html.accessibility-high-contrast a{color:#003b7a!important;text-decoration:underline}

/* Final header icon order; kept last to override legacy header rules. */
.header-right-actions #visionBtn{order:1}
.header-right-actions #settingsBtn{order:2;display:inline-flex!important}
.header-right-actions #loginBtn{order:3}
.header-right-actions #menuBtn{order:4}

/* Keep complete time values visible in the compact three-column controls. */
#settingsPanel .time-options>label,
#settingsPanel .period-time-controls .settings-row.triple>label{
  display:flex;
  min-width:0;
  flex-direction:column;
  align-items:stretch;
  gap:3px;
  text-align:center;
}
#settingsPanel .time-options>label>select,
#settingsPanel .period-time-controls .settings-row.triple>label>select{
  min-width:0;
  width:100%;
  direction:ltr;
  text-align:center;
  text-align-last:center;
}

/* Day-style panel headings on desktop and mobile. */
#settingsPanel>.settings-title-row,#visionPanel>.settings-title-row{
  position:sticky;
  z-index:20;
  justify-content:center;
  min-height:40px;
  padding:8px 42px!important;
  background:#eef4ff;
  border-bottom:1px solid #cbd9ee;
  border-start-start-radius:inherit;
  border-start-end-radius:inherit;
  line-height:1.2;
}
#settingsPanel>.settings-title-row{top:-10px;margin:-10px -12px 8px!important}
#visionPanel>.settings-title-row{top:-16px;margin:-16px -16px 10px!important}
#settingsPanel>.settings-title-row h2,#visionPanel>.settings-title-row h2{
  width:100%;
  margin:0;
  color:#344767;
  font-size:.95rem;
  font-weight:700;
  text-align:center;
}
#settingsPanel>.settings-title-row .settings-close,#visionPanel>.settings-title-row .settings-close{
  position:absolute;
  inset-inline-end:7px;
  top:5px;
  width:30px;
  min-width:30px;
  height:30px;
  padding:0;
  background:transparent;
}

/* Full-screen settings and add-items panels on mobile. */
@media(max-width:700px){
  body:has(#settingsPanel.open),body:has(#visionPanel.open){overflow:hidden}
  #settingsPanel,#visionPanel{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100vh!important;
    height:100dvh!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    padding:8px 8px calc(10px + env(safe-area-inset-bottom))!important;
    border:0!important;
    border-radius:0!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    z-index:2000!important;
  }
  #settingsPanel>.settings-title-row,#visionPanel>.settings-title-row{
    top:-8px;
    min-height:40px;
    margin:-8px -8px 6px!important;
    padding:8px 40px!important;
  }
  #settingsPanel>.settings-title-row h2,#visionPanel>.settings-title-row h2{
    font-size:.9rem;
  }
  #settingsPanel>.settings-title-row .settings-close,#visionPanel>.settings-title-row .settings-close{
    inset-inline-end:6px;
    top:5px;
  }
  #settingsPanel,#visionPanel{font-size:.8rem;line-height:1.25}
  #settingsPanel .settings-block{margin:0;padding-top:0}
  #settingsPanel .settings-row{gap:4px;margin:3px 0}
  #settingsPanel .settings-row label{font-size:.78rem}
  #settingsPanel .settings-row input,#settingsPanel .settings-row select{
    min-height:27px;
    padding:3px 5px;
    font-size:.78rem;
  }
  #settingsPanel .settings-control,#visionPanel .settings-control{
    min-height:28px;
    margin:3px 0;
    padding:4px 6px;
    border-radius:8px;
    font-size:.8rem;
  }
  #settingsPanel .site-font-size-row{
    min-height:28px;
    margin:3px 0;
    padding:4px 6px;
  }
  #settingsPanel .days-preview,#settingsPanel .settings-note{margin-top:2px;font-size:.72rem}
  #settingsPanel .hidden-slots{gap:3px;margin-top:3px;max-height:120px}
  #settingsPanel .hidden-slots label{padding:3px 4px;font-size:.72rem}
  #settingsPanel .btn,#visionPanel .btn{min-height:28px;padding:5px 8px;font-size:.8rem}
  #settingsPanel .settings-save-block{bottom:-8px;padding-bottom:8px}
  #visionPanel .vision-form{gap:5px}
  #visionPanel .vision-form input[type=text]{min-height:29px;padding:5px 7px;border-radius:8px;font-size:.8rem}
  #visionPanel .vision-form-row{gap:5px}
  #visionPanel .vision-symbols{gap:3px}
  #visionPanel .vision-symbols button{height:27px;padding:1px;border-radius:7px;font-size:15px}
  #visionPanel .vision-popup-settings{gap:0;margin-top:2px;padding:0}
  #visionPanel .vision-popup-editor{gap:4px;padding:5px}
  #visionPanel .vision-popup-settings textarea{min-height:64px;padding:5px 7px;border-radius:8px;font-size:.78rem;line-height:1.35}
  #visionPanel .settings-row{gap:4px;margin:3px 0}
  #visionPanel .settings-row label,#visionPanel .settings-row select{font-size:.78rem}
  #visionPanel .settings-row select{min-height:27px;padding:3px 5px;border-radius:8px}
}

/* Pointer-based note dragging. */
.slot.note-drag-target{background:#fff8ef;box-shadow:inset 0 0 0 2px rgba(255,122,0,.38)}
.item.note-drag-before{box-shadow:inset 0 2px 0 var(--accent)}
.slot.note-drag-end::after{content:"";display:block;height:2px;margin:2px 5px;background:var(--accent);border-radius:999px}
.note-drag-preview{position:fixed!important;z-index:4000!important;margin:0!important;pointer-events:none!important;opacity:.88!important;background:#fff!important;border:1px solid #ffc58b!important;border-radius:8px!important;box-shadow:0 12px 28px rgba(16,24,40,.22)!important;transform:rotate(-1deg);overflow:hidden}
.note-drag-preview .item-drag-zone{opacity:.65}
.item.dragging{pointer-events:none}
.note-drag-preview{right:auto!important;bottom:auto!important}
.note-drag-preview .item-drag-zone,.note-drag-preview .item-resize-handle{display:none!important}
@media(pointer:coarse){.item-drag-zone{width:24px;opacity:.5}.item{padding-left:24px}}

/* Optional note separation and spacing. */
.item{padding:var(--note-padding,3px)}
.item-content{display:inline;min-width:0;outline:0}
.item.empty-note-editor .item-content[contenteditable="true"]{display:block;width:100%;min-height:1.35em;line-height:1.35}
.item.vertical-center .item-content{display:block;width:100%}
.week-grid.monthly-mode{grid-template-columns:repeat(7,minmax(130px,1fr));grid-auto-rows:auto}
.monthly-mode .month-day-head{position:sticky;top:0;z-index:4}
.month-day-cell{position:relative;display:flex;flex-direction:column;min-height:128px;border-inline-start:1px solid var(--border);border-bottom:1px solid var(--border);background:#fff;min-width:0}
.month-main-slot{flex:1 1 auto;min-height:72px}
.month-special-section{flex:0 0 auto;background:#fffdf8}
.month-focus-section{border-bottom:1px solid var(--border)}
.month-remember-section{border-top:1px solid var(--border)}
.month-special-section .focus-cell-title,.month-special-section .remember-cell-title{padding:3px 5px 1px;font-size:.68rem;font-weight:600;color:#98a2b3}
.month-special-section .focus-slot,.month-special-section .remember-slot{min-height:22px}
.monthly-mode .item{font-size:1rem}
.week-grid.monthly-mode.separate-days{row-gap:var(--day-separation-gap,8px)}
.week-grid.monthly-mode.separate-days .month-day-cell{border:1px solid var(--border);border-radius:12px;overflow:hidden}
.board-view-settings{grid-template-columns:repeat(3,minmax(0,1fr))!important}
#settingsPanel .board-view-settings > label{flex-direction:column;align-items:stretch;justify-content:center;gap:2px;white-space:normal;text-align:center;line-height:1.1}
#settingsPanel .board-view-settings > label select{width:100%;height:28px}
@media(min-width:761px){#settingsPanel .board-view-settings > .board-view-label select{width:86px;align-self:center;appearance:none;padding:4px 4px 4px 17px;font-size:.8rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23172033' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 5px center}}
.days-settings .settings-row > label[hidden]{display:none!important}
.date-settings-control{gap:6px!important;padding:6px 8px!important}
.date-settings-control>span{font-size:.8rem;font-weight:700;white-space:nowrap}
.date-settings-fields{display:flex;align-items:center;justify-content:flex-end;gap:4px;min-width:0;flex:1 1 auto}
.date-settings-fields input,.date-settings-fields select{height:28px;min-width:0;border:1px solid var(--border);border-radius:8px;background:#fff;padding:3px 5px;font-size:.76rem}
.date-settings-fields input[type=date]{width:128px}
.date-settings-fields #calendarMonthSelect{width:72px}.date-settings-fields #calendarYearSelect{width:66px}
.date-settings-fields [hidden]{display:none!important}
.date-settings-fields :disabled{color:#98a2b3;background:#f5f6f8}
.board-title-line{display:flex;align-items:baseline;justify-content:flex-start;gap:10px;width:100%;min-width:0;direction:ltr}
.board-title-line .editable-title{width:auto;min-width:0;direction:auto}
.board-month-label{flex:0 0 auto;color:#667085;font-size:clamp(.85rem,1.7vw,1.15rem);font-weight:700;line-height:1.2;white-space:nowrap;direction:auto}
.board-month-label[hidden]{display:none!important}
.day-head .day-name,.day-head .day-date{display:inline-block}
.day-head .day-date{margin-inline-start:5px;color:#667085;font-size:.78em;font-weight:600}
.manual-date-line{display:none}
.month-day-cell.has-calendar-date{padding-top:22px}
.month-date-number{position:absolute;top:3px;inset-inline-start:6px;z-index:2;color:#475467;font-size:.76rem;font-weight:700;line-height:1.2}
@media(max-width:760px){body:has(.monthly-mode) .board-stage{max-width:100%;overflow:hidden}}
html.notes-have-border .item{border-bottom-color:#e6e9ef!important}
html.notes-have-border .week-grid .slot>.item:last-child{border-bottom-color:transparent!important}

/* Keep the board vertically fluid; only horizontal overflow may scroll. */
@media screen{.board-wrap{overflow-x:auto;overflow-y:hidden}}
html.notes-have-gap .item{margin:var(--note-gap,6px) var(--note-gap,6px) 0}
.side-notes .free-text-slot .item{width:auto;max-width:100%;padding:var(--note-padding,3px)}
html.notes-have-gap .side-notes .free-text-slot .item{max-width:calc(100% - var(--note-gap,6px) - var(--note-gap,6px))}
#settingsPanel .note-layout-settings{display:grid;grid-template-columns:repeat(3,max-content);justify-content:start;gap:6px;padding:6px 8px}
#settingsPanel .note-layout-settings label{display:flex;align-items:center;justify-content:center;gap:4px;min-width:0;font-size:.76rem;font-weight:600;white-space:nowrap}
#settingsPanel .note-layout-settings input[type=checkbox]{width:16px;height:16px;min-width:16px}
#settingsPanel .note-layout-settings select{width:62px;min-height:27px;padding:3px 5px;border:1px solid var(--border);border-radius:8px;background:#fff;font-size:.76rem}
@media(max-width:430px){#settingsPanel .note-layout-settings{gap:5px;padding:5px 6px}#settingsPanel .note-layout-settings label{font-size:.7rem}#settingsPanel .note-layout-settings select{width:55px}}
@media(pointer:coarse){.item{padding-inline-start:max(24px,var(--note-padding,3px))}}

/* Consistent vertical rhythm throughout Settings. */
#settingsPanel .settings-block{margin-top:5px;padding-top:0}
#settingsPanel .settings-block:first-of-type{margin-top:0}
#settingsPanel .settings-block > .settings-control,
#settingsPanel .settings-block > .settings-row,
#settingsPanel .settings-block > .settings-input-only{margin-top:0;margin-bottom:5px}
#settingsPanel .settings-block > :last-child{margin-bottom:0}
#settingsPanel .time-settings-panel{margin:0 0 5px}
#settingsPanel .time-settings-panel[hidden]{margin:0}
#settingsPanel .settings-block .btn.primary{margin-top:0}

.period-label-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.period-label-icon{display:block;width:28px;height:28px;object-fit:contain}

.ics-export-backdrop{position:fixed;inset:0;z-index:3100;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(15,23,42,.38);backdrop-filter:blur(2px)}
.ics-export-backdrop.open{display:flex}
.ics-export-dialog{position:relative;width:min(620px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:24px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 22px 60px rgba(15,23,42,.25);color:#1e293b}
.ics-export-dialog h2{margin:0 30px 18px;font-size:1.25rem;text-align:center}
.ics-export-close{position:absolute;top:9px;inset-inline-end:9px;width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:#64748b;font-size:1.3rem}
.ics-export-close:hover{background:#f1f5f9;color:#0f172a}
.ics-export-date-field{display:grid;gap:6px;font-weight:700}
.ics-export-date-field input{width:100%;border:1px solid var(--border);border-radius:10px;padding:9px;background:#fff;color:var(--text)}
.ics-export-notice{margin:12px 0;color:#667085;font-size:.86rem;line-height:1.55}
.ics-export-summary{margin:10px 0;padding:9px 11px;border:1px solid #fed7aa;border-radius:10px;background:#fff7ed;color:#7c2d12;font-weight:700}
.ics-export-preview{max-height:260px;overflow:auto;border:1px solid var(--border);border-radius:10px;background:#fafafa}
.ics-export-preview-empty{padding:18px;text-align:center;color:#667085}
.ics-export-preview-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:9px 11px;border-bottom:1px solid #e5e7eb}
.ics-export-preview-row:last-child{border-bottom:0}
.ics-export-preview-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}
.ics-export-preview-when{color:#667085;white-space:nowrap;font-size:.86rem}
.ics-export-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
.ics-export-actions .btn:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.25)}
@media(max-width:520px){.ics-export-dialog{padding:20px 14px}.ics-export-preview-row{grid-template-columns:1fr}.ics-export-preview-when{white-space:normal}.ics-export-actions{flex-direction:column-reverse}.ics-export-actions .btn{width:100%;justify-content:center}}
@media print{.ics-export-backdrop{display:none!important}}
.untimed-label{background:#f3f5f8!important;color:#667085!important;font-size:.76rem;font-weight:700;white-space:nowrap}
.untimed-cell{background:#fcfcfd;min-height:30px}
.untimed-slot{min-height:30px}

/* Compact, flat styling for the existing note editing toolbar. */
.floating-toolbar{
  background:#fff;
  border:1px solid #dfe3e8;
  border-radius:7px;
  box-shadow:0 2px 8px rgba(16,24,40,.12);
  padding:4px;
  gap:2px;
  min-height:72px;
}
.floating-toolbar .toolbar-row{
  gap:1px;
  flex-wrap:nowrap;
}
.floating-toolbar .toolbar-row-primary{
  border-bottom:1px solid #e7eaee;
  padding-bottom:3px;
}
.floating-toolbar .tool-btn{
  min-width:30px;
  height:30px;
  padding:0 7px;
  border:0;
  border-radius:4px;
  background:transparent;
  color:#667085;
  box-shadow:none;
  transition:background-color .14s,color .14s;
}
.floating-toolbar .tool-btn:hover{
  background:#f2f4f7;
  border-color:transparent;
  color:#344054;
  transform:none;
}
.floating-toolbar .tool-btn:focus-visible{
  outline:2px solid rgba(255,122,0,.28);
  outline-offset:-2px;
}
.floating-toolbar .tool-btn.danger{color:#d64555}
.floating-toolbar .tool-btn.danger:hover{background:#fff1f3;color:#b42335}
.floating-toolbar .tool-btn.bold{color:#344054}
.floating-toolbar .toolbar-panel{
  border-radius:6px;
  padding:6px;
  gap:4px;
}
.floating-toolbar .toolbar-panel-head{gap:5px}
.floating-toolbar .toolbar-panel-close{
  border:0;
  border-radius:4px;
  background:transparent;
}
.floating-toolbar .toolbar-panel-close:hover{background:#f2f4f7}

#settingsPanel .settings-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;align-items:center}
#settingsPanel .settings-actions .link-danger{width:100%;min-width:0;text-align:center;white-space:nowrap;font-size:.65rem}

/* Strong, printer-friendly borders. */
@media print{
  .board-content-layout.side-notes .free-text-area[hidden],.free-text-area[hidden]{display:none!important}
  .board-wrap,.free-text-area,.item,.vision-item,.help-page-shell{box-shadow:none!important}
  .board-content-layout{--weekly-print-height:176mm}
  .board-content-layout:not(.side-notes):has(> .free-text-area:not([hidden])){--weekly-print-height:122mm}
  .week-grid:not(.monthly-mode){min-height:var(--weekly-print-height)!important}
  .week-grid:not(.monthly-mode):not(.time-mode) .day-cell{min-height:calc(var(--weekly-print-height) - 9mm)!important}
  .week-grid:not(.monthly-mode):not(.time-mode):has(.focus-cell) .day-cell,
  .week-grid:not(.monthly-mode):not(.time-mode):has(.remember-cell) .day-cell{min-height:calc(var(--weekly-print-height) - 24mm)!important}
  .week-grid:not(.monthly-mode):not(.time-mode):has(.focus-cell):has(.remember-cell) .day-cell{min-height:calc(var(--weekly-print-height) - 39mm)!important}
  .week-grid:not(.monthly-mode).time-mode{grid-template-rows:auto!important;grid-auto-rows:minmax(22px,1fr)!important}
  .board-content-layout:not(.side-notes) > .free-text-area:not([hidden]){display:flex!important;flex-direction:column!important;min-height:50mm!important;margin-top:4mm!important;break-inside:avoid;page-break-inside:avoid}
  .board-content-layout:not(.side-notes) > .free-text-area:not([hidden]) .free-text-slot{flex:1 1 auto!important;min-height:0!important;height:auto!important}
  .board-content-layout.side-notes{min-height:176mm!important}
  .board-content-layout.side-notes .free-text-area:not([hidden]){min-height:176mm!important}
  .week-grid.monthly-mode{grid-template-columns:repeat(7,minmax(0,1fr))!important;grid-auto-rows:auto!important}
  .week-grid.monthly-mode.monthly-empty{height:176mm!important;grid-template-rows:auto repeat(var(--month-row-count,5),minmax(0,1fr))!important;grid-auto-rows:unset!important}
  .week-grid.monthly-mode.monthly-empty .month-day-cell{min-height:0!important}
  .monthly-mode .month-day-cell{min-height:58px!important;border-color:#4b5563!important}
  .monthly-mode .month-main-slot{min-height:42px!important}
  .monthly-mode .month-special-section .focus-slot,.monthly-mode .month-special-section .remember-slot{min-height:14px!important}
  .monthly-mode .month-special-section .focus-cell-title,.monthly-mode .month-special-section .remember-cell-title{padding:1px 3px!important;font-size:.58rem!important;line-height:1.1!important}
  .monthly-mode .month-day-head,.monthly-mode .month-special-section{border-color:#4b5563!important}
  .monthly-mode .item{font-size:1rem!important;line-height:1.2!important;padding:2px 3px!important}
  .week-grid.monthly-mode.separate-days{row-gap:min(var(--day-separation-gap,8px),6px)!important}
  html.notes-have-border .item{border-bottom-color:#4b5563!important}
  html.notes-have-border .week-grid .slot>.item:last-child{border-bottom-color:transparent!important}
  .free-text-slot .item{border-inline-start-color:#4b5563!important}
}

/* Editable board disclaimer below all board content. */
.disclaimer-area{width:100%;margin-top:12px;padding:2px 4px;background:transparent;border:0;box-shadow:none;overflow:visible}
.disclaimer-area[hidden]{display:none!important}
.disclaimer-slot{width:100%;min-height:30px;display:block;padding:0;background:transparent;border:0;cursor:text}
.disclaimer-slot.empty::before{content:"";display:none}
.disclaimer-placeholder{display:block;padding:4px 0;color:#98a2b3;font-size:.82rem;font-weight:400}
.disclaimer-slot .item{display:block;width:100%;max-width:100%;min-height:30px;margin:0!important;padding:4px 0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background-color:transparent;overflow:visible}
.disclaimer-slot .item:hover,.disclaimer-slot .item.editing{box-shadow:none!important}
.disclaimer-slot .item-content{display:block;width:100%;min-height:1.45em;outline:0}
.disclaimer-slot .item-drag-zone,.disclaimer-slot .item-resize-handle{display:none!important}
@media print{
  .disclaimer-area[hidden]{display:none!important}
  .disclaimer-area:not([hidden]){display:block!important;width:100%!important;margin-top:4mm!important;padding:0 1mm!important;background:transparent!important;border:0!important;box-shadow:none!important;break-inside:avoid;page-break-inside:avoid}
  .disclaimer-placeholder{display:none!important}
  .disclaimer-slot,.disclaimer-slot .item{min-height:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
  .disclaimer-slot .item{padding:0!important}
}