.cal-app--v2{display:grid;grid-template-columns:200px 1fr 0;height:calc(100vh - var(--topbar-h));background:var(--neutral-25);overflow:hidden;transition:grid-template-columns .32s cubic-bezier(.4,0,.2,1)}.cal-app--v2.cal-app--with-detail{grid-template-columns:200px 1fr 320px}.cal-side{background:var(--neutral-25);border-right:0;padding:14px;overflow-y:auto}.cal-side h4{font-size:10px;font-weight:500;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin:18px 0 8px;display:flex;align-items:center;gap:6px}.muted-mini{font-size:9px;font-weight:400;color:var(--text-muted);text-transform:none;letter-spacing:0;margin-left:auto}.cal-side__section-head{display:flex;align-items:center;justify-content:space-between;margin:18px 0 8px}.cal-side__section-head h4{margin:0}.cal-side__gear{width:24px;height:24px;background:var(--neutral-25);border:1px solid var(--border-divider);border-radius:6px;cursor:pointer;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center}.cal-side__gear:hover{background:var(--neutral-50);color:var(--text-primary)}.op-section{margin-bottom:14px}.op-section__lbl{font-size:9px;font-weight:600;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;display:flex;align-items:center;gap:6px}.op-section__count{background:var(--neutral-100);color:var(--text-secondary);padding:1px 6px;border-radius:999px;font-size:9px;font-weight:600;letter-spacing:0}.op-section__empty{font-size:11px;color:var(--text-muted);line-height:1.5;padding:12px;border:1px dashed var(--border-divider);border-radius:8px;text-align:center}.op-card--active{border-color:var(--brand-accent);background:var(--brand-accent-50)}.op-card__check{width:16px;height:16px;border-radius:50%;background:var(--brand-accent);color:var(--brand-ink);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.op-row--off{cursor:not-allowed;opacity:.55}.minical{font-size:11px}.minical__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;padding:0 4px}.minical__head .month{font-weight:600;font-size:12px}.minical__head .arrows{display:flex;gap:2px}.minical__head button{background:none;border:0;color:var(--text-muted);cursor:pointer;padding:2px 4px}.minical__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;text-align:center}.minical__dow{font-size:9px;color:var(--text-muted);padding:2px 0;font-weight:500}.minical__day{padding:4px 0;font-size:11px;border-radius:4px;color:var(--text-secondary);font-variant-numeric:tabular-nums;position:relative}.minical__day:hover{background:var(--neutral-50)}.minical__day.muted{color:var(--neutral-300)}.minical__day.today{color:#0e1116;font-weight:600}.minical__dot{position:absolute;bottom:1px;left:50%;transform:translateX(-50%);width:3px;height:3px;border-radius:50%;background:var(--brand-accent)}.op-card{display:flex;gap:10px;padding:10px;border:1px solid var(--border-divider);border-radius:10px;background:var(--bg-card);cursor:pointer;transition:border-color var(--dur-base),background var(--dur-base)}.op-card:hover{border-color:var(--border-subtle)}.op-card.active{border-color:var(--brand-accent);background:var(--brand-accent-50)}.op-card__av{width:26px;height:26px;border-radius:50%;color:#fff;font-size:9px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.op-card__body{flex:1;min-width:0}.op-card__name{font-size:12px;font-weight:600}.op-card__role{font-size:10px;color:var(--text-muted);margin-top:1px}.op-card__bar{width:100%;height:3px;background:var(--neutral-100);border-radius:2px;overflow:hidden;margin-top:8px}.op-card__bar-fill{height:100%;border-radius:2px}.op-card__meta{display:flex;justify-content:space-between;align-items:center;margin-top:4px}.op-card__load{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.op-card__status{display:inline-flex;align-items:center;gap:4px;font-size:9px;font-weight:600}.op-card__status .dot{width:5px;height:5px;border-radius:50%}.op-card__status--live{color:var(--green-success)}.op-card__status--live .dot{background:var(--green-success);animation:livePulse 2s ease-out infinite}.op-list{display:flex;flex-direction:column;gap:4px}.op-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;cursor:pointer;transition:background var(--dur-base)}.op-row:hover:not(.off){background:var(--neutral-25)}.op-row.off{cursor:not-allowed;opacity:.55}.op-row.active{background:var(--brand-accent-50)}.op-row__av{width:22px;height:22px;border-radius:50%;color:#fff;font-size:8.5px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.op-row__body{flex:1;min-width:0}.op-row__name{font-size:11px;font-weight:500}.op-row__role{font-size:9px;color:var(--text-muted)}.op-row__pill{font-size:9px;padding:2px 6px;border-radius:4px;font-weight:600;letter-spacing:.02em}.op-row__pill--avail{background:rgba(91,166,107,.14);color:var(--green-success)}.op-row__pill--off{background:var(--neutral-100);color:var(--text-muted)}.filter-list{display:flex;flex-direction:column;gap:2px}.filter-row{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:6px;font-size:11px;cursor:pointer}.filter-row:hover{background:var(--neutral-25)}.filter-row input[type=checkbox]{accent-color:var(--brand-accent);margin:0}.filter-row .dot{width:8px;height:8px;border-radius:50%}.filter-row .cnt{margin-left:auto;font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.cal-main{flex-direction:column;background:var(--neutral-25);min-width:0;padding:14px 16px 16px;gap:0}.cal-main,.cal-main__card{display:flex;overflow:hidden}.cal-main__card{flex:1;flex-direction:column;background:var(--bg-card);border:1px solid var(--border-divider);border-radius:var(--radius-lg);box-shadow:0 1px 2px rgba(0,0,0,.03),0 1px 0 rgba(0,0,0,.02);min-height:0}.cal-toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid var(--border-divider);background:var(--bg-card);flex-shrink:0}.cal-toolbar__left{display:flex;align-items:center;gap:12px}.cal-toolbar__right{display:flex;align-items:center;gap:8px}.cal-toolbar__nav{display:flex;gap:0}.cal-toolbar__nav button{background:none;border:0;color:var(--text-muted);padding:6px 8px;cursor:pointer;border-radius:6px;font-family:inherit}.cal-toolbar__nav button:hover{background:var(--neutral-50);color:var(--text-primary)}.cal-toolbar__date{display:flex;align-items:center;gap:10px;padding-left:4px}.cal-toolbar__date .day{font-size:26px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums}.cal-toolbar__date .dow{font-size:12px;font-weight:600}.cal-toolbar__date .month{font-size:10px;color:var(--text-muted);margin-top:1px}.btn-soft{padding:6px 12px;background:var(--neutral-25);border:1px solid var(--border-divider);border-radius:8px;font-size:12px;font-weight:500;cursor:pointer;font-family:inherit}.btn-soft:hover{border-color:var(--border-subtle)}.btn-icon{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:var(--neutral-25);border:1px solid var(--border-divider);border-radius:8px;cursor:pointer;color:var(--text-secondary)}.btn-icon:hover{color:var(--text-primary);border-color:var(--border-subtle)}.btn-primary{display:inline-flex;align-items:center;gap:4px;padding:7px 12px;border-radius:8px;font-size:12px;font-weight:500;background:var(--brand-accent);color:var(--brand-ink);border:0;cursor:pointer;font-family:inherit}.btn-primary:hover{background:var(--brand-accent-700);color:#fff}.view-tabs{display:inline-flex;background:var(--neutral-50);border:1px solid var(--border-divider);border-radius:8px;padding:2px}.view-tabs button{background:none;border:0;padding:5px 12px;font-size:12px;font-weight:500;color:var(--text-muted);cursor:pointer;border-radius:6px;font-family:inherit}.view-tabs button.active{background:#fff;color:var(--text-primary);box-shadow:var(--shadow-xs)}.search-expanded{display:inline-flex;align-items:center;gap:6px;padding:0 10px;background:var(--neutral-25);border:1px solid var(--border-subtle);border-radius:8px;height:32px;width:360px;color:var(--text-muted);transition:border-color var(--dur-base)}.search-expanded:focus-within{border-color:var(--brand-accent);background:#fff}.search-expanded input{flex:1;border:0;background:none;outline:none;font:inherit;font-size:12px;color:var(--text-primary)}.search-expanded .kbd{padding:1px 5px;background:rgba(0,0,0,.06);border-radius:4px;font-family:var(--font-mono);font-size:10px}.status-strip{display:flex;align-items:center;gap:10px;padding:8px 20px;border-bottom:1px solid var(--border-divider);background:var(--bg-card);flex-shrink:0;font-size:11px}.status-strip__chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:var(--neutral-25);border:1px solid var(--border-divider);color:var(--text-secondary)}.status-strip__chip .dot{width:6px;height:6px;border-radius:50%}.status-strip__chip--live{background:var(--red-critical-bg);color:var(--red-critical);border-color:transparent}.status-strip__chip--live .dot{background:var(--red-critical);animation:livePulse 1.5s ease-out infinite}.status-strip__chip--warn{background:var(--amber-warning-bg);color:var(--amber-warning);border-color:transparent}.status-strip__spacer{flex:1}.status-strip__count{color:var(--text-muted);font-family:var(--font-mono);font-size:11px}.status-strip__count strong{color:var(--text-primary);font-weight:600}.dayview{flex:1;display:flex;flex-direction:column;background:#fff;overflow:hidden}.dayview__header{display:grid;border-bottom:1px solid var(--border-subtle);background:#fff;flex-shrink:0}.dayview__corner,.dayview__op-col{border-right:1px solid var(--border-divider)}.dayview__op-col{position:relative;display:flex;align-items:center;gap:10px;padding:12px 14px}.dayview__op-col:last-child{border-right:0}.dayview__op-av{width:26px;height:26px;border-radius:50%;color:#fff;font-size:9px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.dayview__op-info{flex:1;min-width:0}.dayview__op-name{font-size:13px;font-weight:600}.dayview__op-meta{display:flex;align-items:center;gap:6px;margin-top:3px;font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.dayview__op-bar{display:inline-block;width:60px;height:4px;background:var(--neutral-100);border-radius:2px;overflow:hidden}.dayview__op-bar>span{display:block;height:100%;border-radius:2px}.dayview__op-tag{padding:2px 6px;border-radius:4px;font-size:9px;font-weight:600;font-family:inherit;letter-spacing:.02em}.dayview__op-tag--off{background:var(--neutral-100);color:var(--text-muted)}.dayview__op-tag--avail{background:rgba(91,166,107,.14);color:var(--green-success)}.dayview__op-x{position:absolute;top:8px;right:8px;width:22px;height:22px;background:transparent;border:0;color:var(--text-muted);border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--dur-base)}.dayview__op-col:hover .dayview__op-x{opacity:1}.dayview__op-x:hover{background:var(--neutral-50);color:var(--text-primary)}.dayview__body{display:grid;flex:1;overflow-y:auto;position:relative}.dayview__hours{border-right:1px solid var(--border-divider);background:#fff}.dayview__slot{padding:4px 8px 0 0;font-family:var(--font-mono);font-size:10px;color:var(--text-muted);text-align:right;position:relative}.dayview__slot--hour{background:#fff;color:var(--text-secondary);font-weight:600;border-bottom:1px solid var(--border-divider)}.dayview__slot--half{background:#fff;border-bottom:1px dashed rgba(0,0,0,.04)}.dayview__slot--half .dayview__slot-lbl{font-size:9px;color:var(--neutral-300)}.dayview__slot-lbl{display:block;line-height:1}.dayview__col{position:relative;border-right:1px solid var(--border-divider);background:var(--col-tint,transparent)}.dayview__col:last-child{border-right:0}.dayview__cell--hour{border-bottom:1px solid var(--border-divider)}.dayview__cell--half{border-bottom:1px dashed rgba(0,0,0,.04)}.dayview__free-overlay,.dayview__off-overlay{position:absolute;inset:0;display:flex;align-items:flex-start;justify-content:center;padding-top:60px;flex-direction:column;gap:6px;align-items:center;font-size:11px;color:var(--text-muted);background:repeating-linear-gradient(45deg,transparent 0 8px,rgba(0,0,0,.015) 8px 16px);pointer-events:none}.dayview__free-overlay{background:rgba(91,166,107,.04)}.dayview__free-overlay span{padding:4px 10px;background:#fff;border:1px dashed var(--green-success);color:var(--green-success);border-radius:999px;font-size:10px;font-weight:600}.now-line{position:absolute;left:0;right:0;height:0;border-top:2px solid var(--red-critical);pointer-events:none;z-index:4;box-shadow:0 0 8px rgba(220,65,65,.25)}.now-line:before{content:"";position:absolute;left:-6px;top:-6px;width:12px;height:12px;border-radius:50%;background:var(--red-critical);border:2px solid #fff;box-shadow:0 0 0 2px rgba(220,65,65,.2);animation:nowPulse 2s ease-out infinite}@keyframes nowPulse{0%,to{box-shadow:0 0 0 2px rgba(220,65,65,.2)}50%{box-shadow:0 0 0 5px rgba(220,65,65,.05)}}.now-line__label{position:absolute;left:-56px;top:-9px;font-family:var(--font-mono);font-size:10px;font-weight:700;color:#fff;background:var(--red-critical);padding:2px 6px;border-radius:4px;box-shadow:0 2px 6px rgba(220,65,65,.3)}.evt{position:absolute;left:4px;right:4px;border-radius:6px;padding:9px 8px 8px 10px;font-size:11px;border-left:3px solid var(--evt-tint,#94a3b8);background:var(--evt-bg,rgba(148,163,184,.1));cursor:grab;overflow:visible;transition:transform .12s ease-out,box-shadow .12s ease-out,border-color .12s ease-out;z-index:1;display:flex;flex-direction:column;gap:1px}.evt:hover{z-index:4}.evt__indicators>*{transition:transform .12s ease-out,box-shadow .12s ease-out}.evt__indicators>:hover{transform:scale(1.12);z-index:51}.evt__chip-actions{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(50%) scale(.92);transition:opacity .15s ease-out,transform .18s ease-out,visibility .15s}.evt-host:focus-within .evt__chip-actions,.evt-host:hover .evt__chip-actions,.evt:focus-within .evt__chip-actions,.evt:hover .evt__chip-actions{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(50%) scale(1)}.evt>.evt__client,.evt>.evt__head,.evt>.evt__line,.evt>.evt__title,.evt>.evt__zone{flex-shrink:0}.evt>.evt__actions{flex-shrink:0;margin-top:auto}.evt:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.1),0 2px 4px rgba(0,0,0,.04);z-index:3}.evt--dragging,.evt:active{cursor:grabbing}.evt--dragging{opacity:.5;transform:scale(.98)}.evt--selected{border-left-color:#10b981;box-shadow:0 0 0 2px #10b981,0 6px 16px rgba(16,185,129,.18);z-index:4}.evt--drag-ok{border-color:#10b981!important;box-shadow:0 0 0 2px rgba(16,185,129,.45),0 8px 24px -8px rgba(16,185,129,.5);outline:none!important}.evt__drag{position:absolute;top:6px;right:4px;color:var(--text-muted);opacity:0;cursor:grab;transition:opacity .12s}.evt:hover .evt__drag{opacity:.5}.evt__head{display:flex;align-items:center;justify-content:space-between;gap:6px}.evt__time{font-size:10px;color:var(--text-secondary)}.evt__live{display:inline-flex;align-items:center;gap:4px;font-size:9px;font-weight:700;letter-spacing:.04em;color:var(--red-critical);text-transform:uppercase}.evt__live .dot{width:5px;height:5px;border-radius:50%;background:var(--red-critical);animation:livePulse 1.5s ease-out infinite}.evt__status{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:rgba(91,166,107,.18);color:var(--green-success)}.evt__status--pending{background:rgba(212,184,90,.2);color:var(--amber-warning)}.evt__title{font-size:12px}.evt__zone{display:inline-flex;align-items:center;gap:4px;font-size:10px;color:var(--text-muted)}.evt__op{display:flex;align-items:center;gap:6px;margin-top:auto;padding-top:4px}.evt__op-av{width:16px;height:16px;border-radius:50%;color:#fff;font-size:8px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.evt__op-name{font-size:10px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.evt{--evt-tint:#5b8dcc;--evt-bg:color-mix(in oklch,var(--evt-tint) 14%,#fff)}.evt__title{font-weight:600;font-size:12.5px;line-height:1.25;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.evt__kind{display:inline-block;font-size:9.5px;font-weight:700;letter-spacing:.02em;padding:1px 5px;border-radius:3px;margin-right:4px;vertical-align:1px;text-transform:uppercase}.evt__time{font-family:var(--font-mono);font-size:10.5px;font-weight:600;color:var(--evt-tint,var(--text-secondary));letter-spacing:-.01em}.evt__client{font-size:10.5px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.evt__spacer{flex:1;min-height:0}.evt__actions{display:flex;gap:2px;margin-top:2px;padding-top:4px;border-top:1px solid rgba(0,0,0,.05)}.evt__action{position:relative;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;cursor:pointer;color:var(--text-muted);border-radius:4px;font-family:inherit;transition:background .12s,color .12s}.evt__action:hover{background:rgba(0,0,0,.06);color:var(--evt-tint,var(--text-primary))}.evt__tooltip{bottom:calc(100% + 6px);min-width:180px;max-width:260px;background:var(--neutral-900,#15171b);color:#fff;border-radius:6px;padding:7px 10px;font-size:11px;line-height:1.35;box-shadow:0 6px 16px rgba(0,0,0,.18);display:none;z-index:50;pointer-events:none;text-align:left}.evt__tooltip,.evt__tooltip:after{position:absolute;left:50%;transform:translateX(-50%)}.evt__tooltip:after{content:"";top:100%;border:4px solid transparent;border-top:4px solid var(--neutral-900,#15171b)}.evt__tooltip-lbl{display:block;font-size:9px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--brand-accent);margin-bottom:2px}.evt__tooltip-val{display:block;word-break:break-word;white-space:normal;font-weight:500}.evt__action:hover .evt__tooltip{display:block}.evt--live{background:linear-gradient(180deg,rgba(220,65,65,.04),rgba(220,65,65,.01));border-left-color:var(--red-critical)}.evt--free{--evt-tint:var(--neutral-300);--evt-bg:transparent;background:repeating-linear-gradient(135deg,transparent 0 6px,rgba(0,0,0,.025) 6px 12px),var(--bg-card);border:1px dashed var(--neutral-200);border-left:3px solid var(--neutral-300);cursor:pointer;box-shadow:none}.evt--free:hover{background:repeating-linear-gradient(135deg,transparent 0 6px,rgba(0,0,0,.04) 6px 12px),var(--neutral-25);transform:none;box-shadow:none}.evt--free .evt__title{color:var(--text-secondary);font-weight:500}.evt--free .evt__time{color:var(--text-muted)}.evt--free-slot{background:rgba(154,189,73,.05);border-left:1.5px dashed var(--brand-accent);border:1.5px dashed var(--brand-accent);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:none;color:var(--brand-accent-700)}.evt--free-slot:hover{background:rgba(154,189,73,.12);transform:none;box-shadow:none}.evt--free-slot__inner{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600}.detail{--op-color:var(--neutral-300);--op-tint-soft:color-mix(in srgb,var(--op-color) 8%,transparent);--op-tint-medium:color-mix(in srgb,var(--op-color) 14%,transparent);--op-tint-strong:color-mix(in srgb,var(--op-color) 22%,transparent);--op-color-hover:color-mix(in srgb,var(--op-color) 88%,#000);--op-focus-ring:color-mix(in srgb,var(--op-color) 35%,transparent);background:var(--bg-card);color:var(--text-primary);flex:1 1 0%;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0;display:flex;flex-direction:column;font-feature-settings:"cv02","cv03","cv04","cv11";scrollbar-width:thin;scrollbar-color:var(--neutral-300) transparent}.detail::-webkit-scrollbar{width:8px}.detail::-webkit-scrollbar-track{background:transparent}.detail::-webkit-scrollbar-thumb{background:var(--neutral-200);border-radius:8px;border:2px solid var(--bg-card)}.detail::-webkit-scrollbar-thumb:hover{background:var(--neutral-300)}.detail :focus-visible{outline:2px solid var(--op-color);outline-offset:2px;border-radius:6px}.detail a:focus-visible,.detail button:focus-visible{box-shadow:0 0 0 3px var(--op-focus-ring);outline:none}.detail input:focus-visible,.detail textarea:focus-visible{outline:2px solid var(--op-color);outline-offset:1px}.detail:before{content:"";display:block;height:4px;flex-shrink:0;background:var(--op-color)}.detail__head{display:flex;flex-direction:column;gap:10px;padding:16px 18px;border-bottom:1px solid var(--border-divider);background:linear-gradient(180deg,var(--op-tint-soft) 0,var(--neutral-25) 100%)}.detail__head-top{display:flex;justify-content:space-between;align-items:center}.detail__cat{font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:999px;background:var(--neutral-100);color:var(--text-secondary)}.detail__cat--hvac{background:rgba(244,162,97,.18);color:#b5621d}.detail__cat--dental{background:rgba(155,139,211,.18);color:#5e4fa0}.detail__cat--beauty{background:rgba(232,164,197,.2);color:#b05f88}.detail__cat--legal{background:rgba(212,184,90,.22);color:#8a6b14}.detail__cat--neutral{font-size:11px;font-weight:700;letter-spacing:.02em;text-transform:none;padding:5px 11px;border-radius:999px;background:var(--neutral-100);color:var(--text-secondary);display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border-divider);line-height:1}.detail[data-status=confirmed] .detail__cat--neutral{background:rgba(16,185,129,.1);color:#047857;border-color:rgba(16,185,129,.25)}.detail[data-status=in_progress] .detail__cat--neutral{background:rgba(245,158,11,.1);color:#b45309;border-color:rgba(245,158,11,.25)}.detail[data-status=scheduled] .detail__cat--neutral{background:rgba(96,165,250,.1);color:#1d4ed8;border-color:rgba(96,165,250,.25)}.detail[data-status=completed] .detail__cat--neutral{background:var(--neutral-100);color:var(--text-secondary)}.detail[data-status=cancelled] .detail__cat--neutral{background:rgba(244,63,94,.1);color:#be123c;border-color:rgba(244,63,94,.25)}.detail[data-status=no_show] .detail__cat--neutral{background:rgba(156,163,175,.12);color:#4b5563}.detail__cat--neutral:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.detail__head-actions{display:flex;gap:6px}.detail__close,.detail__pin{width:30px;height:30px;background:var(--bg-card);border:1px solid var(--border-divider);border-radius:8px;color:var(--text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .12s ease}.detail__pin:hover{background:var(--op-tint-soft);color:var(--op-color-hover);border-color:var(--op-tint-strong)}.detail__close:active,.detail__pin:active{transform:scale(.94)}.detail__close:hover{background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.3);color:#ef4444}.detail__title{font-size:22px;font-weight:700;line-height:1.15;color:var(--text-primary);letter-spacing:-.025em;word-break:break-word}.detail__reason{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;margin-top:2px}.detail__reason-lbl{font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);padding:2px 6px;border-radius:4px;background:var(--neutral-100)}.detail__reason-val{color:var(--text-secondary);font-weight:500}.detail__time{gap:6px;color:var(--text-muted)}.detail__time,.detail__time-edit{display:inline-flex;align-items:center;font-family:inherit;font-size:12px}.detail__time-edit{gap:8px;color:var(--text-secondary);flex-wrap:wrap;background:var(--bg-card);border:1px solid var(--border-divider);border-radius:10px;padding:8px 12px;transition:border-color .15s ease,box-shadow .15s ease}.detail__time-edit:hover{border-color:var(--neutral-300)}.detail__time-edit:focus-within{border-color:var(--op-color);box-shadow:0 0 0 3px var(--op-focus-ring)}.detail__time-edit svg{color:var(--text-muted);flex-shrink:0}.detail__dur-input,.detail__time-input{font-family:inherit;font-size:13px;font-weight:600;color:var(--text-primary);background:transparent;border:none;border-radius:4px;padding:2px 4px;outline:none;transition:background .12s;font-variant-numeric:tabular-nums}.detail__time-input{width:72px}.detail__dur-input{width:42px;text-align:right}.detail__dur-input:hover,.detail__time-input:hover{background:var(--neutral-100)}.detail__dur-input:focus,.detail__time-input:focus{background:var(--neutral-100);outline:none}.detail__time-sep{color:var(--neutral-300);font-size:12px;font-weight:400;text-transform:lowercase;letter-spacing:0}.detail__time-end{color:var(--op-color-hover);margin-left:auto;font-weight:700;font-variant-numeric:tabular-nums;font-size:12.5px;font-family:inherit}.detail__section{display:flex;flex-direction:column;gap:10px;padding:16px 20px;border-bottom:1px solid var(--border-divider)}.detail__section:last-of-type{border-bottom:0}.detail__lbl{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);display:inline-flex;align-items:center;gap:5px;font-weight:700}.detail__client{display:flex;align-items:center;gap:14px;padding:14px 16px 14px 18px;background:var(--bg-card);border:1px solid var(--border-divider);border-radius:14px;box-shadow:0 1px 3px rgba(15,23,42,.04);position:relative;overflow:hidden;transition:box-shadow .2s ease,border-color .2s ease}.detail__client:hover{box-shadow:0 2px 8px rgba(15,23,42,.06);border-color:var(--op-tint-strong)}.detail__client:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--op-color);border-radius:0 3px 3px 0}.detail__client-av{width:38px;height:38px;border-radius:50%;background:var(--op-tint-medium);color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;border:1.5px solid var(--op-tint-strong);letter-spacing:-.02em}.detail__client-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.detail__client-name{font-size:14px;font-weight:650;color:var(--text-primary);line-height:1.25;letter-spacing:-.01em;word-break:break-word;overflow-wrap:anywhere}.detail__client-zone{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted);text-decoration:none;width:100%;min-width:0;line-height:1.35}.detail__client-zone,.detail__client-zone span{overflow-wrap:anywhere;word-break:break-word}.detail__client-zone svg{flex-shrink:0;opacity:.7}.detail__client-zone:hover{color:var(--text-secondary)}a.detail__client-zone{color:var(--op-color-hover)}a.detail__client-zone:hover{color:var(--op-color);text-decoration:underline;text-underline-offset:2px}a.detail__client-zone svg{opacity:1}.detail__client-actions{display:inline-flex;gap:8px;flex-shrink:0;align-self:flex-start}.detail__chip-action{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--border-divider);border-radius:10px;color:var(--text-muted);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .12s ease}.detail__chip-action:hover{background:var(--op-tint-soft);color:var(--op-color-hover);border-color:var(--op-tint-strong)}.detail__chip-action:active{transform:scale(.94)}.detail__chip-action--whatsapp:hover{background:rgba(37,211,102,.1);color:#0e8a47;border-color:rgba(37,211,102,.3)}.detail__op{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--op-tint-soft);border:1px solid var(--op-tint-medium);border-radius:12px;font-size:13px;font-weight:500;transition:border-color .15s ease,background .15s ease}.detail__op:hover{border-color:var(--op-tint-strong);background:var(--op-tint-medium)}.detail__op-av{width:30px;height:30px;border-radius:50%;color:#fff;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.25),0 1px 3px rgba(15,23,42,.1);letter-spacing:-.02em}.detail__op-name{flex:1;min-width:0;color:var(--text-primary);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.detail__op-change{margin-left:auto;background:transparent;border:0;color:var(--op-color-hover);font-size:11px;cursor:pointer;font-family:inherit;font-weight:600;padding:4px 8px;border-radius:6px;transition:background .15s ease,color .15s ease}.detail__op-change:hover{background:var(--op-tint-medium)}.detail__op--empty{background:var(--neutral-25);border:1px dashed var(--neutral-300);cursor:pointer;width:100%;font-family:inherit;text-align:left}.detail__op--empty:hover{border-color:var(--op-color);background:var(--op-tint-soft)}.detail__op-empty-text{flex:1;font-size:13px;font-weight:500;color:var(--text-muted);font-style:italic}.detail__note{font-size:12.5px;line-height:1.55;color:var(--text-secondary);padding:10px 12px;background:var(--neutral-25);border:1px solid var(--border-divider);border-radius:10px;resize:vertical;width:100%;box-sizing:border-box;font-family:inherit;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.detail__note::-moz-placeholder{color:var(--text-muted);font-style:italic}.detail__note::placeholder{color:var(--text-muted);font-style:italic}.detail__note:hover{background:var(--bg-card);border-color:var(--neutral-300)}.detail__note--editable:focus{outline:none;background:var(--bg-card);border-color:var(--op-color);box-shadow:0 0 0 3px var(--op-focus-ring);color:var(--text-primary)}.detail__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:16px 20px;border-top:1px solid var(--border-divider);background:var(--neutral-25)}.detail__btn{padding:11px 12px;border-radius:10px;font-size:12.5px;font-weight:600;background:var(--bg-card);border:1px solid var(--border-divider);color:var(--text-secondary);cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .12s ease,box-shadow .15s ease;letter-spacing:-.01em;min-height:38px}.detail__btn:hover{background:var(--neutral-50);border-color:var(--border-strong);color:var(--text-primary);box-shadow:0 1px 3px rgba(0,0,0,.04)}.detail__btn:active{transform:translateY(1px)}.detail__btn:disabled{opacity:.55;cursor:not-allowed}.detail__btn:disabled:hover{background:var(--bg-card);border-color:var(--border-divider);color:var(--text-secondary);box-shadow:none}.detail__btn--primary{background:var(--op-color);color:#fff;border-color:var(--op-color);grid-column:1/-1;padding:12px;font-size:13px;font-weight:700;box-shadow:0 1px 4px var(--op-tint-strong);letter-spacing:-.01em}.detail__btn--primary:hover{background:var(--op-color-hover);border-color:var(--op-color-hover);color:#fff;box-shadow:0 4px 12px var(--op-tint-strong)}.detail__btn--primary:disabled,.detail__btn--primary:disabled:hover{background:var(--neutral-200);border-color:var(--neutral-200);color:var(--text-muted);box-shadow:none}.detail__btn--danger{color:#be123c;border-color:rgba(190,18,60,.22);background:rgba(244,63,94,.04)}.detail__btn--danger:hover{background:rgba(244,63,94,.1);border-color:rgba(220,38,38,.5);color:#9f1239;box-shadow:0 1px 3px rgba(244,63,94,.12)}.detail__giulia{display:flex;gap:12px;align-items:flex-start;background:var(--op-tint-soft);border:1px solid var(--op-tint-medium);border-radius:14px;padding:12px 14px;margin:14px 18px 18px;position:relative}.detail__giulia:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:0 3px 3px 0;background:var(--op-color)}.detail__giulia-av{width:28px;height:28px;border-radius:9px;background:var(--op-color);color:#fff;font-size:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 1px 3px var(--op-tint-strong);letter-spacing:-.02em}.detail__giulia-body{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.detail__giulia-msg{font-size:12px;line-height:1.5;color:var(--text-primary)}.detail__giulia-msg .tabular-nums{color:var(--op-color-hover);font-weight:700}.detail__giulia-link{background:transparent;border:0;color:var(--op-color-hover);font-size:11.5px;padding:0;cursor:pointer;font-family:inherit;font-weight:600;display:inline-flex;align-items:center;gap:4px;align-self:flex-start;transition:color .15s ease}.detail__giulia-link:hover{color:var(--op-color);text-decoration:underline;text-underline-offset:3px}@keyframes livePulse{0%{box-shadow:0 0 0 0 rgba(220,65,65,.5)}70%{box-shadow:0 0 0 6px rgba(220,65,65,0)}to{box-shadow:0 0 0 0 rgba(220,65,65,0)}}.dayview-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#fff;color:var(--text-muted);padding:60px 20px}.dayview-empty svg{color:var(--neutral-300)}.dayview-empty h3{font-size:15px;font-weight:600;color:var(--text-secondary);margin:0}.dayview-empty p{font-size:12px;max-width:320px;text-align:center;line-height:1.5;margin:0}.dayview__cell{position:relative;cursor:pointer;transition:background .12s}.dayview__cell:hover{background:rgba(154,189,73,.04)}.dayview__cell--drop{background:rgba(154,189,73,.12)!important;box-shadow:inset 0 0 0 2px var(--brand-accent)}.dayview__cell-add{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:22px;height:22px;border-radius:50%;background:var(--brand-accent);color:var(--brand-ink);display:inline-flex;align-items:center;justify-content:center;opacity:0;transition:opacity .12s;pointer-events:none}.dayview__cell:hover .dayview__cell-add{opacity:.85}.dayview__cell--off{background:repeating-linear-gradient(135deg,hsla(0,0%,8%,.025) 0 6px,hsla(0,0%,8%,.06) 6px 12px);cursor:not-allowed}.dayview__cell--off:hover{background:repeating-linear-gradient(135deg,hsla(0,0%,8%,.035) 0 6px,hsla(0,0%,8%,.075) 6px 12px)}.dayview__cell--off .dayview__cell-add{display:none}.dayview__off-band{position:absolute;left:0;right:0;pointer-events:none;z-index:1;display:flex;align-items:flex-start;justify-content:center;padding-top:6px}.dayview__off-label{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:hsla(0,0%,8%,.32);font-weight:600}.dayview__col--vacation{background:rgba(124,107,196,.05)!important}.dayview__vacation{position:absolute;inset:0;z-index:2;pointer-events:none;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(135deg,rgba(124,107,196,.04) 0 8px,rgba(124,107,196,.1) 8px 16px)}.dayview__vacation-badge{display:inline-flex;align-items:center;gap:6px;background:var(--brand-cream);border:1px solid rgba(124,107,196,.3);color:#5c4da0;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.02em;box-shadow:0 1px 0 hsla(0,0%,8%,.04)}.dayview__op-col--off{opacity:.62}.dayview__op-status{font-size:11px;font-weight:600;color:#5c4da0;letter-spacing:.02em}.dayview__op-status--partial{color:var(--brand-ink-soft)}.evt--short{padding:4px 8px;gap:0;flex-direction:row;align-items:center}.evt--short .evt__title{font-size:11px;line-height:1.2;-webkit-line-clamp:1}.evt__title--inline{margin-left:8px}.modal-overlay{position:fixed;inset:0;background:rgba(15,18,22,.45);z-index:100;display:flex;align-items:center;justify-content:center;padding:40px 20px;backdrop-filter:blur(2px);animation:modalFadeIn .18s ease-out}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--bg-card);border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.2),0 4px 16px rgba(0,0,0,.1);width:100%;max-width:600px;max-height:calc(100vh - 80px);display:flex;flex-direction:column;animation:modalSlideIn .22s cubic-bezier(.4,0,.2,1)}.modal--sm{max-width:480px}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.modal__head{padding:18px 20px;border-bottom:1px solid var(--border-divider);display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.modal__title{font-size:15px;font-weight:600}.modal__sub{font-size:12px;color:var(--text-muted);margin-top:2px;line-height:1.45}.modal__close{width:28px;height:28px;background:var(--neutral-25);border:1px solid var(--border-divider);border-radius:6px;color:var(--text-secondary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.modal__close:hover{background:var(--neutral-50);color:var(--text-primary)}.modal__body{padding:16px 20px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:20px}.modal__foot{padding:14px 20px;border-top:1px solid var(--border-divider);display:flex;justify-content:flex-end;gap:8px}.modal-section{display:flex;flex-direction:column;gap:10px}.modal-section__head{display:flex;justify-content:space-between;align-items:center}.modal-section h5{font-size:11px;font-weight:600;color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;margin:0}.btn-soft--sm{padding:5px 10px;font-size:11px;display:inline-flex;align-items:center;gap:4px}.op-manage-list{display:flex;flex-direction:column;gap:6px}.op-manage-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border-divider);border-radius:8px;background:var(--bg-card)}.op-manage-row .op-row__body{flex:1;min-width:0}.op-manage-row .op-row__name{font-size:12px;font-weight:600}.op-manage-row .op-row__role{font-size:10px;color:var(--text-muted)}.btn-icon-sm{width:26px;height:26px;background:var(--neutral-25);border:1px solid var(--border-divider);border-radius:6px;color:var(--text-secondary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.btn-icon-sm:hover{background:var(--neutral-50);color:var(--text-primary)}.btn-icon-sm--red-critical:hover{background:var(--red-critical-bg);color:var(--red-critical);border-color:var(--red-critical)}.integ-list{display:flex;flex-direction:column;gap:6px}.integ-card{display:flex;gap:10px;padding:10px 12px;border:1px solid var(--border-divider);background:var(--bg-card)}.integ-card,.integ-card__ico{align-items:center;border-radius:8px}.integ-card__ico{width:32px;height:32px;display:inline-flex;justify-content:center;font-weight:700;font-size:13px;flex-shrink:0}.integ-card__body{flex:1;min-width:0}.integ-card__name{font-size:12px;font-weight:600}.integ-card__sub{margin-top:1px}.integ-card__status,.integ-card__sub{font-size:10px;color:var(--text-muted)}.integ-card__status{font-weight:600;padding:3px 8px;border-radius:999px;background:var(--neutral-50)}.integ-card__status--ok{background:rgba(91,166,107,.14);color:var(--green-success)}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--border-divider)}.setting-row:last-child{border-bottom:0}.setting-row__lbl{font-size:13px;font-weight:600}.setting-row__sub{font-size:11px;color:var(--text-muted);margin-top:2px;line-height:1.4}.seg-control{display:inline-flex;padding:2px;background:var(--neutral-50);border:1px solid var(--border-divider);border-radius:8px}.seg-control button{padding:5px 10px;font-size:11px;font-weight:500;background:none;border:0;cursor:pointer;border-radius:6px;color:var(--text-secondary);font-family:inherit}.seg-control button.active{background:#fff;color:var(--text-primary);box-shadow:var(--shadow-xs)}.seg-control--sm button{padding:4px 8px;font-size:10px}.switch{display:inline-block;width:36px;height:20px;position:relative;cursor:pointer}.switch input{opacity:0;width:0;height:0}.switch span{position:absolute;inset:0;background:var(--neutral-200,#d8d9d5);border-radius:999px;transition:background .18s}.switch span:before{content:"";position:absolute;left:2px;top:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .18s}.switch input:checked+span{background:var(--brand-accent)}.switch input:checked+span:before{transform:translateX(16px)}.quick-add{position:fixed;background:var(--bg-card);border-radius:12px;border:1px solid var(--border-subtle);box-shadow:0 20px 50px rgba(0,0,0,.18),0 4px 12px rgba(0,0,0,.08);width:360px;padding:14px;z-index:200;display:flex;flex-direction:column;gap:10px}.quick-add__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.quick-add__time{font-family:var(--font-mono);font-weight:600;color:var(--text-primary);background:var(--brand-accent-50);padding:3px 8px;border-radius:6px}.quick-add__op,.quick-add__time{display:inline-flex;align-items:center;gap:5px;font-size:11px}.quick-add__op{color:var(--text-secondary)}.quick-add__input{width:100%;padding:8px 10px;border:1px solid var(--border-subtle);border-radius:8px;font:inherit;font-size:12px;outline:none;background:var(--bg-card)}.quick-add__input:focus{border-color:var(--brand-accent)}.quick-add__input--lg{font-size:14px;font-weight:500;padding:10px 12px}.quick-add__row{display:flex;align-items:center;justify-content:space-between;gap:10px}.quick-add__lbl{font-size:11px;color:var(--text-muted);font-weight:500}.quick-add__foot{display:flex;justify-content:flex-end;gap:6px;padding-top:4px}.quick-add .btn-primary[disabled]{opacity:.5;cursor:not-allowed}.evt__cat-bar{position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--evt-tint);border-top-left-radius:inherit;border-bottom-left-radius:inherit}.evt--free .evt__cat-bar{background:var(--neutral-300)}.evt{background:var(--evt-bg,var(--neutral-25));border:1px solid color-mix(in oklch,var(--evt-tint) 22%,transparent)}.evt:hover{box-shadow:0 4px 14px color-mix(in oklch,var(--evt-tint) 18%,transparent)}.evt--ok{border-color:color-mix(in oklch,var(--evt-tint) 30%,transparent)}.evt--pending{border-style:dashed}.evt--free{background:repeating-linear-gradient(135deg,var(--neutral-25),var(--neutral-25) 6px,var(--neutral-50) 6px,var(--neutral-50) 12px)!important;border:1px dashed var(--border-subtle)!important;color:var(--text-muted)}.evt--free .evt__title{color:var(--text-muted);font-style:italic}.travel-chip{position:absolute;left:8px;right:8px;display:inline-flex;align-items:center;gap:4px;font-size:10px;color:var(--text-muted);background:linear-gradient(180deg,transparent,var(--neutral-25) 50%,transparent);padding:2px 6px;pointer-events:none;z-index:1}.travel-chip svg{color:var(--neutral-400)}.evt[style*="width: calc"]{border-left:3px solid var(--evt-tint)}.ai-bar{display:flex;gap:10px;padding:8px 12px;margin:0 12px 12px;background:linear-gradient(135deg,var(--brand-accent-50),var(--neutral-25));border:1px solid color-mix(in oklch,var(--brand-accent) 30%,transparent);border-radius:var(--radius-md)}.ai-bar,.ai-bar__av{align-items:center;flex-shrink:0}.ai-bar__av{width:26px;height:26px;border-radius:50%;background:var(--brand-accent);color:var(--brand-ink);display:inline-flex;justify-content:center;font-weight:700;font-size:11px}.ai-bar__msg{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;font-size:12px;color:var(--text-primary);line-height:1.4}.ai-bar__label{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-accent-700)}.ai-bar__btn{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;padding:5px 10px;font-size:11px;font-weight:500;color:var(--text-primary);cursor:pointer;font-family:inherit}.ai-bar__btn:first-of-type{background:var(--brand-accent);border-color:var(--brand-accent);color:var(--brand-ink);font-weight:600}.ai-bar__btn:hover{filter:brightness(.98)}.ai-bar__close{background:none;border:0;color:var(--text-muted);width:22px;height:22px;border-radius:4px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.ai-bar__close:hover{background:rgba(0,0,0,.05);color:var(--text-primary)}.undo-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);display:inline-flex;align-items:center;gap:10px;padding:10px 14px;background:var(--neutral-800);color:var(--neutral-50);border-radius:999px;font-size:12px;box-shadow:0 10px 30px rgba(0,0,0,.25);z-index:200;animation:toastIn .28s cubic-bezier(.2,.8,.3,1.1)}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.undo-toast button{background:hsla(0,0%,100%,.12);border:0;color:#fff;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600;cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;gap:4px}.undo-toast button:hover{background:hsla(0,0%,100%,.2)}.kbd-hint{position:fixed;right:16px;bottom:16px;display:flex;gap:14px;padding:8px 12px;background:hsla(0,0%,6%,.78);color:var(--neutral-100);border-radius:999px;font-size:10px;backdrop-filter:blur(8px);pointer-events:none;opacity:0;transition:opacity .2s;z-index:50}.cal-main:hover~.kbd-hint,body:has(.cal-app):hover .kbd-hint{opacity:.55}.kbd-hint:hover{opacity:1}.kbd-hint__item{display:inline-flex;align-items:center;gap:5px}.kbd-hint kbd{background:hsla(0,0%,100%,.18);padding:1px 6px;border-radius:4px;font-family:var(--font-mono);font-size:9px;font-weight:600}.minical__day{background:none;border:0;cursor:pointer;font:inherit}.minical__day:hover{background:var(--neutral-100)}.minical__day.anchor{background:var(--brand-accent-50);color:var(--brand-accent-700);font-weight:600}.minical__day.today{background:var(--brand-accent);color:var(--brand-ink);font-weight:700}.weekview{flex:1;display:flex;flex-direction:column;background:var(--bg-card);overflow:hidden}.weekview__opsel{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--border-divider);background:var(--neutral-25);flex-shrink:0;flex-wrap:wrap}.weekview__opsel-lbl{font-size:11px;color:var(--text-muted);font-weight:500}.weekview__op-chips{display:flex;gap:4px;flex-wrap:wrap}.weekview__op-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 4px;background:var(--bg-card);border:1px solid var(--border-divider);border-radius:999px;font-size:11px;color:var(--text-secondary);cursor:pointer;font-family:inherit}.weekview__op-chip:hover{border-color:var(--border-subtle)}.weekview__op-chip.is-active{background:var(--neutral-700);border-color:var(--neutral-700);color:#fff}.weekview__op-chip.is-active .weekview__op-av{box-shadow:0 0 0 2px var(--neutral-700)}.weekview__op-av{width:22px;height:22px;border-radius:50%;color:#fff;font-size:9px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.weekview__overlay-flag{margin-left:auto;display:inline-flex;align-items:center;gap:4px;font-size:10px;color:var(--text-muted);padding:3px 8px;background:var(--neutral-100);border-radius:999px}.weekview__head{display:grid;grid-template-columns:56px repeat(7,1fr);border-bottom:1px solid var(--border-subtle);background:var(--bg-card);flex-shrink:0}.weekview__corner,.weekview__day-head{border-right:1px solid var(--border-divider)}.weekview__day-head{padding:8px 10px;display:flex;flex-direction:column;gap:2px}.weekview__day-head:last-child{border-right:0}.weekview__day-head.is-today{background:var(--brand-accent-50)}.weekview__day-dow{font-size:10px;font-weight:600;color:var(--text-muted);letter-spacing:.06em}.weekview__day-head.is-today .weekview__day-dow{color:var(--brand-accent-700)}.weekview__day-num{font-size:22px;font-weight:600;color:var(--text-primary);line-height:1}.weekview__day-cnt{font-size:10px;color:var(--text-muted)}.weekview__body{flex:1;overflow-y:auto;display:grid;grid-template-columns:56px repeat(7,1fr);position:relative;height:var(--col-height,auto)}.weekview__hours{position:relative;border-right:1px solid var(--border-divider);background:var(--bg-card)}.weekview__hour{position:absolute;right:6px;transform:translateY(-50%);font-family:var(--font-mono);font-size:10px;color:var(--text-muted);font-weight:600}.weekview__col{position:relative;border-right:1px solid var(--border-divider);height:var(--col-height)}.weekview__col:last-child{border-right:0}.weekview__col.is-today{background:rgba(154,189,73,.03)}.weekview__hour-line{border-bottom:1px solid var(--border-divider)}.weekview__hour-line,.weekview__now{position:absolute;left:0;right:0;pointer-events:none}.weekview__now{border-top:2px solid var(--red-critical);z-index:5}.weekview__now-dot{position:absolute;left:-5px;top:-6px;width:10px;height:10px;border-radius:50%;background:var(--red-critical);box-shadow:0 0 0 2px var(--bg-card)}.evt--week{position:absolute;border-radius:6px;padding:4px 6px 4px 8px;cursor:pointer;font-size:11px;overflow:hidden;display:flex;flex-direction:column;gap:2px;box-shadow:0 1px 2px rgba(0,0,0,.04)}.evt--week .evt__time{font-family:var(--font-mono);font-size:10px;color:var(--evt-tint);font-weight:700}.evt--week .evt__title{font-size:11.5px;font-weight:600;color:var(--text-primary)}.evt--week .evt__client,.evt--week .evt__title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.evt--week .evt__client{font-size:10px;color:var(--text-muted)}.evt__op-badge{position:absolute;top:4px;right:4px;width:16px;height:16px;border-radius:50%;color:#fff;font-size:8px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 0 0 1.5px var(--bg-card)}.monthview{flex:1;display:flex;flex-direction:column;background:var(--bg-card);overflow:hidden}.monthview__head{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--border-subtle);background:var(--neutral-25);flex-shrink:0}.monthview__dowhead{padding:10px 12px;font-size:10px;font-weight:700;letter-spacing:.06em;color:var(--text-muted);text-transform:uppercase;border-right:1px solid var(--border-divider)}.monthview__dowhead:last-child{border-right:0}.monthview__grid{flex:1;display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:1fr;overflow-y:auto}.monthview__cell{border-right:1px solid var(--border-divider);border-bottom:1px solid var(--border-divider);padding:6px 8px;display:flex;flex-direction:column;gap:4px;background:var(--bg-card);cursor:pointer;min-height:100px;transition:background .12s}.monthview__cell:nth-child(7n){border-right:0}.monthview__cell.is-out,.monthview__cell:hover{background:var(--neutral-25)}.monthview__cell.is-out,.monthview__cell.is-out .monthview__cell-num{color:var(--text-subtle)}.monthview__cell.is-we{background:color-mix(in oklch,var(--neutral-25) 60%,var(--neutral-50))}.monthview__cell.is-today{background:var(--brand-accent-50)}.monthview__cell-head{display:flex;align-items:center;justify-content:space-between}.monthview__cell-num{font-size:13px;font-weight:600;color:var(--text-primary)}.monthview__cell.is-today .monthview__cell-num{display:inline-flex;width:22px;height:22px;border-radius:50%;align-items:center;justify-content:center;background:var(--brand-accent);color:var(--brand-ink)}.monthview__cell-badge{font-size:9px;padding:1px 6px;border-radius:999px;background:var(--neutral-100);color:var(--text-muted);font-weight:600}.monthview__cell-evts{display:flex;flex-direction:column;gap:2px;min-height:0}.monthview__evt{display:inline-flex;align-items:center;gap:5px;padding:2px 6px;background:var(--evt-bg);border:0;border-left:2px solid var(--evt-tint);border-radius:3px;font-size:11px;cursor:pointer;font-family:inherit;text-align:left;white-space:nowrap;overflow:hidden}.monthview__evt:hover{background:color-mix(in oklch,var(--evt-bg) 70%,var(--evt-tint))}.monthview__evt-dot{display:none}.monthview__evt-time{font-family:var(--font-mono);font-size:10px;font-weight:700;color:var(--evt-tint);flex-shrink:0}.monthview__evt-title{font-size:11px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis}.monthview__more{background:none;border:0;padding:1px 6px;font-size:10px;color:var(--text-muted);cursor:pointer;text-align:left;font-family:inherit}.monthview__more:hover{color:var(--text-primary)}.planview{flex:1;display:flex;flex-direction:column;background:var(--bg-card);overflow:hidden}.planview__head{display:grid;grid-template-columns:200px repeat(7,1fr);border-bottom:1px solid var(--border-subtle);background:var(--neutral-25);flex-shrink:0}.planview__corner{padding:12px 14px;font-size:10px;font-weight:700;letter-spacing:.06em;color:var(--text-muted);text-transform:uppercase}.planview__corner,.planview__day{border-right:1px solid var(--border-divider)}.planview__day{padding:10px 12px;display:flex;flex-direction:column;gap:2px}.planview__day:last-child{border-right:0}.planview__day.is-today{background:var(--brand-accent-50)}.planview__day-dow{font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase}.planview__day-num{font-size:16px;font-weight:600;color:var(--text-primary)}.planview__body{flex:1;overflow-y:auto}.planview__row{display:grid;grid-template-columns:200px repeat(7,1fr);border-bottom:1px solid var(--border-divider);min-height:92px}.planview__row:hover{background:var(--neutral-25)}.planview__op{display:flex;align-items:center;gap:10px;padding:12px 14px;border-right:1px solid var(--border-divider);position:sticky;left:0;background:inherit;z-index:1}.planview__op-av{width:26px;height:26px;border-radius:50%;color:#fff;font-size:9px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.planview__op-name{font-size:12px;font-weight:600;color:var(--text-primary)}.planview__op-role{font-size:10px;color:var(--text-muted)}.planview__cell{border-right:1px solid var(--border-divider);padding:8px 10px;display:flex;flex-direction:column;gap:6px}.planview__cell:last-child{border-right:0}.planview__cell.is-today{background:rgba(154,189,73,.04)}.planview__load{position:relative;height:5px;background:var(--neutral-100);border-radius:999px;overflow:hidden}.planview__load-bar{position:absolute;left:0;top:0;height:100%;background:var(--brand-accent);border-radius:999px}.planview__load-txt{position:absolute;right:0;top:8px;font-family:var(--font-mono);font-size:9px;color:var(--text-muted);font-weight:600}.planview__pills{display:flex;flex-direction:column;gap:3px;margin-top:14px}.planview__pill{display:inline-flex;align-items:center;gap:5px;background:var(--evt-bg);border:0;border-left:2px solid var(--evt-tint);border-radius:3px;padding:2px 6px;font-size:10px;cursor:pointer;font-family:inherit;text-align:left;white-space:nowrap;overflow:hidden}.planview__pill-time{font-family:var(--font-mono);font-weight:700;color:var(--evt-tint);flex-shrink:0}.planview__pill-title{color:var(--text-primary);overflow:hidden;text-overflow:ellipsis}.planview__pill-more{font-size:10px;color:var(--text-muted);padding:0 4px}.planview__empty{font-size:14px;color:var(--neutral-300);padding:4px 0}.mobile-host{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:40px 20px;background:linear-gradient(180deg,var(--neutral-50),var(--neutral-100));min-height:calc(100vh - var(--topbar-h))}.mobile-host__caption{display:flex;flex-direction:column;gap:4px;text-align:center}.mobile-host__caption strong{font-size:13px;font-weight:600;color:var(--text-primary)}.mobile-host__caption span{font-size:11px;color:var(--text-muted)}.mobile-frame{width:390px;height:760px;background:#000;border-radius:48px;padding:12px;position:relative;box-shadow:0 30px 80px rgba(0,0,0,.3),0 4px 12px rgba(0,0,0,.1),inset 0 0 0 2px #1f1f1f}.mobile-frame__notch{position:absolute;top:14px;left:50%;transform:translateX(-50%);width:110px;height:28px;background:#000;border-radius:999px;z-index:5}.mobile-frame__statusbar{position:absolute;top:14px;left:24px;right:24px;display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600;color:#fff;z-index:10;height:28px;padding:0 16px}.mobile-frame__sb-right{font-size:10px;letter-spacing:1px}.mobile-frame__home{position:absolute;bottom:8px;left:50%;transform:translateX(-50%);width:130px;height:4px;background:#fff;border-radius:999px;opacity:.5}.mobile-frame__viewport{width:100%;height:100%;background:var(--neutral-25);border-radius:36px;overflow:hidden;position:relative;padding-top:44px}.mobile-frame--android{border-radius:32px;padding:6px}.mobile-frame--android .mobile-frame__viewport{border-radius:28px}.mobile-frame--android .mobile-frame__notch{display:none}.mobile-dispatcher{display:flex;flex-direction:column;height:100%;overflow:hidden}.mob-disp__top{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 10px}.mob-disp__hello{font-size:11px;color:var(--text-muted);font-weight:500}.mob-disp__date{font-size:18px;font-weight:700;color:var(--text-primary)}.mob-disp__filter{background:var(--bg-card);border:1px solid var(--border-divider);border-radius:8px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-secondary);cursor:pointer}.mob-disp__week{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;padding:4px 14px 12px}.mob-disp__day{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 0;background:none;border:0;border-radius:12px;cursor:pointer;font-family:inherit}.mob-disp__day-dow{font-size:9px;font-weight:600;color:var(--text-muted);text-transform:uppercase}.mob-disp__day-num{font-size:15px;font-weight:600;color:var(--text-primary)}.mob-disp__day-dot{width:4px;height:4px;border-radius:50%;background:var(--text-muted)}.mob-disp__day.is-active{background:var(--brand-accent)}.mob-disp__day.is-active .mob-disp__day-dow,.mob-disp__day.is-active .mob-disp__day-num{color:var(--brand-ink)}.mob-disp__day.is-active .mob-disp__day-dot{background:var(--brand-ink)}.mob-disp__day.is-today:not(.is-active) .mob-disp__day-num{width:24px;height:24px;line-height:24px;border-radius:50%;background:var(--brand-accent-50);color:var(--brand-accent-700)}.mob-disp__op-tabs{display:flex;gap:6px;padding:0 14px 10px;overflow-x:auto;scrollbar-width:none}.mob-disp__op-tabs::-webkit-scrollbar{display:none}.mob-disp__op-tab{display:inline-flex;align-items:center;gap:6px;padding:6px 12px 6px 4px;background:var(--bg-card);border:1px solid var(--border-divider);border-radius:999px;flex-shrink:0;font-size:12px;color:var(--text-secondary);font-weight:500;cursor:pointer;font-family:inherit}.mob-disp__op-tab.is-active{background:var(--neutral-700);border-color:var(--neutral-700);color:#fff}.mob-disp__op-av{width:22px;height:22px;border-radius:50%;color:#fff;font-size:9px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.mob-disp__op-name{white-space:nowrap}.mob-disp__list{flex:1;overflow-y:auto;padding:4px 14px 80px;gap:8px}.mob-disp__empty,.mob-disp__list{display:flex;flex-direction:column}.mob-disp__empty{align-items:center;gap:10px;padding:60px 20px;color:var(--text-muted);font-size:13px;text-align:center}.mob-disp__empty svg{color:var(--neutral-300)}.mob-disp__add{background:var(--brand-accent);color:var(--brand-ink);border:0;border-radius:999px;padding:8px 16px;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;margin-top:8px}.mob-disp__travel{display:inline-flex;align-items:center;gap:4px;font-size:10px;color:var(--text-muted);padding-left:18px}.mob-disp__travel svg{color:var(--neutral-400)}.mob-evt{position:relative;display:grid;grid-template-columns:64px 1fr;gap:10px;padding:10px 12px 10px 14px;background:var(--bg-card);border:1px solid color-mix(in oklch,var(--evt-tint) 22%,transparent);border-radius:var(--radius-md);text-align:left;cursor:pointer;font-family:inherit;overflow:hidden}.mob-evt--free{background:repeating-linear-gradient(135deg,var(--neutral-25),var(--neutral-25) 6px,var(--neutral-50) 6px,var(--neutral-50) 12px)!important;border:1px dashed var(--border-subtle)!important}.mob-evt--free .mob-evt__title{color:var(--text-muted);font-style:italic}.mob-evt__time{display:flex;flex-direction:column;gap:1px;border-right:1px solid var(--border-divider);padding-right:10px}.mob-evt__time-start{font-family:var(--font-mono);font-size:13px;font-weight:700;color:var(--text-primary)}.mob-evt__time-end{font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.mob-evt__time-dur{font-size:9px;color:var(--evt-tint);font-weight:700;margin-top:2px;text-transform:uppercase;letter-spacing:.06em}.mob-evt__body{display:flex;flex-direction:column;gap:2px;min-width:0}.mob-evt__title{font-size:13px;font-weight:600;color:var(--text-primary)}.mob-evt__client,.mob-evt__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mob-evt__client{font-size:11px;color:var(--text-secondary)}.mob-evt__zone{gap:3px;font-size:10px;color:var(--text-muted)}.mob-evt__live,.mob-evt__zone{display:inline-flex;align-items:center}.mob-evt__live{gap:4px;margin-top:4px;font-size:9px;font-weight:700;color:var(--red-critical);letter-spacing:.08em}.mob-evt__live .dot{width:5px;height:5px;border-radius:50%;background:var(--red-critical);animation:nowPulse 1.6s infinite}.mob-evt__badge{display:inline-block;margin-top:4px;font-size:9px;padding:1px 7px;border-radius:999px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;width:-moz-fit-content;width:fit-content}.mob-evt__badge--pending{background:rgba(226,192,77,.2);color:#8c6d14}.mob-evt__badge--ok{background:rgba(91,166,107,.18);color:#2f6f3d}.mob-fab{position:absolute;bottom:90px;right:20px;width:52px;height:52px;border-radius:50%;background:var(--brand-accent);color:var(--brand-ink);border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(154,189,73,.4),0 2px 4px rgba(0,0,0,.12)}.mobile-tech{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding-bottom:24px}.mob-tech__top{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px}.mob-tech__greet{display:flex;flex-direction:column;gap:2px}.mob-tech__hello{font-size:14px;font-weight:700;color:var(--text-primary)}.mob-tech__date{font-size:11px;color:var(--text-muted)}.mob-tech__av{width:38px;height:38px;border-radius:50%;color:#fff;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.mob-tech__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0 14px 14px}.mob-tech__stat{background:var(--bg-card);border:1px solid var(--border-divider);border-radius:var(--radius-md);padding:12px;display:flex;flex-direction:column;gap:2px}.mob-tech__stat-num{font-size:22px;font-weight:700;color:var(--text-primary);line-height:1}.mob-tech__stat-lbl{font-size:10px;color:var(--text-muted)}.mob-tech__featured{padding:0 14px 14px}.mob-tech__featured-lbl{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.mob-tech__live-dot{width:6px;height:6px;border-radius:50%;background:var(--red-critical);animation:nowPulse 1.6s infinite}.mob-tech-card{position:relative;background:var(--bg-card);border:1px solid color-mix(in oklch,var(--evt-tint) 28%,transparent);border-left:3px solid var(--evt-tint);border-radius:var(--radius-md);padding:14px 14px 14px 18px;display:flex;flex-direction:column;gap:6px;cursor:pointer;box-shadow:0 2px 8px color-mix(in oklch,var(--evt-tint) 12%,transparent)}.mob-tech-card .evt__cat-bar{display:none}.mob-tech-card__time{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:12px;color:var(--evt-tint);font-weight:700}.mob-tech-card__title{font-size:16px;font-weight:700;color:var(--text-primary)}.mob-tech-card__client{font-size:13px;color:var(--text-secondary)}.mob-tech-card__addr{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--text-muted)}.mob-tech-card__note{font-size:11px;color:var(--text-secondary);line-height:1.4;background:var(--neutral-25);padding:8px 10px;border-radius:6px;margin-top:4px}.mob-tech-card__actions{display:flex;gap:6px;margin-top:8px}.mob-tech-card__btn{display:inline-flex;align-items:center;gap:4px;padding:8px 12px;flex:1;justify-content:center;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;font-size:12px;font-weight:600;color:var(--text-primary);cursor:pointer;font-family:inherit}.mob-tech-card__btn--primary{background:var(--brand-accent);border-color:var(--brand-accent);color:var(--brand-ink)}.mob-tech__rest{padding:0 14px;display:flex;flex-direction:column;gap:6px}.mob-tech__rest-lbl{font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;padding:6px 0}.mob-tech-row{position:relative;display:grid;grid-template-columns:56px 1fr 24px;align-items:center;gap:8px;padding:10px 12px 10px 14px;background:var(--bg-card);border:1px solid var(--border-divider);border-left:3px solid var(--evt-tint);border-radius:var(--radius-md);cursor:pointer;font-family:inherit;text-align:left}.mob-tech-row.is-past{opacity:.5}.mob-tech-row .evt__cat-bar{display:none}.mob-tech-row__time{font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--text-primary)}.mob-tech-row__title{font-size:13px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mob-tech-row__zone{font-size:10px}.mob-tech-row svg,.mob-tech-row__zone{color:var(--text-muted)}.ops-modal{width:560px;max-width:calc(100vw - 40px);max-height:calc(100vh - 80px);background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:0 30px 80px rgba(0,0,0,.25),0 4px 12px rgba(0,0,0,.1);display:flex;flex-direction:column;overflow:hidden}.ops-modal__head{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 22px 14px;border-bottom:1px solid var(--border-divider);flex-shrink:0}.ops-modal__head h3{margin:0 0 4px;font-size:17px;font-weight:600;color:var(--text-primary)}.ops-modal__sub{font-size:12px;color:var(--text-muted)}.ops-modal__close{width:28px;height:28px;border-radius:6px;background:var(--neutral-25);border:1px solid var(--border-divider);display:inline-flex;align-items:center;justify-content:center;color:var(--text-secondary);cursor:pointer;flex-shrink:0}.ops-modal__close:hover{background:var(--neutral-100);color:var(--text-primary)}.ops-modal__tabs{display:flex;gap:2px;padding:8px 10px 0;border-bottom:1px solid var(--border-divider);flex-shrink:0}.ops-modal__tabs button{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;background:none;border:0;border-bottom:2px solid transparent;color:var(--text-muted);font-size:12px;font-weight:500;cursor:pointer;font-family:inherit;margin-bottom:-1px}.ops-modal__tabs button:hover{color:var(--text-secondary)}.ops-modal__tabs button.is-active{color:var(--text-primary);border-bottom-color:var(--brand-accent);font-weight:600}.ops-modal__body{flex:1;overflow-y:auto;padding:14px 18px 18px}.ops-modal__body--form{padding:22px;display:flex;flex-direction:column;gap:16px}.ops-row{display:grid;grid-template-columns:32px 1fr auto auto;gap:12px;align-items:center;padding:10px 12px;border-radius:var(--radius-md)}.ops-row:hover{background:var(--neutral-25)}.ops-row__av{width:32px;height:32px;border-radius:50%;color:#fff;font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.ops-row__name{font-size:13px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:8px}.ops-row__off-pill{font-size:9px;padding:1px 6px;background:var(--neutral-100);color:var(--text-muted);border-radius:999px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.ops-row__meta{font-size:11px;color:var(--text-muted)}.ops-row__toggle{width:36px;height:20px;background:var(--neutral-200);border:0;border-radius:999px;position:relative;cursor:pointer;transition:background .16s}.ops-row__toggle.is-on{background:var(--brand-accent)}.ops-row__toggle-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:left .16s;box-shadow:0 1px 2px rgba(0,0,0,.15)}.ops-row__toggle.is-on .ops-row__toggle-knob{left:18px}.ops-row__del{width:28px;height:28px;border-radius:6px;background:none;border:0;color:var(--text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.ops-row__del:hover{background:rgba(212,90,93,.1);color:var(--red-critical)}.ops-field{display:flex;flex-direction:column;gap:6px}.ops-field>span{font-size:11px;font-weight:600;color:var(--text-secondary);letter-spacing:.02em}.ops-field input,.ops-field select{height:36px;padding:0 12px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;font:inherit;font-size:13px;color:var(--text-primary);font-family:inherit}.ops-field input:focus,.ops-field select:focus{outline:none;border-color:var(--brand-accent)}.ops-colors{display:flex;gap:8px}.ops-colors__sw{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .12s}.ops-colors__sw:hover{transform:scale(1.1)}.ops-colors__sw.is-active{border-color:var(--text-primary);box-shadow:0 0 0 2px var(--bg-card),0 0 0 4px var(--text-primary)}.ops-modal__foot{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.ops-sync__intro{font-size:12px;color:var(--text-muted);padding:0 4px 14px;line-height:1.5}.ops-sync__row{display:grid;grid-template-columns:40px 1fr auto;gap:14px;align-items:center;padding:14px 12px;border:1px solid var(--border-divider);border-radius:var(--radius-md);margin-bottom:8px;background:var(--bg-card)}.ops-sync__logo{width:40px;height:40px;border-radius:8px;background:var(--neutral-50);border:1px solid var(--border-divider);display:inline-flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;color:var(--text-secondary)}.ops-sync__name{font-size:13px;font-weight:600;color:var(--text-primary)}.ops-sync__desc{font-size:11px;color:var(--text-muted);margin-top:2px}.ops-sync__pill{font-size:11px;padding:4px 10px;border-radius:999px;background:rgba(91,166,107,.14);color:#2f6f3d;font-weight:600}.setgroup{padding:14px 4px 6px;border-bottom:1px solid var(--border-divider)}.setgroup:last-child{border-bottom:0}.setgroup__lbl{font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;padding:0 8px 12px}.setrow{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;gap:14px;border-radius:6px}.setrow:hover{background:var(--neutral-25)}.setrow__lbl{font-size:12px;color:var(--text-secondary);display:flex;flex-direction:column;gap:2px;min-width:0}.setrow__lbl strong{font-size:13px;color:var(--text-primary);font-weight:600}.setrow__lbl small{font-size:11px;color:var(--text-muted);font-weight:400}.setrow--check input[type=checkbox]{width:18px;height:18px;accent-color:var(--brand-accent);cursor:pointer}.setrow__select{font:inherit;font-size:12px;font-weight:500;padding:6px 26px 6px 10px;background:#fff;color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:6px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23667085' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m6 9 6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 6px center;background-size:14px}.setrow__select:hover{border-color:var(--brand-accent)}.setrow__select:focus{outline:2px solid color-mix(in oklch,var(--brand-accent) 40%,transparent);outline-offset:1px}.setgroup__btnrow{padding:4px 8px}.filterbar,.setgroup__btnrow{display:flex;gap:8px;flex-wrap:wrap}.filterbar{align-items:center;padding:8px 14px;margin:0 12px 10px;background:var(--bg-card);border:1px solid var(--border-divider);border-radius:var(--radius-md);flex-shrink:0}.filterbar__lbl{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:700;letter-spacing:.06em;color:var(--text-muted);text-transform:uppercase;padding-right:4px}.filterbar__group{display:flex;gap:5px;flex-wrap:wrap}.filterbar__sep{width:1px;height:18px;background:var(--border-divider);margin:0 4px}.filter-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--neutral-25);border:1px solid var(--border-divider);border-radius:999px;font-size:11px;color:var(--text-secondary);font-weight:500;cursor:pointer;font-family:inherit;transition:background .12s,border-color .12s}.filter-chip:hover{border-color:var(--border-subtle);background:var(--bg-card)}.filter-chip.is-active{background:var(--neutral-700);border-color:var(--neutral-700);color:#fff}.filter-chip__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.filterbar__count{font-weight:600;margin-left:auto;font-family:var(--font-mono)}.filterbar__clear,.filterbar__count{font-size:10px;color:var(--text-muted)}.filterbar__clear{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:none;border:1px solid var(--border-divider);border-radius:999px;font-weight:500;cursor:pointer;font-family:inherit}.filterbar__clear:hover{color:var(--red-critical);border-color:var(--red-critical)}.dayview__empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--text-muted);font-size:13px;text-align:center;pointer-events:none;z-index:2}.dayview__empty svg{color:var(--neutral-300)}.dayview__empty strong{font-size:15px;color:var(--text-secondary);font-weight:600}.dayview__empty button{pointer-events:all;background:var(--brand-accent);color:var(--brand-ink);border:0;border-radius:999px;padding:7px 14px;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;gap:5px}.evt--single{padding:4px 8px 4px 10px;flex-direction:row;align-items:center;gap:6px;overflow:hidden}.evt--single .evt__line{display:flex;align-items:baseline;gap:6px;width:100%;min-width:0}.evt--single .evt__time{flex:0 0 auto;font-family:var(--font-mono);font-size:10.5px;font-weight:700;color:var(--evt-tint,var(--text-secondary));letter-spacing:-.02em}.evt--single .evt__title-inline{flex:1 1 auto;min-width:0;font-size:11.5px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.005em}.evt--single .evt__dot-live{flex:0 0 auto;width:6px;height:6px;border-radius:50%;background:var(--red-critical);animation:livePulse 1.5s ease-out infinite}.evt--narrow{padding:6px 8px 6px 10px}.evt--narrow .evt__head{gap:4px}.evt--narrow .evt__title{font-size:12px;-webkit-line-clamp:2}.evt--narrow .evt__client,.evt--narrow .evt__zone{font-size:10px}.evt--narrow .evt__kind,.evt--very-narrow .evt__client,.evt--very-narrow .evt__zone{display:none}.evt-pop{position:fixed;width:300px;background:var(--neutral-0,#fff);border:1px solid var(--neutral-200,#e8e6dd);border-radius:var(--radius-lg,12px);box-shadow:0 1px 2px rgba(15,18,22,.04),0 12px 32px -8px rgba(15,18,22,.18),0 24px 48px -12px rgba(15,18,22,.1);padding:14px 14px 12px;z-index:9999;animation:evtPopIn .14s cubic-bezier(.2,.8,.2,1);font-family:inherit}@keyframes evtPopIn{0%{opacity:0;transform:translateY(4px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.evt-pop:before{content:"";position:absolute;left:0;top:14px;width:3px;height:28px;border-radius:0 2px 2px 0;background:var(--evt-tint)}.evt-pop__arrow{display:none}.evt-pop__head{display:flex;align-items:flex-start;gap:8px;margin-bottom:8px;padding-left:4px}.evt-pop__kind{flex:0 0 auto;font-size:9.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:3px 7px;border-radius:999px;background:color-mix(in oklch,var(--evt-tint) 14%,#fff);color:var(--evt-tint);margin-top:2px}.evt-pop__title{flex:1 1 auto;font-size:14px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em;line-height:1.3;text-wrap:pretty}.evt-pop__time{display:flex;align-items:center;gap:6px;margin:0 0 10px 4px;padding:6px 8px;background:color-mix(in oklch,var(--evt-tint) 6%,#fff);border-radius:6px;font-family:var(--font-mono);font-size:12px;font-weight:600;color:var(--text-primary);width:-moz-fit-content;width:fit-content}.evt-pop__time svg{color:var(--evt-tint)}.evt-pop__dur{font-family:var(--font-sans);font-weight:500;color:var(--text-muted)}.evt-pop__row{display:flex;align-items:center;gap:8px;padding:5px 4px;font-size:12.5px;color:var(--text-secondary);line-height:1.35}.evt-pop__row svg{color:var(--text-muted);flex:0 0 auto}.evt-pop__row span:last-child{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.evt-pop__op-av{width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:9px;font-weight:700;flex:0 0 auto}.evt-pop__note{margin:8px 4px 4px;padding:8px 10px;background:var(--neutral-50,#f7f6f1);border-left:2px solid var(--evt-tint);border-radius:4px;font-size:12px;color:var(--text-secondary);line-height:1.45;font-style:italic}.evt-pop__actions{display:flex;gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid var(--neutral-100,#f0ede3)}.evt-pop__btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:7px 10px;border:1px solid var(--neutral-200,#e8e6dd);background:var(--neutral-0,#fff);border-radius:6px;font-size:11.5px;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .12s}.evt-pop__btn:hover{background:var(--neutral-50,#f7f6f1);border-color:var(--neutral-300,#ddd9cc);color:var(--text-primary)}.evt-pop__btn--primary{background:var(--evt-tint);color:#fff;border-color:var(--evt-tint)}.evt-pop__btn--primary:hover{background:color-mix(in oklch,var(--evt-tint) 88%,#000);color:#fff;border-color:color-mix(in oklch,var(--evt-tint) 88%,#000)}.cmdk-backdrop{position:fixed;inset:0;background:rgba(15,18,22,.32);backdrop-filter:blur(2px) saturate(1.1);z-index:10000;display:flex;align-items:flex-start;justify-content:center;padding-top:14vh;animation:cmdkBg .14s ease-out}@keyframes cmdkBg{0%{opacity:0}to{opacity:1}}.cmdk{width:min(640px,calc(100vw - 32px));max-height:70vh;background:var(--neutral-0,#fff);border:1px solid var(--neutral-200,#e8e6dd);border-radius:14px;box-shadow:0 1px 2px rgba(15,18,22,.04),0 24px 48px -8px rgba(15,18,22,.22),0 48px 96px -24px rgba(15,18,22,.12);overflow:hidden;display:flex;flex-direction:column;animation:cmdkPop .16s cubic-bezier(.2,.8,.2,1);font-family:inherit}@keyframes cmdkPop{0%{opacity:0;transform:translateY(-8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.cmdk__head{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--neutral-100,#f0ede3);color:var(--text-muted)}.cmdk__head svg{color:var(--text-muted);flex:0 0 auto}.cmdk__input{flex:1;border:none;outline:none;background:transparent;font-size:15px;font-weight:500;color:var(--text-primary);font-family:inherit;letter-spacing:-.01em}.cmdk__input::-moz-placeholder{color:var(--text-muted);font-weight:400}.cmdk__input::placeholder{color:var(--text-muted);font-weight:400}.cmdk__esc{font-size:9.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:3px 7px;border-radius:5px;border:1px solid var(--neutral-200,#e8e6dd);background:var(--neutral-50,#f7f6f1);color:var(--text-muted);font-family:var(--font-mono)}.cmdk__list{flex:1;overflow-y:auto;padding:6px 6px 8px}.cmdk__list::-webkit-scrollbar{width:8px}.cmdk__list::-webkit-scrollbar-thumb{background:var(--neutral-200);border-radius:4px}.cmdk__group{margin-top:4px}.cmdk__group-h{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);padding:10px 12px 6px}.cmdk__item{width:100%;display:flex;align-items:center;gap:10px;padding:8px 10px;border:none;background:transparent;border-radius:8px;cursor:pointer;text-align:left;font-family:inherit;transition:background 80ms}.cmdk__item.is-active{background:color-mix(in oklch,var(--brand-accent,#5ba66b) 8%,#fff)}.cmdk__item.is-active .cmdk__ico{color:var(--brand-accent)}.cmdk__ico{border-radius:7px;background:var(--neutral-50,#f7f6f1);color:var(--text-secondary)}.cmdk__avatar,.cmdk__ico{flex:0 0 auto;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center}.cmdk__avatar{border-radius:50%;color:#fff;font-size:10px;font-weight:700;letter-spacing:-.02em}.cmdk__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.cmdk__label{font-size:13.5px;font-weight:500;color:var(--text-primary);letter-spacing:-.005em}.cmdk__label,.cmdk__sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cmdk__sub{font-size:11.5px;color:var(--text-muted)}.cmdk__hint{flex:0 0 auto;font-family:var(--font-mono);font-size:10px;font-weight:600;padding:3px 6px;border-radius:4px;border:1px solid var(--neutral-200,#e8e6dd);background:var(--neutral-50,#f7f6f1);color:var(--text-secondary)}.cmdk__empty{padding:36px 20px;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;color:var(--text-muted)}.cmdk__empty svg{color:var(--neutral-300);margin-bottom:4px}.cmdk__empty div{font-size:13.5px;color:var(--text-secondary)}.cmdk__empty strong{color:var(--text-primary);font-weight:600}.cmdk__empty span{font-size:12px}.cmdk__foot{display:flex;gap:16px;padding:9px 14px;border-top:1px solid var(--neutral-100,#f0ede3);background:var(--neutral-25,#fcfcfb);font-size:11px;color:var(--text-muted)}.cmdk__foot span{display:inline-flex;align-items:center;gap:5px}.cmdk__foot kbd{font-family:var(--font-mono);font-size:10px;font-weight:600;padding:2px 5px;border-radius:4px;border:1px solid var(--neutral-200);background:var(--neutral-0);color:var(--text-secondary);min-width:16px;text-align:center}.cmdk-trigger{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 8px 0 10px;border:1px solid var(--neutral-200,#e8e6dd);background:var(--neutral-25,#fcfcfb);border-radius:8px;cursor:pointer;font-family:inherit;font-size:12.5px;color:var(--text-muted);transition:all .12s;min-width:200px}.cmdk-trigger:hover{background:var(--neutral-50,#f7f6f1);border-color:var(--neutral-300,#ddd9cc);color:var(--text-secondary)}.cmdk-trigger svg{color:var(--text-muted)}.cmdk-trigger__lbl{flex:1;text-align:left}.cmdk-trigger__kbd{display:inline-flex;gap:2px}.cmdk-trigger__kbd kbd{font-family:var(--font-mono);font-size:10px;font-weight:600;padding:2px 5px;border-radius:4px;border:1px solid var(--neutral-200);background:var(--neutral-0);color:var(--text-secondary);min-width:14px;text-align:center;line-height:1}@media (max-width:1100px){.cmdk-trigger{min-width:0}.cmdk-trigger__kbd,.cmdk-trigger__lbl{display:none}}.evt--drag-ok{outline:2px solid color-mix(in oklab,var(--green-success) 80%,transparent);outline-offset:-1px;box-shadow:0 8px 24px -8px color-mix(in oklab,var(--green-success) 50%,transparent)}.evt--drag-conflict{outline:2px dashed color-mix(in oklab,var(--red-critical) 85%,transparent);outline-offset:-1px;box-shadow:0 8px 24px -8px color-mix(in oklab,var(--red-critical) 50%,transparent);animation:drag-conflict-pulse 1.2s ease-in-out infinite}@keyframes drag-conflict-pulse{0%,to{outline-color:color-mix(in oklab,var(--red-critical) 85%,transparent)}50%{outline-color:color-mix(in oklab,var(--red-critical) 55%,transparent)}}.drag-tooltip{position:fixed;z-index:10000;pointer-events:none;min-width:220px;max-width:280px;padding:10px 12px;border-radius:10px;background:var(--neutral-0);border:1px solid var(--neutral-200);box-shadow:0 12px 32px -8px rgba(0,0,0,.18),0 4px 12px -4px rgba(0,0,0,.1);font-size:12px;color:var(--text-secondary);animation:drag-tt-in 80ms ease-out}@keyframes drag-tt-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.drag-tooltip--ok{border-color:color-mix(in oklab,var(--green-success) 40%,var(--neutral-200))}.drag-tooltip--conflict{border-color:color-mix(in oklab,var(--red-critical) 50%,var(--neutral-200))}.drag-tooltip__head{display:flex;align-items:center;gap:6px;font-weight:600;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.drag-tooltip--ok .drag-tooltip__head{color:var(--green-success)}.drag-tooltip--conflict .drag-tooltip__head{color:var(--red-critical)}.drag-tooltip__row{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--text-primary)}.drag-tooltip__row strong{font-weight:600;flex:1}.drag-tooltip__time{font-variant-numeric:tabular-nums;color:var(--text-secondary);font-size:11.5px}.drag-tooltip__op-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.drag-tooltip__conflict{display:flex;align-items:center;gap:7px;margin-top:6px;padding-top:6px;border-top:1px dashed var(--neutral-200);font-size:11.5px;color:var(--text-secondary)}.drag-tooltip__conflict strong{font-weight:600;color:var(--text-primary)}.drag-tooltip__hint{margin-top:6px;font-size:10.5px;color:var(--text-muted);font-style:italic}.undo-toast--redo,.undo-toast--undo{background:var(--neutral-700,#3a3a35)}.undo-toast button:disabled{opacity:.4;cursor:not-allowed}.undo-toast button:disabled:hover{background:hsla(0,0%,100%,.12)}.evt__status--traveling{background:rgba(91,141,204,.18);color:#5b8dcc}.evt__status--onsite{background:rgba(160,111,216,.18);color:#a06fd8}.evt__status--done{background:hsla(147,7%,51%,.18);color:var(--text-muted)}.evt__inline-icon{color:var(--text-muted);flex-shrink:0;opacity:.7}.evt--traveling{border-color:color-mix(in oklch,#5b8dcc 35%,transparent)!important;border-left-width:3px!important}.evt--traveling .evt__inline-icon,.evt--traveling .evt__time{color:#5b8dcc;opacity:1}.evt--traveling .evt__status--traveling{animation:travelingPulse 2s ease-in-out infinite}@keyframes travelingPulse{0%,to{transform:scale(1)}50%{transform:scale(1.08);background:rgba(91,141,204,.32)}}.evt--onsite{border-color:color-mix(in oklch,#a06fd8 55%,transparent)!important;border-left-width:3px!important;box-shadow:inset 0 0 0 1px color-mix(in oklch,#a06fd8 18%,transparent)}.evt--onsite .evt__time{color:#a06fd8}.evt--done{opacity:.62;border-style:solid!important}.evt--done .evt__title,.evt--done .evt__title-inline{text-decoration:line-through;text-decoration-color:var(--text-muted);text-decoration-thickness:1px}.evt--done:hover{opacity:.9}.status-flow{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px}.status-flow__chip{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:600;background:var(--bg-card);border:1px solid var(--border-divider);color:var(--text-muted);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .12s ease;font-family:inherit}.status-flow__chip:hover{background:var(--neutral-50);border-color:var(--neutral-300);color:var(--text-primary)}.status-flow__chip:active{transform:translateY(1px)}.status-flow__chip--active{background:var(--op-tint-medium);border-color:var(--op-tint-strong);color:var(--op-color-hover);font-weight:700;box-shadow:inset 0 0 0 1px var(--op-tint-medium)}.status-flow__chip--active:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--op-color)}.op-card__opt,.op-row__opt{width:22px;height:22px;border:0;background:transparent;border-radius:6px;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .12s,background .12s;flex-shrink:0}.op-card:hover .op-card__opt,.op-row:hover .op-row__opt{opacity:1}.op-card__opt:hover,.op-row__opt:hover{background:var(--neutral-100);color:var(--text-primary)}.ops-row__edit{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:6px;background:transparent;border:1px solid var(--border-divider);color:var(--text-secondary);font-size:11px;font-weight:500;cursor:pointer;transition:all .12s}.ops-row__edit:hover{background:var(--neutral-50);border-color:var(--border-subtle);color:var(--text-primary)}.op-drawer-overlay{position:fixed;inset:0;background:hsla(0,0%,8%,.32);z-index:1200;display:flex;justify-content:flex-end;animation:fadeIn .16s ease-out}@keyframes opDrawerSlide{0%{transform:translateX(100%)}to{transform:translateX(0)}}.op-drawer{width:520px;max-width:92vw;height:100vh;background:var(--bg-card);display:flex;flex-direction:column;box-shadow:-8px 0 28px hsla(0,0%,8%,.18);animation:opDrawerSlide .22s cubic-bezier(.2,.8,.2,1)}.op-drawer__head{position:relative;padding:24px 28px 20px;background:linear-gradient(135deg,var(--op-color) 0,color-mix(in oklab,var(--op-color) 70%,#1a1a1a) 100%);color:#fff}.op-drawer__close{position:absolute;top:16px;right:16px;width:28px;height:28px;border:0;border-radius:999px;background:hsla(0,0%,100%,.16);color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .12s}.op-drawer__close:hover{background:hsla(0,0%,100%,.28)}.op-drawer__id{display:flex;gap:14px;align-items:center}.op-drawer__av{width:52px;height:52px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:16px;font-weight:700;letter-spacing:.04em;border:2px solid hsla(0,0%,100%,.32);flex-shrink:0}.op-drawer__meta h3{font-size:20px;margin:0;font-weight:600;letter-spacing:-.01em}.op-drawer__role{font-size:12px;opacity:.82;margin-top:2px}.op-drawer__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.op-drawer__stat{background:hsla(0,0%,100%,.12);border-radius:8px;padding:8px 10px;display:flex;flex-direction:column;gap:2px}.op-drawer__stat .lbl{font-size:9px;text-transform:uppercase;letter-spacing:.08em;opacity:.78;font-weight:600}.op-drawer__stat .val{font-size:16px;font-weight:600;font-variant-numeric:tabular-nums}.op-drawer__stat .val .sub{font-size:10px;opacity:.72;font-weight:500;margin-left:2px}.op-drawer__tabs{display:flex;padding:0 20px;border-bottom:1px solid var(--border-divider);background:var(--bg-card)}.op-drawer__tabs button{display:inline-flex;align-items:center;gap:6px;padding:12px 14px;border:0;background:transparent;font-size:12px;font-weight:500;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;transition:color .12s,border-color .12s;font-family:inherit}.op-drawer__tabs button:hover{color:var(--text-primary)}.op-drawer__tabs button.is-active{color:var(--text-primary);border-bottom-color:var(--brand-ink);font-weight:600}.op-drawer__badge{background:var(--brand-ink);color:var(--brand-cream);font-size:9px;padding:1px 5px;border-radius:999px;font-weight:700}.op-drawer__body{flex:1;overflow-y:auto;padding:20px 24px}.op-section-intro{margin-bottom:16px}.op-section-intro strong{display:block;font-size:13px;font-weight:600;margin-bottom:4px}.op-section-intro p{font-size:11.5px;color:var(--text-muted);line-height:1.5;margin:0}.op-week{display:flex;flex-direction:column;gap:4px}.op-week__row{display:flex;align-items:center;gap:12px;padding:8px 10px;border-radius:8px;border:1px solid transparent;transition:background .12s,border-color .12s}.op-week__row.is-active{background:var(--neutral-25)}.op-week__row:hover{border-color:var(--border-divider)}.op-week__toggle{width:28px;height:16px;border-radius:999px;background:var(--neutral-200);border:0;padding:0;cursor:pointer;position:relative;transition:background .16s;flex-shrink:0}.op-week__toggle.is-on{background:var(--green-success)}.op-week__toggle-knob{position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:#fff;transition:left .16s}.op-week__toggle.is-on .op-week__toggle-knob{left:14px}.op-week__dow{font-size:12px;font-weight:500;min-width:80px}.op-week__times{display:flex;align-items:center;gap:6px;flex:1}.op-week__times input{width:78px;padding:4px 6px;border-radius:6px;border:1px solid var(--border-divider);background:var(--bg-card);font-size:12px;font-family:var(--font-mono);color:var(--text-primary)}.op-week__times input:focus{outline:2px solid var(--brand-accent);outline-offset:-1px;border-color:transparent}.op-week__sep{color:var(--text-muted);font-size:11px}.op-week__hh{font-size:10px;color:var(--text-muted);font-variant-numeric:tabular-nums;margin-left:auto;padding-right:4px}.op-week__off{font-size:11px;color:var(--text-muted);font-style:italic}.op-orari__presets{margin-top:18px;padding-top:14px;border-top:1px dashed var(--border-divider);display:flex;flex-wrap:wrap;align-items:center;gap:6px}.op-orari__presets-lbl{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:600;margin-right:4px}.op-vac-add{background:var(--neutral-25);border:1px solid var(--border-divider);border-radius:10px;padding:12px}.op-vac-add__row{display:flex;gap:8px;align-items:flex-end}.op-vac-add__row label{display:flex;flex-direction:column;gap:4px;flex:1}.op-vac-add__row label>span{font-size:10px;color:var(--text-muted);font-weight:500}.op-vac-add__row input{padding:6px 8px;border-radius:6px;border:1px solid var(--border-subtle);background:#fff;font-size:12px;font-family:inherit}.op-vac-add__row input:focus{outline:2px solid var(--brand-accent);outline-offset:-1px;border-color:transparent}.op-vac-add__presets{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--border-divider)}.op-vac-add__preset{font-size:11px;padding:4px 10px;border-radius:999px;border:1px solid var(--border-divider);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;font-family:inherit;transition:all .12s}.op-vac-add__preset:hover{background:var(--brand-accent);border-color:var(--brand-accent);color:var(--brand-ink)}.op-vac-list{display:flex;flex-direction:column;gap:6px;margin-top:16px}.op-vac-empty{gap:8px;justify-content:center;padding:24px;color:var(--green-success);background:rgba(91,166,107,.06);font-size:12px;font-weight:500}.op-vac-empty,.op-vac-item{display:flex;align-items:center;border-radius:10px}.op-vac-item{gap:10px;padding:10px 12px;border:1px solid var(--border-divider);background:var(--bg-card);transition:border-color .12s}.op-vac-item:hover{border-color:var(--border-subtle)}.op-vac-item.is-past{opacity:.55}.op-vac-item.is-live{border-color:#c7b8e8;background:#f4effb}.op-vac-item__icon{width:30px;height:30px;border-radius:8px;background:rgba(124,107,196,.14);color:#5c4da0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.op-vac-item__body{flex:1;min-width:0}.op-vac-item__title{font-size:12.5px;font-weight:600}.op-vac-item__meta{font-size:11px;color:var(--text-muted);margin-top:2px;display:flex;align-items:center;gap:8px}.op-vac-item__pill{font-size:9px;padding:1px 6px;border-radius:4px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.op-vac-item__pill--live{background:#5c4da0;color:#fff}.op-vac-item__pill--past{background:var(--neutral-100);color:var(--text-muted)}.op-vac-item__del{width:26px;height:26px;border:0;background:transparent;border-radius:6px;color:var(--text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .12s}.op-vac-item__del:hover{background:rgba(214,68,68,.1);color:var(--red-critical)}.op-vac-sync{margin-top:14px;padding:10px 12px;background:var(--neutral-25);border-radius:8px;display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text-muted)}.op-vac-sync strong{color:var(--text-primary);font-weight:600}.op-vac-sync .btn-link{margin-left:auto}.op-fields{gap:12px}.op-field,.op-fields{display:flex;flex-direction:column}.op-field{gap:4px}.op-field>span{font-size:10px;color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.06em}.op-field input,.op-field select{padding:8px 10px;border-radius:8px;border:1px solid var(--border-subtle);background:var(--bg-card);font-size:13px;font-family:inherit;color:var(--text-primary)}.op-field input:focus,.op-field select:focus{outline:2px solid var(--brand-accent);outline-offset:-1px;border-color:transparent}.op-field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.op-colors{display:flex;gap:6px;flex-wrap:wrap}.op-colors__sw{width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;transition:transform .12s,border-color .12s}.op-colors__sw:hover{transform:scale(1.08)}.op-colors__sw.is-active{border-color:var(--brand-ink);transform:scale(1.08)}.op-drawer__foot{padding:14px 24px;border-top:1px solid var(--border-divider);display:flex;align-items:center;justify-content:space-between;background:var(--bg-card)}.btn-link{background:transparent;border:0;cursor:pointer;font-family:inherit;font-size:12px;color:var(--text-muted);display:inline-flex;align-items:center;gap:4px;padding:4px 6px;border-radius:4px;transition:color .12s}.btn-link:hover{color:var(--text-primary)}.btn-link--red-critical{color:var(--red-critical)}.btn-link--red-critical:hover{color:var(--red-critical);background:rgba(214,68,68,.08)}.btn-primary--sm{padding:6px 12px;font-size:12px}