@import"https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&family=Material+Symbols+Outlined&display=swap";:root,:root[data-theme=light]{--mui-bg-default: #f5f5f5;--mui-bg-paper: #ffffff;--mui-primary: #7c3aed;--mui-primary-dark: #5b21b6;--mui-primary-contrast: #ffffff;--mui-secondary: #ec4899;--mui-success: #16a34a;--mui-warning: #f59e0b;--mui-error: #dc2626;--mui-info: #0ea5e9;--mui-link: #d97706;--mui-text-primary: rgba(0, 0, 0, .87);--mui-text-secondary: rgba(0, 0, 0, .6);--mui-text-disabled: rgba(0, 0, 0, .38);--mui-divider: rgba(0, 0, 0, .12);--mui-action-hover: rgba(0, 0, 0, .04);--mui-action-selected: rgba(124, 58, 237, .08);--mui-shadow-1: 0 1px 3px rgba(0,0,0,.12), 0 1px 2px rgba(0,0,0,.08);--mui-shadow-2: 0 3px 6px rgba(0,0,0,.12), 0 2px 4px rgba(0,0,0,.08);--mui-shadow-4: 0 10px 20px rgba(0,0,0,.12), 0 4px 8px rgba(0,0,0,.08);--mui-shadow-8: 0 20px 40px rgba(0,0,0,.16), 0 8px 16px rgba(0,0,0,.1);--mui-radius: 4px;--mui-radius-lg: 12px}:root[data-theme=dark]{--mui-bg-default: #121212;--mui-bg-paper: #1e1e1e;--mui-primary: #a78bfa;--mui-primary-dark: #7c3aed;--mui-primary-contrast: rgba(0, 0, 0, .87);--mui-secondary: #f472b6;--mui-success: #4ade80;--mui-warning: #fbbf24;--mui-error: #f87171;--mui-info: #38bdf8;--mui-link: #fbbf24;--mui-text-primary: rgba(255, 255, 255, .87);--mui-text-secondary: rgba(255, 255, 255, .6);--mui-text-disabled: rgba(255, 255, 255, .38);--mui-divider: rgba(255, 255, 255, .12);--mui-action-hover: rgba(255, 255, 255, .08);--mui-action-selected: rgba(167, 139, 250, .16);--mui-shadow-1: 0 1px 3px rgba(0,0,0,.5), 0 1px 2px rgba(0,0,0,.4);--mui-shadow-2: 0 3px 6px rgba(0,0,0,.5), 0 2px 4px rgba(0,0,0,.4);--mui-shadow-4: 0 10px 20px rgba(0,0,0,.5), 0 4px 8px rgba(0,0,0,.4);--mui-shadow-8: 0 20px 40px rgba(0,0,0,.6), 0 8px 16px rgba(0,0,0,.4)}*{box-sizing:border-box}html,body{margin:0;padding:0}:root[data-theme=dark]{color-scheme:dark}:root[data-theme=light]{color-scheme:light}select option{background:var(--mui-bg-paper);color:var(--mui-text-primary)}body{font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:14px;line-height:1.5;background:var(--mui-bg-default);color:var(--mui-text-primary);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a,a:link,a:visited{color:var(--mui-link);text-decoration:none}.material-symbols-outlined{font-family:Material Symbols Outlined;font-weight:400;font-style:normal;font-size:20px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;vertical-align:middle;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.appbar{position:sticky;top:0;background:var(--mui-bg-paper);border-bottom:1px solid var(--mui-divider);box-shadow:var(--mui-shadow-1);z-index:10}.appbar .toolbar{display:flex;align-items:center;gap:16px;padding:0 24px;min-height:56px;max-width:1280px;margin:0 auto}.appbar .toolbar>*,.appbar .toolbar nav#account>*{line-height:1}.appbar .brand{font-size:20px;font-weight:500;color:var(--mui-primary);display:inline-flex;align-items:center;gap:10px;text-decoration:none;line-height:1;height:100%}.appbar .brand .material-symbols-outlined{font-size:24px;line-height:1}.appbar nav#account{display:flex;gap:4px;align-items:center;color:var(--mui-text-secondary);font-size:13px}header.hero{text-align:center;padding:48px 24px 24px;background:linear-gradient(180deg,var(--mui-bg-paper) 0%,var(--mui-bg-default) 100%);border-bottom:1px solid var(--mui-divider)}header.hero h1{margin:0 0 8px;font-size:32px;font-weight:300;letter-spacing:-.01em}header.hero .tag{margin:0 0 16px;color:var(--mui-text-secondary);font-size:16px}header.hero .hero-badge{display:inline-block;margin:0;padding:6px 14px;border-radius:16px;background:var(--mui-action-selected);color:var(--mui-primary);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--mui-primary)}main{max-width:1100px;margin:24px auto;padding:0 24px}.paper{background:var(--mui-bg-paper);border-radius:var(--mui-radius);box-shadow:var(--mui-shadow-1);padding:24px;margin-bottom:24px}.paper.elev-2{box-shadow:var(--mui-shadow-2)}.paper.elev-4{box-shadow:var(--mui-shadow-4)}.card{background:var(--mui-bg-paper);border-radius:var(--mui-radius);box-shadow:var(--mui-shadow-1);padding:24px;display:flex;flex-direction:column}.card-title{font-size:18px;font-weight:500;margin:0 0 4px}.card-subtitle{color:var(--mui-text-secondary);margin:0 0 16px;font-size:13px}button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:inherit;font-size:14px;font-weight:500;letter-spacing:.02em;text-transform:uppercase;padding:6px 16px;min-width:64px;height:36px;border:none;border-radius:var(--mui-radius);cursor:pointer;transition:background .12s ease-out,box-shadow .12s ease-out,color .12s;user-select:none;background:transparent;color:var(--mui-primary)}button:hover:not(:disabled),.btn:hover:not(:disabled){background:var(--mui-action-hover)}button.btn-contained{background:var(--mui-primary);color:var(--mui-primary-contrast);box-shadow:var(--mui-shadow-1)}button.btn-contained:hover:not(:disabled){background:var(--mui-primary-dark);box-shadow:var(--mui-shadow-2)}button.btn-outlined{border:1px solid var(--mui-primary);background:transparent;color:var(--mui-primary)}button.btn-outlined:hover:not(:disabled){background:var(--mui-action-selected)}button.btn-error{background:var(--mui-error);color:#fff;box-shadow:var(--mui-shadow-1)}button.btn-error:hover:not(:disabled){background:var(--mui-error);filter:brightness(.92);box-shadow:var(--mui-shadow-2)}button:disabled,.btn:disabled{color:var(--mui-text-disabled)!important;background:var(--mui-action-hover)!important;cursor:not-allowed;box-shadow:none!important}button.icon-btn{width:40px;min-width:40px;height:40px;padding:0;border-radius:50%}.field{position:relative;margin:16px 0}.field input,.field select,.field textarea{width:100%;padding:14px 12px 10px;font:inherit;color:var(--mui-text-primary);background:transparent;border:1px solid var(--mui-divider);border-radius:var(--mui-radius);outline:none;transition:border-color .12s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--mui-primary);border-width:2px;padding:13px 11px 9px}.field label{position:absolute;top:12px;left:12px;font-size:14px;color:var(--mui-text-secondary);pointer-events:none;background:var(--mui-bg-paper);padding:0 4px;transition:all .12s}.field input:focus+label,.field input:not(:placeholder-shown)+label,.field select:focus+label,.field select:not([data-empty=true])+label{top:-8px;font-size:12px;color:var(--mui-primary)}select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 18px) 18px,calc(100% - 13px) 18px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}select[multiple]{background-image:none;padding:8px 12px;min-height:84px}.recorder .controls{display:flex;gap:12px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.recorder .status{margin-left:auto;font-size:13px;color:var(--mui-text-secondary);display:inline-flex;align-items:center;gap:6px}.recorder .status.live:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--mui-success);box-shadow:0 0 #2e7d3299;animation:pulse 1.4s infinite}.recorder .status.error{color:var(--mui-error)}@keyframes pulse{0%{box-shadow:0 0 #2e7d3299}70%{box-shadow:0 0 0 8px #2e7d3200}to{box-shadow:0 0 #2e7d3200}}.translate-row{display:grid;grid-template-columns:220px 1fr;gap:24px;align-items:start;margin:16px 0}.translate-row .field{margin:0}.translate-row .muted{color:var(--mui-text-secondary);font-size:12px}.lang-chips-wrap{min-width:0}.lang-chips-label{font-size:12px;color:var(--mui-text-secondary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.lang-chips{display:flex;flex-wrap:wrap;gap:6px}.lang-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:16px;border:1px solid var(--mui-divider);background:transparent;color:var(--mui-text-secondary);font-size:12px;font-weight:500;cursor:pointer;user-select:none;font-family:inherit;text-transform:none;letter-spacing:normal;height:auto;min-width:0;transition:background .12s,color .12s,border-color .12s}.lang-chip:hover{background:var(--mui-action-hover)}.lang-chip.on{background:var(--mui-primary);color:var(--mui-primary-contrast);border-color:var(--mui-primary)}.lang-chip.on:hover{filter:brightness(1.05)}@media(max-width:600px){.translate-row{grid-template-columns:1fr}}.paywall{background:#ed6c021f;border-left:4px solid var(--mui-warning);color:var(--mui-text-primary);padding:12px 16px;border-radius:var(--mui-radius);margin-bottom:16px;font-size:14px}.intro-banner{background:var(--mui-action-selected);border-left:4px solid var(--mui-primary);color:var(--mui-text-primary);padding:12px 16px;border-radius:var(--mui-radius);margin-bottom:16px;font-size:14px;display:flex;align-items:flex-start;gap:12px}.intro-banner .material-symbols-outlined{color:var(--mui-primary);margin-top:2px}.hidden{display:none!important}.transcript{background:var(--mui-bg-default);border:1px solid var(--mui-divider);border-radius:var(--mui-radius);padding:16px;min-height:280px;max-height:70vh;overflow-y:auto;white-space:pre-wrap;font-family:Roboto Mono,ui-monospace,SFMono-Regular,monospace;font-size:14px;line-height:1.6}.transcript .turn{margin-bottom:12px;padding-bottom:12px;border-bottom:1px dashed var(--mui-divider)}.transcript .turn:last-child{border-bottom:none}.transcript .speaker{display:inline-block;background:var(--mui-action-selected);color:var(--mui-primary);font-weight:500;padding:1px 8px;border-radius:12px;margin-right:8px;font-size:12px}.transcript .partial{color:var(--mui-text-secondary);font-style:italic}.transcript .turn-time{display:inline-block;font-family:Roboto Mono,monospace;font-size:11px;color:var(--mui-text-disabled);margin-right:8px;vertical-align:middle}.transcript .turn.turn-highlighted{background:#ffc1070f;border-left:3px solid var(--mui-warning);padding-left:8px;margin-left:-11px;border-radius:0 4px 4px 0}.transcript .turn-highlight-marker{display:inline-block;vertical-align:middle;color:var(--mui-warning);margin-right:6px;font-size:16px}.transcript .turn-highlight-marker .material-symbols-outlined{font-size:18px;vertical-align:text-bottom}.transcript .translation{color:var(--mui-success);margin-top:6px;padding-left:12px;border-left:3px solid var(--mui-success);font-style:normal}.pricing{margin-top:32px}.pricing h2{margin:0 0 16px;font-size:24px;font-weight:400}.pricing .cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}.pricing .card.highlight{border-top:4px solid var(--mui-primary);box-shadow:var(--mui-shadow-4);position:relative}.pricing .card .price{font-size:32px;font-weight:300;margin:8px 0 16px}.pricing .card ul{padding-left:18px;margin:0 0 16px;color:var(--mui-text-secondary)}.pricing .card .buy{margin-top:auto;align-self:flex-start}.badge{display:inline-block;background:var(--mui-action-selected);color:var(--mui-primary);border-radius:12px;padding:2px 10px;font-size:11px;font-weight:500;text-transform:uppercase;margin-left:4px}.muted{color:var(--mui-text-secondary)}dialog{background:var(--mui-bg-paper);color:var(--mui-text-primary);border:none;border-radius:var(--mui-radius);padding:24px;width:min(440px,90vw);box-shadow:var(--mui-shadow-8)}dialog::backdrop{background:#00000080}dialog h3{margin:0 0 8px;font-size:20px;font-weight:500}dialog menu{padding:0;margin:16px 0 0;display:flex;gap:8px;justify-content:flex-end}.login-result{font-size:13px;color:var(--mui-success);margin:8px 0 0;min-height:18px}.google-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;padding:10px 16px;margin:8px 0 16px;height:auto;background:var(--mui-bg-paper);color:var(--mui-text-primary);border:1px solid var(--mui-divider);border-radius:var(--mui-radius);cursor:pointer;font:500 14px Roboto,sans-serif;text-transform:none;letter-spacing:normal;transition:background .12s,box-shadow .12s}.google-btn:hover{background:var(--mui-action-hover);box-shadow:var(--mui-shadow-1)}.google-btn .google-g{width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,#4285f4,#34a853,#fbbc05 66%,#ea4335);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.login-divider{text-align:center;margin:8px 0;position:relative;color:var(--mui-text-secondary);font-size:12px;text-transform:uppercase;letter-spacing:.06em}.login-divider:before,.login-divider:after{content:"";position:absolute;top:50%;width:40%;height:1px;background:var(--mui-divider)}.login-divider:before{left:0}.login-divider:after{right:0}.login-divider span{background:var(--mui-bg-paper);padding:0 8px}.lang-switcher{position:relative;display:inline-block}.lang-switcher #lang-switcher-btn{width:auto;min-width:36px;padding:0 8px;font-size:12px;font-weight:600;letter-spacing:.04em}.lang-switcher-menu{position:absolute;top:calc(100% + 4px);right:0;list-style:none;margin:0;padding:4px 0;background:var(--mui-bg-paper);border:1px solid var(--mui-divider);border-radius:var(--mui-radius);box-shadow:var(--mui-shadow-4);min-width:160px;z-index:20;display:none}.lang-switcher-menu.open{display:block}.lang-switcher-menu li{margin:0;padding:0}.lang-switcher-menu button{display:block;width:100%;padding:8px 14px;background:transparent;border:none;text-align:left;font:inherit;font-weight:400;text-transform:none;letter-spacing:normal;color:var(--mui-text-primary);height:auto;cursor:pointer}.lang-switcher-menu button:hover{background:var(--mui-action-hover)}.lang-switcher-divider{height:1px;background:var(--mui-divider);margin:4px 0}.lang-switcher-auto button{color:var(--mui-primary);font-weight:500}.acct-avatar{width:28px;height:28px;border-radius:50%;vertical-align:middle;margin-right:6px;border:1px solid var(--mui-divider);object-fit:cover;transition:transform .12s}a:has(>.acct-avatar):hover .acct-avatar{transform:scale(1.1)}.nav-admin-link{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:14px;background:var(--mui-action-selected);color:var(--mui-primary);text-decoration:none;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--mui-primary)}.nav-admin-link:hover{background:var(--mui-primary);color:var(--mui-primary-contrast)}.nav-admin-link .material-symbols-outlined{font-size:16px}.nav-public-link{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:14px;background:transparent;color:var(--mui-text-secondary);text-decoration:none;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--mui-divider)}.nav-public-link:hover{background:var(--mui-action-hover);color:var(--mui-text-primary);border-color:var(--mui-text-secondary)}.nav-public-link .material-symbols-outlined{font-size:16px}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;margin-bottom:24px}.kpi{background:var(--mui-bg-paper);border-radius:var(--mui-radius);box-shadow:var(--mui-shadow-1);padding:20px}.kpi .label{color:var(--mui-text-secondary);font-size:12px;text-transform:uppercase;letter-spacing:.06em;font-weight:500}.kpi .value{font-size:32px;font-weight:300;margin-top:8px;color:var(--mui-text-primary)}.kpi .delta{color:var(--mui-text-secondary);font-size:12px;margin-top:6px}.admin-table{width:100%;background:var(--mui-bg-paper);border-collapse:collapse;border-radius:var(--mui-radius);overflow:hidden;box-shadow:var(--mui-shadow-1);font-size:13px}.admin-table th,.admin-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--mui-divider);white-space:nowrap}.admin-table td.col-wrap,.admin-table th.col-wrap{white-space:normal}.admin-table td.col-chips{white-space:normal;max-width:200px}.admin-table td.col-chips .badge{display:inline-block;margin:2px 4px 2px 0}.admin-table td.col-mono{white-space:normal;word-break:break-all;font-family:Roboto Mono,ui-monospace,SFMono-Regular,monospace;font-size:12px}.admin-table th{background:var(--mui-bg-default);color:var(--mui-text-secondary);font-weight:500;text-transform:uppercase;font-size:11px;letter-spacing:.06em}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:var(--mui-action-hover)}.admin-section h2{font-size:18px;font-weight:500;margin:32px 0 16px;color:var(--mui-text-primary)}.chip{display:inline-block;padding:2px 10px;border-radius:12px;font-size:11px;font-weight:500;white-space:nowrap}.chip-active{background:#2e7d3226;color:var(--mui-success)}.chip-canceled{background:#d32f2f26;color:var(--mui-error)}.chip-past{background:#ed6c0226;color:var(--mui-warning)}.custom-audio-player{width:100%;display:flex;flex-direction:column;gap:4px;padding:8px 12px;background:var(--mui-bg-default);border:1px solid var(--mui-divider);border-radius:var(--mui-radius);box-sizing:border-box}.custom-audio-player .cap-seekbar-row,.custom-audio-player .cap-controls-row{display:flex;align-items:center;gap:8px;width:100%}.custom-audio-player .cap-spacer{flex:1}.custom-audio-player .cap-btn{background:transparent;border:none;color:var(--mui-text-primary);width:36px;height:36px;min-width:36px;padding:0;border-radius:50%;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-transform:none;letter-spacing:normal;transition:background .12s}.custom-audio-player .cap-btn:hover{background:var(--mui-action-hover)}.custom-audio-player .cap-btn .material-symbols-outlined{font-size:22px}.custom-audio-player .cap-play .material-symbols-outlined{font-size:28px}.custom-audio-player .cap-time{font-variant-numeric:tabular-nums;font-size:12px;color:var(--mui-text-secondary);min-width:48px;text-align:center;white-space:nowrap}.custom-audio-player .cap-seek-wrap{flex:1;position:relative;display:flex;align-items:center;height:18px;min-width:80px}.custom-audio-player .cap-seek-buffered{position:absolute;left:0;top:50%;transform:translateY(-50%);height:4px;background:var(--mui-action-selected);border-radius:2px;pointer-events:none;width:0%;transition:width .2s linear}.custom-audio-player .cap-seek,.custom-audio-player .cap-volume{appearance:none;-webkit-appearance:none;height:4px;background:var(--mui-divider);border-radius:2px;outline:none;cursor:pointer;margin:0;padding:0}.custom-audio-player .cap-seek{position:relative;z-index:1;width:100%;background:transparent}.custom-audio-player .cap-seek::-webkit-slider-runnable-track,.custom-audio-player .cap-volume::-webkit-slider-runnable-track{height:4px;background:var(--mui-divider);border-radius:2px}.custom-audio-player .cap-seek::-moz-range-track,.custom-audio-player .cap-volume::-moz-range-track{height:4px;background:var(--mui-divider);border-radius:2px}.custom-audio-player .cap-seek::-webkit-slider-thumb,.custom-audio-player .cap-volume::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--mui-primary);cursor:pointer;border:none;margin-top:-5px}.custom-audio-player .cap-seek::-moz-range-thumb,.custom-audio-player .cap-volume::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--mui-primary);cursor:pointer;border:none}.custom-audio-player .cap-volume{width:80px;flex:0 0 80px}.custom-audio-player .cap-volume-icon{font-size:20px;color:var(--mui-text-secondary);flex:0 0 auto}.custom-audio-player a.cap-btn{text-decoration:none;color:var(--mui-text-primary)}.custom-audio-player a.cap-btn:visited{color:var(--mui-text-primary)}.custom-audio-player .cap-speed{background:transparent;border:1px solid var(--mui-divider);border-radius:4px;color:var(--mui-text-primary);padding:4px 6px;font:inherit;font-size:12px;cursor:pointer}@media(max-width:600px){.custom-audio-player .cap-volume{display:none}.custom-audio-player .cap-time{min-width:40px;font-size:11px}.custom-audio-player .cap-row{gap:4px;padding:4px 6px}}#impersonation-banner{position:sticky;top:0;z-index:200;background:var(--mui-warning, #ed6c02);color:#fff;padding:8px 16px;font-size:14px;box-shadow:0 1px 3px #00000026}.impersonation-banner-inner{display:flex;align-items:center;gap:12px;max-width:1200px;margin:0 auto;flex-wrap:wrap}#impersonation-banner .muted{color:#ffffffd9}#impersonation-banner button{margin-left:auto;background:#0003;color:#fff;border:1px solid rgba(255,255,255,.4);padding:4px 12px;height:auto;font-size:12px}#impersonation-banner button:hover{background:#0000004d}.admin-row-actions{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.admin-row-actions select.user-grant-plan,.admin-row-actions button.row-action{height:28px;font-size:12px;font-weight:500;padding:0 10px;border-radius:4px;border:1px solid var(--mui-divider);background:var(--mui-bg-paper);color:var(--mui-text-primary);font-family:inherit;line-height:1;cursor:pointer;transition:background .12s,border-color .12s;text-transform:none;letter-spacing:normal;min-width:0}.admin-row-actions select.user-grant-plan{appearance:none;-webkit-appearance:none;padding-right:24px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='%23999'><path d='M7 10l5 5 5-5z'/></svg>");background-repeat:no-repeat;background-position:right 6px center}.admin-row-actions select.user-grant-plan:hover,.admin-row-actions button.row-action:hover{background:var(--mui-action-hover);border-color:var(--mui-text-secondary)}.admin-row-actions button.row-action.danger{color:var(--mui-error);border-color:var(--mui-error)}.admin-row-actions button.row-action.danger:hover{background:#d32f2f14;border-color:var(--mui-error)}.admin-row-actions button.row-action.disabled,.admin-row-actions button.row-action:disabled{opacity:.45;cursor:not-allowed}.table-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:8px 12px;background:var(--mui-bg-paper);border-radius:var(--mui-radius);box-shadow:var(--mui-shadow-1);margin:8px 0;font-size:13px;color:var(--mui-text-primary)}.table-pager-top{margin-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.table-pager-bottom{margin-top:3px;border-top-left-radius:0;border-top-right-radius:0}.table-pager-nav-group{display:inline-flex;align-items:center;gap:4px}.table-pager-info{margin-left:12px;color:var(--mui-text-secondary);font-size:12px;white-space:nowrap}.table-pager .table-pager-nav,.table-pager .table-pager-num{background:transparent;border:1px solid transparent;color:var(--mui-text-primary);width:32px;height:32px;min-width:32px;padding:0;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;font:inherit;cursor:pointer;text-transform:none;letter-spacing:normal;transition:background .12s}.table-pager .table-pager-nav:hover:not(:disabled),.table-pager .table-pager-num:hover:not(.is-current){background:var(--mui-action-hover)}.table-pager .table-pager-nav:disabled{color:var(--mui-text-disabled);cursor:not-allowed}.table-pager .table-pager-num.is-current{background:var(--mui-primary);color:var(--mui-primary-contrast);font-weight:500}.table-pager .material-symbols-outlined{font-size:18px;vertical-align:middle}.table-pager-size{display:inline-flex;align-items:center;gap:8px;color:var(--mui-text-secondary)}.table-pager-size label{font-size:12px}.table-pager-size select{background:transparent;border:1px solid var(--mui-divider);border-radius:4px;color:var(--mui-text-primary);padding:4px 8px;font:inherit;cursor:pointer}@media(max-width:600px){.table-pager{justify-content:center}.table-pager-info{display:none}}.snackbar{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:#323232;color:#fff;padding:12px 12px 12px 20px;border-radius:var(--mui-radius);box-shadow:var(--mui-shadow-4);font-size:14px;opacity:0;pointer-events:none;transition:opacity .2s;z-index:100;display:flex;align-items:center;gap:12px;max-width:min(540px,90vw)}.snackbar.show{opacity:1;pointer-events:auto}.snackbar .snackbar-text{flex:1}.snackbar .snackbar-close{background:transparent;border:none;color:#ffffffb3;cursor:pointer;padding:0;width:28px;height:28px;min-width:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font:inherit}.snackbar .snackbar-close:hover{background:#ffffff1f;color:#fff}.snackbar .snackbar-close .material-symbols-outlined{font-size:18px}.appbar-links-inline{display:inline-flex;align-items:center;gap:20px;margin-left:16px}.appbar-links-inline .appbar-link{padding:8px 4px;border-radius:4px;transition:color .12s,background .12s;white-space:nowrap;line-height:1}.appbar-links-inline .appbar-link:hover{color:var(--mui-primary)!important;background:var(--mui-action-hover)}.appbar-burger{display:none;position:relative;background:transparent;border:1px solid var(--mui-divider);color:var(--mui-text-primary);width:44px;height:40px;border-radius:6px;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:background .15s,border-color .15s}.appbar-burger:hover{background:var(--mui-action-hover);border-color:var(--mui-primary)}.appbar-burger:focus-visible{outline:2px solid var(--mui-primary);outline-offset:2px}.appbar-burger .material-symbols-outlined{font-size:24px;transition:transform .2s}.appbar-burger[aria-expanded=true] .material-symbols-outlined{transform:rotate(90deg)}.appbar-drawer{display:none;position:absolute;top:100%;left:0;right:0;background:var(--mui-bg-paper);border-top:1px solid var(--mui-divider);border-bottom:1px solid var(--mui-divider);box-shadow:0 8px 24px #00000047;padding:8px 0;z-index:11;animation:appbar-drawer-slide .18s ease-out}@keyframes appbar-drawer-slide{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.appbar-drawer-section{display:flex;flex-direction:column;gap:0;padding:4px 0;border-bottom:1px solid var(--mui-divider)}.appbar-drawer-section:last-child{border-bottom:none;flex-direction:row;flex-wrap:wrap;gap:12px;padding:12px 16px;align-items:center;justify-content:flex-end}.appbar-drawer-section .appbar-link{display:block;padding:12px 20px;font-size:15px;border-bottom:none!important;border-left:3px solid transparent;transition:background .12s,border-color .12s}.appbar-drawer-section .appbar-link:hover{background:var(--mui-action-hover);border-left-color:var(--mui-primary)}.appbar-drawer-section .appbar-user{display:block;padding:12px 20px;font-size:14px;color:var(--mui-text-primary)!important}.appbar-drawer-section #appbar-logout,.appbar-drawer-section #appbar-signin{margin:8px 16px;width:calc(100% - 32px);justify-content:center}@media(max-width:1150px){.appbar-links-inline,.appbar-account-inline{display:none!important}.appbar-burger{display:inline-flex}.appbar-drawer:not([hidden]){display:block}.appbar{position:sticky}.appbar .toolbar{padding:8px 16px;gap:8px}.appbar .brand{font-size:18px}}.confirm-dialog{border:none;background:var(--mui-bg-paper);color:var(--mui-text-primary);border-radius:8px;box-shadow:0 11px 15px -7px #0003,0 24px 38px 3px #00000024,0 9px 46px 8px #0000001f;padding:24px;min-width:280px;max-width:440px}.confirm-dialog::backdrop{background:#00000080}.confirm-dialog .confirm-dialog-msg{margin:0 0 24px;font-size:16px;line-height:1.5;color:var(--mui-text-primary)}.confirm-dialog menu{margin:0;padding:0;display:flex;gap:8px;justify-content:flex-end}.confirm-dialog menu button{min-width:80px}@media(max-width:1150px){.admin-table{border:none;background:transparent;box-shadow:none}.admin-table thead{display:none}.admin-table,.admin-table tbody,.admin-table tr,.admin-table td{display:block;width:100%}.admin-table tr{border:1px solid var(--mui-divider);border-radius:6px;margin-bottom:12px;padding:12px 16px;background:var(--mui-bg-paper)}.admin-table td{border:none!important;padding:6px 0!important;text-align:left!important;display:flex;align-items:baseline;gap:12px;font-size:14px}.admin-table td:before{content:attr(data-label);flex:0 0 90px;color:var(--mui-text-secondary);font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:500}.admin-table td:not([data-label]){margin-top:8px;justify-content:flex-end}.admin-table td:not([data-label]) button{width:100%}main>div[style*="display:flex"][style*="gap:8px"]{flex-wrap:wrap}}.app-footer{position:fixed;left:0;right:0;bottom:0;background:var(--mui-bg-paper);border-top:1px solid var(--mui-divider);box-shadow:0 -1px 4px #0000002e;color:var(--mui-text-secondary);font-size:13px;z-index:9;padding-bottom:env(safe-area-inset-bottom,0)}body{padding-bottom:calc(64px + env(safe-area-inset-bottom,0))}.app-footer-inner{display:flex;align-items:center;gap:16px;padding:8px 24px;min-height:56px;max-width:1280px;margin:0 auto;flex-wrap:wrap;justify-content:space-between}.app-footer-links{display:inline-flex;align-items:center;gap:24px;flex-wrap:wrap}.app-footer-links a{color:var(--mui-text-secondary);text-decoration:none;padding:4px 0;border-bottom:1px solid transparent;transition:color .12s,border-color .12s}.app-footer-links a:hover{color:var(--mui-primary);border-bottom-color:var(--mui-primary)}.app-footer-copy{font-size:12px;opacity:.85;white-space:nowrap}@media(max-width:600px){.app-footer-inner{justify-content:center;text-align:center}.app-footer-links{justify-content:center;gap:16px}}
