*{box-sizing:border-box}:root,:root[data-theme=dark]{--tile: 320px;--bg: #1a1a1e;--bg-surface: #232329;--fg: #e8e8ec;--fg-dim: #9a9aa5;--border: #3a3a42;--accent: #d8d8de}:root[data-theme=gray]{--bg: #b8b8bc;--bg-surface: #c7c7cb;--fg: #1c1c20;--fg-dim: #4c4c52;--border: #8a8a90;--accent: #2a2a30}:root[data-theme=black]{--bg: #000000;--bg-surface: #101010;--fg: #e2e2e6;--fg-dim: #8a8a92;--border: #282828;--accent: #e8e8ec}:root[data-theme=white]{--bg: #ffffff;--bg-surface: #f2f2f4;--fg: #16161a;--fg-dim: #55555c;--border: #cfcfd6;--accent: #1c1c20}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--fg);accent-color:var(--accent)}#app-header{display:flex;align-items:baseline;gap:1rem;padding:.5rem 1rem;border-bottom:1px solid var(--border)}#app-header h1{font-size:1.1rem;margin:0}#status{margin:0;color:var(--fg-dim);font-size:.85rem;flex:1}.header-check,.header-select{font-size:.8rem;color:var(--fg-dim);display:inline-flex;align-items:center;gap:.35rem}.header-select select{background:var(--bg-surface);color:var(--fg);border:1px solid var(--border);border-radius:4px;padding:.15rem .3rem}.header-select input[type=range]{width:7rem}#main{display:flex;height:calc(100vh - 3rem)}#stage{flex:1;padding:1rem;overflow:auto}#dropzone{border:2px dashed var(--fg-dim);border-radius:8px;padding:1.5rem;text-align:center;color:var(--fg-dim);margin-bottom:1rem}#dropzone.dragging{border-color:var(--fg);color:var(--fg)}#dropzone p{margin:0 0 .5rem}#grid{display:flex;flex-wrap:wrap;gap:1rem;justify-content:flex-end}.preview-card{margin:0;flex:0 0 auto;width:var(--tile);max-width:100%}.preview-canvas{display:block;width:100%;background:#000;border-radius:4px}body.picking .preview-canvas{cursor:crosshair}.preview-card figcaption{font-size:.75rem;color:var(--fg-dim);margin-top:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#panel{width:280px;flex:0 0 280px;border-left:1px solid var(--border);padding:1rem;overflow:auto}#panel h2{font-size:.95rem;margin:0 0 1rem}#panel h3{font-size:.85rem;margin:1.2rem 0 .5rem;border-top:1px solid var(--border);padding-top:.8rem}.slider-row{display:grid;grid-template-columns:1fr;gap:.25rem;margin-bottom:.9rem}.slider-label{font-size:.8rem;color:var(--fg-dim);cursor:pointer}.slider-label:hover{color:var(--fg);text-decoration:underline dotted}.slider-value{font-size:.75rem;color:var(--fg-dim);text-align:right}.slider-row input[type=range]{width:100%}.check-row{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--fg);margin-bottom:.9rem}.iso-target{border:1px solid var(--border);border-radius:4px;padding:.5rem;margin:0 0 .8rem;background:var(--bg-surface)}.iso-target legend{font-size:.75rem;color:var(--fg-dim);padding:0 .3rem}.iso-target button{font-size:.75rem;padding:.2rem .6rem}.pick-row{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--fg-dim);margin-bottom:.7rem}.pick-row input[type=color]{width:2.2rem;height:1.4rem;padding:0;border:1px solid var(--border);border-radius:3px;background:var(--bg-surface)}.pick-row button{font-size:.75rem;padding:.2rem .6rem}.iso-gradient{height:10px;border-radius:3px;border:1px solid var(--border);margin:.2rem 0 .7rem}button{background:var(--bg-surface);color:var(--fg);border:1px solid var(--border);border-radius:4px;padding:.4rem .9rem;cursor:pointer}button:hover:not(:disabled){filter:brightness(1.15)}button:disabled{opacity:.45;cursor:default}.export-row{display:flex;gap:.5rem;align-items:center;margin-bottom:.7rem}.export-row select{flex:1;min-width:0;background:var(--bg-surface);color:var(--fg);border:1px solid var(--border);border-radius:4px;padding:.3rem .4rem;font-size:.8rem}.export-row button,#panel>button{font-size:.8rem}#panel>button,.export-row+button{width:100%;margin-bottom:.7rem}.base-lut-name{flex:1;min-width:0;font-size:.75rem;color:var(--fg-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.caption-row{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.caption-row .caption-name{flex:1;min-width:0;display:flex}.caption-stem{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.caption-ext{flex:0 0 auto;white-space:nowrap}.caption-row button{font-size:.7rem;padding:.1rem .5rem;flex:0 0 auto}.panel-details{margin:1.2rem 0 0;border-top:1px solid var(--border);padding-top:.5rem}.panel-details>summary{font-size:.85rem;font-weight:700;cursor:pointer;margin-bottom:.5rem}.curve-channels{display:flex;gap:.3rem;margin-bottom:.5rem}.curve-channels button{font-size:.75rem;padding:.15rem .55rem}.curve-channels button.active{border-color:var(--fg);color:var(--fg)}.curve-editor{display:block;width:100%;aspect-ratio:248 / 150;height:auto;border-radius:4px;cursor:crosshair;touch-action:none}.curve-hint,.hint{font-size:.72rem;color:var(--fg-dim);margin:.3rem 0 .7rem}.curve-reset{font-size:.75rem;padding:.2rem .6rem}@media(max-width:640px){body{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden}#app-header{flex-wrap:wrap;row-gap:.25rem;padding:.4rem .6rem}#app-header h1{font-size:1rem}#main{flex-direction:column;flex:1;min-height:0;height:auto}#stage{min-height:0;padding:.6rem;padding-bottom:calc(30dvh + 1rem)}#dropzone p{display:none}#grid{justify-content:center}.curve-channels button,.curve-reset{font-size:.85rem;padding:.45rem 1rem}.curve-editor{width:auto;max-width:100%;height:calc(30dvh - 6rem);min-height:96px;margin:0 auto}#panel{position:fixed;left:0;right:0;bottom:0;z-index:10;width:auto;flex:none;height:30vh;height:30dvh;border-left:none;border-top:1px solid var(--border);background:var(--bg);padding:.6rem .8rem;padding-bottom:max(.6rem,env(safe-area-inset-bottom,0px));overflow:auto;overscroll-behavior:contain}.lut-export,.lut-import{display:none}}
