:root{--color-primary:#1e3a8a;--color-primary-dark:#172a63;--color-primary-light:#2f4fb3;--color-accent:#06b6d4;--color-accent-dark:#0891b2;--color-bg:#f4f6fa;--color-surface:#fff;--color-border:#d9dde5;--color-text:#1f2937;--color-text-muted:#6b7280;--color-danger:#dc2626;--color-warning:#f59e0b;--color-tab-bg:#1e3a8a;--color-tab-hover:#2f4fb3;--color-subtab-bg:#e8edf5;--color-row-alt:#f7f9fc;--color-input-bg:#fffbe6;--shadow-sm:0 1px 2px rgba(0,0,0,.06);--shadow-md:0 4px 12px rgba(0,0,0,.08);--radius:6px}*{box-sizing:border-box}#__nuxt,body,html{background:var(--color-bg);color:var(--color-text);font-family:Microsoft JhengHei,PingFang TC,Segoe UI,Tahoma,sans-serif;font-size:14px;height:100%;margin:0;padding:0}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button{border:none;border-radius:var(--radius);cursor:pointer;font-family:inherit;font-size:14px;padding:6px 14px}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-light)}.btn-accent{background:var(--color-accent);color:#fff}.btn-accent:hover{background:var(--color-accent-dark)}.btn-ghost{background:#fff;border:1px solid var(--color-border);color:var(--color-primary)}input[type=date],input[type=password],input[type=text],select,textarea{background:var(--color-input-bg);border:1px solid var(--color-border);border-radius:4px;font-family:inherit;font-size:14px;outline:none;padding:5px 8px;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px #06b6d42e}input.readonly,input[readonly]{background:#eef0f4;color:#4b5563}label{color:var(--color-text)}.page-container{margin:0 auto;max-width:1280px;padding:16px}.card{background:var(--color-surface);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:16px 20px}.title-bar{align-items:center;border-bottom:2px solid var(--color-primary);display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:8px}.title-bar h2{color:var(--color-primary);font-size:18px;letter-spacing:1px;margin:0}.title-code{color:var(--color-text-muted);font-size:12px}.form-grid{display:grid;gap:10px 24px;grid-template-columns:1fr 1fr}.form-row{align-items:center;display:grid;gap:8px;grid-template-columns:200px 1fr}.form-row label{color:#374151;text-align:right;white-space:nowrap}.form-row label.required:before{color:var(--color-danger);content:"* "}.note-text{color:var(--color-danger);font-size:13px;line-height:1.6;margin:10px 0;text-align:center}.hint-text{color:var(--color-text-muted);font-size:12px;grid-column:1/-1;padding-left:208px}table.data-table{background:#fff;border-collapse:collapse;font-size:13px;width:100%}table.data-table th{background:var(--color-primary);color:#fff;font-weight:600;padding:8px 10px;text-align:left;white-space:nowrap}table.data-table td{border-bottom:1px solid var(--color-border);padding:6px 10px;white-space:nowrap}table.data-table tr:nth-child(2n) td{background:var(--color-row-alt)}table.data-table tr.highlight td{background:#fff3cd!important;border:2px solid var(--color-danger)}:root[data-theme=modern]{--color-primary:#1e3a8a;--color-primary-dark:#172a63;--color-primary-light:#2f4fb3;--color-accent:#06b6d4;--color-accent-dark:#0891b2;--color-bg:#f4f6fa;--color-surface:#fff;--color-border:#d9dde5;--color-text:#1f2937;--color-text-muted:#6b7280;--color-danger:#dc2626;--color-warning:#f59e0b;--color-tab-bg:#1e3a8a;--color-tab-hover:#2f4fb3;--color-subtab-bg:#e8edf5;--color-row-alt:#f7f9fc;--color-input-bg:#fffbe6;--shadow-sm:0 1px 2px rgba(0,0,0,.06);--shadow-md:0 4px 12px rgba(0,0,0,.08);--radius:6px}:root[data-theme=terminal]{--color-primary:#7fa67f;--color-primary-dark:#5a8866;--color-primary-light:#7fa67f;--color-accent:#8fab7a;--color-accent-dark:#6b8260;--color-bg:#fffce6;--color-surface:#ffffea;--color-border:gray;--color-text:#000;--color-text-muted:#555;--color-danger:#b22222;--color-warning:#b8860b;--color-tab-bg:#7fa67f;--color-tab-hover:#94b894;--color-subtab-bg:#c8e0c8;--color-row-alt:#fff8d5;--color-input-bg:#ffffe6;--shadow-sm:none;--shadow-md:none;--radius:0}:root[data-theme=terminal] #__nuxt,:root[data-theme=terminal] body{font-family:"MS Sans Serif",新細明體,PMingLiU,Tahoma,sans-serif;font-size:13px}:root[data-theme=terminal] input[type=date],:root[data-theme=terminal] input[type=password],:root[data-theme=terminal] input[type=text],:root[data-theme=terminal] select,:root[data-theme=terminal] textarea{background:var(--color-input-bg);border:2px inset gray;border-radius:0}:root[data-theme=terminal] input:focus,:root[data-theme=terminal] select:focus,:root[data-theme=terminal] textarea:focus{border-color:gray;box-shadow:none;outline:1px dotted #000;outline-offset:-2px}:root[data-theme=terminal] button{background:silver;border:2px outset silver;border-radius:0;color:#000;font-size:12px;padding:2px 12px}:root[data-theme=terminal] button:active{border-style:inset}:root[data-theme=terminal] .btn-accent,:root[data-theme=terminal] .btn-ghost,:root[data-theme=terminal] .btn-primary{background:silver;border:2px outset silver;color:#000}:root[data-theme=terminal] .btn-accent:hover,:root[data-theme=terminal] .btn-primary:hover{background:#d4d0c8}:root[data-theme=terminal] .card{border:1px solid var(--color-border);border-radius:0;box-shadow:none;padding:8px 12px}:root[data-theme=terminal] .title-bar{border-bottom:1px solid var(--color-border);margin-bottom:10px;padding-bottom:4px}:root[data-theme=terminal] .title-bar h2{color:var(--color-primary);font-size:15px;letter-spacing:0}:root[data-theme=terminal] table.data-table{border:1px solid gray;font-size:12px}:root[data-theme=terminal] table.data-table th{background:#c0dcc0;border:1px solid gray;color:#000;font-weight:700;padding:4px 8px}:root[data-theme=terminal] table.data-table td{border:1px solid #d4d0c8;padding:3px 8px}:root[data-theme=terminal] table.data-table tr:nth-child(2n) td{background:var(--color-row-alt)}:root[data-theme=terminal] .form-row label{color:#000;font-weight:400}:root[data-theme=terminal] .page-container{padding:8px}:root[data-theme=terminal] .top-bar{align-items:center;height:44px;padding:0 16px}:root[data-theme=terminal] .tab-bar{display:none}:root[data-theme=terminal] .retro-chips{display:flex}:root[data-theme=terminal] select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:var(--color-input-bg);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16'><rect width='16' height='16' fill='%23c0c0c0'/><rect x='0' y='0' width='15' height='1' fill='%23ffffff'/><rect x='0' y='0' width='1' height='15' fill='%23ffffff'/><rect x='15' y='0' width='1' height='16' fill='%23808080'/><rect x='0' y='15' width='16' height='1' fill='%23808080'/><polygon points='4,6 12,6 8,12' fill='%23000000'/></svg>");background-position:right 0 center;background-repeat:no-repeat;background-size:16px 100%;padding-right:20px}:root[data-theme=terminal] .form-row{align-items:center;gap:4px}:root[data-theme=terminal] .form-row label{font-size:12px;line-height:1.2}:root[data-theme=terminal] .form-grid{gap:4px 12px;margin-right:auto;max-width:900px}:root[data-theme=terminal] .hint-text{font-size:11px}:root[data-theme=terminal] input[type=date],:root[data-theme=terminal] input[type=password],:root[data-theme=terminal] input[type=text],:root[data-theme=terminal] select,:root[data-theme=terminal] textarea{font-size:12px;height:22px;padding:1px 4px}:root[data-theme=terminal] textarea{height:auto;min-height:22px}:root[data-theme=terminal] .card{background:var(--color-surface);border:1px solid var(--color-primary-dark);margin-bottom:6px;padding:6px 8px}:root[data-theme=terminal] table.data-table{font-size:11px}:root[data-theme=terminal] table.data-table th{line-height:1.15;padding:2px 6px;white-space:normal}:root[data-theme=terminal] table.data-table td{line-height:1.3;padding:1px 6px}:root[data-theme=terminal] .page-container{padding:4px}:root[data-theme=terminal] :is(button,input,select,textarea,.card,.login-card,.menu-card,.info-box,.app-alert,.retro-chip,.theme-switch):after,:root[data-theme=terminal] :is(button,input,select,textarea,.card,.login-card,.menu-card,.info-box,.app-alert,.retro-chip,.theme-switch):before,:root[data-theme=terminal] :is(button,input,select,textarea,.card,.login-card,.menu-card,.info-box,.modal-content,.modal-body,.modal-footer,.app-alert,.status-pass,.status-fail,.badge,.chip,.retro-chip,.theme-switch,.btn-primary,.btn-accent,.btn-ghost,.btn-login,.btn-inline,.tab,.sub-tab,.title-bar,.pdf-preview,.toast){border-radius:0!important}:root[data-theme=terminal] .sub-tab-bar{align-items:center;background:var(--color-primary);border-bottom:1px solid var(--color-primary-dark);gap:12px;min-height:36px;padding:8px}:root[data-theme=terminal] .sub-tab{background:transparent;border:none;font-size:14px;margin-top:0;padding:0}:root[data-theme=terminal] .sub-tab a{color:#fff}:root[data-theme=terminal] .sub-tab.active{border-top:none}:root[data-theme=terminal] .sub-tab.active a{color:#ff6;font-weight:400}:root[data-theme=terminal] .sub-tab .tab-en{color:#c0dcc0;font-size:12px}:root[data-theme=terminal] .sub-tab .close{color:#fff;font-size:14px}:root[data-theme=terminal] .auth-shell{background:var(--color-subtab-bg)}:root[data-theme=terminal] .login-card{background:var(--color-surface);border:1px solid var(--color-primary-dark);box-shadow:none;padding:20px}:root[data-theme=terminal] .login-card .field label{color:#000;font-size:12px}:root[data-theme=terminal] .login-card .field input{background:var(--color-input-bg);border:2px inset gray;font-size:12px;height:22px;padding:2px 4px}:root[data-theme=terminal] .login-card .btn-login{background:silver;border:2px outset silver;color:#000;font-size:13px;font-weight:400;margin-top:4px;padding:4px 12px}:root[data-theme=terminal] .login-card .btn-login:hover{background:#d4d0c8}:root[data-theme=terminal] .login-card .btn-login:active{border-style:inset}:root[data-theme=terminal] .menu-grid{gap:4px}:root[data-theme=terminal] .menu-card{background:silver;border:2px outset silver;color:#000;padding:6px 10px;transition:none}:root[data-theme=terminal] .menu-card:hover{background:#d4d0c8;border-color:silver;box-shadow:none;text-decoration:none;transform:none}:root[data-theme=terminal] .menu-card:active{border-style:inset}:root[data-theme=terminal] .menu-code{color:navy;font-size:12px;font-weight:700}:root[data-theme=terminal] .menu-name{color:#000;font-size:13px;font-weight:700;margin:2px 0}:root[data-theme=terminal] .menu-name-en{color:#000;font-size:11px;font-weight:400;margin-bottom:2px}:root[data-theme=terminal] .menu-desc,:root[data-theme=terminal] .title-en{color:#333;font-size:11px}:root[data-theme=terminal] .group-card+.group-card{margin-top:4px}:root[data-theme=terminal] #__nuxt,:root[data-theme=terminal] :is(button,input,select,textarea,table,.info-box,.info-box *,.card,.login-card,.menu-card,.app-alert,.retro-chip,.theme-switch):not(.brand-text),:root[data-theme=terminal] body{font-family:新細明體,PMingLiU,"MS Sans Serif",Tahoma,sans-serif!important}:root[data-theme=terminal] .brand-text{font-family:Consolas,Lucida Console,Courier New,monospace!important;font-weight:400;letter-spacing:2px}:root[data-theme=terminal] .section-title{align-items:center;border-left:none;color:var(--color-primary-dark);display:flex;font-size:13px;font-weight:700;gap:6px;margin:8px 0 6px;padding-left:0}:root[data-theme=terminal] .section-title:after,:root[data-theme=terminal] .section-title:before{border-top:1px dashed var(--color-primary-dark);content:"";flex:1}:root[data-theme=terminal] .section-en{color:#555;font-size:11px;font-weight:400;margin-left:0}:root[data-theme=terminal] .info-box{background:var(--color-surface);border:1px solid var(--color-primary-dark);font-size:12px;line-height:1.3;margin-top:4px;padding:4px 8px}:root[data-theme=terminal] .info-row{align-items:center;margin-bottom:1px}:root[data-theme=terminal] .info-label{color:#000;width:220px}:root[data-theme=terminal] .info-value{color:#000;font-weight:400}:root[data-theme=terminal] .info-sep{width:12px}:root[data-theme=terminal] .info-label .label-en{display:inline!important;font-size:11px;margin-left:3px;margin-top:0}:root[data-theme=terminal] .sub-section{margin:4px 0;padding:4px 0 0}:root[data-theme=terminal] .action-bar{gap:6px;margin-top:6px;padding-top:6px}:root[data-theme=terminal] .page-date{font-size:11px;margin-bottom:2px}:root[data-theme=terminal] .alert-slot{margin:2px 0}:root[data-theme=terminal] hr{border:none;border-top:1px dashed var(--color-primary-dark);margin:8px 0}:root[data-theme=terminal] .app-alert{font-size:12px;margin-bottom:4px;padding:4px 8px}:root[data-theme=terminal] .app-alert--success{background:#c0dcc0;border:1px solid #064d20;color:#064d20}:root[data-theme=terminal] .app-alert--error{background:#fcc;border:1px solid #8b0000;color:#8b0000}:root[data-theme=terminal] .app-alert--warning{background:#ffe0b3;border:1px solid #630;color:#630}:root[data-theme=terminal] .status-fail,:root[data-theme=terminal] .status-pass{border:1px solid;font-size:12px;font-weight:700;padding:1px 6px}:root[data-theme=terminal] .status-pass{background:#c0dcc0;border-color:#064d20;color:#064d20}:root[data-theme=terminal] .status-fail{background:#fcc;border-color:#8b0000;color:#8b0000}:root[data-theme=terminal] .fail-reason{color:#8b0000;font-size:11px;margin-top:1px}:root[data-theme=terminal] .summary .ok{color:#064d20}:root[data-theme=terminal] .summary .ng{color:#8b0000}
