@charset "UTF-8";*,*:before,*:after{box-sizing:border-box}:host,:root{--primary-color: #18181b;--primary-hover: #27272a;--secondary-color: #52525b;--background-color: #f8fafc;--surface-color: #ffffff;--text-main: #0f172a;--text-muted: #64748b;--border-color: #e2e8f0;--font-family-base: "Inter", system-ui, -apple-system, sans-serif;--font-size-base: 16px;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 2rem;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--dot-scheduled: #2563eb;--dot-completed: #16a34a;--dot-rejected: #dc2626;--dot-pending: #d97706;--dot-to-receive: #eab308;--dot-blocked: #ea580c}:root.dark{color-scheme:dark;--primary-color: #6366f1;--primary-hover: #4f46e5;--secondary-color: #a1a1aa;--background-color: #0b1120;--surface-color: #151c2c;--text-main: #e2e8f0;--text-muted: #94a3b8;--border-color: #273449;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .4);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .5), 0 2px 4px -2px rgb(0 0 0 / .5);--dot-scheduled: #3b82f6;--dot-completed: #22c55e;--dot-rejected: #ef4444;--dot-pending: #f59e0b;--dot-to-receive: #facc15;--dot-blocked: #f97316}html,body{margin:0;padding:0;width:100%;max-width:100%;overflow-x:hidden;font-family:var(--font-family-base);background-color:var(--background-color);color:var(--text-main);-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600}button{cursor:pointer}.glass{background:color-mix(in srgb,var(--surface-color) 70%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid color-mix(in srgb,var(--surface-color) 30%,transparent);box-shadow:0 8px 32px #1f268712}.fade-in{animation:fadeIn .5s ease forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.btn-base,.btn-danger,.btn-icon,.btn-secondary,.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:.6rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);border:1px solid transparent;font-family:inherit;font-size:.875rem;line-height:1.25rem;-webkit-user-select:none;user-select:none;text-decoration:none}.btn-base:hover,.btn-danger:hover,.btn-icon:hover,.btn-secondary:hover,.btn-primary:hover{transform:translateY(-1px)}.btn-base:active,.btn-danger:active,.btn-icon:active,.btn-secondary:active,.btn-primary:active{transform:translateY(0)}.btn-base:disabled,.btn-danger:disabled,.btn-icon:disabled,.btn-secondary:disabled,.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover{background:var(--primary-hover);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.btn-secondary{background:var(--surface-color);border-color:var(--border-color);color:var(--text-main)}.btn-secondary:hover{background:var(--background-color);border-color:var(--text-muted)}.btn-icon{background:transparent;padding:.5rem;border-radius:.5rem;color:var(--text-muted);border:none}.btn-icon:hover{background:var(--background-color);color:var(--text-main)}.btn-icon.danger:hover{background:#fee2e2;color:#ef4444}.btn-danger{background:#fee2e2;color:#991b1b}.btn-danger:hover{background:#fecaca}.btn-loading{position:relative;color:transparent!important;pointer-events:none}.btn-loading:after{content:"";position:absolute;width:1rem;height:1rem;top:calc(50% - .5rem);left:calc(50% - .5rem);border:2px solid currentColor;border-radius:50%;border-right-color:transparent;animation:btn-spin .75s linear infinite}@keyframes btn-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dashboard-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.section-card{padding:1.5rem;border-radius:1.5rem;display:flex;flex-direction:column}.section-card h3{font-size:1.1rem;margin-bottom:1.25rem;font-weight:700;color:var(--text-main)}.summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.transaction-list{display:flex;flex-direction:column;gap:.75rem}.transaction-list .transaction-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--border-color)}.transaction-list .transaction-item:last-child{border-bottom:none}.transaction-list .transaction-item .trans-info{display:flex;flex-direction:column;gap:.2rem}.transaction-list .transaction-item .trans-info .trans-main{display:flex;align-items:center;gap:.5rem}.transaction-list .transaction-item .trans-info .trans-main .trans-desc{font-weight:500;color:var(--text-main)}.transaction-list .transaction-item .trans-info .trans-main .trans-method{font-size:.7rem;background:var(--background-color);padding:.1rem .5rem;border-radius:1rem;color:var(--text-muted)}.transaction-list .transaction-item .trans-info .trans-notes{font-size:.75rem;color:var(--text-muted);font-style:italic}.transaction-list .transaction-item .trans-amount{font-weight:600;white-space:nowrap}.transaction-list .transaction-item.income .trans-amount{color:#059669}.transaction-list .transaction-item.expense .trans-amount{color:#dc2626}.form-message{margin:.75rem 0 0;padding:.6rem .8rem;border-radius:.5rem;font-size:.85rem;line-height:1.4}.form-message.error{background:color-mix(in srgb,#dc2626 12%,transparent);color:#b91c1c}.form-message.success{background:color-mix(in srgb,#16a34a 12%,transparent);color:#15803d}@media(max-width:768px)and (orientation:portrait){.modal-overlay,.appointment-details-modal-overlay,.day-overview-modal-overlay,.dialog-overlay,.overlay{align-items:flex-end!important;padding:0!important}.modal-content,.modal-card,.appointment-details-modal,.day-overview-modal,.dialog{width:100%!important;max-width:100%!important;border-radius:24px 24px 0 0!important;padding:1.5rem 1.25rem!important;padding-bottom:calc(3.5rem + env(safe-area-inset-bottom,28px))!important;max-height:85vh!important;overflow-y:auto!important;animation:modalSlideUp .3s cubic-bezier(.16,1,.3,1)!important}.modal-actions,.actions,.action-buttons,.reject-box-actions,.day-overview-footer{padding-bottom:calc(1.5rem + env(safe-area-inset-bottom,24px))!important}@keyframes modalSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}}@media(orientation:landscape)and (max-height:550px){.modal-overlay{align-items:center!important;justify-content:center!important;padding:.5rem!important}.modal-content,.modal-card{width:94%!important;max-width:540px!important;max-height:94dvh!important;border-radius:16px!important;padding:.75rem 1rem!important;overflow-y:auto!important}}
