@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Noto+Sans+SC:wght@400;500;600;700&family=Noto+Serif+SC:wght@600;700&display=swap";.kh-admin,.kh-login{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--kh-ink:#0c111b;--kh-panel:#111925;--kh-panel-2:#151f2d;--kh-line:#99aec729;--kh-line-strong:#99aec747;--kh-line-input:#99aec747;--kh-copy:#edf2f7;--kh-muted:#8e9caf;--kh-dim:#7d8da3;--kh-hot:#ff6546;--kh-hot-2:#ff8252;--kh-hot-text:#ff6546;--kh-cyan:#64d6df;--kh-good:#55d69a;--kh-warn:#f4bd61;--kh-bad:#ff7182;--kh-good-bright:#91e8be;--kh-warn-bright:#ffd38a;--kh-bad-bright:#ff9eaa;--kh-good-dim:#7fb8a4;--kh-deco:#3e5066;--kh-deco-strong:#3e5066;--kh-field-icon:#3e5066;--kh-bg-top:#0d131d;--kh-bg-bottom:#0a1018;--kh-surface-solid:#080d15eb;--kh-surface-input:#0e1621;--kh-card-grad:linear-gradient(145deg, #151f2dde, #0e1621e6);--kh-hover:#ffffff0d;--kh-switch-track:#283447;--kh-switch-border:#39475b;--kh-switch-knob:#8491a3;--kh-display:Bahnschrift, "DIN Alternate", "Microsoft YaHei", sans-serif;--kh-body:"Aptos", "Segoe UI", "Microsoft YaHei", sans-serif;color:var(--kh-copy);font-family:var(--kh-body)}.kh-admin[data-theme=light],.kh-login[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--kh-panel:#fff;--kh-panel-2:#f6f9fc;--kh-line:#1721331f;--kh-line-strong:#17213342;--kh-line-input:#17213352;--kh-copy:#1d2733;--kh-muted:#4f5f73;--kh-dim:#5f7085;--kh-hot-text:#c93a1c;--kh-cyan:#0b7c88;--kh-good:#12805c;--kh-warn:#9a6b00;--kh-bad:#c0304f;--kh-good-bright:#12805c;--kh-warn-bright:#9a6b00;--kh-bad-bright:#c0304f;--kh-good-dim:#2e6e5b;--kh-deco:#b9c5d2;--kh-deco-strong:#8fa0b5;--kh-field-icon:#8fa0b5;--kh-bg-top:#f7fafd;--kh-bg-bottom:#edf1f6;--kh-surface-solid:#fffffff2;--kh-surface-input:#fff;--kh-card-grad:linear-gradient(145deg, #fff, #f1f5f9);--kh-hover:#0f172a0f;--kh-switch-track:#d3dbe4;--kh-switch-border:#b9c5d2;--kh-switch-knob:#fff}.kh-admin *,.kh-login *{box-sizing:border-box}.kh-admin button,.kh-admin input,.kh-admin select,.kh-login button,.kh-login input{font:inherit}.kh-admin button,.kh-login button{color:inherit}.kh-admin{background:radial-gradient(circle at 88% -10%, #3c718324, transparent 30%), linear-gradient(180deg, var(--kh-bg-top) 0%, var(--kh-bg-bottom) 100%);grid-template-columns:246px minmax(0,1fr);min-height:100vh;display:grid}.kh-sidebar{background:var(--kh-surface-solid);border-right:1px solid var(--kh-line);z-index:5;flex-direction:column;height:100vh;min-height:100vh;padding:28px 18px 22px;display:flex;position:sticky;top:0}.kh-brand{align-items:center;gap:12px;padding:0 9px;display:flex}.kh-brand__mark{width:43px;height:43px;color:var(--kh-cyan);border:1px solid #64d6df40;border:1px solid color-mix(in srgb, var(--kh-cyan) 25%, transparent);background:linear-gradient(145deg,#64d6df21,#64d6df05);background:linear-gradient(145deg, color-mix(in srgb, var(--kh-cyan) 13%, transparent), color-mix(in srgb, var(--kh-cyan) 2%, transparent));box-shadow:inset 0 0 24px #64d6df0a;box-shadow:inset 0 0 24px color-mix(in srgb, var(--kh-cyan) 4%, transparent);border-radius:13px 13px 13px 4px;place-items:center;display:grid;position:relative}.kh-brand__mark svg:last-child{color:var(--kh-hot-text);filter:drop-shadow(0 0 6px #ff654680);position:absolute;bottom:-3px;right:-3px}.kh-brand strong{font-family:var(--kh-display);letter-spacing:.025em;font-size:19px;line-height:1.1;display:block}.kh-brand strong span{color:var(--kh-hot-text);margin-left:3px}.kh-brand small{color:var(--kh-dim);font-family:var(--kh-display);letter-spacing:.17em;margin-top:6px;font-size:9px;display:block}.kh-nav{gap:8px;margin-top:55px;display:grid}.kh-nav:before{content:"CONTROL";color:var(--kh-dim);font-family:var(--kh-display);letter-spacing:.2em;padding:0 12px 8px;font-size:9px}.kh-nav button{color:var(--kh-muted);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:22px 1fr auto;align-items:center;gap:9px;width:100%;min-height:45px;padding:0 12px;transition:color .16s,background .16s,transform .16s;display:grid;position:relative}.kh-nav button:hover{color:var(--kh-copy);background:var(--kh-hover);transform:translate(2px)}.kh-nav button.is-active{color:var(--kh-copy);background:linear-gradient(90deg,#64d6df21,#64d6df0a);background:linear-gradient(90deg, color-mix(in srgb, var(--kh-cyan) 13%, transparent), color-mix(in srgb, var(--kh-cyan) 4%, transparent))}.kh-nav button.is-active:before{content:"";background:var(--kh-cyan);border-radius:2px;width:2px;position:absolute;top:10px;bottom:10px;left:0;box-shadow:0 0 9px #64d6df99}.kh-nav button b{background:var(--kh-hover);border-radius:99px;place-items:center;min-width:22px;height:20px;padding:0 6px;font-size:10px;font-weight:600;display:grid}.kh-sidebar__foot{border-top:1px solid var(--kh-line);margin-top:auto;padding:18px 12px 4px}.kh-env{color:var(--kh-good);align-items:center;gap:7px;margin-bottom:20px;font-size:11px;display:flex}.kh-env i,.kh-sync-state i{background:currentColor;border-radius:50%;width:7px;height:7px;box-shadow:0 0 8px}.kh-sidebar__foot p,.kh-sidebar__foot small{color:var(--kh-dim);margin:0;font-size:10px}.kh-sidebar__foot strong{font-family:var(--kh-display);margin:5px 0;font-size:15px;display:block}.kh-sidebar__foot button{color:var(--kh-dim);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:0;font-size:11px;display:flex}.kh-sidebar__foot button:hover{color:var(--kh-bad)}.kh-main{min-width:0;padding:28px clamp(24px,3vw,48px) 110px}.kh-header{border-bottom:1px solid var(--kh-line);justify-content:space-between;align-items:flex-start;gap:24px;min-height:74px;padding-bottom:22px;display:flex}.kh-header p,.kh-panel__heading p,.kh-config-card__head p{color:var(--kh-cyan);font-family:var(--kh-display);letter-spacing:.18em;margin:0 0 7px;font-size:9px}.kh-header h1{font-family:var(--kh-display);letter-spacing:.01em;margin:0;font-size:clamp(25px,2.3vw,34px);font-weight:650}.kh-header>div:first-child>span{color:var(--kh-muted);margin-top:8px;font-size:12px;display:block}.kh-header__actions{align-items:center;gap:9px;display:flex}.kh-sync-state{color:var(--kh-good);align-items:center;gap:8px;padding-right:10px;display:flex}.kh-sync-state span{color:var(--kh-dim);white-space:nowrap;font-size:10px}.kh-sync-state i.is-loading{animation:1s ease-in-out infinite kh-pulse}.kh-button{cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:0 15px;font-size:12px;font-weight:650;transition:transform .16s,border-color .16s,background .16s;display:inline-flex}.kh-button:hover:not(:disabled){transform:translateY(-1px)}.kh-button:disabled{opacity:.55;cursor:not-allowed}.kh-button--ghost{border-color:var(--kh-line-strong);background:var(--kh-hover);color:var(--kh-muted)}.kh-button--ghost:hover:not(:disabled){background:var(--kh-hover);border-color:#99aec766}.kh-button--hot{color:var(--kh-ink);background:linear-gradient(135deg, var(--kh-hot), var(--kh-hot-2));box-shadow:0 8px 24px #ff654629}.kh-button--hot:hover:not(:disabled){box-shadow:0 11px 30px #ff65463d}.kh-banner{border:1px solid;border-radius:10px;align-items:center;gap:9px;min-height:44px;margin:16px 0 -2px;padding:10px 13px;font-size:12px;display:flex}.kh-banner--success{color:var(--kh-good-bright);border-color:#55d69a40;border-color:color-mix(in srgb, var(--kh-good) 25%, transparent);background:#55d69a12;background:color-mix(in srgb, var(--kh-good) 7%, transparent)}.kh-banner--warning{color:var(--kh-warn-bright);border-color:#f4bd614d;border-color:color-mix(in srgb, var(--kh-warn) 30%, transparent);background:#f4bd6114;background:color-mix(in srgb, var(--kh-warn) 8%, transparent)}.kh-banner--error{color:var(--kh-bad-bright);border-color:#ff718242;border-color:color-mix(in srgb, var(--kh-bad) 26%, transparent);background:#ff718212;background:color-mix(in srgb, var(--kh-bad) 7%, transparent)}.kh-banner button{cursor:pointer;opacity:.7;background:0 0;border:0;margin-left:auto;font-size:20px;line-height:1}.kh-loading{min-height:420px;color:var(--kh-muted);align-content:center;place-items:center;gap:13px;font-size:12px;display:grid}.kh-page{animation:.36s both kh-enter}.kh-operating-strip{border:1px solid var(--kh-line);background:var(--kh-panel);border-radius:12px;grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(130px,1fr)) auto;align-items:center;min-height:74px;margin-top:22px;padding:11px 18px;display:grid;box-shadow:0 15px 50px #0000001f}.kh-operating-strip>div{border-right:1px solid var(--kh-line);min-width:0;padding:0 18px}.kh-operating-strip>div:first-child{padding-left:0}.kh-operating-strip>div:nth-last-child(2){border-right:0}.kh-operating-strip small,.kh-run-facts small{color:var(--kh-dim);margin-bottom:6px;font-size:9px;display:block}.kh-operating-strip strong{font-family:var(--kh-display);text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.kh-operating-strip__signal{align-items:center;gap:13px;display:flex}.kh-radar{opacity:.9;border:1px solid;border-radius:50%;place-items:center;width:34px;height:34px;display:grid;position:relative}.kh-radar:before,.kh-radar:after{content:"";opacity:.22;background:currentColor;position:absolute}.kh-radar:before{width:1px;height:100%}.kh-radar:after{width:100%;height:1px}.kh-radar i{background:currentColor;border-radius:50%;width:6px;height:6px;box-shadow:0 0 9px}.kh-radar b{opacity:.25;border:1px solid;border-radius:50%;position:absolute;inset:4px}.kh-tone--good{color:var(--kh-good)}.kh-tone--warn{color:var(--kh-warn)}.kh-tone--bad{color:var(--kh-bad)}.kh-tone--live{color:var(--kh-cyan)}.kh-tone--muted{color:var(--kh-muted)}.kh-status{white-space:nowrap;border:1px solid;border-radius:99px;align-items:center;gap:6px;width:fit-content;min-height:24px;padding:0 9px;font-size:9px;display:inline-flex}.kh-status i{background:currentColor;border-radius:50%;width:5px;height:5px}.kh-status--good{color:var(--kh-good);border-color:#55d69a3d;border-color:color-mix(in srgb, var(--kh-good) 24%, transparent);background:#55d69a12;background:color-mix(in srgb, var(--kh-good) 7%, transparent)}.kh-status--warn{color:var(--kh-warn);border-color:#f4bd6140;border-color:color-mix(in srgb, var(--kh-warn) 25%, transparent);background:#f4bd6112;background:color-mix(in srgb, var(--kh-warn) 7%, transparent)}.kh-status--bad{color:var(--kh-bad);border-color:#ff718240;border-color:color-mix(in srgb, var(--kh-bad) 25%, transparent);background:#ff718212;background:color-mix(in srgb, var(--kh-bad) 7%, transparent)}.kh-status--live{color:var(--kh-cyan);border-color:#64d6df40;border-color:color-mix(in srgb, var(--kh-cyan) 25%, transparent);background:#64d6df12;background:color-mix(in srgb, var(--kh-cyan) 7%, transparent)}.kh-status--muted{color:var(--kh-muted);border-color:#8e9caf36;border-color:color-mix(in srgb, var(--kh-muted) 21%, transparent);background:#8e9caf0e;background:color-mix(in srgb, var(--kh-muted) 5.5%, transparent)}.kh-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.kh-metric{border:1px solid var(--kh-line);background:var(--kh-card-grad);border-radius:12px;min-width:0;padding:15px 16px;position:relative;overflow:hidden}.kh-metric:after{content:"";opacity:.04;background:currentColor;border-radius:50%;width:75px;height:75px;position:absolute;top:-32px;right:-32px}.kh-metric--good{color:var(--kh-good)}.kh-metric--warn{color:var(--kh-warn)}.kh-metric--bad{color:var(--kh-bad)}.kh-metric--live{color:var(--kh-cyan)}.kh-metric--muted{color:var(--kh-muted)}.kh-metric__top{color:var(--kh-dim);justify-content:space-between;align-items:center;font-size:10px;display:flex}.kh-metric__icon{color:currentColor;background:color-mix(in srgb, currentColor 10%, transparent);border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.kh-metric>strong{color:var(--kh-copy);font-family:var(--kh-display);white-space:nowrap;text-overflow:ellipsis;margin:14px 0 7px;font-size:clamp(21px,2vw,28px);display:block;overflow:hidden}.kh-metric>strong small{color:var(--kh-dim);font-size:11px;font-weight:500}.kh-metric__meta{color:var(--kh-dim);text-overflow:ellipsis;white-space:nowrap;min-height:12px;font-size:9px;overflow:hidden}.kh-overview__grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr);gap:14px;margin-top:16px;display:grid}.kh-panel{border:1px solid var(--kh-line);background:var(--kh-panel);border-radius:13px;box-shadow:0 18px 55px #0000001f}.kh-panel__heading{border-bottom:1px solid var(--kh-line);justify-content:space-between;align-items:center;gap:16px;min-height:65px;padding:16px 18px;display:flex}.kh-panel__heading h2,.kh-config-card__head h2{font-family:var(--kh-display);margin:0;font-size:16px;font-weight:600}.kh-pipeline{grid-template-columns:repeat(5,minmax(0,1fr));padding:24px 18px 18px;display:grid}.kh-pipeline__step{align-items:center;gap:9px;min-width:0;display:flex;position:relative}.kh-pipeline__step--good{color:var(--kh-good)}.kh-pipeline__step--warn{color:var(--kh-warn)}.kh-pipeline__step--bad{color:var(--kh-bad)}.kh-pipeline__step--live{color:var(--kh-cyan)}.kh-pipeline__step--muted{color:var(--kh-dim)}.kh-pipeline__node{border:1px solid color-mix(in srgb, currentColor 32%, transparent);background:color-mix(in srgb, currentColor 7%, transparent);border-radius:9px;flex:none;place-items:center;width:35px;height:35px;display:grid}.kh-pipeline__step small{color:var(--kh-dim);margin-bottom:5px;font-size:8px;display:block}.kh-pipeline__step strong{color:var(--kh-copy);font-family:var(--kh-display);text-overflow:ellipsis;white-space:nowrap;font-size:10px;display:block;overflow:hidden}.kh-pipeline__step>div{min-width:0}.kh-pipeline__arrow{color:var(--kh-deco-strong);margin-left:auto;margin-right:9px}.kh-run-facts{border-top:1px dashed var(--kh-line-strong);grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 18px 18px;padding-top:16px;display:grid}.kh-run-facts strong{font-family:var(--kh-display);font-size:10px;font-weight:550}.kh-control-panel{overflow:hidden}.kh-control-panel>button{border:0;border-bottom:1px solid var(--kh-line);text-align:left;cursor:pointer;background:0 0;grid-template-columns:34px 1fr auto;align-items:center;gap:11px;width:100%;min-height:67px;padding:12px 17px;display:grid}.kh-control-panel>button:hover{background:var(--kh-hover)}.kh-control-panel>button>span:nth-child(2){min-width:0}.kh-control-panel>button strong,.kh-control-panel>button small{display:block}.kh-control-panel>button strong{margin-bottom:5px;font-size:11px}.kh-control-panel>button small{color:var(--kh-dim);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.kh-control-panel__icon{border:1px solid var(--kh-line);width:34px;height:34px;color:var(--kh-cyan);background:#64d6df0d;background:color-mix(in srgb, var(--kh-cyan) 5%, transparent);border-radius:9px;place-items:center;display:grid}.kh-control-panel>button>svg{color:var(--kh-deco-strong)}.kh-security-note{border:1px solid #55d69a29;border:1px solid color-mix(in srgb, var(--kh-good) 16%, transparent);background:#55d69a0b;background:color-mix(in srgb, var(--kh-good) 4.5%, transparent);color:var(--kh-good);border-radius:9px;align-items:flex-start;gap:9px;margin:14px;padding:11px;display:flex}.kh-security-note strong,.kh-security-note small{display:block}.kh-security-note strong{font-size:9px}.kh-security-note small{color:var(--kh-good-dim);margin-top:4px;font-size:8px}.kh-report-preview{margin-top:16px}.kh-report-preview .kh-panel__heading>span{color:var(--kh-dim);font-family:var(--kh-display);font-size:10px}.kh-report-preview__list{grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.kh-report-preview__list a{color:inherit;border-right:1px solid var(--kh-line);flex-direction:column;min-width:0;min-height:116px;padding:16px;text-decoration:none;transition:background .16s;display:flex;position:relative}.kh-report-preview__list a:last-child{border-right:0}.kh-report-preview__list a:hover{background:var(--kh-hover)}.kh-report-preview__list a>b{color:var(--kh-deco-strong);font-family:var(--kh-display);font-size:18px;line-height:1}.kh-report-preview__list a span{min-width:0;margin-top:13px;display:block}.kh-report-preview__list a small{color:var(--kh-cyan);white-space:nowrap;text-overflow:ellipsis;margin-bottom:6px;font-size:8px;display:block;overflow:hidden}.kh-report-preview__list a strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:10px;font-weight:550;line-height:1.55;display:-webkit-box;overflow:hidden}.kh-report-preview__list a>svg{color:var(--kh-deco-strong);position:absolute;top:15px;right:15px}.kh-empty{color:var(--kh-dim);align-content:center;place-items:center;gap:9px;min-height:130px;font-size:10px;display:grid}.kh-source-summary{border:1px solid var(--kh-line);background:var(--kh-panel);border-radius:12px;grid-template-columns:190px 1fr auto;align-items:center;gap:20px;min-height:82px;margin-top:22px;padding:14px 17px;display:grid}.kh-source-summary>div{color:var(--kh-cyan);align-items:center;gap:13px;display:flex}.kh-source-summary small,.kh-source-summary strong{display:block}.kh-source-summary small{color:var(--kh-dim);margin-bottom:3px;font-size:9px}.kh-source-summary strong{color:var(--kh-copy);font-family:var(--kh-display);font-size:18px}.kh-source-summary strong b{color:var(--kh-dim);font-size:10px;font-weight:500}.kh-source-summary p{color:var(--kh-muted);margin:0;font-size:10px;line-height:1.7}.kh-source-list{gap:12px;margin-top:14px;display:grid}.kh-source-card{border:1px solid var(--kh-line);background:var(--kh-panel);opacity:.68;border-radius:13px;transition:border-color .16s,opacity .16s;overflow:hidden}.kh-source-card.is-enabled{opacity:1;border-color:var(--kh-line-strong)}.kh-source-card__head{border-bottom:1px solid var(--kh-line);grid-template-columns:36px minmax(180px,1fr) auto auto;align-items:center;gap:13px;min-height:68px;padding:12px 17px;display:grid}.kh-source-card__index{color:var(--kh-deco-strong);font-family:var(--kh-display);font-size:14px}.kh-source-card__identity{align-items:center;gap:11px;min-width:0;display:flex}.kh-source-card__badge{background:linear-gradient(145deg,#64d6df24,#64d6df09);background:linear-gradient(145deg, color-mix(in srgb, var(--kh-cyan) 14%, transparent), color-mix(in srgb, var(--kh-cyan) 3.5%, transparent));border:1px solid #64d6df30;border:1px solid color-mix(in srgb, var(--kh-cyan) 19%, transparent);width:35px;height:35px;color:var(--kh-cyan);font-family:var(--kh-display);border-radius:9px;flex:none;place-items:center;font-size:12px;display:grid}.kh-source-card__identity>div{min-width:0}.kh-source-card__identity input{color:var(--kh-copy);background:0 0;border:0;outline:0;width:100%;padding:0;font-size:12px;font-weight:650}.kh-source-card__identity small{color:var(--kh-dim);font-family:var(--kh-display);margin-top:5px;font-size:8px;display:block}.kh-switch{cursor:pointer;display:inline-flex}.kh-switch input{opacity:0;pointer-events:none;position:absolute}.kh-switch>span{background:var(--kh-switch-track);border:1px solid var(--kh-switch-border);border-radius:99px;width:35px;height:20px;transition:background .16s,border-color .16s;position:relative}.kh-switch>span:after{content:"";background:var(--kh-switch-knob);border-radius:50%;width:12px;height:12px;transition:transform .16s,background .16s;position:absolute;top:3px;left:3px}.kh-switch input:checked+span{background:#55d69a2b;background:color-mix(in srgb, var(--kh-good) 17%, transparent);border-color:#55d69a6e;border-color:color-mix(in srgb, var(--kh-good) 43%, transparent)}.kh-switch input:checked+span:after{background:var(--kh-good);transform:translate(15px);box-shadow:0 0 8px #55d69a66}.kh-switch input:focus-visible+span{outline:2px solid var(--kh-cyan);outline-offset:2px}.kh-source-card__fields,.kh-config-grid{grid-template-columns:minmax(230px,2fr) repeat(3,minmax(130px,.65fr));gap:12px;padding:15px 17px;display:grid}.kh-field{gap:7px;min-width:0;display:grid}.kh-field>span{color:var(--kh-dim);font-size:9px}.kh-field>div:not(.kh-field__suffix){background:var(--kh-surface-input);border:1px solid var(--kh-line-input);min-width:0;color:var(--kh-field-icon);border-radius:8px;align-items:center;gap:8px;padding:0 10px;display:flex}.kh-field input,.kh-field select{border:1px solid var(--kh-line-input);background:var(--kh-surface-input);width:100%;min-width:0;height:37px;color:var(--kh-copy);border-radius:8px;outline:none;padding:0 10px;font-size:10px;transition:border-color .16s,box-shadow .16s}.kh-field>div:not(.kh-field__suffix) input{background:0 0;border:0;padding:0}.kh-field input:focus,.kh-field select:focus,.kh-field>div:focus-within{border-color:#64d6df80;border-color:color-mix(in srgb, var(--kh-cyan) 50%, transparent);box-shadow:0 0 0 3px #64d6df12;box-shadow:0 0 0 3px color-mix(in srgb, var(--kh-cyan) 7%, transparent)}.kh-field select{appearance:auto}.kh-field__suffix{border:1px solid var(--kh-line-input);background:var(--kh-surface-input);border-radius:8px;align-items:center;display:flex;overflow:hidden}.kh-field__suffix input{border:0;border-radius:0}.kh-field__suffix b{color:var(--kh-dim);padding-right:10px;font-size:9px;font-weight:500}.kh-source-card__advanced{border:1px dashed var(--kh-line-strong);border-radius:9px;margin:0 17px 14px;padding:0 12px}.kh-source-card__advanced summary{color:var(--kh-muted);cursor:pointer;align-items:center;gap:7px;min-height:38px;font-size:9px;list-style:none;display:flex}.kh-source-card__advanced summary::-webkit-details-marker{display:none}.kh-source-card__advanced[open] summary svg{transform:rotate(90deg)}.kh-source-card__advanced>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-bottom:12px;display:grid}.kh-source-card__foot{border-top:1px solid var(--kh-line);min-height:43px;color:var(--kh-dim);justify-content:space-between;align-items:center;padding:8px 17px;font-size:8px;display:flex}.kh-source-card__foot span{align-items:center;gap:6px;display:flex}.kh-source-card__foot button{color:var(--kh-dim);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;font-size:9px;display:flex}.kh-source-card__foot button:hover{color:var(--kh-bad)}.kh-config-card{margin-top:14px;overflow:hidden}.kh-config-card:first-child{margin-top:22px}.kh-config-card__head{border-bottom:1px solid var(--kh-line);grid-template-columns:42px 1fr auto;align-items:center;gap:13px;min-height:85px;padding:16px 18px;display:grid}.kh-config-card__head>div>span{color:var(--kh-muted);margin-top:6px;font-size:9px;display:block}.kh-config-card__icon{border:1px solid #64d6df30;border:1px solid color-mix(in srgb, var(--kh-cyan) 19%, transparent);width:42px;height:42px;color:var(--kh-cyan);background:#64d6df0e;background:color-mix(in srgb, var(--kh-cyan) 5.5%, transparent);border-radius:11px;place-items:center;display:grid}.kh-config-card--schedule{background:linear-gradient(90deg, #64d6df06, transparent 38%), var(--kh-panel);background:linear-gradient(90deg, color-mix(in srgb, var(--kh-cyan) 2.5%, transparent), transparent 38%), var(--kh-panel)}.kh-config-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kh-config-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}.kh-config-grid--five{grid-template-columns:repeat(5,minmax(0,1fr))}.kh-config-grid--model{grid-template-columns:minmax(220px,1.4fr) minmax(160px,.8fr) minmax(110px,.45fr)}.kh-config-grid--model .kh-field--wide:last-child{grid-column:1/-1}.kh-config-card--model{background:linear-gradient(90deg, #64d6df06, transparent 46%), var(--kh-panel);background:linear-gradient(90deg, color-mix(in srgb, var(--kh-cyan) 2.5%, transparent), transparent 46%), var(--kh-panel)}.kh-model-secret button{width:28px;height:28px;color:var(--kh-dim);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;place-items:center;display:grid}.kh-model-secret button:hover{color:var(--kh-cyan);background:#64d6df0f;background:color-mix(in srgb, var(--kh-cyan) 6%, transparent)}.kh-config-card__status{border:1px solid #55d69a24;border:1px solid color-mix(in srgb, var(--kh-good) 14%, transparent);background:#55d69a0a;background:color-mix(in srgb, var(--kh-good) 4%, transparent);min-height:36px;color:var(--kh-good);border-radius:8px;align-items:center;gap:8px;margin:0 18px 17px;padding:8px 11px;font-size:9px;display:flex}.kh-config-card__status span{color:var(--kh-good-dim)}.kh-config-card__status strong{color:var(--kh-good)}.kh-automation__split{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.kh-integration-state{min-height:34px;color:var(--kh-dim);align-items:center;gap:10px;margin:0 18px 14px;font-size:8px;display:flex}.kh-integration-state code,.kh-secret-box code{color:var(--kh-muted);font-family:Consolas,monospace;font-size:8px}.kh-secret-box{border-top:1px dashed var(--kh-line-strong);color:var(--kh-good);align-items:flex-start;gap:9px;margin:0 18px 17px;padding-top:13px;display:flex}.kh-secret-box strong,.kh-secret-box span{display:block}.kh-secret-box strong{font-size:9px}.kh-secret-box span{color:var(--kh-dim);margin-top:4px;font-size:8px}.kh-security-bar{border:1px solid #55d69a2b;border:1px solid color-mix(in srgb, var(--kh-good) 17%, transparent);min-height:66px;color:var(--kh-good);background:linear-gradient(90deg,#55d69a0e,#55d69a04);background:linear-gradient(90deg, color-mix(in srgb, var(--kh-good) 5.5%, transparent), color-mix(in srgb, var(--kh-good) 1.5%, transparent));border-radius:11px;grid-template-columns:24px 1fr auto;align-items:center;gap:11px;margin-top:14px;padding:13px 16px;display:grid}.kh-security-bar strong,.kh-security-bar span{display:block}.kh-security-bar strong{font-size:10px}.kh-security-bar span{color:var(--kh-good-dim);margin-top:4px;font-size:8px}.kh-security-bar a{color:var(--kh-good);align-items:center;gap:5px;font-size:9px;text-decoration:none;display:flex}.kh-security-bar a:hover{color:var(--kh-good)}.kh-savebar{z-index:20;border:1px solid #ff654652;border:1px solid color-mix(in srgb, var(--kh-hot) 32%, transparent);background:var(--kh-surface-solid);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:13px;align-items:center;gap:9px;width:min(680px,100vw - 286px);min-height:62px;padding:10px 12px 10px 16px;animation:.28s both kh-savebar;display:flex;position:fixed;bottom:22px;left:calc(246px + 50%);transform:translate(-50%);box-shadow:0 20px 60px #00000073,inset 0 1px #ffffff0a}.kh-savebar>div{grid-template-columns:8px auto;align-items:center;column-gap:8px;min-width:0;margin-right:auto;display:grid}.kh-savebar__dot{background:var(--kh-hot);border-radius:50%;grid-row:1/span 2;width:7px;height:7px;box-shadow:0 0 9px #ff6546a6}.kh-savebar strong{font-size:10px}.kh-savebar small{color:var(--kh-dim);margin-top:3px;font-size:8px}.kh-login{background:var(--kh-bg-bottom);grid-template-columns:minmax(0,1.15fr) minmax(430px,.85fr);min-height:100vh;display:grid;position:relative;overflow:hidden}.kh-login:before{content:"";border:1px solid #64d6df21;border-radius:50%;width:680px;height:680px;position:absolute;bottom:-420px;left:-320px;box-shadow:0 0 140px #64d6df0b}.kh-login__grid{opacity:.28;background-image:linear-gradient(#64d6df0f 1px,#0000 1px),linear-gradient(90deg,#64d6df0f 1px,#0000 1px);background-size:54px 54px;position:absolute;inset:0 43% 0 0;-webkit-mask-image:linear-gradient(90deg,#000,#0000 92%);mask-image:linear-gradient(90deg,#000,#0000 92%)}.kh-login__story{z-index:1;flex-direction:column;min-height:100vh;padding:clamp(30px,5vw,70px);display:flex;position:relative}.kh-brand--login{padding:0}.kh-login__headline{max-width:640px;margin:auto 0}.kh-login__headline p,.kh-login__panel form>p{color:var(--kh-cyan);font-family:var(--kh-display);letter-spacing:.22em;margin:0 0 18px;font-size:9px}.kh-login__headline h1{font-family:var(--kh-display);letter-spacing:-.035em;background:linear-gradient(135deg,#f5f8fb 20%,#9aabbc 90%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(48px,6.2vw,86px);font-weight:570;line-height:.98}.kh-login__headline>span{color:var(--kh-muted);max-width:470px;margin-top:26px;font-size:13px;line-height:1.8;display:block}.kh-login__signals{color:var(--kh-dim);align-items:center;gap:26px;font-size:10px;display:flex}.kh-login__signals span{align-items:center;gap:7px;display:flex}.kh-login__signals i{background:var(--kh-good);border-radius:50%;width:5px;height:5px;box-shadow:0 0 8px #55d69a99}.kh-login__panel{border:1px solid var(--kh-line);background:radial-gradient(circle at 100% 0%, #ff65460e, transparent 32%), var(--kh-surface-solid);z-index:2;border-radius:18px;place-items:center;margin:16px;display:grid;position:relative}.kh-login__panel form{width:min(360px,100% - 48px)}.kh-login__lock{width:46px;height:46px;color:var(--kh-hot-text);background:#ff654612;border:1px solid #ff654645;border-radius:12px;place-items:center;margin-bottom:30px;display:grid}.kh-login__panel form>p{color:var(--kh-hot-text);margin-bottom:9px}.kh-login__panel h2{font-family:var(--kh-display);margin:0;font-size:27px;font-weight:620}.kh-login__hint{color:var(--kh-muted);margin-top:10px;font-size:11px;line-height:1.7;display:block}.kh-field--token{margin-top:32px}.kh-field--token>div{height:47px}.kh-field--token input{height:45px}.kh-field--token button{color:var(--kh-dim);cursor:pointer;background:0 0;border:0;place-items:center;padding:6px;display:grid}.kh-login__error{color:var(--kh-bad-bright);border:1px solid #ff718238;border:1px solid color-mix(in srgb, var(--kh-bad) 22%, transparent);background:#ff71820e;background:color-mix(in srgb, var(--kh-bad) 5.5%, transparent);border-radius:8px;align-items:center;gap:7px;min-height:37px;margin-top:12px;padding:8px 10px;font-size:10px;display:flex}.kh-login__submit{background:linear-gradient(135deg, var(--kh-hot), var(--kh-hot-2));width:100%;height:46px;color:var(--kh-ink);cursor:pointer;border:0;border-radius:9px;grid-template-columns:19px 1fr 19px;align-items:center;gap:8px;margin-top:16px;padding:0 14px;font-size:12px;font-weight:700;display:grid;box-shadow:0 12px 30px #ff65462e}.kh-login__submit:disabled{opacity:.5;cursor:not-allowed}.kh-login__privacy{color:var(--kh-dim);align-items:flex-start;gap:7px;margin-top:17px;font-size:8px;line-height:1.6;display:flex}.kh-login__privacy svg{color:var(--kh-good);flex:none}.kh-mono{letter-spacing:.035em;font-family:Consolas,monospace!important}.kh-spin{animation:.75s linear infinite kh-spin}@keyframes kh-spin{to{transform:rotate(360deg)}}@keyframes kh-pulse{50%{opacity:.35;box-shadow:0 0 2px}}@keyframes kh-enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes kh-savebar{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.kh-login[data-theme=light] .kh-login__headline h1{background:linear-gradient(135deg,#1c2532 20%,#64758a 90%);-webkit-background-clip:text;background-clip:text}.kh-admin[data-theme=light] .kh-savebar{box-shadow:0 20px 60px #17213338,inset 0 1px #ffffffb3}.kh-theme-toggle{color:var(--kh-dim);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:7px;padding:0;font-size:11px;display:inline-flex}.kh-sidebar__foot__actions{align-items:center;gap:16px;margin-top:24px;display:flex}.kh-sidebar__foot__actions .kh-theme-toggle:hover{color:var(--kh-cyan)}.kh-theme-toggle--login{z-index:3;border:1px solid var(--kh-line);background:var(--kh-hover);border-radius:9px;width:34px;height:34px;position:absolute;top:16px;right:16px}.kh-theme-toggle--login:hover{color:var(--kh-cyan);border-color:#64d6df73;border-color:color-mix(in srgb, var(--kh-cyan) 45%, transparent)}.kh-theme-toggle--header{display:none}@media (width<=1180px){.kh-admin{grid-template-columns:210px minmax(0,1fr)}.kh-savebar{width:min(680px,100vw - 250px);left:calc(210px + 50%)}.kh-operating-strip{grid-template-columns:minmax(170px,1.2fr) repeat(2,minmax(120px,1fr)) auto}.kh-operating-strip>div:nth-child(4){display:none}.kh-operating-strip>div:nth-child(3){border-right:0}.kh-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.kh-pipeline{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px 0}.kh-pipeline__step:nth-child(3) .kh-pipeline__arrow{display:none}.kh-report-preview__list{grid-template-columns:repeat(3,minmax(0,1fr))}.kh-report-preview__list a:nth-child(3){border-right:0}.kh-report-preview__list a:nth-child(n+4){border-top:1px solid var(--kh-line)}.kh-source-card__fields{grid-template-columns:repeat(3,minmax(0,1fr))}.kh-source-card__fields .kh-field--wide{grid-column:1/-1}.kh-config-grid--five{grid-template-columns:repeat(3,minmax(0,1fr))}.kh-login{grid-template-columns:minmax(0,1fr) minmax(390px,.8fr)}}@media (width<=900px){.kh-admin{display:block}.kh-theme-toggle--header{border:1px solid var(--kh-line-strong);background:var(--kh-hover);min-height:38px;color:var(--kh-muted);border-radius:9px;padding:0 12px;display:inline-flex}.kh-theme-toggle--header:hover{color:var(--kh-copy)}.kh-sidebar{border-right:0;border-bottom:1px solid var(--kh-line);flex-direction:row;align-items:center;width:100%;height:auto;min-height:auto;padding:12px 18px}.kh-brand__mark{border-radius:10px 10px 10px 4px;width:36px;height:36px}.kh-brand strong{font-size:16px}.kh-brand small{display:none}.kh-nav{gap:4px;margin:0 0 0 auto;display:flex}.kh-nav:before{display:none}.kh-nav button{grid-template-columns:20px auto auto;width:auto;min-height:38px;padding:0 10px}.kh-nav button.is-active:before{width:auto;height:2px;inset:auto 10px -12px}.kh-sidebar__foot{display:none}.kh-main{padding:24px 22px 110px}.kh-header{align-items:center}.kh-header>div:first-child>span{max-width:360px}.kh-sync-state{display:none}.kh-overview__grid{grid-template-columns:1fr}.kh-operating-strip{grid-template-columns:minmax(170px,1.2fr) minmax(120px,1fr) auto}.kh-operating-strip>div:nth-child(3){display:none}.kh-operating-strip>div:nth-child(2){border-right:0}.kh-automation__split{grid-template-columns:1fr}.kh-config-grid--four,.kh-config-grid--five,.kh-config-grid--model{grid-template-columns:repeat(2,minmax(0,1fr))}.kh-config-grid--model .kh-field--wide:last-child{grid-column:1/-1}.kh-savebar{width:calc(100vw - 32px);left:50%}.kh-login{grid-template-columns:1fr;min-height:100vh}.kh-login__story{min-height:330px;padding:30px}.kh-login__headline{margin:auto 0 20px}.kh-login__headline h1{font-size:50px}.kh-login__headline>span,.kh-login__signals{display:none}.kh-login__panel{min-height:490px;margin:0 12px 12px}.kh-login__grid{inset:0}}@media (width<=640px){.kh-sidebar{padding:10px 12px;overflow-x:auto}.kh-brand{padding:0}.kh-brand__mark{width:34px;height:34px}.kh-brand>div:last-child{display:none}.kh-nav button{padding:0 9px}.kh-nav button span,.kh-nav button b{display:none}.kh-main{padding:19px 14px 120px}.kh-header{display:block}.kh-header>div:first-child>span{font-size:10px}.kh-header__actions{margin-top:17px}.kh-header__actions .kh-button{flex:1}.kh-operating-strip{grid-template-columns:1fr auto;min-height:65px;padding:9px 12px}.kh-operating-strip>div{border-right:0;padding:0 10px 0 0}.kh-operating-strip>div:nth-child(2){display:none}.kh-radar{width:30px;height:30px}.kh-metrics{grid-template-columns:1fr 1fr;gap:9px}.kh-metric{padding:13px}.kh-metric>strong{font-size:18px}.kh-pipeline{grid-template-columns:1fr;gap:0;padding:12px 16px}.kh-pipeline__step{min-height:53px}.kh-pipeline__arrow{position:absolute;top:40px;left:10px;transform:rotate(90deg)}.kh-pipeline__step:nth-child(3) .kh-pipeline__arrow{display:block}.kh-run-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.kh-report-preview__list{display:block}.kh-report-preview__list a{border-right:0;border-top:1px solid var(--kh-line);min-height:96px}.kh-report-preview__list a:first-child{border-top:0}.kh-source-summary{grid-template-columns:1fr auto}.kh-source-summary p{grid-area:2/1/auto/-1}.kh-source-card__head{grid-template-columns:25px minmax(0,1fr) auto;gap:8px;padding:11px 13px}.kh-source-card__head .kh-status{display:none}.kh-source-card__fields{grid-template-columns:repeat(2,minmax(0,1fr));padding:13px}.kh-source-card__advanced{margin:0 13px 13px}.kh-source-card__advanced>div{grid-template-columns:1fr}.kh-source-card__foot{padding:8px 13px}.kh-source-card__foot>span{display:none}.kh-source-card__foot{justify-content:flex-end}.kh-config-card__head{grid-template-columns:38px 1fr auto;padding:14px}.kh-config-card__icon{width:38px;height:38px}.kh-config-card__head>div>span{display:none}.kh-config-grid,.kh-config-grid--four,.kh-config-grid--five,.kh-config-grid--model{grid-template-columns:1fr;padding:14px}.kh-config-grid--model .kh-field--wide:last-child{grid-column:auto}.kh-integration-state{flex-direction:column;align-items:flex-start}.kh-integration-state code{word-break:break-all}.kh-security-bar{grid-template-columns:22px 1fr}.kh-security-bar a{grid-column:2}.kh-savebar{min-height:58px;padding:8px;bottom:12px}.kh-savebar>div{display:none}.kh-savebar .kh-button{flex:1}.kh-login__story{min-height:255px;padding:23px}.kh-login__headline p{margin-bottom:12px}.kh-login__headline h1{font-size:39px}.kh-login__panel{min-height:455px}.kh-login__panel form{width:calc(100% - 36px)}}@media (prefers-reduced-motion:reduce){.kh-admin *,.kh-login *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.public-site{--public-ink:#102a2a;--public-paper:#faf9f5;--public-canvas:#f2f0ea;--public-teal:#087d84;--public-teal-soft:#dcecee;--public-coral:#e45b2d;--public-line:#dedbd2;--public-muted:#687774;min-height:100vh;color:var(--public-ink);background:var(--public-paper)}.public-header{z-index:20;border-bottom:1px solid var(--public-line);background:#faf9f5f7;position:relative}.public-header__inner{grid-template-columns:minmax(210px,1fr) auto minmax(210px,1fr);align-items:center;max-width:1440px;height:68px;margin:0 auto;padding:0 40px;display:grid}.public-brand{width:max-content;color:var(--public-ink);letter-spacing:.04em;align-items:center;font:700 26px/1 Noto Serif SC,serif;text-decoration:none;display:inline-flex}.public-brand svg{width:28px;height:28px;color:var(--public-teal);stroke-width:1.35px;margin:0 1px}.desktop-nav{align-items:center;gap:44px;height:100%;display:flex}.desktop-nav a{color:#253a39;align-items:center;height:100%;font:600 15px Noto Serif SC,serif;text-decoration:none;display:inline-flex;position:relative}.desktop-nav a:after{content:"";background:var(--public-teal);height:3px;transition:left .2s,right .2s;position:absolute;bottom:0;left:50%;right:50%}.desktop-nav a:hover:after,.desktop-nav a[aria-current=page]:after{left:0;right:0}.update-note{color:var(--public-muted);justify-self:end;align-items:center;gap:7px;font-size:12px;display:inline-flex}.mobile-menu-button,.mobile-menu,.mobile-bottom-nav,.mobile-title,.mobile-update,.mobile-link{display:none}.public-hero{border-bottom:1px solid var(--public-line);background:var(--public-paper);min-height:250px;position:relative;overflow:hidden}.public-hero__map{object-fit:cover;object-position:right center;pointer-events:none;width:64%;height:100%;position:absolute;inset:0 0 0 auto}.public-hero__content{z-index:1;max-width:1440px;margin:0 auto;padding:35px 40px 28px;position:relative}.section-kicker{color:var(--public-teal);letter-spacing:.17em;margin:0 0 10px;font:500 10px/1.3 DM Mono,monospace}.public-hero h1{color:#0b2940;letter-spacing:.01em;max-width:790px;margin:0;font:700 clamp(38px,3.55vw,54px)/1.2 Noto Serif SC,serif}.public-hero__summary{color:#4e5f5e;max-width:640px;margin:13px 0 16px;font-size:16px;line-height:1.7}.public-hero__meta{color:#3d4d4c;align-items:center;gap:12px;font:500 12px DM Mono,monospace;display:flex}.public-hero__meta i,.article-meta i{background:#82908d;border-radius:50%;width:3px;height:3px}.public-main,.subpage-shell{max-width:1360px;margin:0 auto;padding:0 40px}.feed-toolbar{border-bottom:1px solid var(--public-line);grid-template-columns:auto 1fr auto;align-items:center;gap:35px;min-height:76px;display:grid}.feed-toolbar .section-kicker{margin-bottom:5px}.feed-toolbar h2{white-space:nowrap;margin:0;font:700 27px Noto Serif SC,serif}.category-tabs{scrollbar-width:none;align-items:center;gap:9px;min-width:0;display:flex;overflow-x:auto}.category-tabs::-webkit-scrollbar{display:none}.category-tabs button{color:#4d5c59;background:0 0;border:1px solid #ddd9d0;border-radius:18px;flex:none;height:34px;padding:0 17px;font-size:12px}.category-tabs button:hover{border-color:var(--public-teal);color:var(--public-teal)}.category-tabs button[aria-selected=true]{border-color:var(--public-teal);color:#fff;background:var(--public-teal)}.archive-link,.article-link{color:var(--public-teal);align-items:center;gap:6px;font-weight:600;text-decoration:none;display:inline-flex}.archive-link{white-space:nowrap;font-size:13px}.archive-link:hover,.article-link:hover{color:var(--public-coral)}.filter-result{height:0;color:var(--public-muted);font-size:11px;overflow:hidden}.article-feed{border-bottom:1px solid var(--public-line)}.public-article{border-bottom:1px solid var(--public-line);grid-template-columns:68px minmax(0,1fr) auto;align-items:start;gap:18px;min-height:124px;padding:21px 20px 18px 10px;display:grid;position:relative}.public-article--featured{grid-template-columns:82px minmax(0,1fr) auto;min-height:146px;padding-top:18px;padding-bottom:17px}.article-rank{color:var(--public-teal);letter-spacing:0;font:600 25px/1 Noto Serif SC,serif}.public-article--featured .article-rank{color:var(--public-coral);font-size:46px}.article-meta{color:#667774;white-space:nowrap;align-items:center;gap:9px;min-width:0;font:500 10px DM Mono,monospace;display:flex}.article-meta span{color:var(--public-teal);font-weight:700}.article-meta b{text-overflow:ellipsis;min-width:0;font:inherit;color:#23767a;overflow:hidden}.public-article h3{color:#102f48;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:7px 0 5px;font:700 17px/1.42 Noto Serif SC,serif;display:-webkit-box;overflow:hidden}.public-article--featured h3{margin-top:8px;font-size:24px;line-height:1.35}.public-article p{color:#71807d;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:11px;line-height:1.65;display:-webkit-box;overflow:hidden}.public-article--featured p{max-width:850px;font-size:12px}.article-link{white-space:nowrap;align-self:center;margin-left:12px;font-size:12px}.article-grid{grid-template-columns:1fr 1fr;display:grid}.article-grid .public-article{min-height:112px;padding-top:14px;padding-bottom:13px}.article-grid .public-article p{-webkit-line-clamp:1}.article-grid .public-article:nth-child(odd){border-right:1px solid var(--public-line)}.article-grid--even .public-article:nth-last-child(-n+2){border-bottom:0}.article-grid--odd .public-article:last-child{border-bottom:0;border-right:0;grid-column:1/-1}.subpage-shell{padding-top:54px}.subpage-heading{border-bottom:1px solid var(--public-line);padding:0 0 42px;position:relative}.subpage-heading h1{color:#102f48;max-width:880px;margin:0;font:700 clamp(40px,5vw,66px)/1.25 Noto Serif SC,serif}.subpage-heading>p:last-child{max-width:700px;color:var(--public-muted);margin:15px 0 0;line-height:1.8}.archive-layout{grid-template-columns:250px minmax(0,1fr);gap:36px;padding-top:30px;display:grid}.archive-dates{border-right:1px solid var(--public-line);padding-right:25px}.archive-dates h2{margin:0 0 14px;font:700 16px Noto Serif SC,serif}.archive-dates button{color:#51615e;text-align:left;background:0 0;border:0;border-radius:8px;grid-template-columns:22px 1fr;align-items:center;gap:2px 8px;width:100%;padding:13px 12px;display:grid}.archive-dates button svg{grid-row:1/3}.archive-dates button small{color:#8d9996;font:9px DM Mono,monospace}.archive-dates button:hover,.archive-dates button.active{color:var(--public-teal);background:#e9f1ef}.archive-report__heading{border-bottom:1px solid var(--public-line);min-height:65px;color:var(--public-muted);justify-content:space-between;align-items:flex-start;font-size:12px;display:flex}.archive-report__heading h2{color:var(--public-ink);margin:4px 0 0;font:700 23px Noto Serif SC,serif}.source-directory{grid-template-columns:1fr 1fr;gap:14px;padding-top:30px;display:grid}.source-directory article{border:1px solid var(--public-line);background:#fdfcf9;border-radius:10px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:16px;min-height:112px;padding:20px;display:grid}.source-avatar{width:48px;height:48px;color:var(--public-coral);background:#f5ede6;border-radius:50%;place-items:center;font:500 13px DM Mono,monospace;display:grid}.source-directory h2{margin:0 0 5px;font:700 16px Noto Serif SC,serif}.source-directory p{color:var(--public-muted);margin:0;font-size:11px}.source-directory article>svg{color:var(--public-teal)}.source-note{border-left:3px solid var(--public-teal);color:#52635f;background:#eef3ef;align-items:flex-start;gap:10px;margin-top:20px;padding:16px 18px;display:flex}.source-note p{margin:0;font-size:12px;line-height:1.7}.about-page .subpage-heading{min-height:310px}.about-grid{grid-template-columns:repeat(3,1fr);gap:16px;padding-top:30px;display:grid}.about-grid article{border:1px solid var(--public-line);background:#fdfcf9;min-height:230px;padding:28px;position:relative}.about-grid svg{color:var(--public-teal)}.about-grid span{color:var(--public-coral);font:500 13px DM Mono,monospace;position:absolute;top:25px;right:25px}.about-grid h2{margin:44px 0 10px;font:700 22px Noto Serif SC,serif}.about-grid p{color:var(--public-muted);margin:0;font-size:13px;line-height:1.8}.public-footer{border-top:1px solid var(--public-line);max-width:1360px;min-height:45px;color:var(--public-muted);grid-template-columns:auto 1fr auto;align-items:center;gap:28px;margin:0 auto;padding:0 40px;display:grid}.public-footer .public-brand{font-size:18px}.public-footer .public-brand svg{width:20px;height:20px}.public-footer p{font-size:11px}.public-footer>span{font:10px DM Mono,monospace}.loading-state,.empty-state{min-height:420px;color:var(--public-muted);place-content:center;justify-items:center;gap:10px;display:grid}.loading-state span{border:2px solid #cbd6d3;border-top-color:var(--public-teal);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite public-spin}.loading-state p,.empty-state p{margin:0;font-size:12px}.empty-state svg{color:var(--public-teal)}.empty-state h2{margin:2px 0;font:700 22px Noto Serif SC,serif}.inline-error{color:#a84426;background:#fff1eb;border:1px solid #edb49e;margin:14px 0;padding:12px;font-size:12px}@keyframes public-spin{to{transform:rotate(360deg)}}@media (width<=980px){.public-header__inner{grid-template-columns:1fr auto;padding:0 24px}.desktop-nav,.update-note{display:none}.mobile-menu-button{width:40px;height:40px;color:var(--public-ink);background:0 0;border:0;place-items:center;display:grid}.mobile-menu{border-top:1px solid var(--public-line);background:var(--public-paper);padding:8px 24px 18px;display:grid}.mobile-menu a{color:var(--public-ink);border-bottom:1px solid #e9e6df;padding:12px 0;text-decoration:none}.mobile-menu a[aria-current=page]{color:var(--public-teal)}.public-hero__map{opacity:.72;width:76%}.public-hero__content,.public-main,.subpage-shell{padding-left:24px;padding-right:24px}.feed-toolbar{grid-template-columns:auto 1fr}.archive-link{display:none}.article-grid{grid-template-columns:1fr}.article-grid .public-article:nth-child(odd){border-right:0}.article-grid .public-article:nth-last-child(2){border-bottom:1px solid var(--public-line)}.article-grid--odd .public-article:last-child{grid-column:auto}.archive-layout{grid-template-columns:190px 1fr;gap:22px}}@media (width<=640px){.public-site{padding-bottom:60px}.public-header__inner{height:52px;padding:0 16px}.public-brand{font-size:21px}.public-brand svg{width:23px;height:23px}.mobile-menu{padding-left:16px;padding-right:16px}.public-hero{min-height:210px}.public-hero__map{opacity:.67;object-position:right top;width:114%;height:158px;inset:4px -34% auto auto}.public-hero__content{padding:29px 16px 18px}.public-hero .section-kicker,.desktop-title{display:none}.mobile-title{display:inline}.public-hero h1{max-width:285px;font-size:34px;line-height:1.28}.public-hero__summary{display:none}.public-hero__meta{gap:8px;margin-top:11px;font-size:10px}.mobile-update{color:var(--public-muted);margin-top:8px;font-size:10px;display:block}.public-main{padding:0}.feed-toolbar{z-index:10;background:#faf9f5f7;min-height:54px;padding:9px 16px 7px;display:block;position:sticky;top:0}.feed-toolbar>div:first-child{display:none}.category-tabs{gap:8px}.category-tabs button{border-radius:19px;height:34px;padding:0 16px}.filter-result{border-bottom:1px solid var(--public-line);height:auto;padding:6px 16px}.article-feed{border-bottom:0}.public-article,.public-article--featured{grid-template-columns:50px minmax(0,1fr);gap:8px;min-height:0;padding:13px 16px 12px}.article-rank,.public-article--featured .article-rank{color:var(--public-teal);font-size:24px}.public-article--featured .article-rank{color:var(--public-coral);font-size:34px}.article-meta{gap:6px;font-size:8px}.article-meta b{max-width:140px}.public-article .article-body{min-width:0;padding-right:38px}.public-article h3,.public-article--featured h3{-webkit-line-clamp:2;margin:5px 0 3px;font-size:15.5px;line-height:1.4}.public-article p,.public-article--featured p{-webkit-line-clamp:1;margin-top:2px;font-size:9.5px;line-height:1.4}.article-link{margin:0;font-size:10px;position:absolute;bottom:13px;right:16px}.desktop-link{display:none}.mobile-link{display:inline}.article-grid{display:block}.article-grid .public-article{min-height:0}.subpage-shell{padding:38px 16px 45px}.subpage-heading{padding-bottom:28px}.subpage-heading h1{font-size:40px}.archive-layout{padding-top:18px;display:block}.archive-dates{border-right:0;border-bottom:1px solid var(--public-line);gap:8px;padding:0 0 14px;display:flex;overflow-x:auto}.archive-dates h2{display:none}.archive-dates button{min-width:145px}.archive-report{padding-top:18px}.archive-report .public-article{padding-left:0;padding-right:0}.source-directory{grid-template-columns:1fr}.source-directory article{grid-template-columns:42px minmax(0,1fr) auto;padding:16px}.source-avatar{width:42px;height:42px}.about-page .subpage-heading{min-height:0}.about-grid{grid-template-columns:1fr}.about-grid article{min-height:190px}.public-footer{display:none}.mobile-bottom-nav{z-index:40;border-top:1px solid var(--public-line);background:#faf9f5fa;grid-template-columns:repeat(4,1fr);height:60px;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-bottom-nav a{color:#667572;place-content:center;justify-items:center;gap:3px;font-size:10px;text-decoration:none;display:grid}.mobile-bottom-nav svg{width:18px;height:18px}.mobile-bottom-nav a[aria-current=page]{color:var(--public-teal)}}@media (prefers-reduced-motion:reduce){.desktop-nav a:after{transition:none}.loading-state span{animation-duration:1.8s}}:root{color:#102a2a;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#faf9f5;font-family:Noto Sans SC,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px;min-height:100%}body{background:#faf9f5;min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%}#root{min-height:100vh}:focus-visible{outline-offset:3px;outline:3px solid #087d8440}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
