@import "https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&display=swap";:root{--ink:#1a2332;--ink-soft:#3d4a5c;--paper:#f7f4ef;--paper-2:#efe8dc;--line:#d4cbbd;--accent:#0f6e56;--accent-2:#c45c26;--danger:#a33b3b;--ok:#1f7a4c;--warn:#9a6b1f;--shadow:0 12px 40px #1a233214;--radius:14px;--font:"DM Sans", sans-serif;--display:"Fraunces", Georgia, serif}*{box-sizing:border-box}html,body,#app{min-height:100%;font-family:var(--font);color:var(--ink);background:radial-gradient(1200px 600px at 10% -10%, #e8f2ee 0%, transparent 55%), radial-gradient(900px 500px at 100% 0%, #f3e6d8 0%, transparent 50%), var(--paper);margin:0}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,.brand{font-family:var(--display);letter-spacing:-.02em;font-weight:600}.shell{max-width:1280px;margin:0 auto;padding:1.5rem 1.25rem 3rem}.topbar{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.brand{color:var(--ink);font-size:1.6rem}.nav{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.nav a,.btn,button{font:inherit}.btn,button.btn{appearance:none;background:var(--accent);color:#fff;cursor:pointer;border:1px solid #0000;border-radius:999px;padding:.65rem 1rem;font-weight:600;transition:transform .15s,background .15s}.btn:hover{transform:translateY(-1px)}.btn.secondary{border-color:var(--line);color:var(--ink);background:0 0}.btn.danger{background:var(--danger)}.btn.ghost{color:var(--ink-soft);background:0 0;border-color:#0000}.panel{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffb8;padding:1.25rem}.grid{gap:1rem;display:grid}.grid.two{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.table-wrap{padding:0;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:.95rem}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.9rem 1rem}.data-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);background:#ffffff8c;font-size:.78rem;font-weight:600}.data-table tbody tr:hover td{background:#fffdf9e6}.data-table tbody tr.deadline-soon td{background:#faf4e8}.data-table tbody tr.deadline-urgent td{box-shadow:inset 3px 0 0 var(--danger);background:#f8ecec}.data-table tbody tr.deadline-soon:hover td{background:#f5edd9}.data-table tbody tr.deadline-urgent:hover td{background:#f3e4e4}.data-table .btn{padding:.4rem .8rem;font-size:.85rem}.fund-cell{min-width:11rem}.fund-amounts{font-variant-numeric:tabular-nums;flex-direction:column;gap:.1rem;display:flex}.fund-bar{background:#e8e0d4;border-radius:999px;height:.45rem;margin-top:.45rem;overflow:hidden}.fund-bar-fill{border-radius:inherit;background:#8a9a8e;height:100%;transition:width .35s;display:block}.fund-bar-fill.is-mid{background:#6f8f78}.fund-bar-fill.is-high{background:var(--ok)}.fund-bar-fill.is-full{background:#176b42}.fund-meta{font-variant-numeric:tabular-nums;justify-content:space-between;gap:.5rem;margin-top:.3rem;font-size:.8rem;display:flex}.catalog-row .badge{margin-top:.35rem}.yield-calc{white-space:nowrap;font-variant-numeric:tabular-nums;margin-top:.25rem;font-size:.8rem}.lot{border-radius:var(--radius);border:1px solid var(--line);background:linear-gradient(#fffdf9,#f6f0e6);flex-direction:column;gap:.75rem;padding:1.1rem;transition:transform .2s,box-shadow .2s;display:flex}.lot:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.lot h3{margin:0;font-size:1.15rem}.meta{color:var(--ink-soft);font-size:.92rem;line-height:1.45}.badge{color:var(--accent);background:#e4eee9;border-radius:999px;padding:.2rem .55rem;font-size:.78rem;font-weight:600;display:inline-block}.badge.warn{color:var(--warn);background:#f3ead7}.badge.danger{color:var(--danger);background:#f3e0e0}label{color:var(--ink-soft);flex-direction:column;gap:.35rem;margin-bottom:.85rem;font-size:.9rem;display:flex}input,select,textarea{font:inherit;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:10px;padding:.7rem .8rem}textarea{resize:vertical}.form-actions{flex-wrap:wrap;gap:.75rem;margin-top:.5rem;display:flex}.error{color:var(--danger);margin:.5rem 0}.muted{color:var(--ink-soft)}.timeline{margin:0;padding:0;list-style:none}.timeline li{border-left:2px solid var(--accent);margin-left:.4rem;padding:.85rem 0 .85rem 1.25rem;position:relative}.timeline li:before{content:"";background:var(--accent);border-radius:50%;width:10px;height:10px;position:absolute;top:1.1rem;left:-6px}.stats-row{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;display:grid}.stat{border:1px solid var(--line);background:#fff;border-radius:12px;padding:.9rem}.stat strong{margin-top:.25rem;font-size:1.25rem;display:block}.dev-pos{color:var(--ok)}.dev-neg{color:var(--danger)}.auth-wrap{place-items:center;min-height:100vh;padding:1.5rem;display:grid}.auth-panel{width:min(420px,100%);animation:.45s both rise}.auth-panel .brand{margin:0 0 .25rem;font-size:2.2rem}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (width<=640px){.topbar{flex-direction:column;align-items:flex-start}}
