.schedule-panel{display:grid;gap:var(--app-section-gap)}.schedule-panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border:1px solid rgba(226,232,240,.92);border-radius:var(--card-radius);background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(248,250,252,.88)),radial-gradient(circle at top right,rgba(21,128,61,.09),transparent 22rem);padding:var(--card-padding);box-shadow:var(--card-shadow)}.schedule-panel__header--compact{align-items:center;min-height:78px;padding:14px 16px}.schedule-panel__description,.schedule-panel__eyebrow,.schedule-panel__title{display:none}.schedule-panel__hint{max-width:720px;margin:0;color:#64748b;font-size:var(--font-body);line-height:1.75;text-align:right}.schedule-panel__stats{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px}.schedule-stat-card{min-width:88px;border:1px solid #e2e8f0;border-radius:16px;background:rgba(255,255,255,.84);padding:10px 12px;text-align:center;box-shadow:0 8px 22px rgba(15,23,42,.035)}.schedule-stat-card--active{border-color:rgba(34,197,94,.24);background:rgba(240,253,244,.9)}.schedule-stat-card--starred{border-color:rgba(245,158,11,.24);background:rgba(255,251,235,.92)}.schedule-stat-card__value{display:block;color:#0f172a;font-size:21px;font-weight:950;line-height:1}.schedule-stat-card__label{display:block;margin-top:6px;color:#64748b;font-size:var(--font-xs);font-weight:760}.schedule-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;border:1px solid rgba(226,232,240,.92);border-radius:var(--card-radius);background:rgba(255,255,255,.88);padding:14px;box-shadow:0 10px 28px rgba(15,23,42,.04)}.schedule-toolbar__weeks{display:grid;gap:8px}.schedule-toolbar__label{color:#94a3b8;font-size:var(--font-xs);font-weight:850}.schedule-toolbar__actions{display:flex;align-items:center;gap:8px}.week-selector{display:flex;flex-wrap:wrap;gap:7px}.week-selector__button{min-height:var(--control-height);display:inline-flex;align-items:center;gap:6px;border:1px solid #e2e8f0;background:#ffffff;color:#64748b;padding:0 12px;border-radius:999px;cursor:pointer;font-size:var(--font-body);font-weight:780;box-shadow:0 1px 2px rgba(15,23,42,.04);transition:transform .16s ease,background .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease}.week-selector__button:hover{transform:translateY(-1px);background:#f8fafc;color:#0f172a}.week-selector__button--active{background:var(--primary-soft);color:var(--primary);border-color:#86efac;box-shadow:0 8px 18px rgba(21,128,61,.09)}.week-selector__emoji{font-size:14px}.schedule-status{display:inline-flex;align-items:center;gap:6px;min-height:var(--control-height-sm);border-radius:999px;background:#f8fafc;padding:0 11px;color:#64748b;font-size:var(--font-small);font-weight:760;white-space:nowrap}.schedule-status:before{width:8px;height:8px;border-radius:999px;background:#22c55e;content:""}.schedule-status--dirty{background:#eff6ff;color:#2563eb}.schedule-status--dirty:before{background:#3b82f6;box-shadow:0 0 0 4px rgba(59,130,246,.12)}.schedule-save-button{min-height:var(--control-height);display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:13px;background:linear-gradient(135deg,#15803d,#16a34a);color:white;padding:0 15px;font-size:var(--font-body);font-weight:850;cursor:pointer;box-shadow:0 12px 24px rgba(21,128,61,.2);transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}.schedule-save-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 16px 30px rgba(21,128,61,.24)}.schedule-save-button:disabled{cursor:not-allowed;opacity:.72}.schedule-table-card{overflow:hidden;border:1px solid rgba(226,232,240,.95);border-radius:var(--card-radius);background:white;box-shadow:var(--card-shadow)}.schedule-table-card__topline{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#ffffff,#f8fafc);padding:13px 16px;color:#64748b}.schedule-table-card__topline div{display:grid;gap:4px}.schedule-table-card__topline strong{color:#0f172a;font-size:var(--font-card-title);font-weight:950}.schedule-table-card__label{color:#94a3b8;font-size:var(--font-xs);font-weight:850}.schedule-table-wrap{overflow:auto;background:var(--surface)}.schedule-table{width:100%;min-width:1040px;border-collapse:separate;border-spacing:0}.schedule-table td,.schedule-table th{border-bottom:1px solid #e2e8f0;border-left:1px solid #e2e8f0;text-align:center;vertical-align:middle}.schedule-table thead th{position:sticky;top:0;z-index:2;background:#f8fafc;color:#64748b;font-size:var(--font-xs);font-weight:900}.schedule-table__person{width:170px;min-width:170px;padding:10px 12px;background:white;text-align:right!important}.schedule-table__person--head{z-index:3!important;background:#f8fafc!important}.schedule-table__person--head small,.schedule-table__person--head span{display:block}.schedule-table__person--head small{margin-top:3px;color:#94a3b8;font-size:var(--font-xs)}.schedule-table__day{padding:10px 8px}.schedule-table__day-date,.schedule-table__day-name{display:block}.schedule-table__day-name{color:#0f172a;font-weight:950}.schedule-table__day-date{margin-top:3px;color:#64748b;font-size:var(--font-xs)}.schedule-table__shift{min-width:60px;padding:8px 7px;white-space:nowrap}.schedule-table__cell-slot{height:var(--table-cell-height);padding:0;background:white}.schedule-table tbody tr:hover .schedule-table__cell-slot,.schedule-table tbody tr:hover .schedule-table__person{background:#fcfdfd}.person-card{display:flex;align-items:center;gap:8px}.person-avatar{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:12px;background:linear-gradient(135deg,#dcfce7,#e0f2fe);color:#075985;font-size:var(--font-small);font-weight:950}.person-card__copy{min-width:0}.person-name{display:block;color:#0f172a;font-size:var(--font-body);font-weight:950}.role-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}.role-badge{display:inline-flex;align-items:center;gap:3px;border-radius:999px;padding:3px 7px;font-size:var(--font-xs);font-weight:850;background:#f1f5f9;color:#475569}.role-badge--supervisor{background:#e0f2fe;color:#0369a1}.role-badge--host{background:#fef3c7;color:#92400e}.role-badge--cashier{background:#ecfdf5;color:#047857}.role-badge--hall{background:#f3e8ff;color:#7e22ce}.schedule-cell{width:100%;height:var(--table-cell-height);display:grid;place-items:center;border:0;background:transparent;cursor:pointer;transition:background .16s ease}.schedule-cell:hover:not(:disabled){background:#f8fafc}.schedule-cell:disabled{cursor:wait}.schedule-cell__surface{width:var(--schedule-cell-size);height:var(--schedule-cell-size);display:grid;place-items:center;border-radius:11px;border:1px solid transparent;font-size:16px;font-weight:950;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.schedule-cell:hover:not(:disabled) .schedule-cell__surface{transform:scale(1.04)}.schedule-cell__mark{display:grid;place-items:center;line-height:1}.schedule-cell__sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%)}.schedule-cell--inactive .schedule-cell__surface{border-color:#dbeafe;background:white;color:transparent}.schedule-cell--active .schedule-cell__surface{border-color:#bbf7d0;background:#dcfce7;color:#15803d}.schedule-cell--starred .schedule-cell__surface{border-color:#fde68a;background:#fef3c7;color:#b45309}.schedule-cell--dirty .schedule-cell__surface{box-shadow:0 0 0 4px rgba(59,130,246,.12)}.schedule-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;color:#64748b;font-size:var(--font-small);font-weight:760}.schedule-legend__item{display:inline-flex;align-items:center;gap:6px}.schedule-legend__mark{width:21px;height:21px;display:grid;place-items:center;border-radius:8px;font-weight:950}.schedule-legend__mark--check{background:#dcfce7;color:#15803d}.schedule-legend__mark--star{background:#fef3c7;color:#b45309}.schedule-legend__mark--dirty{background:#dbeafe;color:#2563eb}.save-result{border-radius:14px;border:1px solid #e2e8f0;background:white;padding:11px 13px;font-size:var(--font-body);font-weight:800}.save-result--success{border-color:rgba(34,197,94,.25);background:#f0fdf4;color:#15803d}.save-result--error{border-color:rgba(239,68,68,.24);background:#fef2f2;color:#dc2626}.save-result--info{border-color:rgba(59,130,246,.24);background:#eff6ff;color:#2563eb}@media (max-width:900px){.schedule-panel__header--compact,.schedule-table-card__topline,.schedule-toolbar{align-items:stretch;flex-direction:column}.schedule-panel__stats{justify-content:stretch}.schedule-stat-card{flex:1;min-width:0}.schedule-toolbar__actions{align-items:stretch;flex-direction:column}.schedule-save-button{width:100%}}