:root {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #1f242d;
  background: #f5f6f8;
  font-synthesis: none;
}

* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; min-height: 100vh; }
button, input, select { font: inherit; }
button { cursor: pointer; }
.hidden { display: none !important; }

.language-switcher {
  position: fixed; top: 20px; right: 24px; z-index: 20;
  display: flex; align-items: center; gap: 6px; padding: 4px;
  background: #fff; border: 1px solid #dde0e5; border-radius: 9px;
  box-shadow: 0 4px 14px rgba(20, 25, 35, .06);
}
.language-switcher button {
  border: 0; background: transparent; padding: 6px 9px; border-radius: 6px; color: #636b75;
}
.language-switcher button.active { background: #f1f2f4; color: #20252c; font-weight: 700; }

.login-page { min-height: 100vh; display: grid; place-items: center; padding: 80px 20px 40px; }
.login-card {
  width: min(100%, 386px); padding: 32px; border: 1px solid #d9dce1; border-radius: 13px;
  background: #fff; box-shadow: 0 4px 11px rgba(24, 29, 36, .1);
}
.login-card h1 { margin: 0; text-align: center; font-size: 22px; }
.login-card .subtitle { margin: 8px 0 26px; text-align: center; color: #6d737c; }
.field { margin-bottom: 14px; }
.field label { display: block; margin-bottom: 6px; font-weight: 600; }
.field input, .field select {
  width: 100%; height: 42px; border: 1px solid #d7dae0; border-radius: 7px;
  padding: 0 12px; background: #fff; outline: none;
}
.field input:focus, .field select:focus { border-color: #ed2d30; box-shadow: 0 0 0 3px rgba(237,45,48,.1); }
.primary-button {
  width: 100%; height: 42px; border: 0; border-radius: 7px; background: #ef2b2d;
  color: #fff; font-weight: 700;
}
.primary-button:hover { background: #d82427; }
.divider { display: flex; align-items: center; gap: 14px; margin: 28px 0; color: #747b85; }
.divider::before, .divider::after { content: ""; height: 1px; flex: 1; background: #dfe1e5; }
.sso-button {
  width: 100%; height: 42px; border: 1px solid #d7dae0; border-radius: 7px; background: #fff;
  display: flex; justify-content: center; align-items: center; gap: 10px; color: #242a32;
}
.microsoft-logo { display: grid; grid-template-columns: 7px 7px; grid-template-rows: 7px 7px; gap: 2px; }
.microsoft-logo i:nth-child(1) { background:#f35325; } .microsoft-logo i:nth-child(2) { background:#81bc06; }
.microsoft-logo i:nth-child(3) { background:#05a6f0; } .microsoft-logo i:nth-child(4) { background:#ffba08; }
.alert { margin: 0 0 16px; border-radius: 7px; padding: 10px 12px; background: #fff0f0; color: #a51f22; font-size: 14px; }

.app-shell { min-height: 100vh; display: grid; grid-template-columns: 220px 1fr; }
.sidebar {
  position: fixed; inset: 0 auto 0 0; width: 220px; background: #fff; border-right: 1px solid #e8e9ec;
  display: flex; flex-direction: column; z-index: 10;
}
.brand { height: 67px; padding: 14px 18px; border-bottom: 1px solid #eee; display: flex; gap: 10px; align-items: center; }
.brand-mark { width: 30px; height: 30px; border-radius: 7px; background: #ef2b2d; color: white; display:grid; place-items:center; font-weight:800; }
.brand strong { display: block; font-size: 14px; }.brand small { color:#8b9098; font-size:8px; letter-spacing:.08em; }
.nav { padding: 12px 10px; }
.nav button {
  width: 100%; border: 0; border-radius: 6px; padding: 11px 12px; background: transparent;
  display: flex; gap: 11px; color: #6c727b; text-align: left;
}
.nav button.active { background: #fff0f0; color: #d72629; font-weight: 700; }
.nav-bottom { margin-top: auto; padding: 10px; border-top: 1px solid #eee; }
.logout-button { width:100%; display:flex; align-items:center; gap:10px; border:0; border-radius:6px; padding:11px 5px; background:transparent; color:#626a74; font:inherit; text-align:left; }
.logout-button:hover { background:#f5f6f8; color:#343a42; }
.logout-button svg { width:17px; height:17px; flex:0 0 auto; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.app-main { grid-column: 2; padding: 34px 5vw 60px; }
.page-header { margin-bottom: 25px; }
.page-header h1 { margin: 0 0 5px; font-size: 25px; }.page-header p { margin: 0; color: #858b94; font-size: 14px; }
.card { background: #fff; border: 1px solid #e4e6ea; border-radius: 10px; box-shadow: 0 2px 5px rgba(22,26,32,.03); }
.metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin: 20px 0; }
.metric { padding: 18px; display: flex; align-items: center; gap: 13px; }
.metric-icon { width: 39px; height: 39px; display: grid; place-items: center; border-radius: 8px; color: white; font-weight: 800; }
.metric small { display:block; color:#7e858f; }.metric strong { font-size:22px; }
.blue { background:#2d7df4; }.green { background:#11bd5c; }.orange { background:#ff9400; }
.welcome { padding: 28px; min-height: 210px; background: linear-gradient(135deg,#fff 60%,#fff3f3); }
.welcome h2 { margin-top: 0; }.welcome p { color:#686f79; max-width: 650px; line-height:1.6; }
.table-card { overflow: hidden; }
.table-tools { padding: 18px; display:flex; justify-content:space-between; gap:12px; align-items:center; border-bottom:1px solid #eceef1; }
.table-tools h2 { margin:0; font-size:18px; }
.compact-button { border:0; border-radius:6px; background:#ef2b2d; color:#fff; padding:9px 14px; font-weight:700; }
table { width:100%; border-collapse:collapse; }
th, td { padding:13px 16px; border-bottom:1px solid #eceef1; text-align:left; font-size:14px; }
th { color:#757c86; font-size:12px; text-transform:uppercase; letter-spacing:.04em; }
.role-badge { display:inline-block; padding:4px 8px; border-radius:99px; background:#f1f3f5; font-size:12px; }
.status-badge { display:inline-block; padding:4px 8px; border-radius:99px; font-size:12px; font-weight:700; white-space:nowrap; }
.status-created { background:#eaf2ff; color:#2164c5; }
.status-canceled { background:#fff0f0; color:#bd292b; }
.status-done { background:#e9f9ef; color:#178243; }
.backlog-status-created { background:#eaf2ff; color:#2164c5; }
.backlog-status-inprogress { background:#fff6dc; color:#986800; }
.backlog-status-standby { background:#f0edff; color:#6847b8; }
.backlog-status-canceled { background:#fff0f0; color:#bd292b; }
.backlog-status-completed { background:#e9f9ef; color:#178243; }
.empty-cell { padding:30px; text-align:center; color:#7d848d; }
.utilization-log .table-scroll { overflow-x:auto; }
.utilization-log table { min-width:900px; }
.utilization-log td strong, .utilization-log td small { display:block; }
.utilization-log td small { margin-top:3px; color:#7b828c; }
.log-date { white-space:nowrap; }
.log-details { max-width:460px; color:#606872; }
.audit-action { display:inline-block; padding:4px 8px; border-radius:99px; font-size:12px; font-weight:700; white-space:nowrap; }
.audit-insert { background:#e9f9ef; color:#178243; }
.audit-update { background:#eaf2ff; color:#2164c5; }
.audit-delete { background:#fff0f0; color:#bd292b; }
.row-actions { display:flex; gap:12px; }
.icon-button { display:grid; place-items:center; width:28px; height:28px; border:0; background:transparent; border-radius:5px; padding:5px; color:#6f767f; }
.icon-button:hover { background:#f0f1f3; color:#343a42; }
.icon-button svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.icon-button.danger { color:#747b84; }
.icon-button.danger:hover { background:#fff0f0; color:#c9272a; }
.icon-button.prepare-action { color:#2d7df4; }
.icon-button.present-action { color:#178243; }
.modal-backdrop { position:fixed; inset:0; z-index:30; display:grid; place-items:center; padding:20px; background:rgba(22,26,32,.42); }
.modal { width:min(100%,500px); padding:24px; background:#fff; border-radius:12px; box-shadow:0 18px 50px rgba(0,0,0,.2); }
.meeting-modal { width:min(100%,620px); max-height:calc(100vh - 40px); overflow:auto; }
.modal h2 { margin:0 0 20px; }.modal-actions { display:flex; justify-content:flex-end; gap:10px; margin-top:22px; }
.secondary-button { border:1px solid #d8dce1; background:#fff; border-radius:6px; padding:9px 14px; }
.delete-modal { width:min(100%,450px); padding:26px; }
.delete-modal-header { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.delete-modal-header h2 { margin:0; font-size:18px; }
.delete-modal p { margin:24px 0 12px; color:#5e6670; }
.modal-close { display:grid; place-items:center; width:28px; height:28px; padding:0; border:0; border-radius:5px; background:transparent; color:#9aa0a8; font-size:24px; font-weight:300; line-height:1; }
.modal-close:hover { background:#f1f2f4; color:#555d66; }
.danger-button { border:0; border-radius:7px; padding:10px 18px; background:#e50920; color:#fff; font-weight:700; }
.danger-button:hover { background:#c9081c; }
.danger-button:disabled { opacity:.6; cursor:not-allowed; }
.modal .primary-button { width:auto; padding:0 18px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.field-help { display:block; margin-top:6px; color:#747b85; }
.invitee-picker { position:relative; }
.invitee-results {
  position:absolute; z-index:5; left:0; right:0; top:72px; max-height:210px; overflow:auto;
  border:1px solid #d7dae0; border-radius:7px; background:#fff; box-shadow:0 10px 24px rgba(22,26,32,.14);
}
.invitee-result {
  width:100%; display:flex; flex-direction:column; gap:2px; padding:10px 12px; border:0;
  border-bottom:1px solid #eceef1; background:#fff; text-align:left;
}
.invitee-result:last-child { border-bottom:0; }
.invitee-result:hover, .invitee-result:focus { background:#fff3f3; outline:none; }
.invitee-result small { color:#747b85; }
.no-results { margin:0; padding:14px; color:#747b85; text-align:center; }
.selected-invitees { margin-top:14px; min-height:48px; padding:10px; border:1px solid #e3e5e8; border-radius:7px; background:#f8f9fa; }
.selected-label { display:block; margin-bottom:8px; color:#747b85; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
#selected-invitees-list { display:flex; flex-direction:column; gap:7px; }
.invitee-order-item { display:grid; grid-template-columns:28px 1fr 30px 30px 30px; align-items:center; gap:6px; padding:7px 8px; border:1px solid #dfe3e8; border-radius:7px; background:#fff; }
.invitee-order-number { display:grid; place-items:center; width:24px; height:24px; border-radius:50%; background:#eaf2ff; color:#245d9e; font-size:12px; font-weight:700; }
.invitee-order-name { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; font-weight:600; }
.invitee-order-item button { width:28px; height:28px; padding:0; border:1px solid #dce0e4; border-radius:5px; background:#fff; color:#59616b; }
.invitee-order-item button:hover:not(:disabled) { border-color:#ef2b2d; color:#c92326; }
.invitee-order-item button:disabled { opacity:.3; cursor:not-allowed; }
.invitee-order-item .remove-invitee { border:0; color:#c92326; font-size:18px; }
.invitee-chip { display:inline-flex; align-items:center; gap:7px; padding:6px 8px 6px 10px; border-radius:99px; background:#eaf2ff; color:#245d9e; font-size:13px; }
.invitee-chip button { display:grid; place-items:center; width:19px; height:19px; padding:0; border:0; border-radius:50%; background:#d2e3fb; color:#245d9e; font-weight:700; }
.invitee-chip button:hover { background:#bdd5f6; }
.empty-selection { color:#9aa0a8; }
.preparation-screen { position:fixed; inset:0; z-index:25; overflow:auto; background:#f5f6f8; transform:translateX(100%); transition:transform .32s ease; }
.preparation-screen.visible { transform:translateX(0); }
.preparation-header { position:sticky; top:0; z-index:4; min-height:88px; display:grid; grid-template-columns:190px 1fr auto; align-items:center; gap:20px; padding:18px 4vw; border-bottom:1px solid #e1e4e8; background:#fff; }
.preparation-header h1 { margin:0 0 4px; font-size:22px; }.preparation-header p { margin:0; color:#7b828c; }
.back-button { border:0; background:transparent; color:#d72629; text-align:left; font-weight:700; }
.owner-select { display:flex; flex-direction:column; gap:5px; color:#737a84; font-size:12px; font-weight:700; }
.owner-select select { min-width:240px; height:38px; border:1px solid #d7dae0; border-radius:7px; padding:0 10px; background:#fff; }
.preparation-body { width:min(1100px,92vw); margin:32px auto 70px; }
.preparation-lead { margin:0 0 15px; color:#646c76; }
.preparation-tabs { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:18px; }
.preparation-tab { display:flex; align-items:center; gap:14px; padding:17px; border:1px solid #dfe2e6; border-radius:10px; background:#fff; color:#454c55; text-align:left; }
.preparation-tab > span { display:flex; flex-direction:column; gap:3px; }.preparation-tab small { color:#7c838c; }
.preparation-tab.active { border-color:#ef2b2d; box-shadow:0 0 0 2px rgba(239,43,45,.08); color:#c92326; }
.preparation-card { padding:22px; border:1px solid #e0e3e7; border-radius:10px; background:#fff; box-shadow:0 2px 5px rgba(22,26,32,.03); }
.editor-toolbar { display:flex; flex-wrap:wrap; gap:5px; padding:8px; border:1px solid #d9dde2; border-bottom:0; border-radius:8px 8px 0 0; background:#f7f8f9; }
.editor-toolbar button, .editor-toolbar select { min-height:32px; border:1px solid #dce0e4; border-radius:5px; background:#fff; padding:4px 9px; }
.font-size-control { display:inline-flex; align-items:center; gap:4px; height:32px; padding:0 7px; border:1px solid #dce0e4; border-radius:5px; background:#fff; color:#68717b; font-size:12px; }
.font-size-control input { width:46px; border:0; outline:0; background:transparent; }
.font-color-control { display:inline-flex; align-items:center; gap:5px; }
.font-color-control input[type="color"] { width:34px; height:32px; padding:2px; border:1px solid #dce0e4; border-radius:5px; background:#fff; cursor:pointer; }
.font-color-control input[type="text"] { width:88px; height:32px; padding:4px 8px; border:1px solid #dce0e4; border-radius:5px; font-family:monospace; text-transform:uppercase; }
.background-color-control { display:inline-flex; align-items:center; gap:5px; margin-left:auto; }
.background-color-control input[type="color"] { width:34px; height:32px; padding:2px; border:1px solid #dce0e4; border-radius:5px; background:#fff; cursor:pointer; }
.background-color-control input[type="text"] { width:88px; height:32px; padding:4px 8px; border:1px solid #dce0e4; border-radius:5px; font-family:monospace; text-transform:uppercase; }
.free-editor { min-height:340px; padding:22px; border:1px solid #d9dde2; border-radius:0 0 8px 8px; outline:none; line-height:1.6; }
.backlog-screen { position:fixed; inset:0; z-index:24; overflow:auto; background:#f5f6f8; transform:translateX(100%); transition:transform .32s ease; }
.backlog-screen.visible { transform:translateX(0); }
.backlog-screen.no-transition { transition:none; }
.backlog-header { position:sticky; top:0; z-index:4; min-height:88px; display:grid; grid-template-columns:220px 1fr auto; align-items:center; gap:20px; padding:18px 4vw; border-bottom:1px solid #e1e4e8; background:#fff; }
.backlog-header h1 { margin:0 0 4px; font-size:24px; }
.backlog-header p { margin:0; color:#7b828c; }
.backlog-body { width:min(1500px,94vw); margin:30px auto 70px; }
.backlog-table .table-scroll { overflow-x:auto; }
.backlog-filters { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:12px; }
.backlog-filter { display:flex; align-items:center; gap:9px; color:#69717a; font-size:13px; font-weight:600; }
.backlog-filter select { min-width:170px; height:36px; padding:0 10px; border:1px solid #d7dae0; border-radius:7px; background:#fff; color:#303741; }
.backlog-table table { min-width:1180px; }
.backlog-table tbody tr:nth-child(odd) { background:#fff; }
.backlog-table tbody tr:nth-child(even) { background:#f7f8fa; }
.backlog-table tbody tr:hover { background:#fff5f5; }
.sort-header { display:inline-flex; align-items:center; border:0; padding:0; background:transparent; color:inherit; font:inherit; font-weight:inherit; text-transform:inherit; letter-spacing:inherit; cursor:pointer; white-space:nowrap; }
.sort-header:hover, .sort-header.active { color:#d72629; }
.task-description { min-width:220px; max-width:360px; font-weight:600; }
.task-comments { min-width:180px; max-width:300px; color:#66707a; white-space:pre-wrap; }
.progress-cell { min-width:145px; display:flex; align-items:center; gap:9px; }
.progress-cell strong { min-width:38px; color:#535b65; font-size:12px; }
.progress-track { width:92px; height:9px; overflow:hidden; border-radius:99px; background:#e2e5e9; }
.progress-track span { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#ef2b2d,#ff6b4a); }
.backlog-modal { width:min(100%,700px); max-height:calc(100vh - 40px); overflow:auto; }
.backlog-modal form { display:flex; flex-direction:column; gap:14px; }
.backlog-modal label { min-width:0; display:flex; flex-direction:column; gap:7px; color:#303741; font-size:14px; font-weight:600; }
.backlog-modal input:not([type="range"]), .backlog-modal select, .backlog-modal textarea {
  width:100%; border:1px solid #d7dae0; border-radius:7px; padding:0 11px; background:#fff; color:#252b33; font:inherit; font-weight:400; outline:none;
}
.backlog-modal input:not([type="range"]), .backlog-modal select { height:42px; }
.backlog-modal textarea { min-height:110px; padding:11px; resize:vertical; line-height:1.45; }
.backlog-modal input:focus, .backlog-modal select:focus, .backlog-modal textarea:focus { border-color:#ed2d30; box-shadow:0 0 0 3px rgba(237,45,48,.1); }
.backlog-modal .form-grid { gap:16px; }
.backlog-modal .modal-actions { margin-top:4px; }
.limited-task-summary { display:flex; flex-direction:column; gap:4px; padding:12px 14px; border:1px solid #e1e4e8; border-radius:7px; background:#f7f8fa; }
.limited-task-summary span { color:#737b85; font-size:13px; }
.percentage-input { min-height:42px; display:flex; align-items:center; gap:12px; }
.percentage-input input { width:100%; padding:0; accent-color:#ef2b2d; }
.percentage-input output { min-width:42px; color:#d72629; font-weight:700; }
.form-error { min-height:18px; color:#c92326; font-size:13px; }
.free-editor:empty::before { content:attr(data-placeholder); color:#9aa0a8; }
.preparation-footer { display:flex; justify-content:flex-end; align-items:center; gap:14px; min-height:38px; margin-top:18px; color:#188247; }
.preparation-footer button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-width:145px; }
.preparation-footer button:disabled { opacity:.75; cursor:wait; }
.saving-progress { display:inline-flex; align-items:center; gap:8px; color:#59616b; font-weight:600; }
.save-error { color:#c92326; font-weight:600; }
.saving-spinner { width:15px; height:15px; flex:0 0 auto; border:2px solid currentColor; border-right-color:transparent; border-radius:50%; animation:saving-spin .7s linear infinite; }
@keyframes saving-spin { to { transform:rotate(360deg); } }
.preparation-screen[aria-busy="true"] .preparation-tab,
.preparation-screen[aria-busy="true"] .back-button,
.preparation-screen[aria-busy="true"] .owner-select select { cursor:wait; }
.upload-zone { display:flex; align-items:center; gap:14px; padding:18px; border:1px dashed #cfd4da; border-radius:8px; background:#fafbfc; }
.upload-zone small { color:#737b85; }
.presentation-file { margin-top:18px; border:1px solid #e1e4e8; border-radius:8px; overflow:hidden; }
.presentation-file > header { display:flex; justify-content:space-between; align-items:center; padding:13px 16px; background:#f7f8fa; }
.presentation-file > header div { display:flex; flex-direction:column; gap:3px; }.presentation-file > header small { color:#7c838c; }
.slide-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:12px; padding:15px; }
.slide-option { position:relative; min-height:135px; display:flex; flex-direction:column; gap:7px; padding:14px; border:1px solid #dfe2e6; border-radius:7px; background:#fff; cursor:pointer; }
.slide-option.selected { border-color:#2d7df4; background:#f5f9ff; box-shadow:0 0 0 2px rgba(45,125,244,.08); }
.slide-option input { position:absolute; top:10px; right:10px; }.slide-option small { color:#7b828c; line-height:1.35; overflow:hidden; }
.slide-number { color:#2d7df4; font-size:12px; font-weight:700; }
.selected-slide-order { margin-top:24px; }.selected-slide-order h3 { font-size:16px; }
.slide-order-item { display:grid; grid-template-columns:30px 1fr 34px 34px; align-items:center; gap:9px; padding:10px 12px; border-bottom:1px solid #e8eaed; }
.slide-order-item > span { display:grid; place-items:center; width:26px; height:26px; border-radius:50%; background:#eef2f6; font-weight:700; }
.slide-order-item div { display:flex; flex-direction:column; }.slide-order-item small { color:#7b828c; }
.slide-order-item button { width:30px; height:30px; border:1px solid #dce0e4; border-radius:5px; background:#fff; }.slide-order-item button:disabled { opacity:.35; }

.presentation-view { position:fixed; inset:0; z-index:100; display:grid; grid-template-rows:64px minmax(0,1fr) 70px; background:#f3f5f7; color:#20252b; animation:presentation-in .25s ease-out; }
@keyframes presentation-in { from { opacity:0; transform:scale(.99); } }
.slideshow-header { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:0 28px; border-bottom:1px solid #e1e4e8; background:rgba(255,255,255,.96); }
.slideshow-header > div { display:flex; align-items:baseline; gap:14px; min-width:0; }
.slideshow-header strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:17px; }
.slideshow-header span { color:#747c85; font-size:13px; }
.slideshow-header button { border:0; background:transparent; color:#646c75; font-weight:600; }
.slideshow-stage { min-height:0; display:grid; place-items:center; padding:24px 40px; overflow:hidden; }
.pptx-presentation-slide { position:relative; max-width:100%; max-height:100%; margin:0; display:grid; place-items:center; }
.pptx-presentation-slide img { display:block; max-width:100%; max-height:calc(100vh - 182px); object-fit:contain; background:#fff; box-shadow:0 10px 35px rgba(28,35,43,.14); }
.pptx-presentation-slide figcaption { position:absolute; right:12px; bottom:10px; padding:5px 9px; border-radius:5px; background:rgba(18,23,29,.7); color:#fff; font-size:11px; opacity:0; transition:opacity .2s; }
.pptx-presentation-slide:hover figcaption { opacity:1; }
.free-presentation-slide { width:min(1120px,100%); height:min(630px,100%); display:grid; grid-template-rows:1fr auto; padding:clamp(34px,5vw,72px); border:1px solid #e4e7ea; background:#fff; box-shadow:0 12px 40px rgba(28,35,43,.11); aspect-ratio:16/9; }
.free-slide-content { align-self:center; overflow:auto; font-size:clamp(20px,2.2vw,34px); line-height:1.45; }
.free-slide-content h2 { font-size:1.7em; }.free-slide-content h3 { font-size:1.35em; }
.free-presentation-slide > footer { padding-top:18px; border-top:1px solid #eceef0; color:#7a828b; font-size:13px; text-align:right; }
.empty-presentation { color:#7c848d; font-size:18px; }
.slideshow-controls { display:flex; align-items:center; justify-content:center; gap:18px; padding:0 24px; border-top:1px solid #e1e4e8; background:#fff; }
.slideshow-controls button { min-width:112px; padding:10px 15px; border:1px solid #d9dde2; border-radius:7px; background:#fff; color:#343b43; font-weight:600; }
.slideshow-controls button:hover:not(:disabled) { border-color:#ef2b2d; color:#c92326; }
.slideshow-controls button:disabled { opacity:.35; cursor:not-allowed; }
.slideshow-controls span { min-width:70px; color:#69717a; text-align:center; font-variant-numeric:tabular-nums; }

@media (max-width: 760px) {
  .app-shell { display:block; }.sidebar { position:static; width:100%; height:auto; }
  .brand { border-bottom:0; }.nav { display:flex; padding:7px 10px; border-top:1px solid #eee; }
  .nav button { justify-content:center; }.nav-bottom { position:absolute; right:10px; top:9px; border:0; margin:0; }
  .app-main { padding:28px 16px 50px; }.metrics { grid-template-columns:1fr; }
  .language-switcher { top:14px; right:70px; } .table-card { overflow:auto; } table { min-width:680px; }
  .form-grid { grid-template-columns:1fr; gap:0; }
  .preparation-header { grid-template-columns:1fr; gap:10px; }.owner-select select { min-width:0; width:100%; }
  .preparation-tabs { grid-template-columns:1fr; }
  .slideshow-stage { padding:12px; }.slideshow-header { padding:0 16px; }
  .slideshow-header span, #fullscreen-presentation { display:none; }
  .slideshow-controls { gap:8px; padding:0 10px; }.slideshow-controls button { min-width:0; }
  .backlog-header { grid-template-columns:1fr auto; }
  .backlog-header > div { grid-column:1 / -1; grid-row:2; }
  .backlog-header .back-button { grid-column:1; }
  .backlog-header .compact-button { grid-column:2; }
  .backlog-table .table-tools { align-items:flex-start; flex-direction:column; }
  .backlog-filters { width:100%; justify-content:flex-start; }
  .backlog-filter { width:100%; justify-content:space-between; }
}