/* HuoXuYun 2.0 application workspace */
.app-shell{grid-template-columns:228px minmax(0,1fr);background:#f3f6fa;color:#10223a}.app-shell aside{padding:20px 13px;background:linear-gradient(180deg,#081a13,#0b2017 64%,#081810);box-shadow:8px 0 28px #0d25101a}.app-shell .brand{height:65px;padding:0 10px 19px;font-size:17px;letter-spacing:.01em}.app-shell .brand>span{width:40px;height:40px;border-radius:12px;background:linear-gradient(145deg,#55df73,#25b94c);color:#072412;box-shadow:0 8px 24px #37cf5e30}.app-shell .brand small{color:#70907b}.app-shell nav{gap:3px;padding-top:8px}.app-shell nav p{margin:18px 11px 6px;color:#587364;font-size:9px;font-weight:800}.app-shell nav button{min-height:40px;padding:9px 11px;border-radius:9px;color:#9eb2a5;font-size:13px;font-weight:620;transition:.16s}.app-shell nav button i{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:#ffffff08;color:#769183;font-size:11px;font-weight:800}.app-shell nav button:hover{background:#ffffff0a;color:#fff;transform:translateX(2px)}.app-shell nav button.active{background:linear-gradient(90deg,#235d36,#1c4d2e);box-shadow:inset 3px 0 #5ee47a,0 7px 18px #06120a40;color:#fff}.app-shell nav button.active i{background:#5ee47a20;color:#63e780}.app-shell .aside-foot{padding:16px 8px 2px;border-color:#ffffff12}.app-shell main{background:radial-gradient(circle at 88% -5%,#dceee4 0,transparent 25%),#f3f6fa}.app-shell .topbar{height:78px;padding:0 28px;border-color:#dfe6ec;background:#ffffffed;box-shadow:0 2px 16px #16382608;backdrop-filter:blur(16px);gap:16px}.topbar-title{flex:0 0 auto;min-width:155px}.topbar-title h1{font-size:19px}.topbar-title p{color:#25a947;font-size:9px;letter-spacing:.19em}
.global-search{position:relative;width:min(420px,34vw);margin-left:18px}.global-search>span{position:absolute;left:13px;top:9px;color:#789087;font-size:20px;z-index:1}.global-search>input{width:100%;height:42px;padding:0 66px 0 39px;border:1px solid #dce5e0;border-radius:11px;background:#f7faf8;color:#183025;outline:none;transition:.18s}.global-search>input:focus{border-color:#57c86d;background:#fff;box-shadow:0 0 0 4px #43c66113}.global-search kbd{position:absolute;right:10px;top:10px;padding:3px 6px;border:1px solid #d9e1dc;border-bottom-width:2px;border-radius:5px;background:#fff;color:#8a9890;font-size:9px;font-family:inherit}.global-search-results{display:none;position:absolute;left:0;right:0;top:48px;z-index:50;padding:7px;border:1px solid #dce5e0;border-radius:13px;background:#fff;box-shadow:0 18px 55px #142e2030}.global-search-results.open{display:grid}.global-search-results button{display:flex;justify-content:space-between;gap:15px;padding:11px;border:0;border-radius:8px;background:#fff;text-align:left;color:#183025}.global-search-results button:hover{background:#edf8f0}.global-search-results button span{font-size:12px;font-weight:750}.global-search-results button small{color:#8a978f;font-size:10px;text-align:right}.global-search-results p{margin:15px;text-align:center;color:#8a978f;font-size:12px}.quick-create{margin-left:auto;white-space:nowrap;box-shadow:0 8px 22px #229a3d25}.quick-menu{display:none;position:absolute;right:126px;top:65px;z-index:40;width:230px;padding:7px;border:1px solid #dce5e0;border-radius:13px;background:#fff;box-shadow:0 20px 60px #14302030}.quick-menu.open{display:grid}.quick-menu button{display:grid;gap:3px;padding:11px;border:0;border-radius:8px;background:#fff;color:#183025;text-align:left;font-size:12px;font-weight:750}.quick-menu button:hover{background:#edf8f0}.quick-menu small{color:#8b9890;font-size:10px;font-weight:500}.env-pill{margin-left:0}.env-pill.production{border-color:#cce8d3;color:#24763a;background:#f3fbf5}.env-pill.production i{background:#37c85a}.app-shell .content{width:100%;max-width:1600px;margin:0 auto;padding:30px 30px 56px}
.workspace-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.workspace-head h2{margin:3px 0 7px;font-size:26px;letter-spacing:-.045em;color:#10223a}.workspace-head>div>span{color:#75859a;font-size:12px}.section-kicker{margin:0;color:#20a244;font-size:10px;font-weight:850;letter-spacing:.16em}.period-switch{display:flex;padding:4px;border:1px solid #dfe6ec;border-radius:11px;background:#fff;box-shadow:0 5px 18px #16382608}.period-switch button{min-width:58px;padding:8px 11px;border:0;border-radius:8px;background:transparent;color:#718096;font-size:11px;font-weight:700}.period-switch button.active{background:#1f8d3a;color:#fff;box-shadow:0 5px 14px #218d3b25}.metrics-v2{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.metrics-v2 .metric{min-height:142px;padding:19px;border-color:#dee6ec;border-radius:15px;box-shadow:0 9px 28px #1837250b}.metrics-v2 .metric:after{display:none}.metrics-v2 .metric p{margin:15px 0 9px}.metrics-v2 .metric strong{font-size:23px}.metrics-v2 .metric small{font-size:10px}.metrics-v2 .metric.accent{background:linear-gradient(145deg,#153e24,#0c2617);box-shadow:0 12px 30px #123a2025}.metric-icon{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#ffffff18;color:#6cea82;font-size:11px;font-weight:900}.metric-icon.green{background:#e1f7e7;color:#218f3c}.metric-icon.blue{background:#e7f0ff;color:#346dce}.metric-icon.amber{background:#fff0da;color:#b56b12}.metric-icon.violet{background:#f0eaff;color:#7451c9}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(290px,.75fr);gap:14px;margin-bottom:14px}.app-shell .panel{border-color:#dee6ec;border-radius:15px;box-shadow:0 9px 28px #1837250a}.panel-head>div h3{margin:0 0 5px}.panel-head>div span{display:block}.trend-panel{min-height:330px}.trend-chart{padding:18px 24px 22px}.trend-legend{display:flex;justify-content:flex-end;gap:17px;color:#7b8999;font-size:10px}.trend-legend span{display:flex;align-items:center;gap:6px}.trend-legend i{width:8px;height:8px;border-radius:3px}.trend-chart i.sale{background:#36b955}.trend-chart i.purchase{background:#a8c6b0}.trend-bars{height:215px;display:grid;grid-template-columns:repeat(6,1fr);align-items:end;gap:14px;padding-top:20px;border-bottom:1px solid #dfe7e2;background:repeating-linear-gradient(to bottom,#edf1ef 0,#edf1ef 1px,transparent 1px,transparent 54px)}.trend-group{height:100%;display:grid;grid-template-rows:1fr 25px;align-items:end;text-align:center}.trend-columns{height:100%;display:flex;align-items:flex-end;justify-content:center;gap:5px}.trend-columns i{display:block;width:min(18px,35%);min-height:3px;border-radius:5px 5px 1px 1px;transition:.25s}.trend-group>span{padding-top:8px;color:#84918a;font-size:9px}.task-panel .panel-head{padding-bottom:14px}.task-list{display:grid;padding:7px 13px 14px}.task-row{display:grid;grid-template-columns:1fr auto 14px;align-items:center;gap:10px;padding:12px 9px;border:0;border-bottom:1px solid #edf1ee;background:#fff;color:#23382c;text-align:left}.task-row:last-child{border-bottom:0}.task-row:hover{background:#f5faf6}.task-row>span{display:grid;gap:3px;font-size:12px;font-weight:750}.task-row small{color:#8b9890;font-size:9px;font-weight:500}.task-row b{display:grid;place-items:center;min-width:27px;height:25px;padding:0 7px;border-radius:8px;background:#edf3ef;color:#4b6556;font-size:11px}.task-row.attention b{background:#fff0d9;color:#a96311}.task-row.danger b{background:#fee8e8;color:#b82c2c}.task-row i{color:#9caaa1;font-style:normal;font-size:18px}.recent-panel>.panel{border:0;border-radius:0;box-shadow:none}.recent-panel .data-table th{background:#f5f8fa}.recent-panel .data-table td{padding-top:13px;padding-bottom:13px}
.app-shell .page-head{align-items:center;margin-bottom:20px}.app-shell .page-head h2{color:#10223a;font-size:24px;letter-spacing:-.04em}.app-shell .page-head p{color:#79889b}.app-shell .toolbar{padding:12px;border:1px solid #dee6ec;border-radius:13px;background:#fff;box-shadow:0 7px 22px #18372508}.app-shell .toolbar input,.app-shell .toolbar select{min-height:39px;border-color:#dce4ea;background:#f9fbfc}.app-shell .data-table th{height:41px;background:#f5f8fa;color:#7a899a}.app-shell .data-table td{height:58px;border-color:#ebf0f3}.app-shell .data-table tr:hover td{background:#f7fbf8}.app-shell .primary{background:linear-gradient(135deg,#299c45,#187d34)}.app-shell .primary:hover{background:#187d34}.app-shell button:disabled{cursor:not-allowed;opacity:.55}.app-shell .badge{font-size:10px}.app-shell .modal{border-radius:18px}.app-shell .modal-frame>header{background:#fbfcfd}.modal-actions{position:sticky;bottom:-27px;z-index:5;background:#fff}.row-actions{flex-wrap:wrap}.row-actions button{white-space:nowrap}
@media(max-width:1250px){.metrics-v2{grid-template-columns:repeat(3,1fr)}.global-search{width:min(330px,30vw)}.dashboard-grid{grid-template-columns:1fr}.task-list{grid-template-columns:1fr 1fr}.task-row:nth-last-child(2){border-bottom:0}}
@media(max-width:900px){.app-shell{grid-template-columns:205px minmax(0,1fr)}.app-shell .topbar{padding:0 18px}.topbar-title{min-width:125px}.global-search{margin-left:0}.global-search kbd{display:none}.global-search>input{padding-right:12px}.env-pill{display:none}.app-shell .content{padding:24px 20px 45px}.metrics-v2{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.app-shell{display:block}.app-shell aside{width:244px}.app-shell .topbar{height:68px}.topbar-title{display:none}.global-search{flex:1;width:auto}.quick-create{padding:10px;font-size:0}.quick-create::after{content:'＋';font-size:17px}.quick-menu{right:12px;top:60px}.app-shell .content{padding:20px 14px 40px}.workspace-head{align-items:flex-start;flex-direction:column}.workspace-head h2{font-size:23px}.period-switch{width:100%}.period-switch button{flex:1;min-width:0}.metrics-v2{grid-template-columns:1fr 1fr}.metrics-v2 .metric{min-height:128px}.dashboard-grid{display:block}.task-panel{margin-top:14px}.task-list{grid-template-columns:1fr}.task-row:nth-last-child(2){border-bottom:1px solid #edf1ee}.trend-chart{padding:15px}.trend-bars{gap:5px}.trend-columns{gap:2px}.app-shell .page-head h2{font-size:21px}}
@media(max-width:480px){.global-search>span{left:10px}.global-search>input{padding-left:34px;font-size:12px}.metrics-v2{grid-template-columns:1fr}.metrics-v2 .metric{min-height:115px}.trend-panel{min-height:300px}.trend-bars{height:180px}.app-shell .toolbar{padding:10px}.app-shell .toolbar>*{width:100%}.app-shell .toolbar>span{display:none}}
