@charset "UTF-8";
:root{--ink:#142439;--muted:#718198;--line:#e8edf1;--paper:#f6f8fa;--nav:#0d1929;--mint:#14b899;--blue:#5585ea;--amber:#eab85d;--coral:#e97474;--purple:#a688dc;--shadow:0 12px 34px rgba(19,38,60,.035)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.55 "Aptos","Yu Gothic","Meiryo",sans-serif;-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:3px solid #54d7c2;outline-offset:2px}[hidden]{display:none!important}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.22em;color:#2d9f91}.eyebrow.light{color:#71efd8}.muted{color:var(--muted)}
.brand-mark{display:inline-flex;align-items:flex-end;gap:3px;height:21px;width:26px}.brand-mark i{display:block;width:5px;border-radius:2px;background:#42dfbd;transform:skewY(-20deg)}.brand-mark i:nth-child(1){height:8px}.brand-mark i:nth-child(2){height:14px}.brand-mark i:nth-child(3){height:21px}.login-brand,.sidebar-brand{display:flex;align-items:center;gap:13px;letter-spacing:.17em;font-size:14px;font-weight:500;white-space:nowrap}.login-brand strong,.sidebar-brand strong{font-weight:900}
.login-view{min-height:100vh;display:grid;grid-template-columns:minmax(430px,53%) 1fr;background:#fff}.login-visual{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:54px 8.5%;color:#fff;background:radial-gradient(circle at 75% 24%,#21425a 0,transparent 27%),linear-gradient(133deg,#0b1728,#132b3d 70%,#173647)}.login-visual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:43px 43px;mask-image:linear-gradient(to bottom,transparent 12%,black 100%)}.login-visual>*{position:relative;z-index:1}.login-copy{margin-top:auto;margin-bottom:23%;max-width:590px}.login-copy h1{font-size:clamp(32px,3.7vw,53px);line-height:1.48;letter-spacing:.055em;font-weight:700;margin:22px 0}.login-copy h1 em{font-style:normal;color:#70ead3}.login-copy p{font-size:15px;line-height:2;max-width:460px;color:#b8ced8}.login-curve{position:absolute;z-index:0;bottom:8%;left:0;width:100%;height:280px}.login-foot{display:flex;justify-content:space-between;color:#80a4b4;font-size:11px;letter-spacing:.05em}.login-form-panel{display:flex;align-items:center;justify-content:center;padding:56px 11%}.login-form-wrap{width:min(420px,100%)}.login-form-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:17px;background:#e8faf5;color:#1bae93;font-size:28px;margin-bottom:31px}.login-form-wrap h2{font-size:30px;letter-spacing:.04em;margin:8px 0 3px}.login-form-wrap>.muted{margin:0 0 39px}.login-form-wrap label{display:flex;justify-content:space-between;font-size:12px;font-weight:800;margin:21px 0 9px}.login-form-wrap label small{font-size:10px;color:#a5b1bc;font-weight:700;letter-spacing:.12em}.login-form-wrap input{width:100%;height:50px;padding:0 17px;border:1px solid #dfe7ea;border-radius:9px;background:#fbfcfd;color:#152a3a;outline:none;transition:border-color .2s,box-shadow .2s}.login-form-wrap input:focus{border-color:#35baa4;box-shadow:0 0 0 3px #e2f8f2}.password-wrap{position:relative}.password-wrap input{padding-right:70px}.password-wrap button{position:absolute;right:10px;top:8px;border:0;background:transparent;color:#62778b;padding:7px;font-size:12px}.primary-button{border:0;border-radius:9px;background:#17364a;color:#fff;width:100%;height:53px;display:flex;align-items:center;justify-content:space-between;padding:0 19px;font-weight:700;margin-top:33px;transition:background .2s,transform .2s}.primary-button:hover{background:#225568;transform:translateY(-1px)}.primary-button span{font-size:20px;color:#72e9ce}.form-error{color:#c6424d;font-size:12px;margin:13px 0 0}.preview-login{display:flex;gap:10px;margin-top:33px;padding:15px;border:1px dashed #cfdfdc;border-radius:9px;background:#f8fcfb;color:#647988;font-size:11px}.preview-login p{margin:0;line-height:1.8}.preview-login b{color:#2d5561}.preview-tag{align-self:flex-start;color:#188d7a;font-size:9px;font-weight:900;letter-spacing:.08em}
.app-shell{display:flex;min-height:100vh}.sidebar{width:235px;min-width:235px;background:var(--nav);color:#e9f3f6;display:flex;flex-direction:column;min-height:100vh;position:sticky;top:0;height:100vh;padding:29px 16px}.sidebar-brand{padding:0 12px 38px;font-size:12px}.sidebar-caption{color:#62778c;letter-spacing:.2em;font-size:10px;font-weight:800;padding:7px 15px 15px}.sidebar nav{display:grid;gap:5px}.nav-item{width:100%;height:43px;display:flex;align-items:center;gap:13px;border:0;border-radius:7px;padding:0 15px;color:#92a6b6;background:transparent;text-align:left;font-weight:700}.nav-item:hover{background:#1a2c3d;color:#e5f8f4}.nav-item.selected{background:#1a3a40;color:#68e8cf}.nav-icon{font-size:21px;width:20px;text-align:center;font-weight:400;line-height:1}.sidebar-bottom{margin-top:auto}.tenant-chip{display:flex;gap:11px;align-items:center;padding:14px 10px;border:1px solid #2a3b4d;border-radius:9px;background:#132336}.tenant-avatar{width:35px;height:35px;border-radius:7px;background:#2b716c;color:#a7f4db;display:grid;place-items:center;font-weight:800}.tenant-chip div:last-child{min-width:0;display:flex;flex-direction:column;line-height:1.4}.tenant-chip small{font-size:9px;color:#8ca3b0}.tenant-chip strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tenant-chip span{color:#8ca3b0;font-size:10px}.logout-button{border:0;background:transparent;color:#91a6b6;margin:14px 0 0;padding:9px 12px;width:100%;display:flex;gap:12px;text-align:left}.logout-button:hover{color:#fff}.workspace{min-width:0;flex:1}.topbar{height:69px;background:#fff;border-bottom:1px solid #e7ecf0;display:flex;justify-content:space-between;align-items:center;padding:0 35px}.breadcrumbs{letter-spacing:.12em;color:#8d9ca8;font-size:11px;font-weight:700}.breadcrumbs span{margin:0 11px;color:#b5c0ca}.breadcrumbs strong{color:#1c3e4a;letter-spacing:0;font-size:12px}.topbar-right{display:flex;align-items:center;gap:20px}.preview-banner{display:inline-flex;align-items:center;gap:8px;border:1px solid #dcf0e9;background:#f1fbf7;padding:5px 10px;border-radius:99px;color:#3a8070;font-size:10px;font-weight:800}.status-dot,.badge-pulse{width:7px;height:7px;border-radius:50%;background:#23c6a2;box-shadow:0 0 0 3px #d6f7ec;display:inline-block}.top-date{font-size:11px;color:#718092}.user-avatar{width:30px;height:30px;display:grid;place-items:center;background:#e5f1ed;color:#1e685a;border-radius:50%;font-size:10px;font-weight:800}.main-content{max-width:1600px;margin:0 auto;padding:35px 38px 50px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.page-heading h1{font-size:27px;letter-spacing:.035em;margin:7px 0 4px}.page-heading p{margin:0;color:#7c8a9a;font-size:12px}.heading-badge{display:flex;align-items:center;gap:8px;border:1px solid #e5eced;border-radius:8px;padding:11px 13px;background:#fff;font-size:9px;letter-spacing:.12em;font-weight:800;color:#6d8a8b}.heading-badge strong{font-size:11px;letter-spacing:0;color:#224556;margin-left:7px}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.stat-card{position:relative;background:#fff;border:1px solid #ecf0f2;border-radius:10px;box-shadow:var(--shadow);min-height:142px;padding:20px 19px 22px;overflow:hidden}.stat-label{font-size:11px;font-weight:750;color:#687b8d;display:flex;justify-content:space-between;gap:6px}.stat-label span{font-size:9px;color:#a9b7bd;white-space:nowrap}.stat-value{font-size:28px;font-weight:800;letter-spacing:-.035em;margin-top:15px;line-height:1.2}.stat-value small{font-size:12px;font-weight:700;margin-left:4px;color:#77889a}.stat-foot{font-size:10px;color:#9aa9b4;margin-top:9px}.stat-line{position:absolute;bottom:0;left:0;right:0;height:3px}.stat-line.mint{background:var(--mint)}.stat-line.blue{background:var(--blue)}.stat-line.amber{background:var(--amber)}.stat-line.coral{background:var(--coral)}
.analysis-grid{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(265px,.84fr);gap:16px;margin-top:18px}.chart-card,.insight-card,.list-card{background:#fff;border:1px solid #e9eef0;border-radius:10px;box-shadow:var(--shadow)}.chart-card{padding:22px 24px 15px;min-width:0}.card-topline{display:flex;justify-content:space-between;align-items:start}.card-topline h2,.list-heading h2{font-size:17px;margin:4px 0 0;letter-spacing:.025em}.quiet-pill{border-radius:99px;background:#f4f8f8;color:#739095;font-size:10px;padding:5px 9px}.selected-vehicle{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding:23px 0 16px;border-bottom:1px solid var(--line)}.selected-label{font-size:10px;color:#96a4af;font-weight:700}.selected-vehicle h3{font-size:21px;margin:3px 0 2px}.selected-vehicle p{font-size:11px;color:#82919e;margin:0}.selected-price{text-align:right}.selected-price strong{font-size:25px;display:block;line-height:1.1;white-space:nowrap}.selected-price span{font-size:12px;font-weight:800}.positive{color:#1d9f89!important}.negative{color:#d8686a!important}.neutral{color:#728595!important}.chart-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:17px}.legend{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:5px;border:1px solid transparent;border-radius:6px;background:transparent;color:#687a8a;padding:5px 7px;font-size:10px;font-weight:800;white-space:nowrap}.legend-item:hover{background:#f6faf9}.legend-item:not(.active){opacity:.4}.legend-item.unavailable{color:#aab5bf}.legend-swatch{display:block;width:15px;height:3px;border-radius:5px}.legend-swatch.price{background:#182f44}.legend-swatch.ma7{background:#17b79c}.legend-swatch.ma30{background:#4b8dd4}.legend-swatch.ma60{background:#e7af4e}.legend-swatch.ma100{background:#a384d5}.periods{display:flex;border:1px solid #e9eef1;border-radius:6px;padding:2px;white-space:nowrap}.periods button{border:0;background:transparent;color:#94a2af;padding:4px 7px;border-radius:4px;font-size:10px}.periods button.active{color:#1a3a4c;background:#ebf4f2;font-weight:800}.chart-viewport{position:relative;height:280px;margin:8px -8px 0}.chart-viewport svg{width:100%;height:100%;overflow:visible}.chart-viewport svg text{font:11px "Aptos","Yu Gothic",sans-serif;fill:#95a3af}.chart-viewport .grid{stroke:#e9eef0;stroke-width:1;stroke-dasharray:4 5}.chart-viewport .axis{stroke:#dce5e8;stroke-width:1}.chart-viewport .hover-line{stroke:#98adae;stroke-width:1;stroke-dasharray:4 4}.chart-viewport .hover-dot{fill:#fff;stroke:#192f42;stroke-width:3}.chart-tooltip{position:absolute;pointer-events:none;z-index:5;background:#132639;color:#fff;border-radius:7px;padding:8px 11px;font-size:11px;box-shadow:0 7px 20px #13263930;white-space:nowrap}.chart-tooltip span{color:#8eb6b2}.chart-empty{position:absolute;inset:0;display:grid;place-items:center;color:#8ca0af}.chart-note{font-size:10px;color:#8797a2;border-top:1px solid var(--line);padding-top:12px;margin-top:5px}.insight-card{background:linear-gradient(156deg,#133248,#142637 60%,#192f40);padding:26px;color:#fff;min-width:0;display:flex;flex-direction:column;position:relative;overflow:hidden}.insight-card:after{content:"";width:245px;height:245px;border:1px solid #62d5b920;border-radius:50%;position:absolute;right:-105px;top:50px;box-shadow:0 0 0 45px #62d5b908,0 0 0 88px #62d5b905}.insight-card>*{position:relative;z-index:1}.insight-kicker{color:#83dcca;font-size:10px;font-weight:800;letter-spacing:.13em;display:flex;justify-content:space-between}.insight-kicker span{color:#5c8494}.insight-card h2{font-size:29px;letter-spacing:.04em;line-height:1.47;margin:27px 0 13px}.insight-card h2 em{font-style:normal;color:#73e5cf}.insight-card>p{line-height:1.9;color:#a9c3ca;font-size:11px;margin:0 0 24px}.insight-rule{height:1px;background:#426273;margin-bottom:18px}.insight-metric{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0;color:#a5bfc5;font-size:10px}.insight-metric strong{color:#e7f7f3;font-size:15px}.insight-footer{margin-top:auto;padding-top:25px;color:#83a6b0;font-size:10px}.mini-dots{display:inline-flex;gap:3px;margin-right:6px}.mini-dots i{width:4px;height:4px;border-radius:50%;background:#3ad4b6}
.list-card{margin-top:17px;overflow:hidden}.list-heading{padding:20px 24px 18px;display:flex;align-items:center;justify-content:space-between;gap:15px}.list-heading p{font-size:10px;color:#94a3ad;margin:3px 0 0}.list-actions{display:flex;align-items:center;gap:17px;flex-wrap:wrap}.search-box{border:1px solid #e1e9ed;border-radius:6px;display:flex;align-items:center;gap:8px;height:36px;padding:0 10px;color:#7c919c}.search-box>span{font-size:21px;line-height:1}.search-box input{border:0;outline:0;width:205px;font-size:11px}.search-box kbd{font-size:9px;color:#a6b4be;font-family:inherit}.toggle-current{display:flex;align-items:center;gap:6px;font-size:10px;color:#728595;white-space:nowrap}.toggle-current input{accent-color:#1daf94;width:13px;height:13px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}thead{background:#f8fafb}th{text-align:left;padding:11px 24px;font-size:10px;color:#8796a4;font-weight:800;border-top:1px solid #eef2f3;border-bottom:1px solid #eef2f3}td{padding:12px 24px;border-bottom:1px solid #f0f3f4;font-size:11px;color:#53677a}tbody tr:hover{background:#f5fbfa}tbody tr.clickable{cursor:pointer}td strong{font-size:12px;color:#20374a}td small{display:block;color:#9aabb5;font-size:10px;margin-top:2px}.change-pill{display:inline-block;border-radius:4px;padding:4px 7px;font-weight:800}.change-pill.positive{background:#e4f7f0}.change-pill.negative{background:#fff0ee}.change-pill.neutral{background:#f0f3f5}.row-arrow{font-size:15px;color:#8aa9a4}td.table-empty{text-align:center;padding:30px;color:#9aa9b5}.table-footer{display:flex;justify-content:space-between;align-items:center;padding:11px 24px;color:#8999a4;font-size:10px}.pager{display:flex;align-items:center;gap:13px}.pager button{height:28px;width:28px;border:1px solid #e8eef0;background:#fff;border-radius:5px;color:#426774}.pager button:disabled{opacity:.35;cursor:default}.app-footer{font-size:10px;color:#a0aeb7;letter-spacing:.015em;margin:19px 2px}.app-footer span{padding:0 6px}.source-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.source-summary>div{background:#fff;border:1px solid #e9eef0;border-radius:9px;padding:21px}.source-summary span{display:block;color:#8a9aa5;font-size:11px;margin-bottom:8px}.source-summary strong{font-size:20px}.source-summary .pending{color:#d49b40}
@media(max-width:1260px){.sidebar{width:205px;min-width:205px}.main-content{padding:30px 24px}.analysis-grid{grid-template-columns:minmax(0,2fr) minmax(225px,.9fr)}.chart-toolbar{flex-wrap:wrap}.stat-label span{display:none}.list-heading{align-items:flex-start;flex-direction:column}.list-actions{width:100%;justify-content:space-between}}
@media(max-width:970px){.analysis-grid{grid-template-columns:1fr}.insight-card{min-height:280px}.stats-grid{grid-template-columns:repeat(2,1fr)}.login-view{grid-template-columns:1fr}.login-visual{min-height:300px;padding:30px 7%}.login-copy{margin:25px 0}.login-copy h1{font-size:30px;margin:10px 0}.login-copy p{font-size:12px;max-width:100%}.login-curve{height:145px;bottom:12%}.login-form-panel{padding:44px 7%}}
@media(max-width:670px){.app-shell{display:block}.sidebar{width:100%;height:auto;min-height:0;position:static;padding:13px;display:block}.sidebar-brand{padding:0 5px 12px}.sidebar-caption,.sidebar-bottom{display:none}.sidebar nav{display:flex}.nav-item{justify-content:center;padding:7px;font-size:11px;height:33px}.nav-icon{display:none}.topbar{height:50px;padding:0 15px}.top-date,.user-avatar{display:none}.main-content{padding:22px 15px}.page-heading h1{font-size:21px}.heading-badge{display:none}.stats-grid{gap:8px}.stat-card{padding:14px;min-height:125px}.stat-value{font-size:22px}.stat-label{font-size:10px}.chart-card{padding:15px}.selected-vehicle h3{font-size:17px}.selected-price strong{font-size:19px}.chart-viewport{height:250px}.source-summary{grid-template-columns:1fr}.login-visual{min-height:280px}.login-foot{font-size:9px}}
.vehicle-photo{display:grid;place-items:center;flex:none;overflow:hidden;border:1px solid #dfe9ea;border-radius:8px;background:linear-gradient(135deg,#e7f3f1,#e9eef3);color:#76909a;text-align:center;font-size:9px;font-weight:800;letter-spacing:.09em;line-height:1.45}.vehicle-photo img{width:100%;height:100%;display:block;object-fit:cover}.hero-photo{width:145px;height:96px}.selected-identity{flex:1;min-width:0}.selected-identity h3,.selected-identity p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hero-photo-credit{min-height:19px;color:#95a4ac;font-size:9px;text-align:right;margin-top:6px}.hero-photo-credit a,.thumb-credit{color:#428b89;text-decoration:none}.hero-photo-credit a:hover,.thumb-credit:hover{text-decoration:underline}.vehicle-cell{display:flex;align-items:center;gap:11px;min-width:220px}.table-photo{width:72px;height:49px}.vehicle-cell-copy{min-width:0}.vehicle-cell-copy strong,.vehicle-cell-copy small{overflow:hidden;text-overflow:ellipsis;max-width:220px}.thumb-credit{display:block;font-size:9px;margin-top:2px}.filter-bar{display:flex;align-items:end;gap:10px;flex-wrap:wrap;padding:0 24px 15px;border-bottom:1px solid #eef2f3}.filter-bar label{display:flex;flex-direction:column;gap:4px;color:#8c9ba7;font-size:10px;font-weight:750}.filter-bar select,.filter-bar input{height:34px;min-width:140px;max-width:210px;border:1px solid #e1e9ed;border-radius:6px;background:#fff;padding:0 9px;color:#273f50;font-size:11px;outline:0}.filter-bar select:focus,.filter-bar input:focus{border-color:#41bfa9}.filter-bar .price-range{display:flex;align-items:center;gap:4px}.price-range input{min-width:0;width:83px}.price-range span{color:#a6b4bc}.clear-filters{height:34px;border:1px solid #d9e9e5;background:#f6fbf9;border-radius:6px;color:#25836f;padding:0 12px;font-size:10px;font-weight:800}.clear-filters:hover{background:#e5f5ef}
@media(max-width:970px){.selected-vehicle{flex-wrap:wrap}.selected-price{margin-left:auto}.filter-bar label{flex:1 1 140px}.filter-bar select{width:100%;max-width:none}}
@media(max-width:670px){.hero-photo{width:92px;height:65px}.selected-identity{min-width:150px}.selected-price{width:100%;text-align:left;margin-left:0}.hero-photo-credit{text-align:left}.filter-bar{padding:0 15px 15px;gap:8px}.filter-bar label{flex:1 1 calc(50% - 8px)}.filter-bar .price-range input{width:calc(50% - 7px)}.clear-filters{width:100%}}
