@font-face{font-family:Workspace;src:local('Segoe UI')}*{box-sizing:border-box} :root{--bg:#101411;--panel:#171c18;--panel2:#1c231d;--line:#2b342d;--muted:#98a398;--text:#edf1e9;--lime:#c4f26d;--darklime:#28371d;--orange:#f1ba7b;--red:#eea2a2;--mono:Consolas,'SFMono-Regular',monospace;--sans:Workspace,'Segoe UI','Microsoft JhengHei',sans-serif}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:14px;line-height:1.65}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.45}svg{vertical-align:middle}.icon{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button:focus-visible,a:focus-visible{outline:2px solid var(--lime)}.boot{height:100vh;display:grid;place-content:center;text-align:center;gap:14px}.brand-mark{display:grid;place-items:center;background:var(--lime);color:#17210d;width:39px;height:39px;border-radius:11px;font-size:31px;line-height:1;font-weight:750;letter-spacing:-3px;padding-right:5px}.boot .brand-mark{margin:auto}.app-shell{display:grid;grid-template-columns:232px 1fr;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:232px;background:#121813;border-right:1px solid var(--line);padding:30px 18px 20px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:12px;padding:0 10px 27px}.brand-name{font-size:19px;font-weight:750;letter-spacing:1.5px;line-height:1.2}.brand-small{font-size:10px;letter-spacing:2px;color:var(--muted);margin-top:5px}.nav-label{padding:24px 15px 10px;color:#6f7d70;font-size:11px;letter-spacing:1.2px}.nav-item{display:flex;gap:13px;align-items:center;width:100%;border:0;background:transparent;padding:12px 15px;margin:3px 0;border-radius:7px;text-align:left;color:#a2afa1;font-size:13px}.nav-item:hover{background:#1c251b;color:#e9efdf}.nav-item.active{background:#25311e;color:var(--lime)}.nav-item .nav-count{margin-left:auto;border:1px solid #435932;background:#334924;color:var(--lime);padding:0 6px;border-radius:4px;font-family:var(--mono);font-size:10px}.sidebar-bottom{margin-top:auto;padding-top:34px}.connection{padding:16px;border:1px solid var(--line);border-radius:9px;margin:0 5px 19px}.connection p{font-size:11px;color:var(--muted);margin:7px 0 0}.status-dot{display:inline-block;width:6px;height:6px;background:#7e887d;border-radius:50%;margin-right:7px;vertical-align:middle}.status-dot.live{background:var(--lime);box-shadow:0 0 0 4px #c4f26d0b}.profile{border-top:1px solid var(--line);padding:20px 8px 0;display:flex;gap:10px;align-items:center}.avatar{width:33px;height:33px;display:grid;place-items:center;border-radius:50%;background:#303a2c;color:#d1e2b6;font-family:var(--mono);font-size:13px;flex-shrink:0}.profile-name{max-width:125px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.profile-role{font-size:10px;color:var(--muted)}.icon-btn{border:0;background:transparent;padding:6px;display:inline-flex;align-items:center;justify-content:center;border-radius:5px;color:var(--muted)}.icon-btn:hover{background:var(--panel2);color:var(--text)}.profile .icon-btn{margin-left:auto}.main{grid-column:2;min-width:0}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 38px;border-bottom:1px solid var(--line);gap:14px}.breadcrumb{font-size:12px;color:#7f8d7e}.breadcrumb strong{font-weight:400;color:#cbd5c7;margin-left:12px}.top-actions{display:flex;align-items:center;gap:17px}.top-actions .time{font-family:var(--mono);font-size:11px;color:var(--muted)}.version{font-family:var(--mono);font-size:10px;letter-spacing:1px;color:#7e8b7d;border:1px solid var(--line);border-radius:4px;padding:2px 7px}.content{max-width:1600px;margin:auto;padding:34px 38px 44px}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:25px}.eyebrow{font-family:var(--mono);font-size:10px;letter-spacing:1.6px;color:var(--lime);margin:0 0 9px}.page-head h1{font-size:26px;letter-spacing:.5px;font-weight:600;margin:0 0 6px}.page-head p{color:var(--muted);font-size:12px;margin:0}.head-actions{display:flex;gap:9px;align-items:center;padding-top:14px}.button{border:1px solid #364232;background:#21291f;border-radius:6px;padding:9px 14px;color:#dbe3d4;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:12px;white-space:nowrap}.button:hover{background:#2b3727;border-color:#536548}.button.primary{color:#18240e;background:var(--lime);border-color:var(--lime);font-weight:650}.button.primary:hover{background:#d2ff85}.button.small{padding:6px 10px;font-size:11px}.button.danger{color:var(--red);background:#2b2020;border-color:#543838}.button.ghost{background:transparent}.select{background:#171e17;border:1px solid #344030;color:#c8d3c0;border-radius:6px;padding:9px 29px 9px 11px;font-size:12px}.notice{padding:12px 16px;background:#202a1a;border:1px solid #37492a;border-radius:7px;color:#c8d7ba;font-size:12px;display:flex;gap:11px;align-items:center;margin-bottom:23px}.notice .icon{color:var(--lime);width:16px}.notice a,.notice button{margin-left:auto;font-size:11px;color:var(--lime);border:0;background:transparent;white-space:nowrap}.notice.warn{background:#2b251c;border-color:#51432c;color:#dac5a2}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:24px}.stat-card{background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:19px 21px;position:relative;overflow:hidden}.stat-top{display:flex;justify-content:space-between;color:#a3b09e;font-size:12px}.stat-top .icon{width:16px;height:16px;color:#7b8d72}.stat-value{font-family:var(--mono);font-size:31px;letter-spacing:-1.1px;line-height:1.5;margin-top:10px}.stat-value em{font-family:var(--sans);font-style:normal;font-size:12px;color:var(--muted);letter-spacing:0;margin-left:6px}.stat-bottom{display:flex;gap:7px;align-items:center;color:#84917f;font-size:10px;margin-top:3px}.stat-bottom b{font-family:var(--mono);font-weight:400;color:var(--lime)}.sparkline{position:absolute;right:17px;bottom:21px;width:72px;height:30px;opacity:.7}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,1fr);gap:20px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:9px;min-width:0}.panel-head{padding:21px 23px 0;display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.panel-head h2{font-weight:500;font-size:14px;margin:0}.panel-head p{font-size:10px;color:var(--muted);margin:4px 0 0}.panel-link{font-size:10px;color:var(--muted);display:inline-flex;gap:6px;align-items:center}.panel-link:hover{color:var(--lime)}.panel-link .icon{width:13px;height:13px}.legend{display:flex;gap:15px;font-size:10px;color:var(--muted)}.legend i{width:7px;height:7px;border-radius:2px;display:inline-block;background:var(--lime);margin-right:5px}.legend .secondary{background:#586c4b}.chart-wrap{padding:13px 19px 4px;position:relative}.line-chart{width:100%;height:auto;min-height:180px;display:block}.chart-label{fill:#788774;font-size:10px;font-family:var(--mono)}.chart-grid{stroke:#2b3529;stroke-dasharray:3 6;stroke-width:1}.chart-empty{position:absolute;inset:40px 20px;display:grid;place-content:center;color:#8a9885;text-align:center;font-size:12px}.chart-empty small{display:block;color:#65755e;margin-top:5px}.chart-footer{border-top:1px solid var(--line);margin:0 23px;padding:12px 0;display:flex;justify-content:space-between;color:#8a9884;font-size:10px}.funnel{padding:24px 23px 20px}.funnel-row{display:grid;grid-template-columns:94px 1fr 35px;align-items:center;gap:12px;margin-bottom:20px;font-size:11px;color:#b5c2ae}.funnel-track{height:22px;background:#242d22;border-radius:3px;overflow:hidden}.funnel-bar{height:100%;background:#526c38;border-radius:3px}.funnel-row:first-child .funnel-bar{background:#a5c76c}.funnel-number{text-align:right;font-family:var(--mono);font-size:12px;color:#dce7d2}.funnel-note{font-size:10px;color:#7f8d79;border-top:1px solid var(--line);padding-top:13px;line-height:1.8}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}.data-table th{text-align:left;font-size:10px;font-weight:400;color:#7e8f78;padding:14px 22px;border-bottom:1px solid var(--line)}.data-table td{padding:16px 22px;border-bottom:1px solid #262f24;color:#bbc7b4}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#1d261b}.data-table td.primary-cell{color:#e3ebdb}.data-table .muted{color:#7f9076;font-size:10px}.data-table .numeric{font-family:var(--mono);text-align:right}.data-table .name-cell{display:flex;gap:10px;align-items:center}.ad-icon{display:grid;place-items:center;width:30px;height:30px;background:#28381f;color:#b6db84;border-radius:6px}.ad-icon.alt{color:#dfc09a;background:#382e22}.tag{display:inline-block;border:1px solid #3d4b32;background:#263120;color:#b8ce9b;border-radius:4px;padding:2px 7px;font-size:10px;white-space:nowrap}.tag.neutral{color:#a5afa1;border-color:#394236;background:#252b23}.tag.orange{color:#d6b18b;border-color:#514331;background:#30291f}.tag.red{color:#e3a5a5;border-color:#513636;background:#302222}.span-full{grid-column:1/-1}.list-activity{padding:8px 23px 16px}.activity-item{display:flex;gap:11px;padding:15px 0;border-bottom:1px solid #2b3429;align-items:flex-start}.activity-item:last-child{border-bottom:0}.activity-marker{height:27px;width:27px;background:#273421;border:1px solid #405136;border-radius:50%;display:grid;place-items:center;color:#aecf86;flex-shrink:0;margin-top:2px}.activity-marker .icon{width:13px;height:13px}.activity-body{min-width:0;flex:1}.activity-title{font-size:11px;color:#dce5d5}.activity-desc{font-size:10px;color:#8b9b82;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:330px}.activity-time{font-family:var(--mono);font-size:9px;color:#7e8e75;white-space:nowrap;padding-top:4px}.insight-list{padding:9px 23px 19px}.insight-item{padding:15px 0;border-bottom:1px solid var(--line);display:flex;gap:13px;align-items:flex-start}.insight-item:last-child{border:0}.insight-index{font-family:var(--mono);color:#697d5c;font-size:10px;padding-top:3px}.insight-item h3{font-size:12px;font-weight:500;margin:0 0 4px}.insight-item p{font-size:11px;color:#8f9e86;margin:0;line-height:1.9}.bottom-note{display:flex;justify-content:space-between;gap:15px;margin-top:25px;color:#5f7157;font-size:10px}.bottom-note span:last-child{font-family:var(--mono)}.empty{padding:50px 25px;text-align:center;color:#8a9b80}.empty .icon{width:31px;height:31px;color:#6e8759;margin-bottom:14px}.empty h3{font-size:14px;font-weight:500;color:#cddac0;margin:0 0 8px}.empty p{font-size:12px;margin:0 auto 20px;max-width:410px;line-height:1.9}.toolbar{display:flex;gap:12px;padding:18px 22px;border-bottom:1px solid var(--line);align-items:center}.search{background:#11180f;border:1px solid #34412e;border-radius:6px;color:var(--text);padding:9px 12px;min-width:230px}.search::placeholder{color:#72816b}.form-card{padding:25px}.form-card h2{font-size:15px;font-weight:500;margin:0 0 7px}.form-card .description{color:var(--muted);font-size:12px;margin:0 0 22px}.field{margin-bottom:17px}.field label{display:block;color:#bac9b0;font-size:12px;margin-bottom:7px}.field input,.field textarea,.field select{width:100%;padding:10px 12px;border:1px solid #394832;background:#12190f;border-radius:6px;color:var(--text)}.field input:focus,.field textarea:focus{border-color:#8ca662;outline:1px solid #8ca662}.field textarea{min-height:125px;resize:vertical;font-family:var(--mono);font-size:11px}.field small{display:block;color:#7e9174;font-size:10px;line-height:1.8;margin-top:6px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}.settings-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:20px;align-items:start}.setting-line{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--line);font-size:12px}.setting-line:last-child{border:0}.setting-line small{color:var(--muted);font-size:10px;display:block;margin-top:3px}.setting-value{font-family:var(--mono);font-size:10px;color:#b1c29e;overflow-wrap:anywhere}.source-card{padding:21px;border-bottom:1px solid var(--line)}.source-card:last-child{border:0}.source-card h3{font-size:13px;margin:0 0 6px;font-weight:500}.source-meta{font-size:11px;color:var(--muted);overflow-wrap:anywhere}.source-actions{display:flex;gap:9px;margin-top:13px}.source-error{font-size:11px;color:var(--orange);margin-top:9px}.status-row{display:flex;justify-content:space-between;gap:15px;align-items:center}.toast{position:fixed;right:25px;bottom:25px;background:#d1edb3;color:#1b2c0c;padding:13px 20px;border-radius:8px;box-shadow:0 8px 30px #0005;z-index:100;max-width:430px;font-size:12px;opacity:0;transform:translateY(15px);transition:.2s;pointer-events:none}.toast.show{opacity:1;transform:translateY(0)}.toast.error{background:#edc2a7;color:#3c230e}.drawer-backdrop{position:fixed;inset:0;background:#0009;z-index:40}.drawer{position:fixed;right:0;top:0;bottom:0;width:min(560px,100vw);background:#161f13;border-left:1px solid #3d4b32;z-index:41;display:flex;flex-direction:column}.drawer-head{padding:23px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.drawer-head h2{font-size:16px;margin:0;font-weight:500}.drawer-content{padding:23px;overflow:auto;flex:1}.drawer-summary{border:1px solid #3c4b31;background:#202d19;border-radius:8px;padding:17px;font-size:12px;margin-bottom:23px}.drawer-summary p{color:#b3c4a6;margin:9px 0}.message{max-width:90%;padding:13px 15px;border:1px solid #34452b;border-radius:8px;background:#23331b;margin:12px 0;font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}.message.assistant{margin-left:auto;background:#1c2419;border-color:#303e28;color:#a5b69a}.message small{display:block;font-size:9px;color:#7d936f;font-family:var(--mono);margin-top:7px}.drawer-footer{border-top:1px solid var(--line);padding:18px 23px;display:flex;gap:10px;align-items:center}.drawer-footer .select{flex:1}.login{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr}.login-art{padding:48px 55px;display:flex;flex-direction:column;position:relative;overflow:hidden;background:#111a10;border-right:1px solid #2d3a25}.login-art:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#94b06d08 1px,transparent 1px),linear-gradient(90deg,#94b06d08 1px,transparent 1px);background-size:45px 45px;pointer-events:none}.login-art .brand{padding:0;position:relative}.login-pitch{margin:auto 0;position:relative;max-width:500px;padding:80px 0 60px}.login-pitch h1{font-size:39px;font-weight:500;line-height:1.6;letter-spacing:1.2px;margin:20px 0}.login-pitch p{font-size:13px;color:#9caf8f;max-width:350px;line-height:2.1}.radar{width:250px;height:150px;position:relative;margin-top:42px}.radar svg{width:100%;height:100%}.login-art-footer{position:relative;font-family:var(--mono);font-size:10px;color:#5e7651;letter-spacing:1.4px}.login-form-wrap{display:flex;align-items:center;justify-content:center;padding:40px}.login-card{width:100%;max-width:350px}.login-card .eyebrow{color:#7e986a}.login-card h2{font-size:26px;font-weight:500;margin:12px 0}.login-card p{font-size:12px;color:var(--muted);line-height:1.9;margin-bottom:28px}.google-button{display:flex;width:100%;justify-content:center;align-items:center;gap:12px;border:1px solid #526449;border-radius:7px;background:#e9efe3;color:#27361d;padding:12px;font-size:13px;font-weight:500}.google-button:hover{background:#f5faef}.google-button:disabled{opacity:.5}.google-mark{font-family:Arial,sans-serif;font-size:20px;font-weight:700;color:#4285f4}.login-rule{margin-top:23px;padding-top:20px;border-top:1px solid var(--line);font-size:11px;color:#7e9074;line-height:2}.login-hint{background:#2c261c;border:1px solid #51432c;color:#d4bc93;border-radius:6px;padding:12px 14px;font-size:11px;margin:16px 0}.preview-link{display:inline-flex;align-items:center;gap:8px;margin-top:24px;font-size:11px;color:#a7c58b}.login-card .button{width:100%}.mobile-toggle{display:none}.muted{color:var(--muted)}.mono{font-family:var(--mono)}.mb20{margin-bottom:20px}.mt20{margin-top:20px}.section-copy{padding:18px 23px;font-size:11px;color:var(--muted);line-height:1.9;border-top:1px solid var(--line)}.demo-banner{color:#c3d3b5;font-size:11px;background:#23311b;border-bottom:1px solid #3d512e;padding:9px 38px;display:flex;justify-content:space-between;gap:15px}.demo-banner a{color:var(--lime)}.break-text{white-space:normal;min-width:180px}.report-list a{color:var(--lime)}@media(min-width:1500px){.content{padding-top:40px}.stat-card{padding:23px 25px}.stat-value{font-size:36px}.panel-head{padding-top:24px}}@media(max-width:1200px){.app-shell{grid-template-columns:205px 1fr}.sidebar{width:205px}.content{padding:27px}.topbar{padding:0 27px}.stats-grid{gap:10px}.stat-card{padding:16px}.sparkline{display:none}.dashboard-grid{grid-template-columns:minmax(0,1.4fr) minmax(270px,1fr);gap:15px}.data-table td,.data-table th{padding-left:16px;padding-right:16px}.legend{gap:8px}.stat-value{font-size:29px}.activity-desc{max-width:210px}.top-actions .time{display:none}}@media(max-width:1000px){.dashboard-grid{grid-template-columns:1fr}.span-full{grid-column:auto}.settings-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.activity-desc{max-width:500px}.login-pitch h1{font-size:31px}.login-art{padding:40px 30px}.head-actions{flex-wrap:wrap;justify-content:flex-end}.page-head h1{font-size:23px}.chart-wrap{max-height:320px}.line-chart{max-height:275px}}@media(max-width:700px){.app-shell{display:block}.sidebar{transform:translateX(-100%);transition:.2s;width:232px;box-shadow:10px 0 40px #0007}.app-shell.menu-open .sidebar{transform:translateX(0)}.main{width:100%}.topbar{height:62px;padding:0 19px}.content{padding:24px 18px}.mobile-toggle{display:inline-flex}.breadcrumb{display:flex;align-items:center;gap:8px;font-size:11px}.breadcrumb strong{margin-left:0}.top-actions{gap:8px}.version{display:none}.page-head{display:block}.page-head h1{font-size:23px}.head-actions{justify-content:flex-start;padding-top:18px}.stat-card{padding:16px}.stat-value{font-size:29px}.stat-top{font-size:11px}.stat-bottom{font-size:9px}.stats-grid{gap:10px;margin-bottom:18px}.dashboard-grid{gap:17px}.notice{align-items:flex-start;font-size:11px}.notice a{padding-top:2px}.panel-head{padding:19px 17px 0}.legend{font-size:9px}.funnel{padding:24px 17px 16px}.chart-wrap{padding:15px 9px 0}.chart-footer{margin:0 17px;gap:12px}.data-table{font-size:11px}.activity-desc{max-width:230px}.list-activity,.insight-list{padding-left:17px;padding-right:17px}.bottom-note{display:block;line-height:2}.form-card{padding:21px 18px}.toolbar{flex-wrap:wrap;padding:15px}.search{width:100%;min-width:0}.form-row{grid-template-columns:1fr;gap:0}.demo-banner{padding:9px 18px;font-size:10px}.demo-banner span{max-width:75%}.login{grid-template-columns:1fr}.login-art{padding:27px 25px;border-right:0;border-bottom:1px solid var(--line)}.login-pitch{padding:33px 0 8px}.login-pitch h1{font-size:28px;margin:12px 0}.login-pitch p{font-size:12px;margin-bottom:3px}.radar,.login-art-footer{display:none}.login-form-wrap{padding:35px 25px 45px}.login-card{max-width:430px}.login-card h2{font-size:24px}.login-card p{margin-bottom:20px}.source-actions{flex-wrap:wrap}.drawer-footer{padding:15px}.top-actions .button{padding:7px 10px}.notice.warn{display:block}.notice.warn .icon{margin-right:8px}.toast{left:18px;right:18px;bottom:18px}.setting-line{align-items:flex-start;gap:15px}.setting-value{max-width:55%;text-align:right}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media(max-width:700px){.sidebar{visibility:hidden;pointer-events:none}.app-shell.menu-open .sidebar{visibility:visible;pointer-events:auto}}
