@charset "UTF-8";

/*! ==========================================================================
 *  WIWI 配色系統 v1.0  ——  興濠企業有限公司
 *  --------------------------------------------------------------------------
 *  只有顏色。沒有元件、沒有版面、沒有 class 名稱綁定。
 *  你的按鈕、卡片、表格要長什麼樣自己決定，顏色從這裡拿就好。
 *
 *  基準：wiwi.com.tw 官網 CSS 與原廠 Logo SVG 實測值（2026-07 稽核）。
 *  官網既有色票全部錨定不動，只推導兩個新色（見下方註記 ★）。
 *
 *  核心：感溫雙極。橘＝溫感／發熱，藍綠＝涼感／防曬。
 *       兩極不是主色副色，是同一份設計的兩種語意狀態。
 *
 *      <html data-thermal="warm">      整站預設溫感
 *      <section data-thermal="cool">   這一區切涼感，可任意巢狀
 *      <html data-theme="dark">        深色（後台工具）
 *  ========================================================================== */:root{--wiwi-orange-50:#FEF9F0;--wiwi-orange-100:#FDF2E1;--wiwi-orange-200:#FBDCAB;--wiwi-orange-300:#F8C46F;--wiwi-orange-400:#F5AE42;--wiwi-orange-500:#F2971B;--wiwi-orange-600:#DD8103;--wiwi-orange-700:#B76A01;--wiwi-orange-800:#8D5202;--wiwi-orange-900:#643A02;--wiwi-teal-50:#F5FBFC;--wiwi-teal-100:#EAF7F9;--wiwi-teal-200:#C4E9EF;--wiwi-teal-300:#96D8E3;--wiwi-teal-400:#6BC9D8;--wiwi-teal-500:#44BCCE;--wiwi-teal-600:#22A1B4;--wiwi-teal-700:#157E8E;--wiwi-teal-800:#0F6471;--wiwi-teal-900:#0B4851;--wiwi-ember-500:#CD4400;--wiwi-ember-600:#A83800;--wiwi-ember-700:#822B00;--wiwi-gray-50:#F7F7F7;--wiwi-gray-100:#F0F0F0;--wiwi-gray-200:#DDDDDD;--wiwi-gray-300:#C4C4C4;--wiwi-gray-400:#8A8A8A;--wiwi-gray-500:#626262;--wiwi-gray-600:#555555;--wiwi-gray-700:#333333;--wiwi-gray-800:#22262A;--wiwi-gray-900:#14181A;--wiwi-white:#FFFFFF;--wiwi-green-500:#1F7A45;--wiwi-green-100:#E6F4EC;--wiwi-amber-500:#8A5A00;--wiwi-amber-100:#FDF3DC;--wiwi-red-500:#C0281F;--wiwi-red-100:#FCEAE8;--wiwi-blue-500:#1E5FA8;--wiwi-blue-100:#E8F0FA;--wiwi-bg:var(--wiwi-white);--wiwi-surface:var(--wiwi-white);--wiwi-surface-sunken:var(--wiwi-gray-50);--wiwi-surface-raised:var(--wiwi-white);--wiwi-text:var(--wiwi-gray-700);--wiwi-text-muted:var(--wiwi-gray-500);--wiwi-text-subtle:var(--wiwi-gray-400);--wiwi-border:var(--wiwi-gray-200);--wiwi-border-strong:var(--wiwi-gray-400);--wiwi-focus-ring:var(--wiwi-ember-500);--wiwi-overlay:rgba(20,24,26,0.55);--wiwi-success:var(--wiwi-green-500);--wiwi-success-tint:var(--wiwi-green-100);--wiwi-warning:var(--wiwi-amber-500);--wiwi-warning-tint:var(--wiwi-amber-100);--wiwi-danger:var(--wiwi-red-500);--wiwi-danger-tint:var(--wiwi-red-100);--wiwi-info:var(--wiwi-blue-500);--wiwi-info-tint:var(--wiwi-blue-100)}[data-theme=dark]{--wiwi-bg:var(--wiwi-gray-900);--wiwi-surface:var(--wiwi-gray-800);--wiwi-surface-sunken:#101315;--wiwi-surface-raised:#2A2F34;--wiwi-text:#ECEEF0;--wiwi-text-muted:#A8AEB4;--wiwi-text-subtle:#7C8288;--wiwi-border:#343A40;--wiwi-border-strong:#6A727A;--wiwi-focus-ring:var(--wiwi-orange-500);--wiwi-overlay:rgba(0,0,0,0.7);--wiwi-success:#4ADE80;--wiwi-success-tint:#16281D;--wiwi-warning:#FBBF4E;--wiwi-warning-tint:#2A2110;--wiwi-danger:#F87171;--wiwi-danger-tint:#2C1717;--wiwi-info:#7DB3F0;--wiwi-info-tint:#14202E}:root,[data-thermal=warm]{--wiwi-thermal-tint:var(--wiwi-orange-100);--wiwi-thermal-tint-strong:var(--wiwi-orange-200);--wiwi-thermal-fill:var(--wiwi-orange-500);--wiwi-thermal-fill-hover:var(--wiwi-orange-400);--wiwi-thermal-on-fill:var(--wiwi-gray-700);--wiwi-thermal-solid:var(--wiwi-ember-500);--wiwi-thermal-solid-hover:var(--wiwi-ember-600);--wiwi-thermal-solid-active:var(--wiwi-ember-700);--wiwi-thermal-on-solid:var(--wiwi-white);--wiwi-thermal-text:var(--wiwi-ember-500);--wiwi-thermal-text-strong:var(--wiwi-ember-600);--wiwi-thermal-border:var(--wiwi-orange-500);--wiwi-thermal-arrow:"▲";--wiwi-thermal-label:"溫感"}[data-thermal=cool]{--wiwi-thermal-tint:var(--wiwi-teal-100);--wiwi-thermal-tint-strong:var(--wiwi-teal-200);--wiwi-thermal-fill:var(--wiwi-teal-500);--wiwi-thermal-fill-hover:var(--wiwi-teal-400);--wiwi-thermal-on-fill:var(--wiwi-gray-700);--wiwi-thermal-solid:var(--wiwi-teal-700);--wiwi-thermal-solid-hover:var(--wiwi-teal-800);--wiwi-thermal-solid-active:var(--wiwi-teal-900);--wiwi-thermal-on-solid:var(--wiwi-white);--wiwi-thermal-text:var(--wiwi-teal-700);--wiwi-thermal-text-strong:var(--wiwi-teal-800);--wiwi-thermal-border:var(--wiwi-teal-500);--wiwi-thermal-arrow:"▼";--wiwi-thermal-label:"涼感"}[data-theme=dark],[data-theme=dark] [data-thermal=warm],[data-theme=dark][data-thermal=warm]{--wiwi-thermal-tint:#2A1E0B;--wiwi-thermal-tint-strong:#3D2C10;--wiwi-thermal-text:var(--wiwi-orange-500);--wiwi-thermal-text-strong:var(--wiwi-orange-500);--wiwi-thermal-border:var(--wiwi-orange-600)}[data-theme=dark] [data-thermal=cool],[data-theme=dark][data-thermal=cool]{--wiwi-thermal-tint:#0C2429;--wiwi-thermal-tint-strong:#113238;--wiwi-thermal-text:var(--wiwi-teal-500);--wiwi-thermal-text-strong:var(--wiwi-teal-500);--wiwi-thermal-border:var(--wiwi-teal-600)}:root{--bg:var(--wiwi-surface-sunken);--surface:var(--wiwi-surface);--text:var(--wiwi-text);--muted:var(--wiwi-text-muted);--border:var(--wiwi-border);--border-strong:var(--wiwi-border-strong);--accent:var(--wiwi-thermal-solid);--accent-hover:var(--wiwi-thermal-solid-hover);--tint:var(--wiwi-thermal-tint)}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:PingFang TC,Microsoft JhengHei,Noto Sans TC,sans-serif;background:var(--bg);color:var(--text);font-size:16.8px;line-height:1.55}a{color:var(--wiwi-thermal-text-strong);text-decoration:none}h1,h2,h3{margin:0 0 12px}.btn,button{font:inherit;cursor:pointer;border-radius:6px;padding:7px 14px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text)}button:hover{background:var(--wiwi-gray-100)}button.primary{background:var(--accent);border-color:var(--accent);color:var(--wiwi-thermal-on-solid)}button.primary:hover{background:var(--accent-hover)}button.danger{color:var(--wiwi-danger);border-color:var(--wiwi-danger)}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{font:inherit;padding:6px 9px;border:1px solid var(--border-strong);border-radius:6px;background:var(--surface);color:var(--text);max-width:100%}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--wiwi-focus-ring);outline-offset:1px}label{font-size:15.6px;color:var(--muted);display:block;margin-bottom:4px}table{border-collapse:collapse;width:100%;background:var(--surface)}td,th{border:1px solid var(--border);padding:7px 10px;text-align:left;vertical-align:top}thead th{background:var(--wiwi-gray-100);font-weight:600}.card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:16px}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.muted{color:var(--muted);font-size:15.6px}.tag{display:inline-block;padding:1px 8px;border-radius:10px;font-size:14.4px;background:var(--wiwi-gray-100)}.tag.warn{background:var(--wiwi-warning-tint);color:var(--wiwi-warning)}.tag.ok{background:var(--wiwi-success-tint);color:var(--wiwi-success)}.tag.err{background:var(--wiwi-danger-tint)}.error-text,.tag.err{color:var(--wiwi-danger)}.error-text{font-size:15.6px;white-space:pre-wrap}.smw-map{border-collapse:collapse;width:100%;min-width:960px;background:#fff;color:#000;table-layout:fixed}.smw-map td,.smw-map th{border:1px solid #000;padding:6px 8px;font-size:15.6px}.smw-map thead th{background:#000;color:#fff;text-align:center;-webkit-print-color-adjust:exact;print-color-adjust:exact}.smw-map .rowlabel{font-weight:700;width:110px}.smw-map .grouplabel{font-weight:700;width:44px;text-align:center}.smw-map tr.section-top>*{border-top:2.5px solid #000}.smw-map td.cell{cursor:pointer;vertical-align:top}.smw-map td.cell:hover{background:var(--tint)}.smw-map td.cell.unplanned{color:var(--wiwi-text-muted);text-align:center;cursor:pointer}.smw-map td.cell.unplanned:hover{background:var(--tint)}.smw-map td.cell.masked{background:var(--wiwi-gray-100);color:var(--wiwi-text-muted);text-align:center;cursor:not-allowed}.smw-map .cell ul{margin:0;padding-left:16px}.smw-map .cell .amt{font-weight:700}.drawer-mask{position:fixed;inset:0;background:var(--wiwi-overlay);z-index:40}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(440px,92vw);background:var(--surface);z-index:41;padding:20px;overflow-y:auto;box-shadow:-4px 0 16px rgba(0,0,0,.15)}@media print{.no-print{display:none!important}body{background:#fff}.smw-map{min-width:0}}.map-readonly input:not([data-readonly-safe]),.map-readonly select:not([data-readonly-safe]),.map-readonly textarea:not([data-readonly-safe]){pointer-events:none;background:var(--wiwi-surface-sunken);opacity:.7}