@import"https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400..600;1,9..144,400..600&family=Inter:wght@400;500;600&family=DM+Mono:wght@400;500&display=swap";:root{--ink:#1B1E26;--ink-2:#12141B;--marble:#F4F1EA;--white:#FFFFFF;--laurel:#3F6C50;--laurel-deep:#2C4F3A;--ochre:#B98A2F;--ochre-soft:#E9D9AE;--slate:#4A4F5C;--mist:#8B8F9B;--line:rgba(27,30,38,.12);--hairline:rgba(27,30,38,.07);--card-shadow:0 4px 20px rgba(27,30,38,.06);--radius-card:14px;--radius-btn:8px;--radius-sm:8px;--display:"Fraunces",Georgia,serif;--sans:"Inter",system-ui,sans-serif;--mono:"DM Mono",ui-monospace,monospace}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--sans);background:var(--marble);color:var(--slate);-webkit-font-smoothing:antialiased;line-height:1.5}a{color:inherit;text-decoration:none}svg{stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none}.top{background:var(--ink);color:#fff;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 32px}.brand{display:flex;align-items:center;gap:14px}.brand-lock{display:flex;align-items:center;gap:11px}.mark-svg{display:block}.wordmark{font-family:var(--display);font-weight:500;font-size:23px;letter-spacing:-.01em;color:var(--marble)}.divider{width:1px;height:24px;background:#f4f1ea40}.product{font-size:14px;color:#f4f1eaa6;letter-spacing:.01em}.product .dim{color:#f4f1ea73}.top-right{display:flex;align-items:center;gap:14px;font-size:14px}.role-pill{font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ochre-soft);border:1px solid rgba(233,217,174,.4);padding:4px 11px;border-radius:999px}.user{display:flex;align-items:center;gap:9px;color:#f4f1eae6}.avatar{width:30px;height:30px;border-radius:50%;background:var(--laurel);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:#fff}.signout{color:#f4f1ea8c;font-size:13px;cursor:pointer}.tabs{background:var(--ink-2);display:flex;align-items:stretch;gap:2px;padding:0 32px;height:48px}.tab{display:flex;align-items:center;padding:0 16px;font-size:14px;color:#f4f1ea8c;position:relative}.tab.active{color:#fff;font-weight:500}.tab.active:after{content:"";position:absolute;left:12px;right:12px;bottom:0;height:2px;background:var(--ochre)}.page{max-width:1180px;margin:0 auto;padding:36px 32px 56px}.page-narrow{max-width:1040px}.eyebrow{font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--laurel);margin-bottom:10px}h1{font-family:var(--display);font-weight:500;font-size:36px;letter-spacing:-.01em;color:var(--ink);line-height:1.12}.sub{font-size:15.5px;color:var(--mist);margin-top:8px}.section-title{font-size:17px;font-weight:600;color:var(--ink);letter-spacing:-.01em}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--card-shadow)}.pad{padding:20px}.badge{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:500;padding:4px 10px;border-radius:999px;line-height:1.3;white-space:nowrap}.b-rate{background:#ebe7dc;color:var(--ink)}.b-co2{background:#e7efe9;color:var(--laurel-deep)}.b-loy{background:#f5ebd4;color:#7a5a14}.b-chip{background:#efede6;color:var(--slate)}.b-flag{background:#f3e3e0;color:#8c3a2b}.b-ok{background:#e7efe9;color:var(--laurel-deep)}.b-warn{background:#f5ebd4;color:#7a5a14}.b-pending{background:#e9eaf0;color:#4a4f7a}.btn{display:inline-flex;align-items:center;gap:8px;background:var(--laurel);color:#fff;border:none;border-radius:var(--radius-btn);padding:11px 22px;font-family:var(--sans);font-size:14px;font-weight:600;cursor:pointer;transition:background .15s ease}.btn:hover{background:var(--laurel-deep)}.btn-sm{padding:8px 15px;font-size:13px}.btn-dark{background:var(--ink)}.btn-dark:hover{background:#000}.btn-outline{background:transparent;color:var(--laurel-deep);border:1.5px solid var(--laurel)}.btn-outline:hover{background:#e7efe9}.btn-ghost{background:#fff;color:var(--slate);border:1px solid var(--line);font-weight:500}.btn-ghost:hover{background:var(--marble)}.chip{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--slate);background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 11px}.ghost{font-size:12.5px;color:var(--laurel-deep);background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 12px;cursor:pointer}.metric{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:16px 18px}.metric .n{font-family:var(--display);font-weight:500;font-size:30px;color:var(--ink);letter-spacing:-.01em;line-height:1}.metric .l{font-size:11px;font-weight:600;color:var(--mist);text-transform:uppercase;letter-spacing:.08em;margin-top:8px}.metric .d{font-size:12.5px;color:var(--mist);margin-top:4px}.tbl{width:100%;border-collapse:collapse;font-size:14px}.tbl th{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--mist);text-align:left;padding:11px 14px;border-bottom:1px solid var(--line)}.tbl td{padding:13px 14px;border-bottom:1px solid var(--hairline);color:var(--slate)}.tbl tr:last-child td{border-bottom:none}.tbl .strong{font-weight:600;color:var(--ink)}.track{height:8px;border-radius:99px;background:#e6e2d6;overflow:hidden}.track>i{display:block;height:100%;border-radius:99px;background:var(--laurel)}.stage{display:flex;justify-content:center;padding:44px 24px}.phone{width:392px;background:var(--ink-2);border-radius:44px;padding:12px;box-shadow:0 24px 60px #1b1e2640}.phone-screen{background:var(--marble);border-radius:34px;overflow:hidden;position:relative}.phone-status{height:34px;background:var(--ink)}.phone-notch{position:absolute;top:9px;left:50%;transform:translate(-50%);width:120px;height:20px;background:var(--ink-2);border-radius:0 0 14px 14px}.phone-body{padding:18px}.muted{color:var(--mist)}.mono{font-family:var(--mono)}.row{display:flex;align-items:center}.grow{flex:1}.tile{flex:none;width:34px;height:34px;border-radius:9px;background:#efede6;color:var(--laurel-deep);display:flex;align-items:center;justify-content:center}.dot{width:8px;height:8px;border-radius:50%;flex:none}.shell-main{min-height:calc(100vh - 112px)}.tab.soon{color:#f4f1ea47;cursor:default}.tab-soon-badge{font-family:var(--mono);font-size:9px;letter-spacing:.05em;text-transform:uppercase;background:#f4f1ea1a;color:#f4f1ea73;border-radius:999px;padding:2px 6px;margin-left:8px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field label{font-size:13px;font-weight:500;color:var(--slate)}.field .hint{font-size:12px;color:var(--mist)}.input,.select{font-family:var(--sans);font-size:14px;color:var(--slate);background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 12px}.input:focus,.select:focus{outline:2px solid var(--laurel);outline-offset:1px}.banner-error{background:#f3e3e0;color:#8c3a2b;border-radius:10px;padding:10px 14px;font-size:13.5px;margin-bottom:14px}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--ink)}.login-card{width:380px}.login-mark{display:flex;justify-content:center;margin-bottom:14px}.login-title{font-family:var(--display);font-weight:500;font-size:24px;color:var(--ink);margin-bottom:4px;text-align:center}.login-sub{font-size:13.5px;color:var(--mist);margin-bottom:20px;text-align:center}.secret-box{font-family:var(--mono);font-size:15px;letter-spacing:.06em;background:#f1eee6;border-radius:10px;padding:12px 14px;word-break:break-all;margin-bottom:16px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1b1e2657;display:flex;justify-content:flex-end;z-index:20}.drawer{width:420px;max-width:92vw;height:100%;background:#fff;box-shadow:-12px 0 32px #1b1e262e;padding:28px;overflow-y:auto}.drawer-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}.drawer-close{cursor:pointer;color:var(--mist);font-size:20px;line-height:1}.tbl-row-click{cursor:pointer}.tbl-row-click:hover{background:#f8f6f0}.spinner-line{font-size:13.5px;color:var(--mist);padding:20px 0}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-top:20px}
