:root{--bg-page:#f8f6f2;--bg-card:#fff;--bg-dark:#1e293b;--text-primary:#1f2937;--text-secondary:#4b5563;--text-muted:#6b7280;--accent-primary:#0f766e;--accent-primary-hover:#115e59;--accent-warm:#b45309;--accent-danger:#dc2626;--border-color:#e5e7eb;--radius-md:10px;--radius-lg:14px;--shadow-sm:0 1px 3px rgba(0,0,0,.08);--shadow-md:0 4px 12px rgba(15,23,42,.08)}*{box-sizing:border-box}body,html{background-color:var(--bg-page);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang TC,Microsoft JhengHei,Noto Sans TC,sans-serif;line-height:1.55;margin:0;padding:0;-webkit-font-smoothing:antialiased}a{color:var(--accent-primary);text-decoration:none}a:hover{text-decoration:underline}.app-container{margin:0 auto;max-width:1240px;padding:1.25rem 1.5rem}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:1.25rem;padding:1.5rem}.btn{align-items:center;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:.94rem;font-weight:600;gap:.45rem;justify-content:center;padding:.55rem 1.1rem;text-decoration:none!important;transition:all .15s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.btn:disabled{cursor:not-allowed;opacity:.55}.btn-primary{background-color:var(--accent-primary);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--accent-primary-hover)}.btn-secondary{background-color:#fff;border-color:#cbd5e1;color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background-color:#f1f5f9}.btn-warning{background-color:#f59e0b;color:#fff}.btn-danger{background-color:var(--accent-danger);color:#fff}.badge{align-items:center;border-radius:999px;display:inline-flex;font-size:.78rem;font-weight:600;padding:.2rem .65rem}.badge-success{background:#dcfce7;color:#166534}.badge-warning{background:#fef3c7;color:#92400e}.badge-danger{background:#fee2e2;color:#991b1b}.badge-neutral{background:#e2e8f0;color:#334155}.disclaimer-banner{background:#fffbeb;border:1px solid #fde68a;border-radius:var(--radius-md);color:#92400e;font-size:.86rem;margin-bottom:1rem;padding:.75rem 1rem}.alert-error{background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-md);color:#991b1b}.alert-error,.alert-info{margin-bottom:1rem;padding:.85rem 1rem}.alert-info{background:#f0fdfa;border:1px solid #99f6e4;border-radius:var(--radius-md);color:#115e59}.form-group{margin-bottom:1rem}.form-label{color:var(--text-primary);display:block;font-size:.88rem;font-weight:600;margin-bottom:.35rem}.form-input,.form-select,.form-textarea{background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;font-size:.94rem;padding:.55rem .75rem;width:100%}.grid-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.grid-2,.grid-3{display:grid;gap:1.25rem}.grid-3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.table{border-collapse:collapse;font-size:.92rem;width:100%}.table td,.table th{border-bottom:1px solid var(--border-color);padding:.7rem .75rem;text-align:left}.table th{background:#f8fafc;color:var(--text-secondary);font-weight:600}
