*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;min-height:100vh}body{display:grid;place-items:center;min-height:100vh;padding:clamp(14px,3vw,28px);font-family:Inter,ui-rounded,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:#17191f;background:radial-gradient(circle at 50% -12%,rgba(127,208,220,.35),transparent 34%),linear-gradient(135deg,#eef3f8,#f9fcff 48%,#e8f4f8);-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer}.app-shell{width:min(760px,100%);max-height:calc(100vh - clamp(28px,6vw,56px));overflow:auto;margin:0 auto;padding:clamp(26px,4vw,42px) clamp(22px,5vw,48px) 28px;background:#fff;border-radius:clamp(24px,4vw,34px);box-shadow:0 28px 88px #1e304824}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:clamp(22px,3vw,30px)}.topbar h1{margin:0;color:#087f99;font-size:clamp(21px,5vw,25px);font-weight:1000;letter-spacing:-.04em}.console-link{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 18px;border-radius:999px;color:#fff;font-size:13px;font-weight:1000;letter-spacing:.04em;text-decoration:none;text-transform:uppercase;background:#7fd0dc;box-shadow:0 12px 24px #63c3d247}.search-panel{margin-bottom:clamp(24px,4vw,36px)}.search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;border:2px solid #e6f4f7;border-radius:20px;padding:10px 10px 10px 18px;background:#fbfdff;box-shadow:inset 0 1px #ffffffe6,0 12px 24px #24344b0d}.search-row input{min-width:0;border:0;outline:0;color:#12151b;background:transparent;font-size:clamp(16px,4vw,18px);font-weight:700}.search-row input::placeholder{color:#b5b8bd;font-weight:500}.search-btn{display:inline-flex;align-items:center;justify-content:center;min-width:82px;height:44px;border:0;border-radius:15px;color:#fff;background:#7fd0dc;box-shadow:0 12px 22px #63c3d247;font-size:15px;font-weight:1000;line-height:1}.search-btn:disabled{opacity:.55;cursor:not-allowed}.clear-btn{margin-top:10px;border:0;padding:0;color:#7fd0dc;background:transparent;font-size:13px;font-weight:900}.overview-section,.details-section{margin-top:0}.section-head,.details-section h2{margin-bottom:18px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.section-head h2,.details-section h2{margin-top:0;color:#15171d;font-size:clamp(16px,4vw,18px);font-weight:1000}.usage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,3vw,24px);margin-bottom:clamp(26px,4vw,34px)}.money-card{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:clamp(150px,24vw,220px);border-radius:21px;padding:24px 16px;color:#111318;text-align:center;background:#fff;box-shadow:0 22px 46px #24344b14}.money-card.teal{color:#fff;background:#7fd0dc;box-shadow:0 25px 52px #59bccc52}.money-label{margin-bottom:13px;font-size:clamp(16px,4.2vw,18px);font-weight:1000;line-height:1.2}.money-value{max-width:100%;color:inherit;font-size:clamp(24px,5vw,34px);font-weight:1000;line-height:1.15;word-break:break-word}.money-note{margin-top:14px;color:#54b952;font-size:15px;font-weight:1000}.money-card.teal .money-note{color:#ffffffeb}.details-list{display:grid;gap:clamp(16px,3vw,24px)}.detail-row{display:grid;grid-template-columns:88px minmax(0,1fr) minmax(140px,auto);align-items:center;min-height:116px;overflow:hidden;border-radius:20px;background:#fff;box-shadow:0 18px 44px #24344b14}.avatar{display:grid;place-items:center;width:64px;height:64px;margin-left:28px;border-radius:50%;background:linear-gradient(145deg,#e6fbff,#eef3f8);color:#087f99;font-size:28px}.detail-main{min-width:0;padding:0 18px}.detail-main h3{margin:0 0 12px;color:#15171d;font-size:clamp(15px,4vw,17px);font-weight:1000}.detail-main span{display:inline-flex;max-width:100%;overflow:hidden;padding:4px 10px;border-radius:6px;color:#fff;background:#7fd0dc;font-size:12px;font-weight:1000;letter-spacing:.03em;text-overflow:ellipsis;white-space:nowrap}.detail-value{display:grid;place-items:center;align-self:stretch;min-width:0;border-left:2px solid #f0f2f5;padding:16px 20px;color:#111318;font-size:clamp(18px,4.8vw,24px);font-weight:1000;line-height:1.25;text-align:center;word-break:break-word}.detail-row.date .detail-value{font-size:clamp(12px,3.2vw,15px);line-height:1.45}.empty-state{display:grid;grid-template-rows:auto auto;place-items:center;align-content:center;gap:22px;min-height:clamp(240px,38vh,360px);padding:clamp(36px,8vw,70px) 24px;border-radius:24px;color:#9da4ad;text-align:center;background:#fff;box-shadow:0 18px 44px #24344b14}.empty-state .empty-query-btn{display:inline-flex;align-items:center;justify-content:center;min-width:168px;min-height:62px;padding:0 28px;border:2px solid #7fd0dc;border-radius:18px;color:#087f99;background:#f7fdff;box-shadow:0 14px 30px #63c3d229;font-size:clamp(24px,5vw,32px);font-weight:1000}.empty-state p{max-width:320px;margin:0;font-size:15px;font-weight:700;line-height:1.7}.empty-state.loading{color:#087f99;font-size:18px;font-weight:1000}footer{margin-top:28px;color:#b8bdc5;font-size:12px;font-weight:800;text-align:center}.toast{position:fixed;top:20px;left:50%;z-index:20;display:flex;align-items:center;gap:10px;width:min(420px,calc(100vw - 32px));padding:13px 15px;border-radius:18px;color:#15171d;background:#fffffff5;box-shadow:0 18px 45px #24344b2e;transform:translate(-50%)}.toast-icon{display:grid;place-items:center;flex:0 0 auto;width:24px;height:24px;border-radius:999px;color:#fff;font-weight:1000;background:#087f99}.toast-success .toast-icon{background:#54b952}.toast button{margin-left:auto;border:0;color:#9da4ad;background:transparent;font-size:18px}@media (max-width: 520px){body{padding:0;place-items:stretch}.app-shell{max-height:none;min-height:100vh;border-radius:0;padding-inline:18px}.usage-grid{gap:18px}.money-card{min-height:158px}.detail-row{grid-template-columns:76px minmax(0,1fr) minmax(92px,auto);min-height:118px}.avatar{width:54px;height:54px;margin-left:18px;font-size:24px}.detail-main{padding-inline:14px}.detail-value{padding-inline:12px}}@media (max-width: 380px){.topbar{align-items:flex-start;flex-direction:column}.usage-grid{grid-template-columns:1fr}.money-card{min-height:148px}.detail-row{grid-template-columns:64px minmax(0,1fr)}.detail-value{grid-column:1 / -1;border-top:2px solid #f0f2f5;border-left:0}}
