/* ROBERIN The New — 흑백사진 변환기 (black-and-white-photo-generator) 20260902f
 * Warm paper palette per 추가 필수 확인 #16. 숫자 family/weight 는
 * assets/css/roberin-the-new-numerals-20260814g.css 가 소유하며 이 파일은 선언하지 않는다.
 */
.tn-bw-page{--bw-paper:#faf6ee;--bw-ink:#1a1208;--bw-muted:#5a4a30;--bw-line:#b8a888;--bw-soft:#ddd4be;--bw-surface:#fffaf0;--bw-wash:#f5efdf;--bw-accent:#c44a00;--bw-good:#2f7d54;--bw-primary:#1a1208;--bw-primary-text:#faf6ee;--bw-secondary:#ede6d4;max-width:1180px;margin:0 auto;color:var(--bw-ink)}

.tn-bw-tool,.tn-bw-tool *{box-sizing:border-box}
.tn-bw-tool{display:grid;grid-template-columns:300px minmax(0,1fr);gap:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;border:1px solid var(--bw-line);background:var(--bw-paper);color:var(--bw-ink)}
.tn-bw-page .tn-bw-tool :is(ul,ol,li,dl,dd,dt){margin:0!important;padding:0!important;list-style:none!important}
/* 테마 `.cs-main-content .entry-content ul:not(...)` 가 (0,3,1) 이라 스코프만으로는 못 이긴다. kill list #1 */
.tn-bw-page .tn-bw-tool :is(code,pre,kbd,samp){padding:0;border:0;border-radius:0;background:none;background-color:transparent;color:inherit;-webkit-text-fill-color:inherit;font:inherit}
.tn-bw-tool p{margin:0}

.tn-bw-side{display:grid;align-content:start;gap:14px;padding:18px;border-right:1px solid var(--bw-line)}
.tn-bw-main{display:grid;align-content:start;gap:12px;min-width:0;padding:18px}
.tn-bw-pane-label{margin:0;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--bw-muted)}
.tn-bw-label{margin:0 0 6px;font-size:11px;font-weight:700;color:var(--bw-muted)}

.tn-bw-drop{display:grid;justify-items:center;align-content:center;gap:8px;min-height:132px;padding:16px 12px;border:1px dashed var(--bw-line);background:var(--bw-surface);text-align:center;cursor:pointer}
.tn-bw-drop.is-over{border-color:var(--bw-accent);background:var(--bw-wash)}
.tn-bw-drop__title{margin:0;font-size:13px;font-weight:800;line-height:1.4}
.tn-bw-drop__hint{margin:0;font-size:11px;font-weight:400;line-height:1.6;color:var(--bw-muted)}
.tn-bw-drop .tn-bw-btn{width:100%;min-height:36px;margin-top:2px}

.tn-bw-group{display:grid;align-content:start;gap:10px}

.tn-bw-slider{display:grid;gap:6px}
.tn-bw-slider__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0;font-size:11px;font-weight:700;color:var(--bw-muted);cursor:pointer}
.tn-bw-control{display:flex!important;align-items:center!important;height:36px;border:1px solid var(--bw-line);background:var(--bw-surface)}
.tn-bw-control input,.tn-bw-control select{flex:1 1 auto;width:100%;min-width:0;height:34px;padding:0 10px;border:0!important;outline:0!important;background:transparent!important;color:var(--bw-ink)!important;-webkit-text-fill-color:var(--bw-ink)!important;font-size:14px}
.tn-bw-control select{font-size:12px;font-weight:700;-webkit-appearance:none;appearance:none;cursor:pointer}
.tn-bw-control b{display:grid;place-items:center;align-self:stretch;min-width:30px;padding:0 8px;border-left:1px solid var(--bw-soft);font-size:11px;font-weight:700;color:var(--bw-muted)}
.tn-bw-control:has(input:focus-visible),.tn-bw-control:has(select:focus-visible){outline:2px solid var(--bw-accent);outline-offset:-1px}
.tn-bw-control--num{width:100px;flex:0 0 auto}
.tn-bw-control--num input{text-align:right;-moz-appearance:textfield;appearance:textfield}
.tn-bw-control--num input::-webkit-outer-spin-button,.tn-bw-control--num input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.tn-bw-control--select{position:relative;padding-right:26px}
.tn-bw-control--select::after{content:"";position:absolute;top:14px;right:10px;width:7px;height:7px;border-right:1.5px solid var(--bw-muted);border-bottom:1.5px solid var(--bw-muted);transform:rotate(45deg);pointer-events:none}

.tn-bw-range{-webkit-appearance:none;appearance:none;width:100%;height:20px;margin:0;background:transparent;outline:0;cursor:pointer}
.tn-bw-range::-webkit-slider-runnable-track{height:4px;background:var(--bw-soft);border:0}
.tn-bw-range::-moz-range-track{height:4px;background:var(--bw-soft);border:0}
.tn-bw-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;margin-top:-6px;background:var(--bw-primary);border:1px solid var(--bw-primary);border-radius:0}
.tn-bw-range::-moz-range-thumb{width:16px;height:16px;background:var(--bw-primary);border:1px solid var(--bw-primary);border-radius:0}
.tn-bw-range:focus-visible{outline:2px solid var(--bw-accent);outline-offset:2px}

.tn-bw-field{display:grid;align-content:start;gap:5px;margin:0;padding:0;border:0;background:none;min-width:0}
.tn-bw-field>span:first-child{display:block;padding:0;line-height:1.35;font-size:11px;font-weight:700;color:var(--bw-muted)}

.tn-bw-toggle{display:flex;align-items:start;gap:8px;font-size:11px;font-weight:700;line-height:20px;color:var(--bw-ink);cursor:pointer}
.tn-bw-toggle input{flex:0 0 auto;width:20px;height:20px;margin:0;-webkit-appearance:none;appearance:none;border:1px solid var(--bw-line);background:var(--bw-surface);display:grid;place-items:center;cursor:pointer}
.tn-bw-toggle input::before{content:"";width:10px;height:10px;background:transparent}
.tn-bw-toggle input:checked::before{background:var(--bw-accent)}
.tn-bw-toggle input:focus-visible{outline:2px solid var(--bw-accent);outline-offset:2px}
.tn-bw-toggle span{line-height:20px}

.tn-bw-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
.tn-bw-btn{display:grid;place-items:center;width:100%;min-height:36px;padding:8px 10px;border:1px solid var(--bw-line);background:var(--bw-secondary);color:var(--bw-ink);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;font-weight:800;line-height:1.2;text-align:center;outline:0;cursor:pointer}
.tn-bw-btn--primary{grid-column:1/-1;background:var(--bw-primary);color:var(--bw-primary-text);-webkit-text-fill-color:var(--bw-primary-text);border-color:var(--bw-primary)}
.tn-bw-btn:hover{border-color:var(--bw-accent);outline:0}
.tn-bw-btn:focus-visible{outline:2px solid var(--bw-accent);outline-offset:2px}
.tn-bw-btn:disabled{opacity:.55;cursor:default;outline:0}

.tn-bw-stage{display:grid;place-items:center;min-height:300px;padding:14px;border:1px solid var(--bw-soft);background:var(--bw-wash);overflow:hidden}
.tn-bw-canvas{display:block;max-width:100%;max-height:380px;height:auto;width:auto;border:1px solid var(--bw-soft);background:var(--bw-surface)}

.tn-bw-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.tn-bw-metrics>div{display:grid;gap:5px;min-width:0;padding:10px;border:1px solid var(--bw-soft);background:var(--bw-surface)}
.tn-bw-metrics dt{font-size:11px;font-weight:400;line-height:1.35;color:var(--bw-muted)}
.tn-bw-metrics dd{margin:0;font-size:14px;line-height:1.3}

.tn-bw-looks-wrap{display:grid;gap:7px}
.tn-bw-looks{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px}
.tn-bw-look{display:grid;gap:5px;justify-items:center;min-width:0;padding:6px 4px;border:1px solid var(--bw-soft);background:var(--bw-surface);color:var(--bw-ink);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;outline:0;cursor:pointer}
.tn-bw-look canvas{display:block;width:100%;height:auto;aspect-ratio:1/1;border:1px solid var(--bw-soft);background:var(--bw-wash)}
.tn-bw-look__name{display:block;width:100%;overflow:hidden;font-size:10px;font-weight:700;line-height:1.3;text-align:center;text-overflow:ellipsis;white-space:nowrap}
.tn-bw-look:hover{border-color:var(--bw-accent)}
.tn-bw-look:focus-visible{outline:2px solid var(--bw-accent);outline-offset:2px}
.tn-bw-look[aria-pressed=true]{background:var(--bw-primary);border-color:var(--bw-primary);color:var(--bw-primary-text);-webkit-text-fill-color:var(--bw-primary-text)}
.tn-bw-lookdesc{margin:0;font-size:11px;font-weight:400;line-height:1.6;color:var(--bw-muted)}

.tn-bw-status{margin:0;padding:10px 12px;border:1px solid var(--bw-soft);background:var(--bw-surface);font-size:11px;font-weight:400;line-height:1.6;color:var(--bw-muted)}
.tn-bw-status[data-state=error]{border-color:var(--bw-accent);color:var(--bw-accent)}
.tn-bw-status[data-state=success]{color:var(--bw-good)}

.tn-bw-note{grid-column:1/-1;padding:0 18px 18px}
.tn-bw-caption{margin:0;font-size:11px;font-weight:400;line-height:1.6;color:var(--bw-muted)}

/* ---- dark / inverse / auto-dark ---- */
body:is([data-scheme=dark],[data-scheme=inverse],[data-scheme=auto][data-l=dark],[data-scheme=auto][data-d=dark]) .tn-bw-page{--bw-paper:#241d12;--bw-ink:#efe6d2;--bw-muted:#c3b492;--bw-line:#6f6047;--bw-soft:#574a37;--bw-surface:#322a1a;--bw-wash:#2c2517;--bw-accent:#e8823f;--bw-good:#66a77f;--bw-primary:#4a3116;--bw-primary-text:#f7ead1;--bw-secondary:#2f2115}
body:is([data-scheme=dark],[data-scheme=inverse],[data-scheme=auto][data-l=dark],[data-scheme=auto][data-d=dark]) .tn-bw-tool :is(button,input,select){color:var(--bw-ink)!important;-webkit-text-fill-color:var(--bw-ink)!important}
body:is([data-scheme=dark],[data-scheme=inverse],[data-scheme=auto][data-l=dark],[data-scheme=auto][data-d=dark]) .tn-bw-btn--primary,body:is([data-scheme=dark],[data-scheme=inverse],[data-scheme=auto][data-l=dark],[data-scheme=auto][data-d=dark]) .tn-bw-look[aria-pressed=true]{border-color:var(--bw-accent)}

@media(prefers-color-scheme:dark){
body[data-scheme=auto]:not([data-l=light]) .tn-bw-page{--bw-paper:#241d12;--bw-ink:#efe6d2;--bw-muted:#c3b492;--bw-line:#6f6047;--bw-soft:#574a37;--bw-surface:#322a1a;--bw-wash:#2c2517;--bw-accent:#e8823f;--bw-good:#66a77f;--bw-primary:#4a3116;--bw-primary-text:#f7ead1;--bw-secondary:#2f2115}
body[data-scheme=auto]:not([data-l=light]) .tn-bw-tool :is(button,input,select){color:var(--bw-ink)!important;-webkit-text-fill-color:var(--bw-ink)!important}
body[data-scheme=auto]:not([data-l=light]) .tn-bw-btn--primary,body[data-scheme=auto]:not([data-l=light]) .tn-bw-look[aria-pressed=true]{border-color:var(--bw-accent)}
}

@media(max-width:1000px){
.tn-bw-looks{grid-template-columns:repeat(6,minmax(0,1fr))}
}

@media(max-width:860px){
.tn-bw-tool{grid-template-columns:minmax(0,1fr)}
.tn-bw-side{border-right:0;border-bottom:1px solid var(--bw-line)}
}

@media(max-width:720px){
.tn-bw-page{margin-inline:5px}
.tn-bw-side,.tn-bw-main{padding:13px}
.tn-bw-note{padding:0 13px 13px}
.tn-bw-stage{min-height:250px;padding:10px}
.tn-bw-canvas{max-height:300px}
.tn-bw-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
.tn-bw-looks{grid-template-columns:repeat(4,minmax(0,1fr))}
}
