@import url("https://fonts.googleapis.com/css2?family=Hanken+Grotesk:wght@400;500;600&family=Poppins:wght@300;400;500&display=swap");:root{--background:#FDF9F0;--surface:#FFFFFF;--bg-secondary:#F8EFE4;--bg-grouped:#F0E5D6;--border:#E5D9C7;--border-active:#D8CAB4;--foreground:#433528;--text-secondary:#7A6E5E;--text-muted:#9A8E7C;--liela-primary:#919780;--liela-interactive:#5F6A52;--liela-light:#E7E9DF;--earth-accent:#D09B83;--earth-deep:#A26248;--earth-light:#F5E4DA;--success:#4E7259;--success-bg:#E7E9DF;--error:#A0483C;--error-bg:#F5E4DA;--warning:#8E6A1C;--warning-bg:#F8EFE4;--info:#4A6474;--radius-tag:6px;--radius-input:12px;--radius-btn:12px;--radius-card:18px;--radius-modal:26px;--radius-pill:999px;--font-title:"Poppins",-apple-system,BlinkMacSystemFont,sans-serif;--font-body:"Hanken Grotesk",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,Courier,monospace;--shadow-subtle:0 2px 8px rgba(67,53,40,0.04);--shadow-hover:0 4px 14px rgba(67,53,40,0.07)}*{box-sizing:border-box}body,html{width:100vw;height:100vh;overflow:hidden;background-color:var(--background);font-family:var(--font-body);line-height:1.5;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body,h1,h2,h3,h4,html{color:var(--foreground);font-weight:400}h1,h2,h3,h4{font-family:var(--font-title);margin:0 0 1rem;letter-spacing:-.015em;text-transform:none}h1{font-size:1.45rem;margin:0}h1,h2{font-weight:400;color:var(--foreground)}h2{font-size:1.15rem;border-bottom:1px solid var(--border);padding-bottom:.5rem}h3{font-size:1rem;font-weight:400;color:var(--foreground)}a{color:var(--liela-interactive);text-decoration:none;transition:color .15s ease}a:hover{color:var(--earth-deep)}.layout-wrapper{display:flex;flex-direction:column;height:100vh;padding:1.5rem 2rem;gap:1.5rem;background-color:var(--background)}.split-layout{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;flex:1 1;min-height:0}.left-pane,.right-pane{display:flex;flex-direction:column;gap:1.5rem;min-height:0}.right-pane{overflow-y:auto;padding-right:.5rem}.right-pane::-webkit-scrollbar{width:6px}.right-pane::-webkit-scrollbar-track{background:transparent}.right-pane::-webkit-scrollbar-thumb{background-color:var(--border);border-radius:var(--radius-pill)}.app-header{justify-content:space-between;padding-bottom:1rem;border-bottom:1px solid var(--border);flex-shrink:0}.app-header,.header-brand{display:flex;align-items:center}.header-brand{gap:.85rem}.app-logo{height:42px;width:42px;object-fit:contain;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,.08);flex-shrink:0;transition:transform .2s ease}.app-logo:hover{transform:scale(1.04)}.app-title{font-family:var(--font-title);font-size:1.35rem;font-weight:400;color:var(--foreground);margin:0;line-height:1.2}.app-subtitle{display:block;font-family:var(--font-body);font-size:.82rem;color:var(--text-secondary);font-weight:400;margin-top:.15rem;text-transform:none}.panel{background-color:var(--surface);border-radius:var(--radius-card);padding:1.5rem;border:1px solid var(--border);box-shadow:var(--shadow-subtle);display:flex;flex-direction:column}.json-panel{flex:1 1;min-height:0}.json-textarea-container{flex:1 1;min-height:0;margin-top:1rem;margin-bottom:1rem}textarea{width:100%;height:100%;background-color:var(--bg-secondary);color:var(--foreground);border:1px solid transparent;border-radius:var(--radius-input);padding:1.25rem;font-family:var(--font-mono);font-size:.84rem;line-height:1.55;resize:none;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}textarea:focus{border-color:var(--border-active);box-shadow:0 0 0 2px rgba(216,202,180,.25)}select,textarea:focus{outline:none;background-color:var(--surface)}select{color:var(--foreground);border:1px solid var(--border);border-radius:var(--radius-tag);padding:.6rem .85rem;font-family:var(--font-body);font-size:.85rem;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}select:focus{border-color:var(--liela-interactive);box-shadow:0 0 0 2px rgba(95,106,82,.2)}button{font-family:var(--font-body);font-weight:500;font-size:.92rem;padding:.65rem 1.25rem;border-radius:var(--radius-btn);cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;text-transform:none}.btn-primary,button{background-color:var(--foreground);color:var(--background);border:1px solid transparent}.btn-primary:hover:not(:disabled),button:hover:not(:disabled){background-color:#2e241b;transform:translateY(-1px);box-shadow:var(--shadow-subtle)}.btn-primary:active:not(:disabled),button:active:not(:disabled){transform:translateY(0)}.btn-secondary,button.btn-secondary{background-color:transparent!important;border:1px solid var(--border-active)!important;color:var(--foreground)!important}.btn-secondary:hover:not(:disabled),button.btn-secondary:hover:not(:disabled){background-color:var(--bg-secondary)!important;color:var(--foreground)!important;border-color:var(--text-secondary)!important;box-shadow:none}#btn-rebuild-all,.btn-positive,button.btn-positive{background-color:var(--liela-interactive)!important;color:var(--background)!important;border:1px solid transparent!important}#btn-rebuild-all:hover:not(:disabled),.btn-positive:hover:not(:disabled),button.btn-positive:hover:not(:disabled){background-color:#4f5944!important;box-shadow:var(--shadow-subtle)}button:disabled{background-color:var(--bg-secondary)!important;color:var(--text-muted)!important;border-color:var(--border)!important;cursor:not-allowed;transform:none!important;box-shadow:none!important}.button-group{gap:.75rem}.button-group,.flex-row{display:flex;align-items:center}.flex-row{gap:1rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:.75rem;margin-top:1rem}.stat-item{background-color:var(--bg-secondary);padding:.85rem 1rem;border-radius:var(--radius-input);border:1px solid var(--border);transition:background-color .15s ease}.stat-item:hover{background-color:var(--bg-grouped)}.stat-label{font-size:.75rem;color:var(--text-secondary);text-transform:none;margin-bottom:.2rem}.stat-value{font-size:.95rem;font-weight:500;color:var(--foreground);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.size-stats{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-input);padding:.85rem 1rem;margin-bottom:1rem;font-size:.84rem}.size-stat-row{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0;border-bottom:1px solid var(--border)}.size-stat-row:last-child{border-bottom:none}.size-stat-label{color:var(--text-secondary);font-size:.8rem;text-transform:none}.size-stat-value{font-weight:500;color:var(--foreground)}.size-stat-value.accent{color:var(--earth-deep);font-weight:600}.size-stat-value.success{color:var(--success);font-weight:600}.audio-file-list{margin-top:.5rem;padding-top:.5rem;border-top:1px dashed var(--border)}.audio-file-row{display:flex;justify-content:space-between;padding:.15rem 0;font-size:.78rem}.audio-file-name{font-family:var(--font-mono);color:var(--text-secondary)}.audio-file-size{color:var(--text-muted)}.error-message{color:var(--error);background-color:var(--error-bg);padding:.9rem 1.1rem;border-radius:var(--radius-input);border:1px solid #ecc9c3;margin-top:1rem;margin-bottom:1rem;white-space:pre-wrap;font-family:var(--font-mono);font-size:.82rem;line-height:1.5;flex-shrink:0}.rebuild-summary{background-color:var(--success-bg)!important;border:1px solid #cbd4be!important;border-radius:var(--radius-input)!important;padding:1rem!important;color:var(--success)!important}.rebuild-log{background-color:var(--bg-secondary)!important;border:1px solid var(--border);border-radius:var(--radius-input)!important;padding:.85rem!important;font-family:var(--font-mono)!important;font-size:.8rem!important;line-height:1.5}.rebuild-log::-webkit-scrollbar{width:5px}.rebuild-log::-webkit-scrollbar-thumb{background:var(--border-active);border-radius:var(--radius-pill)}input[type=checkbox]{appearance:none;background-color:var(--bg-secondary);margin:0;width:1.2em;height:1.2em;border:1px solid var(--border);border-radius:var(--radius-tag);display:grid;place-content:center;cursor:pointer;transition:all .15s ease}input[type=checkbox]:before{content:"";width:.65em;height:.65em;transform:scale(0);transition:transform .12s ease-in-out;background-color:var(--background);transform-origin:center;clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0,43% 62%)}input[type=checkbox]:checked{background-color:var(--liela-interactive);border-color:var(--liela-interactive)}input[type=checkbox]:checked:before{transform:scale(1)}label{font-size:.92rem;color:var(--foreground);-webkit-user-select:none;user-select:none}.player-container{background:var(--surface);border-radius:var(--radius-input);padding:1.25rem;border:1px solid var(--border);margin-top:.75rem}.player-controls{gap:1rem;margin-bottom:1.25rem}.play-btn,.player-controls{display:flex;align-items:center}.play-btn{width:42px;height:42px;border-radius:var(--radius-pill);justify-content:center;padding:0;font-size:1.1rem;background-color:var(--foreground);color:var(--background);border:none}.play-btn:hover:not(:disabled){background-color:var(--liela-interactive)}.progress-container{flex:1 1;display:flex;align-items:center;gap:.75rem}.time-display{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:.82rem;color:var(--text-secondary);min-width:45px}.progress-bar{flex:1 1;height:5px;appearance:none;background:var(--bg-grouped);border-radius:var(--radius-pill);outline:none}.progress-bar::-webkit-slider-thumb{appearance:none;width:14px;height:14px;border-radius:50%;background:var(--liela-interactive);cursor:pointer;-webkit-transition:transform .1s ease;transition:transform .1s ease}.progress-bar::-webkit-slider-thumb:hover{transform:scale(1.15)}.track-row{display:flex;align-items:center;padding:.65rem 0;border-top:1px solid var(--bg-secondary);gap:1rem}.track-name{width:110px;font-size:.84rem;font-weight:500;color:var(--foreground)}.volume-slider{flex:1 1;appearance:none;height:4px;background:var(--bg-grouped);border-radius:var(--radius-pill);outline:none}.volume-slider::-webkit-slider-thumb{appearance:none;width:12px;height:12px;border-radius:50%;background:var(--liela-primary);cursor:pointer}.tag-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:var(--radius-tag);font-size:.78rem;font-weight:500;text-transform:none}.tag-m4a{background-color:var(--liela-light);color:var(--liela-interactive);border:1px solid #cbd4be}.tag-legacy{background-color:var(--warning-bg);color:var(--warning);border:1px solid var(--border)}