.st-page{max-width:1040px}.st-numbers{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:32px}.st-number{display:flex;flex-direction:column;gap:4px;padding:20px 24px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);color:var(--color-text);text-decoration:none}a.st-number{transition:border-color var(--transition-fast),transform var(--transition-fast)}a.st-number:hover{border-color:var(--color-text-secondary);transform:translateY(-1px)}.st-number-value{font-size:2.75rem;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums;color:var(--color-text)}.st-number-label{font-size:1rem;font-weight:600;color:var(--color-text)}.st-number-hint{font-size:.875rem;color:var(--color-text-secondary)}.st-number.is-warning{border:2px solid var(--color-warning);background:color-mix(in srgb,var(--color-warning) 10%,var(--color-surface))}.st-number.is-warning .st-number-value{color:var(--color-warning)}.st-shortcuts{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.st-shortcut{display:flex;align-items:center;gap:16px;min-height:72px;padding:16px 20px;border-radius:var(--radius-xl);border:2px solid var(--color-border-light);background:var(--color-surface);color:var(--color-text);text-decoration:none;font-size:1.125rem;font-weight:600;text-align:left;transition:border-color var(--transition-fast),transform var(--transition-fast)}.st-shortcut:hover{border-color:var(--color-text);transform:translateY(-1px)}.st-shortcut.is-main{background:var(--color-text);border-color:var(--color-text);color:var(--color-surface)}.st-shortcut-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;border-radius:var(--radius-full);background:var(--color-surface-hover);color:var(--color-text)}.st-shortcut.is-main .st-shortcut-icon{background:color-mix(in srgb,var(--color-surface) 20%,transparent);color:inherit}.st-shortcut-text{display:flex;flex-direction:column;gap:2px;flex:1}.st-shortcut-sub{font-size:.875rem;font-weight:400;opacity:.8}.st-shortcut-badge{font-size:.875rem;font-weight:700;padding:4px 10px;border-radius:var(--radius-full);background:var(--color-warning);color:var(--color-surface)}.st-section{margin-bottom:32px}.st-more{margin-bottom:16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl)}.st-more>summary{display:flex;align-items:center;gap:12px;min-height:56px;padding:12px 20px;cursor:pointer;list-style:none;font-size:1.0625rem;font-weight:600;color:var(--color-text)}.st-more>summary::-webkit-details-marker{display:none}.st-more>summary .st-more-chevron{margin-left:auto;color:var(--color-text-secondary);transition:transform var(--transition-fast);flex-shrink:0}.st-more[open]>summary .st-more-chevron{transform:rotate(90deg)}.st-more-count{font-size:.875rem;font-weight:600;color:var(--color-text-secondary)}.st-more-body{padding:4px 20px 20px}.st-mini-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}.st-mini{padding:12px 16px;border-radius:var(--radius-lg);background:var(--color-surface-hover)}.st-mini strong{display:block;font-size:1.5rem;color:var(--color-text);font-variant-numeric:tabular-nums}.st-mini span{font-size:.875rem;color:var(--color-text-secondary)}.st-week{display:flex;flex-direction:column;gap:4px}.st-week-row{display:flex;align-items:center;gap:16px;padding:10px 12px;border-radius:var(--radius-md);color:var(--color-text)}.st-week-row.is-today{outline:2px solid var(--color-info);outline-offset:-2px}.st-week-day{width:140px;flex-shrink:0;font-weight:600}.st-week-info{flex:1;color:var(--color-text-secondary);font-size:.9375rem}.st-week-note{display:inline-flex;align-items:center;gap:4px;color:var(--color-warning);font-weight:600;font-size:.875rem}.st-special-list{list-style:none;display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.st-special{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 16px;border:1px solid var(--color-border);border-radius:var(--radius-lg)}.st-special-text{flex:1;min-width:200px}.st-special-day{font-weight:600;color:var(--color-text)}.st-special-sub{font-size:.875rem;color:var(--color-text-secondary)}.st-form-row{display:flex;flex-wrap:wrap;gap:16px;margin-top:16px}.st-form-row .form-group{min-width:160px}.st-form-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.st-now{display:flex;align-items:center;gap:12px;color:var(--color-info);font-weight:700;font-size:.9375rem;padding:4px 0}.st-now:before,.st-now:after{content:"";flex:1;height:2px;background:var(--color-info)}.st-row-next{border:2px solid var(--color-text)}.st-row-next-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-info)}.st-row-here{border-left:6px solid var(--color-success)}.st-row-open{border-left:6px solid var(--color-warning)}.st-row-main{cursor:default}.st-here{color:var(--color-success);font-weight:600}.st-row-actions{flex-wrap:wrap}.st-row-actions .btn{min-height:48px}.st-row-more{padding:0 20px 14px 100px}.st-row-more summary{cursor:pointer;color:var(--color-info);font-size:.875rem;font-weight:600;padding:8px 0;min-height:44px;display:inline-flex;align-items:center}.st-tables{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.st-table{display:flex;align-items:center;gap:10px;padding:12px;border-radius:var(--radius-md);border:1px solid var(--color-border);color:var(--color-text)}.st-table-dot{width:14px;height:14px;border-radius:var(--radius-full);flex-shrink:0}.st-table-name{font-weight:600}.st-table-state{font-size:.8125rem;color:var(--color-text-secondary)}@media (max-width: 768px){.st-number-value{font-size:2.25rem}.st-week-day{width:100px}.st-row-more{padding:0 16px 14px}}.st-occupancy{margin-bottom:20px;padding:16px 20px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.st-occupancy-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px}.st-occupancy-label{font-weight:700;font-size:.9375rem;color:var(--color-text)}.st-occupancy-value{font-size:1.5rem;font-weight:700;color:var(--color-text);font-variant-numeric:tabular-nums}.st-occupancy-bar{height:10px;border-radius:999px;background:var(--color-surface-hover);overflow:hidden}.st-occupancy-bar span{display:block;height:100%;border-radius:inherit;background:var(--color-success);transition:width .5s ease}.st-occupancy-detail{font-size:.8125rem;color:var(--color-text-secondary);margin-top:8px}.st-search{display:flex;align-items:center;gap:10px;margin-bottom:20px;padding:10px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-muted)}.st-search-input{flex:1;border:none;background:none;padding:4px 0;font-size:1rem;color:var(--color-text)}.st-search-input:focus{outline:none}.st-search-input::placeholder{color:var(--color-text-muted)}.st-search-clear{background:none;border:none;color:var(--color-text-secondary);font-size:.8125rem;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm)}.st-search-clear:hover{color:var(--color-text);background:var(--color-surface-hover)}.st-call-btn{min-width:48px;padding:0;justify-content:center}.st-table-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 12px;border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:border-color var(--transition-fast),transform var(--transition-fast)}.st-table-btn:hover:not(:disabled){border-color:var(--color-success);transform:translateY(-1px)}.st-table-btn:disabled{opacity:.5;cursor:default}.st-table-btn-name{font-weight:700;font-size:1rem}.st-table-btn-cap{font-size:.75rem;color:var(--color-text-secondary)}@media (max-width: 768px){.st-search{flex-wrap:wrap}.st-search-input{width:100%}}.sr-help{color:var(--color-text-secondary);font-size:.9375rem;margin-bottom:8px}.sr-muted{color:var(--color-text-secondary);font-size:.9375rem}.sr-danger-text{color:var(--color-error)}.sr-avatar{width:56px;height:56px;border-radius:var(--radius-lg);object-fit:cover;flex-shrink:0;border:1px solid var(--color-border)}.sr-avatar-letter{display:inline-flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;background:var(--color-surface-hover);color:var(--color-text)}.sr-row-actions{display:flex;flex-wrap:wrap;gap:8px;padding:0 20px 16px}.sr-row-actions .btn{min-height:44px;padding:10px 16px;font-size:.9375rem;font-weight:600}.sr-copy-row{display:flex;gap:8px;margin-bottom:8px}.sr-copy-row .input{flex:1;min-width:0}.sr-preview{margin-top:12px;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border)}.sr-address{display:grid;grid-template-columns:2fr 1fr;gap:16px}.sr-logo-row{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.sr-logo-img{width:96px;height:96px;object-fit:contain;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface-hover)}.sr-upload{display:inline-flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:96px;border:2px dashed var(--color-border-light);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font-size:1.0625rem;font-weight:600;transition:border-color var(--transition-fast)}.sr-upload:hover:not(:disabled){border-color:var(--color-text-secondary)}.sr-more>summary{cursor:pointer;font-size:1.0625rem;font-weight:600;color:var(--color-text);min-height:44px;display:flex;align-items:center}.sr-more-body{display:flex;flex-direction:column;gap:24px;margin-top:16px}.sr-slug{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sr-slug .input{flex:1;min-width:180px}.sr-slug-prefix{color:var(--color-text-secondary);font-size:.9375rem}.sr-saved{position:sticky;top:calc(var(--header-height) + 8px);z-index:6;display:inline-flex;align-items:center;gap:8px;margin-bottom:16px;padding:10px 16px;border-radius:var(--radius-full);background:var(--color-success-100, var(--color-surface-hover));color:var(--color-success);font-weight:600;border:1px solid var(--color-success)}.sr-hours{list-style:none;display:flex;flex-direction:column}.sr-hours-row{display:grid;grid-template-columns:130px auto 1fr;gap:12px 20px;align-items:start;padding:16px 0;border-bottom:1px solid var(--color-border)}.sr-hours-row:last-child{border-bottom:none}.sr-day-name{font-size:1.0625rem;font-weight:700;color:var(--color-text);padding-top:12px}.sr-toggle .segmented-btn.sr-open.active{outline-color:var(--color-success);color:var(--color-success)}.sr-toggle .segmented-btn.sr-closed.active{outline-color:var(--color-text-secondary)}.sr-times{display:flex;flex-direction:column;gap:8px;min-width:0;padding-top:4px}.sr-hours-row.is-closed .sr-times{padding-top:14px}.sr-time-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px}.sr-time-label{display:inline-flex;align-items:center;gap:8px;color:var(--color-text-secondary);font-size:.9375rem}.sr-time-input{width:130px;min-height:48px;font-variant-numeric:tabular-nums}.sr-day-actions{display:flex;flex-wrap:wrap;gap:8px}.sr-day-actions .btn{min-height:44px}.sr-special-form{display:flex;flex-direction:column;gap:20px;padding:20px;margin-bottom:20px;border-radius:var(--radius-lg);background:var(--color-surface-hover);border:1px solid var(--color-border)}.sr-date-input{max-width:240px}.sr-area-list{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.sr-area-chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:4px 4px 4px 16px;border-radius:var(--radius-full);border:2px solid var(--color-border-light);background:var(--color-surface);color:var(--color-text);font-weight:600}.sr-area-del{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-full);color:var(--color-error)}.sr-area-del:hover{background:var(--color-surface-hover)}.sr-table-num{display:inline-flex;align-items:center;justify-content:center;min-width:56px;height:56px;padding:0 8px;flex-shrink:0;border-radius:var(--radius-lg);background:var(--color-surface-hover);color:var(--color-text);font-size:1.25rem;font-weight:700;font-variant-numeric:tabular-nums}.sr-status-badge{display:inline-flex;align-items:center;gap:8px;background:var(--color-surface-hover);color:var(--color-text)}.sr-dot{display:inline-block;width:14px;height:14px;border-radius:var(--radius-full);flex-shrink:0}.sr-modal-wide{max-width:640px}.sr-modal-step{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--color-border)}.sr-short-input{max-width:200px;font-size:1.25rem;font-weight:600}.sr-capacity{display:flex;flex-direction:column;gap:20px}.sr-legend{list-style:none;display:flex;flex-wrap:wrap;gap:8px}.sr-legend-item{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:8px 14px;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface)}.sr-legend-swatch{display:inline-block;width:22px;height:22px;border-radius:var(--radius-sm);flex-shrink:0;border:1px solid var(--color-border-light)}.sr-legend-label{font-size:1rem;font-weight:600;color:var(--color-text)}.sr-plan-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}.sr-canvas-scroll{min-width:0;overflow:auto;border-radius:var(--radius-lg)}.sr-canvas{min-height:600px}.sr-table.is-blocked{outline:3px solid var(--color-error);outline-offset:2px;opacity:.75}.sr-canvas.is-editing{border-style:solid;border-color:var(--color-info)}.sr-canvas-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;color:var(--color-text-secondary)}.sr-canvas-empty h3{margin:16px 0 8px;font-size:1.125rem;color:var(--color-text)}.sr-table{min-width:48px;min-height:48px}.sr-table.is-dragging{z-index:20;box-shadow:var(--shadow-lg)}.sr-table:focus-visible{outline:3px solid var(--color-text);outline-offset:2px}.sr-table-label{display:flex;flex-direction:column;align-items:center;line-height:1.15;pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,.45)}.sr-table-label strong{font-size:1rem;font-weight:700}.sr-table-label span{font-size:.6875rem;opacity:.95}.sr-panel{position:sticky;top:calc(var(--header-height) + 16px);padding:20px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl)}.sr-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.sr-panel-title{font-size:1.375rem;font-weight:700;color:var(--color-text)}.sr-status-now{display:flex;align-items:center;gap:10px;margin-bottom:16px;font-size:1.0625rem;color:var(--color-text-secondary)}.sr-status-now strong{color:var(--color-text)}.sr-panel-list{grid-template-columns:90px 1fr;margin-bottom:20px}.sr-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sr-status-btn{justify-content:flex-start;border-radius:var(--radius-md)}.sr-panel-section{margin-top:20px;padding-top:20px;border-top:1px solid var(--color-border)}.sr-tool-grid{display:grid;grid-template-columns:1fr;gap:8px}.sr-panel-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px 8px;text-align:center;color:var(--color-text-secondary);font-size:1rem}@media (max-width: 1024px){.sr-plan-layout{grid-template-columns:1fr}.sr-panel{position:static}}@media (max-width: 768px){.sr-address{grid-template-columns:1fr}.sr-copy-row{flex-direction:column}.sr-hours-row{grid-template-columns:1fr;gap:10px}.sr-day-name,.sr-hours-row.is-closed .sr-times{padding-top:0}.sr-row-actions{padding:0 16px 14px}.sr-row-actions .btn{flex:1 1 auto}.sr-status-grid{grid-template-columns:1fr}}.sc-view-btn{min-width:96px;justify-content:center;font-size:1rem}.sc-nav{display:flex;flex-wrap:wrap;gap:8px}.sc-nav .btn{min-height:52px;min-width:132px;justify-content:center}.sc-period{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 16px;margin-top:16px}.sc-period-title{font-size:1.375rem;font-weight:700;color:var(--color-text);letter-spacing:-.01em}.sc-period-count{font-size:.9375rem;color:var(--color-text-secondary)}.sc-warnings{display:flex;flex-direction:column;gap:8px;margin-bottom:24px}.sc-warning{display:flex;align-items:center;flex-wrap:wrap;gap:12px 16px;padding:16px 20px;background:var(--color-warning-50);border:2px solid var(--color-warning);border-radius:var(--radius-lg);color:var(--color-text)}.sc-warning-icon{color:var(--color-warning);flex-shrink:0}.sc-warning-text{flex:1;min-width:220px;display:flex;flex-direction:column;gap:4px;font-size:.9375rem}.sc-warning-text strong{font-size:1rem}.sc-grid{display:grid;gap:8px;margin-bottom:8px}.sc-grid-week{grid-template-columns:repeat(7,minmax(0,1fr))}.sc-grid-month{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.sc-grid-head{text-align:center;font-size:.9375rem;font-weight:700;color:var(--color-text-secondary);padding:4px 0}.sc-cell{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-height:44px;padding:12px;border-radius:var(--radius-lg);border:2px solid var(--color-border-light);background:var(--color-surface);color:var(--color-text);text-align:left;transition:border-color var(--transition-fast),background var(--transition-fast),transform var(--transition-fast)}.sc-grid-week .sc-cell{min-height:150px}.sc-grid-month .sc-cell{min-height:96px;padding:8px;gap:4px}.sc-cell:hover{border-color:var(--color-text-secondary);transform:translateY(-1px)}.sc-cell.is-today{border-color:var(--color-info)}.sc-cell.is-closed{background:var(--color-surface-hover)}.sc-cell.is-other{opacity:.45}.sc-cell.active{background:var(--color-text);border-color:var(--color-text);color:var(--color-surface);opacity:1}.sc-cell-top{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;width:100%}.sc-cell-name{font-size:1rem;font-weight:700;width:100%}.sc-cell-date{font-size:1rem;font-weight:700;font-variant-numeric:tabular-nums}.sc-grid-week .sc-cell-date{font-weight:500;opacity:.85}.sc-cell-today{font-size:.75rem;font-weight:700;padding:1px 8px;border-radius:var(--radius-full);background:var(--color-info);color:var(--color-surface)}.sc-cell-count{display:flex;flex-direction:column;gap:2px;font-size:.9375rem;line-height:1.25}.sc-cell-count strong{font-weight:700}.sc-cell-count span{color:var(--color-text-secondary)}.sc-cell.active .sc-cell-count span{color:inherit;opacity:.85}.sc-cell-free{font-size:.875rem;color:var(--color-text-muted)}.sc-cell.active .sc-cell-free{color:inherit;opacity:.8}.sc-cell-open{font-size:.8125rem;font-weight:700;padding:2px 8px;border-radius:var(--radius-full);background:var(--color-warning-100);color:var(--color-warning)}.sc-cell-note{font-size:.8125rem;font-weight:600;color:var(--color-text-secondary);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sc-note-holiday{color:var(--color-warning)}.sc-note-special{color:var(--color-info)}.sc-cell.active .sc-cell-note{color:inherit}.sc-day-panel{margin-top:16px;scroll-margin-top:16px}.sc-pick-hint{margin-top:24px;padding:24px;text-align:center;font-size:1rem;color:var(--color-text-secondary);border:2px dashed var(--color-border-light);border-radius:var(--radius-xl)}.sc-hours{display:flex;align-items:center;flex-wrap:wrap;gap:12px 16px;padding:16px 20px;margin-bottom:24px;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);border-left:6px solid var(--color-success)}.sc-hours.is-closed{border-left-color:var(--color-error)}.sc-hours>svg{color:var(--color-text-secondary);flex-shrink:0}.sc-hours-text{flex:1;min-width:200px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:.9375rem;color:var(--color-text-secondary)}.sc-hours-text strong{font-size:1.0625rem;color:var(--color-text)}.sc-hours.is-open .sc-hours-text strong{color:var(--color-success)}.sc-hours.is-closed .sc-hours-text strong{color:var(--color-error)}.sc-tag{font-size:.8125rem;font-weight:600;padding:3px 10px;border-radius:var(--radius-full)}.sc-tag-holiday{background:var(--color-warning-100);color:var(--color-warning)}.sc-tag-special{background:var(--color-info-100);color:var(--color-info)}.sc-dialog-day{font-size:1.25rem;font-weight:700;color:var(--color-text);margin-bottom:8px}.sc-dialog-hint{font-size:.9375rem;color:var(--color-text-secondary);margin-bottom:8px}.sc-dialog .res-step-label{margin-top:24px;margin-bottom:12px}.sc-choice{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sc-choice-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:12px 16px;border-radius:var(--radius-lg);border:2px solid var(--color-border-light);background:var(--color-surface);color:var(--color-text);font-size:1rem;font-weight:600;transition:all var(--transition-fast)}.sc-choice-btn:hover{border-color:var(--color-text-secondary)}.sc-choice-btn.active{background:var(--color-text);border-color:var(--color-text);color:var(--color-surface)}.sc-times{display:flex;flex-wrap:wrap;gap:16px}.sc-time-field{display:flex;align-items:center;gap:10px;font-size:1rem;font-weight:600;color:var(--color-text)}.sc-time-field .input{width:auto;min-width:140px}.sc-delete{margin-top:28px;padding-top:20px;border-top:1px solid var(--color-border)}.sc-delete-confirm p{margin-bottom:12px;font-weight:600;color:var(--color-text)}@media (max-width: 900px){.sc-grid-week{grid-template-columns:1fr}.sc-grid-week .sc-cell{min-height:0;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:14px 16px}.sc-grid-week .sc-cell-top{width:auto;min-width:150px}.sc-grid-week .sc-cell-name{width:auto}.sc-grid-week .sc-cell-count{flex-direction:row;gap:8px}}@media (max-width: 640px){.sc-nav .btn{flex:1;min-width:0;padding:12px 10px}.sc-grid-month{gap:4px}.sc-grid-month .sc-cell{min-height:72px;padding:6px 4px;align-items:center;text-align:center}.sc-grid-month .sc-cell-top{justify-content:center}.sc-grid-month .sc-cell-today,.sc-grid-month .sc-cell-note,.sc-grid-month .sc-cell-open{display:none}.sc-grid-month .sc-cell-count{font-size:.75rem;align-items:center}.sc-grid-month .sc-cell-free{font-size:.75rem}.sc-choice{grid-template-columns:1fr}}.sg-page{max-width:1040px}.sg-modal-steps .rf-step{padding:20px;margin-bottom:16px}.sg-modal-steps .rf-confirm{position:static;box-shadow:none}.sg-pos{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:48px;height:48px;border-radius:var(--radius-full);background:var(--color-text);color:var(--color-surface);font-size:1.25rem;font-weight:700}.sg-avatar{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:48px;height:48px;border-radius:var(--radius-full);background:var(--color-surface-hover);color:var(--color-text);border:1px solid var(--color-border);font-size:1rem;font-weight:700}.sg-row-badges{display:inline-flex;flex-wrap:wrap;gap:6px;margin-left:8px;vertical-align:middle}.sg-row-note{display:block;margin-top:4px;white-space:pre-wrap;color:var(--color-text-secondary);font-style:italic}.sg-row-contact{display:flex;flex-wrap:wrap;gap:8px 16px;padding:0 20px 12px 84px;font-size:.9375rem}.sg-row-contact a{display:inline-flex;align-items:center;gap:6px;color:var(--color-info);min-height:32px}.sg-row-actions{padding-left:84px;flex-wrap:wrap}.sg-static-row{display:flex;align-items:center;gap:16px;padding:16px 20px}.sg-search{position:relative;margin-bottom:20px}.sg-search>svg{position:absolute;left:18px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.sg-search .input{padding:16px 52px;font-size:1.125rem;border-radius:var(--radius-full);border-width:2px;min-height:56px}.sg-search-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-full);color:var(--color-text-secondary)}.sg-search-clear:hover{background:var(--color-surface-hover);color:var(--color-text)}.sg-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}.sg-pills{display:flex;flex-wrap:wrap;gap:8px}.sg-pill-count{font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:var(--radius-full);background:var(--color-surface-hover);color:var(--color-text)}.pill.active .sg-pill-count{background:#7f7f7f4d;color:inherit}.sg-table-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.sg-table-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 8px;min-height:72px;border-radius:var(--radius-lg);border:2px solid var(--color-border-light);background:var(--color-surface);color:var(--color-text);transition:all var(--transition-fast)}.sg-table-btn:hover{border-color:var(--color-text-secondary)}.sg-table-btn.active{background:var(--color-text);border-color:var(--color-text);color:var(--color-surface)}.sg-table-btn.is-small:not(.active){opacity:.55}.sg-table-name{font-size:1.0625rem;font-weight:700}.sg-table-cap{font-size:.8125rem;opacity:.85}.sg-table-hint{font-size:.75rem;font-weight:600;color:var(--color-warning)}.sg-table-btn.active .sg-table-hint{color:inherit}.sg-hint{margin-top:12px;color:var(--color-text-secondary);font-size:.9375rem}.sg-hero{padding:24px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);margin-bottom:24px}.sg-hero-top{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:20px}.sg-hero-top .sg-avatar{width:64px;height:64px;font-size:1.375rem}.sg-hero-name{flex:1;min-width:200px}.sg-hero-name h1{font-size:1.75rem;font-weight:700;color:var(--color-text);line-height:1.2;letter-spacing:-.02em}.sg-hero-name p{color:var(--color-text-secondary);margin-top:4px}.sg-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin-bottom:20px}.sg-stat{padding:16px;border-radius:var(--radius-lg);background:var(--color-surface-hover);border:1px solid var(--color-border)}.sg-stat-label{font-size:.875rem;color:var(--color-text-secondary)}.sg-stat-value{font-size:1.25rem;font-weight:700;color:var(--color-text);margin-top:4px}.sg-stat.is-warn .sg-stat-value{color:var(--color-warning)}.sg-section{margin-bottom:28px}.sg-section-title{font-size:1.25rem;font-weight:700;color:var(--color-text);margin-bottom:12px}.sg-small-empty{padding:20px;border:2px dashed var(--color-border-light);border-radius:var(--radius-lg);color:var(--color-text-secondary);text-align:center}.sg-date-box{display:flex;flex-direction:column;align-items:center;min-width:64px;color:var(--color-text)}.sg-date-box strong{font-size:1.375rem;line-height:1.1;font-variant-numeric:tabular-nums}.sg-date-box span{font-size:.8125rem;color:var(--color-text-secondary)}.sg-notes{list-style:none;display:flex;flex-direction:column;gap:8px;margin-top:16px}.sg-note{padding:14px 16px;border-radius:var(--radius-lg);background:var(--color-surface-hover);border:1px solid var(--color-border)}.sg-note p{white-space:pre-wrap;color:var(--color-text)}.sg-note span{display:block;margin-top:6px;font-size:.8125rem;color:var(--color-text-muted)}.sg-more{margin-top:8px}.sg-more summary{cursor:pointer;font-weight:600;color:var(--color-info);padding:12px 0;min-height:44px}@media (max-width: 768px){.sg-row-contact,.sg-row-actions{padding-left:16px}.sg-row-actions .btn{flex:1}.sg-hero{padding:16px}.sg-static-row{padding:14px 16px;gap:12px;flex-wrap:wrap}}.sa-page .rf-step{margin-bottom:24px}.sa-subtitle{margin-top:28px}.sa-hint{font-size:.875rem;color:var(--color-text-secondary);margin-top:6px;line-height:1.5}.sa-hint-top{margin:-8px 0 16px}.sa-lead{font-size:1.25rem;font-weight:600;line-height:1.4;color:var(--color-text);margin-bottom:20px}.sa-text-danger{color:var(--color-error);font-weight:600}.sa-field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.sa-field .label{font-size:.9375rem;font-weight:600;color:var(--color-text)}.sa-field-top{margin-top:16px}.sa-field-full{grid-column:1 / -1}.sa-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.sa-textarea{font-size:1rem;line-height:1.5;min-height:200px}.sa-select{width:auto;min-width:200px;min-height:44px}.sa-alert-top{margin-top:20px}.sa-info{display:flex;align-items:flex-start;gap:12px;margin-top:24px;padding:16px;border-radius:var(--radius-lg);background:var(--color-info-50);color:var(--color-text);border:1px solid var(--color-info-100);font-size:.9375rem}.sa-info svg{color:var(--color-info);flex-shrink:0;margin-top:2px}.sa-save-row{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:24px;padding-top:20px;border-top:1px solid var(--color-border)}.sa-saved{display:inline-flex;align-items:center;gap:8px;color:var(--color-success);font-weight:600;font-size:1rem}.sa-card{margin-top:20px;padding:20px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.sa-card-head{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px;margin-bottom:16px}.sa-card-title{font-size:1.125rem;font-weight:700;color:var(--color-text)}.sa-avatar{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:48px;height:48px;border-radius:var(--radius-full);background:var(--color-surface-hover);border:1px solid var(--color-border);color:var(--color-text);font-size:1.25rem;font-weight:700}.sa-row-right{font-size:.9375rem;color:var(--color-text-secondary)}.sa-row-right strong{color:var(--color-text)}.sa-row-important{border-left:4px solid var(--color-error)}.sa-sentence{font-weight:500;line-height:1.4}.sa-choice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}.sa-choice{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;min-height:44px;text-align:left;border-radius:var(--radius-lg);border:2px solid var(--color-border-light);background:var(--color-surface);color:var(--color-text);transition:border-color var(--transition-fast),background var(--transition-fast)}.sa-choice:hover{border-color:var(--color-text-secondary)}.sa-choice.active{border-color:var(--color-text);background:var(--color-surface-hover)}.sa-choice-check{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;border-radius:var(--radius-full);border:2px solid var(--color-border-light);margin-top:1px}.sa-choice.active .sa-choice-check{background:var(--color-text);border-color:var(--color-text);color:var(--color-surface)}.sa-choice-text{display:flex;flex-direction:column;gap:4px}.sa-choice-title{font-weight:700;font-size:1rem}.sa-choice-desc{font-size:.875rem;color:var(--color-text-secondary);line-height:1.4}.sa-assign-list{display:flex;flex-direction:column;gap:12px;margin-bottom:8px}.sa-assign{padding:16px;border:1px solid var(--color-border);border-radius:var(--radius-lg)}.sa-assign-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px}.sa-assign-place{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:1.0625rem;color:var(--color-text)}.sa-btn-danger-text{color:var(--color-error);min-height:44px}.sa-modal-confirm{flex-direction:column;align-items:stretch;gap:12px}.sa-modal-confirm .flex{justify-content:flex-end}.sa-toggle{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;text-align:left;color:var(--color-text)}.sa-toggle-text{flex:1;display:flex;flex-direction:column;gap:2px}.sa-roles{margin-top:32px}.sa-roles-body{margin-top:24px;padding-top:20px;border-top:1px solid var(--color-border)}.sa-perm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:8px}.sa-perm{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;min-height:44px;border:2px solid var(--color-border-light);border-radius:var(--radius-md);cursor:pointer;background:var(--color-surface)}.sa-perm.is-on{border-color:var(--color-success);background:var(--color-success-50)}.sa-perm input{width:20px;height:20px;margin-top:2px;flex-shrink:0;accent-color:var(--color-success)}.sa-perm-text{display:flex;flex-direction:column;gap:2px}.sa-perm-title{font-size:.9375rem;font-weight:500;color:var(--color-text)}.sa-perm-code{font-size:.75rem;color:var(--color-text-muted)}.sa-status{display:flex;align-items:center;gap:20px;padding:28px;margin-bottom:24px;border-radius:var(--radius-xl);border:2px solid var(--color-border);background:var(--color-surface)}.sa-status.is-ok{border-color:var(--color-success);background:var(--color-success-50)}.sa-status.is-ok>svg{color:var(--color-success);flex-shrink:0}.sa-status.is-bad{border-color:var(--color-error);background:var(--color-error-50)}.sa-status.is-bad>svg{color:var(--color-error);flex-shrink:0}.sa-status-title{font-size:1.75rem;font-weight:800;line-height:1.2;color:var(--color-text)}.sa-status.is-ok .sa-status-title{color:var(--color-success)}.sa-status.is-bad .sa-status-title{color:var(--color-error)}.sa-status-text{margin-top:6px;font-size:1rem;color:var(--color-text);line-height:1.5}.sa-check-list{list-style:none;display:flex;flex-direction:column;gap:8px}.sa-check{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface)}.sa-check-icon{display:inline-flex;flex-shrink:0;color:var(--color-text-muted)}.sa-check.is-ok .sa-check-icon{color:var(--color-success)}.sa-check.is-bad{border-color:var(--color-error);background:var(--color-error-50)}.sa-check.is-bad .sa-check-icon{color:var(--color-error)}.sa-check-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.sa-check-title{font-weight:600;color:var(--color-text)}.sa-check-desc{font-size:.875rem;color:var(--color-text-secondary);word-break:break-word}.sa-count-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.sa-count{padding:16px;border:1px solid var(--color-border);border-radius:var(--radius-lg)}.sa-count.is-bad{border-color:var(--color-error);background:var(--color-error-50)}.sa-count-value{font-size:1.75rem;font-weight:700;color:var(--color-text);font-variant-numeric:tabular-nums}.sa-count.is-bad .sa-count-value{color:var(--color-error);font-size:1.125rem}.sa-count-label{margin-top:4px;font-size:.875rem;color:var(--color-text-secondary)}.sa-more{display:flex;flex-direction:column;gap:16px;margin-top:16px;padding:20px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.sa-more-row{display:flex;flex-direction:column;gap:8px}.sa-more-label{font-weight:600;color:var(--color-text)}.sa-pager{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:16px;color:var(--color-text-secondary);font-weight:600}.sa-diff{list-style:none;display:flex;flex-direction:column;gap:6px;margin-bottom:20px}.sa-diff li{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 12px;border-radius:var(--radius-md);background:var(--color-surface-hover);font-size:.9375rem;color:var(--color-text-secondary)}.sa-diff-key{font-weight:600;color:var(--color-text);min-width:140px}.sa-diff-old{text-decoration:line-through;color:var(--color-text-muted);word-break:break-word}.sa-diff-new{font-weight:600;color:var(--color-text);word-break:break-word}.sa-tech{margin:12px 0;font-size:.8125rem}.sa-tech dd{word-break:break-all}.sa-pre{margin:0 0 12px;padding:12px;font-family:monospace;font-size:.75rem;white-space:pre-wrap;word-break:break-word;color:var(--color-text-secondary);background:var(--color-surface-hover);border:1px solid var(--color-border);border-radius:var(--radius-md)}.sa-pre-label{font-size:.8125rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:4px}.sa-note{display:flex;align-items:flex-start;gap:8px;margin-bottom:16px;padding:12px;border-radius:var(--radius-md);background:var(--color-surface-hover);color:var(--color-text)}.sa-note svg{flex-shrink:0;margin-top:2px;color:var(--color-text-muted)}@media (max-width: 768px){.sa-form-grid{grid-template-columns:1fr}.sa-hide-sm{display:none}.sa-status{padding:20px;gap:14px}.sa-status>svg{width:40px;height:40px}.sa-status-title{font-size:1.375rem}.sa-pager .btn{flex:1}.sa-pager span{order:-1;width:100%;text-align:center}.sa-modal-confirm .btn{flex:1}}.up-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);margin-bottom:24px;overflow:hidden}.up-summary-item{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:16px 24px}.up-summary-item+.up-summary-item{border-left:1px solid var(--color-border)}.up-summary-label{font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.up-summary-value{font-size:1.75rem;font-weight:700;line-height:1.2;color:var(--color-text);font-variant-numeric:tabular-nums}.up-summary-text{font-size:.9375rem;line-height:1.5;color:var(--color-text-secondary)}.up-error{border-color:var(--color-error);background:var(--color-error-50);color:var(--color-text)}.up-error>svg{color:var(--color-error)}.up-gap{margin-bottom:16px}.up-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.up-inline-icon{vertical-align:-2px;color:var(--color-warning)}.up-hint-block{margin-bottom:16px;line-height:1.5}.up-phases{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.up-phase{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--radius-md);color:var(--color-text-muted);transition:background-color .25s ease,color .25s ease}.up-phase-icon{display:flex;flex-shrink:0}.up-phase-num{font-size:.8125rem;font-weight:600;width:20px;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.up-phase-label{font-size:1rem;line-height:1.5}.up-phase.is-done{color:var(--color-text)}.up-phase.is-done .up-phase-icon{color:var(--color-success)}.up-phase.is-current{background:var(--color-info-50);color:var(--color-text);font-weight:600}.up-phase.is-current .up-phase-icon{color:var(--color-info)}.up-phase.is-failed{background:var(--color-error-50);color:var(--color-error);font-weight:600}.up-phase .spin{animation:spin 1s linear infinite}.up-confirm{display:flex;gap:12px;align-items:flex-start;padding:16px;margin-top:16px;border:1px solid var(--color-border);border-radius:var(--radius-lg);line-height:1.5;color:var(--color-text);cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.up-confirm:hover{border-color:var(--color-text-muted)}.up-confirm:has(input:checked){border-color:var(--color-success);background:var(--color-success-50)}.up-confirm input{width:20px;height:20px;margin-top:2px;flex-shrink:0;cursor:pointer}.up-confirm.is-danger{border-color:var(--color-error);background:var(--color-error-50)}.up-check{padding:16px 0 0}.up-check-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:8px}.up-check-version{font-size:1.25rem;font-weight:700;color:var(--color-text);line-height:1.2}.up-problems{margin:8px 0 0 20px;color:var(--color-error);line-height:1.5}.up-notes{margin:0 0 0 20px;line-height:1.5;color:var(--color-text)}.up-notes li+li{margin-top:4px}.up-notes-inline{margin-top:16px;padding:16px;border-left:3px solid var(--color-info);background:var(--color-info-50);border-radius:0 var(--radius-md) var(--radius-md) 0}.up-steps{margin:0 0 16px 20px;line-height:1.5;color:var(--color-text)}.up-steps li+li{margin-top:8px}.up-attention{border-color:var(--color-error)}.up-log{list-style:none;margin:16px 0 0;padding:0;max-height:360px;overflow-y:auto;border-top:1px solid var(--color-border)}.up-log li{display:flex;gap:16px;padding:8px 0;border-bottom:1px solid var(--color-border);font-size:.875rem;line-height:1.5;color:var(--color-text)}.up-log time{flex-shrink:0;width:150px;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.maint-banner{display:flex;align-items:center;gap:12px;padding:12px 24px;background:var(--color-warning-50);border-bottom:1px solid var(--color-warning);color:var(--color-text);font-size:.9375rem;line-height:1.5}.maint-banner>svg{color:var(--color-warning);flex-shrink:0}@media (max-width: 720px){.up-summary{grid-template-columns:1fr}.up-summary-item+.up-summary-item{border-left:none;border-top:1px solid var(--color-border)}.up-log li{flex-direction:column;gap:0}.up-actions .btn{flex:1}}.maint-banner.is-danger{background:var(--color-error-50, #fef2f2);border-bottom:2px solid var(--color-error, #dc2626);color:var(--color-error-700, #991b1b);font-weight:500}.maint-banner.is-danger>svg{color:var(--color-error, #dc2626)}body.license-locked .page-content :is(.btn-primary,.btn-danger,.btn-success,.btn-warning,button[type=submit],input[type=checkbox],input[type=radio],.switch,.toggle):not(.license-allow *){opacity:.4;filter:grayscale(1);pointer-events:none;cursor:not-allowed}:root{--color-bg: #000000;--color-surface: #0a0a0a;--color-surface-hover: #141414;--color-surface-raised: #121212;--color-border: #1e1e1e;--color-border-light: #2a2a2a;--color-text: #f5f5f5;--color-text-secondary: #a3a3a3;--color-text-muted: #666666;--color-accent: #ffffff;--color-accent-muted: #d4d4d4;--color-success: #4ade80;--color-success-light: #22c55e;--color-success-50: rgba(34,197,94,.08);--color-success-100: rgba(34,197,94,.15);--color-warning: #fbbf24;--color-warning-light: #f59e0b;--color-warning-50: rgba(245,158,11,.08);--color-warning-100: rgba(245,158,11,.15);--color-error: #f87171;--color-error-light: #ef4444;--color-error-50: rgba(239,68,68,.08);--color-error-100: rgba(239,68,68,.15);--color-info: #60a5fa;--color-info-50: rgba(96,165,250,.08);--color-info-100: rgba(96,165,250,.15);--color-neutral-0: #ffffff;--color-neutral-50: #fafafa;--color-neutral-100: #f5f5f5;--color-neutral-200: #e5e5e5;--color-neutral-300: #d4d4d4;--color-neutral-400: #a3a3a3;--color-neutral-500: #737373;--color-neutral-600: #525252;--color-neutral-700: #404040;--color-neutral-800: #262626;--color-neutral-900: #171717;--color-neutral-950: #0a0a0a;--shadow-xs: 0 1px 2px 0 rgba(0,0,0,.4);--shadow-sm: 0 1px 3px 0 rgba(0,0,0,.5), 0 1px 2px 0 rgba(0,0,0,.3);--shadow-md: 0 4px 12px -2px rgba(0,0,0,.5), 0 2px 6px -1px rgba(0,0,0,.3);--shadow-lg: 0 12px 24px -4px rgba(0,0,0,.6), 0 4px 8px -2px rgba(0,0,0,.3);--shadow-xl: 0 24px 48px -8px rgba(0,0,0,.7), 0 8px 16px -4px rgba(0,0,0,.4);--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-full: 9999px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--sidebar-width: 240px;--sidebar-collapsed: 56px;--header-height: 56px;--transition-fast: .12s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--table-free: #22c55e;--table-reserved: #60a5fa;--table-occupied: #ef4444;--table-waiting: #f59e0b;--table-cleaning: #737373;--table-blocked: #525252;--table-out: #404040}[data-theme=light]{--color-bg: #f7f7f8;--color-surface: #ffffff;--color-surface-hover: #f1f1f3;--color-surface-raised: #ffffff;--color-border: #e2e2e6;--color-border-light: #d4d4d8;--color-text: #1a1a1a;--color-text-secondary: #525252;--color-text-muted: #a1a1a1;--color-accent: #1a1a1a;--color-accent-muted: #404040;--color-success: #16a34a;--color-success-light: #22c55e;--color-success-50: rgba(22,163,74,.08);--color-success-100: rgba(22,163,74,.15);--color-warning: #d97706;--color-warning-light: #f59e0b;--color-warning-50: rgba(217,119,6,.08);--color-warning-100: rgba(217,119,6,.15);--color-error: #dc2626;--color-error-light: #ef4444;--color-error-50: rgba(220,38,38,.08);--color-error-100: rgba(220,38,38,.15);--color-info: #2563eb;--color-info-50: rgba(37,99,235,.08);--color-info-100: rgba(37,99,235,.15);--color-neutral-0: #1a1a1a;--color-neutral-50: #fafafa;--color-neutral-100: #f5f5f5;--color-neutral-200: #e5e5e5;--color-neutral-300: #d4d4d4;--color-neutral-400: #a3a3a3;--color-neutral-500: #737373;--color-neutral-600: #525252;--color-neutral-700: #404040;--color-neutral-800: #e5e5e5;--color-neutral-900: #f1f1f3;--color-neutral-950: #f7f7f8;--shadow-xs: 0 1px 2px 0 rgba(0,0,0,.05);--shadow-sm: 0 1px 3px 0 rgba(0,0,0,.08), 0 1px 2px 0 rgba(0,0,0,.04);--shadow-md: 0 4px 12px -2px rgba(0,0,0,.08), 0 2px 6px -1px rgba(0,0,0,.05);--shadow-lg: 0 12px 24px -4px rgba(0,0,0,.1), 0 4px 8px -2px rgba(0,0,0,.05);--shadow-xl: 0 24px 48px -8px rgba(0,0,0,.12), 0 8px 16px -4px rgba(0,0,0,.06)}[data-theme=light] .btn-primary{background:var(--color-neutral-0);color:#fff}[data-theme=light] .btn-primary:hover{background:#404040}[data-theme=light] .btn-secondary{background:var(--color-neutral-100);color:var(--color-text);border-color:var(--color-border-light)}[data-theme=light] .btn-secondary:hover{background:var(--color-neutral-200)}[data-theme=light] .sidebar-link.active{background:var(--color-neutral-100);color:var(--color-text)}[data-theme=light] .badge-neutral,[data-theme=light] .status-cancelled{background:var(--color-neutral-100);color:var(--color-neutral-600)}[data-theme=light] .spinner{border-color:var(--color-neutral-200);border-top-color:var(--color-text)}[data-theme=light] .time-slot.selected{background:var(--color-text);color:#fff;border-color:var(--color-text)}[data-theme=light] .table-shape{border-color:#0000001f}[data-theme=light] .table-shape.selected{box-shadow:0 0 0 2px var(--color-text),var(--shadow-lg)}[data-theme=light] .modal-overlay{background:#0006}[data-theme=light] .sidebar-overlay{background:#00000059}[data-theme=light] .auth-page:before{background:radial-gradient(circle,rgba(0,0,0,.03) 0%,transparent 70%)}[data-theme=light] ::-webkit-scrollbar-thumb{background:var(--color-neutral-300)}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:var(--color-neutral-400)}[data-theme=light] .input:focus,[data-theme=light] .select:focus,[data-theme=light] .textarea:focus{box-shadow:0 0 0 3px #0000000f}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;width:100%}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{line-height:1.2;font-weight:600;color:var(--color-neutral-0)}h1{font-size:1.625rem;font-weight:600;letter-spacing:-.02em}h2{font-size:1.375rem;font-weight:600;letter-spacing:-.01em}h3{font-size:1.125rem;font-weight:600}h4{font-size:1rem;font-weight:600}a{color:var(--color-neutral-300);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-neutral-0)}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}input,select,textarea{font-family:inherit;font-size:inherit}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.flex-1{flex:1}.flex-wrap{flex-wrap:wrap}.hidden{display:none}.w-full{width:100%}.text-center{text-align:center}.text-right{text-align:right}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.font-semibold{font-weight:600}.font-medium{font-weight:500}.font-bold{font-weight:700}.text-muted{color:var(--color-text-muted)}.text-secondary{color:var(--color-text-secondary)}.text-white{color:var(--color-neutral-0)}.text-error{color:var(--color-error)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.mt-2{margin-top:8px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mt-8{margin-top:32px}.mb-2{margin-bottom:8px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.mb-8{margin-bottom:32px}.p-0{padding:0}.p-2{padding:8px}.p-3{padding:12px}.p-4{padding:16px}.p-6{padding:24px}.p-8{padding:32px}.px-4{padding-left:16px;padding-right:16px}.py-2{padding-top:8px;padding-bottom:8px}.py-3{padding-top:12px;padding-bottom:12px}.py-4{padding-top:16px;padding-bottom:16px}.px-3{padding-left:12px;padding-right:12px}.py-1{padding-top:4px;padding-bottom:4px}.px-2{padding-left:8px;padding-right:8px}.cursor-pointer{cursor:pointer}.cursor-move{cursor:move}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-x-auto{overflow-x:auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 18px;border-radius:var(--radius-md);font-size:.8125rem;font-weight:500;transition:all var(--transition-fast);white-space:nowrap;border:1px solid transparent;letter-spacing:.01em}.btn-primary{background:var(--color-neutral-0);color:var(--color-bg)}.btn-primary:hover{background:var(--color-neutral-200)}.btn-secondary{background:var(--color-neutral-800);color:var(--color-neutral-200);border-color:var(--color-border-light)}.btn-secondary:hover{background:var(--color-neutral-700)}.btn-danger{background:var(--color-error);color:#fff}.btn-danger:hover{background:var(--color-error-light)}.btn-success{background:var(--color-success);color:var(--color-bg)}.btn-success:hover{background:var(--color-success-light)}.btn-warning{background:var(--color-warning);color:var(--color-bg)}.btn-warning:hover{background:var(--color-warning-light)}.btn-ghost{background:transparent;color:var(--color-text-secondary)}.btn-ghost:hover{background:var(--color-surface-hover);color:var(--color-text)}.btn-sm{padding:5px 12px;font-size:.75rem}.btn-lg{padding:11px 24px;font-size:.9375rem}.btn:disabled{opacity:.4;cursor:not-allowed}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.card-hover:hover{border-color:var(--color-border-light);transition:border-color var(--transition-fast)}.input,.select,.textarea{width:100%;padding:9px 12px;border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);font-size:.8125rem}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--color-neutral-500);box-shadow:0 0 0 3px #ffffff0a}.input::placeholder,.textarea::placeholder{color:var(--color-text-muted)}.input:disabled,.select:disabled,.textarea:disabled{background:var(--color-surface-hover);color:var(--color-text-muted);cursor:not-allowed}.textarea{min-height:80px;resize:vertical}.label{display:block;font-size:.75rem;font-weight:500;color:var(--color-text-secondary);margin-bottom:6px;letter-spacing:.01em}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-full);font-size:.6875rem;font-weight:500;letter-spacing:.02em}.badge-primary{background:var(--color-info-50);color:var(--color-info)}.badge-success{background:var(--color-success-50);color:var(--color-success)}.badge-warning{background:var(--color-warning-50);color:var(--color-warning)}.badge-error{background:var(--color-error-50);color:var(--color-error)}.badge-neutral{background:var(--color-neutral-800);color:var(--color-neutral-400)}.badge-info{background:var(--color-info-50);color:var(--color-info)}.table-container{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface)}table{width:100%;border-collapse:collapse;font-size:.8125rem}thead{background:var(--color-surface-hover)}th{text-align:left;padding:10px 16px;font-weight:500;color:var(--color-text-secondary);font-size:.6875rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-border);white-space:nowrap}td{padding:10px 16px;border-bottom:1px solid var(--color-border);color:var(--color-text)}tbody tr:hover{background:var(--color-surface-hover)}tbody tr:last-child td{border-bottom:none}.sidebar{width:var(--sidebar-width);background:var(--color-surface);color:var(--color-text-secondary);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;transition:width var(--transition-normal);overflow-y:auto;border-right:1px solid var(--color-border)}.sidebar-header{padding:16px 20px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--color-border)}.sidebar-logo{width:44px;height:44px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-logo img{width:100%;height:100%;object-fit:contain}.sidebar-title{font-size:.8125rem;font-weight:600;color:var(--color-neutral-0);white-space:nowrap;letter-spacing:.01em}.sidebar-subtitle{font-size:.6875rem;color:var(--color-text-muted)}.sidebar-nav{flex:1;padding:8px 6px;overflow-y:auto}.sidebar-section-label{padding:14px 14px 4px;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted)}.sidebar-link{display:flex;align-items:center;gap:10px;padding:8px 14px;border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:.8125rem;font-weight:500;transition:all var(--transition-fast);margin-bottom:1px;text-decoration:none}.sidebar-link:hover{background:var(--color-surface-hover);color:var(--color-text);text-decoration:none}.sidebar-link.active{background:var(--color-neutral-800);color:var(--color-neutral-0)}.sidebar-link svg{flex-shrink:0;width:16px;height:16px}.sidebar-footer{padding:12px 16px;border-top:1px solid var(--color-border)}.app-layout{display:flex;min-height:100vh}.main-content{flex:1;margin-left:var(--sidebar-width);display:flex;flex-direction:column;min-width:0}.topbar{height:var(--header-height);background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;padding:0 20px;position:sticky;top:0;z-index:101;gap:16px}.page-content{padding:24px;flex:1}.page-title{font-size:1.5rem;font-weight:600;color:var(--color-neutral-0);letter-spacing:-.02em}.page-subtitle{font-size:.8125rem;color:var(--color-text-secondary);margin-top:4px}.status-pending{background:var(--color-warning-50);color:var(--color-warning)}.status-confirmed{background:var(--color-success-50);color:var(--color-success)}.status-rejected{background:var(--color-error-50);color:var(--color-error)}.status-cancelled{background:var(--color-neutral-800);color:var(--color-neutral-400)}.status-completed{background:var(--color-info-50);color:var(--color-info)}.status-no_show{background:var(--color-error-50);color:var(--color-error)}.status-tentative{background:var(--color-warning-50);color:var(--color-warning)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.form-group{display:flex;flex-direction:column}.form-group-full{grid-column:1 / -1}@media (max-width: 768px){.form-grid,.form-grid-3{grid-template-columns:1fr}.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.topbar{z-index:50}.main-content{margin-left:0}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px;animation:fadeIn .15s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:600px;width:100%;max-height:90vh;overflow-y:auto;animation:slideUp .2s ease}.modal-lg{max-width:900px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border)}.modal-title{font-size:1.125rem;font-weight:600;color:var(--color-neutral-0)}.modal-body{padding:20px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid var(--color-border)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.empty-state{text-align:center;padding:48px 24px;color:var(--color-text-muted)}.empty-state svg{margin-bottom:16px;color:var(--color-neutral-700)}.spinner{width:32px;height:32px;border:2px solid var(--color-neutral-800);border-top-color:var(--color-neutral-0);border-radius:50%;animation:spin .7s linear infinite}.spinner-sm{width:16px;height:16px;border-width:2px}@keyframes spin{to{transform:rotate(360deg)}}.alert{padding:10px 14px;border-radius:var(--radius-md);font-size:.8125rem;display:flex;align-items:center;gap:10px}.alert-error{background:var(--color-error-50);color:var(--color-error);border:1px solid var(--color-error-100)}.alert-success{background:var(--color-success-50);color:var(--color-success);border:1px solid var(--color-success-100)}.alert-warning{background:var(--color-warning-50);color:var(--color-warning);border:1px solid var(--color-warning-100)}.alert-info{background:var(--color-info-50);color:var(--color-info);border:1px solid var(--color-info-100)}.floor-plan-canvas{position:relative;background:var(--color-surface);border:1px dashed var(--color-border-light);border-radius:var(--radius-lg);min-height:500px;overflow:hidden}.floor-plan-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(var(--color-border) 1px,transparent 1px),linear-gradient(90deg,var(--color-border) 1px,transparent 1px);background-size:20px 20px;opacity:.5;pointer-events:none}.table-shape{position:absolute;display:flex;align-items:center;justify-content:center;cursor:move;transition:box-shadow var(--transition-fast),transform var(--transition-fast);-webkit-user-select:none;user-select:none;font-size:.6875rem;font-weight:600;color:#fff;border:2px solid rgba(255,255,255,.15)}.table-shape:hover{box-shadow:var(--shadow-lg);z-index:10}.table-shape.selected{box-shadow:0 0 0 2px var(--color-neutral-0),var(--shadow-lg);z-index:10}.table-shape-round,.table-shape-oval{border-radius:50%}.table-shape-square,.table-shape-rectangle{border-radius:var(--radius-sm)}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:var(--color-border);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.calendar-day{background:var(--color-surface);min-height:100px;padding:8px;font-size:.75rem}.calendar-day-header{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;margin-bottom:1px}.calendar-day-header>div{background:var(--color-surface-hover);padding:8px;text-align:center;font-weight:500;font-size:.6875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary)}.calendar-day-today{background:var(--color-surface-hover)}.calendar-day-other-month{background:var(--color-bg);color:var(--color-text-muted)}.calendar-event{padding:2px 6px;margin-top:2px;border-radius:var(--radius-sm);font-size:.625rem;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timeline-container{display:flex;flex-direction:column;gap:4px;overflow-x:auto}.timeline-row{display:grid;grid-template-columns:120px 1fr;gap:8px;align-items:center;padding:8px 12px;border-radius:var(--radius-md);transition:background var(--transition-fast)}.timeline-row:hover{background:var(--color-surface-hover)}.restaurant-selector{display:flex;align-items:center;gap:8px;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:6px 12px;cursor:pointer;transition:all var(--transition-fast);min-width:0}.restaurant-selector:hover{border-color:var(--color-neutral-600);background:var(--color-surface-hover)}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:18px;display:flex;flex-direction:column;gap:6px;transition:border-color var(--transition-fast)}.stat-card:hover{border-color:var(--color-border-light)}.stat-label{font-size:.6875rem;color:var(--color-text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:1.75rem;font-weight:700;color:var(--color-neutral-0);line-height:1;letter-spacing:-.02em}.stat-icon{width:32px;height:32px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.public-page{position:relative;min-height:100vh;background:var(--color-bg)}.public-theme-toggle{position:absolute;top:12px;right:16px;z-index:5;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--color-border-light);border-radius:var(--radius-full);background:var(--color-surface);color:var(--color-text-secondary);font-size:.75rem;font-weight:600;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.public-theme-toggle:hover{border-color:var(--color-neutral-500);background:var(--color-surface-hover);color:var(--color-text)}.public-page-embed{background:radial-gradient(circle at 50% -20%,var(--color-surface-hover) 0,transparent 46%),var(--color-bg)}.public-embed-header{max-width:600px;margin:0 auto;padding:14px 12px 0;border-top:4px solid transparent}.public-embed-brand{display:flex;align-items:center;gap:10px;min-width:0}.public-embed-mark{width:36px;height:36px;flex:0 0 36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:#fff;font-size:1rem;font-weight:700;box-shadow:0 4px 12px #0003}.public-embed-kicker{margin:0 0 2px;color:var(--color-text-muted);font-size:.625rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.public-embed-title{margin:0;overflow-wrap:anywhere;font-size:1.05rem;line-height:1.2}.public-embed-description{margin:3px 0 0;overflow-wrap:anywhere;color:var(--color-text-secondary);font-size:.75rem;line-height:1.4}.public-embed-rule{width:40px;height:2px;margin-top:12px;border-radius:var(--radius-full);opacity:.85}.public-embed-logo{object-fit:cover;background:var(--color-surface)}.logo-upload-area{display:flex;flex-direction:column;gap:12px}.logo-upload-drop{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:96px;padding:16px;border:1px dashed var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-secondary);font-size:.8125rem;font-weight:500;cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast),background var(--transition-fast)}.logo-upload-drop:hover:not(:disabled){border-color:var(--color-neutral-500);color:var(--color-text);background:var(--color-surface-hover)}.logo-upload-drop:disabled{opacity:.5;cursor:not-allowed}.logo-preview-row{display:flex;align-items:center;gap:16px}.logo-preview-img{width:72px;height:72px;border-radius:var(--radius-md);object-fit:cover;border:1px solid var(--color-border);flex:0 0 72px}.logo-preview-actions{display:flex;flex-wrap:wrap;gap:8px}.public-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:20px 0}.public-content{max-width:1200px;margin:0 auto;padding:32px 24px}.reservation-step{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:28px}.public-page-embed .reservation-step{padding:16px;border-radius:var(--radius-md)}.time-slot{padding:8px 14px;border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:all var(--transition-fast);text-align:center;font-weight:500;font-size:.8125rem}.public-page-embed .time-slot{padding:5px 8px;font-size:.75rem;border-radius:var(--radius-sm)}.time-slot:hover:not(:disabled){border-color:var(--color-neutral-500);background:var(--color-surface-hover)}.time-slot.selected{background:var(--color-neutral-0);color:var(--color-bg);border-color:var(--color-neutral-0)}.time-slot:disabled{opacity:.3;cursor:not-allowed;text-decoration:line-through}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-neutral-800);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-neutral-700)}.sidebar-toggle{display:none;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:6px;cursor:pointer;color:var(--color-text)}.theme-toggle{display:flex;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:6px;cursor:pointer;color:var(--color-text);transition:all var(--transition-fast)}.theme-toggle:hover{border-color:var(--color-neutral-600);background:var(--color-surface-hover)}@media (max-width: 768px){.sidebar-toggle{display:flex}}.dropdown{position:absolute;top:100%;right:0;margin-top:6px;background:var(--color-surface-raised);border:1px solid var(--color-border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:200px;z-index:200;overflow:hidden}.restaurant-dropdown{left:0;right:auto}.dropdown-item{display:flex;align-items:center;gap:10px;padding:8px 14px;font-size:.8125rem;color:var(--color-text);cursor:pointer;transition:background var(--transition-fast)}.dropdown-item:hover{background:var(--color-surface-hover)}.dropdown-divider{height:1px;background:var(--color-border);margin:4px 0}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--color-border);margin-bottom:20px}.tab{padding:8px 16px;font-size:.8125rem;font-weight:500;color:var(--color-text-secondary);cursor:pointer;border-bottom:2px solid transparent;transition:all var(--transition-fast)}.tab:hover{color:var(--color-text)}.tab.active{color:var(--color-neutral-0);border-bottom-color:var(--color-neutral-0)}.checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.8125rem}.checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-neutral-0)}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:99}@media (max-width: 768px){.sidebar-overlay.show{display:block}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg);padding:24px;position:relative;overflow:hidden}.auth-page:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:600px;height:600px;background:radial-gradient(circle,rgba(255,255,255,.02) 0%,transparent 70%);pointer-events:none}.btn-xl{padding:14px 24px;font-size:1rem;font-weight:600;border-radius:var(--radius-lg)}.badge-lg{font-size:.8125rem;padding:4px 12px;font-weight:600}.input-lg{padding:12px 14px;font-size:1rem}.res-page,.rf-page{max-width:1040px}.res-header{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:32px}.res-header .page-subtitle{font-size:.9375rem}.res-step,.rf-step{margin-bottom:24px}.rf-step{padding:24px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl)}.res-step-label,.rf-step-title{display:flex;align-items:center;gap:12px;margin-bottom:16px;font-size:1.0625rem;font-weight:600;color:var(--color-text);line-height:1.2}.res-step-num{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:28px;height:28px;border-radius:var(--radius-full);background:var(--color-text);color:var(--color-surface);font-size:.875rem;font-weight:700}.day-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px}.day-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 8px;border-radius:var(--radius-lg);border:2px solid var(--color-border-light);background:var(--color-surface);color:var(--color-text);transition:transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.day-btn:hover{border-color:var(--color-text-secondary);transform:translateY(-1px)}.day-btn.is-today{border-color:var(--color-info)}.day-btn.active{background:var(--color-text);border-color:var(--color-text);color:var(--color-surface)}.day-btn-name{font-size:1rem;font-weight:700;line-height:1.2;display:inline-flex}.day-btn-date{font-size:.875rem;opacity:.8}.day-btn-count{font-size:.75rem;font-weight:600;padding:2px 8px;border-radius:var(--radius-full);background:var(--color-surface-hover);color:var(--color-text-secondary)}.day-btn.active .day-btn-count{background:#7f7f7f40;color:inherit}.day-extra{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px}.day-extra-input,.rf-inline-input{width:auto;min-width:180px;font-size:1rem}.rf-inline-input{margin-top:12px}.pill{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;min-height:44px;border-radius:var(--radius-full);border:2px solid var(--color-border-light);background:var(--color-surface);color:var(--color-text);font-size:.9375rem;font-weight:500;transition:all var(--transition-fast)}.pill:hover{border-color:var(--color-text-secondary)}.pill.active{background:var(--color-text);border-color:var(--color-text);color:var(--color-surface)}.res-search{position:relative;flex:1;min-width:240px;margin-left:auto}.res-search>svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--color-text-muted)}.res-search .input{padding:12px 40px;font-size:.9375rem;border-radius:var(--radius-full)}.res-search-clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--color-text-secondary);display:inline-flex;padding:4px}.res-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.segmented{display:inline-flex;flex-wrap:wrap;gap:4px;padding:4px;border-radius:var(--radius-lg);background:var(--color-surface-hover);border:1px solid var(--color-border)}.segmented-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;min-height:44px;border-radius:var(--radius-md);font-size:.9375rem;font-weight:500;color:var(--color-text-secondary);transition:all var(--transition-fast)}.segmented-btn:hover{color:var(--color-text)}.segmented-btn.active{background:var(--color-surface);color:var(--color-text);font-weight:600;box-shadow:var(--shadow-sm);outline:2px solid var(--color-text);outline-offset:-2px}.segmented-count{font-size:.75rem;font-weight:700;min-width:22px;padding:2px 6px;border-radius:var(--radius-full);background:var(--color-border-light);color:var(--color-text);text-align:center}.seg-open .segmented-count{background:var(--color-warning-100);color:var(--color-warning)}.segmented-sm .segmented-btn{padding:8px 12px;min-height:40px;font-size:.875rem}.res-sort{display:flex;align-items:center;gap:12px;color:var(--color-text-secondary);font-size:.875rem}.res-summary{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 16px;padding:24px 0 16px;border-top:1px solid var(--color-border);margin-top:8px}.res-summary h2{font-size:1.5rem;font-weight:700;color:var(--color-text);letter-spacing:-.02em;line-height:1.2}.res-summary p{color:var(--color-text-secondary);font-size:.9375rem;flex:1}.res-summary-open{color:var(--color-warning);font-weight:600}.res-empty{text-align:center;padding:56px 24px;color:var(--color-text-secondary);border:2px dashed var(--color-border-light);border-radius:var(--radius-xl)}.res-empty h3{margin:16px 0 8px;font-size:1.125rem;color:var(--color-text)}.res-day-group{margin-bottom:24px}.res-day-heading{font-size:1rem;font-weight:600;color:var(--color-text-secondary);margin:8px 0 12px}.res-list{list-style:none;display:flex;flex-direction:column;gap:8px}.res-row{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.res-row:hover{border-color:var(--color-border-light);box-shadow:var(--shadow-sm)}.res-row.is-cancelled{opacity:.6}.res-row-main{display:flex;align-items:center;gap:16px;width:100%;padding:16px 20px;text-align:left;color:inherit}.res-row-time{font-size:1.375rem;font-weight:700;font-variant-numeric:tabular-nums;min-width:64px;color:var(--color-text)}.res-row-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.res-row-name{font-size:1.0625rem;font-weight:600;color:var(--color-text)}.res-row-meta{font-size:.875rem;color:var(--color-text-secondary)}.res-row-warn{color:var(--color-warning);font-weight:600}.res-row-chevron{color:var(--color-text-muted);flex-shrink:0}.res-row-actions{display:flex;gap:8px;padding:0 20px 16px 100px}.res-row-actions .btn{padding:10px 20px;font-size:.9375rem;font-weight:600}.res-detail-hero{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--color-border)}.res-detail-time{font-size:2.25rem;font-weight:700;line-height:1.2;color:var(--color-text);font-variant-numeric:tabular-nums}.res-detail-hero>div:nth-child(2){flex:1;min-width:180px}.res-detail-day{font-size:1.0625rem;font-weight:600;color:var(--color-text)}.res-detail-sub{color:var(--color-text-secondary);margin-top:4px}.res-detail-list{display:grid;grid-template-columns:160px minmax(0,1fr);gap:12px 16px;margin-bottom:24px;font-size:.9375rem}.res-detail-list dt{color:var(--color-text-secondary)}.res-detail-list dd{color:var(--color-text);font-weight:500;overflow-wrap:anywhere}.res-detail-list a{display:inline-flex;align-items:center;gap:8px;color:var(--color-info)}.res-detail-note{white-space:pre-wrap}.res-detail-question{font-size:1.0625rem;font-weight:600;margin-bottom:12px;color:var(--color-text)}.res-action-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}.res-detail-hint{margin-top:12px;font-size:.8125rem;color:var(--color-text-muted)}.time-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px}.time-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:12px 8px;border-radius:var(--radius-md);border:2px solid var(--color-border-light);background:var(--color-surface);color:var(--color-text);font-size:1rem;font-weight:600;font-variant-numeric:tabular-nums;transition:all var(--transition-fast)}.time-btn:hover{border-color:var(--color-text-secondary)}.time-btn.active{background:var(--color-text);border-color:var(--color-text);color:var(--color-surface)}.rf-sub{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:24px;padding-top:20px;border-top:1px solid var(--color-border)}.rf-sub-label{font-weight:600;color:var(--color-text)}.rf-sub-hint{color:var(--color-text-secondary);font-size:.875rem}.party-picker{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px}.party-step{width:56px;height:56px;border-radius:var(--radius-full);display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--color-border-light);background:var(--color-surface);color:var(--color-text);transition:all var(--transition-fast)}.party-step:hover:not(:disabled){border-color:var(--color-text)}.party-step:disabled{opacity:.3;cursor:not-allowed}.party-value{display:flex;flex-direction:column;align-items:center;min-width:88px}.party-value strong{font-size:2.5rem;line-height:1.2;color:var(--color-text);font-variant-numeric:tabular-nums}.party-value span{color:var(--color-text-secondary);font-size:.875rem}.party-quick{display:flex;flex-wrap:wrap;gap:8px}.party-quick .pill{min-width:48px;justify-content:center;font-weight:600}.rf-optional{font-weight:400;color:var(--color-text-muted)}.rf-more{margin-top:20px}.rf-more summary{cursor:pointer;font-weight:600;color:var(--color-info);padding:8px 0}.rf-confirm{position:sticky;bottom:0;display:flex;flex-direction:column;gap:16px;padding:20px 24px;margin-top:8px;background:var(--color-surface);border:2px solid var(--color-text);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);z-index:5}.rf-confirm-text{font-size:1.0625rem;color:var(--color-text-secondary);line-height:1.5}.rf-confirm-text strong{color:var(--color-text)}@media (max-width: 768px){.day-strip{grid-template-columns:repeat(4,1fr)}.res-search{margin-left:0;min-width:100%}.res-sort{width:100%;flex-wrap:wrap}.res-row-main{padding:14px 16px;gap:12px;flex-wrap:wrap}.res-row-time{font-size:1.125rem;min-width:52px}.res-row-actions{padding:0 16px 14px}.res-row-actions .btn{flex:1}.res-row-chevron{display:none}.res-detail-list{grid-template-columns:minmax(0,1fr);gap:4px}.res-detail-list dd{margin-bottom:8px}.rf-step,.rf-confirm{padding:16px}.rf-confirm .btn{flex:1}}.export-ranges{display:flex;flex-wrap:wrap;gap:8px}.export-custom{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;max-width:440px}.export-preview{margin-top:24px;padding:16px 20px;border-radius:var(--radius-lg);background:var(--color-surface-hover);border:1px solid var(--color-border)}.export-preview-range{font-size:1.125rem;font-weight:700;color:var(--color-text)}.export-preview-count{margin-top:4px;color:var(--color-text-secondary)}.rd-toast{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:var(--radius-lg);margin-bottom:16px;font-size:.9375rem;font-weight:500;animation:rd-toast-in .2s ease}.rd-toast-success{background:var(--color-success-50);color:var(--color-success);border:1px solid var(--color-success-100)}.rd-toast-info{background:var(--color-info-50);color:var(--color-info);border:1px solid var(--color-info-100)}@keyframes rd-toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.rd-table-cell{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rd-table-current{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:var(--radius-md);background:var(--color-success-50);color:var(--color-success);font-weight:600;border:1px solid var(--color-success-100)}.rd-table-remove{background:none;border:none;color:var(--color-text-muted);font-size:.8125rem;text-decoration:underline;cursor:pointer;padding:2px 4px}.rd-table-remove:hover{color:var(--color-error)}.rd-table-add{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-md);border:2px dashed var(--color-border-light);background:transparent;color:var(--color-text-secondary);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.rd-table-add:hover{border-color:var(--color-text-secondary);color:var(--color-text)}.rd-table-picker{padding:16px;margin-bottom:20px;border-radius:var(--radius-lg);background:var(--color-surface-hover);border:1px solid var(--color-border)}.rd-table-picker-title{font-weight:600;margin-bottom:12px;color:var(--color-text)}.rd-no-tables{color:var(--color-text-secondary);padding:12px 0}.rd-table-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.rd-table-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;border-radius:var(--radius-md);border:2px solid var(--color-border-light);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:all var(--transition-fast)}.rd-table-btn:hover:not(:disabled){border-color:var(--color-text-secondary)}.rd-table-btn.active{border-color:var(--color-success);background:var(--color-success-50)}.rd-table-btn:disabled{opacity:.5;cursor:default}.rd-table-btn.is-small{opacity:.4}.rd-table-btn-name{font-weight:700;font-size:1rem}.rd-table-btn-cap{font-size:.75rem;color:var(--color-text-secondary)}.rd-table-btn-hint{font-size:.6875rem;font-weight:600;color:var(--color-warning)}.rd-table-btn.active .rd-table-btn-hint{color:var(--color-success)}.res-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:14px 24px;border-radius:var(--radius-lg);background:var(--color-text);color:var(--color-surface);font-weight:600;font-size:.9375rem;z-index:1100;box-shadow:var(--shadow-lg);animation:res-toast-in .25s ease}@keyframes res-toast-in{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}.rd-capacity{display:flex;gap:12px;align-items:flex-start;padding:16px;margin-bottom:16px;border-radius:var(--radius-lg);border:1px solid var(--color-border)}.rd-capacity.is-ok{background:var(--color-success-50);border-color:var(--color-success)}.rd-capacity.is-tight{background:var(--color-warning-50);border-color:var(--color-warning)}.rd-capacity-icon{flex-shrink:0;margin-top:2px}.rd-capacity.is-ok .rd-capacity-icon{color:var(--color-success)}.rd-capacity.is-tight .rd-capacity-icon{color:var(--color-warning)}.rd-capacity-title{font-weight:700;font-size:1rem;color:var(--color-text);line-height:1.3}.rd-capacity-text{font-size:.875rem;color:var(--color-text-secondary);margin-top:4px;line-height:1.5}.rd-capacity-bar{height:8px;margin-top:10px;border-radius:999px;background:var(--color-surface-hover);overflow:hidden}.rd-capacity-bar span{display:block;height:100%;border-radius:inherit;transition:width .4s ease}.rd-capacity.is-ok .rd-capacity-bar span{background:var(--color-success)}.rd-capacity.is-tight .rd-capacity-bar span{background:var(--color-warning)}.sidebar-more-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:16px;padding:10px 14px;background:none;border:1px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:.75rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.sidebar-more-toggle:hover{color:var(--color-text);background:var(--color-surface-hover)}.sidebar-more-toggle svg{transition:transform var(--transition-fast)}.sidebar-more-toggle.open svg{transform:rotate(180deg)}.sidebar-more-list{margin-top:4px;animation:sidebar-more-in .2s ease}@keyframes sidebar-more-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.today-header-actions{display:flex;flex-wrap:wrap;gap:12px}.ac-panel{margin-bottom:24px;padding:20px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.ac-panel.has-urgent{border-color:var(--color-error);box-shadow:0 0 0 3px var(--color-error-50)}.ac-header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.ac-heading{font-size:1.25rem;font-weight:700;color:var(--color-text);line-height:1.2;margin:0}.ac-count{font-size:.875rem;font-weight:600;color:var(--color-text-secondary)}.has-urgent .ac-count{color:var(--color-error)}.ac-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.ac-item{display:flex;align-items:center;gap:16px;padding:16px;border-radius:var(--radius-md);border-left:4px solid var(--color-border);animation:ac-in .25s ease both}.ac-urgent{background:var(--color-error-50);border-left-color:var(--color-error)}.ac-warning{background:var(--color-warning-50);border-left-color:var(--color-warning)}.ac-info{background:var(--color-info-50);border-left-color:var(--color-info)}.ac-icon{flex-shrink:0;display:flex}.ac-urgent .ac-icon{color:var(--color-error);animation:ac-pulse 2s ease-in-out infinite}.ac-warning .ac-icon{color:var(--color-warning)}.ac-info .ac-icon{color:var(--color-info)}.ac-body{flex:1;min-width:0}.ac-title{font-size:1rem;font-weight:700;color:var(--color-text);line-height:1.3}.ac-text{font-size:.875rem;color:var(--color-text-secondary);line-height:1.5;margin-top:4px}.ac-actions{display:flex;gap:8px;flex-shrink:0}.ac-btn{min-height:44px;padding:0 16px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.ac-more{display:inline-flex;align-items:center;gap:6px;margin-top:12px;background:none;border:none;padding:8px 0;cursor:pointer;color:var(--color-text-secondary);font-size:.875rem;font-weight:600}.ac-more:hover{color:var(--color-text)}.ac-more svg{transition:transform var(--transition-fast)}.ac-more svg.is-open{transform:rotate(180deg)}.ac-clear{display:flex;align-items:center;gap:12px;background:var(--color-success-50);border-color:var(--color-success);color:var(--color-success);padding:16px 20px}.ac-clear-title{font-weight:700;color:var(--color-text)}.ac-clear-text{font-size:.875rem;color:var(--color-text-secondary)}.ac-failed{display:flex;align-items:center;gap:8px;font-size:.875rem;color:var(--color-text-secondary);padding:12px 16px}@keyframes ac-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes ac-pulse{0%,to{opacity:1}50%{opacity:.45}}@media (max-width: 720px){.ac-item{flex-wrap:wrap}.ac-actions{width:100%}.ac-btn{flex:1;justify-content:center}}@media (prefers-reduced-motion: reduce){.ac-item,.ac-urgent .ac-icon{animation:none}}

@media (max-width: 768px){
.res-header{margin-bottom:12px;align-items:center;gap:8px}
.res-header .page-subtitle{display:none}
.res-page .res-header .btn-secondary{display:none}
.res-header .btn-xl{padding:10px 14px;font-size:.9375rem}
.res-page .res-step{margin-bottom:12px}
.res-page .res-step-label{display:none}
.res-page .day-strip{display:flex;overflow-x:auto;gap:6px;padding-bottom:4px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.res-page .day-btn{flex:0 0 auto;min-width:72px;padding:8px 10px;gap:2px;scroll-snap-align:start}
.res-page .day-btn-name{font-size:.8125rem;white-space:nowrap;overflow:visible}
.res-page .day-extra{margin-top:8px;gap:6px}
.res-page .day-extra .pill{padding:6px 12px;font-size:.8125rem}
.res-page .res-search{flex:1 1 100%}
.res-page .res-toolbar{gap:8px}
.res-page .segmented{display:flex;flex-wrap:nowrap;overflow-x:auto;width:100%}
.res-page .segmented-btn{white-space:nowrap;flex:0 0 auto}
.res-page .res-sort{display:none}
.res-page .res-summary{margin:8px 0}
.res-row-actions{padding:0 12px 12px}
.res-row-actions .btn{flex:1 1 0;min-height:48px;justify-content:center;font-size:1rem}
.res-action-grid{position:sticky;bottom:0;z-index:2;background:var(--color-surface);padding-top:8px;padding-bottom:8px}
}
/* Heute im Restaurant: zwei Spalten mit kompakten Kacheln */
.st-cols{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:16px;align-items:start;margin-bottom:24px}
.st-col{min-width:0;padding:12px;background:var(--color-surface-hover);border:1px solid var(--color-border);border-radius:var(--radius-xl)}
.st-col-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:2px 4px 10px;font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary)}
.st-col-1 .st-col-title{color:var(--color-success)}
.st-col-empty{padding:6px 4px 4px;font-size:.9375rem;color:var(--color-text-secondary)}
.st-cols .res-list{gap:8px}
.st-cols .st-now{font-size:.8125rem;padding:2px 0}
.st-cols .res-list{gap:6px}
.st-cols-wrap{container-type:inline-size}
.st-page{max-width:1280px}
.st-tile-main{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:8px 8px 8px 12px}
.st-tile .res-row-time{font-size:1rem;min-width:44px}
.st-tile-info{flex:1 1 60px;min-width:0;display:flex;align-items:baseline;gap:8px;white-space:nowrap;overflow:hidden}
.st-tile .res-row-name{flex:0 0 auto;max-width:100%;font-size:.9375rem;font-weight:600;overflow:hidden;text-overflow:ellipsis}
.st-tile .res-row-meta{flex:0 4 auto;min-width:0;font-size:.8125rem;overflow:hidden;text-overflow:ellipsis}
.st-tile .st-open-pill{width:8px;height:8px;padding:0;font-size:0;background:var(--color-warning);align-self:center}
.st-tile-actions{display:flex;gap:6px;margin-left:auto}
.st-tile-actions .btn{min-height:34px;padding:6px 10px;gap:6px;font-size:.8125rem;white-space:nowrap}
.st-tile.st-row-open{border-left:4px solid var(--color-warning)}
.st-tile.st-row-here{border-left:4px solid var(--color-success)}
.st-tile.st-row-next{border:2px solid var(--color-info)}
.st-open-pill{flex-shrink:0;padding:1px 8px;border-radius:var(--radius-full);font-size:.6875rem;font-weight:700;background:var(--color-warning-100);color:var(--color-warning)}
@container (max-width: 720px){.st-cols{grid-template-columns:1fr}}
@media (max-width: 768px){.st-tile-actions{flex:1 1 100%}.st-tile-actions .btn{flex:1 1 0;justify-content:center;min-height:42px}}
/* Seitenleiste einklappbar (Desktop) */
.sidebar-collapse-btn{position:absolute;top:24px;right:-14px;z-index:5;width:28px;height:28px;display:flex;align-items:center;justify-content:center;padding:0;border:2px solid var(--color-surface);border-radius:var(--radius-full);background:var(--color-text);color:var(--color-surface);cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.25)}
.sidebar-collapse-btn:hover{transform:scale(1.08)}
.sidebar-collapse-btn:focus-visible{outline:2px solid var(--color-info);outline-offset:2px}
.sidebar-collapse-btn svg{transform:rotate(180deg);transition:transform var(--transition-fast)}
.sidebar-collapsed .sidebar-collapse-btn svg{transform:none}
.app-layout .main-content{transition:margin-left .2s ease}
@media (min-width: 769px){
.app-layout .sidebar{overflow:visible;z-index:102}
.app-layout .sidebar-nav{min-height:0}
.app-layout.sidebar-collapsed{--sidebar-width:68px}
.sidebar-collapsed .sidebar-header{padding:16px 0;justify-content:center}
.sidebar-collapsed .sidebar-header>div:not(.sidebar-logo){display:none}
.sidebar-collapsed .sidebar-logo{width:36px;height:36px}
.sidebar-collapsed .sidebar-section-label,.sidebar-collapsed .sidebar-footer{display:none}
.sidebar-collapsed .sidebar-nav{padding:8px}
.sidebar-collapsed .sidebar-link{justify-content:center;gap:0;padding:10px 0;font-size:0}
.sidebar-collapsed .sidebar-more-toggle{justify-content:center;padding:8px 0}
.sidebar-collapsed .sidebar-more-toggle span{display:none}
}
@media (max-width: 768px){.sidebar-collapse-btn{display:none}}
/* Heute im Restaurant: Tischuebersicht, Filter, kompakteres Layout */
.st-mini-tables{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:6px;margin-top:14px}
.st-mini{display:flex;flex-direction:column;gap:1px;min-width:0;padding:6px 8px;border:1px solid var(--color-border);border-left:5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}
.st-mini-num{font-weight:700;font-size:1rem;line-height:1.2;color:var(--color-text)}
.st-mini-sub{font-size:.75rem;line-height:1.3;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.st-mini-occupied{background:color-mix(in srgb,var(--table-occupied) 12%,var(--color-surface))}
.st-mini-reserved{background:color-mix(in srgb,var(--table-reserved) 12%,var(--color-surface))}
.st-mini-blocked,.st-mini-out_of_service{opacity:.6}
.st-filter{margin:0 0 16px}
.st-filter .seg-done .segmented-count{background:var(--color-success-100);color:var(--color-success)}
.st-page .res-header{margin-bottom:20px}
.st-page .res-step{margin-bottom:16px}
.st-page .res-step-label{margin-bottom:10px;font-size:1rem}
.st-page .day-strip{grid-template-columns:repeat(8,minmax(0,1fr));gap:6px}
.st-page .day-btn{padding:10px 4px}
.st-page .res-summary{padding:16px 0 12px}
.st-page .st-occupancy{margin-bottom:16px}
@media (max-width: 768px){
.st-page .page-subtitle{display:none}
.st-page .res-header{margin-bottom:12px}
.st-page .today-header-actions .btn-xl{padding:10px 14px;font-size:.9375rem}
.st-page .res-step-label{display:none}
.st-page .day-strip{display:flex;overflow-x:auto;gap:6px;padding-bottom:4px;scroll-snap-type:x proximity}
.st-page .day-btn{flex:0 0 auto;min-width:72px;padding:8px 10px;gap:2px;scroll-snap-align:start}
.st-page .day-btn-name{font-size:.8125rem;white-space:nowrap}
.st-filter{display:flex;flex-wrap:nowrap;overflow-x:auto;width:100%}
.st-filter .segmented-btn{white-space:nowrap;flex:0 0 auto;padding:8px 12px}
.st-mini-tables{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}
}

/* ---- Offene Anfragen ueberall sichtbar ---- */
.rv-nav-badge{margin-left:auto;min-width:22px;height:22px;padding:0 7px;border-radius:999px;background:var(--color-warning);color:#fff;font-size:.75rem;font-weight:700;line-height:22px;text-align:center;box-shadow:0 0 0 2px var(--color-surface)}
.sidebar-link{position:relative}
.sidebar-collapsed .rv-nav-badge{position:absolute;top:2px;right:6px;margin:0;min-width:18px;height:18px;line-height:18px;padding:0 4px;font-size:.6875rem}
.rv-pending-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 12px 5px 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--color-warning) 45%,transparent);background:color-mix(in srgb,var(--color-warning) 12%,var(--color-surface));color:var(--color-text);font-size:.8125rem;font-weight:600;text-decoration:none;white-space:nowrap}
.rv-pending-pill:hover{background:color-mix(in srgb,var(--color-warning) 22%,var(--color-surface))}
.rv-pending-pill svg{color:var(--color-warning)}
.rv-pending-pill-n{min-width:20px;height:20px;line-height:20px;padding:0 6px;border-radius:999px;background:var(--color-warning);color:#fff;font-size:.75rem;font-weight:700;text-align:center}
@media (max-width:640px){.rv-pending-pill-t{display:none}.rv-pending-pill{padding:4px 8px 4px 8px}}
.rv-pending-banner{display:flex;align-items:center;gap:14px;margin:16px 24px 0;padding:14px 18px;border-radius:14px;border:1px solid var(--color-warning);border-left-width:6px;background:color-mix(in srgb,var(--color-warning) 14%,var(--color-surface));color:var(--color-text)}
.rv-pending-count{flex:none;min-width:40px;height:40px;line-height:40px;border-radius:999px;background:var(--color-warning);color:#fff;font-size:1.125rem;font-weight:800;text-align:center}
.rv-pending-text{flex:1;min-width:0;font-size:.9375rem;line-height:1.4}
.rv-pending-text strong{font-size:1rem}
.rv-pending-btn{flex:none;padding:10px 18px;border-radius:10px;background:var(--color-warning);color:#fff;font-weight:700;font-size:.875rem;text-decoration:none;white-space:nowrap}
.rv-pending-btn:hover{filter:brightness(.95)}
@media (max-width:640px){.rv-pending-banner{margin:12px 12px 0;padding:12px;gap:10px;flex-wrap:wrap}.rv-pending-text{flex-basis:calc(100% - 60px)}.rv-pending-btn{width:100%;text-align:center}}

.st-has-note .st-tile-info{flex:0 1 auto}
.st-tile-note{flex:1 1 130px;min-width:0;font-size:.8125rem;line-height:1.3;color:var(--color-text-secondary);border-left:2px solid var(--color-border);padding-left:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.segmented.rv-seg-wrap{flex-wrap:wrap;overflow-x:visible}
.rv-custom-row{display:flex;align-items:center;gap:10px;margin-top:10px}
.rv-custom-input{width:110px;max-width:45vw}
.rv-custom-unit{font-size:.95rem;opacity:.8}

.rv-plan-el{position:absolute;display:flex;align-items:center;justify-content:center;border-radius:4px;color:#fff;font-size:.8125rem;font-weight:600;overflow:hidden;opacity:.92;border:1px solid rgba(0,0,0,.25);user-select:none;-webkit-user-select:none}
.rv-plan-el.is-editable{cursor:move}
.rv-plan-el.is-selected{outline:3px solid var(--color-info,#2563eb);outline-offset:2px}
.rv-plan-el-t{display:block;max-width:100%;padding:0 6px;text-align:center;line-height:1.15;overflow:hidden;text-overflow:ellipsis;pointer-events:none}

.rv-free-time{margin-top:18px;padding-top:14px;border-top:1px solid var(--color-border)}
.rv-free-time-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.rv-free-time-input{width:140px;max-width:50vw}
.rv-free-time-ok{color:var(--color-success);font-weight:600;font-size:.875rem}

.rv-bell{position:relative;display:inline-flex}
.rv-bell-btn{position:relative}
.rv-bell-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--color-danger,#dc2626);color:#fff;font-size:.6875rem;font-weight:700;line-height:18px;text-align:center;box-shadow:0 0 0 2px var(--color-surface,#fff)}
.rv-news-pop{position:absolute;right:0;top:calc(100% + 10px);z-index:80;width:min(420px,calc(100vw - 24px));max-height:min(72vh,600px);overflow:auto;background:var(--color-surface-raised,var(--color-surface,#fff));border:1px solid var(--color-border);border-radius:16px;box-shadow:0 18px 50px rgba(0,0,0,.22);padding:6px 0 10px}
.rv-news-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 8px;font-size:1rem;position:sticky;top:0;background:inherit}
.rv-news-x{border:0;background:transparent;color:var(--color-text-secondary);font-size:1.5rem;line-height:1;cursor:pointer;padding:0 4px}
.rv-news-empty{padding:14px 16px 8px;color:var(--color-text-secondary);font-size:.9375rem}
.rv-news-list{list-style:none;margin:0;padding:0}
.rv-news-item{padding:12px 16px;border-top:1px solid var(--color-border)}
.rv-news-item.is-new{background:color-mix(in srgb,var(--color-primary,#2563eb) 7%,transparent)}
.rv-news-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:.75rem;color:var(--color-text-secondary)}
.rv-news-cat{padding:2px 8px;border-radius:999px;font-weight:700;background:color-mix(in srgb,#2563eb 14%,transparent);color:#2563eb}
.rv-cat-feature{background:color-mix(in srgb,#16a34a 15%,transparent);color:#16a34a}
.rv-cat-improvement{background:color-mix(in srgb,#7c3aed 15%,transparent);color:#7c3aed}
.rv-cat-notice{background:color-mix(in srgb,#d97706 17%,transparent);color:#d97706}
.rv-news-new{margin-left:auto;padding:2px 8px;border-radius:999px;background:var(--color-danger,#dc2626);color:#fff;font-weight:700;font-size:.6875rem}
.rv-news-title{margin-top:6px;font-size:1rem;font-weight:700;line-height:1.3}
.rv-news-body{margin-top:4px;font-size:.9375rem;line-height:1.45;color:var(--color-text-secondary)}
.rv-news-body p{margin:4px 0}
.rv-news-body ul{margin:6px 0 4px;padding-left:20px}
.rv-news-body li{margin:2px 0}
@media (max-width:640px){.rv-bell{position:static}.rv-news-pop{position:fixed;right:12px;left:12px;top:64px;width:auto}}

.rv-legal-footer{display:flex;justify-content:center;flex-wrap:wrap;gap:4px;padding:14px 16px 18px;font-size:.75rem;color:var(--color-text-muted)}
.rv-legal-footer a{color:inherit;text-decoration:underline}
.rv-legal-block{margin-top:14px;padding-top:12px;border-top:1px solid var(--color-border)}
.rv-legal-block:first-of-type{border-top:0;padding-top:0}
.rv-legal-cur{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:4px 0 8px;font-size:.9375rem}
.rv-legal-url{overflow-wrap:anywhere;color:var(--color-text-secondary)}
.rv-legal-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px}
.rv-legal-row .input{flex:1 1 260px;min-width:0}

/* Tageskacheln (Heute im Restaurant, Reservierungen, Neue Reservierung, Warteliste): Text passt immer in die Kachel */
.day-btn{min-width:0}
.day-btn-name,.day-btn-date{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.st-page .day-strip{grid-template-columns:repeat(auto-fit,minmax(92px,1fr))}
.st-page .day-btn{padding:10px 8px}
@supports (container-type:inline-size){
.day-strip>.day-btn{container-type:inline-size}
.day-strip>.day-btn .day-btn-name{font-size:clamp(.6875rem,15.5cqi,1rem)}
}
@media (max-width:768px){
.day-strip{display:flex;overflow-x:auto;gap:6px;padding:0 28px 4px 0;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent)}
.day-strip>.day-btn{flex:0 0 auto;min-width:72px;padding:8px 10px;gap:2px;scroll-snap-align:start;container-type:normal}
.day-strip>.day-btn .day-btn-name{font-size:.8125rem;overflow:visible;text-overflow:clip}
/* Filterleisten umbrechen statt seitlich abschneiden: alle Filter sichtbar (dreifache Klasse schlaegt .res-page .segmented u. Ae.) */
.segmented.segmented.segmented{flex-wrap:wrap;overflow-x:visible;width:100%}
.segmented.segmented.segmented .segmented-btn{flex:1 1 auto;justify-content:center;white-space:nowrap}
}
/* Kalender: Tagesbereich mit Innenabstand statt Text am Rahmen */
.sc-day-panel{padding:4px 16px 16px}
@media (min-width:769px){.sc-day-panel{padding:4px 20px 20px}}
/* Oeffnungszeiten: bei wenig Platz (z. B. iPad hochkant mit Seitenleiste) untereinander statt aus dem Bild */
.sr-hours{container-type:inline-size}
@container (max-width:720px){.sr-hours-row{grid-template-columns:1fr;gap:10px}.sr-day-name,.sr-hours-row.is-closed .sr-times{padding-top:0}}
/* Buchungsseite (ohne Einbettung): Kalender zeigt alle sieben Tage (die Regel des Mitarbeiter-Kalenders machte die Spalten 100 px breit) */
.public-page .calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));width:100%;min-width:0;overflow:visible;background:transparent;border:0}
.public-page .calendar-day{min-height:0;min-width:0;padding:0;width:100%;height:auto}
.public-page .calendar-widget{min-width:0}
/* Kopfzeile auf dem Handy: Restaurantname lesbar, Symbole nicht gequetscht */
.topbar .restaurant-selector svg{flex-shrink:0}
.topbar .restaurant-selector span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:480px){
.topbar{padding:0 16px;gap:8px}
.topbar>div:first-child{gap:8px;min-width:0;flex:1 1 auto}
.topbar>div:first-child>div{min-width:0}
.topbar>div:last-child{gap:6px;flex:0 0 auto}
.topbar>div:last-child>.restaurant-selector{padding:4px;gap:0}
.topbar>div:last-child>.restaurant-selector>svg{display:none}
}

.rv-help-wrap{margin:-8px 0 0}
.rv-help-frame{display:block;width:100%;height:calc(100vh - 110px);height:calc(100dvh - 110px);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}
@media (max-width:768px){.rv-help-frame{height:calc(100dvh - 90px)}}

.rv-hs{position:relative;display:flex}
.rv-hs-trigger{display:inline-flex;align-items:center;gap:8px;height:36px;min-width:36px;padding:0 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-secondary);font:inherit;font-size:.875rem;cursor:pointer;white-space:nowrap}
.rv-hs-trigger:hover{border-color:var(--color-text-secondary);color:var(--color-text)}
.rv-hs-kbd{font:inherit;font-size:.6875rem;padding:1px 6px;border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-muted)}
.rv-hs-pop{position:absolute;right:0;top:calc(100% + 8px);z-index:300;width:min(560px,calc(100vw - 32px));max-height:min(640px,calc(100dvh - 90px));display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg,12px);box-shadow:0 16px 48px rgba(0,0,0,.28);overflow:hidden;text-align:left}
.rv-hs-form{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--color-border);color:var(--color-text-secondary)}
.rv-hs-input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--color-text);font:inherit;font-size:1rem;padding:6px 0}
.rv-hs-input::-webkit-search-cancel-button{display:none}
.rv-hs-x{border:0;background:transparent;color:var(--color-text-muted);font-size:1.5rem;line-height:1;cursor:pointer;padding:0 4px}
.rv-hs-body{overflow-y:auto;padding:8px 12px 12px;display:flex;flex-direction:column;gap:10px}
.rv-hs-hint{margin:4px 0;color:var(--color-text-secondary);font-size:.875rem;line-height:1.45}
.rv-hs-chips{display:flex;flex-wrap:wrap;gap:6px}
.rv-hs-chip{display:inline-block;padding:5px 10px;border:1px solid var(--color-border);border-radius:999px;background:transparent;color:var(--color-text);font:inherit;font-size:.8125rem;text-decoration:none;cursor:pointer}
.rv-hs-chip:hover{border-color:var(--color-text-secondary)}
.rv-hs-sec{display:flex;flex-direction:column;gap:2px}
.rv-hs-sec-h{font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);margin:4px 0 2px}
.rv-hs-item{display:flex;flex-direction:column;gap:1px;padding:8px 10px;border-radius:var(--radius-md);color:var(--color-text);text-decoration:none;min-width:0}
.rv-hs-item:hover,.rv-hs-item:focus-visible{background:var(--color-surface-hover)}
.rv-hs-page{flex-direction:row;align-items:baseline;justify-content:space-between;gap:12px}
.rv-hs-c{font-size:.6875rem;color:var(--color-text-muted)}
.rv-hs-t{font-weight:600;font-size:.9375rem;overflow-wrap:anywhere}
.rv-hs-w{font-size:.8125rem;color:var(--color-text-secondary);text-align:right}
.rv-hs-s{font-size:.8125rem;color:var(--color-text-secondary);line-height:1.4;overflow-wrap:anywhere}
.rv-hs-askbtn{width:100%;text-align:left;padding:10px 12px;border:1px dashed var(--color-border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-primary,#3b82f6) 8%,transparent);color:var(--color-text);font:inherit;font-size:.9375rem;font-weight:600;cursor:pointer;overflow-wrap:anywhere}
.rv-hs-askbtn:disabled{opacity:.6;cursor:default}
.rv-hs-answer{padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-hover);font-size:.9rem;line-height:1.5;display:flex;flex-direction:column;gap:8px}
.rv-hs-answer.is-busy{flex-direction:row;align-items:center;gap:10px;color:var(--color-text-secondary)}
.rv-hs-answer.is-err{color:var(--color-text-secondary)}
.rv-hs-answer-h{font-size:.75rem;font-weight:600;color:var(--color-text-secondary)}
.rv-hs-md p{margin:0 0 6px}.rv-hs-md ol,.rv-hs-md ul{margin:0 0 6px;padding-left:20px}.rv-hs-md li{margin:2px 0}
.rv-hs-note{margin:0;font-size:.75rem;color:var(--color-text-muted)}
.rv-hs-foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:8px;border-top:1px solid var(--color-border);font-size:.875rem}
.rv-hs-foot a{color:var(--color-text-secondary)}
@media (max-width:1100px){.rv-hs-kbd{display:none}}
@media (max-width:900px){.rv-hs-trigger-t{display:none}.rv-hs-trigger{padding:0;justify-content:center;width:36px}}
@media (max-width:640px){.rv-hs-pop{position:fixed;left:8px;right:8px;top:60px;width:auto;max-height:calc(100dvh - 72px)}}

.rv-more-party{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-top:10px;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.9375rem;color:var(--color-text-secondary)}
.rv-more-party select{width:auto;min-width:150px;flex:0 1 auto}
.rv-more-party.is-sel{border-width:2px;color:var(--color-text)}
/* Prenotia v2.1 - Design-Systeme: Technisch (Standard), Smaragd, Bernstein, Hoher Kontrast; Klassisch = altes Design */
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/inter-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/inter-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/inter-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/inter-latin-700-normal.woff2) format("woff2")}
html[data-design]:not([data-design="klassisch"]){
  --ac:#3978E8;--ac-h:#5A94FF;--ac-s:#76A9FF;--ac-t:#76A9FF;--ac-on:#fff;--rc:4px;--rb:3px;--rs:2px;--rs-lime:#B7E46D;
  --font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  --font-mono:"Geist Mono","JetBrains Mono","SF Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --color-bg:#0B0D11;--color-surface:#11151B;--color-surface-hover:#1B2430;--color-surface-raised:#161C25;
  --color-border:#232A35;--color-border-light:#2A313D;
  --color-text:#F1F3F7;--color-text-secondary:#9AA4B3;--color-text-muted:#707B8C;
  --color-accent:var(--ac);--color-accent-muted:var(--ac-s);--color-primary:var(--ac);
  --color-neutral-0:#F1F3F7;--color-neutral-50:#161C25;--color-neutral-100:#1B2430;--color-neutral-200:#222B38;--color-neutral-300:#2A313D;--color-neutral-400:#707B8C;--color-neutral-500:#707B8C;--color-neutral-600:#9AA4B3;--color-neutral-700:#2A313D;--color-neutral-800:#1B2430;
  --color-danger:#F0707A;
  --color-success:#B7E46D;--color-success-light:#9ACB52;--color-success-50:rgba(183,228,109,.07);--color-success-100:rgba(183,228,109,.13);
  --color-warning:#E8B54A;--color-warning-light:#E8B54A;--color-warning-50:rgba(232,181,74,.08);--color-warning-100:rgba(232,181,74,.15);
  --color-error:#F0707A;--color-error-light:#E5484D;--color-error-50:rgba(240,112,122,.08);--color-error-100:rgba(240,112,122,.15);
  --color-info:#76A9FF;--color-info-50:rgba(118,169,255,.08);--color-info-100:rgba(118,169,255,.15);
  --radius-sm:2px;--radius-md:3px;--radius-lg:4px;--radius-xl:4px;
  --shadow-xs:none;--shadow-sm:none;
  --shadow-md:0 4px 14px rgba(0,0,0,.35);
  --shadow-lg:0 8px 24px rgba(0,0,0,.45);
  --shadow-xl:0 16px 40px rgba(0,0,0,.55);
  --transition-fast:.15s ease;--transition-normal:.2s ease;--transition-slow:.25s ease;
  --header-height:52px;
  --rs-sel-bg:color-mix(in srgb,var(--ac) 14%,transparent);--rs-sel-fg:var(--color-text);--rs-grid:rgba(154,164,179,.06);
  --table-free:#9ACB52;--table-reserved:#5A94FF;--table-occupied:#E5484D;--table-waiting:#E8B54A;
}
html[data-design]:not([data-design="klassisch"])[data-theme=light]{
  --color-bg:#F3F5F8;--color-surface:#FFFFFF;--color-surface-hover:#EEF1F6;--color-surface-raised:#FFFFFF;
  --color-border:#DDE2EA;--color-border-light:#C9D0DB;
  --color-text:#0B0D11;--color-text-secondary:#4B5565;--color-text-muted:#7B8696;
  --color-accent:var(--ac);--color-accent-muted:var(--ac-s);--color-primary:var(--ac);
  --color-neutral-0:#0B0D11;--color-neutral-500:#7B8696;--color-neutral-700:#4B5565;--color-neutral-800:#E4E8EF;
  --color-danger:#C23A44;
  --color-success:#4D7A12;--color-success-light:#6AA11E;--color-success-50:rgba(106,161,30,.09);--color-success-100:rgba(106,161,30,.16);
  --color-warning:#9A6700;--color-warning-light:#B7791F;--color-warning-50:rgba(183,121,31,.09);--color-warning-100:rgba(183,121,31,.16);
  --color-error:#B42332;--color-error-light:#D1323F;--color-error-50:rgba(209,50,63,.07);--color-error-100:rgba(209,50,63,.13);
  --color-info:var(--ac-t);--color-info-50:rgba(31,95,201,.07);--color-info-100:rgba(31,95,201,.13);
  --shadow-md:0 4px 14px rgba(11,13,17,.08);
  --shadow-lg:0 8px 24px rgba(11,13,17,.12);
  --shadow-xl:0 16px 40px rgba(11,13,17,.18);
  --ac:#2F6BDB;--ac-h:#2559B8;--ac-s:#2F6BDB;--ac-t:#1B4FA8;--ac-on:#fff;--color-neutral-50:#F3F5F8;--color-neutral-100:#EEF1F6;--color-neutral-200:#E4E8EF;--color-neutral-300:#C9D0DB;--color-neutral-400:#7B8696;--color-neutral-600:#4B5565;--rs-sel-bg:color-mix(in srgb,var(--ac) 10%,transparent);--rs-sel-fg:var(--ac-t);--rs-grid:rgba(11,13,17,.05);
  --table-free:#6AA11E;--table-reserved:var(--ac);--table-occupied:#D1323F;--table-waiting:#B7791F;
}
:where(html[data-design]:not([data-design="klassisch"])){-webkit-text-size-adjust:100%}
:where(html[data-design]:not([data-design="klassisch"])) body{font-family:var(--font-sans);letter-spacing:-.005em;font-feature-settings:"cv11","ss03","calt";background:var(--color-bg)}
:where(html[data-design]:not([data-design="klassisch"])) ::selection{background:var(--ac);color:var(--ac-on)}
:where(html[data-design]:not([data-design="klassisch"])) h1,:where(html[data-design]:not([data-design="klassisch"])) h2,:where(html[data-design]:not([data-design="klassisch"])) h3,:where(html[data-design]:not([data-design="klassisch"])) h4,:where(html[data-design]:not([data-design="klassisch"])) h5,:where(html[data-design]:not([data-design="klassisch"])) h6{letter-spacing:-.018em;color:var(--color-text);font-weight:600}
:where(html[data-design]:not([data-design="klassisch"])) h1,:where(html[data-design]:not([data-design="klassisch"])) .page-title{font-weight:600;letter-spacing:-.022em}
:where(html[data-design]:not([data-design="klassisch"])) .page-title{font-size:1.5rem}
:where(html[data-design]:not([data-design="klassisch"])) .page-subtitle{color:var(--color-text-secondary)}
:where(html[data-design]:not([data-design="klassisch"])) :focus-visible{outline:1px solid var(--ac-h);outline-offset:2px;border-radius:var(--rs)}
:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] :focus-visible{outline-color:var(--ac)}
:where(html[data-design]:not([data-design="klassisch"])) ::-webkit-scrollbar{width:10px;height:10px}
:where(html[data-design]:not([data-design="klassisch"])) ::-webkit-scrollbar-thumb{background:var(--color-border-light);border-radius:0;border:2px solid var(--color-bg)}
:where(html[data-design]:not([data-design="klassisch"])) ::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}
:where(html[data-design]:not([data-design="klassisch"])) ::-webkit-scrollbar-track{background:transparent}
:where(html[data-design]:not([data-design="klassisch"])) .stat-value,:where(html[data-design]:not([data-design="klassisch"])) .st-number-value,:where(html[data-design]:not([data-design="klassisch"])) .sg-stat-value,:where(html[data-design]:not([data-design="klassisch"])) .st-mini-num,:where(html[data-design]:not([data-design="klassisch"])) .res-row-time,:where(html[data-design]:not([data-design="klassisch"])) .res-detail-time,:where(html[data-design]:not([data-design="klassisch"])) .time-btn,:where(html[data-design]:not([data-design="klassisch"])) .time-slot,:where(html[data-design]:not([data-design="klassisch"])) .sa-count-value,:where(html[data-design]:not([data-design="klassisch"])) .party-value,:where(html[data-design]:not([data-design="klassisch"])) .sg-pill-count,:where(html[data-design]:not([data-design="klassisch"])) .segmented-count{font-variant-numeric:tabular-nums}
:where(html[data-design]:not([data-design="klassisch"])) .st-number-value,:where(html[data-design]:not([data-design="klassisch"])) .stat-value,:where(html[data-design]:not([data-design="klassisch"])) .sa-count-value{letter-spacing:-.03em;font-weight:600}
:where(html[data-design]:not([data-design="klassisch"])) .sidebar-section-label,:where(html[data-design]:not([data-design="klassisch"])) .up-summary-label,:where(html[data-design]:not([data-design="klassisch"])) .sa-diff-key,:where(html[data-design]:not([data-design="klassisch"])) .sa-perm-code,:where(html[data-design]:not([data-design="klassisch"])) .sa-pre-label,:where(html[data-design]:not([data-design="klassisch"])) .sr-legend-label,:where(html[data-design]:not([data-design="klassisch"])) .rv-news-ver,:where(html[data-design]:not([data-design="klassisch"])) .rv-news-date,:where(html[data-design]:not([data-design="klassisch"])) .res-step-num,:where(html[data-design]:not([data-design="klassisch"])) .sc-grid-head,:where(html[data-design]:not([data-design="klassisch"])) .calendar-day-header{font-family:var(--font-mono);letter-spacing:.04em}
:where(html[data-design]:not([data-design="klassisch"])) .sidebar-section-label{font-size:.625rem;letter-spacing:.1em}
:where(html[data-design]:not([data-design="klassisch"])) .btn{border-radius:var(--rb);font-weight:500;letter-spacing:-.003em;box-shadow:none;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}
:where(html[data-design]:not([data-design="klassisch"])) .btn-primary,:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .btn-primary{background:var(--ac);color:var(--ac-on);border-color:var(--ac)}
:where(html[data-design]:not([data-design="klassisch"])) .btn-primary:hover:not(:disabled),:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .btn-primary:hover:not(:disabled){background:var(--ac-h);border-color:var(--ac-h)}
:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .btn-primary{background:var(--ac);border-color:var(--ac)}
:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .btn-primary:hover:not(:disabled){background:var(--ac-h);border-color:var(--ac-h)}
:where(html[data-design]:not([data-design="klassisch"])) .btn-secondary,:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .btn-secondary{background:var(--color-surface-raised);color:var(--color-text);border-color:var(--color-border-light)}
:where(html[data-design]:not([data-design="klassisch"])) .btn-secondary:hover:not(:disabled),:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .btn-secondary:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-text-muted)}
:where(html[data-design]:not([data-design="klassisch"])) .btn-ghost{color:var(--color-text-secondary)}
:where(html[data-design]:not([data-design="klassisch"])) .btn-ghost:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text)}
:where(html[data-design]:not([data-design="klassisch"])) .btn-danger{background:transparent;color:var(--color-error);border-color:var(--color-error)}
:where(html[data-design]:not([data-design="klassisch"])) .btn-danger:hover:not(:disabled){background:var(--color-error-light);color:#fff;border-color:var(--color-error-light)}
:where(html[data-design]:not([data-design="klassisch"])) .btn-success{background:transparent;color:var(--color-success);border-color:var(--color-success)}
:where(html[data-design]:not([data-design="klassisch"])) .btn-success:hover:not(:disabled){background:var(--color-success-100)}
:where(html[data-design]:not([data-design="klassisch"])) .btn-warning{background:transparent;color:var(--color-warning);border-color:var(--color-warning)}
:where(html[data-design]:not([data-design="klassisch"])) .btn-warning:hover:not(:disabled){background:var(--color-warning-100)}
:where(html[data-design]:not([data-design="klassisch"])) .btn:disabled{opacity:.45}
:where(html[data-design]:not([data-design="klassisch"])) .input,:where(html[data-design]:not([data-design="klassisch"])) .select,:where(html[data-design]:not([data-design="klassisch"])) .textarea,:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .input,:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .select,:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .textarea{background:var(--color-bg);border-color:var(--color-border-light);border-radius:var(--rb)}
:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .input,:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .select,:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .textarea{background:#fff}
:where(html[data-design]:not([data-design="klassisch"])) .input:hover:not(:disabled),:where(html[data-design]:not([data-design="klassisch"])) .select:hover:not(:disabled),:where(html[data-design]:not([data-design="klassisch"])) .textarea:hover:not(:disabled){border-color:var(--color-text-muted)}
:where(html[data-design]:not([data-design="klassisch"])) .input:focus,:where(html[data-design]:not([data-design="klassisch"])) .select:focus,:where(html[data-design]:not([data-design="klassisch"])) .textarea:focus,:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .input:focus,:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .select:focus,:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .textarea:focus{border-color:var(--ac);box-shadow:0 0 0 1px var(--ac)}
:where(html[data-design]:not([data-design="klassisch"])) .label,:where(html[data-design]:not([data-design="klassisch"])) label.label{font-weight:500;color:var(--color-text-secondary)}
:where(html[data-design]:not([data-design="klassisch"])) input[type=checkbox],:where(html[data-design]:not([data-design="klassisch"])) input[type=radio]{accent-color:var(--ac)}
:where(html[data-design]:not([data-design="klassisch"])) .card,:where(html[data-design]:not([data-design="klassisch"])) .stat-card,:where(html[data-design]:not([data-design="klassisch"])) .st-number,:where(html[data-design]:not([data-design="klassisch"])) .table-container,:where(html[data-design]:not([data-design="klassisch"])) .res-row,:where(html[data-design]:not([data-design="klassisch"])) .ac-panel,:where(html[data-design]:not([data-design="klassisch"])) .reservation-step,:where(html[data-design]:not([data-design="klassisch"])) .sa-card,:where(html[data-design]:not([data-design="klassisch"])) .st-col,:where(html[data-design]:not([data-design="klassisch"])) .sg-hero,:where(html[data-design]:not([data-design="klassisch"])) .modal,:where(html[data-design]:not([data-design="klassisch"])) .sc-day-panel{
  background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--rc);box-shadow:none}
:where(html[data-design]:not([data-design="klassisch"])) .card-hover:hover,:where(html[data-design]:not([data-design="klassisch"])) .res-row:hover,:where(html[data-design]:not([data-design="klassisch"])) .st-number:hover,:where(html[data-design]:not([data-design="klassisch"])) .stat-card:hover{border-color:var(--color-border-light);box-shadow:none}
:where(html[data-design]:not([data-design="klassisch"])) .card-hover:hover,:where(html[data-design]:not([data-design="klassisch"])) .res-row:hover,:where(html[data-design]:not([data-design="klassisch"])) a.st-number:hover{background:var(--color-surface-raised)}
:where(html[data-design]:not([data-design="klassisch"])) .st-number{transition:border-color var(--transition-fast),background var(--transition-fast)}
:where(html[data-design]:not([data-design="klassisch"])) .modal{border-radius:var(--rc);box-shadow:var(--shadow-xl)}
:where(html[data-design]:not([data-design="klassisch"])) .modal-overlay{background:rgba(5,7,10,.72);backdrop-filter:none}
:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .modal-overlay{background:rgba(11,13,17,.4)}
:where(html[data-design]:not([data-design="klassisch"])) .modal-header,:where(html[data-design]:not([data-design="klassisch"])) .modal-footer{border-color:var(--color-border)}
:where(html[data-design]:not([data-design="klassisch"])) .dropdown{background:var(--color-surface-raised);border-color:var(--color-border-light);border-radius:var(--rb);box-shadow:var(--shadow-lg)}
:where(html[data-design]:not([data-design="klassisch"])) .dropdown-item:hover{background:var(--color-surface-hover)}
:where(html[data-design]:not([data-design="klassisch"])) table th{font-family:var(--font-mono);font-weight:500;letter-spacing:.04em;text-transform:uppercase;font-size:.6875rem}
:where(html[data-design]:not([data-design="klassisch"])) .sidebar{background:var(--color-surface);border-right:1px solid var(--color-border)}
:where(html[data-design]:not([data-design="klassisch"])) .sidebar-header{padding:14px 18px;border-bottom-color:var(--color-border)}
:where(html[data-design]:not([data-design="klassisch"])) .sidebar-title{font-weight:600;font-size:.9375rem;letter-spacing:-.02em}
:where(html[data-design]:not([data-design="klassisch"])) .sidebar-subtitle{color:var(--color-text-muted)}
:where(html[data-design]:not([data-design="klassisch"])) .sidebar-link{border-radius:var(--rb);color:var(--color-text-secondary);padding:7px 12px 7px 14px;font-weight:500}
:where(html[data-design]:not([data-design="klassisch"])) .sidebar-link:hover{background:var(--color-surface-hover);color:var(--color-text)}
:where(html[data-design]:not([data-design="klassisch"])) .sidebar-link.active,:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .sidebar-link.active{background:var(--color-surface-hover);color:var(--color-text);font-weight:500;box-shadow:none}
:where(html[data-design]:not([data-design="klassisch"])) .sidebar-link.active::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;border-radius:0;background:var(--ac)}
:where(html[data-design]:not([data-design="klassisch"])) .sidebar-link.active svg{color:var(--ac-s)}
:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .sidebar-link.active svg{color:var(--ac)}
:where(html[data-design]:not([data-design="klassisch"])) .sidebar-footer a:hover{color:var(--ac-s)}
:where(html[data-design]:not([data-design="klassisch"])) .topbar{background:var(--color-bg);border-bottom:1px solid var(--color-border);backdrop-filter:none}
:where(html[data-design]:not([data-design="klassisch"])) .theme-toggle{border-radius:var(--rb);background:var(--color-surface-raised);border-color:var(--color-border-light)}
:where(html[data-design]:not([data-design="klassisch"])) .theme-toggle:hover{background:var(--color-surface-hover);border-color:var(--color-text-muted)}
:where(html[data-design]:not([data-design="klassisch"])) .rv-nav-badge,:where(html[data-design]:not([data-design="klassisch"])) .rv-bell-badge{background:var(--ac);color:var(--ac-on);border-radius:var(--rs);font-family:var(--font-mono);font-weight:600;box-shadow:0 0 0 2px var(--color-surface)}
:where(html[data-design]:not([data-design="klassisch"])) .tab.active{color:var(--color-text);border-bottom-color:var(--ac)}
:where(html[data-design]:not([data-design="klassisch"])) .time-slot,:where(html[data-design]:not([data-design="klassisch"])) .time-btn,:where(html[data-design]:not([data-design="klassisch"])) .day-btn,:where(html[data-design]:not([data-design="klassisch"])) .pill,:where(html[data-design]:not([data-design="klassisch"])) .sc-cell,:where(html[data-design]:not([data-design="klassisch"])) .party-step{border-width:1px;border-radius:var(--rb);background:var(--color-surface);transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}
:where(html[data-design]:not([data-design="klassisch"])) .time-slot:hover:not(:disabled),:where(html[data-design]:not([data-design="klassisch"])) .time-btn:hover:not(:disabled),:where(html[data-design]:not([data-design="klassisch"])) .day-btn:hover,:where(html[data-design]:not([data-design="klassisch"])) .sc-cell:hover,:where(html[data-design]:not([data-design="klassisch"])) .party-step:hover:not(:disabled),:where(html[data-design]:not([data-design="klassisch"])) .pill:hover{border-color:var(--ac);background:var(--color-surface-hover);transform:none}
:where(html[data-design]:not([data-design="klassisch"])) .time-slot.selected,:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .time-slot.selected,:where(html[data-design]:not([data-design="klassisch"])) .time-btn.selected,:where(html[data-design]:not([data-design="klassisch"])) .time-btn.active,:where(html[data-design]:not([data-design="klassisch"])) .day-btn.selected,:where(html[data-design]:not([data-design="klassisch"])) .day-btn.active,:where(html[data-design]:not([data-design="klassisch"])) .pill.active,:where(html[data-design]:not([data-design="klassisch"])) .pill.selected,:where(html[data-design]:not([data-design="klassisch"])) .pill[aria-pressed=true],:where(html[data-design]:not([data-design="klassisch"])) .sc-cell.selected,:where(html[data-design]:not([data-design="klassisch"])) .sc-cell.active{background:var(--rs-sel-bg);color:var(--rs-sel-fg);border-color:var(--ac);box-shadow:inset 0 0 0 1px var(--ac)}
:where(html[data-design]:not([data-design="klassisch"])) .time-slot.selected *,:where(html[data-design]:not([data-design="klassisch"])) .time-btn.selected *,:where(html[data-design]:not([data-design="klassisch"])) .time-btn.active *,:where(html[data-design]:not([data-design="klassisch"])) .day-btn.selected *,:where(html[data-design]:not([data-design="klassisch"])) .day-btn.active *,:where(html[data-design]:not([data-design="klassisch"])) .pill.active *,:where(html[data-design]:not([data-design="klassisch"])) .pill.selected *{color:inherit}
:where(html[data-design]:not([data-design="klassisch"])) .party-step{border-radius:var(--rb)}
:where(html[data-design]:not([data-design="klassisch"])) .segmented{background:var(--color-surface);border-color:var(--color-border);border-radius:var(--rc);padding:3px;gap:2px}
:where(html[data-design]:not([data-design="klassisch"])) .segmented-btn{border-radius:var(--rb)}
:where(html[data-design]:not([data-design="klassisch"])) .segmented-btn.active,:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .segmented-btn.active{background:var(--rs-sel-bg);color:var(--rs-sel-fg);outline:none;box-shadow:inset 0 0 0 1px var(--ac);font-weight:600}
:where(html[data-design]:not([data-design="klassisch"])) .segmented-count{background:var(--color-surface-hover);border-radius:var(--rs);font-family:var(--font-mono);font-weight:500}
:where(html[data-design]:not([data-design="klassisch"])) .segmented-btn.active .segmented-count{background:color-mix(in srgb,var(--ac) 28%,transparent);color:inherit}
:where(html[data-design]:not([data-design="klassisch"])) .badge{border-radius:var(--rs);font-weight:500;letter-spacing:.01em;border:1px solid transparent;font-size:.6875rem}
:where(html[data-design]:not([data-design="klassisch"])) .badge-primary{background:var(--rs-sel-bg);color:var(--ac-s);border-color:color-mix(in srgb,var(--ac) 35%,transparent)}
:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .badge-primary{color:var(--ac-t)}
:where(html[data-design]:not([data-design="klassisch"])) .status-pending,:where(html[data-design]:not([data-design="klassisch"])) .badge-warning{border-color:rgba(232,181,74,.3)}
:where(html[data-design]:not([data-design="klassisch"])) .status-confirmed,:where(html[data-design]:not([data-design="klassisch"])) .badge-success{border-color:rgba(183,228,109,.28)}
:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .status-confirmed,:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .badge-success{border-color:rgba(77,122,18,.3)}
:where(html[data-design]:not([data-design="klassisch"])) .status-rejected,:where(html[data-design]:not([data-design="klassisch"])) .status-no_show,:where(html[data-design]:not([data-design="klassisch"])) .badge-error{border-color:rgba(240,112,122,.3)}
:where(html[data-design]:not([data-design="klassisch"])) .alert{border-radius:var(--rb);border:1px solid transparent}
:where(html[data-design]:not([data-design="klassisch"])) .alert-error{border-color:rgba(240,112,122,.32)}
:where(html[data-design]:not([data-design="klassisch"])) .alert-success{border-color:rgba(183,228,109,.3)}
:where(html[data-design]:not([data-design="klassisch"])) .alert-warning{border-color:rgba(232,181,74,.32)}
:where(html[data-design]:not([data-design="klassisch"])) .alert-info{border-color:rgba(118,169,255,.32)}
:where(html[data-design]:not([data-design="klassisch"])) .ac-item{border-radius:var(--rb);border-left-width:2px}
:where(html[data-design]:not([data-design="klassisch"])) .ac-urgent .ac-icon{animation:none}
:where(html[data-design]:not([data-design="klassisch"])) .rv-pending-banner{border-radius:var(--rc);border:1px solid var(--color-border-light);border-left:2px solid var(--color-warning);background:var(--color-surface);box-shadow:none}
:where(html[data-design]:not([data-design="klassisch"])) .rv-pending-banner .btn{border-radius:var(--rb)}
:where(html[data-design]:not([data-design="klassisch"])) .rv-pending-pill-n{background:var(--ac);color:var(--ac-on);border-radius:var(--rs)}
:where(html[data-design]:not([data-design="klassisch"])) .st-open-pill{border-radius:var(--rs)}
:where(html[data-design]:not([data-design="klassisch"])) .rv-news-pop{border-radius:var(--rc);box-shadow:var(--shadow-xl);background:var(--color-surface-raised);border-color:var(--color-border-light)}
:where(html[data-design]:not([data-design="klassisch"])) .rv-news-item.is-new{background:var(--rs-sel-bg)}
:where(html[data-design]:not([data-design="klassisch"])) .rv-news-cat{border-radius:var(--rs);background:var(--rs-sel-bg);color:var(--ac-s);font-family:var(--font-mono);font-weight:500}
:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .rv-news-cat{color:var(--ac-t)}
:where(html[data-design]:not([data-design="klassisch"])) .rv-cat-feature{background:var(--color-success-100);color:var(--color-success)}
:where(html[data-design]:not([data-design="klassisch"])) .rv-cat-improvement{background:var(--color-info-100);color:var(--color-info)}
:where(html[data-design]:not([data-design="klassisch"])) .rv-cat-notice{background:var(--color-warning-100);color:var(--color-warning)}
:where(html[data-design]:not([data-design="klassisch"])) .rv-news-new{background:var(--ac);color:var(--ac-on);border-radius:var(--rs);font-family:var(--font-mono)}
:where(html[data-design]:not([data-design="klassisch"])) .spinner{border-color:var(--color-border-light);border-top-color:var(--ac)}
:where(html[data-design]:not([data-design="klassisch"])) .empty-state svg{color:var(--color-text-muted)}
:where(html[data-design]:not([data-design="klassisch"])) .status-pending .dot,:where(html[data-design]:not([data-design="klassisch"])) .sr-dot{border-radius:1px}
:where(html[data-design]:not([data-design="klassisch"])) .auth-page{background:var(--color-bg)}
:where(html[data-design]:not([data-design="klassisch"])) .auth-page::before{content:"";position:absolute;inset:0;width:auto;height:auto;transform:none;background-image:linear-gradient(var(--rs-grid) 1px,transparent 1px),linear-gradient(90deg,var(--rs-grid) 1px,transparent 1px);background-size:48px 48px;background-position:center top;-webkit-mask-image:linear-gradient(180deg,#000,transparent 85%);mask-image:linear-gradient(180deg,#000,transparent 85%)}
:where(html[data-design]:not([data-design="klassisch"])) .auth-page .card{position:relative;z-index:1;border-radius:var(--rc);box-shadow:var(--shadow-lg);background:var(--color-surface)}
:where(html[data-design]:not([data-design="klassisch"])) .auth-page h1{letter-spacing:-.025em}
:where(html[data-design]:not([data-design="klassisch"])) .public-header{background:var(--color-bg);backdrop-filter:none}
:where(html[data-design]:not([data-design="klassisch"])) .reservation-step{border-radius:var(--rc)}
:where(html[data-design]:not([data-design="klassisch"])) .res-step-num{border-radius:var(--rs);background:var(--color-surface-hover);color:var(--ac-s);border:1px solid var(--color-border-light);font-weight:500}
:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .res-step-num{color:var(--ac)}
:where(html[data-design]:not([data-design="klassisch"])) .public-embed-mark{border-radius:var(--rb);box-shadow:none}
:where(html[data-design]:not([data-design="klassisch"])) .floor-plan-canvas,:where(html[data-design]:not([data-design="klassisch"])) .sr-canvas{border-color:var(--color-border-light);border-radius:var(--rc)}
:where(html[data-design]:not([data-design="klassisch"])) .table-shape.selected{box-shadow:0 0 0 2px var(--ac)}
:where(html[data-design]:not([data-design="klassisch"])) .rv-plan-el{border-radius:var(--rs);opacity:.9}
:where(html[data-design]:not([data-design="klassisch"])) .rv-plan-el.is-selected{outline:2px solid var(--ac)}
@keyframes rs-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
:where(html[data-design]:not([data-design="klassisch"])) .page-content>*{animation:rs-in .2s ease both}
:where(html[data-design]:not([data-design="klassisch"])) .auth-page .card,:where(html[data-design]:not([data-design="klassisch"])) .public-page .reservation-step{animation:rs-in .22s ease both}
@media (prefers-reduced-motion:reduce){:where(html[data-design]:not([data-design="klassisch"])) *,:where(html[data-design]:not([data-design="klassisch"])) *::before,:where(html[data-design]:not([data-design="klassisch"])) *::after{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media (max-width:768px){:where(html[data-design]:not([data-design="klassisch"])) .page-content>*{animation:none}}
:where(html[data-design]:not([data-design="klassisch"])) a{color:var(--ac-s)}
:where(html[data-design]:not([data-design="klassisch"])[data-theme=light]) a{color:var(--ac-t)}
:where(html[data-design]:not([data-design="klassisch"])) [style*="color: var(--color-neutral-100)"]{color:var(--color-text)!important}
:where(html[data-design]:not([data-design="klassisch"])) .public-theme-toggle{border-radius:var(--rb)}
:where(html[data-design]:not([data-design="klassisch"])) .public-page [style*="border-radius: var(--radius-full)"]{border-radius:var(--rb)!important}
:where(html[data-design]:not([data-design="klassisch"])) .public-page .party-size-btn,:where(html[data-design]:not([data-design="klassisch"])) .public-page .calendar-day,:where(html[data-design]:not([data-design="klassisch"])) .public-page .calendar-nav-btn{border-radius:var(--rb);border-width:1px}
:where(html[data-design]:not([data-design="klassisch"])) .public-page .party-size-btn:hover:not(.selected),:where(html[data-design]:not([data-design="klassisch"])) .public-page .calendar-day:hover:not(.disabled):not(.other-month):not(.selected),:where(html[data-design]:not([data-design="klassisch"])) .public-page .calendar-nav-btn:hover:not(:disabled){border-color:var(--ac);background:var(--color-surface-hover)}
:where(html[data-design]:not([data-design="klassisch"])) .public-page .calendar-widget{border-radius:var(--rc);background:var(--color-surface)}
:where(html[data-design]:not([data-design="klassisch"])) .public-page .calendar-day.selected{transform:none}
:where(html[data-design]:not([data-design="klassisch"])) .public-page .calendar-day.disabled{background:transparent;opacity:.35}
:where(html[data-design]:not([data-design="klassisch"])) .public-page .calendar-weekday-header{font-family:var(--font-mono)}
:where(html[data-design]:not([data-design="klassisch"])) .rv-pending-btn{background:var(--ac);color:var(--ac-on);border-color:var(--ac);border-radius:var(--rb);box-shadow:none}
:where(html[data-design]:not([data-design="klassisch"])) .rv-pending-btn:hover{background:var(--ac-h);border-color:var(--ac-h)}
:where(html[data-design]:not([data-design="klassisch"]))[data-theme=light] .rv-pending-btn{background:var(--ac);border-color:var(--ac)}



/* ===================== Design-Systeme (Auswahl unter Einstellungen) ===================== */
/* Smaragd: gleiche Struktur wie Technisch, gruener Akzent */
html[data-design="smaragd"]:root{--ac:#2DBE7E;--ac-h:#4ADE9A;--ac-s:#6EE7B7;--ac-t:#6EE7B7;--ac-on:#04130C}
html[data-design="smaragd"]:root[data-theme=light]{--ac:#0F7B4F;--ac-h:#0B6340;--ac-s:#0F7B4F;--ac-t:#0B5F3E;--ac-on:#fff}

/* Bernstein: warm, weich, Serifen-Ueberschriften */
html[data-design="bernstein"]:root{
  --ac:#F0B429;--ac-h:#F7C948;--ac-s:#F6C85F;--ac-t:#F6C85F;--ac-on:#1A1203;
  --rc:14px;--rb:10px;--rs:6px;
  --radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;
  --font-head:Georgia,"Times New Roman",serif;
  --color-bg:#14110D;--color-surface:#1B1712;--color-surface-hover:#2A2319;--color-surface-raised:#221D16;
  --color-border:#2D261C;--color-border-light:#3C3326;
  --color-text:#F5EFE6;--color-text-secondary:#B8AC9A;--color-text-muted:#8A7F6E;
  --color-neutral-0:#F5EFE6;--color-neutral-50:#221D16;--color-neutral-100:#2A2319;--color-neutral-200:#332B1F;--color-neutral-300:#3C3326;--color-neutral-400:#8A7F6E;--color-neutral-500:#8A7F6E;--color-neutral-600:#B8AC9A;--color-neutral-700:#3C3326;--color-neutral-800:#2A2319;
  --rs-grid:rgba(184,172,154,.06)}
html[data-design="bernstein"]:root[data-theme=light]{
  --ac:#B45309;--ac-h:#92400E;--ac-s:#B45309;--ac-t:#92400E;--ac-on:#fff;
  --color-bg:#F6F1E8;--color-surface:#FFFDF8;--color-surface-hover:#EFE8DA;--color-surface-raised:#FFFFFF;
  --color-border:#E2D9C8;--color-border-light:#CFC4AE;
  --color-text:#1F1A12;--color-text-secondary:#5B5243;--color-text-muted:#8B8272;
  --color-neutral-0:#1F1A12;--color-neutral-50:#F1EBDF;--color-neutral-100:#EBE3D3;--color-neutral-200:#E2D9C8;--color-neutral-300:#CFC4AE;--color-neutral-400:#8B8272;--color-neutral-500:#8B8272;--color-neutral-600:#5B5243;--color-neutral-700:#5B5243;--color-neutral-800:#EBE3D3;
  --rs-grid:rgba(31,26,18,.05)}
html[data-design="bernstein"] :is(h1,h2,h3,.page-title,.sidebar-title,.st-number-value,.stat-value){font-family:var(--font-head)}
html[data-design="bernstein"] .btn{font-weight:600}

/* Hoher Kontrast: kraeftige Linien, grosse Schrift, Gelb */
html[data-design="kontrast"]:root{
  --ac:#FFD60A;--ac-h:#FFE45C;--ac-s:#FFD60A;--ac-t:#FFD60A;--ac-on:#000;
  --color-bg:#000000;--color-surface:#0A0A0A;--color-surface-hover:#1C1C1C;--color-surface-raised:#121212;
  --color-border:#5B6270;--color-border-light:#A0A6B2;
  --color-text:#FFFFFF;--color-text-secondary:#E5E7EB;--color-text-muted:#C0C5CE;
  --color-neutral-0:#FFFFFF;--color-neutral-50:#121212;--color-neutral-100:#1C1C1C;--color-neutral-200:#262626;--color-neutral-300:#5B6270;--color-neutral-400:#C0C5CE;--color-neutral-500:#C0C5CE;--color-neutral-600:#E5E7EB;--color-neutral-700:#5B6270;--color-neutral-800:#1C1C1C;
  --rs-grid:rgba(255,255,255,.08)}
html[data-design="kontrast"]:root[data-theme=light]{
  --ac:#0B3FCC;--ac-h:#082F99;--ac-s:#0B3FCC;--ac-t:#0B3FCC;--ac-on:#fff;
  --color-bg:#FFFFFF;--color-surface:#FFFFFF;--color-surface-hover:#EDEFF3;--color-surface-raised:#FFFFFF;
  --color-border:#3B4250;--color-border-light:#1F2430;
  --color-text:#000000;--color-text-secondary:#1F2430;--color-text-muted:#3B4250;
  --color-neutral-0:#000000;--color-neutral-50:#F5F6F8;--color-neutral-100:#EDEFF3;--color-neutral-200:#DDE0E6;--color-neutral-300:#9AA1AE;--color-neutral-400:#3B4250;--color-neutral-500:#3B4250;--color-neutral-600:#1F2430;--color-neutral-700:#3B4250;--color-neutral-800:#EDEFF3;
  --rs-grid:rgba(0,0,0,.08)}
html[data-design="kontrast"]{font-size:106.25%}
html[data-design="kontrast"] :is(.card,.stat-card,.st-number,.table-container,.res-row,.ac-panel,.reservation-step,.sa-card,.st-col,.sg-hero,.modal,.sc-day-panel,.input,.select,.textarea,.btn-secondary,.time-slot,.time-btn,.day-btn,.pill,.sc-cell,.party-step,.segmented){border-width:2px}
html[data-design="kontrast"] :focus-visible{outline:3px solid var(--ac);outline-offset:2px}
html[data-design="kontrast"] .sidebar-link.active::before{width:4px}
html[data-design="kontrast"] .tab.active{border-bottom-width:3px}

/* ===================== Auswahlfeld in den Einstellungen (in jedem Design gleich gebaut) ===================== */
.rv-design-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin-top:14px}
.rv-design{display:flex;flex-direction:column;align-items:stretch;gap:8px;text-align:left;padding:12px;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--rc,10px);color:var(--color-text);cursor:pointer;transition:border-color .15s ease,background .15s ease}
.rv-design:hover{border-color:var(--color-text-muted);background:var(--color-surface-hover)}
.rv-design.is-on{border-color:var(--ac,var(--color-text));box-shadow:inset 0 0 0 1px var(--ac,var(--color-text))}
.rv-dp{display:flex;height:64px;border:1px solid rgba(128,128,128,.35);border-radius:var(--rs,6px);overflow:hidden}
.rv-dp-side{display:block;width:28%;flex:none;font-style:normal}
.rv-dp-main{display:flex;flex-direction:column;gap:6px;justify-content:center;padding:0 12px;flex:1}
.rv-dp-line{display:block;height:5px;width:70%;opacity:.85;font-style:normal;border-radius:1px}
.rv-dp-line.s{width:42%;opacity:.4}
.rv-dp-btn{display:block;height:9px;width:36%;font-style:normal;border-radius:1px}
.rv-design-name{font-weight:600;font-size:.9375rem}
.rv-design-desc{font-size:.8125rem;color:var(--color-text-secondary);line-height:1.4}
