:root{--font-sans: "InterVariable", Inter, ui-sans-serif, system-ui, sans-serif;--font-display: "Stack Sans Notch", "Arial Narrow", sans-serif;--bg: #777777;--panel: #f1f1ef;--panel-soft: #faf8f4;--ink: #181818;--muted: #5f5f5f;--line: rgba(24, 24, 24, .1);--line-strong: rgba(24, 24, 24, .16);--black: #181818;--white: #ffffff;--orange: #eda25d;--orange-strong: #de8a3d;--pink: #cb56a2;--pink-strong: #ad3f87;--shadow: 0 24px 80px rgba(18, 18, 18, .14);font-family:var(--font-sans);color:var(--ink);background:radial-gradient(circle at top right,rgba(237,162,93,.42),transparent 24rem),radial-gradient(circle at left 20%,rgba(203,86,162,.18),transparent 28rem),var(--bg)}@view-transition{navigation:auto}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{font-family:var(--font-sans)}body.site-shell.site-hub{background:radial-gradient(circle at top right,rgba(237,162,93,.42),transparent 24rem),radial-gradient(circle at left 20%,rgba(203,86,162,.18),transparent 28rem),var(--bg)!important}a{color:inherit;text-decoration:none}button,input{font:inherit}.hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-shell{min-height:100vh;padding:12px}.site-frame{max-width:1720px;margin:0 auto}.stack-lg{display:grid;gap:18px}.stack-md{display:grid;gap:14px}.stack-sm{display:grid;gap:10px}.site-header-shell{display:none;gap:18px}.search-control{display:inline-flex}.utility-bar{position:sticky;top:10px;z-index:40;width:fit-content;max-width:100%}.compact-toolbar-shell{position:relative;display:inline-grid;gap:10px;max-width:100%}.compact-toolbar{display:inline-flex;align-items:center;gap:4px;padding:4px;border-radius:24px;background:#18181829;backdrop-filter:blur(20px);box-shadow:var(--shadow);max-width:100%;view-transition-name:utility-toolbar}.floating-actions{position:fixed;right:max(18px,calc(env(safe-area-inset-right,0px) + 18px));bottom:max(18px,calc(env(safe-area-inset-bottom,0px) + 18px));z-index:46;display:grid;gap:10px}.floating-action-button{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border:0;border-radius:18px;background:#181818e6;color:var(--white);box-shadow:0 18px 48px #12121238;backdrop-filter:blur(18px);cursor:pointer;transition:transform .22s cubic-bezier(.22,1,.36,1),background-color .18s ease}.floating-action-button.is-visible{transform:translateY(0)}.floating-action-button:hover{background:#181818fa;transform:translateY(-1px)}.floating-action-button-icon{width:21px;height:21px;stroke-width:2.2}.floating-action-button-share.is-confirmed{background:#181818}::view-transition-group(utility-toolbar){animation-duration:.32s;animation-timing-function:cubic-bezier(.22,1,.36,1);z-index:60}::view-transition-old(utility-toolbar),::view-transition-new(utility-toolbar){height:100%}.compact-brand-chip,.toolbar-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:0;border-radius:14px;box-shadow:inset 0 0 0 1px #ffffff14;transition:.18s ease}.compact-brand-chip{padding:0 20px;background:var(--black);color:var(--white);font-size:.95rem;font-weight:700;letter-spacing:-.01em;white-space:nowrap}.compact-brand-chip:hover,.toolbar-button:hover,.toolbar-link:hover,.locale-option:hover{transform:translateY(-1px)}.toolbar-button{min-width:42px;padding:0;background:var(--black);color:var(--white);cursor:pointer}.toolbar-button-accent{background:var(--orange);color:var(--black)}.toolbar-plus-icon{width:18px;height:18px;stroke-width:2.4}.locale-dropdown{position:relative}.locale-toggle{min-width:62px;padding:0 12px;gap:8px;font-family:var(--font-display);letter-spacing:.04em}.locale-code,.locale-option-code{font-size:.82rem}.locale-caret-icon{width:14px;height:14px;opacity:.75;stroke-width:2.4}.toolbar-search-button .toolbar-search-icon{width:18px;height:18px;stroke-width:2.2}.toolbar-tools-button{background:var(--orange);color:var(--black);text-decoration:none}.toolbar-tools-button:hover,.toolbar-tools-button:focus-visible{background:var(--white);color:var(--black);outline:none}.toolbar-tools-button.active{background:var(--black);color:var(--orange);box-shadow:inset 0 0 0 1px #ffffff1f}.toolbar-tools-icon{width:18px;height:18px;stroke-width:2.2}.toolbar-panel,.locale-panel{position:absolute;top:calc(100% + 10px);border:1px solid rgba(255,255,255,.08);border-radius:24px;background:#181818f5;color:var(--white);box-shadow:var(--shadow);backdrop-filter:blur(20px)}.toolbar-panel{left:0;width:min(360px,calc(100vw - 24px));padding:14px}.locale-panel{right:0;width:min(220px,calc(100vw - 24px));padding:12px}.panel-eyebrow{margin:0;color:#ffffff9e;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.toolbar-links,.locale-options{display:grid;gap:8px}.toolbar-links+.toolbar-links{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}.toolbar-link,.locale-option{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:46px;padding:0 14px;border-radius:16px;background:#ffffff0f;color:var(--white);transition:.18s ease}.toolbar-link{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em}.toolbar-link-secondary{background:#ffffff0a}.toolbar-link.active,.locale-option.active{background:var(--white);color:var(--black)}.locale-option span:first-child{font-weight:600}.locale-option[aria-disabled=true]{opacity:.42;pointer-events:none}.utility-row{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:10px;border:1px solid rgba(255,255,255,.16);border-radius:24px;background:#18181838;backdrop-filter:blur(20px);box-shadow:var(--shadow)}.brand-chip,.nav-pill,.search-button,.switcher-link,.ticker-pill,.domain-pill,.card-link,.action-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 18px;border-radius:999px;border:1px solid transparent;transition:.18s ease}.brand-chip,.search-button,.nav-pill.active,.card-link,.action-button{background:var(--black);color:var(--white)}.brand-chip,.nav-pill,.search-button,.switcher-link,.card-link,.action-button{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em}.brand-chip:hover,.nav-pill:hover,.search-button:hover,.switcher-link:hover,.ticker-pill:hover,.card-link:hover,.action-button:hover{transform:translateY(-1px)}.nav-pills,.utility-actions,.switcher,.switcher-list,.tag-row,.meta-row,.post-meta{display:flex;flex-wrap:wrap;gap:8px}.nav-pill,.switcher-link,.search-button{background:var(--white);border-color:#ffffff2e;color:var(--black)}.nav-pill.active{border-color:#ffffff2e}.switcher{align-items:center}.switcher-label{color:#ffffffc7;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.switcher-link{min-height:38px;padding:0 14px}.switcher-link.active{background:var(--orange);color:var(--black)}.switcher-link[aria-disabled=true]{opacity:.48;pointer-events:none}.brand-stage,.hero-card,.card,.sidebar-card,.meta-card,.toc-card,.note-card,.article-main,.footer-cta,.footer-card{border:1px solid var(--line);border-radius:36px;box-shadow:var(--shadow)}.brand-stage{position:relative;overflow:hidden;padding:clamp(24px,4vw,42px);background:radial-gradient(circle at top right,rgba(237,162,93,.3),transparent 16rem),linear-gradient(180deg,#232323,#161616);color:var(--white)}.brand-stage:before,.brand-stage:after{content:"";position:absolute;inset:auto auto 8% -4%;width:16rem;height:16rem;border-radius:50%;background:#cb56a224;filter:blur(10px);pointer-events:none}.brand-stage:after{inset:8% -4% auto auto;background:#eda25d2e}.brand-stage-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.9fr);gap:18px;z-index:1}.wordmark{display:inline-flex;flex-wrap:wrap;gap:.24em;align-items:baseline;font-family:var(--font-display);font-size:clamp(2.2rem,7vw,6rem);font-weight:700;letter-spacing:-.05em;line-height:.88;text-transform:uppercase}.wordmark-primary{color:inherit}.wordmark-secondary{color:#ffffffc7}.stage-wordmark,.footer-wordmark{display:inline-flex;width:auto;max-width:min(100%,44rem)}.stage-wordmark{margin-top:6px}.stage-subtitle{margin:10px 0 0;font-size:1.15rem;font-weight:700;color:#ffffffe0}.stage-copy .domain-pill{margin-bottom:16px}.stage-stack{display:grid;gap:10px;align-content:start}.stage-story{display:grid;gap:4px;padding:18px;border-radius:24px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08)}.stage-story strong{font-size:1.05rem}.stage-story span{color:#ffffffbd;font-size:.95rem}.ticker-row{position:relative;z-index:1;display:flex;gap:8px;margin-top:18px;overflow-x:auto;padding-bottom:4px}.ticker-pill{flex:0 0 auto;background:var(--white);color:var(--black)}.domain-pill{background:#ffffff1f;color:var(--white);border:1px solid rgba(255,255,255,.12);width:fit-content}.domain-pill.subtle,.tag.subtle{min-height:32px;padding:0 12px;background:#ffffff1f;color:inherit;border:1px solid rgba(255,255,255,.1)}.eyebrow{margin:0;font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.lede{max-width:64ch;margin:0;font-size:1rem;line-height:1.65;color:var(--muted)}.lede-invert{color:#ffffffc7}.hero-card{padding:26px 28px;background:linear-gradient(180deg,#f7f3ec,#ece6db)}.hero-card h1,.section-header h2,.card h3,.article-cover h1,.footer-cta h2,.footer-card h3{margin:0;font-family:var(--font-display);text-transform:uppercase;line-height:.96}.hero-card h1{font-size:clamp(2rem,5vw,3.8rem)}.tech-home-top{display:grid;gap:14px}.tech-home-stage{position:relative;overflow:hidden;padding:clamp(22px,4vw,30px);border:1px solid var(--line);border-radius:36px;box-shadow:var(--shadow);background:radial-gradient(circle at top right,rgba(237,162,93,.28),transparent 16rem),linear-gradient(180deg,#232323,#161616);color:var(--white)}.tech-home-stage:before,.tech-home-stage:after{content:"";position:absolute;border-radius:50%;filter:blur(10px)}.tech-home-stage:before{inset:auto auto -8% -3%;width:14rem;height:14rem;background:#cb56a22e}.tech-home-stage:after{inset:8% -3% auto auto;width:12rem;height:12rem;background:#eda25d29}.tech-home-stage-copy{position:relative;z-index:1;display:grid;gap:6px;align-content:start}.tech-home-stage-shell,.hub-home-stage-shell{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.hub-home-stage-title{margin:0}.hub-home-stage{padding:18px 22px}.hub-home-link-row{display:flex;flex-wrap:wrap;gap:10px 12px}.hub-home-simple-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:34px;padding:0 14px;border-radius:999px;background:#181818eb;color:var(--white);font-family:var(--font-display);font-size:.82rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;transition:background .18s ease,color .18s ease,transform .18s ease;user-select:none}.hub-home-simple-link:hover{background:var(--white);color:var(--black);transform:translateY(-1px)}.hub-home-simple-link-icon{width:15px;height:15px;flex:0 0 auto}.hub-home-simple-link-tools{background:linear-gradient(135deg,var(--orange) 0%,var(--orange-strong) 100%);color:var(--black)}.hub-home-simple-link-tools:hover{background:var(--white);color:var(--black)}.stage-rss-link{position:relative;z-index:1;display:inline-flex;align-items:center;gap:10px;flex:0 0 auto;min-height:40px;padding:0 14px;border-radius:999px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:var(--white);font-family:var(--font-display);font-size:.84rem;letter-spacing:.04em;text-transform:uppercase;transition:transform .18s ease,background .18s ease,border-color .18s ease}.stage-rss-link:hover{transform:translateY(-1px);background:#ffffff24;border-color:#ffffff38}.stage-rss-icon{width:1rem;height:1rem}.tool-directory-stage{padding:clamp(22px,4vw,32px)}.tool-directory-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}.tool-directory-card{grid-column:span 4;display:grid;gap:18px;align-content:space-between;min-height:260px;padding:22px;border:1px solid var(--line);border-radius:30px;background:radial-gradient(circle at top right,rgba(237,162,93,.14),transparent 14rem),linear-gradient(180deg,#faf8f4f5,#f1ede7fa);box-shadow:var(--shadow);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.tool-directory-card:hover{transform:translateY(-2px);border-color:#1818182e;box-shadow:0 26px 64px #12121229}.tool-directory-card-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.tool-directory-card h2,.tool-page-header h1{margin:0;font-family:var(--font-display);text-transform:uppercase;line-height:.98}.tool-directory-card h2{font-size:clamp(1.5rem,3vw,2.4rem)}.tool-directory-slug{color:var(--muted);font-family:var(--font-display);font-size:.82rem;letter-spacing:.04em}.tool-directory-description{margin:0;color:var(--muted);line-height:1.7}.tool-directory-cta{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-height:40px;padding:0 16px;border-radius:999px;background:var(--black);color:var(--white);font-family:var(--font-display);font-size:.9rem;letter-spacing:.02em}.tool-page-shell{display:grid;gap:0}.tool-embed-shell{display:grid}.tool-runtime-root{min-height:min(82vh,1180px);padding:0;border:1px solid var(--line);border-radius:36px;overflow:hidden;box-shadow:var(--shadow);background:radial-gradient(circle at top right,rgba(237,162,93,.16),transparent 20rem),radial-gradient(circle at left 18%,rgba(203,86,162,.08),transparent 22rem),linear-gradient(180deg,#faf8f4fa,#f6f2ecf5)}.tool-runtime-root>.min-h-screen,.tool-runtime-root .bg-slate-50{background:radial-gradient(circle at top right,rgba(237,162,93,.1),transparent 18rem),radial-gradient(circle at left 16%,rgba(203,86,162,.06),transparent 20rem),#f9f7f3f5!important}.tool-runtime-root>.min-h-screen{min-height:inherit}.tool-runtime-root[data-tool-slug=concentration-line-studio]{min-height:720px}.tool-runtime-placeholder{display:grid;place-items:center;min-height:inherit;padding:24px}.tool-runtime-loading{font-family:var(--font-display);font-size:clamp(1rem,2vw,1.35rem);text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.tool-runtime-error{display:grid;place-items:center;min-height:inherit;padding:24px;color:var(--muted);font-family:var(--font-display);font-size:clamp(1rem,2vw,1.3rem);text-transform:uppercase;letter-spacing:.03em}.tool-page{display:grid;gap:32px}.tool-page-header{position:relative;overflow:hidden;padding:clamp(28px,4vw,48px) clamp(24px,4vw,52px);border:1px solid var(--line);border-radius:36px;box-shadow:var(--shadow);background:radial-gradient(circle at top right,rgba(237,162,93,.22),transparent 18rem),radial-gradient(circle at left 14%,rgba(203,86,162,.12),transparent 22rem),linear-gradient(180deg,#faf8f4fa,#f6f2ecf5)}.tool-page-header>*{position:relative;z-index:1}.tool-page-header .eyebrow{color:var(--muted)}.tool-page-title{font-family:var(--font-display);font-size:clamp(2rem,4vw,3.2rem);font-weight:700;line-height:1.08;letter-spacing:-.01em;margin:0;color:var(--ink)}.tool-page-tagline{color:var(--muted);max-width:60ch;margin:0}.tool-page-header-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.tool-tour-button{display:inline-flex;align-items:center;gap:10px;padding:10px 18px;border-radius:999px;border:1px solid var(--line);background:#ffffffd9;color:var(--ink);font:inherit;font-weight:600;line-height:1;cursor:pointer;box-shadow:0 1px 2px #14100a14;transition:transform .12s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}.tool-tour-button:hover,.tool-tour-button:focus-visible{background:#fff;border-color:#14100a3d;box-shadow:0 6px 14px #14100a1f;transform:translateY(-1px);outline:none}.tool-tour-button:focus-visible{outline:2px solid rgba(237,162,93,.9);outline-offset:3px}.tool-tour-button-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;background:linear-gradient(135deg,#eda25df2,#e97b4cf2);color:#fff;font-size:.82rem;font-weight:700}.tool-tour-button-svg{width:14px;height:14px}.tool-tour-button-label{font-size:.95rem}.tool-tour-button-secondary .tool-tour-button-icon{background:#1818180f;color:var(--ink);border:1px solid var(--line)}.tool-tour-button-secondary:hover .tool-tour-button-icon,.tool-tour-button-secondary:focus-visible .tool-tour-button-icon{background:#1818181a}.tool-toast{position:fixed;bottom:32px;left:50%;transform:translate(-50%,12px);z-index:200;pointer-events:none;padding:12px 20px;border-radius:999px;background:#18140eeb;color:#faf8f4;font-size:.92rem;font-weight:600;letter-spacing:.01em;box-shadow:0 14px 32px #14100a47;opacity:0;transition:opacity .18s ease,transform .22s ease}.tool-toast.is-visible{opacity:1;transform:translate(-50%)}.tool-toast[data-tone=error]{background:#a82424f2}@media(prefers-reduced-motion:reduce){.tool-toast{transition:opacity .18s ease;transform:translate(-50%)}}.driver-popover.driver-popover{border-radius:28px;border:1px solid var(--line);box-shadow:0 18px 42px #14100a3d;background:radial-gradient(circle at top right,rgba(237,162,93,.16),transparent 14rem),linear-gradient(180deg,#faf8f4fa,#f6f2ecf5);color:var(--ink);padding:24px 26px}.driver-popover.driver-popover .driver-popover-title{font-family:var(--font-display);font-size:1.15rem;font-weight:700;color:var(--ink);margin-bottom:8px}.driver-popover.driver-popover .driver-popover-description{color:var(--muted);line-height:1.6}.driver-popover.driver-popover .driver-popover-footer{margin-top:16px;gap:8px}.driver-popover.driver-popover .driver-popover-footer button{border-radius:999px;border:1px solid var(--line);background:#ffffffeb;color:var(--ink);padding:8px 18px;font-weight:600;text-shadow:none;box-shadow:0 1px 2px #14100a0f;transition:background-color .15s ease,border-color .15s ease,transform .15s ease}.driver-popover.driver-popover .driver-popover-footer button:hover{background:#fff;border-color:#14100a47;transform:translateY(-1px)}.driver-popover.driver-popover .driver-popover-next-btn{background:var(--orange);border-color:transparent;color:var(--ink)}.driver-popover.driver-popover .driver-popover-next-btn:hover{background:var(--orange-strong);border-color:transparent}.driver-popover.driver-popover .driver-popover-progress-text{color:var(--muted);font-weight:600}.driver-popover.driver-popover .driver-popover-close-btn{color:var(--muted);width:28px;height:28px;border-radius:999px;top:12px;right:12px}.driver-popover.driver-popover .driver-popover-close-btn:hover{background:#14100a14;color:var(--ink)}.driver-popover.driver-popover .driver-popover-arrow{border-color:transparent}.driver-popover.driver-popover.driver-popover-side-left .driver-popover-arrow{border-left-color:#f6f2ecfa}.driver-popover.driver-popover.driver-popover-side-right .driver-popover-arrow{border-right-color:#faf8f4fa}.driver-popover.driver-popover.driver-popover-side-top .driver-popover-arrow{border-top-color:#f6f2ecfa}.driver-popover.driver-popover.driver-popover-side-bottom .driver-popover-arrow{border-bottom-color:#faf8f4fa}@media(max-width:720px){.tool-page-header{border-radius:26px;padding:22px 20px}.tool-page-title{font-size:clamp(1.7rem,6vw,2.4rem)}}.tool-about{display:grid;gap:40px;padding:40px clamp(20px,4vw,48px);border:1px solid var(--line);border-radius:32px;background:#faf8f4e6;box-shadow:var(--shadow)}.tool-about>header h2{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.2rem);margin:0}.tool-about-description{max-width:72ch;color:var(--muted)}.tool-about-section h3{font-family:var(--font-display);font-size:clamp(1.2rem,2.4vw,1.6rem);margin:0 0 16px}.tool-about-feature-list{list-style:none;padding:0;margin:0;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.tool-about-feature{display:grid;gap:8px;padding:20px;border:1px solid var(--line);border-radius:20px;background:var(--white)}.tool-about-feature strong{font-family:var(--font-display);font-size:1.1rem}.tool-about-feature span{color:var(--muted);line-height:1.6}.tool-about-use-cases{list-style:disc;padding-left:1.2em;margin:0;display:grid;gap:8px;color:var(--muted);line-height:1.7;max-width:72ch}.tool-about-howto{list-style:decimal;padding-left:1.4em;margin:0;display:grid;gap:16px;max-width:72ch}.tool-about-howto li{display:grid;gap:4px}.tool-about-howto strong{font-family:var(--font-display)}.tool-about-howto span{color:var(--muted);line-height:1.6}.tool-about-faq{margin:0;display:grid;gap:16px;max-width:72ch}.tool-about-faq-item{display:grid;gap:6px;padding:16px 20px;border-left:3px solid var(--line);background:#fff9;border-radius:0 16px 16px 0}.tool-about-faq-item dt{font-family:var(--font-display);font-weight:600}.tool-about-faq-item dd{margin:0;color:var(--muted);line-height:1.7}.tool-about-body{max-width:72ch;line-height:1.75}.tool-about-body h2,.tool-about-body h3{font-family:var(--font-display);margin-top:1.2em}.tool-about-body p{color:var(--muted)}.tool-about-body ul,.tool-about-body ol{color:var(--muted);line-height:1.7}.tool-about-empty{color:var(--muted)}.tool-onboarding-dialog{border:none;padding:0;background:transparent;color:var(--ink);max-width:min(560px,calc(100vw - 32px));width:100%;inset:0;margin:auto}.tool-onboarding-dialog::backdrop{background:#12121294;backdrop-filter:blur(4px)}.tool-onboarding-card{position:relative;overflow:hidden;padding:clamp(24px,4vw,36px);border:1px solid var(--line);border-radius:32px;box-shadow:var(--shadow);background:radial-gradient(circle at top right,rgba(237,162,93,.22),transparent 18rem),radial-gradient(circle at left 14%,rgba(203,86,162,.12),transparent 22rem),linear-gradient(180deg,#faf8f4fa,#f6f2ecf5)}.tool-onboarding-headline{font-family:var(--font-display);font-size:clamp(1.35rem,3.2vw,1.85rem);font-weight:700;line-height:1.2;margin:0;color:var(--ink)}.tool-onboarding-bullets{list-style:none;padding:0;margin:0;display:grid;gap:12px}.tool-onboarding-bullets li{position:relative;padding:14px 18px 14px 44px;border-radius:18px;background:var(--white);border:1px solid var(--line);color:var(--ink);line-height:1.55}.tool-onboarding-bullets li:before{content:"";position:absolute;left:18px;top:50%;width:12px;height:12px;border-radius:50%;background:var(--orange);transform:translateY(-50%);box-shadow:0 0 0 4px #eda25d2e}.tool-onboarding-hint{margin:0;color:var(--muted);font-size:.9rem;line-height:1.6}.tool-onboarding-actions{display:flex;justify-content:flex-end}.tool-onboarding-dismiss{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 24px;border-radius:999px;border:1px solid transparent;background:var(--black);color:var(--white);font-family:var(--font-display);font-size:.9rem;font-weight:700;letter-spacing:.04em;cursor:pointer;transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease}.tool-onboarding-dismiss:hover{background:var(--white);color:var(--black);border-color:var(--line-strong);transform:translateY(-1px)}@media(max-width:540px){.tool-onboarding-card{border-radius:24px}.tool-onboarding-bullets li{padding:12px 16px 12px 40px}}.tech-home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pagination-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;padding-top:6px}.pagination-pages{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.pagination-link{display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--line-strong);background:#ffffffdb;color:var(--ink);font-family:var(--font-display);font-size:.96rem;font-weight:700;letter-spacing:-.02em;transition:transform .18s ease,border-color .18s ease,background-color .18s ease}.pagination-link:hover{transform:translateY(-1px);border-color:#1818184d}.pagination-link.is-current{background:var(--ink);color:var(--white);border-color:transparent}.pagination-link.is-disabled{opacity:.38;pointer-events:none}.pagination-arrow{min-width:92px}.tech-home-card{display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:14px;align-items:stretch;padding:16px;border:1px solid var(--line);border-radius:28px;background:var(--panel-soft);box-shadow:var(--shadow);transition:.18s ease}.tech-home-card:hover{transform:translateY(-1px)}.tech-home-card-media{position:relative;overflow:hidden;isolation:isolate;min-height:170px;border-radius:22px;background:radial-gradient(circle at top right,rgba(255,255,255,.12),transparent 10rem),linear-gradient(135deg,#171717,#454545)}.tech-home-card-media[data-tone=astro-content]{background:radial-gradient(circle at top right,rgba(255,255,255,.12),transparent 10rem),linear-gradient(135deg,#171717,#454545)}.tech-home-card-media[data-tone=cloudflare]{background:radial-gradient(circle at top right,rgba(255,255,255,.18),transparent 10rem),linear-gradient(135deg,#b75f1f,#eda25d)}.tech-home-card-media[data-tone=monorepo]{background:radial-gradient(circle at top right,rgba(255,255,255,.14),transparent 10rem),linear-gradient(135deg,#6e3b74,#cb56a2)}.tech-home-card-media[data-tone=i18n]{background:radial-gradient(circle at top right,rgba(255,255,255,.14),transparent 10rem),linear-gradient(135deg,#6f2f6d,#cb56a2)}.tech-home-card-media.with-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#18181829,#1818186b),linear-gradient(135deg,#1818181f,#1818184d)}.tech-home-card-media.with-image[data-thumbnail-tone=light]:after{background:linear-gradient(180deg,#18181842,#18181894),linear-gradient(135deg,#18181833,#18181870)}.tech-home-card-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.tech-home-card-copy{display:grid;gap:10px;align-content:start}.tech-home-card-meta{gap:8px;min-height:30px;flex-wrap:wrap}.tech-home-card-title{margin:0;font-family:var(--font-display);font-size:clamp(1.45rem,2.4vw,2.2rem);line-height:1;text-transform:uppercase}.tech-home-card-description{margin:0;color:var(--muted);line-height:1.65}.tech-home-section-copy{margin:-4px 2px 2px;max-width:64ch;color:var(--muted);line-height:1.7}.tech-front-grid,.tech-bottom-grid{display:grid;gap:16px}.tech-front-grid{grid-template-columns:minmax(0,1.45fr) minmax(320px,.78fr);align-items:start}.tech-bottom-grid{grid-template-columns:minmax(0,1fr) minmax(300px,360px);align-items:start}.tech-spotlight-card,.tech-side-card,.tech-ranking-card{border:1px solid var(--line);border-radius:36px;box-shadow:var(--shadow)}.tech-spotlight-card{display:grid;gap:16px;padding:18px;background:var(--panel-soft)}.tech-spotlight-media{position:relative;overflow:hidden;isolation:isolate;min-height:360px;border-radius:28px;aspect-ratio:16 / 10;background:radial-gradient(circle at top right,rgba(255,255,255,.12),transparent 12rem),linear-gradient(135deg,#171717,#454545)}.tech-spotlight-media[data-tone=astro-content]{background:radial-gradient(circle at top right,rgba(255,255,255,.12),transparent 12rem),linear-gradient(135deg,#171717,#454545)}.tech-spotlight-media[data-tone=cloudflare]{background:radial-gradient(circle at top right,rgba(255,255,255,.2),transparent 10rem),linear-gradient(135deg,#b75f1f,#eda25d)}.tech-spotlight-media[data-tone=monorepo]{background:radial-gradient(circle at top right,rgba(255,255,255,.16),transparent 10rem),linear-gradient(135deg,#6e3b74,#cb56a2)}.tech-spotlight-media[data-tone=i18n]{background:radial-gradient(circle at top right,rgba(255,255,255,.14),transparent 10rem),linear-gradient(135deg,#6f2f6d,#cb56a2)}.tech-spotlight-media.with-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#18181800 0% 30%,#18181899 50%,#181818f5 65%,#181818 75%)}.tech-spotlight-media.with-image[data-thumbnail-tone=light]:after{background:linear-gradient(180deg,#18181800,#1818180d 25%,#181818a6 48%,#181818f7 62%,#181818 72%)}.tech-spotlight-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.tech-spotlight-copy{display:grid;gap:10px;padding:2px 8px 6px}.tech-spotlight-meta{gap:12px}.tech-spotlight-title{margin:0;font-family:var(--font-display);font-size:clamp(2.1rem,4.3vw,4.2rem);line-height:.96;text-transform:uppercase}.tech-side-stack{display:grid;gap:16px}.tech-side-card,.tech-ranking-card{display:grid;gap:14px;padding:22px;background:linear-gradient(180deg,#f7f3ec,#ece6db)}.tech-side-card-accent{background:radial-gradient(circle at top right,rgba(255,255,255,.18),transparent 10rem),linear-gradient(135deg,#b75f1f,#eda25d);color:var(--white)}.tech-side-title{display:block;font-family:var(--font-display);font-size:1.32rem;line-height:1;text-transform:uppercase}.tech-side-body{margin:0;line-height:1.6}.tech-quick-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.tech-quick-link{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;padding:14px;border-radius:20px;background:#ffffff9e;border:1px solid rgba(24,24,24,.08);transition:.18s ease}.tech-quick-link:hover{transform:translateY(-1px);border-color:#18181829}.tech-quick-rank{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;min-height:2rem;border-radius:999px;background:var(--black);color:var(--white);font-family:var(--font-display);font-size:.92rem}.tech-quick-copy{display:grid;gap:4px}.tech-quick-kicker{color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.tech-quick-headline{font-weight:700;line-height:1.42}.tech-side-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:18px;background:#181818e0;color:var(--white);font-family:var(--font-display);letter-spacing:.02em;transition:.18s ease}.tech-side-cta:hover{transform:translateY(-1px);background:#181818f5}.section-header{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:10px;padding:0 2px}.meta-copy{color:var(--muted);font-family:var(--font-display);text-transform:uppercase}.post-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}.post-grid-hub .grid-item{grid-column:span 3}.grid-item{grid-column:span 4;display:flex}.grid-item.featured{grid-column:span 8}.card{display:grid;overflow:hidden;background:var(--panel-soft)}.card-surface-link{color:inherit;width:100%;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.card-surface-link:hover{transform:translateY(-2px);box-shadow:0 26px 64px #12121229}.card.featured{min-height:100%}.card-media{position:relative;display:flex;overflow:hidden;isolation:isolate;min-height:220px;flex-direction:column;justify-content:space-between;gap:18px;padding:22px;color:var(--white);aspect-ratio:16 / 9}.card-media.with-image,.card-hub .card-media{justify-content:flex-end;gap:10px;padding:18px 20px}.card-media-copy{width:100%;min-width:0;max-width:min(100%,88%)}.card.featured .card-media{min-height:320px}.card-media>*{position:relative;z-index:1}.card-media-image,.sidebar-feature-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}.article-cover-image{grid-area:image;width:clamp(96px,14vw,160px);height:clamp(96px,14vw,160px);object-fit:cover;border-radius:18px}.card-media-image-overlay{position:absolute;inset:0;z-index:1;border-radius:inherit;pointer-events:none;background:linear-gradient(180deg,#18181800,#1818181a 25%,#18181833 50% 25%,#18181899 70%,#181818 90%)}[data-thumbnail-tone=light]>.card-media-image-overlay{background:linear-gradient(180deg,#18181800,#18181805 18%,#1818188c 38%,#181818f2 52%,#181818 62%)}[data-thumbnail-tone=light][data-thumbnail-overlay-level="2"]>.card-media-image-overlay{background:linear-gradient(180deg,#18181800,#1818180d 15%,#18181899 35%,#181818f7 48%,#181818 58%)}[data-thumbnail-tone=light][data-thumbnail-overlay-level="3"]>.card-media-image-overlay{background:linear-gradient(180deg,#12121200,#12121214 12%,#121212a6 32%,#121212fa 45%,#121212 55%)}.sidebar-feature-media.with-image:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,#18181842,#181818bd),linear-gradient(135deg,#1818182e,#18181880)}.sidebar-feature-media.with-image[data-thumbnail-tone=light]:after{background:linear-gradient(180deg,#18181857,#181818d6),linear-gradient(135deg,#1818183d,#18181894)}.card-media.with-image[data-thumbnail-tone=light] .card-media-copy{max-width:min(100%,88%)}.card-media[data-tone=astro-content],.sidebar-feature-media[data-tone=astro-content]{background:radial-gradient(circle at top right,rgba(255,255,255,.12),transparent 12rem),linear-gradient(135deg,#171717,#454545)}.card-media[data-tone=cloudflare],.sidebar-feature-media[data-tone=cloudflare]{background:radial-gradient(circle at top right,rgba(255,255,255,.2),transparent 10rem),linear-gradient(135deg,#b75f1f,#eda25d)}.card-media[data-tone=monorepo],.sidebar-feature-media[data-tone=monorepo]{background:radial-gradient(circle at top right,rgba(255,255,255,.16),transparent 10rem),linear-gradient(135deg,#6e3b74,#cb56a2)}.card-media[data-tone=i18n],.sidebar-feature-media[data-tone=i18n]{background:radial-gradient(circle at top right,rgba(255,255,255,.14),transparent 10rem),linear-gradient(135deg,#6f2f6d,#cb56a2)}.card h3{font-size:clamp(1.3rem,2.4vw,2rem);line-height:1.25}.card-title{margin:0;overflow-wrap:anywhere;text-shadow:0 2px 12px rgba(0,0,0,.6)}.card-hub .card-media-copy{max-width:100%}.card-hub .card-title{font-size:clamp(1.04rem,1.2vw + .76rem,1.55rem);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;line-clamp:3;min-height:3.45em;line-height:1.15}.card-content{padding:8px}.card-hub .card-content{display:grid;align-content:start;gap:12px}.card-description,.search-result-description{color:var(--muted);line-height:1.6}p.card-description{margin-top:2px;margin-bottom:4px}.card-hub .card-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;line-clamp:3;min-height:4.9em}.card-kicker-badge,.card-meta-badge{display:inline-flex;align-items:center;justify-content:center;width:fit-content;max-width:100%;min-height:32px;padding:0 12px;border-radius:999px;background:#181818eb;color:var(--white);font-family:var(--font-display);font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;user-select:none;white-space:nowrap}.card-meta-badges{align-items:center;gap:8px;min-height:30px}.card-meta-badge{min-height:30px;font-size:.78rem}.card-kicker-badge{justify-self:start}.meta-link,.author-link{color:inherit;transition:.18s ease}.meta-link:hover,.author-link:hover{color:var(--orange-strong)}.tag{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;background:#18181814;font-family:var(--font-display);font-size:.85rem;text-transform:uppercase;letter-spacing:.04em}.taxonomy-grid,.author-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}.taxonomy-card,.author-card{border:1px solid var(--line);border-radius:36px;box-shadow:var(--shadow)}.taxonomy-card{grid-column:span 4;display:grid;gap:16px;min-height:220px;padding:24px;background:linear-gradient(180deg,#f7f3ec,#ece6db)}.taxonomy-card[data-tone=astro-content]{background:radial-gradient(circle at top right,rgba(255,255,255,.14),transparent 12rem),linear-gradient(135deg,#171717,#454545);color:var(--white)}.taxonomy-card[data-tone=cloudflare]{background:radial-gradient(circle at top right,rgba(255,255,255,.2),transparent 10rem),linear-gradient(135deg,#b75f1f,#eda25d);color:var(--white)}.taxonomy-card[data-tone=monorepo]{background:radial-gradient(circle at top right,rgba(255,255,255,.16),transparent 10rem),linear-gradient(135deg,#6e3b74,#cb56a2);color:var(--white)}.taxonomy-card[data-tone=i18n]{background:radial-gradient(circle at top right,rgba(255,255,255,.14),transparent 10rem),linear-gradient(135deg,#6f2f6d,#cb56a2);color:var(--white)}.taxonomy-card h3,.author-card h3{margin:0;font-family:var(--font-display);text-transform:uppercase;line-height:.98}.taxonomy-count{align-self:end;width:fit-content;min-height:34px;padding:0 12px;border-radius:999px;background:#ffffff24;border:1px solid rgba(255,255,255,.12);font-family:var(--font-display)}.author-grid-item{grid-column:span 6}.author-card{display:grid;gap:18px;padding:24px;background:var(--panel-soft)}.author-card-header{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:start}.author-avatar{width:86px;height:86px;border-radius:24px;border:1px solid var(--line);object-fit:cover;background:linear-gradient(135deg,#18181814,#18181824)}.author-avatar-fallback{display:grid;place-items:center;color:var(--ink);font-family:var(--font-display);font-size:2rem}.author-meta-row{display:flex;flex-wrap:wrap;gap:8px}.author-role,.author-bio{margin:0;color:var(--muted);line-height:1.6}.meta-row,.post-meta{color:var(--muted);font-size:.92rem}.article-grid{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1120px);justify-content:start;align-items:start;gap:22px}.article-grid.no-sidebar{grid-template-columns:minmax(0,1180px)}.article-grid.sidebar-right{grid-template-columns:minmax(0,1120px) minmax(300px,360px)}.article-sidebar{display:grid;gap:16px;align-self:stretch;align-content:start}.article-sidebar-stack{position:sticky;top:86px;display:grid;gap:16px}.article-grid.sidebar-right .article-sidebar{order:2}.article-grid.sidebar-right .article-main{order:1}.meta-card,.article-main{background:var(--panel-soft)}.meta-card{padding:22px}.fallback-card p{margin:0;color:var(--muted);line-height:1.6}.toc-card{display:grid;gap:14px;padding:22px;background:var(--panel-soft);overflow:hidden}.toc-scroll{max-height:min(56vh,calc(100vh - 240px));overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding-right:8px;padding-block:2px;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:rgba(24,24,24,.88) transparent}.toc-scroll::-webkit-scrollbar{width:8px}.toc-scroll::-webkit-scrollbar-track{background:transparent}.toc-scroll::-webkit-scrollbar-thumb{border-radius:999px;background:#181818e0;border:2px solid transparent;background-clip:padding-box}.sidebar-card{display:grid;gap:14px;padding:22px;background:linear-gradient(180deg,#f7f3ec,#ece6db);overflow:hidden}.sidebar-card-accent{background:radial-gradient(circle at top right,rgba(255,255,255,.18),transparent 10rem),linear-gradient(135deg,#b75f1f,#eda25d);color:var(--white)}.sidebar-feature-card{gap:16px}.sidebar-feature-link{display:grid;gap:14px;color:inherit}.sidebar-feature-media{position:relative;overflow:hidden;min-height:196px;border-radius:28px;background:radial-gradient(circle at top right,rgba(255,255,255,.12),transparent 12rem),linear-gradient(135deg,#171717,#454545);aspect-ratio:4 / 3}.sidebar-feature-copy{display:grid;gap:8px}.sidebar-feature-meta{color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.sidebar-feature-title{font-size:1.35rem;line-height:1.02}.sidebar-card-title{display:block;font-family:var(--font-display);font-size:1.3rem;line-height:1;text-transform:uppercase}.sidebar-card-body{margin:0;line-height:1.65}.sidebar-story-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.sidebar-story-link{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;padding:14px;border-radius:20px;background:#ffffff9e;border:1px solid rgba(24,24,24,.08);transition:.18s ease}.sidebar-story-link:hover{transform:translateY(-1px);border-color:#18181829}.sidebar-story-rank{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;min-height:2rem;border-radius:999px;background:var(--black);color:var(--white);font-family:var(--font-display);font-size:.92rem}.sidebar-story-copy{display:grid;gap:6px}.sidebar-story-title{font-weight:700;line-height:1.42}.sidebar-story-meta{color:var(--muted);font-size:.88rem}.sidebar-link-list{display:grid;gap:10px}.sidebar-topic-row{display:flex;flex-wrap:wrap;gap:8px}.sidebar-topic-pill{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;background:#ffffff29;border:1px solid rgba(255,255,255,.18);color:inherit;font-family:var(--font-display);font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;transition:.18s ease}.sidebar-topic-pill:hover{transform:translateY(-1px);background:#ffffff38}.sidebar-cta-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:18px;background:#181818e0;color:var(--white);font-family:var(--font-display);letter-spacing:.02em;transition:.18s ease}.sidebar-cta-link:hover{transform:translateY(-1px);background:#181818f5}.meta-list{display:grid;gap:14px;margin:20px 0 0}.meta-list dt{font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.meta-list dd{margin:4px 0 0;font-size:1rem}.article-main{width:100%;max-width:1120px;padding:18px;display:grid;gap:16px}.article-cover{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"image header" "lede  lede";align-items:center;gap:12px 20px;padding:0;color:var(--text)}.article-cover:not(.with-image){grid-template-columns:1fr;grid-template-areas:"header" "lede"}.article-cover-header{grid-area:header;display:grid;gap:6px;min-width:0}.article-cover>.lede{grid-area:lede;color:inherit;margin:0}.article-cover h1{font-size:clamp(1.5rem,2.8vw,2.4rem);color:inherit}@media(max-width:540px){.article-cover{grid-template-columns:1fr;grid-template-areas:"image" "header" "lede"}.article-cover-image{width:clamp(96px,30vw,140px);height:clamp(96px,30vw,140px);justify-self:start}}.speech-widget{position:relative;border:1px solid var(--line);border-radius:28px;background:#f1f1efeb;box-shadow:0 18px 52px #12121214;backdrop-filter:blur(18px);padding:18px 20px}.speech-widget-shell{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px}.speech-widget-toggle,.speech-widget-settings-toggle{display:inline-flex;align-items:center;justify-content:center;border:0;color:var(--white);cursor:pointer;transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease}.speech-widget-toggle{width:58px;height:58px;border-radius:999px;background:linear-gradient(180deg,#5b94ff,#2a6fe9);box-shadow:inset 0 0 0 5px #ffffff29,0 14px 34px #2a6fe947}.speech-widget-settings-toggle{width:48px;height:48px;border-radius:18px;background:#181818eb;box-shadow:0 12px 26px #12121229}.speech-widget-toggle:hover,.speech-widget-settings-toggle:hover{transform:translateY(-1px)}.speech-widget-toggle:disabled,.speech-widget-settings-toggle:disabled{opacity:.48;cursor:not-allowed;transform:none}.speech-widget-primary-icon,.speech-widget-settings-icon{width:22px;height:22px;stroke-width:2.2}.speech-widget-progress{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-width:0}.speech-widget-time{min-width:3.4rem;color:var(--ink);font-family:var(--font-display);font-size:.92rem;letter-spacing:.01em;text-align:center}.speech-widget-seek{width:100%;margin:0;accent-color:#2a6fe9}.speech-widget-seek::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:#1818181f}.speech-widget-seek::-moz-range-track{height:6px;border-radius:999px;background:#1818181f}.speech-widget-seek::-webkit-slider-thumb{margin-top:-6px;width:18px;height:18px;border:0;border-radius:999px;background:#2a6fe9;box-shadow:0 6px 18px #2a6fe94d;-webkit-appearance:none}.speech-widget-seek::-moz-range-thumb{width:18px;height:18px;border:0;border-radius:999px;background:#2a6fe9;box-shadow:0 6px 18px #2a6fe94d}.speech-widget-settings{position:relative}.speech-widget-settings-panel{position:absolute;right:0;top:calc(100% + 12px);z-index:12;min-width:260px;display:grid;gap:12px;padding:16px;border:1px solid var(--line);border-radius:24px;background:#faf8f4fa;box-shadow:0 24px 64px #12121229}.speech-widget-settings-panel[hidden]{display:none!important}.speech-widget-setting{display:grid;gap:6px}.speech-widget-setting-label{color:var(--muted);font-family:var(--font-display);font-size:.82rem;letter-spacing:.06em;text-transform:uppercase}.speech-widget-select{width:100%;min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:16px;background:var(--panel);color:var(--ink)}.speech-widget-status{margin:12px 0 0;padding:10px 14px;border-radius:16px;background:#1818180f;color:var(--muted);font-size:.92rem;line-height:1.6}.speech-widget[data-state=unsupported] .speech-widget-shell{opacity:.58}.locale-ja .card h3,.locale-ja .tech-home-card-title,.locale-ja .taxonomy-card h3,.locale-ja .author-card h3,.locale-ja .article-cover h1,.locale-ja .tech-spotlight-title,.locale-ja .search-result-title{text-transform:none;line-height:1.14}.action-button{border:0;cursor:pointer}.prose-panel{padding:24px;border:1px solid var(--line);border-radius:28px;background:var(--panel)}.prose-panel :is(h2,h3,h4){scroll-margin-top:92px}.prose-panel p{margin:0;line-height:1.75}.prose-panel a{color:#1456c7;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:#1456c773;transition:color .14s ease,text-decoration-color .14s ease}.prose-panel a:hover{color:#0b3f96;text-decoration-color:currentColor}.prose-panel a:visited{color:#6a3db3;text-decoration-color:#6a3db373}.prose-panel a:focus-visible{outline:2px solid #1456c7;outline-offset:3px;border-radius:3px}.prose-panel thead th a,.prose-panel thead th a:visited{color:#fff;text-decoration-color:#fff9}.prose-panel thead th a:hover{color:#fff;text-decoration-color:#fff}.prose-panel h2,.prose-panel h3{margin:0;font-family:var(--font-display);line-height:1.08}.prose-panel h2{font-size:clamp(1.6rem,3vw,2.3rem)}.prose-panel h3{font-size:clamp(1.2rem,2vw,1.55rem)}.prose-panel :is(strong,b){font-family:inherit;font-size:inherit;font-weight:800;letter-spacing:0;color:inherit}.prose-panel code{font-family:inherit;font-size:.98em;font-weight:800;letter-spacing:0;color:inherit;background:transparent;border:0;padding:0}.prose-panel pre.astro-code{position:relative;border-radius:24px;border:1px solid rgba(15,23,42,.08);padding:1.5rem;margin:1.25rem 0;overflow-x:auto;box-shadow:0 1px 2px #0f172a0a;font-size:.95rem;line-height:1.65}.prose-panel pre.astro-code>code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-weight:500;font-size:inherit}.code-copy-btn{position:absolute;top:.75rem;right:.75rem;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:#ffffff14;color:#ffffffd9;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,color .14s ease,transform .12s ease;z-index:1}.code-copy-btn:hover{background:#ffffff24;color:#fff}.code-copy-btn:active{transform:scale(.96)}.code-copy-btn:focus-visible{outline:2px solid #d97757;outline-offset:2px}.code-copy-btn .code-copy-icon-check{display:none;color:#86bd8a}.code-copy-btn[data-copied=true]{background:#86bd8a2e;border-color:#86bd8a73}.code-copy-btn[data-copied=true] .code-copy-icon-copy{display:none}.code-copy-btn[data-copied=true] .code-copy-icon-check{display:block}.code-copy-icon{width:18px;height:18px;flex-shrink:0}@media(max-width:520px){.code-copy-btn{width:36px;height:36px;border-radius:12px}}@media(prefers-reduced-motion:reduce){.code-copy-btn{transition:none}}.prose-panel ul,.prose-panel ol{margin:0;padding-left:1.25rem;line-height:1.7}.prose-panel ul.contains-task-list{list-style:none;padding-left:0}.prose-panel ul.contains-task-list .contains-task-list{padding-left:1.25rem}.prose-panel .task-list-item{display:flex;align-items:baseline;gap:.6em}.prose-panel .task-list-item::marker{content:""}.prose-panel .task-list-item input[type=checkbox]{margin:0;flex-shrink:0;transform:translateY(.1em)}.prose-panel table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--line-strong);border-radius:20px;overflow:hidden;background:var(--white);margin:8px 0 24px;box-shadow:0 8px 24px -18px #1212122e}.prose-panel thead th{background:var(--ink);color:var(--white);font-weight:600;border-bottom:1px solid var(--ink)}.prose-panel thead th+th{border-left:1px solid rgba(255,255,255,.12)}.prose-panel tbody tr:last-child td{border-bottom:0}.prose-panel tbody td+td,.prose-panel tbody th+td{border-left:1px solid var(--line)}.prose-panel tbody tr:nth-child(2n) td{background:var(--panel-soft)}.prose-panel figure{display:grid;gap:10px;margin:0}.source-link-card-wrap{display:grid;gap:10px;margin:0}.source-link-card{display:grid;gap:0;border:1px solid var(--line);border-radius:28px;overflow:hidden;background:var(--panel-soft);box-shadow:0 18px 52px #12121214;transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s ease,border-color .18s ease}.source-link-card:hover{transform:translateY(-2px);border-color:var(--line-strong);box-shadow:0 24px 64px #1212121f}.source-link-card-media{position:relative;min-height:220px;overflow:hidden;background:radial-gradient(circle at top right,rgba(255,255,255,.18),transparent 10rem),linear-gradient(135deg,#161616,#424242)}.source-link-card-media.with-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#18181814,#1818182e),linear-gradient(135deg,#1818180f,#1818182e)}.source-link-card-image{display:block;width:100%;height:100%;object-fit:cover;border:0}.source-link-card-fallback{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:220px;padding:24px;color:var(--white);font-family:var(--font-display);font-size:clamp(1.2rem,2vw,1.6rem);text-transform:uppercase}.source-link-card-copy{padding:22px}.source-link-card-title{display:block;margin:0;font-family:var(--font-display);font-size:clamp(1.22rem,2vw,1.62rem);line-height:1.14}.source-link-card-description{margin:0;color:var(--muted);line-height:1.68}.prose-panel img{display:block;width:100%;height:auto;border-radius:36px;border:1px solid var(--line)}.prose-panel figcaption{color:var(--muted);font-size:.94rem;line-height:1.6}.prose-panel th,.prose-panel td{padding:12px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.article-intro{font-size:1.06rem}.toc-card strong{display:block;font-family:var(--font-display);text-transform:uppercase}.toc-group-list,.toc-sublist{list-style:none;margin:0;padding:0;display:grid;gap:10px}.toc-group{display:grid;gap:10px}.toc-group-header{display:flex;align-items:center;gap:10px}.toc-group-toggle{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;min-width:1.7rem;height:1.7rem;flex:0 0 auto;padding:0;border:0;border-radius:999px;background:#18181814;color:var(--ink);cursor:pointer;transition:.18s ease}.toc-group-toggle:hover{background:#1818181f}.toc-group-toggle-indicator{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;stroke-width:2.4;transition:transform .18s ease}.toc-group[data-collapsed=true] .toc-group-toggle-indicator{transform:rotate(-90deg)}.toc-sublist{padding-left:16px}.toc-sublist[hidden]{display:none!important}.toc-item.depth-3{padding-left:0}.toc-link{display:block;width:100%;padding:0;border:0;background:none;text-align:left;color:var(--ink);font-weight:600;line-height:1.45;cursor:pointer}.toc-link-parent{flex:1 1 auto;min-width:0;font-weight:800}.toc-link:hover{color:var(--orange-strong)}.related-section{margin-top:6px}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,minmax(0,1fr));gap:16px}.footer-cta,.footer-card{padding:22px}.footer-cta{background:radial-gradient(circle at top right,rgba(255,255,255,.16),transparent 14rem),linear-gradient(135deg,#1f1f1f,#171717);color:var(--white)}.footer-cta h2{font-size:clamp(1.7rem,3vw,3rem)}.footer-wordmark{margin:12px 0 18px}.footer-note{margin:14px 0 0;color:#ffffffa8;font-family:var(--font-display);text-transform:uppercase}.footer-rss-link{display:inline-flex;align-items:center;gap:12px;width:fit-content;margin-top:18px;padding:12px 16px;border-radius:18px;background:#ffffff1a;border:1px solid rgba(255,255,255,.14);color:var(--white);transition:transform .18s ease,background .18s ease,border-color .18s ease}.footer-rss-link:hover{transform:translateY(-1px);background:#ffffff24;border-color:#ffffff38}.footer-rss-icon{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;border-radius:999px;background:#ffffff24}.footer-rss-icon svg{width:1.1rem;height:1.1rem}.footer-rss-copy{display:grid;gap:2px}.footer-rss-copy strong,.footer-rss-copy small{margin:0;line-height:1.1}.footer-rss-copy strong{font-family:var(--font-display);letter-spacing:.02em}.footer-rss-copy small{color:#ffffffad;font-size:.82rem}.footer-card{background:var(--panel-soft)}.footer-card h3{font-size:1.15rem}.footer-list{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:10px;color:var(--muted)}.footer-list a:hover{color:var(--ink)}.footer-list a[aria-current=page]{color:var(--ink);font-weight:700}.contact-shell,.contact-shell-page{max-width:1320px}.contact-shell-page>:is(.contact-hero,.contact-detail-panel,.contact-form-card){width:100%;max-width:none}.contact-hero{padding:clamp(28px,5vw,44px)}.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.contact-card{display:grid;gap:10px;padding:22px;border-radius:32px;background:var(--panel-soft);box-shadow:inset 0 0 0 1px var(--line);transition:transform .18s ease,box-shadow .18s ease}.contact-card strong{font-size:1.2rem;letter-spacing:-.02em}.contact-card p,.contact-note p,.contact-detail-panel p{margin:0;color:var(--muted);line-height:1.7}.contact-card:hover{transform:translateY(-2px);box-shadow:inset 0 0 0 1px var(--line-strong),0 18px 36px #12121214}.contact-note,.contact-detail-panel{max-width:none;width:100%}.contact-note strong{display:block;margin-bottom:10px;font-size:1.05rem}.contact-form-card{max-width:none;width:100%;padding:clamp(22px,4vw,32px);background:var(--panel-soft)}.contact-form-card h2{margin:0;line-height:1.15}.contact-form-note,.contact-form-flash{margin:0;line-height:1.7}.contact-form-note{color:var(--muted)}.contact-form-flash{padding:14px 16px;border-radius:18px;background:#1818180f}.contact-form-flash.success{background:#4888561f;color:#285433}.contact-form-flash.error{background:#ad3f871f;color:#7d265f}.contact-form{display:grid;gap:14px}.contact-field{display:grid;gap:8px}.contact-field span{font-weight:700;letter-spacing:-.01em}.contact-field input,.contact-field textarea{width:100%;border:0;border-radius:18px;padding:14px 16px;background:var(--white);box-shadow:inset 0 0 0 1px #1818181a}.contact-field textarea{resize:vertical;min-height:180px}.contact-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.contact-submit{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border:0;border-radius:999px;background:var(--black);color:var(--white);cursor:pointer;transition:opacity .18s ease,transform .18s ease,background-color .18s ease}.contact-submit:not(:disabled):hover{transform:translateY(-1px)}.contact-submit-link{width:fit-content}.contact-submit:disabled{cursor:not-allowed;opacity:.44}.contact-thanks-card{justify-items:start}.search-modal{position:fixed;inset:0;z-index:1000}.search-backdrop{position:absolute;inset:0;background:#f1eee8bd;backdrop-filter:blur(4px)}.search-shell{position:relative;display:flex;min-height:100%;align-items:flex-start;justify-content:center;padding:clamp(72px,16vh,140px) 16px 32px}.search-panel{position:relative;width:min(760px,100%)}.search-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.search-hint{margin:12px 8px 0;color:#181818bd;font-size:.95rem}.search-close{min-height:56px;padding:0 18px;border-radius:18px;border:0;background:#181818eb;color:var(--white);font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;box-shadow:var(--shadow)}.search-input{width:100%;min-height:88px;padding:0 24px;border:2px solid rgba(24,24,24,.1);border-radius:30px;background:#181818f0;color:var(--white);font-family:var(--font-display);font-size:clamp(1.3rem,3vw,2.2rem);box-shadow:var(--shadow)}.search-input::placeholder{color:#ffffff8f}.search-results{display:grid;gap:10px;max-height:min(52vh,540px);margin-top:16px;overflow-y:auto}.search-result{display:grid;gap:8px;padding:18px 20px;border-radius:24px;background:#181818f5;border:1px solid rgba(255,255,255,.06);color:var(--white);box-shadow:var(--shadow);transition:.18s ease}.search-result:hover{transform:translateY(-1px);background:#121212fa;border-color:#eda25d57}.search-result.active{background:#121212fa;border-color:#eda25d6b}.search-result-title{font-family:var(--font-display);font-size:clamp(1.05rem,2vw,1.45rem);line-height:1;text-transform:uppercase}.search-result-description{color:#ffffffbd}.search-result-meta{display:flex;flex-wrap:wrap;gap:10px;color:#ffffff94;font-size:.76rem;text-transform:uppercase;letter-spacing:.06em}.search-empty{margin:0;padding:22px 8px 8px;color:var(--ink);font-family:var(--font-display);font-size:clamp(1.05rem,2vw,1.35rem);text-transform:uppercase}@media(min-width:1101px){.page-article .utility-bar{width:fit-content;margin:0}.page-article .compact-toolbar-shell{display:inline-grid;width:auto}.page-article .prose-panel>:is(p,h2,h3,h4,ul,ol,blockquote,figure,table,.source-link-card-wrap){width:100%;max-width:58rem;margin-inline:0}}@media(min-width:781px){.source-link-card{grid-template-columns:minmax(250px,34%) minmax(0,1fr)}.source-link-card-media{min-height:100%}}@media(max-width:1100px){.brand-stage-grid,.article-grid,.article-grid.sidebar-right,.tech-home-grid,.tech-front-grid,.tech-bottom-grid,.footer-grid,.tool-directory-grid,.contact-grid{grid-template-columns:1fr}.article-sidebar{order:2}.article-grid.sidebar-right .article-main{order:1}.article-grid.sidebar-right .article-sidebar{order:2}.toc-card{display:none}}@media(max-width:1320px){.post-grid-hub .grid-item{grid-column:span 4}}@media(max-width:1020px){.post-grid-hub .grid-item{grid-column:span 6}}@media(max-width:880px){.post-grid{grid-template-columns:1fr}.grid-item,.grid-item.featured,.tool-directory-card,.taxonomy-card,.author-grid-item{grid-column:auto}}@media(max-width:720px){.site-shell{padding:10px}.brand-stage,.hero-card,.card,.meta-card,.toc-card,.note-card,.article-main,.footer-cta,.footer-card{border-radius:26px}.brand-stage,.hero-card,.footer-cta,.footer-card,.meta-card,.toc-card,.note-card,.article-main,.card-content,.card-media,.taxonomy-card,.author-card,.prose-panel,.source-link-card-copy{padding:18px}.speech-widget{padding:16px}.speech-widget-shell{grid-template-columns:auto 1fr;gap:14px}.speech-widget-progress{grid-column:1 / -1;order:3}.speech-widget-settings{justify-self:end}.speech-widget-settings-panel{right:0;left:auto;min-width:min(280px,calc(100vw - 48px))}.author-card-header{grid-template-columns:1fr}.search-shell{padding-top:88px}.search-input-row{grid-template-columns:1fr}.search-input{min-height:74px;font-size:1.2rem}.search-close{min-height:48px;justify-self:end}.tech-home-card{grid-template-columns:1fr}.tech-home-card-media{min-height:220px}.source-link-card{grid-template-columns:1fr}}.toast-region[data-astro-cid-iz6mm5fl]{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 24px);transform:translate(-50%);z-index:1000;display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none;max-width:min(92vw,420px)}.toast-item[data-astro-cid-iz6mm5fl]{pointer-events:auto;background:#181615f0;color:#f6f3ec;border-radius:18px;padding:12px 20px;font-size:14px;font-weight:500;line-height:1.5;box-shadow:0 12px 32px -8px #00000073,0 2px 6px #0003;border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(12px);opacity:0;transform:translateY(12px);transition:opacity .18s ease,transform .18s ease;display:inline-flex;align-items:center;gap:10px}.toast-item[data-astro-cid-iz6mm5fl].is-visible{opacity:1;transform:translateY(0)}.toast-item[data-astro-cid-iz6mm5fl][data-tone=success]{border-color:#86bd8a59}.toast-item[data-astro-cid-iz6mm5fl][data-tone=error]{background:#3c1614f2;border-color:#d95a5273}.toast-item-dot[data-astro-cid-iz6mm5fl]{width:8px;height:8px;border-radius:50%;background:currentColor;opacity:.6}.toast-item[data-astro-cid-iz6mm5fl][data-tone=success] .toast-item-dot[data-astro-cid-iz6mm5fl]{background:#86bd8a;opacity:1}.toast-item[data-astro-cid-iz6mm5fl][data-tone=error] .toast-item-dot[data-astro-cid-iz6mm5fl]{background:#d95a52;opacity:1}@media(prefers-reduced-motion:reduce){.toast-item[data-astro-cid-iz6mm5fl]{transition:none}}
