.music-bar{z-index:20;border-bottom:1px solid var(--border);color:#202c3c;background:#f6faf8;align-items:center;gap:12px;height:44px;padding:0 32px;display:flex;position:sticky;top:0}.music-badge{color:#18775b;background:#e5f1ec;border-radius:8px;flex-shrink:0;place-items:center;width:26px;height:26px;display:grid}.music-badge.is-playing{color:#fff;background:#18775b}.music-controls{flex-shrink:0;align-items:center;gap:2px;display:flex}.music-queue-button.music-icon-button{white-space:nowrap;justify-content:center;gap:4px;width:auto;padding:0 6px;font-size:14px;display:inline-flex}.music-queue-button.music-icon-button:hover:not(:disabled),.music-queue-button[data-active=true]{background:var(--accent);color:var(--accent-foreground)}.music-queue-button:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.music-playlist-dialog{flex-direction:column;max-height:calc(100dvh - 2rem);display:flex}.music-playlist-count{color:var(--muted-foreground);flex-shrink:0;margin-left:auto;font-size:14px}.music-playlist-list{overscroll-behavior:contain;border:1px solid var(--border);border-radius:12px;gap:0;max-height:min(45dvh,360px);overflow-y:auto}.music-playlist-row{background:var(--card);color:var(--card-foreground);padding:12px}.music-playlist-row+.music-playlist-row{border-top:1px solid var(--border)}.music-playlist-row[data-selected=true]{background:var(--accent);color:var(--accent-foreground)}.music-playlist-title{overflow-wrap:anywhere;flex:1;min-width:0;font-size:14px;line-height:1.5}.music-playlist-current{color:var(--primary);flex-shrink:0;font-size:14px}.music-playlist-empty{text-align:center;color:var(--muted-foreground);padding:24px 12px;font-size:14px}.music-icon-button{color:#526275;border-radius:8px;place-items:center;width:28px;height:28px;transition:background .15s,color .15s;display:grid}.music-icon-button:hover:not(:disabled){color:#18775b;background:#e5f1ec}.music-icon-button:disabled{opacity:.35;cursor:not-allowed}.music-play{color:#fff;background:#18775b;border-radius:999px;place-items:center;width:30px;height:30px;transition:background .15s;display:grid}.music-play:hover:not(:disabled){background:#126248}.music-play:disabled{cursor:not-allowed;background:#b7c9c1}.music-play-icon{margin-left:2px}.music-icon-button:focus-visible,.music-play:focus-visible,.music-manage:focus-visible,.music-delete:focus-visible{outline-offset:2px;outline:2px solid #18775b}.music-select{flex:0 260px;min-width:0;display:flex;position:relative}.music-select select{appearance:none;color:#202c3c;width:100%;min-width:0;height:30px;font:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #d6e3dd;border-radius:8px;padding:0 30px 0 11px;font-size:13px;overflow:hidden}.music-select select.is-placeholder{color:#7b8796}.music-select select:hover:not(:disabled){border-color:#9fcbb9}.music-select select:focus-visible{outline-offset:1px;outline:2px solid #18775b}.music-select select:disabled{opacity:.6;cursor:not-allowed}.music-select-chevron{color:#7b8796;pointer-events:none;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.music-seek{flex:200px;align-items:center;gap:8px;min-width:0;display:flex}.music-time{color:#7b8796;font-variant-numeric:tabular-nums;text-align:center;flex-shrink:0;min-width:32px;font-size:12px}.music-volume{flex:none;align-items:center;gap:8px;min-width:0;display:flex}.music-volume input{width:76px}.music-volume-value{text-align:right;font-variant-numeric:tabular-nums;min-width:4ch;color:var(--muted-foreground);font-size:14px}.music-bar input[type=range]{appearance:none;cursor:pointer;background:linear-gradient(to right,#18775b 0,#18775b var(--music-progress,0%),#d6e3dd var(--music-progress,0%),#d6e3dd 100%);border-radius:999px;flex:1;min-width:0;height:4px}.music-bar input[type=range]:disabled{cursor:not-allowed;opacity:.5}.music-bar input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#fff;border:2px solid #18775b;border-radius:999px;width:12px;height:12px}.music-bar input[type=range]::-moz-range-thumb{background:#fff;border:2px solid #18775b;border-radius:999px;width:10px;height:10px}.music-bar input[type=range]:focus-visible{outline-offset:3px;outline:2px solid #18775b}.music-manage{color:#16745b;background:#fff;border:1px solid #d6e3dd;border-radius:8px;flex-shrink:0;align-items:center;gap:6px;height:30px;padding:0 11px;font-size:13px;font-weight:600;display:inline-flex}.music-manage:hover{background:#f0f7f4;border-color:#9fcbb9}.music-progress-line{background:#18775b;height:2px;transition:width .25s linear;display:none;position:absolute;bottom:-1px;left:0}.music-dialog{width:calc(100% - 2rem);max-height:calc(100dvh - 2rem);overflow-y:auto;max-width:480px!important}.music-upload{flex-direction:column;gap:10px;display:flex}.music-file{color:#16745b;cursor:pointer;background:#f6faf8;border:1px dashed #b9d6cb;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:2px 10px;padding:14px 16px;display:grid}.music-file:hover{background:#eef6f2}.music-file:focus-within{outline-offset:2px;outline:2px solid #18775b}.music-file span{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:650;overflow:hidden}.music-file small{color:#7b8796;grid-column:2;font-size:12px}.music-upload-row{gap:8px;display:flex}.music-title-input{border:1px solid var(--border);color:#202c3c;background:#fff;border-radius:9px;flex:1;min-width:0;height:38px;padding:0 12px;font-size:14px}.music-title-input:focus{outline-offset:-1px;outline:2px solid #18775b}.music-title-input:disabled{background:#f4f6f8}.music-upload-button{flex-shrink:0;height:38px}.music-upload-button:disabled{opacity:.55;cursor:not-allowed}.music-list-head{color:#526275;justify-content:space-between;align-items:center;padding-top:6px;font-size:13.5px;display:flex}.music-list-head span{color:#7b8796;font-size:12.5px}.music-list{border:1px solid #e3e8ee;border-radius:12px;flex-direction:column;max-height:300px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.music-list li{color:#7b8796;align-items:center;gap:10px;padding:10px 12px;display:flex}.music-list li+li{border-top:1px solid #eef1f4}.music-list li.is-current{color:#18775b;background:#f0f7f4}.music-list-text{flex-direction:column;flex:1;min-width:0;display:flex}.music-list-text strong{color:#202c3c;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.music-list-text small{color:#7b8796;font-size:12px}.music-delete{color:#8a95a3;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;gap:5px;min-width:30px;height:30px;padding:0 8px;font-size:12.5px;font-weight:600;display:inline-flex}.music-delete:hover:not(:disabled),.music-delete.is-confirm{color:#b91c1c;background:#fdecec}.music-delete:disabled{opacity:.5}.music-list-empty{text-align:center;color:#7b8796;border:1px dashed #d6dde5;border-radius:12px;margin:0;padding:24px 12px;font-size:13.5px}@media (max-width:1250px){.music-bar{padding:0 23px}}@media (max-width:767px){.music-bar{flex-wrap:wrap;gap:8px;height:auto;min-height:46px;padding:8px 12px}.music-volume{flex:1 0 100%}.music-seek{display:none}.music-select{flex:auto}.music-progress-line{display:block}.music-manage span{display:none}.music-manage{justify-content:center;width:32px;padding:0}}.music-badge-manager{cursor:pointer;padding:0}.music-badge-manager:focus-visible{outline:2px solid var(--ring);outline-offset:2px}@media (max-width:380px){.music-badge:not(.music-badge-manager){display:none}}@media (min-width:768px){:root{--sidebar-music-height:6.75rem}.clinic-sidebar-scroll.has-sidebar-music{padding-top:var(--sidebar-music-height)}.clinic-sidebar[data-slot=sidebar-container]{border-color:var(--sidebar-border)}.app-main>.music-bar{left:env(safe-area-inset-left,0px);top:env(safe-area-inset-top,0px);width:var(--sidebar-width);max-width:calc(100vw - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));height:var(--sidebar-music-height);z-index:30;border-right:1px solid var(--sidebar-border);background:var(--card);color:var(--card-foreground);grid-template-columns:26px minmax(0,1fr);align-content:center;gap:6px;padding:2px 12px;transition:transform .2s linear,visibility .2s linear;display:grid;position:fixed;overflow:visible}[data-slot=sidebar][data-collapsible=offcanvas]~.app-main>.music-bar{visibility:hidden;pointer-events:none;transform:translate(-100%)}.app-main>.music-bar .music-controls{justify-content:flex-end}.app-main>.music-bar .music-select,.app-main>.music-bar .music-seek{grid-column:1/-1;min-width:0}.app-main>.music-bar .music-volume{grid-column:1/-1;justify-content:center;display:flex}.app-main>.music-bar .music-manage{border-radius:5px;grid-column:1/-1;justify-content:center;justify-self:end;width:24px;height:24px;padding:0}.app-main>.music-bar .music-manage span{display:none}.app-main>.music-bar .music-manage svg{width:14px;height:14px}.app-main>.music-bar .music-time{min-width:28px}[data-slot=sidebar][data-collapsible=icon] .clinic-sidebar-scroll.has-sidebar-music{padding-top:44px}.app-main>.music-bar.music-bar-compact{left:env(safe-area-inset-left,0px);width:var(--sidebar-width-icon);justify-content:center;gap:0;height:44px;padding:0;display:flex}}.music-compact-trigger{cursor:pointer;width:32px;height:32px;padding:0}.music-compact-trigger:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.music-controls-popover{border:1px solid var(--sidebar-border);background:var(--popover);width:280px;max-width:calc(100vw - 64px);color:var(--popover-foreground);padding:12px}.music-popup-header{justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.music-popup-header h2{font-size:14px;font-weight:600}.music-popup-controls.music-bar{background:var(--popover);height:auto;color:var(--popover-foreground);border:0;grid-template-columns:26px minmax(0,1fr);gap:8px;padding:0;display:grid;position:relative;top:auto}.music-popup-controls .music-controls{justify-content:flex-end}.music-popup-controls .music-select,.music-popup-controls .music-seek,.music-popup-controls .music-volume{grid-column:1/-1;min-width:0}.music-popup-controls .music-volume input{width:auto}.music-popup-controls .music-seek{display:flex}.music-popup-controls .music-progress-line,.music-mobile-menu{display:none}.music-mobile-dialog{max-width:min(24rem,100vw - 2rem);max-height:calc(100dvh - 2rem);overflow-y:auto}.music-mobile-dialog .music-badge{display:grid}.music-mobile-dialog .music-icon-button{min-width:40px;min-height:40px}.music-mobile-dialog .music-play{width:40px;height:40px}.music-mobile-dialog .music-select select{height:40px;font-size:16px}.music-mobile-dialog .music-time{font-size:14px}@media (max-width:767px) and (orientation:portrait){.app-main>.music-bar{display:none}.music-mobile-menu{display:block}}
