@import "https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{--font-sans:"Manrope", "Aptos", "Segoe UI", sans-serif;--font-display:"Fraunces", Georgia, serif;--color-ink:#112635;--color-muted:#5e6b72;--color-muted-strong:#7a5c3f;--color-accent-dark:#275766;--color-accent-soft:#b68348;--color-bg:#efe6da;--color-bg-deep:#e4d4c0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font-sans);color:var(--color-ink);background:radial-gradient(circle at top left, #12344514, transparent 34%), radial-gradient(circle at right 15%, #b683481f, transparent 28%), linear-gradient(180deg, #f5ede1 0%, var(--color-bg) 100%);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:500;line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:linear-gradient(180deg, #fffbf685, #fffbf624), radial-gradient(circle at bottom left, #27576614, transparent 30%), linear-gradient(180deg, var(--color-bg) 0%, var(--color-bg-deep) 100%);min-width:320px;min-height:100vh;margin:0}body:before{content:"";pointer-events:none;opacity:.6;background-image:linear-gradient(#644a3009 1px,#0000 1px);background-size:100% 28px;position:fixed;inset:0}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit}#root{min-height:100vh}::selection{background:#2757662e}.app-shell{position:relative;overflow:hidden}.ambient{z-index:0;filter:blur(12px);opacity:.8;pointer-events:none;border-radius:999px;position:fixed;inset:auto}.ambient-left{background:radial-gradient(circle,#226f843d 0%,#226f8400 70%);width:26rem;height:26rem;top:-8rem;left:-10rem}.ambient-right{background:radial-gradient(circle,#b683482e 0%,#b6834800 72%);width:24rem;height:24rem;bottom:5rem;right:-8rem}.app-frame{z-index:1;width:min(1480px,100% - 12px);margin:0 auto;padding:32px 0 48px;position:relative}.auth-frame{align-content:center;width:min(760px,100% - 32px);min-height:calc(100vh - 80px);display:grid}.panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffbf5d6;border:1px solid #866f532e;animation:.52s both rise-in;box-shadow:0 24px 80px #18242e14}.paper-panel{background:linear-gradient(#fffef9f2 0%,#fbf6edeb 100%),repeating-linear-gradient(0deg,#9f896d0a 0 1px,#0000 1px 26px)}.hero-banner{border-radius:32px;margin-bottom:20px;padding:24px 28px}.hero-top-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:16px;display:grid}.hero-top-row>div{min-width:0}.hero-copy h1{font-family:var(--font-display);letter-spacing:-.06em;margin:0;font-size:clamp(2.3rem,4vw,3.8rem);line-height:.98}.hero-copy p,.section-heading p,.detail-card p,.roadmap-card p,.empty-state p{color:var(--color-muted);margin:0;line-height:1.6}.hero-meta{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.hero-stats article,.shell-card,.detail-card,.roadmap-card{background:#ffffffb8;border:1px solid #866f5329;border-radius:24px;padding:18px 18px 20px}.hero-stats span,.shell-card span,.detail-card span,.roadmap-card span{letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted-strong);margin-bottom:8px;font-size:.74rem;display:inline-block}.hero-stats strong,.shell-card strong,.detail-card strong,.roadmap-card strong{color:var(--color-ink);line-height:1.1;display:block}.hero-stats strong{font-size:clamp(1.4rem,2vw,2.1rem)}.hero-stats small,.shell-card small,.detail-card small,.roadmap-card small{color:var(--color-muted);margin-top:8px;display:block}.status-pill{color:var(--color-ink);background:#ffffffb8;border:1px solid #27576624;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:.86rem;display:inline-flex}.status-dot{border-radius:999px;flex-shrink:0;width:10px;height:10px}.status-dot.ready{background:#2e8b57;box-shadow:0 0 0 3px #2e8b5729}.status-dot.pending{background:#d4851f;box-shadow:0 0 0 3px #d4851f29}.toolbar{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.button,.tab-button{border:0;border-radius:16px;padding:12px 16px;font-weight:700;transition:transform .18s,background-color .18s,color .18s}.button:hover,.tab-button:hover{transform:translateY(-1px)}.button-primary{background:var(--color-accent-dark);color:#fff7ef}.button-secondary{color:var(--color-ink);background:#11263514}.section-panel{border-radius:30px;margin-bottom:18px;padding:22px 18px}.section-heading{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;margin-bottom:18px;display:grid}.section-heading h2{font-family:var(--font-display);letter-spacing:-.04em;margin:0 0 6px;font-size:clamp(1.7rem,2.4vw,2.4rem);line-height:1}.compact-heading{align-items:center}.eyebrow{color:var(--color-accent-dark);letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:.55rem;font-size:.72rem;display:inline-flex}.eyebrow:before{content:"";opacity:.45;background:currentColor;width:42px;height:1px}.message-banner{border-radius:18px;margin-bottom:16px;padding:14px 18px;font-weight:700;animation:.3s both rise-in}.message-banner.error{color:#8b332f;background:#91352d1a;border:1px solid #91352d2e}.app-tabs{flex-wrap:wrap;gap:10px;display:inline-flex}.tab-button{color:var(--color-ink);background:#1126350f}.tab-button.active{background:var(--color-accent-dark);color:#fff7ef}.content-grid{grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);gap:18px;display:grid}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.list{color:var(--color-muted);margin:0;padding-left:18px}.list li+li{margin-top:10px}.key-value-list{gap:12px;display:grid}.key-value-row{border-bottom:1px solid #866f5329;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding-bottom:12px;display:grid}.key-value-row:last-child{border-bottom:0;padding-bottom:0}.key-value-label{color:var(--color-muted)}.key-value-value{font-weight:800}.roadmap-stack{gap:16px;display:grid}.inline-note{color:var(--color-ink);background:#27576614;border:1px solid #2757661f;border-radius:20px;margin-top:16px;padding:14px 16px}.small-text{color:var(--color-muted);font-size:.92rem}.empty-state{background:#ffffff8f;border:1px dashed #866f534d;border-radius:24px;padding:22px}@keyframes rise-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (width<=980px){.hero-top-row,.section-heading,.content-grid,.mini-section-heading{grid-template-columns:1fr}.toolbar{justify-content:flex-start}}@media (width<=760px){.app-frame{width:min(100% - 20px,1280px);padding-top:20px}.hero-banner,.section-panel{border-radius:24px;padding:18px}.hero-stats,.card-grid{grid-template-columns:1fr}}.toolbar-column{flex-direction:column;align-items:stretch}.month-picker,.search-field,.auth-field{gap:8px;display:grid}.month-picker span,.search-field span,.auth-field span{letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted-strong);font-size:.76rem}.month-picker select,.search-field input,.auth-field input{min-width:0;color:var(--color-ink);background:#ffffffeb;border:1px solid #866f5338;border-radius:16px;padding:12px 14px}.auth-section{max-width:680px}.auth-gate-panel{width:100%;margin:0 auto}.editor-form{gap:20px;display:grid}.form-section{background:#ffffff70;border:1px solid #866f5324;border-radius:24px;padding:18px}.emphasis-section{background:linear-gradient(#fffcf6db 0%,#f5ece0bd 100%)}.mini-section-heading{grid-template-columns:minmax(0,1fr) minmax(220px,.8fr);align-items:end;gap:16px;margin-bottom:16px;display:grid}.mini-section-heading h3{font-family:var(--font-display);letter-spacing:-.03em;color:var(--color-ink);margin:8px 0 0;font-size:1.2rem}.field-grid{gap:14px;display:grid}.field{gap:8px;display:grid}.field span{text-transform:uppercase;letter-spacing:.14em;color:var(--color-muted-strong);font-size:.76rem}.field input,.field textarea,.field select{width:100%;color:var(--color-ink);background:#ffffffbd;border:1px solid #79664a2e;border-radius:18px;padding:14px 16px;transition:border-color .18s,box-shadow .18s,transform .18s}.field input:focus,.field textarea:focus,.field select:focus{border-color:#1234456b;outline:none;transform:translateY(-1px);box-shadow:0 0 0 4px #12344514}.field-wide{grid-column:1/-1}.action-row{flex-wrap:wrap;gap:12px;display:flex}.primary-button{color:#f7efe1;background:linear-gradient(135deg,#123445 0%,#275766 100%);border:none;border-radius:999px;padding:14px 20px;font-weight:800;transition:transform .18s,box-shadow .18s,background .18s,color .18s;box-shadow:0 16px 30px #1234453d}.primary-button:hover,.primary-button:focus-visible{transform:translateY(-1px)}.slim-empty-state{padding:18px 20px}.auth-card{background:#ffffffb8;border:1px solid #866f5329;border-radius:24px;gap:14px;padding:18px;display:grid}.auth-actions{justify-content:flex-start}.dashboard-stack{gap:18px;display:grid}.card-grid-wide{grid-template-columns:repeat(5,minmax(0,1fr))}.metric-card{min-height:132px}.metric-card-primary{background:linear-gradient(#27576624,#ffffffbd)}.metric-card-success{background:linear-gradient(#2e8b571f,#ffffffbd)}.metric-card-warning{background:linear-gradient(#d4851f1f,#ffffffbd)}.table-shell{gap:16px;display:grid}.table-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px;display:flex}.table-meta{color:var(--color-muted);font-size:.95rem}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:1040px}.data-table th,.data-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #866f5324;padding:12px 14px}.data-table thead th{letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted-strong);font-size:.76rem}.data-table tfoot td{background:#2757660f;font-weight:800}.data-table th.description-column,.data-table th.invoice-column,.data-table td.description-cell,.data-table td.invoice-cell{text-align:center}.data-table th:last-child,.data-table td:last-child{min-width:118px}.transaction-row.is-invoiced{opacity:.62}.invoice-flag{align-items:center;display:inline-flex;position:relative}.invoice-flag input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.invoice-flag-pill{color:#8b5a21;background:linear-gradient(#fff9eff5 0%,#f3e6d0e6 100%);border:1px solid #d4851f42;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-width:82px;min-height:38px;padding:8px 12px;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s,color .18s;display:inline-flex;box-shadow:inset 0 1px #ffffffd9}.invoice-flag-dot{background:currentColor;border-radius:999px;width:9px;height:9px;transition:box-shadow .18s;box-shadow:0 0 0 5px #d4851f29}.invoice-flag-text{white-space:nowrap;letter-spacing:.01em;font-size:.8rem;font-weight:800}.invoice-flag input:hover+.invoice-flag-pill{transform:translateY(-1px)}.invoice-flag input:focus-visible+.invoice-flag-pill{box-shadow:0 0 0 4px #12344514,inset 0 1px #ffffffd9}.invoice-flag input:checked+.invoice-flag-pill{color:#2e8b57;background:linear-gradient(#ecf8f0f5 0%,#d6efdfeb 100%);border-color:#2e8b5747}.invoice-flag input:checked+.invoice-flag-pill .invoice-flag-dot{box-shadow:0 0 0 5px #2e8b5729}.invoice-flag input:disabled{cursor:wait}.invoice-flag input:disabled+.invoice-flag-pill{opacity:.72}.type-badge{border-radius:999px;align-items:center;padding:6px 10px;font-size:.8rem;font-weight:700;display:inline-flex}.description-badge{text-align:center;white-space:normal;flex-direction:column;justify-content:center;min-width:148px;padding:8px 12px;line-height:1.2}.description-badge-line{display:block}.type-creation{color:#2e8b57;background:#2e8b5724;box-shadow:inset 0 0 0 1px #2e8b5724}.type-update{color:#275766;background:#27576624;box-shadow:inset 0 0 0 1px #27576624}.type-payment{color:#b56a10;background:#d4851f24;box-shadow:inset 0 0 0 1px #d4851f24}.pagination-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.chart-shell{background:#ffffffbd;border:1px solid #866f5324;border-radius:22px;margin-top:18px;padding:12px}.compact-chart{margin-top:0}@media (width<=1080px){.card-grid-wide{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=760px){.card-grid-wide{grid-template-columns:1fr}.table-toolbar,.pagination-row{align-items:stretch}}
