.layout{display:flex;min-height:100vh}.sidebar{width:220px;background:var(--bg-secondary);border-right:1px solid var(--border);padding:1rem 0;flex-shrink:0}.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:0 1.25rem 1rem;border-bottom:1px solid var(--border);margin-bottom:1rem}.logo{font-size:1.25rem;font-weight:700;color:var(--accent);flex:1;min-width:0}.sidebar-logout{flex-shrink:0;padding:.35rem .75rem;font-size:.85rem;color:var(--text-secondary);background:transparent;border:1px solid var(--border);border-radius:6px;cursor:pointer;transition:all .2s}.sidebar-logout:hover{color:var(--accent);border-color:var(--accent)}.sidebar-nav{display:flex;flex-direction:column}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;color:var(--text-secondary);transition:all .2s;border-left:3px solid transparent}.nav-item:hover{color:var(--text-primary);background:#ffffff08}.nav-item.active{color:var(--accent);background:#00d4aa14;border-left-color:var(--accent)}.nav-icon{font-size:1.1rem}.nav-group{margin-bottom:.25rem}.nav-parent{cursor:default}.nav-children{padding-left:2rem}.nav-child{padding:.5rem 1.25rem;font-size:.9rem}.nav-child .nav-icon{display:none}.main-content{flex:1;overflow-y:auto;padding:1.5rem}.bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;height:60px;background:var(--bg-secondary);border-top:1px solid var(--border);padding:0 .5rem;z-index:100;justify-content:space-around;align-items:center}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.5rem;color:var(--text-secondary);font-size:.7rem;flex:1;transition:color .2s}.bottom-nav-item.active{color:var(--accent)}.bottom-nav-icon{font-size:1.25rem}@media (max-width: 768px){.sidebar{display:none}.bottom-nav{display:flex}.main-content{padding:1rem 1rem 5rem}}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{text-align:center;padding:1.5rem}.stat-value{font-size:2rem;font-weight:700;color:var(--accent)}.stat-label{font-size:.85rem;color:var(--text-secondary);margin-top:.25rem}.project-list{display:flex;flex-direction:column;gap:.5rem}.project-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--bg-secondary);border-radius:8px;color:inherit;transition:background .2s}.project-item:hover{background:var(--border)}.project-name{flex:1;font-weight:500}.project-amount{font-size:.9rem;color:var(--accent)}.empty-hint{color:var(--text-secondary);font-size:.9rem}.loading{color:var(--text-secondary);padding:2rem;text-align:center}.member-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.member-filters{display:flex;gap:.5rem;flex-wrap:wrap}.member-filters select{padding:.4rem .8rem;border-radius:6px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-primary);font-size:.9rem}.form-row{display:flex;gap:1rem;flex-wrap:wrap}.form-row .form-group{flex:1;min-width:120px}.tag-chips{display:flex;flex-wrap:wrap;gap:.4rem}.tag-chip{padding:.3rem .6rem;border-radius:4px;font-size:.8rem;border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;transition:all .2s}.tag-chip:hover{border-color:var(--accent);color:var(--accent)}.tag-chip.active{background:#00d4aa33;border-color:var(--accent);color:var(--accent)}.member-list{margin-top:1rem}.member-card{margin-bottom:1rem}.member-header{display:flex;justify-content:space-between;align-items:flex-start}.member-name{font-size:1.1rem;font-weight:600}.member-meta{display:flex;gap:.5rem;margin-top:.2rem;font-size:.85rem}.member-role{color:var(--accent)}.member-level{color:var(--text-secondary);background:#ffffff14;padding:.1rem .4rem;border-radius:4px}.member-account-badge{font-size:.75rem;color:var(--accent);background:#00d4aa26;padding:.1rem .4rem;border-radius:4px}.member-actions{display:flex;gap:.5rem}.member-tags{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.5rem}.tag-badge{font-size:.75rem;padding:.2rem .5rem;border-radius:4px;background:#00d4aa26;color:var(--accent)}.tag-badge.domain{background:#ffad1f33;color:var(--warning)}.btn-link{font-size:.85rem;color:var(--accent);padding:.2rem .5rem}.member-position{font-size:.85rem;color:var(--text-secondary);margin-top:.2rem}.member-skills{margin-top:.5rem;font-size:.85rem;color:var(--accent)}.member-resume{margin-top:.5rem;font-size:.9rem;color:var(--text-secondary);line-height:1.5}.form-card{margin-top:1rem}.resume-upload{padding-bottom:.5rem;border-bottom:1px solid var(--border);margin-bottom:.5rem}.upload-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.upload-hint{font-size:.85rem;color:var(--text-secondary)}.resume-parse-stream-content{font-size:.8rem;color:var(--text-primary);white-space:pre-wrap;word-break:break-all;max-height:120px;overflow-y:auto;margin:0;line-height:1.4}.field-hint{font-size:.8rem;color:var(--text-secondary);margin-top:.3rem;font-style:italic}.btn-outline{padding:.5rem 1rem;border:1px solid var(--accent);color:var(--accent);border-radius:6px;font-size:.9rem}.btn-outline:hover:not(:disabled){background:#00d4aa1a}.btn-outline:disabled{opacity:.6;cursor:not-allowed}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:var(--bg-card);border-radius:12px;padding:1.5rem;max-width:400px;width:100%;border:1px solid var(--border)}.modal-title{font-size:1.1rem;font-weight:600;margin-bottom:1rem}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem}@media (max-width: 600px){.form-row{grid-template-columns:1fr}}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin-top:1rem}.project-card{display:flex;flex-direction:column;gap:.5rem;color:inherit}.project-card:hover{border-color:var(--accent)}.project-name{font-size:1.1rem;font-weight:600}.project-amount{font-size:1rem;color:var(--accent)}.project-summary{font-size:.85rem;color:var(--text-secondary);margin-top:.5rem}.back-link{display:inline-block;margin-bottom:1rem;color:var(--text-secondary);font-size:.9rem}.ai-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;align-items:flex-start}.ai-allocate-group{display:flex;gap:.35rem;align-items:center}.btn-outline{background:transparent;border:1px solid var(--border);color:var(--text-secondary);padding:.4rem .7rem;border-radius:6px;font-size:.9rem;cursor:pointer}.btn-outline:hover{background:var(--bg-secondary)}.btn-danger{color:#dc3545;border-color:#dc3545}.btn-danger:hover{background:#dc35451a}.allocate-members-select{width:100%;padding:.75rem 1rem;background:var(--bg-secondary);border-radius:8px;margin-top:.5rem}.allocate-members-select label{display:block;font-size:.9rem;margin-bottom:.5rem;color:var(--text-secondary)}.allocate-members-checkboxes{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-bottom:.5rem}.allocate-member-item{display:inline-flex;align-items:center;gap:.35rem;font-size:.9rem;cursor:pointer}.cost-row{display:flex;gap:1.5rem;flex-wrap:wrap}.cost-total{font-weight:600;color:var(--accent)}.risk-content{font-size:.85rem;white-space:pre-wrap;max-height:300px;overflow-y:auto}.task-list{display:flex;flex-direction:column;gap:.5rem}.task-item{padding:.75rem;background:var(--bg-secondary);border-radius:8px}.task-title{font-weight:500}.task-meta{font-size:.85rem;color:var(--text-secondary);margin-top:.25rem}.task-daily-plans{margin-top:.5rem;font-size:.8rem;color:var(--text-secondary);display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.task-daily-label{color:var(--text-secondary)}.task-daily-tag{padding:.15rem .4rem;background:var(--bg-tertiary, #e8e8e8);border-radius:4px}.allocation-list{display:flex;flex-direction:column;gap:.75rem}.allocation-item{padding:.75rem;background:var(--bg-secondary);border-radius:8px;border-left:3px solid var(--accent)}.allocation-header{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem}.allocation-name{font-weight:600;font-size:1rem}.allocation-role{padding:.15rem .5rem;background:#00d4aa26;color:var(--accent);border-radius:4px;font-size:.85rem}.allocation-hours{font-size:.9rem;color:var(--text-secondary)}.allocation-reason{margin-top:.5rem;font-size:.9rem;color:var(--text-secondary);line-height:1.5}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.project-upload-area{padding:1rem;background:var(--bg-secondary);border-radius:8px;border:1px dashed var(--border)}.project-upload-area .hint{font-size:.85rem;color:var(--text-secondary);margin:.5rem 0}.project-file-input{display:none}.project-upload-row{display:flex;gap:.5rem;align-items:center}.project-file-list{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.75rem}.project-file-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:var(--accent);color:#fff;border-radius:4px;font-size:.85rem}.project-file-remove{background:none;border:none;color:#fff;cursor:pointer;font-size:1.1rem;line-height:1;padding:0 .2rem}.project-file-remove:hover{opacity:.8}.project-stamp-warning{margin-top:.75rem;padding:.5rem .75rem;background:#fff3cd;color:#856404;border-radius:6px;font-size:.9rem}.project-ai-parse-detail{margin-top:.75rem;display:flex;flex-direction:column;gap:.5rem}.project-parse-detail-toggle{background:none;border:1px solid var(--border);color:var(--text-secondary);padding:.35rem .6rem;border-radius:4px;font-size:.85rem;cursor:pointer}.project-parse-detail-toggle:hover{background:var(--bg-secondary)}.project-parse-detail-content{margin-top:.5rem;padding:.75rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;font-size:.8rem;white-space:pre-wrap;word-break:break-all;max-height:300px;overflow-y:auto}.resume-parse-stream{margin-top:.75rem;padding:.75rem;background:#0003;border-radius:8px;border:1px solid var(--border)}.resume-parse-stream-label{font-size:.8rem;color:var(--text-secondary);margin-bottom:.4rem}.resume-parse-stream-content{font-size:.8rem;color:var(--text-primary);white-space:pre-wrap;word-break:break-all;max-height:200px;overflow-y:auto;margin:0;line-height:1.4}.resume-parse-cursor{display:inline-block;animation:blink 1s step-end infinite;color:var(--accent)}@keyframes blink{50%{opacity:0}}.task-list{margin-top:1rem}.task-card{margin-bottom:1rem}.task-header{display:flex;justify-content:space-between;align-items:flex-start}.task-title{font-weight:600}.task-meta{font-size:.85rem;color:var(--text-secondary);margin-top:.5rem}.task-desc{font-size:.9rem;margin-top:.5rem;color:var(--text-secondary)}.report-list{margin-top:1rem}.report-card{margin-bottom:1rem}.report-header{display:flex;gap:1rem;font-size:.85rem;color:var(--text-secondary);margin-bottom:.5rem}.report-content{font-size:.95rem;line-height:1.5}.hint{font-size:.85rem;color:var(--text-secondary);margin-bottom:.5rem}.project-select{padding:.5rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);margin-bottom:.5rem}.ai-analyze-result{margin-top:1rem;padding:.75rem;background:var(--bg-secondary);border-radius:8px;font-size:.9rem}.availability-summary{font-weight:500;margin-bottom:.75rem}.availability-list{display:flex;flex-direction:column;gap:.5rem}.availability-item{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding:.5rem;background:#00000026;border-radius:6px}.availability-item .member-name{font-weight:500;min-width:4rem}.availability-item .workload{padding:.15rem .4rem;border-radius:4px;font-size:.8rem}.availability-item .workload-较忙{background:#ef444433;color:#ef4444}.availability-item .workload-一般{background:#eab30833;color:#eab308}.availability-item .workload-空闲{background:#22c55e33;color:#22c55e}.availability-item .available.yes{color:var(--accent);font-size:.85rem}.availability-item .available.no{color:var(--text-secondary);font-size:.85rem}.availability-item .reason{font-size:.85rem;color:var(--text-secondary);flex:1;min-width:100%}.attendance-list{margin-top:1rem}.attendance-card{margin-bottom:1rem}.attendance-header{display:flex;justify-content:space-between;align-items:center;font-weight:500}.attendance-time{font-size:.9rem;color:var(--text-secondary);margin-top:.5rem}.overtime{margin-left:.5rem;color:var(--warning)}.finance-summary-top,.receipt-form-card{margin-bottom:1rem}.receipt-form-card .form-row{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:.75rem}.receipt-form-card .form-group{flex:1;min-width:140px}.receipt-invoice-row label{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer}.receipt-form-actions{display:flex;gap:.75rem;margin-top:1rem}.receipt-form-card .required{color:#ef4444}.upload-ai-card{margin-bottom:1rem;padding:.75rem 1rem}.upload-ai-row{display:flex;flex-direction:column;gap:.75rem}.upload-ai-section{display:flex;flex-direction:column;gap:.4rem}.upload-ai-section .card-title{margin-bottom:0;font-size:.95rem}.upload-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.chat-card{margin-bottom:1rem}.chat-form{display:flex;gap:.5rem;margin-top:.5rem}.chat-form input{flex:1;padding:.6rem 1rem;border-radius:8px;border:1px solid var(--border);font-size:.95rem}.chat-history{max-height:400px;overflow-y:auto}.chat-item{padding:.75rem;border-bottom:1px solid var(--border)}.chat-item:last-child{border-bottom:none}.chat-user{color:var(--text-primary);margin-bottom:.25rem}.chat-ai{color:var(--accent);font-size:.95rem}.chat-time{font-size:.8rem;color:var(--text-secondary);margin-top:.25rem}.chat-cash-hint{margin-bottom:.5rem;font-size:.9rem}.chat-cash-hint label{color:var(--text-secondary)}.chat-confirm-box{margin-top:1rem;padding:1rem;background:#ef444414;border:1px solid rgba(239,68,68,.3);border-radius:8px}.chat-confirm-box .confirm-message{margin-bottom:.75rem;color:var(--text-primary);white-space:pre-wrap}.chat-confirm-box .confirm-data{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.75rem;font-size:.9rem;color:var(--text-secondary)}.chat-confirm-box .confirm-actions{display:flex;gap:.5rem}.cash-display{font-weight:600;margin:0 8px}.sub-row .sub-cell{padding-left:2rem;color:var(--text-secondary)}.expand-row td{padding:0!important;vertical-align:top;border-bottom:none}.expand-content{max-height:0;overflow:hidden;transition:max-height .25s ease-out;background:#00000008;border-left:3px solid var(--accent);margin-left:1.5rem}.expand-content.expanded{max-height:400px;transition:max-height .3s ease-in}.sub-row-inner{display:flex;align-items:center;gap:1rem;padding:.5rem 1rem .5rem 2.5rem;border-bottom:1px solid var(--border);font-size:.9rem}.sub-row-inner:last-child{border-bottom:none}.sub-row-inner .sub-amount{flex:1;color:var(--text-secondary)}.sub-row-inner .sub-status{min-width:60px}.sub-row-inner .sub-actions{display:flex;gap:.5rem}.expand-btn{padding:0 4px;min-width:24px;transition:transform .2s ease}.expand-btn.expanded{transform:rotate(90deg)}.amount-in{color:var(--success, #22c55e)}.amount-out{color:var(--danger, #ef4444)}.remark-cell{max-width:160px;word-break:break-word;color:var(--text-secondary);font-size:.9rem}.schedule-date-input{padding:.4rem .5rem;border-radius:6px;border:1px solid var(--border);font-size:.9rem}.ai-output-box{background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;padding:.5rem .75rem;font-size:.82rem;line-height:1.5;white-space:pre-wrap;word-break:break-word;max-height:160px;overflow-y:auto;margin-bottom:.4rem;font-family:Consolas,Monaco,Courier New,monospace}.ai-output-placeholder{color:var(--text-secondary);font-style:italic}.finance-page .hint{font-size:.85rem;color:var(--text-secondary);margin-bottom:.75rem}.finance-summary{display:flex;flex-direction:row;flex-wrap:nowrap;gap:.75rem}.summary-card{flex:1;min-width:0;padding:.6rem 1rem;border-radius:10px;border:1px solid var(--border)}.summary-card .label{display:block;font-size:.85rem;color:var(--text-secondary);margin-bottom:.25rem}.summary-card .amount{font-size:1.1rem;font-weight:600}.summary-card.cash .amount{color:#0ea5e9}.summary-card.receivable .amount{color:#22c55e}.summary-card.payable .amount{color:#ef4444}.summary-card.balance .amount{color:var(--accent)}.schedule-form{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.schedule-form label{font-size:.9rem}.schedule-form input{width:140px;padding:.5rem;border-radius:8px;border:1px solid var(--border)}.schedule-filter{display:flex;gap:.5rem;margin:.75rem 0}.schedule-filter button{padding:.4rem 1rem;border-radius:8px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;font-size:.9rem}.schedule-filter button.active{background:var(--accent);color:var(--bg-primary);border-color:var(--accent)}.schedule-filter button:hover:not(.active){background:var(--bg-tertiary)}.finance-table tr.paid .paid-date{color:var(--text-secondary)}.tab-bar{display:flex;gap:.5rem;margin-bottom:1rem}.tab-bar button{padding:.5rem 1rem;border-radius:8px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer}.tab-bar button.active{background:var(--accent);color:var(--bg-primary);border-color:var(--accent)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.card-header .card-title{margin-bottom:0}.btn-sm{padding:.35rem .75rem;font-size:.85rem}.inline-form{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.inline-form input,.inline-form select{padding:.5rem;border-radius:8px;border:1px solid var(--border);min-width:100px}.table-wrap{overflow-x:auto}.finance-table{width:100%;border-collapse:collapse;font-size:.9rem}.finance-table th,.finance-table td{padding:.6rem .75rem;text-align:left;border-bottom:1px solid var(--border)}.finance-table th{font-weight:600;color:var(--text-secondary);background:var(--bg-secondary)}.finance-table .suggested{color:var(--accent);font-weight:500}.finance-table .reason{max-width:180px;font-size:.8rem;color:var(--text-secondary)}.finance-table tr.paid,.finance-table tr.received{opacity:.7}.btn-link{background:none;border:none;color:var(--accent);cursor:pointer;font-size:.85rem;padding:0 .25rem;margin-right:.5rem}.btn-link.danger{color:#ef4444}.btn-link:hover{text-decoration:underline}.empty-hint{color:var(--text-secondary);font-size:.9rem;padding:1rem;text-align:center}@media (max-width: 768px){.finance-summary{flex-wrap:wrap}.finance-table th,.finance-table td{padding:.5rem;font-size:.85rem}.inline-form{flex-direction:column}.inline-form input,.inline-form select{min-width:100%}}.text-danger{color:#dc2626}.text-success{color:#16a34a}.fw-bold{font-weight:600}.approvals-toolbar{margin-bottom:1rem}.approvals-toolbar label{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-secondary)}.approvals-select{padding:.5rem 2rem .5rem .75rem;border:1px solid var(--border);border-radius:8px;font-size:.9rem;background:var(--bg-primary);color:var(--text-primary);min-width:120px;cursor:pointer}.approvals-loading,.approvals-empty{padding:2rem;text-align:center;color:var(--text-secondary)}.approvals-table-card{padding:0;overflow:hidden}.approvals-table-wrap{overflow-x:auto}.approvals-table{width:100%;border-collapse:collapse}.approvals-table th,.approvals-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border)}.approvals-table th{font-weight:600;color:var(--text-secondary);font-size:.85rem;white-space:nowrap}.approvals-table td{font-size:.9rem}.approvals-status{display:inline-block;padding:.2rem .5rem;border-radius:6px;font-size:.8rem}.approvals-status-pending{background:#ffc10733;color:#d4a017}.approvals-status-approved{background:#4caf5033;color:#4caf50}.approvals-status-rejected{background:#f4433633;color:#f44336}.approvals-status-cancelled{background:#9e9e9e33;color:#9e9e9e}.approvals-content-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.approvals-table a{color:var(--accent);text-decoration:none}.approvals-table a:hover{text-decoration:underline}.approvals-view-voucher{background:none;border:none;color:var(--accent);cursor:pointer;font-size:.9rem;padding:0;text-decoration:none}.approvals-view-voucher:hover{text-decoration:underline}.approvals-voucher-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#000000bf;display:flex;align-items:center;justify-content:center;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.approvals-voucher-modal-content{position:relative;max-width:90vw;max-height:90vh;background:var(--bg-card);border-radius:12px;padding:1rem;box-shadow:0 8px 32px #0006;overflow:auto}.approvals-voucher-modal-close{position:absolute;top:.5rem;right:.5rem;width:36px;height:36px;border:none;background:#ffffff1a;color:var(--text-primary);font-size:1.5rem;line-height:1;cursor:pointer;border-radius:8px;display:flex;align-items:center;justify-content:center;z-index:1}.approvals-voucher-modal-close:hover{background:#fff3}.approvals-voucher-img{max-width:100%;max-height:75vh;display:block;border-radius:8px}.approvals-voucher-open-new{display:block;margin-top:.75rem;font-size:.9rem;color:var(--accent);text-align:center}.approvals-voucher-open-new:hover{text-decoration:underline}.approvals-voucher-nonimg{padding:2rem;text-align:center}.approvals-voucher-nonimg p{margin-bottom:1rem;color:var(--text-secondary)}.approvals-voucher-open-link{color:var(--accent);text-decoration:none}.approvals-voucher-open-link:hover{text-decoration:underline}.intro-card{margin-bottom:1.5rem}.hint{font-size:.9rem;color:var(--text-secondary);margin-bottom:1rem}.suggestions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.suggestion-btn{padding:.4rem .75rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);font-size:.85rem}.suggestion-btn:hover{border-color:var(--accent);color:var(--accent)}.answer-content{white-space:pre-wrap;line-height:1.7}.intro-actions{display:flex;gap:.5rem;flex-wrap:wrap}.intro-train-card{margin-bottom:1.5rem}.intro-train-toggle{width:100%;text-align:left;padding:.75rem 0;background:none;border:none;font-size:.95rem;color:var(--text-primary);cursor:pointer}.intro-train-toggle:hover{color:var(--accent)}.intro-train-body{padding-top:.5rem;border-top:1px solid var(--border)}.intro-train-form{display:flex;flex-direction:column;gap:.5rem;margin:1rem 0}.intro-train-form textarea{padding:.5rem;border:1px solid var(--border);border-radius:6px;resize:vertical}.intro-train-name{padding:.5rem;border:1px solid var(--border);border-radius:6px;max-width:200px}.intro-prompt-list{list-style:none;padding:0;margin:1rem 0 0}.intro-prompt-list li{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem 0;border-bottom:1px solid var(--border)}.intro-prompt-list li:last-child{border-bottom:none}.intro-prompt-name{flex-shrink:0;font-weight:500;min-width:60px}.intro-prompt-content{flex:1;font-size:.9rem;color:var(--text-secondary)}.btn-sm{padding:.25rem .5rem;font-size:.8rem}.btn-danger{background:#dc3545;color:#fff;border:none}.btn-danger:hover{background:#c82333}.intro-chat-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);color:#e8e8e8}.intro-chat-header{padding:1.5rem 1rem;text-align:center;border-bottom:1px solid rgba(255,255,255,.1)}.intro-chat-header h1{font-size:1.25rem;font-weight:600;margin:0 0 .25rem}.intro-chat-header p{font-size:.85rem;color:#fff9;margin:0}.intro-chat-main{flex:1;display:flex;flex-direction:column;max-width:640px;margin:0 auto;width:100%;padding:1rem}.intro-chat-messages{flex:1;overflow-y:auto;padding-bottom:1rem}.intro-chat-welcome{padding:1.5rem 0;text-align:center;color:#ffffffd9;line-height:1.7}.intro-chat-welcome p{margin:0 0 .75rem}.intro-chat-suggestions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:1rem}.intro-chat-suggestions button{padding:.5rem 1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:20px;color:#fff;font-size:.9rem;cursor:pointer}.intro-chat-suggestions button:hover{background:#ffffff26;border-color:#ffffff4d}.intro-chat-msg{margin-bottom:1rem}.intro-chat-msg-user{text-align:right}.intro-chat-msg-user .intro-chat-msg-content{display:inline-block;background:#3b82f6;color:#fff;padding:.6rem 1rem;border-radius:12px 12px 4px;max-width:85%}.intro-chat-msg-assistant .intro-chat-msg-content{display:inline-block;background:#ffffff14;padding:.6rem 1rem;border-radius:12px 12px 12px 4px;max-width:90%;white-space:pre-wrap;line-height:1.6}.intro-chat-loading{color:#fff9}.intro-chat-cursor{display:inline-block;animation:intro-chat-blink 1s step-end infinite;margin-left:2px}@keyframes intro-chat-blink{50%{opacity:0}}.intro-chat-form{display:flex;gap:.5rem;padding-top:.5rem}.intro-chat-input{flex:1;padding:.75rem 1rem;border:1px solid rgba(255,255,255,.2);border-radius:24px;background:#ffffff14;color:#fff;font-size:.95rem}.intro-chat-input::placeholder{color:#fff6}.intro-chat-input:focus{outline:none;border-color:#3b82f6}.intro-chat-send{padding:.75rem 1.25rem;background:#3b82f6;border:none;border-radius:24px;color:#fff;font-weight:500;cursor:pointer}.intro-chat-send:hover:not(:disabled){background:#2563eb}.intro-chat-send:disabled{opacity:.6;cursor:not-allowed}.flex-1{flex:1}.prompt-list{margin-top:1rem}.prompt-item{display:flex;align-items:center;gap:.75rem;padding:.5rem;background:var(--bg-secondary);border-radius:6px;margin-bottom:.5rem}.prompt-name{font-weight:500;min-width:80px}.prompt-content{flex:1;font-size:.9rem;color:var(--text-secondary)}.btn-link{color:var(--danger);font-size:.85rem}.salary-list{margin-top:1rem}.admin-login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem;background:linear-gradient(180deg,#0f1419,#1a2332)}.admin-login-card{width:100%;max-width:380px;background:var(--bg-card, #1e293b);border-radius:16px;padding:2.5rem;border:1px solid var(--border, #334155)}.admin-login-card h1{font-size:1.5rem;text-align:center;margin-bottom:.5rem;color:var(--text-primary, #f1f5f9)}.admin-login-desc{text-align:center;color:var(--text-secondary, #94a3b8);font-size:.9rem;margin-bottom:1.5rem}.admin-form-group{margin-bottom:1rem}.admin-form-group input{width:100%;padding:.9rem 1rem;border-radius:10px;border:1px solid var(--border, #334155);background:var(--bg-secondary, #0f172a);color:var(--text-primary, #f1f5f9);font-size:1rem;box-sizing:border-box}.admin-form-group input::placeholder{color:var(--text-secondary, #64748b)}.admin-error{color:#f87171;font-size:.9rem;margin-bottom:.75rem}.admin-btn-primary{width:100%;padding:.9rem;background:var(--accent, #00d4aa);color:#0f1419;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;border:none}.admin-btn-primary:hover:not(:disabled){opacity:.9}.admin-btn-primary:disabled{opacity:.5;cursor:not-allowed}.member-login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem;background:linear-gradient(180deg,#0f1419,#1a2332)}.member-login-card{width:100%;max-width:360px;background:var(--bg-card);border-radius:16px;padding:2rem;border:1px solid var(--border)}.member-login-card h1{font-size:1.5rem;text-align:center;margin-bottom:.5rem}.member-login-desc{text-align:center;color:var(--text-secondary);font-size:.9rem;margin-bottom:1.5rem}.member-wechat-tip{text-align:center;color:var(--text-secondary);font-size:.8rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border)}.member-form-group{margin-bottom:1rem}.member-form-row-inline{display:flex;gap:1rem}.member-form-row-inline .member-form-group{flex:1}.member-form-group input{width:100%;padding:.9rem 1rem;border-radius:10px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);font-size:1rem;box-sizing:border-box}.member-form-group input::placeholder{color:var(--text-secondary)}.member-error{color:var(--danger);font-size:.9rem;margin-bottom:.75rem}.member-btn-primary{width:100%;padding:.9rem;background:var(--accent);color:#0f1419;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;border:none}.member-btn-primary:hover:not(:disabled){background:var(--accent-dim)}.member-btn-primary:disabled{opacity:.5;cursor:not-allowed}.member-btn-disabled{opacity:.5;cursor:not-allowed;background:var(--bg-secondary)!important;color:var(--text-secondary)!important}.member-btn-secondary{padding:.5rem 1rem;background:transparent;color:var(--accent);border:1px solid var(--accent);border-radius:8px;font-size:.9rem;cursor:pointer}.member-btn-secondary:hover{background:#00d4aa1a}.member-btn-fieldwork{width:100%;padding:.9rem;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;border:none}.member-btn-fieldwork:hover:not(:disabled){background:linear-gradient(135deg,#d97706,#b45309)}.member-btn-fieldwork:disabled{opacity:.7;cursor:not-allowed}.member-current-time .member-time-display{font-size:1.5rem;font-weight:600;color:var(--accent)}.member-fieldwork-tag{color:#f59e0b;font-weight:500}.member-office-tag{color:#22c55e}.member-fieldwork-badge{display:inline-block;margin-left:.5rem;padding:.15rem .5rem;font-size:.75rem;background:#f59e0b33;color:#f59e0b;border-radius:4px}.member-location-fieldwork{color:#f59e0b!important}.member-app{min-height:100vh;padding-bottom:95px;background:var(--bg-primary)}.member-header{padding:1rem 1rem .75rem;background:var(--bg-secondary);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.member-header-title{font-size:1.25rem;font-weight:600}.member-header-user{font-size:.9rem;color:var(--text-secondary)}.member-logout{font-size:.85rem;color:var(--accent);padding:.3rem .6rem;cursor:pointer}.member-content{padding:1rem}.member-card{background:var(--bg-card);border-radius:12px;padding:1rem;margin-bottom:1rem;border:1px solid var(--border)}.member-card-title{font-size:1rem;font-weight:600;margin-bottom:.75rem}.member-wechat-footer{position:fixed;bottom:60px;left:0;right:0;padding:.4rem 1rem;background:#00d4aa14;border-top:1px solid var(--border);text-align:center;font-size:.75rem;color:var(--text-secondary);z-index:99}.member-nav{position:fixed;bottom:0;left:0;right:0;height:60px;background:var(--bg-secondary);border-top:1px solid var(--border);display:flex;justify-content:space-around;align-items:center;z-index:100}.member-nav-item{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.5rem 1rem;color:var(--text-secondary);text-decoration:none;font-size:.75rem;border-radius:8px}.member-nav-item.active{color:var(--accent)}.member-nav-icon{font-size:1.25rem}.member-empty{text-align:center;color:var(--text-secondary);padding:2rem;font-size:.95rem}.member-under-dev{text-align:center;padding:3rem 1.5rem}.member-under-dev-icon{font-size:3rem;display:block;margin-bottom:1rem}.member-under-dev p{color:var(--text-primary);font-size:1rem;margin:.25rem 0}.member-under-dev-hint{color:var(--text-secondary)!important;font-size:.9rem!important}.member-profile-info{margin-bottom:.5rem}.member-task-item{padding:.75rem 0;border-bottom:1px solid var(--border)}.member-task-item:last-child{border-bottom:none}.member-task-title{font-weight:500;margin-bottom:.3rem}.member-task-meta{font-size:.85rem;color:var(--text-secondary)}.member-task-daily{margin-top:.4rem;font-size:.8rem;color:var(--text-secondary);display:flex;flex-wrap:wrap;align-items:center;gap:.3rem}.member-task-daily-label{color:var(--text-secondary)}.member-task-daily-tag{padding:.15rem .4rem;background:#00d4aa1f;border-radius:4px;font-size:.8rem}.member-task-status{display:inline-block;padding:.15rem .5rem;border-radius:4px;font-size:.8rem;margin-top:.5rem}.member-task-status.todo{background:#ffffff1a;color:var(--text-secondary)}.member-task-status.doing{background:#00d4aa33;color:var(--accent)}.member-task-status.done{background:#00d4aa26;color:var(--accent)}.member-status-select{margin-top:.5rem;padding:.4rem .6rem;border-radius:6px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);font-size:.85rem}.member-report-item,.member-attendance-item{padding:.75rem 0;border-bottom:1px solid var(--border)}.member-report-item:last-child,.member-attendance-item:last-child{border-bottom:none}.member-report-date,.member-attendance-date{font-weight:500;margin-bottom:.3rem}.member-report-content,.member-attendance-time{font-size:.9rem;color:var(--text-secondary)}.member-form-card{margin-bottom:1rem}.member-form-card .member-form-group{margin-bottom:.75rem}.member-form-row{display:flex;gap:1rem;flex-wrap:wrap}.member-form-row .member-form-group{flex:1;min-width:120px}.member-btn-link{background:none;border:none;color:var(--accent);font-size:.85rem;cursor:pointer;padding:.3rem 0;margin-top:.3rem}.member-btn-link:hover{text-decoration:underline}.member-report-header{margin-bottom:1rem}.member-page-title{font-size:1.2rem;margin:0 0 .3rem}.member-page-desc{font-size:.9rem;color:var(--text-secondary);margin:0}.member-form-group .required{color:#ef4444}.member-form-card label{display:block;font-size:.85rem;color:var(--text-secondary);margin-bottom:.3rem}.member-form-card input,.member-form-card select,.member-form-card textarea{width:100%;padding:.6rem .8rem;border-radius:8px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);font-size:.95rem;box-sizing:border-box}.member-form-card textarea{min-height:80px;resize:vertical}.member-att-hint{font-size:.85rem;color:var(--text-secondary);margin-bottom:.75rem}.member-location-row{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.member-location-row .member-location-card{flex:1;min-width:200px;margin-bottom:0}.member-location-card{margin-bottom:1rem}.member-location-text{font-size:.9rem;color:var(--text-secondary);margin-bottom:.3rem}.member-location-error{color:var(--danger)}.member-location-address{font-size:.85rem;color:var(--text-primary);line-height:1.4;margin:.5rem 0}.member-location-link{font-size:.9rem;color:var(--accent)}.member-office-info{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border)}.member-approval-status{font-size:.8rem;padding:.1rem .4rem;border-radius:4px}.member-approval-pending{background:#ffc10733;color:#ffc107}.member-approval-approved{background:#00d4aa33;color:var(--accent)}.member-approval-rejected{background:#f4433633;color:#f44336}.member-approval-cancelled{background:#9e9e9e33;color:#9e9e9e}.member-approval-content{font-size:.9rem;color:var(--text-secondary);white-space:pre-wrap;word-break:break-word}.member-approval-type{font-size:.85rem;font-weight:600;padding:.2rem .6rem;border-radius:6px;display:inline-block}.member-approval-type-leave{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 1px 3px #3b82f666}.member-approval-type-overtime{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 1px 3px #f59e0b66}.member-approval-type-free{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;box-shadow:0 1px 3px #8b5cf666}.member-approval-duration{display:inline-flex;align-items:center;gap:.25rem;background:linear-gradient(135deg,#00d4aa40,#00d4aa26);color:var(--accent);font-weight:700;font-size:1.1rem;padding:.35rem .75rem;border-radius:8px;margin:.25rem 0;border:1px solid rgba(0,212,170,.3)}.member-approval-filter{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.member-approval-filter-btn{padding:.5rem 1rem;border-radius:20px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-secondary);font-size:.9rem;cursor:pointer;transition:all .2s}.member-approval-filter-btn:hover{background:var(--bg-card);color:var(--text-primary)}.member-approval-filter-btn.active{background:var(--accent);color:#0f1419;border-color:var(--accent)}.member-network-persons{margin-bottom:1rem;padding:.75rem;background:var(--bg-card);border-radius:12px;border:1px solid var(--border)}.member-network-persons-title{font-size:.85rem;color:var(--text-secondary);margin-bottom:.5rem}.member-network-persons-list{display:flex;flex-wrap:wrap;gap:.5rem}.member-network-person-tag{padding:.3rem .6rem;background:var(--bg-secondary);border-radius:8px;font-size:.85rem;color:var(--text-primary)}.member-network-chat{flex:1;overflow-y:auto;padding:1rem 0;min-height:200px;max-height:50vh}.member-network-placeholder{color:var(--text-secondary);font-size:.9rem;padding:1rem}.member-network-placeholder ul{margin:.5rem 0 0 1rem;padding:0}.member-network-placeholder li{margin:.3rem 0}.member-network-msg{margin-bottom:1rem;display:flex;flex-direction:column;gap:.25rem}.member-network-msg-user .member-network-msg-content{background:#00d4aa33;border:1px solid rgba(0,212,170,.3);align-self:flex-end}.member-network-msg-assistant .member-network-msg-content{background:var(--bg-card);border:1px solid var(--border);align-self:flex-start}.member-network-msg-role{font-size:.8rem;color:var(--text-secondary)}.member-network-msg-content{padding:.75rem 1rem;border-radius:12px;max-width:90%;white-space:pre-wrap;word-break:break-word}.member-network-input-wrap{display:flex;flex-direction:column;gap:.5rem;padding-top:.5rem}.member-network-input{width:100%;padding:.75rem 1rem;border-radius:12px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);font-size:1rem;resize:none;box-sizing:border-box}.member-network-input::placeholder{color:var(--text-secondary)}.member-network-send{align-self:flex-end;min-width:100px}.member-network-file-input{display:none}.member-network-input-row{display:flex;gap:.5rem;margin-bottom:.5rem}.member-network-upload-btn{padding:.5rem 1rem}.member-network-clarification{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.member-network-option-btn{padding:.4rem .8rem;background:#00d4aa33;border:1px solid var(--accent);border-radius:8px;color:var(--accent);font-size:.9rem;cursor:pointer}.member-network-option-btn:hover{background:#00d4aa4d}.member-network-cursor{animation:member-network-blink .8s infinite}@keyframes member-network-blink{50%{opacity:0}}.member-pwd-form{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.member-pwd-form .member-form-group{margin-bottom:.75rem}.member-pwd-success{color:var(--accent);font-size:.9rem;margin-bottom:.5rem}.member-pwd-form-actions{display:flex;gap:.75rem;margin-top:1rem}.member-pwd-form-actions button{flex:1}.member-salary-page select{width:100%;padding:.75rem 1rem;border-radius:10px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);font-size:1rem}.member-salary-row{display:flex;justify-content:space-between;padding:.6rem 0;border-bottom:1px solid var(--border);font-size:.95rem}.member-salary-row:last-of-type{border-bottom:none}.member-salary-add span:last-child{color:var(--accent)}.member-salary-deduct span:last-child{color:var(--danger)}.member-salary-total{font-weight:600;font-size:1.1rem;margin-top:.5rem;padding-top:.75rem;border-top:2px solid var(--border)}.member-salary-total span:last-child{color:var(--accent)}.member-salary-link{cursor:pointer;transition:background .2s}.member-salary-link:hover{background:#00d4aa1f}.member-salary-detail-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0009;display:flex;align-items:flex-end;justify-content:center;padding:0}.member-salary-detail-panel{width:100%;max-width:480px;max-height:70vh;background:var(--bg-card);border-radius:16px 16px 0 0;box-shadow:0 -4px 24px #0000004d;overflow:hidden;display:flex;flex-direction:column}.member-salary-detail-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border);font-weight:600;font-size:1rem}.member-salary-detail-close{width:36px;height:36px;border:none;background:#ffffff14;color:var(--text-primary);font-size:1.5rem;line-height:1;cursor:pointer;border-radius:8px;display:flex;align-items:center;justify-content:center}.member-salary-detail-close:hover{background:#ffffff26}.member-salary-detail-body{flex:1;overflow-y:auto;padding:.75rem 1.25rem 1.5rem}.member-salary-detail-item{padding:1rem;margin-bottom:.75rem;background:var(--bg-secondary);border-radius:10px;border:1px solid var(--border)}.member-salary-detail-item:last-child{margin-bottom:0}.member-salary-detail-item-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.35rem}.member-salary-detail-item-time{font-size:.9rem;color:var(--text-secondary);margin-bottom:.25rem}.member-salary-detail-item-content{font-size:.9rem;color:var(--text-secondary);line-height:1.4}.member-salary-detail-voucher{display:inline-block;margin-top:.5rem;font-size:.9rem;color:var(--accent)}.member-voucher-btn{background:none;border:none;color:var(--accent);cursor:pointer;font-size:.9rem;padding:0;text-decoration:none;display:block;margin-bottom:.25rem}.member-voucher-btn:hover{text-decoration:underline}.member-voucher-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#000000bf;display:flex;align-items:center;justify-content:center;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.member-voucher-modal-content{position:relative;max-width:90vw;max-height:90vh;background:var(--bg-card);border-radius:12px;padding:1rem;box-shadow:0 8px 32px #0006;overflow:auto}.member-voucher-modal-close{position:absolute;top:.5rem;right:.5rem;width:36px;height:36px;border:none;background:#ffffff1a;color:var(--text-primary);font-size:1.5rem;line-height:1;cursor:pointer;border-radius:8px;display:flex;align-items:center;justify-content:center;z-index:1}.member-voucher-modal-close:hover{background:#fff3}.member-voucher-img{max-width:100%;max-height:75vh;display:block;border-radius:8px}.member-voucher-open-new{display:block;margin-top:.75rem;font-size:.9rem;color:var(--accent);text-align:center}.member-voucher-open-new:hover{text-decoration:underline}.member-voucher-nonimg{padding:2rem;text-align:center}.member-voucher-nonimg p{margin-bottom:1rem;color:var(--text-secondary)}.member-voucher-nonimg a{color:var(--accent)}.app-content{flex:1;padding:1.5rem;overflow-y:auto}@media (max-width: 768px){.app-content{padding:1rem 1rem 5rem}}.page-header{margin-bottom:1.5rem}.page-header h1{font-size:1.5rem;font-weight:600;color:var(--text-primary)}.page-header p{margin-top:.25rem;font-size:.9rem;color:var(--text-secondary)}.card{background:var(--bg-card);border-radius:12px;border:1px solid var(--border);padding:1.25rem;margin-bottom:1rem}.card-title{font-size:1rem;font-weight:600;margin-bottom:.75rem;color:var(--text-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;border-radius:8px;font-size:.9rem;font-weight:500;transition:all .2s}.btn-primary{background:var(--accent);color:var(--bg-primary)}.btn-primary:hover{background:var(--accent-dim)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--border)}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.85rem;color:var(--text-secondary);margin-bottom:.35rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.6rem .75rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:.95rem}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent)}.form-group textarea{min-height:100px;resize:vertical}.badge{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.badge-success{background:#00d4aa33;color:var(--accent)}.badge-warning{background:#ffad1f33;color:var(--warning)}.badge-danger{background:#f4212e33;color:var(--danger)}.badge-info{background:#8b98a533;color:var(--text-secondary)}:root{--bg-primary: #0f1419;--bg-secondary: #1a2332;--bg-card: #1e2a3a;--accent: #00d4aa;--accent-dim: #00a884;--text-primary: #e7e9ea;--text-secondary: #8b98a5;--border: #2f3d4d;--danger: #f4212e;--warning: #ffad1f}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Noto Sans SC,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;-webkit-font-smoothing:antialiased}#root{min-height:100vh}a{color:var(--accent);text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea,select{font-family:inherit}
