:root{--forest:#174b36;--forest-2:#236d4d;--green:#35a878;--mint:#dff3e7;--mint-2:#eef8f0;--cream:#fffdf6;--paper:#f4f7ef;--ink:#1e382b;--muted:#7b8c80;--line:#e3eadf;--gold:#f1bd52;--gold-soft:#fff3d3;--blue:#7bb9e8;--blue-soft:#eaf4fc;--coral:#f08c72;--coral-soft:#fff0eb;--purple:#a89ae4;--shadow:0 12px 32px rgba(30,73,49,.065);--shadow-sm:0 4px 15px rgba(30,73,49,.055);--radius:20px;--sidebar:232px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"PingFang SC","Microsoft YaHei","Noto Sans SC",system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #f2ca65;outline-offset:3px}button:disabled{opacity:.5;cursor:not-allowed}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.app-shell{min-height:100vh;display:block}.app-shell.is-hidden{visibility:hidden;height:100vh;overflow:hidden}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);z-index:30;display:flex;flex-direction:column;padding:22px 15px 16px;background:rgba(255,255,249,.95);border-right:1px solid #e4ebdf;box-shadow:8px 0 28px rgba(36,82,54,.025);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:11px;padding:2px 9px 23px;color:inherit;text-decoration:none}.brand-mark{width:42px;height:42px;display:grid;place-items:center;flex:none;border-radius:14px 14px 16px 10px;background:linear-gradient(145deg,#6acb8f,#1e7750);color:white;box-shadow:0 4px 0 #cfe8d0,0 9px 18px #2a845124;transform:rotate(-3deg)}.brand-mark svg{width:24px;height:24px;stroke-width:2}.brand-word{display:flex;flex-direction:column;line-height:1.2}.brand-word strong{font-size:20px;letter-spacing:-.7px;font-weight:850}.brand-word small{margin-top:5px;color:#526858;font-size:13px;letter-spacing:1.55px;font-weight:800}.sidebar-label{padding:9px 11px 10px;color:#526858;font-size:13px;letter-spacing:1.7px;font-weight:850}.side-nav{display:grid;gap:5px}.nav-item{width:100%;display:flex;align-items:center;gap:12px;border:1px solid transparent;background:transparent;color:#75877a;border-radius:13px;padding:11px 12px;text-align:left;font-size:13px;font-weight:700;transition:background .18s,color .18s,transform .18s}.nav-item svg{width:18px;height:18px;flex:none}.nav-item:hover{background:#f0f7ef;color:var(--forest);transform:translateX(2px)}.nav-item.active{background:linear-gradient(115deg,#267650,#1b6246);border-color:#2e8059;color:white;box-shadow:0 5px 0 #d4e9d2,0 10px 22px #216a481c}.nav-item.active svg{color:#d7f4dd}.nav-divider{height:1px;background:#e8eee4;margin:12px 7px}.sidebar-bottom-card{position:relative;overflow:hidden;min-height:132px;margin-top:auto;padding:13px 12px 14px;border:1px solid #d8ebd7;border-radius:18px;background:linear-gradient(135deg,#f0f9e8 0%,#dff3e7 100%)}.mascot-tag{display:flex;align-items:center;gap:5px;font-size:13px;font-weight:800;color:#39845d;position:relative;z-index:2}.status-dot{width:6px;height:6px;border-radius:50%;display:inline-block;background:#35b37a;box-shadow:0 0 0 3px #d8f2df}.mascot-copy{position:relative;z-index:2;display:grid;gap:3px;margin-top:10px;max-width:125px}.mascot-copy strong{font-size:17px;color:#20593e}.mascot-copy span{font-size:13px;color:#6d8b77;line-height:1.5}.sidebar-bottom-card>img{position:absolute;right:-13px;bottom:-24px;width:118px;height:158px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 6px 6px #16482c18)}.mascot-leaf{position:absolute;color:#526858}.leaf-one{top:18px;right:20px}.leaf-two{bottom:20px;left:20px}.sidebar-footer{display:flex;align-items:center;gap:9px;padding:15px 5px 0}.avatar-mini{width:31px;height:31px;display:grid;place-items:center;background:#fff0c8;color:#8b7036;border:1px solid #f3e0a8;border-radius:50%;font-weight:900}.sidebar-footer>span:nth-child(2){display:grid;min-width:0;flex:1;line-height:1.25}.sidebar-footer b{font-size:13px}.sidebar-footer small{margin-top:4px;color:#526858;font-size:13px}.icon-button{position:relative;width:38px;height:38px;display:inline-grid;place-items:center;flex:none;border:1px solid #e7ede5;border-radius:13px;background:#fffefa;color:#6f8778;transition:all .18s}.icon-button svg{width:18px;height:18px}.icon-button:hover{border-color:#cde5d0;background:#f0f8ee;color:var(--forest);transform:translateY(-1px)}.sidebar-footer .icon-button{width:28px;height:28px;border:0;background:transparent}.main-area{margin-left:var(--sidebar);min-width:0;min-height:100vh}.topbar{height:76px;position:sticky;top:0;z-index:25;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 30px;background:rgba(255,255,250,.88);border-bottom:1px solid #e4ebe0;backdrop-filter:blur(20px)}.topbar-project,.topbar-actions{display:flex;align-items:center;gap:13px;min-width:0}.topbar-caption{display:block;margin-right:1px;color:#526858;font-size:13px;font-weight:800;letter-spacing:.7px}.project-select-wrap{position:relative;display:flex;align-items:center;gap:9px;padding:6px 12px 6px 7px;border:1px solid #e0e9dd;border-radius:13px;background:#fffef8;box-shadow:0 2px 5px #2b62400a}.project-select-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:#edf7e8;font-size:17px}.project-select-wrap select{max-width:210px;appearance:none;padding:3px 18px 3px 0;border:0;outline:0;background:transparent;color:#28553b;font-size:13px;font-weight:800;cursor:pointer}.select-caret{color:#526858;font-size:13px}.topbar-weather{display:flex;align-items:center;gap:7px;padding-left:14px;border-left:1px solid #e4ebe1}.topbar-weather>span:first-child{font-size:22px}.topbar-weather>span:last-child{display:grid;line-height:1.25}.topbar-weather b{font-size:13px;color:#486e54}.topbar-weather small{margin-top:3px;color:#526858;font-size:13px}.topbar-actions{gap:10px}.search-box{width:225px;height:39px;display:flex;align-items:center;gap:8px;padding:0 9px;border:1px solid #e3ebe1;border-radius:13px;background:#fffefa;color:#526858}.search-box svg{width:16px;height:16px;flex:none}.search-box input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:13px}.search-box input::placeholder{color:#526858}.search-box kbd{flex:none;padding:2px 5px;border:1px solid #e8eee5;border-radius:5px;background:#f8faf4;font-size:13px}.notification-button i{position:absolute;top:8px;right:8px;width:6px;height:6px;border:1px solid white;border-radius:50%;background:#f38a6e}.workspace-switch{display:flex;gap:3px;padding:4px;border:1px solid #e2eadd;border-radius:999px;background:#f2f7ee}.workspace-switch button{padding:7px 11px;border:0;border-radius:999px;background:transparent;color:#526858;font-size:13px;font-weight:750;white-space:nowrap}.workspace-switch button.active{background:#1f714d;color:white;box-shadow:0 3px 8px #1d75451c}.profile-button{display:flex;align-items:center;gap:8px;padding:3px 0 3px 5px;border:0;background:transparent;text-align:left}.profile-avatar{width:34px;height:34px;overflow:hidden;display:grid;place-items:center;border:2px solid #fff;border-radius:50%;background:#e5f2df;box-shadow:0 0 0 1px #dce9d8}.profile-avatar img{width:100%;height:100%;object-fit:cover;object-position:50% 8%;transform:scale(1.7);transform-origin:50% 20%}.profile-button>span:nth-child(2){display:grid;line-height:1.2}.profile-button b{font-size:13px;color:#3e6249}.profile-button small{margin-top:4px;color:#526858;font-size:13px}.profile-button>.select-caret{margin-left:4px}.mobile-nav-wrap{display:none}.page-content{max-width:1900px;margin:0 auto;padding:25px 30px 12px}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.page-heading .heading-copy{min-width:0}.eyebrow{display:block;color:#526858;font-size:13px;font-weight:900;letter-spacing:2px;text-transform:uppercase}.page-heading h1{margin:4px 0 3px;color:#204d36;font-size:26px;line-height:1.25;letter-spacing:-.9px;font-weight:900}.page-heading p{margin:0;color:#526858;font-size:13px}.heading-actions{display:flex;align-items:center;gap:8px}.pill{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid #dcebdd;border-radius:999px;background:#f7fbf2;color:#4c8b63;font-size:13px;font-weight:750;white-space:nowrap}.pill .status-dot{width:5px;height:5px}.button-primary,.button-secondary,.button-quiet{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:39px;padding:0 15px;border:1px solid transparent;border-radius:12px;font-size:13px;font-weight:800;white-space:nowrap;transition:all .18s}.button-primary{background:linear-gradient(120deg,#38a875,#1d704c);color:white;box-shadow:0 4px 0 #d1e8d1,0 8px 18px #257a4e1a}.button-primary svg,.button-secondary svg,.button-quiet svg{width:15px;height:15px}.button-primary:hover{transform:translateY(-2px);box-shadow:0 6px 0 #c8e4c8,0 12px 22px #257a4e22}.button-secondary{background:#fffef9;border-color:#dfe9dc;color:#426b4e}.button-secondary:hover{background:#f0f8ee;border-color:#c9e3ca}.button-quiet{background:#eef7e9;border-color:#dbead5;color:#397e57}.button-quiet:hover{background:#e2f3e1}.hero-banner{position:relative;isolation:isolate;overflow:hidden;min-height:248px;display:flex;align-items:center;margin:0 0 15px;border:3px solid rgba(255,255,255,.94);border-radius:25px;background:#d9efd7;box-shadow:0 9px 0 #d8ead1,0 16px 30px #285c3b0e}.hero-banner:before{content:"";position:absolute;z-index:-2;inset:0;background-image:url('/assets/orchard-longan.webp');background-size:cover;background-position:62% 24%;transform:scale(1.015)}.hero-banner:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(247,252,235,.98) 0%,rgba(244,251,232,.9) 28%,rgba(240,249,229,.54) 47%,rgba(230,246,222,.05) 75%),linear-gradient(0deg,rgba(23,77,49,.12),transparent 52%)}.hero-copy{width:58%;padding:25px 32px}.hero-topline{display:flex;align-items:center;gap:8px;margin-bottom:10px}.hero-topline .pill{background:#fffdf0dc;border-color:#fffdf0;color:#43855d}.hero-copy h2{margin:0;max-width:590px;color:#1d5137;font-size:clamp(29px,2.4vw,41px);line-height:1.15;letter-spacing:-1.5px;font-weight:950}.hero-copy h2 em{font-style:normal;color:#2b9b68;position:relative}.hero-copy h2 em:after{content:"";position:absolute;left:2px;right:8px;bottom:-5px;height:3px;border-radius:4px;background:#f4c65d;transform:rotate(-1deg)}.hero-copy p{max-width:480px;margin:14px 0 17px;color:#708c77;font-size:13px;line-height:1.75}.hero-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.hero-side-note{position:absolute;right:22px;top:18px;max-width:170px;padding:9px 12px;border:1px solid #fff8;border-radius:13px;background:#fffdf0d9;color:#6d855f;font-size:13px;font-weight:750;box-shadow:0 7px 20px #3d6a4014;backdrop-filter:blur(10px)}.hero-current-card{position:absolute;right:18px;bottom:16px;display:flex;align-items:center;gap:11px;padding:11px 13px;border:1px solid #ffffffb8;border-radius:17px;background:#fffef1e8;box-shadow:0 10px 24px #2c65401b;backdrop-filter:blur(12px)}.hero-current-thumb{width:43px;height:43px;overflow:hidden;border-radius:12px;background:#e6f4de}.hero-current-thumb img{width:100%;height:100%;object-fit:cover}.hero-current-copy{display:grid;gap:2px;min-width:120px}.hero-current-copy small{font-size:13px;color:#526858}.hero-current-copy strong{font-size:13px;color:#285c3e}.hero-current-copy span{font-size:13px;color:#526858}.hero-current-arrow{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:#e5f4df;color:#347d53}.hero-current-arrow svg{width:16px;height:16px}.hero-male-badge{position:absolute;right:245px;bottom:14px;width:92px;height:115px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 6px 5px #315b351d);pointer-events:none}.crop-strip{display:grid;grid-template-columns:128px repeat(5,minmax(0,1fr));gap:9px;align-items:stretch;margin-bottom:15px;padding:9px;border:1px solid #e3ecdf;border-radius:18px;background:#fffef9;box-shadow:var(--shadow-sm)}.crop-strip-label{display:flex;flex-direction:column;justify-content:center;padding:4px 9px}.crop-strip-label small{color:#526858;font-size:13px;font-weight:900;letter-spacing:1.6px}.crop-strip-label strong{margin-top:5px;color:#315d40;font-size:14px}.crop-chip{display:grid;grid-template-columns:43px minmax(0,1fr) 12px;align-items:center;gap:0 9px;min-width:0;padding:8px 10px;border:1px solid transparent;border-radius:14px;background:#f8faf3;color:#476750;text-align:left;transition:all .18s}.crop-chip:hover{border-color:#d8e9d3;background:#f0f8ec;transform:translateY(-1px)}.crop-chip.active{border-color:#b8dec0;background:linear-gradient(135deg,#e5f5e5,#f4f9e9);box-shadow:inset 0 0 0 1px #fff}.crop-chip img{grid-row:1/3;width:43px;height:43px;border-radius:12px;object-fit:cover;background:#edf5e8}.crop-chip strong{overflow:hidden;color:#315d40;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.crop-chip small{margin-top:3px;color:#526858;font-size:13px}.crop-chip b{grid-column:3;grid-row:1/3;color:#526858;font-size:17px}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:10px}.kpi-card{position:relative;overflow:hidden;display:flex;align-items:flex-start;gap:12px;min-width:0;min-height:116px;padding:16px 15px;border:1px solid #e2eadf;border-radius:18px;background:#fffefa;box-shadow:var(--shadow-sm)}.kpi-card:after{content:"";position:absolute;right:-20px;top:-30px;width:100px;height:100px;border-radius:50%;background:var(--tone-soft);opacity:.65}.kpi-icon{position:relative;z-index:1;display:grid;place-items:center;width:39px;height:39px;flex:none;border-radius:13px;background:var(--tone-soft);color:var(--tone);font-size:19px}.kpi-icon svg{width:20px;height:20px}.kpi-body{position:relative;z-index:1;display:grid;gap:3px;min-width:0;flex:1}.kpi-body>span{color:#526858;font-size:13px;font-weight:700}.kpi-body>strong{color:#1d4932;font-size:clamp(20px,1.55vw,27px);line-height:1.15;letter-spacing:-.7px;font-weight:900;white-space:nowrap;font-variant-numeric:tabular-nums}.kpi-body>small{margin-top:2px;color:#526858;font-size:13px}.kpi-trend{position:absolute;right:13px;bottom:12px;z-index:1;display:flex;align-items:center;gap:4px;color:var(--tone);font-size:13px;font-weight:850}.kpi-trend svg{width:12px;height:12px}.tone-green{--tone:#2e9c69;--tone-soft:#e6f7e9}.tone-blue{--tone:#5d9fe1;--tone-soft:#eaf4ff}.tone-gold{--tone:#dc9d27;--tone-soft:#fff3d7}.tone-purple{--tone:#8d7bd0;--tone-soft:#f0edff}.model-note{display:flex;align-items:center;gap:7px;margin:0 2px 16px;color:#526858;font-size:13px}.model-note svg{width:13px;height:13px;flex:none;color:#526858}.chart-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1.15fr) minmax(260px,.85fr);gap:13px;margin-bottom:14px;align-items:stretch}.panel{min-width:0;padding:17px 18px;border:1px solid #e3ebe0;border-radius:19px;background:rgba(255,255,250,.97);box-shadow:var(--shadow-sm)}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}.panel-head-copy{min-width:0}.panel-eyebrow{display:block;color:#526858;font-size:13px;font-weight:900;letter-spacing:1.5px}.panel-head h3{margin:5px 0 3px;color:#2b523a;font-size:14px;font-weight:850;letter-spacing:-.25px}.panel-head p{margin:0;color:#526858;font-size:13px;line-height:1.55}.text-button{display:inline-flex;align-items:center;gap:4px;flex:none;padding:5px 7px;border:0;border-radius:8px;background:transparent;color:#448b5e;font-size:13px;font-weight:800;white-space:nowrap}.text-button svg{width:12px;height:12px}.text-button:hover{background:#eff8eb}.segmented{display:flex;gap:2px;padding:3px;border:1px solid #e6ede2;border-radius:9px;background:#f6f8f1}.segmented button{padding:5px 7px;border:0;border-radius:6px;background:transparent;color:#526858;font-size:13px;font-weight:800;white-space:nowrap}.segmented button.active{background:#fffef9;color:#32734f;box-shadow:0 1px 4px #275a3a12}.chart-legend{display:flex;flex-wrap:wrap;gap:11px;margin:9px 0 2px;color:#526858;font-size:13px}.legend-item{display:inline-flex;align-items:center;gap:5px}.legend-dot{width:7px;height:7px;border-radius:3px;background:var(--legend)}.chart-wrap{min-width:0;overflow:hidden}.chart-wrap svg{display:block;width:100%;height:auto;overflow:visible}.chart-gridline{stroke:#e9efe5;stroke-width:1}.chart-axis{fill:#9aa99c;font-size:13px}.chart-label{fill:#728b79;font-size:13px;font-weight:650}.chart-value{fill:#2d583c;font-size:13px;font-weight:850}.bar-revenue{fill:#7bc9a3}.bar-cost{fill:#f4c66b}.bar-profit{fill:#2f9c6b}.bar-muted{fill:#d9e9d6}.line-revenue{fill:none;stroke:#36a775;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.line-cost{fill:none;stroke:#e8b34d;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.line-profit{fill:none;stroke:#6da7e5;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.chart-point{stroke:#fff;stroke-width:2}.chart-insight{display:flex;align-items:center;gap:7px;margin-top:8px;padding:9px 10px;border-radius:11px;background:#f3f8ed;color:#6d8a72;font-size:13px;line-height:1.5}.chart-insight strong{color:#34794f}.chart-insight .insight-icon{display:grid;place-items:center;width:23px;height:23px;flex:none;border-radius:8px;background:#e2f3dd;color:#3b915d}.chart-insight svg{width:13px;height:13px}.donut-layout{display:flex;align-items:center;justify-content:center;gap:15px;padding:6px 0 0}.donut-chart{position:relative;width:142px;height:142px;flex:none}.donut-chart svg{width:100%;height:100%;transform:rotate(-90deg)}.donut-track{fill:none;stroke:#eef2e9;stroke-width:20}.donut-segment{fill:none;stroke-width:20;stroke-linecap:round}.donut-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.donut-center small{color:#526858;font-size:13px}.donut-center strong{margin:2px 0;color:#244d35;font-size:19px;font-weight:900}.donut-center span{color:#526858;font-size:13px}.donut-legend{display:grid;gap:9px;min-width:0;flex:1}.donut-legend-row{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:6px;color:#718778;font-size:13px}.donut-legend-row i{width:8px;height:8px;border-radius:3px;background:var(--c)}.donut-legend-row b{color:#3b5f47;font-size:13px;font-variant-numeric:tabular-nums}.bottom-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1.25fr) minmax(260px,.85fr);gap:13px;align-items:stretch;margin-bottom:14px}.task-list{display:grid;gap:0}.task-row{display:grid;grid-template-columns:35px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #edf1e9}.task-row:last-child{border-bottom:0}.task-symbol{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--task-bg,#edf7e9);color:var(--task-color,#40855b);font-size:16px}.task-copy{min-width:0}.task-copy strong{display:block;overflow:hidden;color:#355b40;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.task-copy p{margin:4px 0 0;color:#526858;font-size:13px;line-height:1.45}.task-status{min-width:56px;padding:5px 8px;border:1px solid #e2ebdf;border-radius:999px;background:#f6f8f1;color:#526858;font-size:13px;font-weight:850;white-space:nowrap}.task-status[data-status="进行中"]{background:#fff4d9;border-color:#f7e5b4;color:#a57a2d}.task-status[data-status="已完成"]{background:#e3f6e5;border-color:#d1ebd3;color:#328151}.task-status[data-status="暂缓"]{background:#f1edff;border-color:#e2dcff;color:#8778c1}.task-progress-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:5px 0 13px;color:#526858;font-size:13px}.progress-track{height:6px;overflow:hidden;border-radius:999px;background:#edf2e8}.progress-track span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#77cb94,#2d9868);transition:width .25s}.panel-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:9px;padding-top:11px;border-top:1px solid #edf1e9;color:#526858;font-size:13px}.record-table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th{padding:9px 8px;background:#f1f7ec;color:#526858;font-size:13px;font-weight:850;white-space:nowrap}th:first-child{border-radius:8px 0 0 8px}th:last-child{border-radius:0 8px 8px 0}td{padding:11px 8px;border-bottom:1px solid #edf1e9;color:#708575;font-size:13px;white-space:nowrap}tbody tr:last-child td{border-bottom:0}td strong{display:block;color:#365a42;font-size:13px}td small{display:block;margin-top:3px;color:#526858;font-size:13px}.record-amount{color:#2e8856;font-weight:850;font-variant-numeric:tabular-nums}.record-badge{display:inline-flex;padding:4px 6px;border-radius:999px;background:#e7f5e5;color:#43845a;font-size:13px;font-weight:800}.empty-state{display:grid;place-items:center;gap:8px;min-height:170px;padding:20px;text-align:center;color:#526858}.empty-state .empty-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:15px;background:#eff8e9;color:#526858}.empty-state strong{font-size:13px;color:#4d7257}.empty-state p{max-width:260px;margin:0;font-size:13px;line-height:1.6}.assistant-panel{position:relative;overflow:hidden;background:linear-gradient(150deg,#f0f8e9 0%,#e3f4e4 65%,#f9f9ed 100%)}.assistant-panel:after{content:"";position:absolute;right:-40px;top:-40px;width:150px;height:150px;border-radius:50%;background:#fff8;pointer-events:none}.assistant-top{display:flex;align-items:center;gap:10px;position:relative;z-index:1}.assistant-avatar{width:61px;height:72px;overflow:hidden;display:grid;place-items:end center;flex:none;border:1px solid #d6e9d1;border-radius:18px;background:linear-gradient(145deg,#fff4d6,#e2f4df)}.assistant-avatar img{width:100%;height:100%;object-fit:contain;object-position:center bottom}.assistant-title{display:grid;gap:3px;min-width:0}.assistant-title small{color:#526858;font-size:13px;font-weight:900;letter-spacing:1.2px}.assistant-title strong{color:#28563b;font-size:14px}.assistant-title span{color:#526858;font-size:13px}.assistant-message{position:relative;z-index:1;margin:13px 0;padding:12px 13px;border:1px solid #dcebd7;border-radius:13px;background:#fffef5;color:#68856f;font-size:13px;line-height:1.75}.assistant-message b{color:#35764d}.assistant-actions{display:flex;gap:7px;flex-wrap:wrap;position:relative;z-index:1}.assistant-actions button{flex:1;min-width:100px}.decision-ribbon{display:grid;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:13px;margin-bottom:12px;padding:15px 17px;border:1px solid #dbe9d7;border-radius:18px;background:linear-gradient(105deg,#e9f7e7,#fffdf4 72%);box-shadow:var(--shadow-sm)}.decision-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:#d8f0d8;color:#318453}.decision-icon svg{width:21px;height:21px}.decision-copy{min-width:0}.decision-copy small{color:#526858;font-size:13px;font-weight:900;letter-spacing:1.4px}.decision-copy strong{display:block;margin:4px 0;color:#285a3c;font-size:13px}.decision-copy p{margin:0;color:#526858;font-size:13px}.decision-risk{padding:7px 11px;border-left:1px solid #d9e7d4}.decision-risk small{display:block;color:#526858;font-size:13px}.decision-risk strong{display:block;margin-top:3px;color:#526858;font-size:13px}.decision-ribbon>.button-primary{min-height:35px;padding:0 11px}.view-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px;padding:24px 26px;border:1px solid #dcebd8;border-radius:21px;background:linear-gradient(105deg,#e8f7e5,#fffdf4 70%)}.view-hero h2{margin:6px 0 7px;color:#24573b;font-size:23px;letter-spacing:-.7px}.view-hero p{max-width:650px;margin:0;color:#526858;font-size:13px;line-height:1.7}.view-hero-art{position:relative;align-self:stretch;width:165px;min-height:90px;flex:none}.view-hero-art img{position:absolute;right:-5px;bottom:-25px;width:155px;height:160px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 8px 8px #245d3b16)}.section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.section-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.project-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:15px}.project-card{position:relative;overflow:hidden;min-width:0;padding:0;border:1px solid #e1eade;border-radius:18px;background:#fffef9;text-align:left;box-shadow:var(--shadow-sm);transition:transform .18s,border-color .18s}.project-card:hover{transform:translateY(-3px);border-color:#bedec0}.project-card.active{border-color:#8dc99c;box-shadow:0 0 0 2px #d9f0d8,0 9px 25px #2d754a12}.project-card-visual{height:112px;overflow:hidden;position:relative;background:#e8f3e2}.project-card-visual img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.project-card:hover .project-card-visual img{transform:scale(1.04)}.project-card-visual:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(0deg,#164b35a8,transparent)}.project-card-visual span{position:absolute;z-index:1;left:12px;bottom:10px;padding:5px 8px;border:1px solid #ffffff8a;border-radius:999px;background:#fffef0e8;color:#3c7750;font-size:13px;font-weight:850}.project-card-body{padding:14px}.project-card-body h3{margin:0 0 4px;color:#2a573c;font-size:14px}.project-card-body p{margin:0;color:#526858;font-size:13px;line-height:1.6}.project-card-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:13px;padding-top:12px;border-top:1px solid #edf1e8}.project-card-stats span{display:block;color:#526858;font-size:13px}.project-card-stats b{display:block;margin-top:3px;color:#426e4e;font-size:13px}.project-score{position:absolute;z-index:2;right:11px;top:11px;display:grid;place-items:center;width:37px;height:37px;border:2px solid #fff;border-radius:50%;background:#eff9e8;color:#2c8b5b;font-size:13px;font-weight:900;box-shadow:0 3px 9px #173d2915}.parameter-layout{display:grid;grid-template-columns:minmax(255px,.78fr) minmax(0,1.55fr);gap:14px;align-items:start}.parameter-panel{padding:18px;border:1px solid #e1eadc;border-radius:19px;background:#fffef9;box-shadow:var(--shadow-sm)}.parameter-panel h3{margin:0 0 4px;color:#2a583c;font-size:15px}.parameter-panel>p{margin:0 0 16px;color:#526858;font-size:13px;line-height:1.6}.param-row{display:grid;gap:8px;margin:15px 0}.param-label{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#6e8774;font-size:13px;font-weight:750}.param-label output{color:#2d7049;font-size:13px;font-weight:900}.param-row input[type=range]{width:100%;accent-color:#319b67;cursor:pointer}.param-scale{display:flex;justify-content:space-between;color:#526858;font-size:13px}.param-note{display:flex;gap:8px;margin-top:15px;padding:10px;border-radius:11px;background:#fff6dd;color:#a08243;font-size:13px;line-height:1.6}.param-note svg{width:14px;height:14px;flex:none}.sandbox-results{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:13px}.result-card{padding:14px 13px;border:1px solid #e3ebdf;border-radius:15px;background:#fffef9;box-shadow:var(--shadow-sm)}.result-card span{display:block;color:#526858;font-size:13px}.result-card strong{display:block;margin:6px 0 3px;color:#25573b;font-size:19px;font-weight:900;letter-spacing:-.4px;font-variant-numeric:tabular-nums}.result-card small{color:#526858;font-size:13px}.result-card .positive{color:#2b9a65}.result-card .negative{color:#526858}.sandbox-chart-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:13px;margin-bottom:14px}.risk-flow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:16px 0}.risk-step{position:relative;min-width:0;padding:13px 11px;border:1px solid #e5eadf;border-radius:13px;background:#f8faf3}.risk-step:not(:last-child):after{content:"›";position:absolute;right:-8px;top:50%;z-index:2;transform:translate(50%,-50%);color:#526858;font-size:20px;font-weight:800}.risk-step small{display:block;color:#526858;font-size:13px;font-weight:850}.risk-step strong{display:block;margin:7px 0 4px;color:#456c4e;font-size:13px;line-height:1.45}.risk-step span{display:block;color:#526858;font-size:13px;line-height:1.5}.risk-step.warn{background:#fff6df;border-color:#f4e2b3}.risk-step.warn strong{color:#a77a2d}.sensitivity-list{display:grid;gap:13px;padding:5px 0}.sensitivity-row{display:grid;grid-template-columns:100px minmax(0,1fr) 50px;align-items:center;gap:10px;color:#718575;font-size:13px}.sensitivity-track{height:9px;overflow:hidden;border-radius:999px;background:#edf2e9}.sensitivity-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#8cd6ac,#36a778)}.sensitivity-row:nth-child(4) .sensitivity-track i,.sensitivity-row:nth-child(5) .sensitivity-track i{background:linear-gradient(90deg,#f4c77a,#ed987d)}.sensitivity-row b{text-align:right;color:#426b4d;font-size:13px;font-variant-numeric:tabular-nums}.source-list{display:grid;gap:10px}.source-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:start;gap:11px;padding:13px;border:1px solid #e6ede2;border-radius:14px;background:#fffef9}.source-icon{display:grid;place-items:center;width:37px;height:37px;border-radius:12px;background:#e9f6e7;color:#4b9665}.source-icon svg{width:18px;height:18px}.source-copy{min-width:0}.source-copy strong{display:block;color:#345d40;font-size:13px}.source-copy p{margin:4px 0 0;color:#526858;font-size:13px;line-height:1.6}.source-copy a{display:inline-block;max-width:100%;margin-top:5px;overflow-wrap:anywhere;color:#4c9468;font-size:13px;text-decoration:none}.source-copy a:hover{text-decoration:underline}.source-badge{padding:4px 7px;border-radius:999px;background:#f1f7e9;color:#5a8a5e;font-size:13px;font-weight:850;white-space:nowrap}.source-badge.caution{background:#fff3d9;color:#526858}.source-badge.demo{background:#f0edff;color:#8575bf}.data-boundary{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;padding:17px;border:1px solid #f0dfb6;border-radius:16px;background:#fff7df;color:#8e784c}.data-boundary>span{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:#ffedbb;color:#526858}.data-boundary h3{margin:0 0 4px;color:#8d702d;font-size:13px}.data-boundary p{margin:0;font-size:13px;line-height:1.7}.channel-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:15px}.channel-card{padding:16px;border:1px solid #e2eadf;border-radius:17px;background:#fffef9;box-shadow:var(--shadow-sm)}.channel-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:var(--channel-bg,#e8f5e6);color:var(--channel-color,#398a5c);font-size:18px}.channel-card h3{margin:12px 0 4px;color:#345d41;font-size:13px}.channel-card p{min-height:38px;margin:0;color:#526858;font-size:13px;line-height:1.6}.channel-metric{display:flex;align-items:baseline;gap:5px;margin-top:12px;padding-top:11px;border-top:1px solid #edf1e9}.channel-metric strong{color:#2f7f51;font-size:18px}.channel-metric span{color:#526858;font-size:13px}.resource-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px 0;border-bottom:1px solid #edf1e9}.resource-row:last-child{border-bottom:0}.resource-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:#f2f6e9;color:#56845d;font-size:17px}.resource-copy strong{display:block;color:#355d40;font-size:13px}.resource-copy p{margin:3px 0 0;color:#526858;font-size:13px}.resource-copy small{display:block;margin-top:4px;color:#526858;font-size:13px}.resource-status{padding:5px 8px;border:1px solid #dcead9;border-radius:999px;background:#f4f9ee;color:#53845c;font-size:13px;font-weight:850}.resource-status[data-status="待联系"]{background:#fff5dd;border-color:#f1e0b4;color:#a77f31}.resource-status[data-status="已联系"]{background:#eaf4ff;border-color:#d5e8fa;color:#5487b7}.record-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px;flex-wrap:wrap}.record-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.record-total{padding:13px 14px;border:1px solid #e3ebdf;border-radius:14px;background:#fffef9}.record-total span{display:block;color:#526858;font-size:13px}.record-total strong{display:block;margin-top:5px;color:#285a3d;font-size:18px;font-weight:900}.record-table-card{overflow:hidden;padding:4px 14px 12px;border:1px solid #e3ebdf;border-radius:17px;background:#fffef9;box-shadow:var(--shadow-sm)}.record-table-card table{min-width:680px}.table-scroll{overflow:auto}.record-table-card .table-actions{display:flex;gap:6px}.mini-action{padding:5px 7px;border:1px solid #e3eadf;border-radius:7px;background:#fffef8;color:#6c8b74;font-size:13px}.mini-action:hover{background:#edf7e8}.status-label{display:inline-flex;padding:4px 7px;border-radius:999px;background:#e8f5e6;color:#468358;font-size:13px;font-weight:850}.status-label.pending{background:#fff4d8;color:#a47c31}.modal-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:20px;background:#173e2b66;backdrop-filter:blur(6px)}.record-dialog{width:min(680px,calc(100% - 24px));max-width:none;max-height:calc(100vh - 30px);overflow:auto;padding:0;border:1px solid #dfe9db;border-radius:22px;background:#fffef9;color:var(--ink);box-shadow:0 25px 80px #102f1d44}.record-dialog::backdrop{background:#173e2b66;backdrop-filter:blur(6px)}.record-dialog form{padding:24px}.dialog-head{display:flex;justify-content:space-between;gap:20px;margin-bottom:20px}.dialog-head h2{margin:5px 0;color:#27583c;font-size:22px}.dialog-head p{margin:0;color:#526858;font-size:13px}.dialog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dialog-grid label{display:grid;gap:6px;color:#6e8674;font-size:13px;font-weight:750}.dialog-grid .full-field{grid-column:1/-1}.dialog-grid input,.dialog-grid select{width:100%;min-width:0;padding:10px 11px;border:1px solid #dce8d8;border-radius:10px;background:#fff;color:#355a40;font-size:13px}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}.toast{position:fixed;z-index:100;right:22px;bottom:22px;max-width:min(380px,calc(100vw - 40px));padding:12px 16px;border:1px solid #d3e7d2;border-radius:13px;background:#fffef8;color:#2d714a;font-size:13px;font-weight:750;box-shadow:0 10px 35px #214e311c;opacity:0;transform:translateY(12px);pointer-events:none;transition:all .22s}.toast.show{opacity:1;transform:translateY(0)}.page-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 3px 3px;color:#526858;font-size:13px}.page-footer b{color:#65846b}.page-footer button{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:transparent;color:#4a9064;font-size:13px;font-weight:800}.page-footer button svg{width:12px;height:12px}.login-gate{position:fixed;inset:0;z-index:100;display:grid;place-items:center;overflow:auto;padding:22px;background:radial-gradient(circle at 8% 12%,#fff2bd 0,transparent 25%),radial-gradient(circle at 92% 95%,#b8edcf 0,transparent 30%),linear-gradient(135deg,#f7f5d9,#e5f5e7 80%)}.login-gate.hidden{display:none}.login-shell{width:min(1450px,100%);min-height:min(840px,calc(100vh - 44px));display:grid;grid-template-columns:minmax(340px,.7fr) minmax(0,1.3fr);overflow:hidden;border:1px solid #ffffffd9;border-radius:30px;background:#fffef6;box-shadow:0 30px 90px #1b58321b,0 0 0 6px #ffffff7d}.login-panel{display:flex;flex-direction:column;min-width:0;padding:clamp(25px,3.5vw,52px);background:linear-gradient(180deg,#fffef7,#fbfced)}.login-brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.login-brand .brand-mark{width:47px;height:47px}.login-brand>span:last-child{display:grid;gap:4px}.login-brand strong{color:#24583b;font-size:22px;font-weight:900;letter-spacing:-.8px}.login-brand small{color:#526858;font-size:13px;letter-spacing:1.5px;font-weight:900}.login-welcome{margin:38px 0 20px}.eyebrow-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #dfeedd;border-radius:999px;background:#eff8e8;color:#4c9668;font-size:13px;font-weight:850}.eyebrow-pill svg{width:13px;height:13px}.login-welcome h1{margin:17px 0 12px;color:#214f36;font-size:clamp(30px,2.7vw,43px);line-height:1.2;letter-spacing:-1.6px;font-weight:950}.login-welcome h1 em{position:relative;color:#526858;font-style:normal}.login-welcome h1 em:after{content:"";position:absolute;left:0;right:4px;bottom:-5px;height:3px;border-radius:3px;background:#f1c65d;transform:rotate(-1deg)}.login-welcome p{max-width:440px;margin:0;color:#526858;font-size:13px;line-height:1.85}.login-form{display:grid;gap:13px}.login-form>label{display:grid;gap:6px;color:#59765f;font-size:13px;font-weight:800}.login-form input[type=text],.login-form input[type=password]{width:100%;padding:12px 14px;border:1px solid #deead9;border-radius:13px;background:#fff;color:#41674a;font-size:13px;font-weight:700;box-shadow:inset 0 1px 2px #214e3105}.login-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#526858;font-size:13px}.remember-check{display:flex;align-items:center;gap:6px}.remember-check input{accent-color:#38a875}.demo-access{display:inline-flex;align-items:center;gap:6px;color:#3d9463;font-size:13px;font-weight:900}.login-submit{width:100%;min-height:48px;margin-top:2px;border-radius:13px;font-size:13px}.login-skip{width:100%;min-height:42px;background:#f0f7e9;border-radius:13px}.login-disclaimer{display:grid;grid-template-columns:18px minmax(0,1fr);gap:7px;margin-top:15px;color:#526858;font-size:13px;line-height:1.65}.login-disclaimer>span{color:#526858}.login-disclaimer p{margin:0}.login-foot{display:flex;justify-content:space-between;gap:8px;margin-top:auto;padding-top:25px;color:#526858;font-size:13px}.login-art{position:relative;isolation:isolate;overflow:hidden;min-height:650px;background:#cbe8c6}.login-art:before{content:"";position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,#cbe8c6,#cbe8c600 30%),linear-gradient(0deg,#174b367d,transparent 45%)}.login-art>img.art-female{position:absolute;z-index:-3;inset:0;width:100%;height:100%;object-fit:cover;object-position:61% center}.login-art:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,#123d2c8c 0%,transparent 48%),linear-gradient(90deg,#f2f9e21a,transparent 60%)}.art-top-pill,.art-note{position:absolute;top:22px;display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid #ffffffa8;border-radius:999px;background:#fffdf0dc;color:#437c50;font-size:13px;font-weight:850;box-shadow:0 7px 22px #234b3114;backdrop-filter:blur(10px)}.art-top-pill{left:22px}.art-note{right:22px;color:#7b7d48}.art-male{position:absolute;z-index:1;left:1%;bottom:12%;width:30%;height:43%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 9px 7px #133d2b36);pointer-events:none}.art-bottom-copy{position:absolute;left:290px;right:25px;bottom:103px;color:white;text-shadow:0 2px 12px #123d2c50}.art-bottom-copy small{color:#fff0bd;font-size:13px;font-weight:950;letter-spacing:2px}.art-bottom-copy h2{max-width:760px;margin:8px 0 7px;font-size:clamp(26px,3vw,42px);line-height:1.2;letter-spacing:-1px;font-weight:950}.art-bottom-copy p{margin:0;color:#e9f4df;font-size:13px}.art-stats{position:absolute;right:22px;bottom:19px;display:flex;gap:0;padding:8px;border:1px solid #ffffffa8;border-radius:17px;background:#fffef0e9;box-shadow:0 10px 25px #1e4c301d;backdrop-filter:blur(12px)}.art-stats>div{min-width:95px;padding:5px 12px;border-right:1px solid #e4ead8}.art-stats>div:last-child{border-right:0}.art-stats span{display:block;color:#526858;font-size:13px}.art-stats b{display:block;margin-top:4px;color:#2b7049;font-size:13px}.art-spark{position:absolute;color:#ffefac;font-size:25px;animation:sparkle 4s ease-in-out infinite}.art-spark-one{left:44%;top:19%}.art-spark-two{right:8%;top:43%;color:#e5f7bd;animation-delay:1s}@keyframes sparkle{0%,100%{transform:translateY(0) rotate(0);opacity:.6}50%{transform:translateY(-7px) rotate(12deg);opacity:1}}.mobile-only{display:none}.compact-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.compact-kpi{padding:13px;border:1px solid #e3ebdf;border-radius:14px;background:#fffef9}.compact-kpi span{display:block;color:#526858;font-size:13px}.compact-kpi strong{display:block;margin-top:5px;color:#285b3d;font-size:17px}.compact-kpi small{color:#526858;font-size:13px}.insight-list{display:grid;gap:8px}.insight-item{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;padding:10px;border-radius:12px;background:#f6f9f1}.insight-item>span{display:grid;place-items:center;width:27px;height:27px;border-radius:9px;background:#e4f3df;color:#4d9562}.insight-item strong{display:block;color:#456b4d;font-size:13px}.insight-item p{margin:3px 0 0;color:#526858;font-size:13px;line-height:1.6}.section-subtitle{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:20px 0 11px}.section-subtitle h3{margin:0;color:#355d41;font-size:14px}.section-subtitle span{color:#526858;font-size:13px}.scatter-wrap{padding:8px 0}.scatter-wrap svg{display:block;width:100%;height:auto}.scatter-dot{cursor:pointer;stroke:#fff;stroke-width:3;transition:r .18s}.scatter-dot:hover{r:13}.scatter-dot.active{stroke:#1d6445;stroke-width:3}.scatter-label{fill:#6c8b73;font-size:13px;font-weight:800}.form-inline{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.form-inline input,.form-inline select{min-height:36px;padding:8px 10px;border:1px solid #dfe9dc;border-radius:10px;background:#fffef9;color:#4e7056;font-size:13px}.small-note{color:#526858;font-size:13px;line-height:1.7}.hidden{display:none!important}
@media(min-width:1700px){.page-content{padding-left:38px;padding-right:38px}.hero-banner{min-height:270px}.panel{padding:20px 21px}.kpi-card{min-height:124px;padding:18px}.chart-grid,.bottom-grid{gap:15px}.hero-copy{padding-left:40px}}
@media(max-width:1400px){:root{--sidebar:210px}.sidebar{padding-left:12px;padding-right:12px}.topbar{padding:0 20px}.page-content{padding:21px 20px 10px}.search-box{width:190px}.chart-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1.1fr) minmax(235px,.8fr)}.bottom-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(235px,.85fr)}.hero-copy{width:62%}.hero-male-badge{right:210px;width:78px}}
@media(max-width:1160px){.topbar-weather{display:none}.topbar{gap:10px;padding:0 16px}.topbar-project{gap:8px}.topbar-caption{display:none}.search-box{width:160px}.profile-button>span:nth-child(2){display:none}.chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cost-panel{grid-column:1/-1}.bottom-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.assistant-panel{grid-column:1/-1}.assistant-top{max-width:340px}.assistant-message{max-width:650px}.crop-strip{grid-template-columns:repeat(5,minmax(0,1fr))}.crop-strip-label{grid-column:1/-1;flex-direction:row;align-items:baseline;gap:9px;padding:2px 4px}.crop-chip{padding:7px}.crop-chip img{width:36px;height:36px}.crop-chip{grid-template-columns:36px minmax(0,1fr) 8px;gap:0 7px}.crop-chip strong{font-size:13px}.kpi-card{padding:13px 11px;gap:8px}.kpi-icon{width:34px;height:34px}.kpi-body>strong{font-size:20px}.workspace-switch button{padding:7px 9px}}
@media(max-width:900px){:root{--sidebar:76px}.sidebar{padding:15px 9px 10px;align-items:center}.brand{padding:2px 0 20px}.brand-mark{width:42px;height:42px}.brand-word,.sidebar-label,.nav-item span,.sidebar-footer>span:nth-child(2),.sidebar-bottom-card{display:none}.side-nav{width:100%;gap:7px}.nav-item{justify-content:center;padding:12px 8px}.nav-item svg{width:21px;height:21px}.nav-divider{width:100%;margin:8px 0}.sidebar-footer{margin-top:auto;padding:12px 0 0;flex-wrap:wrap;justify-content:center}.sidebar-footer .icon-button{width:31px;height:31px}.topbar{height:67px}.topbar-project{min-width:0}.project-select-wrap{max-width:230px}.project-select-wrap select{max-width:155px}.topbar-actions{gap:7px}.search-box{width:150px}.workspace-switch button{font-size:13px;padding:7px}.page-content{padding:18px 15px 10px}.hero-banner{min-height:235px}.hero-copy{width:70%;padding:22px}.hero-copy h2{font-size:30px}.hero-male-badge{display:none}.hero-current-card{right:12px;bottom:12px;padding:8px}.hero-current-copy{min-width:90px}.hero-current-thumb{width:35px;height:35px}.hero-current-arrow{display:none}.chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-grid .cost-panel{grid-column:1/-1}.bottom-grid{grid-template-columns:1fr 1fr}.bottom-grid .assistant-panel{grid-column:1/-1}.decision-ribbon{grid-template-columns:40px minmax(0,1fr) auto}.decision-risk{grid-column:2}.decision-ribbon>.button-primary{grid-column:3;grid-row:1/3}.project-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.channel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.parameter-layout{grid-template-columns:minmax(230px,.8fr) minmax(0,1.2fr)}}
@media(max-width:680px){:root{--sidebar:0px}.sidebar{display:none}.main-area{margin-left:0}.topbar{height:auto;min-height:66px;align-items:flex-start;padding:10px 12px;gap:8px}.topbar-project{flex:1;align-items:flex-start}.project-select-wrap{padding:4px 8px 4px 4px;max-width:100%}.project-select-icon{width:28px;height:28px}.project-select-wrap select{max-width:130px;font-size:13px}.topbar-actions{gap:5px;align-items:center}.search-box{display:none}.notification-button{width:32px;height:32px}.workspace-switch{padding:3px}.workspace-switch button{padding:6px 7px;font-size:13px}.profile-button{display:none}.mobile-nav-wrap{display:block;position:sticky;top:0;z-index:22;padding:7px 9px;background:#fffef9eF;border-bottom:1px solid #e7eee4;backdrop-filter:blur(15px)}.mobile-nav{display:flex;gap:5px;overflow:auto;scrollbar-width:none}.mobile-nav::-webkit-scrollbar{display:none}.mobile-nav .nav-item{width:auto;flex:none;justify-content:flex-start;gap:6px;padding:8px 10px;font-size:13px;white-space:nowrap}.mobile-nav .nav-item svg{width:14px;height:14px}.page-content{padding:14px 10px 8px}.page-heading{align-items:flex-start;margin-bottom:13px}.page-heading h1{font-size:22px}.page-heading p{font-size:13px}.heading-actions{flex-direction:column;align-items:flex-end}.heading-actions .pill{display:none}.heading-actions .button-primary,.heading-actions .button-secondary{min-height:34px;padding:0 9px;font-size:13px}.hero-banner{min-height:375px;align-items:flex-start;border-radius:19px;margin-bottom:12px}.hero-banner:before{background-position:65% 24%}.hero-banner:after{background:linear-gradient(180deg,rgba(247,252,235,.97) 0%,rgba(244,251,232,.84) 35%,rgba(240,249,229,.12) 65%,rgba(23,77,49,.12) 100%)}.hero-copy{width:100%;padding:19px 17px}.hero-copy h2{font-size:28px;max-width:85%}.hero-copy p{max-width:78%;font-size:13px;margin:10px 0 12px}.hero-topline .pill{font-size:13px}.hero-actions{gap:6px}.hero-actions .button-primary,.hero-actions .button-secondary{min-height:35px;padding:0 10px;font-size:13px}.hero-side-note{top:auto;bottom:94px;right:9px;max-width:135px;padding:7px 9px;font-size:13px}.hero-current-card{left:10px;right:10px;bottom:10px;justify-content:flex-start}.hero-current-copy{flex:1}.hero-current-arrow{display:grid}.crop-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:7px;border-radius:15px}.crop-strip-label{grid-column:1/-1;padding:3px 4px}.crop-chip{grid-template-columns:35px minmax(0,1fr) 8px;padding:6px;gap:0 7px}.crop-chip img{width:35px;height:35px}.crop-chip strong{font-size:13px}.crop-chip small{font-size:13px}.crop-chip:last-child{grid-column:1/-1}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:8px}.kpi-card{min-height:102px;padding:11px 9px;border-radius:14px;gap:7px}.kpi-icon{width:30px;height:30px;border-radius:10px;font-size:15px}.kpi-icon svg{width:16px;height:16px}.kpi-body>span{font-size:13px}.kpi-body>strong{font-size:17px}.kpi-body>small{font-size:13px;line-height:1.4}.kpi-trend{right:8px;bottom:7px;font-size:13px}.model-note{align-items:flex-start;font-size:13px;line-height:1.6}.chart-grid,.bottom-grid,.section-grid,.section-grid.three,.sandbox-chart-grid{grid-template-columns:minmax(0,1fr);gap:9px}.chart-grid .cost-panel,.bottom-grid .assistant-panel{grid-column:auto}.panel{padding:13px 12px;border-radius:15px}.panel-head h3{font-size:13px}.panel-head p{font-size:13px}.panel-head>button{font-size:13px}.chart-legend{gap:8px;font-size:13px}.donut-layout{gap:12px}.donut-chart{width:126px;height:126px}.donut-legend{gap:8px}.donut-legend-row{font-size:13px}.bottom-grid{margin-bottom:9px}.task-row{grid-template-columns:30px minmax(0,1fr) auto;gap:7px;padding:9px 0}.task-symbol{width:29px;height:29px;border-radius:9px}.task-copy strong{font-size:13px}.task-copy p{font-size:13px}.task-status{min-width:48px;padding:4px 6px;font-size:13px}.panel-footer{font-size:13px}.decision-ribbon{grid-template-columns:32px minmax(0,1fr);gap:9px;padding:12px;border-radius:15px}.decision-icon{width:31px;height:31px}.decision-copy strong{font-size:13px}.decision-copy p{font-size:13px}.decision-risk{grid-column:2;padding:4px 0 4px 9px}.decision-ribbon>.button-primary{grid-column:1/-1;grid-row:auto;width:100%}.page-footer{align-items:flex-start;flex-direction:column;gap:5px;padding:12px 2px;font-size:13px}.view-hero{padding:17px;border-radius:17px}.view-hero h2{font-size:19px}.view-hero p{font-size:13px}.view-hero-art{width:85px;min-height:70px}.view-hero-art img{width:105px;height:115px;right:-12px;bottom:-19px}.project-card-grid,.channel-grid{grid-template-columns:1fr 1fr;gap:8px}.project-card-visual{height:90px}.project-card-body{padding:10px}.project-card-body h3{font-size:13px}.project-card-stats{gap:4px}.project-card-stats b{font-size:13px}.project-score{width:31px;height:31px;font-size:13px}.parameter-layout{grid-template-columns:1fr}.sandbox-results{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.result-card{padding:11px}.result-card strong{font-size:17px}.risk-flow{grid-template-columns:1fr;gap:7px}.risk-step{padding:10px}.risk-step:not(:last-child):after{content:"↓";right:50%;top:auto;bottom:-13px;transform:translate(50%,0);font-size:15px}.sensitivity-row{grid-template-columns:78px minmax(0,1fr) 42px;gap:7px}.source-row{grid-template-columns:32px minmax(0,1fr);gap:8px;padding:10px}.source-icon{width:31px;height:31px}.source-badge{grid-column:2;justify-self:start}.record-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.record-total{padding:10px 8px}.record-total span{font-size:13px}.record-total strong{font-size:14px}.record-toolbar{align-items:flex-start}.record-toolbar .button-primary,.record-toolbar .button-secondary{min-height:33px;padding:0 9px;font-size:13px}.dialog-grid{grid-template-columns:1fr}.dialog-grid .full-field{grid-column:auto}.record-dialog form{padding:18px}.login-gate{padding:8px;align-items:start}.login-shell{grid-template-columns:1fr;min-height:0;max-height:none;border-radius:22px}.login-art{order:-1;min-height:290px;height:34vh;max-height:360px}.login-art>img.art-female{object-position:64% 30%}.art-male{left:0;bottom:11%;width:28%;height:43%}.art-top-pill{top:12px;left:12px;padding:7px 9px;font-size:13px}.art-note{top:12px;right:12px;padding:7px 9px;font-size:13px}.art-bottom-copy{left:17px;right:12px;bottom:70px}.art-bottom-copy h2{font-size:23px}.art-bottom-copy p{font-size:13px}.art-stats{right:10px;bottom:10px;padding:5px}.art-stats>div{min-width:67px;padding:4px 7px}.art-stats span{font-size:13px}.art-stats b{font-size:13px}.login-panel{padding:22px 20px 18px}.login-brand .brand-mark{width:40px;height:40px}.login-brand strong{font-size:19px}.login-welcome{margin:22px 0 16px}.login-welcome h1{font-size:30px;margin:13px 0 10px}.login-welcome p{font-size:13px}.login-form{gap:10px}.login-form input[type=text],.login-form input[type=password]{padding:10px 12px}.login-submit{min-height:43px}.login-foot{padding-top:18px}.art-spark{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}


/* V4.3.1 · Crop-first login and OPC strategy workspace */
.login-gate{position:fixed;inset:0;z-index:100;display:grid;place-items:center;overflow:auto;padding:clamp(12px,2.4vw,32px);background:radial-gradient(circle at 0 0,#fff4d5 0,transparent 30%),radial-gradient(circle at 100% 100%,#d9f0df 0,transparent 32%),#f3f7ef}
.login-shell{width:min(1480px,100%);min-height:min(800px,calc(100vh - 48px));max-height:920px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.82fr);overflow:hidden;border:1px solid #ffffffd9;border-radius:28px;background:#fffef9;box-shadow:0 30px 90px #1b58321b,0 0 0 5px #ffffff80}
.login-panel{order:2;display:flex;flex-direction:column;min-width:0;padding:clamp(26px,3.1vw,48px);background:linear-gradient(180deg,#fffefb,#fbfcf5)}
.login-panel-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.login-brand{display:flex;align-items:center;gap:11px;color:inherit;text-decoration:none;min-width:0}
.login-brand .brand-mark{width:44px;height:44px;flex:none}
.login-brand>span:last-child{display:grid;gap:4px;min-width:0}
.login-brand strong{color:#24583b;font-size:22px;font-weight:900;letter-spacing:-.8px}
.login-brand small{color:#526858;font-size:13px;letter-spacing:1.3px;font-weight:900}
.version-chip{padding:7px 10px;border:1px solid #e0ebdc;border-radius:999px;background:#f5f9f0;color:#719079;font-size:13px;font-weight:850;white-space:nowrap}
.login-welcome{margin:34px 0 18px}
.login-welcome h1{margin:15px 0 10px;color:#214f36;font-size:clamp(29px,2.7vw,42px);line-height:1.22;letter-spacing:-1.4px;font-weight:950}
.login-welcome h1 em{position:relative;color:#526858;font-style:normal}
.login-welcome h1 em:after{content:"";position:absolute;left:0;right:4px;bottom:-4px;height:3px;border-radius:3px;background:#eac65e}
.login-welcome p{max-width:440px;margin:0;color:#526858;font-size:13px;line-height:1.85}
.login-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border:1px solid #e5ecdf;border-radius:13px;background:#f3f7ef;margin:0 0 18px}
.login-tabs button{min-height:38px;border:0;border-radius:9px;background:transparent;color:#526858;font-size:13px;font-weight:800;transition:all .18s}
.login-tabs button.active{background:#fffefa;color:#1f704b;box-shadow:0 3px 12px #2a674111}
.login-form{display:grid;gap:12px}
.login-form>label{display:grid;gap:6px;color:#59765f;font-size:13px;font-weight:800}
.login-form input[type=text],.login-form input[type=password]{width:100%;min-width:0;min-height:45px;padding:11px 13px;border:1px solid #e0e9dc;border-radius:12px;background:#fff;color:#42644b;font-size:13px;box-shadow:inset 0 1px 2px #244d3206}
.login-form input[readonly]{color:#456b50;background:#fbfcf8}
.login-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:1px 0 2px;color:#526858;font-size:13px}
.login-local-status{display:inline-flex;align-items:center;gap:7px}
.demo-access{color:#39865c;font-size:13px;font-weight:900;letter-spacing:1px}
.login-submit{min-height:48px;border-radius:13px;font-size:13px}
.login-skip{min-height:42px;width:100%;background:#f0f7eb;border-color:#e2eedb}
.login-creative-note{display:flex;align-items:flex-start;gap:11px;margin-top:20px;padding:13px;border:1px solid #e8eddc;border-radius:14px;background:linear-gradient(135deg,#fbf9e9,#f0f8e9)}
.creative-note-icon{width:31px;height:31px;display:grid;place-items:center;flex:none;border-radius:10px;background:#e0f1d9;color:#318153}
.creative-note-icon svg{width:17px;height:17px}
.login-creative-note strong{display:block;color:#315e40;font-size:13px}
.login-creative-note p{margin:3px 0 0;color:#526858;font-size:13px;line-height:1.7}
.login-disclaimer{display:flex;gap:7px;align-items:flex-start;margin-top:14px;color:#526858;font-size:13px;line-height:1.65}
.login-disclaimer>span{color:#526858;font-weight:900}
.login-disclaimer p{margin:0}
.login-foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:19px;color:#526858;font-size:13px}
.login-art{order:1;position:relative;isolation:isolate;overflow:hidden;min-height:660px;background:#dcebd3}
.login-art:before{content:"";position:absolute;z-index:-2;inset:0;background-image:linear-gradient(90deg,#f3f7e8f5 0%,#edf5e6df 35%,#eaf4e02a 70%),linear-gradient(0deg,#174b3670 0%,transparent 35%),url('/assets/orchard-longan.webp');background-size:cover;background-position:center 52%}
.login-art:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(135deg,#fff7dc4a,transparent 44%),linear-gradient(0deg,#153f2b44,transparent 27%);pointer-events:none}
.login-art-topline{position:absolute;top:28px;left:32px;right:28px;display:flex;align-items:center;gap:11px;color:#24583b}
.login-art-topline .brand-mark{width:42px;height:42px}
.login-art-topline>span:nth-child(2){display:grid;gap:3px}
.login-art-topline strong{font-size:19px;font-weight:950;letter-spacing:-.5px}
.login-art-topline small{font-size:13px;color:#66886c}
.art-top-tag{margin-left:auto;padding:7px 10px;border:1px solid #ffffffb8;border-radius:999px;background:#fffef0ce;color:#547a5b;font-size:13px;font-weight:900;letter-spacing:1px;white-space:nowrap}
.login-art-copy{position:absolute;left:clamp(28px,4vw,58px);top:145px;width:52%;max-width:470px;z-index:2}
.login-kicker{display:inline-block;color:#648d65;font-size:13px;font-weight:950;letter-spacing:2px}
.login-art-copy h2{margin:14px 0 12px;color:#1e5137;font-size:clamp(34px,3.8vw,56px);line-height:1.13;letter-spacing:-2px;font-weight:950;text-shadow:0 2px 18px #fff9}
.login-art-copy h2 em{color:#2d9865;font-style:normal}
.login-art-copy p{margin:0;color:#4f7658;font-size:13px;line-height:1.9;font-weight:650}
.login-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:25px;max-width:410px}
.login-feature-grid>div{display:grid;grid-template-columns:31px minmax(0,1fr);align-items:center;gap:1px 9px;min-height:62px;padding:10px 11px;border:1px solid #ffffffb8;border-radius:13px;background:#fffef0b8;box-shadow:0 8px 20px #285b3510;backdrop-filter:blur(10px)}
.feature-icon{grid-row:1/3;width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:#e3f2dd;color:#2f8c58;font-size:17px;font-weight:900}
.login-feature-grid strong{color:#2e6341;font-size:13px}
.login-feature-grid small{color:#526858;font-size:13px;line-height:1.4}
.login-produce-stack{position:absolute;z-index:1;right:22px;bottom:74px;width:34%;height:51%;min-width:160px;max-width:270px;pointer-events:none}
.produce-main{position:absolute;right:0;top:0;width:78%;height:100%;object-fit:cover;object-position:center;border:5px solid #fffdf0d9;border-radius:22px;box-shadow:0 18px 42px #173f2c2b;transform:rotate(2deg)}
.produce-secondary{position:absolute;left:-8%;bottom:10%;width:46%;height:36%;object-fit:cover;border:4px solid #fffdf0;border-radius:17px;box-shadow:0 12px 26px #173f2c2b;transform:rotate(-5deg)}
.produce-caption{position:absolute;right:0;bottom:-17px;display:grid;gap:3px;min-width:150px;padding:10px 12px;border:1px solid #ffffffd9;border-radius:12px;background:#fffef0ed;box-shadow:0 9px 24px #173f2c20}
.produce-caption strong{color:#2a6845;font-size:13px}
.produce-caption span{color:#526858;font-size:13px}
.login-art-bottom{position:absolute;left:32px;bottom:24px;display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #ffffffa8;border-radius:999px;background:#fffef0c9;color:#456d4d;font-size:13px;font-weight:800;backdrop-filter:blur(10px)}
.sidebar-bottom-card>img{right:-8px;bottom:-12px;width:110px;height:105px;object-fit:cover;object-position:center;border:3px solid #ffffffc9;border-radius:16px;transform:rotate(3deg);filter:drop-shadow(0 6px 6px #16482c18)}
.profile-avatar img{object-fit:cover;object-position:center;transform:none}
.hero-banner:before{background-image:url('/assets/orchard-longan.webp');background-position:center 48%}
.hero-banner:after{background:linear-gradient(90deg,rgba(247,252,235,.97) 0%,rgba(244,251,232,.86) 28%,rgba(240,249,229,.38) 52%,rgba(230,246,222,.02) 80%),linear-gradient(0deg,rgba(23,77,49,.14),transparent 52%)}
.hero-banner .hero-copy h2 em:after{display:none}
.hero-banner .hero-side-note{right:22px;top:18px}
.view-hero-art img{object-fit:cover;border-radius:18px;opacity:.94}
.opc-promo-ribbon{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;margin:14px 0;padding:18px 20px;border:1px solid #dcebd7;border-radius:18px;background:linear-gradient(110deg,#eef8e9,#fff9e6 72%,#e4f3e5);box-shadow:var(--shadow-sm)}
.opc-promo-ribbon h3{margin:0 0 5px;color:#245a3b;font-size:15px}
.opc-promo-ribbon p{margin:0;color:#526858;font-size:13px;line-height:1.7}
.opc-promo-ribbon .promo-kicker{display:block;margin-bottom:5px;color:#54946a;font-size:13px;font-weight:950;letter-spacing:1.5px}
.opc-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:14px;align-items:start}
.opc-form-panel{padding:20px}
.opc-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.opc-form-grid label{display:grid;gap:6px;color:#59765f;font-size:13px;font-weight:800;min-width:0}
.opc-form-grid label.full{grid-column:1/-1}
.opc-form-grid input,.opc-form-grid select,.opc-form-grid textarea{width:100%;min-width:0;border:1px solid #dfe9dc;border-radius:11px;background:#fffef9;color:#355a40;padding:10px 11px;font-size:13px;outline:none}
.opc-form-grid textarea{min-height:72px;resize:vertical;line-height:1.65}
.opc-form-grid input:focus,.opc-form-grid select:focus,.opc-form-grid textarea:focus{border-color:#79be8b;box-shadow:0 0 0 3px #dff1df}
.opc-result{display:grid;gap:12px}
.opc-result-empty{padding:28px 22px;border:1px dashed #cbdcc7;border-radius:17px;background:#f8fbf4;text-align:center}
.opc-result-empty .empty-icon{margin:0 auto 12px}
.opc-result-empty h3{margin:0 0 6px;color:#315c3f;font-size:15px}
.opc-result-empty p{margin:0;color:#526858;font-size:13px;line-height:1.7}
.opc-result-hero{position:relative;overflow:hidden;padding:22px;border-radius:18px;background:linear-gradient(120deg,#164d35,#2c8054);color:#fff;box-shadow:0 12px 28px #174b361a}
.opc-result-hero:after{content:"";position:absolute;right:-20px;top:-35px;width:190px;height:190px;border:1px solid #ffffff25;border-radius:50%;box-shadow:0 0 0 22px #ffffff08,0 0 0 44px #ffffff06}
.opc-result-hero .eyebrow{color:#526858}
.opc-result-hero h2{position:relative;z-index:1;margin:7px 0 8px;font-size:23px;line-height:1.25;letter-spacing:-.7px}
.opc-result-hero p{position:relative;z-index:1;max-width:620px;margin:0;color:#e1f0e2;font-size:13px;line-height:1.8}
.opc-output-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.opc-output-card{min-width:0;padding:15px;border:1px solid #e2ebde;border-radius:15px;background:#fffef9;box-shadow:var(--shadow-sm)}
.opc-output-card.full{grid-column:1/-1}
.opc-output-card header{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.opc-output-card header span{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;background:#e6f4e1;color:#2d8b59;font-weight:900}
.opc-output-card h3{margin:0;color:#315e40;font-size:13px}
.opc-output-card p,.opc-output-card li{color:#758b78;font-size:13px;line-height:1.8}
.opc-output-card p{margin:0}
.opc-output-card ul,.opc-output-card ol{padding-left:17px;margin:0}
.opc-output-card li+li{margin-top:4px}
.opc-kpi-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.opc-kpi{padding:11px;border-radius:12px;background:#f3f8ee}
.opc-kpi strong{display:block;color:#2b7049;font-size:14px}
.opc-kpi span{display:block;margin-top:3px;color:#526858;font-size:13px;line-height:1.5}
.opc-creative{border-color:#eadfbd;background:linear-gradient(135deg,#fff9e6,#f4f8e9)}
.opc-creative h3{color:#87682e}
.opc-creative header span{background:#fff0c8;color:#526858}
@media(max-width:980px){.login-shell{grid-template-columns:minmax(0,1fr) minmax(340px,.86fr)}.login-art-copy{width:58%;left:26px}.login-produce-stack{right:12px;width:31%;min-width:135px}.opc-layout{grid-template-columns:1fr}.opc-result{grid-template-columns:1fr}}
@media(max-width:680px){.login-gate{padding:8px;align-items:start}.login-shell{grid-template-columns:1fr;min-height:0;max-height:none;border-radius:21px}.login-art{order:1;min-height:420px;height:56vh;max-height:520px}.login-panel{order:2;padding:22px 20px 18px}.login-art-topline{top:15px;left:16px;right:14px}.login-art-topline .brand-mark{width:35px;height:35px}.login-art-topline strong{font-size:15px}.login-art-topline small{font-size:13px}.art-top-tag{font-size:13px;padding:6px 7px}.login-art-copy{left:18px;top:91px;width:58%}.login-art-copy h2{font-size:clamp(28px,7vw,38px);letter-spacing:-1px;margin:10px 0}.login-art-copy p{font-size:13px}.login-feature-grid{grid-template-columns:1fr;gap:6px;margin-top:13px;max-width:220px}.login-feature-grid>div{min-height:43px;padding:6px 8px;grid-template-columns:25px minmax(0,1fr);gap:0 7px}.feature-icon{width:24px;height:24px;font-size:13px}.login-feature-grid strong{font-size:13px}.login-feature-grid small{font-size:13px}.login-produce-stack{right:8px;bottom:58px;width:34%;height:43%;min-width:105px}.produce-main{width:90%;border-width:3px;border-radius:15px}.produce-secondary{border-width:3px;border-radius:11px}.produce-caption{min-width:112px;padding:7px 8px;bottom:-15px}.produce-caption strong{font-size:13px}.produce-caption span{font-size:13px}.login-art-bottom{left:13px;bottom:12px;font-size:13px;padding:7px 9px}.login-welcome{margin:24px 0 15px}.login-welcome h1{font-size:30px}.login-form{gap:10px}.login-form input[type=text],.login-form input[type=password]{min-height:42px;padding:10px 12px}.login-creative-note{margin-top:15px}.login-foot{padding-top:15px}.opc-promo-ribbon{grid-template-columns:1fr;padding:14px}.opc-promo-ribbon .button-primary{width:100%}.opc-form-grid{grid-template-columns:1fr}.opc-form-grid label.full{grid-column:auto}.opc-output-grid{grid-template-columns:1fr}.opc-output-card.full{grid-column:auto}.opc-kpi-list{grid-template-columns:1fr 1fr}}

/* V4.3.2: readable type, crop-specific overview and responsive spacing. */
svg text{stroke:none}.chart-wrap rect{stroke:none}
.hero-banner{align-items:stretch!important;box-shadow:0 8px 24px #285c3b0c!important}
.crop-strip-label{flex-direction:row!important;justify-content:flex-start!important}
.brand-word small{font-size:11px;letter-spacing:.3px}
@media(max-width:760px){.mobile-nav .nav-item span{display:inline}.topbar-project{flex-basis:100%!important}.topbar-actions{width:100%;justify-content:flex-end}.project-select-wrap{width:100%}.project-select-wrap select{flex:1;max-width:none!important;width:100%;min-width:0}.mobile-nav-wrap{background:#fffef9}}
:root{--muted:#526858;--green:#23764f;--sidebar:232px}
body{font-size:15px;line-height:1.65}
button,input,select,textarea{font-size:14px}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #175b9b;outline-offset:3px}
.button-primary{background:#23764f;color:#fff;min-height:44px}
.button-secondary,.button-quiet{min-height:44px}
.button-primary:hover{background:#195d3d}
.page-content{max-width:1740px;margin:auto;padding:28px 28px 16px}
.page-heading h1{font-size:28px}.page-heading p{font-size:14px;color:#526858}
.topbar{height:auto;min-height:84px;gap:16px;flex-wrap:wrap;padding:16px 24px}
.topbar-project{min-width:0;flex-wrap:wrap;gap:12px}.topbar-actions{flex-wrap:wrap;gap:10px}
.project-select-wrap{max-width:none}.project-select-wrap select{max-width:310px;font-size:14px}
.search-box{width:210px}.workspace-switch button{min-height:36px;font-size:13px}
.sidebar-label,.panel-eyebrow,.eyebrow{color:#526858;letter-spacing:1px}
.nav-item{font-size:14px;min-height:44px}.sidebar-bottom-card{min-height:180px}
.mascot-copy{position:relative;z-index:2;max-width:125px}.mascot-copy span{background:#f0f8eb;border-radius:6px}
.hero-banner{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);min-height:360px;isolation:isolate;background:#edf5e9;border:1px solid #d8e5d3;overflow:hidden}
.hero-banner:before,.hero-banner:after{display:none}
.hero-copy{width:auto;min-width:0;padding:32px;z-index:1}
.hero-copy h2{font-size:clamp(26px,2.5vw,40px);line-height:1.3;letter-spacing:-1px;max-width:none}
.hero-copy h2 em{color:#236b48}.hero-copy p{max-width:560px;font-size:15px;color:#465e4e;margin:16px 0}
.hero-topline{flex-wrap:wrap}.hero-topline .pill{font-size:13px;background:#fff;color:#36583f}
.hero-facts{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0 24px}
.hero-facts span{border-left:3px solid #93b878;padding-left:12px}.hero-facts small{display:block;color:#526858;font-size:13px}.hero-facts strong{display:block;font-size:14px;color:#234831;margin-top:4px}
.hero-actions{flex-wrap:wrap;gap:10px}.hero-actions button{font-size:14px;min-height:44px}
.hero-crop-visual{position:relative;min-width:0;min-height:320px;background:#dce9ce}
.hero-crop-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-photo-caption{position:absolute;left:20px;right:20px;bottom:20px;padding:16px 20px;display:grid;gap:3px;border-radius:14px;background:#fffef8f5;color:#284e36;box-shadow:0 6px 24px #173c2520}
.hero-photo-caption small{font-size:12px;color:#526858;letter-spacing:1px}.hero-photo-caption strong{font-size:24px}.hero-photo-caption span{font-size:14px}
.crop-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:14px}.crop-strip-label{grid-column:1/-1;display:flex;align-items:center;gap:12px}
.crop-chip{min-height:72px;grid-template-columns:42px minmax(0,1fr) 10px;gap:2px 8px}.crop-chip img{width:42px;height:42px}.crop-chip strong{font-size:14px;white-space:normal}.crop-chip small{font-size:13px}.crop-chip.active{border:2px solid #28784f;background:#e7f3df;box-shadow:0 0 0 2px #fff inset}
.kpi-grid{gap:14px}.kpi-card{padding:20px 16px;min-height:150px;align-items:flex-start}.kpi-body{min-width:0}.kpi-body>span{font-size:14px}.kpi-body>strong{font-size:clamp(22px,2vw,30px);overflow-wrap:anywhere}.kpi-body>small{font-size:13px}.kpi-trend{display:none}
.chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.chart-grid .cost-panel{grid-column:1/-1}.cost-panel .donut-layout{max-width:620px;margin:auto}
.bottom-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.bottom-grid .assistant-panel{grid-column:1/-1}
.panel{padding:22px;min-width:0}.panel-head{gap:12px;flex-wrap:wrap}.panel-head h3{font-size:18px}.panel-head p{font-size:14px;color:#526858}.panel-head-copy{min-width:0}
.segmented button{min-width:44px;min-height:36px;font-size:13px}.chart-axis,.chart-label,.scatter-label{fill:#465e4e;font-size:13px}.chart-value{fill:#234831;font-size:14px}
.chart-wrap svg{min-height:210px}.chart-insight{font-size:14px;line-height:1.75}.chart-legend{flex-wrap:wrap;font-size:13px}
.task-copy strong{font-size:15px}.task-copy p{font-size:13px;white-space:normal}.task-status{font-size:13px;min-height:36px}.panel-footer{flex-wrap:wrap;gap:10px}
.record-table-wrap{overflow-x:auto}table{min-width:440px}th,td{font-size:13px}.record-table-wrap small{font-size:12px}
.assistant-message,.decision-copy p,.opc-promo-ribbon p{font-size:14px;line-height:1.85}
.project-card-grid{gap:16px}.project-card-visual{height:170px}.project-card-body h3{font-size:18px}.project-card-body p{font-size:14px}.project-card-visual>span{background:#fffef9f2;color:#284e36;white-space:normal}
.opc-form-grid input,.opc-form-grid select,.opc-form-grid textarea,.param-control input{font-size:15px;min-height:44px}.opc-form-grid label{font-size:14px}
.login-shell{max-height:none}.login-panel{padding:36px}.login-welcome p{font-size:15px;color:#526858}.login-form>label{font-size:14px}.login-form input[type=text]{font-size:15px;min-height:48px}.login-tabs button{font-size:14px;min-height:44px}.login-submit,.login-skip{font-size:15px}.login-disclaimer,.login-creative-note p{font-size:13px;color:#526858}.login-foot{font-size:12px;color:#526858}
.login-art-copy{width:62%;left:30px}.login-art-copy p{font-size:15px}.login-feature-grid{grid-template-columns:1fr;max-width:270px}.login-feature-grid>div{background:#fffef9f5}.login-feature-grid strong{font-size:14px}.login-feature-grid small{font-size:12px;color:#526858}.login-kicker{font-size:11px}.login-produce-stack{right:16px;width:29%;min-width:110px;height:43%;bottom:85px}.art-top-tag{display:none}
.small-note,.model-note,.page-footer{font-size:13px;color:#526858}.page-footer{flex-wrap:wrap;gap:12px}
@media(min-width:1600px){.chart-grid{grid-template-columns:1fr 1fr .85fr}.chart-grid .cost-panel{grid-column:auto}}
@media(max-width:1100px){:root{--sidebar:76px}.sidebar{padding:14px 10px}.sidebar .brand-word,.sidebar-label,.sidebar .nav-item span,.sidebar-bottom-card,.sidebar-footer>span:not(.avatar-mini){display:none}.sidebar .nav-item{justify-content:center}.sidebar-footer{flex-wrap:wrap;justify-content:center}.sidebar .brand{justify-content:center}.page-content{padding:20px}.crop-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-copy{padding:24px}.topbar-caption,.topbar-weather,.search-box,.profile-button{display:none}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.opc-layout{grid-template-columns:1fr}.login-shell{grid-template-columns:1fr 1fr}.login-art-copy{width:85%}.login-produce-stack{display:none}.login-art-copy h2{font-size:38px}.login-art-topline{left:24px}.login-feature-grid{max-width:100%}.parameter-layout{grid-template-columns:1fr}}
@media(max-width:760px){:root{--sidebar:0px}.sidebar{display:none}.main-area{margin-left:0}.mobile-nav-wrap{display:block}.mobile-nav{display:flex;overflow-x:auto;gap:6px}.mobile-nav .nav-item{flex:none;width:auto;font-size:13px;min-height:44px;white-space:nowrap}.topbar{padding:12px;gap:10px;align-items:center}.topbar-project{flex:1}.project-select-wrap{padding:6px}.project-select-wrap select{max-width:220px;font-size:14px}.topbar-actions{gap:6px}.notification-button{display:none}.workspace-switch button{font-size:13px;padding:8px}.page-content{padding:16px 12px}.page-heading{flex-wrap:wrap;gap:12px}.page-heading h1{font-size:24px}.page-heading p{font-size:14px}.heading-actions{flex-direction:row}.hero-banner{grid-template-columns:1fr}.hero-copy{padding:22px}.hero-copy h2{font-size:28px;max-width:none}.hero-copy p{max-width:none;font-size:15px}.hero-topline .pill{font-size:12px}.hero-actions button{font-size:14px}.hero-crop-visual{min-height:280px}.hero-crop-photo{object-position:center 45%}.hero-facts{gap:12px}.hero-photo-caption{left:14px;right:14px;bottom:14px}.crop-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.crop-chip:last-child{grid-column:auto}.crop-chip strong{font-size:13px}.crop-chip small{font-size:12px}.kpi-card{padding:14px 12px;min-height:140px;gap:8px}.kpi-icon{display:none}.kpi-body>strong{font-size:24px}.kpi-body>span{font-size:13px}.kpi-body>small{font-size:12px}.chart-grid,.bottom-grid,.section-grid,.section-grid.three,.sandbox-chart-grid{grid-template-columns:minmax(0,1fr)}.panel{padding:18px 14px}.chart-grid .cost-panel,.bottom-grid .assistant-panel{grid-column:auto}.project-card-grid,.channel-grid{grid-template-columns:1fr}.project-card-visual{height:200px}.record-totals{grid-template-columns:1fr}.decision-ribbon{grid-template-columns:32px minmax(0,1fr)}.decision-ribbon>.button-primary{grid-column:1/-1;grid-row:auto}.decision-risk{grid-column:2}.opc-promo-ribbon{grid-template-columns:1fr}.opc-form-grid{grid-template-columns:1fr}.opc-form-grid label.full{grid-column:auto}.login-gate{padding:12px}.login-shell{grid-template-columns:1fr}.login-panel{order:1;padding:24px}.login-art{display:none}.login-welcome h1{font-size:32px}.login-brand strong{font-size:20px}.version-chip{font-size:11px}.login-panel-top{flex-wrap:wrap}.view-hero{flex-wrap:wrap}.view-hero h2{font-size:23px}.view-hero p{font-size:14px}}

@media(max-width:760px){.chart-wrap svg text{font-size:20px}.scatter-wrap{overflow-x:auto}.scatter-wrap svg{min-width:460px}}
