#tab-studio.active{display:flex;flex-direction:column;min-height:0;overflow:hidden}
.studio-suite-nav{height:58px;flex:0 0 58px;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;border-bottom:1px solid #20324d;background:#071322;z-index:40}
.studio-suite-nav button{border:1px solid #29415f;background:#0c1b2e;color:#aebbd0;border-radius:12px;min-height:40px;padding:0 18px;font:700 13px Inter,sans-serif;display:flex;align-items:center;gap:8px;cursor:pointer}
.studio-suite-nav button:hover{color:#fff;border-color:#6d5dfb}.studio-suite-nav button.active{color:#fff;border-color:#8879ff;background:linear-gradient(135deg,#5c4ce9,#8068ff);box-shadow:0 8px 24px #5f51e833}
#tab-studio>.sd-shell{height:auto!important;flex:1;min-height:0}
#tab-studio>.sd-shell[hidden],#tab-studio>.studio-media-view[hidden]{display:none!important}
.studio-media-view{flex:1;min-height:0;overflow:auto;background:#06111f;color:#e9f0fb;padding:16px;font:14px Inter,system-ui,sans-serif}
.sm-shell{max-width:1680px;margin:auto;display:grid;gap:14px}.sm-topbar,.sm-panel,.sm-player,.sm-idol-card{border:1px solid #213854;background:linear-gradient(145deg,#0c1b2e,#091726);border-radius:16px;box-shadow:0 12px 32px #0002}
.sm-topbar{padding:18px;display:flex;align-items:center;justify-content:space-between;gap:16px}.sm-title{display:flex;align-items:center;gap:13px}.sm-title>.material-symbols-rounded{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#6d5dfb22;color:#8d7eff;font-size:29px}.sm-title h1{font-size:21px;margin:0 0 4px}.sm-title p{margin:0;color:#8799b2}.sm-actions{display:flex;gap:8px;flex-wrap:wrap}
.sm-button,.sm-select,.sm-input,.sm-textarea{border:1px solid #2a4261;background:#0a1727;color:#eaf1fc;border-radius:10px;min-height:38px;padding:8px 11px;font:600 13px Inter,sans-serif}.sm-button{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px}.sm-button:hover{border-color:#7b6cff}.sm-button.primary{background:#6d5dfb;border-color:#8c7fff;color:#fff}.sm-button.success{background:#0e6b5e;border-color:#20d5b2}.sm-button.danger{color:#ff8ba0;border-color:#71334a}.sm-button:disabled{opacity:.45;cursor:not-allowed}
.sm-review-grid{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:14px;min-height:0}.sm-panel{padding:14px}.sm-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.sm-toolbar label{display:flex;align-items:center;gap:7px;color:#9badc5}.sm-toolbar .sm-select{min-width:170px}.sm-spacer{flex:1}
.sm-idol-tabs{display:flex;gap:8px;overflow:auto;padding:2px 0 10px}.sm-idol-tabs button{white-space:nowrap}.sm-idol-tabs button.active{background:#5a4bd7;color:#fff;border-color:#897cff}
.sm-review-manage{display:flex;align-items:center;gap:10px;min-height:52px;margin-bottom:12px;padding:8px 10px;border:1px solid #263f5e;border-radius:12px;background:#091827}.sm-review-manage label{display:flex;align-items:center;gap:7px;color:#d5dfed;font-weight:750;white-space:nowrap}.sm-review-manage input,.sm-track-select input{accent-color:#7565ff}.sm-review-manage strong{color:#58e1c5;font-size:12px;white-space:nowrap}.sm-review-manage small{margin-left:auto;color:#7f93ad}.sm-review-manage .danger:not(:disabled){background:#4a1725;border-color:#a83c57;color:#ff9caf}
.sm-idol-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:12px}.sm-idol-card{padding:13px}.sm-idol-card>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.sm-idol-card h2{font-size:16px;margin:0}.sm-count{color:#55e7cc;font-weight:800;font-size:12px}
.sm-track-list{display:grid;gap:8px}.sm-track{display:grid;grid-template-columns:44px minmax(120px,1fr) 140px auto;gap:8px;align-items:center;padding:9px;border:1px solid #1f3551;background:#081522;border-radius:12px}.sm-track.selected{border-color:#7565ff;background:#6d5dfb12;box-shadow:inset 0 0 0 1px #7565ff55}.sm-track-select{position:relative;width:42px;height:36px;display:grid;place-items:center;cursor:pointer}.sm-track-select input{position:absolute;left:-2px;top:-2px;width:16px;height:16px;margin:0;z-index:1}.sm-track-order{width:30px;height:30px;border-radius:9px;background:#182c46;display:grid;place-items:center;font-weight:900;color:#a99fff}.sm-track-title{min-width:0}.sm-track-title strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sm-track-title small{color:#7488a3}.sm-track-actions{display:flex;gap:4px}.sm-icon-btn{border:1px solid #29415f;background:#102139;color:#bcc9db;border-radius:8px;width:31px;height:31px;display:grid;place-items:center;cursor:pointer}.sm-icon-btn .material-symbols-rounded{font-size:18px}.sm-track-notes{grid-column:2/-1;display:grid;grid-template-columns:1fr 1fr;gap:8px}.sm-track-notes textarea{min-height:54px;resize:vertical;font-weight:500}.sm-empty{padding:30px;text-align:center;color:#7f93ad;border:1px dashed #2b4667;border-radius:12px}
.sm-player{padding:14px;position:sticky;top:0;height:max-content}.sm-player-cover{height:155px;border-radius:14px;display:grid;place-items:center;background:radial-gradient(circle,#7666ff55,#0a1728 68%);margin-bottom:12px}.sm-player-cover .material-symbols-rounded{font-size:70px;color:#9e93ff}.sm-now small{color:#52e3c8}.sm-now h2{font-size:18px;margin:5px 0}.sm-now p{color:#8295b0;margin:0}.sm-progress{width:100%;height:6px;background:#1b304a;border-radius:999px;margin:13px 0 5px;overflow:hidden}.sm-progress span{display:block;height:100%;background:linear-gradient(90deg,#6d5dfb,#28e0c0);width:0}.sm-time{display:flex;justify-content:space-between;color:#8195af;font-variant-numeric:tabular-nums}.sm-time strong{color:#ffcf5a}.sm-player-controls{display:flex;justify-content:center;gap:10px;margin:14px 0}.sm-player-controls button{width:44px;height:44px;border-radius:50%;border:1px solid #3b5270;background:#10223a;color:#fff;cursor:pointer}.sm-player-controls .main{width:58px;height:58px;background:#6d5dfb;border-color:#a79fff}.sm-review-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:12px}.sm-history{margin-top:14px;border-top:1px solid #213751;padding-top:12px}.sm-history h3{font-size:14px}.sm-history-list{max-height:185px;overflow:auto;display:grid;gap:7px}.sm-history-item{font-size:12px;padding:8px;border-radius:9px;background:#0a192a;display:grid;grid-template-columns:1fr auto;gap:4px}.sm-history-item small{color:#8295af}
.sm-lab-grid{display:grid;grid-template-columns:390px minmax(0,1fr) 330px;gap:14px}.sm-lab-grid .sm-panel h2{font-size:16px;margin:0 0 12px}.sm-drop{border:1px dashed #4c5e84;border-radius:14px;padding:20px;text-align:center;background:#091728}.sm-drop input{display:none}.sm-drop label{cursor:pointer;display:grid;place-items:center;gap:8px}.sm-drop .material-symbols-rounded{font-size:38px;color:#8d7eff}.sm-source-list{display:grid;gap:7px;margin-top:12px;max-height:390px;overflow:auto}.sm-source{display:grid;grid-template-columns:35px minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid #213a59;border-radius:10px;padding:8px;cursor:pointer}.sm-source.active{border-color:#7e70ff;background:#6858ff19}.sm-source strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sm-source small{color:#7e93ae}.sm-waveform{width:100%;height:180px;border-radius:14px;background:#071422;border:1px solid #213956}.sm-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.sm-form-grid label{display:grid;gap:5px;color:#9dafc7;font-size:12px}.sm-form-grid .wide{grid-column:1/-1}.sm-check{display:flex!important;align-items:center;gap:8px}.sm-check input{accent-color:#7969ff}.sm-lab-audio{width:100%;margin-top:10px}.sm-job{padding:13px;border:1px solid #27415f;border-radius:13px;background:#091827}.sm-job-progress{height:8px;border-radius:99px;background:#20324a;overflow:hidden;margin:10px 0}.sm-job-progress span{display:block;height:100%;background:#38d7bd;width:0}.sm-render-history{display:grid;gap:8px;max-height:430px;overflow:auto}.sm-render-item{border:1px solid #203953;border-radius:10px;padding:9px}.sm-render-item strong{display:block}.sm-render-item small{color:#8296b1}.sm-toast{position:fixed;right:18px;bottom:18px;z-index:99999;background:#14283f;color:#fff;border:1px solid #537293;border-radius:12px;padding:12px 16px;box-shadow:0 15px 40px #0008}.sm-toast.error{border-color:#e44867}.sm-toast.success{border-color:#24c69f}
.sm-source-library{cursor:default}.sm-source-library>.material-symbols-rounded:first-child{color:#9a8cff}.sm-source-ready{color:#39d8b8;font-size:21px}
.sm-next-delay{display:grid!important;grid-template-columns:auto 66px auto;align-items:center;gap:7px;white-space:nowrap;color:#9dafc7;font-size:12px}.sm-next-delay input{width:66px;min-width:66px;text-align:center;font-variant-numeric:tabular-nums}.sm-auto-next-state{padding:7px 10px;border:1px solid #5d53bf;background:#6d5dfb20;border-radius:9px;color:#c8c2ff;font-size:12px;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.sm-auto-next-state[hidden]{display:none!important}
.sm-bulk-backdrop{position:fixed;inset:0;z-index:10020;background:#020813cc;display:grid;place-items:center;padding:18px;backdrop-filter:blur(8px)}.sm-bulk-backdrop[hidden]{display:none!important}.sm-bulk-modal{width:min(820px,100%);max-height:min(780px,92vh);display:flex;flex-direction:column;border:1px solid #365071;background:#091728;border-radius:18px;box-shadow:0 30px 90px #000b;overflow:hidden}.sm-bulk-modal>header{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:18px;border-bottom:1px solid #203853}.sm-bulk-modal h2{font-size:20px;margin:3px 0}.sm-bulk-modal header small{color:#887aff;font-weight:900;letter-spacing:.08em}.sm-bulk-modal header p{color:#8397b1;margin:0}.sm-bulk-toolbar{display:grid;grid-template-columns:210px 1fr auto;gap:10px;padding:14px 18px}.sm-bulk-toolbar label{display:grid;gap:5px;color:#9dafc7;font-size:12px}.sm-bulk-search{position:relative}.sm-bulk-search .material-symbols-rounded{position:absolute;left:10px;bottom:9px;font-size:19px;color:#8295af}.sm-bulk-search input{padding-left:36px}.sm-bulk-select-all{display:flex!important;align-items:center;flex-direction:row;white-space:nowrap;align-self:end;min-height:38px}.sm-bulk-select-all input,.sm-bulk-item input{accent-color:#7565ff}.sm-bulk-summary{display:flex;justify-content:space-between;gap:12px;padding:0 18px 10px;color:#8498b2}.sm-bulk-summary strong{color:#51e2c3}.sm-bulk-list{margin:0 18px;overflow:auto;display:grid;gap:7px;min-height:220px;max-height:480px}.sm-bulk-item{display:grid;grid-template-columns:24px 34px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px;border:1px solid #213b59;background:#0b1a2b;border-radius:11px;cursor:pointer}.sm-bulk-item:hover{border-color:#786aff}.sm-bulk-item>.material-symbols-rounded{color:#8a7cff}.sm-bulk-item strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sm-bulk-item small{display:block;color:#8195af;margin-top:3px}.sm-bulk-item b{font-size:11px;color:#f3bf55}.sm-bulk-item.duplicate{opacity:.6;cursor:not-allowed}.sm-bulk-modal>footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 18px;border-top:1px solid #203853;margin-top:12px}
@media(max-width:1100px){.sm-review-grid,.sm-lab-grid{grid-template-columns:1fr}.sm-player{position:static}.sm-lab-grid .sm-panel:nth-child(2){order:-1}}
@media(max-width:720px){.studio-suite-nav{justify-content:flex-start;overflow-x:auto;height:54px;flex-basis:54px}.studio-suite-nav button{padding:0 12px;white-space:nowrap}.studio-media-view{padding:9px}.sm-topbar{align-items:flex-start;flex-direction:column;padding:13px}.sm-actions{width:100%}.sm-actions .sm-button{flex:1}.sm-idol-grid{grid-template-columns:1fr}.sm-review-manage{align-items:stretch;flex-wrap:wrap}.sm-review-manage label,.sm-review-manage .sm-button{flex:1}.sm-review-manage small{width:100%;margin-left:0}.sm-track{grid-template-columns:42px minmax(100px,1fr) 110px}.sm-track-actions{grid-column:2/-1}.sm-track-notes{grid-column:1/-1;grid-template-columns:1fr}.sm-toolbar>*{flex:1;min-width:135px}.sm-form-grid{grid-template-columns:1fr}.sm-form-grid .wide{grid-column:auto}.sm-waveform{height:125px}.sm-title>.material-symbols-rounded{width:40px;height:40px}.sm-title h1{font-size:18px}.sm-bulk-backdrop{padding:7px}.sm-bulk-modal{max-height:94vh}.sm-bulk-toolbar{grid-template-columns:1fr;padding:12px}.sm-bulk-select-all{align-self:auto}.sm-bulk-list{margin:0 12px}.sm-bulk-summary{padding:0 12px 9px;flex-direction:column}.sm-bulk-modal>header,.sm-bulk-modal>footer{padding:12px}}
@media(max-width:720px){.sm-review-grid{grid-template-columns:minmax(0,1fr);width:100%}.sm-shell,.sm-panel,.sm-toolbar{min-width:0;width:100%}.sm-toolbar>label,.sm-toolbar>select,.sm-toolbar>button{flex-basis:100%;min-width:0}.sm-toolbar .sm-select{min-width:0;max-width:100%}.sm-toolbar .sm-spacer{display:none}.sm-next-delay{grid-template-columns:minmax(0,1fr) 66px auto!important}.sm-next-delay input{min-width:66px!important;width:66px!important;flex:0 0 66px}.sm-auto-next-state{flex-basis:100%;min-width:0!important;white-space:normal}}

/* iPad/tablet: keep every Studio tool reachable with a real touch target. */
@media (min-width: 721px) and (max-width: 1366px) and (any-pointer: coarse) {
  #tab-studio.active { height: calc(100dvh - 76px); }
  .studio-suite-nav {
    position: relative;
    z-index: 100;
    justify-content: flex-start;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x;
  }
  .studio-suite-nav::-webkit-scrollbar { display: none; }
  .studio-suite-nav button {
    flex: 0 0 auto;
    min-height: 48px;
    padding-inline: 16px;
    white-space: nowrap;
    touch-action: manipulation;
    -webkit-user-select: none;
    user-select: none;
  }
  .studio-suite-nav button > * { pointer-events: none; }
  .studio-media-view {
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }
}
