/* PixNagi Web 版（Wabi Tones Web その11）：Web 版の一言・機械翻訳の印・広告の窓・右から左・言語ごとの字体
   ★作り方：scripts/build_pixnagi.mjs が public/pixnagi/pixnagi_web.css に写す（手で直さない） */
.pxw-web{margin:16px auto 0;max-width:520px;font-size:12px;line-height:1.7;color:var(--muted)}
.pxw-web b{color:var(--text);font-weight:600}
.pxw-web a{display:inline-flex;align-items:center;min-height:44px;padding:0 10px;color:var(--accent)}
.pxw-mt{margin:4px auto 0;max-width:520px;font-size:11px;color:var(--muted)}
html[lang="ja"] .pxw-mt{display:none}
.pxw-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
/* 言語を変えたとき：下の一言に「機械翻訳です」を続ける（日本語のときは出さない） */
/* 画像の所は右から左の言語でも左から右（比べる線・つまみの向きを絵と合わせる） */
#viewport,#compareBar,#compare{direction:ltr}
/* ファイルの名前・数は、まわりの言語の向きに引っぱられない */
#fileName{unicode-bidi:plaintext}
#dimensions,#paletteCount,.field output{unicode-bidi:isolate}
/* 言語ごとの字体（日本の字の形で中国語・韓国語が出ないように。どれも端末に入っている物だけ・外から読まない） */
html:lang(zh-Hans){font-family:"Microsoft YaHei UI","Microsoft YaHei","PingFang SC","Noto Sans CJK SC","Noto Sans SC",sans-serif}
html:lang(zh-Hant){font-family:"Microsoft JhengHei UI","Microsoft JhengHei","PingFang TC","Noto Sans CJK TC","Noto Sans TC",sans-serif}
html:lang(ko){font-family:"Malgun Gothic","Apple SD Gothic Neo","Noto Sans CJK KR","Noto Sans KR",sans-serif}
html:lang(th){font-family:"Leelawadee UI","Thonburi","Noto Sans Thai",sans-serif}
html:lang(hi){font-family:"Nirmala UI","Kohinoor Devanagari","Noto Sans Devanagari",sans-serif}
html:lang(ar),html:lang(fa){font-family:"Segoe UI","Geeza Pro","Noto Sans Arabic",Tahoma,sans-serif}
html:lang(he){font-family:"Segoe UI","Arial Hebrew","Noto Sans Hebrew",Arial,sans-serif}
/* 書き出しの前の広告の窓（音仕立て Web 版と同じ形・PixNagi の色） */
.wad{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(5,8,12,.78)}
.wad-box{width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--panel);color:var(--text);box-shadow:0 18px 60px rgba(0,0,0,.5)}
.wad-h{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.wad-h b{font-size:16px;font-weight:600}
.wad-tag{font-size:12px;padding:2px 8px;border:1px solid var(--accent);border-radius:6px;color:var(--accent)}
.wad video{display:block;width:100%;aspect-ratio:16/9;border-radius:10px;background:#000}
.wad-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:12px 0 6px}
.wad-left{font-variant-numeric:tabular-nums;color:var(--text);font-size:14px}
.wad-row .sp{flex:1 1 auto}
.wad button{min-height:44px;padding:0 16px;border:1px solid var(--line);border-radius:12px;background:transparent;color:var(--text);font-size:13px;cursor:pointer}
.wad button:disabled{opacity:.45;cursor:default}
.wad .wad-go:not(:disabled){border-color:var(--accent);color:var(--accent)}
.wad button:focus-visible,.wad a:focus-visible,.pxw-web a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.wad p{margin:8px 0 0;font-size:12px;line-height:1.75;color:var(--muted)}
.wad-act{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:14px}
/* その13 総ざらい（2026-10-23 Claude）：押せる所は 44px 以上・字は 12px 以上。Web 版だけの上書き（主ソースの studio.css は変えない＝パソコン版はそのまま）
   色見本（#palette の四角）だけは 24px 以上（WCAG 2.2 AA の最小）。256色まで並ぶ所で、44px にすると色の一覧が画面に入りきらないため */
button,select,summary,input:not([type="range"],[type="checkbox"],[type="radio"],[type="file"],[type="color"],[type="hidden"]){min-height:44px}
button{min-width:44px}
.section-heading>button,.layer button,.segmented button,.canvas-actions button,.canvas-actions select,.samples button,.palette-bar .section-heading button,header button{min-height:44px}
.palette-bar .section-heading button{padding:2px 6px}
#palette button{min-width:24px;min-height:24px}
#languageSelect{min-height:44px}
.brand{min-height:44px}
.color-label input[type="color"]{min-height:44px;height:44px}
.brand,.brand small,.version,.file-info small,nav button,.eyebrow,.button-row button,.preset span,.section-heading>button,.look .restore-look,.mat-options button,.tool-grid button,.canvas-actions select,.canvas-actions button,
.hero-art span,.samples span,.samples button,#welcome>small,#welcome p,#compareBar,.statusbar,#dimensions,.palette-bar .section-heading,.palette-bar small,header button,.segmented button,.pxw-mt,.pxw-web{font-size:12px}
/* つまみ（range）とチェックの行も 44px（つまみの線の見た目は同じ・上下の余白で取る） */
input[type="range"],.field input[type="range"]{height:44px;margin:0}
.color-label input[type="color"]{width:46px;min-width:46px;flex:none}
/* 英語で長い言葉のボタン（Checkerboard・Duplicate など）は、並びを折り返して入れる */
.mat-options{flex-wrap:wrap}
.mat-options button{flex:1 1 auto}
.button-row:has(>#layerDuplicate){flex-wrap:wrap}
.button-row:has(>#layerDuplicate)>*{flex:1 1 auto}
.button-row>button{min-width:44px}
.check{min-height:44px;margin:6px 0}
/* レイヤーを見せる・隠すの箱は 24px（WCAG 2.2 AA の最小・行の高さは 44px 以上）。例外は local_check_audit.mjs の EXCEPTIONS に書いた2つだけ */
.layer input[type="checkbox"]{width:24px;height:24px;flex:none}
/* 字を 12px にしたので、英字の言葉が途中で切れないように（「Rectangl / e」「Duplic / ate」）。言葉の切れ目で折り返す */
button{overflow-wrap:normal;word-break:normal}
.tool-grid button{padding-left:5px;padding-right:5px}
/* 絵の上の小さな字（FROM A MOOD TO A PIXEL.）は、うしろに暗い帯を敷いて読みやすく */
.hero-art span{background:rgba(10,14,16,.72);padding:2px 6px;border-radius:4px}
/* 日本語の短い名前がボタンの中で途中で折れないように（「ファイルを開/く」「背景透/過」）。はじめの画面の3つは、入らなければ2段に並べ直す */
#welcome .button-row{max-width:420px;flex-wrap:wrap;justify-content:center}
#welcome .button-row>button{flex:1 1 auto;white-space:nowrap}
@media (max-width:360px){nav{padding-left:4px;padding-right:4px;gap:2px}nav button{padding-left:0;padding-right:0;letter-spacing:-.05em}}
/* その13-2（2026-10-24 Claude）：左の帯（狭い画面では下の帯）の名前が、30言語で語の途中で折れていた（ドイツ語「Bearbeite/n」・ロシア語「Редактировать」など）
   → 名前は折らずに1行。広い画面では帯の幅を名前に合わせる。狭い画面（780px 以下）の下の帯は、入らない時だけ横に送れる（日本語・英語は今のまま1列に収まる） */
nav button{overflow-wrap:normal;word-break:normal;hyphens:manual;white-space:nowrap;padding-left:6px;padding-right:6px}
.studio{grid-template-columns:minmax(80px,max-content) 292px minmax(0,1fr)}
@media(min-width:1500px){.studio{grid-template-columns:minmax(88px,max-content) 320px minmax(0,1fr)}}
@media(max-width:1050px){.studio{grid-template-columns:minmax(70px,max-content) 264px minmax(0,1fr)}}
@media(max-width:780px){nav{overflow-x:auto;scrollbar-width:none}nav::-webkit-scrollbar{display:none}nav button{flex:1 0 auto}nav .help{flex:.7 0 auto}}
/* その14-2（2026-10-30 Claude）：書き出しの窓の「変換の前の絵も並べて載せる（ビフォー・アフター）」と権利の印。押せる所は字ごと 44px（印だけでなく字を押しても付く） */
.wsv .wsv-ba{margin:4px 0 10px;padding:10px 12px;border:1px solid #ab9b80;border-radius:10px;background:#f4ede1}
.wsv .wsv-check{display:flex;align-items:flex-start;gap:10px;min-height:44px;padding:10px 0;font-size:14px;line-height:1.5;cursor:pointer;color:#1f2f4a}
.wsv .wsv-check input{flex:0 0 auto;width:22px;height:22px;margin:0;accent-color:#1f2f4a;cursor:pointer}
.wsv .wsv-check span{flex:1 1 auto;min-width:0;line-break:strict}
.wsv .wsv-ba-more{border-top:1px solid #d8ccb6;margin-top:2px}
.wsv .wsv-ba-note{font-size:13px;line-height:1.55;color:#4a3a22;margin:4px 0 2px;line-break:strict}
/* その14-3（3-1・2026-10-30 Claude）：マウスを乗せたとき、studio.css の暗い地（#293732・#35413f）に窓の暗い字（#1f2f4a）が重なって読めなかった（その13-3 から）。地は変えず、字を明るくする（#fbf7f0 は #293732 の上で 11 以上） */
.wsv button:not(:disabled):hover,.wsv button:not(:disabled):active:hover{color:#fbf7f0}
.wsv{box-sizing:border-box;width:min(520px,calc(100% - 24px));max-width:calc(100% - 24px);max-height:calc(100dvh - 24px);margin:auto;padding:24px;border:1px solid #ab9b80;border-radius:18px;background:#fbf7f0;color:#1f2f4a;font:14px/1.55 system-ui,-apple-system,"Segoe UI","Yu Gothic UI",sans-serif;text-align:start;overflow:auto;word-break:normal;overflow-wrap:normal}
.wsv::backdrop{background:rgba(15,24,40,.65)}
.wsv *{box-sizing:border-box;font-family:inherit}
.wsv h2{font-size:21px;line-height:1.35;margin:0 0 8px;color:inherit}
.wsv p{margin:8px 0;font-size:14px;line-height:1.55}
.wsv .wsv-actions{display:grid;grid-template-columns:1fr;grid-auto-rows:1fr;gap:10px;margin:18px 0}
.wsv button{font-size:14px;line-height:1.5;min-height:44px;min-width:44px;padding:12px 14px;border-radius:10px;border:1px solid #1f2f4a;color:#1f2f4a;background:#fbf7f0;white-space:normal;word-break:normal;overflow-wrap:normal;cursor:pointer;letter-spacing:normal;text-transform:none;height:auto}
.wsv .wsv-actions button{width:100%;height:100%}
.wsv button:active{background:#e7dcc9}
.wsv :focus-visible{outline:3px solid #8d5d1c;outline-offset:3px}
.wsv .wsv-status{min-height:1.55em;color:#1f2f4a}
.wsv [hidden]{display:none!important}
@media(max-width:390px){.wsv{padding:18px}.wsv h2{font-size:19px}}
@media(prefers-reduced-motion:reduce){.wsv,.wsv *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

html:lang(ko) .wsv,html:lang(ko) .wsv button{word-break:keep-all}
