@import "https://fonts.googleapis.com/css2?family=Exo+2:wght@300;400;500;600;700;800&family=Orbitron:wght@500;600;700;800&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#020604;--bg-soft:#07110d;--panel:#081811c2;--panel-strong:#0b251ae6;--line:#5eeaab2e;--line-strong:#5eeaab6b;--text:#ecfff7;--muted:#86a89a;--subtle:#46685a;--green:#26f69a;--green-deep:#0a8f61;--green-soft:#26f69a29;--cyan:#60f3df;--danger:#ff6b6b;--warning:#e2cc6a;--radius-xl:24px;--radius-lg:18px;--radius-md:12px;--shadow-glow:0 0 28px #26f69a3d;font-family:"Exo 2",PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}html{background:var(--bg);min-width:320px}body{min-height:100vh;color:var(--text);background:radial-gradient(circle at 12% 8%,#26f69a2e,#0000 30rem),radial-gradient(circle at 95% 18%,#60f3df1f,#0000 26rem),linear-gradient(#020604 0%,#05100c 52%,#020604 100%);margin:0;overflow-x:hidden}body:before{z-index:-1;pointer-events:none;content:"";background-image:linear-gradient(#5eeaab0a 1px,#0000 1px),linear-gradient(90deg,#5eeaab0a 1px,#0000 1px);background-size:28px 28px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 80%);mask-image:linear-gradient(#000,#0000 80%)}button,a{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}button:focus-visible,a:focus-visible{outline:2px solid var(--green);outline-offset:3px}svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2px;width:20px;height:20px}code,pre{font-family:Orbitron,Consolas,monospace}.shell{width:min(100%,1040px);min-height:100vh;margin:0 auto;padding:18px 10px 28px;position:relative}.dashboard-layout,.dashboard-side,.dashboard-calendar,.dashboard-details{min-width:0}.ambient{z-index:-1;filter:blur(18px);opacity:.48;pointer-events:none;border-radius:999px;width:220px;height:220px;position:fixed}.ambient-one{background:radial-gradient(circle,#26f69a57,#0000 70%);top:110px;left:-86px}.ambient-two{background:radial-gradient(circle,#60f3df38,#0000 70%);bottom:12%;right:-120px}.app-header,.month-hero,.calendar-card,.details-card,.config-card,.notice-card{border:1px solid var(--line);background:linear-gradient(145deg, #ffffff0f, transparent 30%), var(--panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 18px 60px #0000005c}.app-header{border-radius:18px;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px;display:flex}.eyebrow{color:var(--green);letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font-family:Orbitron,monospace;font-size:.7rem;font-weight:700}h1,h2,p{margin-top:0}h1{letter-spacing:-.04em;margin-bottom:0;font-size:clamp(1.55rem,7vw,2.8rem);line-height:.95}h2{letter-spacing:-.06em;margin-bottom:0;font-size:clamp(1.7rem,7vw,3.1rem)}.header-actions{justify-items:end;gap:8px;display:grid}.status-pill,.address-chip{border:1px solid var(--line);min-height:32px;color:var(--muted);white-space:nowrap;background:#020a07b3;border-radius:999px;align-items:center;font-size:.76rem;display:inline-flex}.status-pill{gap:8px;padding:0 12px}.status-pill span{background:var(--warning);border-radius:999px;width:8px;height:8px;box-shadow:0 0 14px}.status-pill.is-live span{background:var(--green)}.status-pill.is-warn span{background:var(--warning)}.address-chip{max-width:184px;color:var(--text);text-overflow:ellipsis;padding:0 12px;overflow:hidden}.month-hero{border-radius:var(--radius-xl);margin-top:12px;padding:16px 14px;position:relative;overflow:hidden}.month-hero:after{content:"";filter:blur(2px);background:#26f69a1c;border-radius:999px;width:168px;height:168px;position:absolute;top:-50px;left:-32px}.month-topline{z-index:1;gap:12px;display:grid;position:relative}.month-title{letter-spacing:-.1em;text-shadow:0 0 28px #26f69a38;font-family:Orbitron,monospace;font-size:clamp(2.8rem,14vw,6.2rem);font-weight:800;line-height:.9}.month-controls{flex-wrap:wrap;gap:8px;display:flex}.icon-button,.refresh-button{border:1px solid var(--line);min-width:42px;min-height:42px;color:var(--text);background:#05120cb8;border-radius:999px;justify-content:center;align-items:center;transition:border-color .18s ease-out,background .18s ease-out,color .18s ease-out,box-shadow .18s ease-out;display:inline-flex}.refresh-button{color:var(--green);gap:8px;padding:0 14px}.icon-button:hover,.refresh-button:hover{border-color:var(--line-strong);background:var(--green-soft);box-shadow:var(--shadow-glow)}.metrics-grid{z-index:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;display:grid;position:relative}.metric-card{background:#020a0775;border:1px solid #5eeaab1f;border-radius:14px;min-height:68px;padding:10px}.metric-card span,.today-summary span,.transaction-item span,.sync-time{color:var(--muted);font-size:.82rem}.metric-card strong{color:var(--text);letter-spacing:-.04em;margin-top:5px;font-family:Orbitron,monospace;font-size:clamp(1rem,4.2vw,1.45rem);display:block}.metric-card.is-accent{border-color:var(--line-strong);background:linear-gradient(135deg,#26f69a29,#020a07b3)}.calendar-card{border-radius:var(--radius-xl);margin-top:12px;padding:14px 8px 10px}.weekday-row,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.weekday-row{color:var(--subtle);letter-spacing:.06em;text-align:center;margin-bottom:5px;font-family:Orbitron,monospace;font-size:.62rem;font-weight:700}.day-cell{min-height:44px;color:var(--text);background:0 0;border:1px solid #0000;border-radius:12px;place-items:center;padding:4px 2px;transition:border-color .18s ease-out,background .18s ease-out,color .18s ease-out,box-shadow .18s ease-out;display:grid;position:relative}.day-cell:hover{background:#26f69a14;border-color:#5eeaab33}.day-number{font-weight:700}.day-income{max-width:100%;color:var(--green);text-overflow:ellipsis;text-shadow:0 0 12px #26f69a59;white-space:nowrap;font-family:Orbitron,monospace;font-size:.52rem;overflow:hidden}.day-cell.is-muted{color:#86a89a5c}.day-cell.is-today{color:var(--cyan)}.day-cell.has-income{background:radial-gradient(circle at 50% 20%,#26f69a2e,#0000 64%)}.day-cell.is-selected{border-color:var(--line-strong);box-shadow:inset 0 0 20px #26f69a1f, var(--shadow-glow);background:#26f69a24}.notice-card,.config-card,.details-card{border-radius:var(--radius-lg);margin-top:12px}.notice-card{color:var(--muted);align-items:center;gap:10px;padding:10px 12px;display:flex}.notice-card.is-error{color:#ffc8c8;border-color:#ff6b6b4d;align-items:flex-start}.notice-card.is-error strong{color:var(--danger)}.loader{border:2px solid #26f69a2e;border-top-color:var(--green);border-radius:999px;width:18px;height:18px;animation:.9s linear infinite spin}.config-card{padding:14px}.config-card h2{margin-bottom:10px;font-size:clamp(1.5rem,6vw,2.4rem)}.config-card p{color:var(--muted);line-height:1.7}.config-card pre{border:1px solid var(--line);border-radius:var(--radius-md);color:var(--green);background:#0000004d;margin:14px 0 0;padding:14px;overflow-x:auto}.details-card{padding:14px}.details-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.today-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.today-summary div{border-radius:var(--radius-md);background:#020a0775;border:1px solid #5eeaab1f;padding:10px}.today-summary strong{letter-spacing:-.04em;margin-top:5px;font-family:Orbitron,monospace;font-size:clamp(1rem,4vw,1.55rem);display:block}.transaction-list{gap:8px;margin-top:10px;display:grid}.transaction-item{border-radius:var(--radius-md);background:#020a075c;border:1px solid #5eeaab1f;gap:8px;padding:10px;display:grid}.transaction-item strong{color:var(--green);margin-bottom:5px;font-family:Orbitron,monospace;display:block}.tx-links{flex-wrap:wrap;gap:6px;display:flex}.tx-links a{border:1px solid var(--line);min-height:34px;color:var(--text);border-radius:999px;align-items:center;gap:6px;padding:0 10px;text-decoration:none;transition:border-color .18s ease-out,background .18s ease-out,color .18s ease-out;display:inline-flex}.tx-links a:hover{border-color:var(--line-strong);background:var(--green-soft);color:var(--green)}.transaction-empty,.empty-state{border-radius:var(--radius-md);color:var(--muted);border:1px dashed #5eeaab3d;margin-top:10px;padding:12px;line-height:1.7}.empty-state span{color:var(--green);letter-spacing:.12em;font-family:Orbitron,monospace;font-size:.74rem;display:block}@keyframes spin{to{transform:rotate(360deg)}}@media (width>=720px){.shell{padding:28px 20px 44px}.app-header{align-items:center;padding:18px 20px}.month-topline{grid-template-columns:1fr auto;align-items:end}.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.calendar-card{padding:20px 18px 16px}.weekday-row{font-size:.76rem}.day-cell{min-height:64px}.day-income{font-size:.64rem}.details-card{padding:18px}.transaction-item{grid-template-columns:1fr auto;align-items:center}}@media (width>=1080px){.shell{width:min(100%,1220px);padding:24px 20px 38px}.app-header{padding:18px 22px}h1{font-size:clamp(2rem,3.4vw,3.4rem)}.dashboard-layout{grid-template-columns:minmax(330px,.72fr) minmax(560px,1.28fr);grid-template-areas:"side calendar""details calendar";align-items:start;gap:14px;margin-top:14px;display:grid}.dashboard-side{grid-area:side;gap:12px;display:grid}.dashboard-calendar{grid-area:calendar;align-self:stretch}.dashboard-details{grid-area:details}.dashboard-side>:first-child,.dashboard-calendar>.calendar-card,.dashboard-details>.details-card{margin-top:0}.month-hero{padding:18px}.month-topline{grid-template-columns:1fr;align-items:start}.month-title{font-size:clamp(3.4rem,5.2vw,4.8rem)}.month-controls{justify-content:flex-start}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.metric-card{min-height:76px;padding:11px}.metric-card strong{font-size:clamp(1.05rem,1.35vw,1.45rem)}.calendar-card{flex-direction:column;min-height:100%;padding:20px 18px 16px;display:flex}.weekday-row{margin-bottom:8px;font-size:.76rem}.calendar-grid{flex:1;grid-template-rows:repeat(6,minmax(0,1fr));gap:4px}.day-cell{border-radius:14px;min-height:0}.day-number{font-size:.96rem}.day-income{font-size:.66rem}.details-card{padding:16px}.details-head{display:grid}.sync-time{justify-self:start}.today-summary,.transaction-item{grid-template-columns:1fr}}@media (width<=420px){.app-header{display:grid}.header-actions{justify-items:start}.today-summary{grid-template-columns:1fr}.day-cell{border-radius:15px;min-height:54px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}
