.trend-svg{width:100%;height:215px}.trend-svg text{font-size:11px;fill:#8fa4a0}.quick-sub{font-size:11px;color:#94a6a4;margin-top:5px}
:root{font-family:'DM Sans','Noto Sans SC',sans-serif;color:#20313a;background:#f4f6f5;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}[hidden]{display:none!important}.eyebrow,.small-label{font-size:11px;letter-spacing:.18em;font-weight:700;color:#558f86}.login-wrap{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;background:#fff}.login-art{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:56px 8vw 52px 6vw;color:#fff;background:radial-gradient(circle at 80% 75%,#245a55 0,#113c3e 25%,transparent 55%),linear-gradient(145deg,#0b202b,#102e35 65%,#0a2229);overflow:hidden}.login-art:before{content:'';position:absolute;width:580px;height:580px;border:1px solid #ffffff18;border-radius:50%;bottom:-250px;right:-130px;box-shadow:0 0 0 80px #ffffff08,0 0 0 160px #ffffff05}.brand-mark{font-size:24px;font-weight:700;letter-spacing:.35em}.brand-mark span{color:#b9e1bd}.login-copy{position:relative;max-width:600px}.login-copy .eyebrow{color:#acd0c6}.login-copy h1{font-size:clamp(40px,4.5vw,72px);letter-spacing:-.055em;line-height:1.2;margin:24px 0}.login-copy p{color:#b3c7c8;font-size:16px;line-height:1.9;max-width:400px}.art-footer{color:#91abae;font-size:12px;letter-spacing:.12em}.login-form-area{display:grid;place-items:center;padding:40px 56px}.login-card{width:min(560px,100%)}.login-card h2{font-size:32px;margin:14px 0 8px;letter-spacing:-.03em}.login-card p{color:#7d8a8e;margin:0 0 36px}.login-card label{display:block;font-size:13px;font-weight:700;color:#35464c;margin:20px 0}.login-card input{display:block;width:100%;border:1px solid #dce4e2;border-radius:10px;padding:15px 16px;margin-top:9px;outline:none;background:#fbfcfc}.login-card input:focus,.search input:focus,.drawer input:focus,.drawer select:focus{border-color:#4f9b8a;box-shadow:0 0 0 3px #4f9b8a20}.primary-button{display:flex;justify-content:space-between;align-items:center;width:100%;background:#176957;color:white;border:0;border-radius:10px;padding:15px 18px;font-weight:700}.primary-button:hover{background:#115745}.login-note{font-size:12px;line-height:1.7;color:#8b9a9e;margin-top:28px}.form-error{min-height:22px;color:#c74747;font-size:12px}.shell{display:flex;min-height:100vh}.sidebar{width:248px;flex:none;background:#102a32;color:#f0f7f3;display:flex;flex-direction:column;padding:30px 16px 22px;min-height:100vh;position:sticky;top:0;height:100vh}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:0 14px 42px}.brand-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#bde8c3;color:#124339;font-size:18px;font-weight:700}.sidebar-brand strong,.sidebar-brand small,.sidebar-bottom strong,.sidebar-bottom small{display:block}.sidebar-brand strong{font-size:17px;letter-spacing:.04em}.sidebar-brand small{font-size:9px;letter-spacing:.17em;color:#8ba9a9;margin-top:5px}.workspace-label{font-size:11px;letter-spacing:.12em;color:#7fa2a1;padding:0 18px 12px}nav{overflow:auto;flex:1}nav button{width:100%;border:0;background:transparent;color:#adc4c5;display:flex;align-items:center;gap:13px;text-align:left;border-radius:9px;padding:11px 16px;margin:2px 0;font-size:13px}nav button:hover{background:#ffffff0b;color:#fff}nav button.active{background:#234b48;color:#e9fff2;font-weight:700}nav button .nav-icon{width:18px;text-align:center;font-size:16px}nav button .nav-arrow{margin-left:auto;opacity:.6}.sidebar-bottom{border-top:1px solid #ffffff15;padding:21px 14px 4px;display:flex;gap:10px;align-items:center}.sidebar-bottom strong{font-size:11px}.sidebar-bottom small{font-size:10px;color:#789a9b;margin-top:5px}.system-dot{width:8px;height:8px;border-radius:50%;background:#68d9a0;box-shadow:0 0 0 4px #68d9a023}.main{flex:1;min-width:0}.topbar{height:70px;background:#fff;border-bottom:1px solid #e9eeec;display:flex;align-items:center;justify-content:space-between;padding:0 42px;font-size:12px;color:#819096}.topbar strong{color:#34484d;font-weight:600}.top-separator{margin:0 12px;color:#c2cbcc}.top-actions{display:flex;align-items:center;gap:20px}.demo-badge{background:#fff5e6;color:#a97527;border-radius:20px;padding:6px 10px;font-weight:700;font-size:11px}.logout{background:none;border:0;color:#70858a;font-size:12px}.content{max-width:1530px;padding:38px 42px 70px;margin:auto}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}.page-heading h1{font-size:29px;letter-spacing:-.04em;margin:9px 0 7px;color:#1b3035}.page-heading p{font-size:13px;color:#809096;margin:0}.heading-actions{display:flex;gap:10px;align-items:center}.role-pill{border:1px solid #d9e8e3;color:#2a766a;background:#eef7f2;padding:8px 11px;border-radius:8px;font-size:11px;font-weight:700}.outline-button{background:#fff;color:#176957;border:1px solid #cddfd8;border-radius:8px;padding:9px 13px;font-size:12px;font-weight:700}.outline-button:hover{background:#edf7f2}.hero{display:grid;grid-template-columns:1.5fr 1fr;background:linear-gradient(105deg,#173c3e,#21584f);border-radius:15px;overflow:hidden;color:#fff;min-height:168px;position:relative}.hero:after{content:'';position:absolute;right:-70px;top:-110px;width:340px;height:340px;border:1px solid #ffffff26;border-radius:50%;box-shadow:0 0 0 58px #ffffff08,0 0 0 115px #ffffff06}.hero-text{padding:30px 34px;position:relative;z-index:1}.hero-text span{font-size:11px;letter-spacing:.16em;color:#b6ded1}.hero-text h2{font-size:22px;margin:16px 0 10px;letter-spacing:-.03em}.hero-text p{font-size:12px;color:#b9d2cf;margin:0;line-height:1.7}.hero-side{display:flex;align-items:center;justify-content:flex-end;padding:32px 58px;position:relative;z-index:1}.hero-side strong{font-size:48px;font-weight:500;letter-spacing:-.07em}.hero-side small{display:block;color:#b9d2cf;text-align:right;font-size:12px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0 25px}.stat{background:#fff;border:1px solid #e6edeb;border-radius:13px;padding:23px;min-height:144px}.stat-label{display:flex;justify-content:space-between;color:#7e8d91;font-size:12px}.stat-symbol{color:#5e9e91;font-size:17px}.stat strong{display:block;font-size:27px;letter-spacing:-.05em;margin:17px 0 7px;font-weight:700;color:#183940}.stat small{color:#91a19f;font-size:11px}.dashboard-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}.panel{background:#fff;border:1px solid #e6edeb;border-radius:13px;padding:23px;min-width:0}.panel-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.panel h3{font-size:15px;margin:0;color:#243b40}.panel-sub{color:#9ba9ab;font-size:11px}.chart{height:220px;display:flex;align-items:flex-end;gap:16px;padding:22px 9px 0;border-bottom:1px solid #e9eeec;background:repeating-linear-gradient(to top,#edf2ef 0,#edf2ef 1px,transparent 1px,transparent 48px)}.bar-wrap{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;position:relative}.bar{width:min(44px,70%);background:linear-gradient(#82c8a8,#347f73);border-radius:5px 5px 0 0;min-height:5px}.bar-value{font-size:10px;color:#49706b;margin-bottom:7px}.bar-date{position:absolute;top:100%;margin-top:8px;color:#9aabad;font-size:10px;white-space:nowrap}.chart-spacer{height:30px}.quick-list{display:grid;gap:10px}.quick-item{display:flex;justify-content:space-between;align-items:center;padding:12px 13px;background:#f8faf9;border-radius:8px;font-size:12px}.quick-item b{color:#23464b;font-weight:600}.quick-item span{color:#86a19e}.table-panel{background:#fff;border:1px solid #e6edeb;border-radius:13px;overflow:hidden}.table-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 22px;border-bottom:1px solid #e9efec}.table-toolbar h3{margin:0 0 4px;font-size:15px}.table-toolbar p{margin:0;font-size:11px;color:#91a0a3}.search{display:flex;align-items:center;border:1px solid #e0e9e6;border-radius:8px;color:#9aabaa;padding-left:12px}.search input{border:0;outline:none;padding:9px 11px;min-width:220px;font-size:12px;border-radius:8px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;background:#fafcfb;color:#849596;font-size:11px;font-weight:600;padding:14px 20px;border-bottom:1px solid #ebf0ed}td{padding:15px 20px;border-bottom:1px solid #f0f3f1;font-size:12px;color:#3b5054}tr:last-child td{border-bottom:0}tbody tr:hover{background:#f8fbf9;cursor:pointer}.id-cell{color:#207469;font-weight:700}.money{font-variant-numeric:tabular-nums;font-weight:700;color:#2b4448}.tag{display:inline-block;padding:5px 9px;border-radius:6px;background:#eef4f1;color:#4a7f6c;font-size:10px;font-weight:700}.tag.wait{background:#fff4e8;color:#a97637}.tag.stop{background:#f5eeee;color:#a86767}.empty{padding:60px 20px;text-align:center;color:#95a5a6;font-size:13px}.drawer-layer{position:fixed;inset:0;z-index:10}.drawer-backdrop{position:absolute;inset:0;background:#0b202b77}.drawer{position:absolute;right:0;top:0;bottom:0;width:min(540px,100%);background:white;padding:36px;overflow:auto;box-shadow:-15px 0 50px #0b202b18}.drawer-close{position:absolute;right:27px;top:24px;border:0;background:#f3f6f4;border-radius:8px;width:32px;height:32px;font-size:22px;color:#607a7b}.drawer h2{margin:18px 0 6px;font-size:23px}.drawer p{color:#8c9b9d;font-size:12px;line-height:1.7}.drawer-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}.drawer-field{border-bottom:1px solid #edf0ee;padding:10px 0}.drawer-field span{display:block;color:#9aaba9;font-size:11px;margin-bottom:8px}.drawer-field strong{font-size:13px;color:#344a4f;word-break:break-word}.drawer form{margin-top:25px}.drawer label{display:block;font-size:12px;font-weight:700;color:#455e60;margin:17px 0}.drawer input,.drawer select{display:block;margin-top:8px;width:100%;padding:11px 12px;border:1px solid #dce6e2;border-radius:8px;outline:none;background:#fff}.drawer .primary-button{margin-top:28px}.toast{position:fixed;bottom:25px;right:25px;background:#153e3d;color:white;border-radius:9px;padding:12px 17px;z-index:20;box-shadow:0 8px 25px #0002;font-size:12px}@media(max-width:1080px){.stat-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.sidebar{width:210px}.content{padding:28px}.topbar{padding:0 28px}}@media(max-width:700px){.login-wrap{grid-template-columns:1fr}.login-art{min-height:260px;padding:26px}.login-copy h1{font-size:32px;margin:12px 0}.login-copy p,.art-footer{display:none}.login-form-area{padding:30px 24px}.sidebar{width:64px;padding:22px 7px}.sidebar-brand{padding:0 6px 30px}.sidebar-brand div,.workspace-label,.sidebar-bottom,nav button span:not(.nav-icon){display:none}.sidebar-brand .brand-icon{flex:none}.sidebar nav button{justify-content:center;padding:12px 0}.main{width:calc(100% - 64px)}.topbar{padding:0 18px}.top-actions #today{display:none}.content{padding:24px 16px}.page-heading h1{font-size:24px}.page-heading p{line-height:1.5}.hero{grid-template-columns:1fr}.hero-side{display:none}.stat-grid{gap:9px}.stat{padding:16px;min-height:125px}.stat strong{font-size:20px}.table-toolbar{align-items:start;flex-direction:column}.search,.search input{width:100%;min-width:0}.drawer{padding:25px}}
.order-filters{display:flex;gap:10px;flex-wrap:wrap;padding:0 22px 17px}.order-filters label{display:grid;gap:5px;color:#748985;font-size:10px}.order-filters input,.order-filters select{min-width:130px;border:1px solid #dae7e1;border-radius:7px;background:#fff;color:#365654;padding:8px 10px;font-size:12px}
.dashboard-filters{display:flex;align-items:end;gap:16px;flex-wrap:wrap;background:#fff;border:1px solid #e6edeb;border-radius:13px;padding:16px 20px;margin-bottom:18px}.dashboard-filters>div:first-child{margin-right:auto}.dashboard-filters strong,.dashboard-filters small{display:block}.dashboard-filters strong{font-size:13px;color:#284b49}.dashboard-filters small{font-size:11px;color:#91a39f;margin-top:4px}.dashboard-filter-controls{display:flex;gap:10px;flex-wrap:wrap}.dashboard-filter-controls label{display:grid;gap:5px;color:#748985;font-size:10px}.dashboard-filter-controls input,.dashboard-filter-controls select{min-width:140px;border:1px solid #dae7e1;border-radius:7px;background:#fff;color:#365654;padding:8px 10px;font-size:12px}@media(max-width:700px){.dashboard-filters{align-items:stretch}.dashboard-filters>div:first-child,.dashboard-filter-controls,.dashboard-filter-controls label,.dashboard-filter-controls input,.dashboard-filter-controls select,.dashboard-filters button{width:100%}}
.ranking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.ranking-panel{padding:20px}.ranking-panel .panel-heading{margin-bottom:15px}.ranking-list{display:grid;gap:14px}.ranking-label{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#52706d;font-size:11px}.ranking-label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ranking-label b{flex:none;color:#365654;font-variant-numeric:tabular-nums}.ranking-track{height:5px;margin-top:7px;background:#edf3ef;border-radius:99px;overflow:hidden}.ranking-track i{display:block;height:100%;background:linear-gradient(90deg,#78baa0,#2b806e);border-radius:99px}@media(max-width:1080px){.ranking-grid{grid-template-columns:1fr}}
.cross-panel{margin-top:18px;overflow:hidden}.cross-panel .panel-heading{padding:20px 22px;border-bottom:1px solid #e9efec}.cross-panel .panel-heading p{margin:5px 0 0;color:#91a0a3;font-size:11px}.cross-panel tbody tr:hover{cursor:default}.cross-panel .money{text-align:right}.cross-panel th:last-child{text-align:right}
.channel-month-panel{padding:0;overflow:hidden;margin-bottom:18px}.channel-month-panel .panel-heading{padding:20px 22px;border-bottom:1px solid #e9efec}.channel-month-panel .panel-heading p{margin:5px 0 0;color:#91a0a3;font-size:11px}.channel-month-panel tbody tr:hover{cursor:default}
.channel-trend-intro{margin:0 2px 10px;color:#7d9691;font-size:11px}.channel-trend-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px}.channel-trend-panel{padding:0;overflow:hidden}.channel-trend-panel .panel-heading{padding:20px 22px;border-bottom:1px solid #e9efec}.channel-trend-panel .money{text-align:right}.channel-trend-panel th:last-child{text-align:right}.channel-trend-panel tbody tr:hover{cursor:default}@media(max-width:850px){.channel-trend-grid{grid-template-columns:1fr}}
.prospect-note{margin:0 2px 16px;color:#758d89;font-size:12px;line-height:1.7}
.tv-board{min-height:650px;padding:32px;border-radius:14px;background:radial-gradient(circle at 85% 0,#1b655b,#102c38 45%,#0a202b);color:#eaf9f2}.tv-board:fullscreen{border-radius:0;overflow:auto}.tv-head{display:flex;justify-content:space-between;align-items:start;gap:24px}.tv-head span{font-size:12px;letter-spacing:.18em;color:#8ed1bb}.tv-head h2{font-size:clamp(26px,3vw,46px);margin:12px 0}.tv-head p,.tv-footnote{color:#a7c9c1;font-size:12px;line-height:1.6}.tv-actions{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.tv-actions label{display:grid;gap:5px;color:#a7c9c1;font-size:11px}.tv-actions input,.tv-actions button{height:36px;padding:7px 11px;border:1px solid #69a99a;border-radius:7px;background:#173e43;color:#eaf9f2}.tv-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:34px 0}.tv-stats>div,.tv-rank{padding:22px;background:#ffffff10;border:1px solid #ffffff20;border-radius:12px}.tv-stats span{display:block;color:#9bc9bc;font-size:12px}.tv-stats strong{display:block;margin-top:10px;font-size:clamp(26px,3.2vw,50px);font-variant-numeric:tabular-nums}.tv-empty{color:#efcf98;font-size:13px}.tv-ranks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tv-rank h3{margin:0 0 17px;font-size:17px}.tv-rank p{color:#9bc9bc;font-size:12px}.tv-rank-row{display:flex;align-items:center;gap:10px;padding:12px 0;border-top:1px solid #ffffff1a}.tv-rank-row span{width:22px;color:#80c9ae}.tv-rank-row strong{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.tv-rank-row b{font-size:13px;white-space:nowrap}.tv-footnote{margin:24px 0 0}@media(max-width:1100px){.tv-head{display:block}.tv-ranks{grid-template-columns:1fr}}@media(max-width:700px){.tv-board{padding:20px}.tv-stats{grid-template-columns:1fr}.tv-actions{margin-top:20px}}
.video-activity{margin-bottom:18px;padding:20px 22px}.video-activity .panel-heading p{margin:5px 0 0;color:#91a0a3;font-size:11px}.video-activity-controls{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:18px 0}.video-activity-controls label{display:grid;gap:5px;color:#748985;font-size:10px}.video-activity-controls input,.video-activity-controls select{min-width:160px;border:1px solid #dae7e1;border-radius:7px;background:#fff;color:#365654;padding:8px 10px;font-size:12px}.video-activity-stats{display:flex;gap:12px}.video-activity-stats>div{flex:1;padding:15px 18px;background:#f5f9f7;border-radius:9px}.video-activity-stats span,.video-activity-stats small{display:block;color:#849995;font-size:11px}.video-activity-stats strong{display:block;color:#275d51;font-size:26px;margin:5px 0}.video-activity-chart{display:block;width:100%;height:165px;margin-top:16px}.video-activity-chart text{font-size:9px;fill:#91a39f}.video-activity-note{color:#91a39f;font-size:11px;line-height:1.7;margin:10px 0 0}@media(max-width:700px){.video-activity{padding:16px}.video-activity-controls>*{width:100%}.video-activity-controls input,.video-activity-controls select{width:100%}}
.table-toolbar-actions{display:flex;align-items:center;gap:9px}.table-toolbar-actions .outline-button{white-space:nowrap}@media(max-width:700px){.table-toolbar-actions{width:100%;align-items:stretch;flex-direction:column}.table-toolbar-actions .outline-button{width:100%}}
.ip-trend-intro{padding:25px 30px;margin-bottom:18px;border-radius:13px;background:linear-gradient(110deg,#173c3e,#286859);color:#fff}.ip-trend-intro .small-label{color:#b6ded1}.ip-trend-intro h2{margin:10px 0 7px;font-size:23px}.ip-trend-intro p{margin:0;color:#c8dfd8;font-size:12px;line-height:1.7}.ip-trend-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;margin-bottom:18px}.ip-trend-stats .stat{padding:18px;min-height:135px}.ip-trend-stats .stat strong{font-size:23px}.ip-trend-charts,.ip-trend-bottom{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px}.ip-trend-chart svg{display:block;width:100%;height:190px}.ip-trend-chart svg text{font-size:10px;fill:#91a39f}.ip-trend-summary{padding:0;overflow:hidden}.ip-trend-summary .panel-heading{padding:20px 22px;margin:0}.ip-trend-summary tbody tr:hover{cursor:default}.ip-trend-footnote{margin:0;color:#849895;font-size:11px;line-height:1.7}@media(max-width:1180px){.ip-trend-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:850px){.ip-trend-charts,.ip-trend-bottom{grid-template-columns:1fr}}@media(max-width:700px){.ip-trend-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.ip-trend-stats .stat{padding:14px}.ip-trend-stats .stat strong{font-size:20px}.ip-trend-intro{padding:21px}}
.snapshot-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 30px;margin-bottom:18px;border-radius:13px;background:linear-gradient(110deg,#183b44,#32675d);color:#fff}.snapshot-intro .small-label{color:#b6ded1}.snapshot-intro h2{margin:10px 0 7px;font-size:23px}.snapshot-intro p{margin:0;color:#c8dfd8;font-size:12px;line-height:1.7}.snapshot-intro>strong{font-size:38px;white-space:nowrap}.snapshot-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;margin-bottom:18px}.snapshot-stats .stat{padding:18px;min-height:135px}.snapshot-stats .stat strong{font-size:23px}.snapshot-main{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin-bottom:18px}.snapshot-chart svg{display:block;width:100%;height:190px}.snapshot-chart svg text{font-size:10px;fill:#91a39f}.snapshot-chart p,.snapshot-pending p{color:#819692;font-size:11px;line-height:1.8}.snapshot-chart p strong{color:#245448}.snapshot-ranks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}@media(max-width:1180px){.snapshot-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.snapshot-main{grid-template-columns:1fr}}@media(max-width:850px){.snapshot-ranks{grid-template-columns:1fr}}@media(max-width:700px){.snapshot-intro{padding:21px}.snapshot-intro>strong{display:none}.snapshot-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.snapshot-stats .stat{padding:14px}.snapshot-stats .stat strong{font-size:20px}}
.ledger-intro{padding:25px 30px;margin-bottom:18px;border-radius:13px;background:linear-gradient(110deg,#173c3e,#276456);color:#fff}.ledger-intro .small-label{color:#b6ded1}.ledger-intro h2{margin:10px 0 7px;font-size:23px}.ledger-intro p{margin:0;color:#c8dfd8;font-size:12px;line-height:1.7}.ledger-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:18px}.ledger-stats .stat{min-height:130px}.ledger-tables{display:grid;gap:18px}.ledger-table tbody tr:hover{cursor:default}.ledger-note{color:#849895;font-size:11px;line-height:1.8;margin:16px 2px}@media(max-width:1080px){.ledger-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.ledger-intro{padding:21px}.ledger-stats{gap:9px}.ledger-stats .stat{padding:14px}.ledger-stats .stat strong{font-size:20px}}
.transfer-open{display:block;width:100%;margin-top:12px}.drawer textarea{display:block;margin-top:8px;width:100%;padding:11px 12px;border:1px solid #dce6e2;border-radius:8px;outline:none;background:#fff;resize:vertical}.drawer textarea:focus{border-color:#4f9b8a;box-shadow:0 0 0 3px #4f9b8a20}.transfer-history{margin-top:28px;border-top:1px solid #edf0ee;padding-top:20px}.transfer-history h3{font-size:15px;color:#344a4f}.transfer-item{position:relative;padding:15px 0;border-bottom:1px solid #edf0ee}.transfer-item strong{display:block;padding-right:70px;color:#344a4f;font-size:13px}.transfer-item .tag{position:absolute;right:0;top:12px}.transfer-item small{display:block;color:#91a19f;margin-top:7px}.transfer-item p{margin:8px 0}.transfer-item button{margin-top:6px}

.real-hero{background:linear-gradient(105deg,#12333f,#1c5a58)}
.real-blocked p{color:#7c8c90;font-size:13px;line-height:1.9;margin:0 0 10px}
.real-muted{color:#7e918e;font-size:11.5px;line-height:1.85;margin:0 2px 16px}
.real-source-bar{display:flex;align-items:center;gap:12px;margin-bottom:14px;padding:13px 20px;border:1px solid #d9e8e3;border-radius:11px;background:#eff7f3;color:#3c6159;font-size:12px}
.real-source-bar span{background:#176957;color:#fff;border-radius:6px;padding:4px 9px;font-size:10px;font-weight:700;letter-spacing:.08em}
.real-source-bar b{color:#164a41;font-size:15px}
.real-quality{margin-bottom:18px;padding:0;overflow:hidden}
.real-quality .panel-heading{padding:20px 22px;margin:0;border-bottom:1px solid #e9efec}
.real-quality tbody tr:hover{cursor:default}
.real-quality td:first-child{color:#44605c;font-weight:600}
.real-quality td:last-child{color:#8a9c99;font-size:11px}
.real-gap{margin-bottom:18px}
.real-gap-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.real-gap-list li{padding:13px 15px;background:#fbf7f1;border:1px solid #f0e6d8;border-radius:9px}
.real-gap-list b{display:block;color:#8a6532;font-size:12px}
.real-gap-list span{display:block;margin-top:6px;color:#968874;font-size:11px;line-height:1.7}
.pager{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:0 22px 17px;color:#7f918d;font-size:11.5px}
.pager>div{display:flex;gap:8px;align-items:center}
.pager select{border:1px solid #dae7e1;border-radius:7px;background:#fff;color:#365654;padding:8px 10px;font-size:12px}
@media(max-width:1080px){.real-gap-list{grid-template-columns:1fr}}
@media(max-width:700px){.pager{align-items:stretch;flex-direction:column}.pager>div{width:100%}.pager>div .outline-button,.pager select{flex:1}}

.demo-badge.real{background:#e6f4ec;color:#1c6b52}

/* A-3 审计完整性校验面板（操作记录页） */
.integrity-panel{margin-bottom:18px}
.integrity-actions{display:flex;gap:9px;flex-wrap:wrap}
.integrity-actions .outline-button{white-space:nowrap}
.integrity-result{padding:0 22px 18px}
.integrity-state{padding:13px 16px;border-radius:9px;font-size:12px;line-height:1.8}
.integrity-state.good{background:#eef8f2;border:1px solid #cfe8da;color:#1d6046}
.integrity-state.bad{background:#fcf0ef;border:1px solid #f0d3cf;color:#a23b30}
.integrity-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-top:12px}
.integrity-metrics>div{padding:12px 14px;border:1px solid #e7efeb;border-radius:9px;background:#fafcfb}
.integrity-metrics span{display:block;color:#8a9c99;font-size:10.5px}
.integrity-metrics strong{display:block;color:#2c5348;font-size:13px;margin-top:5px;line-height:1.5}
.integrity-tag{display:inline-block;padding:3px 8px;border-radius:5px;font-size:10.5px;font-weight:700}
.integrity-tag.ok{background:#e3f4ea;color:#1d6046}
.integrity-tag.warn{background:#fbf1e3;color:#8a6532}
.integrity-warnings{margin:12px 0 0;padding:12px 16px 12px 30px;border-radius:9px;background:#fdf8f0;border:1px solid #f0e6d8;color:#8a6532;font-size:11.5px;line-height:1.8}
.integrity-note{margin:12px 2px 0;color:#849895;font-size:11px;line-height:1.8}
@media(max-width:850px){.integrity-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.integrity-actions{width:100%}.integrity-actions .outline-button{flex:1}}

/* ── 登录页三段式（入口卡片 → 角色卡片 → 账号）──────────────────────── */
.login-step h2{font-size:38px;margin:18px 0 12px;letter-spacing:-.04em}
.login-step p{color:#7d8a8e;margin:0 0 34px;font-size:15px;line-height:1.75}
.login-step .primary-button{margin-top:12px}
.choice-grid{display:grid;gap:20px;margin-bottom:12px;width:100%}
#portal-cards{grid-template-columns:1fr 1fr}
#role-cards{grid-template-columns:1fr 1fr}
.choice-card{display:flex;align-items:center;justify-content:center;text-align:center;background:#fff;border:1.5px solid #dfe9e5;border-radius:20px;padding:30px 28px;min-height:120px;width:100%;transition:border-color .15s,box-shadow .15s,transform .15s;color:#16302f}
.choice-card:hover{border-color:#4f9b8a;box-shadow:0 14px 38px #1769571f;transform:translateY(-3px)}
.choice-card:focus-visible{outline:2px solid #4f9b8a;outline-offset:3px}
.choice-card strong{font-size:32px;font-weight:700;letter-spacing:-.025em;line-height:1.25}
#role-cards .choice-card{min-height:104px;padding:26px 22px}
#role-cards .choice-card strong{font-size:28px}
.back-link{align-self:flex-start;background:none;border:0;color:#5d8d84;font-size:14px;font-weight:700;padding:0 0 22px;cursor:pointer}
.back-link:hover{color:#176957}
#chosen-caption,#portal-caption{color:#558f86;letter-spacing:.14em}
@media(max-width:700px){#portal-cards,#role-cards{grid-template-columns:1fr}.choice-card{padding:24px 20px;min-height:96px}.choice-card strong{font-size:26px}#role-cards .choice-card{min-height:88px;padding:22px 20px}#role-cards .choice-card strong{font-size:23px}}
