
#fc-app{--ink:#162033;--muted:#718096;--line:#e7ebf2;--soft:#f5f7fb;--navy:#111827;--blue:#4f46e5;--violet:#7c3aed;--green:#10b981;--red:#ef4444;--amber:#f59e0b;background:#f7f8fc;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:720px;margin:-1rem calc(50% - 50vw);padding-bottom:3rem}
#fc-app *{box-sizing:border-box}
.fc-hero{background:linear-gradient(125deg,#111827 0%,#202b55 56%,#4f46e5 100%);color:#fff;padding:2.6rem max(1.2rem,calc((100vw - 1180px)/2)) 3.4rem;position:relative;overflow:hidden}
.fc-hero:after{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(255,255,255,.15);border-radius:50%;right:-120px;top:-230px;box-shadow:0 0 0 32px rgba(255,255,255,.035),0 0 0 64px rgba(255,255,255,.025)}
.fc-topline{display:flex;justify-content:space-between;align-items:center;gap:1rem;position:relative;z-index:1}
.fc-brand{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:#b9c2ff}
.fc-private{font-size:.76rem;padding:.42rem .7rem;border:1px solid rgba(255,255,255,.25);border-radius:99px;background:rgba(255,255,255,.1);white-space:nowrap}
.fc-hero h1{font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-.06em;line-height:1;margin:2.8rem 0 .8rem;max-width:720px;position:relative;z-index:1}
.fc-hero p{margin:0;color:#d9ddf4;max-width:540px;font-size:1.02rem;line-height:1.6;position:relative;z-index:1}
.fc-toolbar{margin-top:1.8rem;display:flex;align-items:center;gap:.75rem;position:relative;z-index:1;flex-wrap:wrap}
.fc-toolbar label{font-size:.8rem;color:#c6cdf0;font-weight:700}
.fc-toolbar input{color:#fff;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.28);border-radius:10px;padding:.62rem .75rem;font:inherit}
.fc-shell{max-width:1180px;margin:-1.65rem auto 0;padding:0 1.2rem;position:relative;z-index:2}
.fc-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.fc-card,.fc-panel{background:#fff;border:1px solid rgba(226,231,240,.9);border-radius:18px;box-shadow:0 14px 40px rgba(29,40,75,.06)}
.fc-card{padding:1.15rem 1.25rem;min-height:132px}
.fc-label{font-size:.73rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--muted)}
.fc-value{font-size:1.7rem;font-weight:850;letter-spacing:-.045em;margin-top:.7rem}
.fc-value.green{color:#059669}.fc-value.red{color:#dc2626}.fc-value.blue{color:var(--blue)}
.fc-change{font-size:.76rem;color:var(--muted);margin-top:.35rem}
.fc-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:1rem;margin-top:1rem}
.fc-panel{padding:1.35rem}
.fc-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.15rem}
.fc-panel h2{font-size:1.08rem;margin:0;letter-spacing:-.02em}
.fc-panel-sub{color:var(--muted);font-size:.8rem;margin:.35rem 0 0}
.fc-form{display:grid;grid-template-columns:1.35fr .9fr .8fr;gap:.7rem}
.fc-form .wide{grid-column:span 2}
.fc-form input,.fc-form select,.fc-search,.fc-select,.fc-budget-input{width:100%;border:1px solid var(--line);border-radius:10px;background:#fbfcfe;color:var(--ink);padding:.7rem .75rem;font:inherit;outline:none}
.fc-form input:focus,.fc-form select:focus,.fc-search:focus,.fc-select:focus,.fc-budget-input:focus{border-color:#818cf8;box-shadow:0 0 0 3px rgba(99,102,241,.12)}
.fc-form button,.fc-primary{border:0;border-radius:10px;background:linear-gradient(135deg,var(--blue),var(--violet));color:#fff;padding:.7rem 1rem;font:inherit;font-weight:800;cursor:pointer;transition:transform .15s,box-shadow .15s}
.fc-form button:hover,.fc-primary:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(79,70,229,.25)}
.fc-type{display:flex;gap:.4rem;background:var(--soft);padding:.25rem;border-radius:10px;grid-column:span 3}
.fc-type label{flex:1;text-align:center;cursor:pointer;padding:.55rem;border-radius:8px;font-size:.8rem;font-weight:700;color:var(--muted)}
.fc-type input{display:none}
.fc-type label:has(input:checked){background:#fff;color:var(--blue);box-shadow:0 2px 8px rgba(20,30,60,.09)}
.fc-budget-box{display:flex;gap:1rem;align-items:center}
.fc-ring{width:122px;height:122px;border-radius:50%;display:grid;place-items:center;flex:none;background:conic-gradient(var(--green) 0deg,var(--green) var(--ring,0deg),#e8edf4 var(--ring,0deg),#e8edf4 360deg);position:relative}
.fc-ring:after{content:"";position:absolute;inset:10px;border-radius:50%;background:#fff}
.fc-ring strong,.fc-ring span{position:relative;z-index:1;text-align:center}
.fc-ring strong{font-size:1.25rem;display:block}.fc-ring span{font-size:.66rem;color:var(--muted);display:block;margin-top:-.1rem}
.fc-budget-info{min-width:0}.fc-budget-info p{margin:0 0 .5rem;color:var(--muted);font-size:.8rem;line-height:1.45}
.fc-budget-row{display:flex;gap:.45rem}.fc-budget-input{width:105px;padding:.52rem .6rem}.fc-budget-row button{border:1px solid var(--line);background:#fff;border-radius:9px;padding:.5rem .65rem;color:var(--blue);font-weight:800;cursor:pointer}
.fc-bars{display:grid;gap:.85rem;margin-top:1.25rem}.fc-bar-row{display:grid;grid-template-columns:105px 1fr 76px;gap:.65rem;align-items:center;font-size:.78rem}.fc-bar-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fc-bar-track{height:8px;background:#edf0f6;border-radius:99px;overflow:hidden}.fc-bar-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,#818cf8,#4f46e5)}.fc-bar-amount{text-align:right;font-weight:750;color:#46516a}
.fc-transactions{margin-top:1rem}.fc-list-tools{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}.fc-search{width:190px}.fc-select{width:145px}
.fc-list{display:grid;gap:.4rem}.fc-tx{display:grid;grid-template-columns:38px 1fr auto auto 30px;align-items:center;gap:.8rem;padding:.75rem .3rem;border-bottom:1px solid #f0f2f6}.fc-tx:last-child{border-bottom:0}.fc-icon{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;font-size:1rem;background:#eef2ff}.fc-icon.income{background:#dcfce7}.fc-icon.expense{background:#fff1f2}.fc-tx-title{font-weight:750;font-size:.88rem}.fc-tx-meta{color:var(--muted);font-size:.73rem;margin-top:.18rem}.fc-tx-amount{font-weight:800;white-space:nowrap}.fc-tx-amount.income{color:#059669}.fc-tx-amount.expense{color:#dc2626}.fc-delete{border:0;background:transparent;color:#a0a9ba;cursor:pointer;font-size:1.1rem;padding:.2rem}.fc-delete:hover{color:#dc2626}
.fc-insights{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-top:1rem}.fc-insight{background:var(--soft);border-radius:12px;padding:.85rem}.fc-insight b{font-size:.95rem}.fc-insight span{display:block;color:var(--muted);font-size:.75rem;margin-top:.3rem;line-height:1.4}
.fc-empty{text-align:center;color:var(--muted);padding:2rem 1rem;font-size:.85rem}.fc-foot{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;color:#8a94a8;font-size:.72rem}.fc-reset{border:0;background:none;color:#8a94a8;text-decoration:underline;cursor:pointer;font:inherit}
@media(max-width:850px){.fc-kpis{grid-template-columns:repeat(2,1fr)}.fc-layout{grid-template-columns:1fr}.fc-form{grid-template-columns:1fr 1fr}.fc-form .wide{grid-column:span 2}.fc-type{grid-column:span 2}}
@media(max-width:540px){#fc-app{margin:-.5rem calc(50% - 50vw)}.fc-hero{padding-top:1.6rem}.fc-hero h1{margin-top:2.2rem}.fc-shell{padding:0 .75rem}.fc-kpis{gap:.55rem}.fc-card{padding:.9rem;min-height:112px}.fc-value{font-size:1.28rem}.fc-layout{gap:.65rem}.fc-panel{padding:1rem;border-radius:14px}.fc-form{grid-template-columns:1fr}.fc-form .wide,.fc-type{grid-column:auto}.fc-list-tools{width:100%}.fc-search,.fc-select{width:calc(50% - .3rem)}.fc-tx{grid-template-columns:34px 1fr auto 24px;gap:.5rem}.fc-tx-amount{grid-column:3}.fc-delete{grid-column:4;grid-row:1 / span 2}.fc-insights{grid-template-columns:1fr}.fc-budget-box{align-items:flex-start}.fc-ring{width:98px;height:98px}.fc-bar-row{grid-template-columns:88px 1fr 68px}}
