/* Lightlog 2 — shared, scoped front/tool layout. */
body.lightlog-surface{margin:0;background:#fff;color:#1a293c;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}
#ll-site{--ll-ink:#1a293c;--ll-muted:#5f6b79;--ll-blue:#2853d5;--ll-line:#dde3eb;color:var(--ll-ink);font-size:15px;line-height:1.7;text-align:left;overflow-wrap:anywhere}
#ll-site *,#ll-site *:before,#ll-site *:after{box-sizing:border-box}
#ll-site h1,#ll-site h2,#ll-site h3,#ll-site p{margin:0;padding:0;border:0;background:none;box-shadow:none;color:inherit}
#ll-site h1:before,#ll-site h1:after,#ll-site h2:before,#ll-site h2:after,#ll-site h3:before,#ll-site h3:after{display:none}
#ll-site a{color:inherit;text-decoration:none;transition:color .15s,background .15s,border-color .15s}
#ll-site a:focus-visible,#ll-site button:focus-visible,#ll-site input:focus-visible{outline:3px solid #2853d5;outline-offset:4px}
#ll-site a:hover{color:var(--ll-blue)}
#ll-site svg{display:block;width:24px;height:24px}
#ll-site .ll-wrap{width:min(1184px,calc(100% - 80px));margin-inline:auto}
#ll-site .ll-header{background:#fff;border-bottom:1px solid var(--ll-line)}
#ll-site .ll-header-inner{min-height:92px;display:flex;align-items:center;gap:32px}
#ll-site .ll-brand{display:inline-flex;align-items:center;gap:10px;font-size:26px;font-weight:750;letter-spacing:-1px;line-height:1.2;white-space:nowrap}
#ll-site .ll-brand .ll-mark{width:39px;height:39px;color:#2e63a6}
#ll-site .ll-brand small{display:block;font-size:10px;font-weight:500;letter-spacing:.18em;margin-top:4px;color:var(--ll-muted)}
#ll-site .ll-nav{display:flex;align-items:center;gap:30px;margin-left:auto;font-size:13px;font-weight:600}
#ll-site .ll-nav a{padding-block:14px}
#ll-site .ll-nav-tool{display:flex;align-items:center;justify-content:center;gap:22px;background:var(--ll-ink);color:white;min-height:44px;padding:10px 19px;border-radius:6px;font-size:13px;font-weight:650}
#ll-site .ll-nav-tool:hover{background:#2853d5;color:#fff}
#ll-site .ll-hero{display:grid;grid-template-columns:1.16fr 1fr;gap:84px;align-items:center;padding-block:66px 60px}
#ll-site .ll-eyebrow{font-size:10px;font-weight:750;letter-spacing:.14em;color:var(--ll-muted);margin-bottom:12px}
#ll-site h1{font-size:clamp(32px,3.5vw,48px);letter-spacing:-.035em;line-height:1.5;font-weight:750}
#ll-site h1 span{color:var(--ll-blue)}
#ll-site .ll-lead{color:var(--ll-muted);margin:19px 0 20px;line-height:1.95;font-size:14px}
#ll-site .ll-text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;font-size:13px;font-weight:650;min-height:44px}
#ll-site .ll-text-link span{color:var(--ll-blue);font-size:19px}
#ll-site .ll-find{padding:34px;background:#f5f7fa;border:1px solid #e4e9f0;border-radius:10px}
#ll-site .ll-find h2{font-size:22px;letter-spacing:-.03em}
#ll-site .ll-find>p:not(.ll-eyebrow){font-size:13px;color:var(--ll-muted);margin-top:8px}
#ll-site .ll-search{margin-top:22px;display:flex;background:#fff;border:1px solid #c3ccd8;border-radius:6px;overflow:hidden}
#ll-site .ll-search input{min-width:0;width:100%;background:#fff;padding:14px;color:var(--ll-ink);border:0;border-radius:0;font:inherit;font-size:14px;height:52px;box-shadow:none}
#ll-site .ll-search input:focus{outline:2px solid var(--ll-blue);outline-offset:-3px}
#ll-site .ll-search button{display:grid;place-items:center;flex-shrink:0;width:52px;background:var(--ll-blue);color:white;border:0;margin:0;border-radius:0;cursor:pointer}
#ll-site .ll-search button:focus-visible{outline:3px solid #121e34;outline-offset:-5px}
#ll-site .ll-query-links{display:flex;align-items:center;flex-wrap:wrap;gap:2px 16px;margin-top:10px;font-size:12px}
#ll-site .ll-query-links>span{color:var(--ll-muted);font-size:10px}
#ll-site .ll-query-links a{min-height:36px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:4px}
#ll-site .ll-section{padding-bottom:58px;scroll-margin-top:24px}
#ll-site .ll-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}
#ll-site .ll-section-head .ll-eyebrow{margin-bottom:6px}
#ll-site h2{font-size:26px;line-height:1.5;letter-spacing:-.03em;font-weight:750}
#ll-site .ll-section-note{font-size:12px;color:var(--ll-muted);padding-bottom:4px}
#ll-site .ll-tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
#ll-site .ll-tool-card{display:flex;flex-direction:column;border:1px solid transparent;padding:26px;border-radius:9px;min-height:268px}
#ll-site .ll-tool-blue{background:#eef2ff;border-color:#dce4fc}
#ll-site .ll-tool-mint{background:#eef7f4;border-color:#d9eae4}
#ll-site .ll-tool-sand{background:#faf4e9;border-color:#eee2cf}
#ll-site .ll-tool-card:hover{border-color:var(--ll-blue);color:var(--ll-ink);background:#f3f6ff}
#ll-site .ll-tool-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}
#ll-site .ll-tool-icon{display:grid;place-items:center;width:40px;height:40px;background:#fff;border:1px solid #dce2eb;border-radius:7px;color:var(--ll-blue)}
#ll-site .ll-tool-icon svg{width:23px;height:23px}
#ll-site .ll-tag{font-size:11px;color:#526075}
#ll-site .ll-tool-card h3{font-size:21px;letter-spacing:-.025em;line-height:1.5;margin-bottom:10px}
#ll-site .ll-tool-card p{font-size:13px;color:#516071;line-height:1.8;margin-bottom:22px}
#ll-site .ll-tool-bottom{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;color:#526075}
#ll-site .ll-tool-arrow{display:grid;place-items:center;border:1px solid #c7cfdb;width:32px;height:32px;border-radius:50%;font-size:20px;color:var(--ll-ink)}
#ll-site .ll-tools-foot{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:16px}
#ll-site .ll-tools-foot p{font-size:11px;color:var(--ll-muted)}
#ll-site .ll-category-band{background:#f7f8fa;border-block:1px solid #e9ecf1;scroll-margin-top:24px;margin-bottom:58px}
#ll-site .ll-category-inner{display:grid;grid-template-columns:250px 1fr;gap:45px;padding-block:34px;align-items:center}
#ll-site .ll-category-inner h2{font-size:23px}
#ll-site .ll-category-inner p:not(.ll-eyebrow){font-size:12px;color:var(--ll-muted);margin-top:8px}
#ll-site .ll-category-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
#ll-site .ll-category-links a{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:48px;border-bottom:1px solid #dfe4eb;font-size:12px;padding:9px 4px}
#ll-site .ll-category-links a span{color:var(--ll-muted);font-size:10px;white-space:nowrap}
#ll-site .ll-article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:28px;row-gap:28px}
#ll-site .ll-article-card{display:block;padding-bottom:20px;border-bottom:1px solid var(--ll-line)}
#ll-site .ll-article-image{height:auto;aspect-ratio:16/9;object-fit:cover;display:block;width:100%;border-radius:6px;margin:0 0 14px;background:#eef1f5}
#ll-site .ll-article-card h3{font-size:17px;line-height:1.7;font-weight:650;margin:8px 0 12px;overflow-wrap:anywhere}
#ll-site .ll-article-category{font-size:11px;color:var(--ll-blue)}
#ll-site .ll-article-meta{font-size:11px;color:var(--ll-muted)}
#ll-site .ll-services{padding-top:8px}
#ll-site .ll-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--ll-line);border-left:1px solid var(--ll-line)}
#ll-site .ll-service-link{padding:22px;border-right:1px solid var(--ll-line);border-bottom:1px solid var(--ll-line);display:grid;grid-template-columns:1fr auto;align-items:center;gap:7px 12px}
#ll-site .ll-service-link strong{font-size:15px;line-height:1.6;font-weight:650}
#ll-site .ll-service-link small{grid-column:1;font-size:10px;color:var(--ll-muted)}
#ll-site .ll-service-link>span{grid-column:2;grid-row:1 / 3;color:var(--ll-blue)}
#ll-site .ll-service-link:hover{background:#f5f7fc}
#ll-site .ll-about{background:#eef2f7;padding-block:48px;scroll-margin-top:24px}
#ll-site .ll-about-inner{display:grid;grid-template-columns:1fr 1fr;gap:70px}
#ll-site .ll-about h2{font-size:29px;line-height:1.7}
#ll-site .ll-about-inner>div>p:not(.ll-eyebrow){font-size:14px;line-height:1.95;color:#516071;margin-bottom:12px}
#ll-site .ll-footer{padding-block:32px;background:white}
#ll-site .ll-footer-inner{display:flex;align-items:center;gap:30px;flex-wrap:wrap}
#ll-site .ll-footer-brand{font-size:21px}
#ll-site .ll-footer p{font-size:10px;color:var(--ll-muted);margin-top:9px}
#ll-site .ll-footer nav{margin-left:auto;display:flex;gap:18px;flex-wrap:wrap}
#ll-site .ll-footer nav a{font-size:11px;min-height:44px;display:flex;align-items:center}
#ll-site .ll-footer small{font-size:10px;color:var(--ll-muted)}
#ll-site .ll-skip{position:absolute;top:8px;left:8px;transform:translateY(-200%);z-index:999999;padding:10px 16px;background:#fff;color:var(--ll-blue)}
#ll-site .ll-skip:focus{transform:none}
#ll-site .ll-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}
#ll-site .ll-tool-main{padding-block:32px 45px}
#ll-site .ll-tool-main>p{margin-bottom:20px}
#ll-site .ll-tool-main [data-tool-id]>nav{display:flex;gap:8px 20px;flex-wrap:wrap;margin-bottom:20px;font-size:12px}
#ll-site .ll-tool-main [data-tool-id]>nav a{padding-block:8px;color:var(--ll-blue);text-decoration:underline;text-underline-offset:4px}
#ll-site .ll-tool-main [data-tool-id]>p{font-size:12px;line-height:1.8;margin:15px 0}
#ll-site .ll-tool-main button[data-disable-analytics]{font:inherit;font-size:12px;border:1px solid #aeb8c7;background:white;color:var(--ll-ink);border-radius:4px;padding:10px;cursor:pointer}
#ll-site .ll-preview-note{margin:0;padding:9px 20px;background:#f7f8fa;color:#526075;text-align:center;font-size:11px;border-bottom:1px solid var(--ll-line)}
@media(max-width:1000px){#ll-site .ll-wrap{width:calc(100% - 48px)}#ll-site .ll-nav{gap:18px}#ll-site .ll-nav a:last-child{display:none}#ll-site .ll-hero{gap:38px;padding-block:45px}#ll-site .ll-find{padding:24px}#ll-site .ll-category-inner{grid-template-columns:200px 1fr;gap:30px}#ll-site .ll-category-links{grid-template-columns:repeat(2,minmax(0,1fr))}#ll-site .ll-tool-card{padding:21px}#ll-site .ll-tool-card h3{font-size:19px}#ll-site .ll-service-link{padding:17px}}
@media(max-width:700px){#ll-site .ll-wrap{width:calc(100% - 36px)}#ll-site .ll-header-inner{min-height:76px;gap:18px;flex-wrap:wrap;padding-block:14px}#ll-site .ll-brand{font-size:23px}#ll-site .ll-brand .ll-mark{width:32px;height:32px}#ll-site .ll-nav{order:3;margin:0;width:100%;justify-content:space-between;gap:12px;border-top:1px solid #edf0f4;font-size:12px;padding-top:2px}#ll-site .ll-nav a{padding-block:10px 0;min-height:36px}#ll-site .ll-nav a:last-child{display:block}#ll-site .ll-nav-tool{margin-left:auto;font-size:12px;gap:14px;padding:10px 14px}#ll-site .ll-hero{grid-template-columns:1fr;gap:27px;padding-block:32px 38px}#ll-site h1{font-size:34px;line-height:1.55}#ll-site .ll-hero .ll-eyebrow{margin-bottom:9px}#ll-site .ll-lead{font-size:13px;margin:12px 0 6px}#ll-site .ll-find{padding:20px}#ll-site .ll-find .ll-eyebrow{display:none}#ll-site .ll-find h2{font-size:18px}#ll-site .ll-find>p:not(.ll-eyebrow){font-size:12px;margin-top:5px}#ll-site .ll-search{margin-top:14px}#ll-site .ll-section{padding-bottom:36px}#ll-site .ll-section-head{margin-bottom:18px;align-items:flex-start;flex-wrap:wrap;gap:6px}#ll-site h2{font-size:23px}#ll-site .ll-section-note{font-size:11px;margin-top:5px}#ll-site .ll-tool-grid{grid-template-columns:1fr;gap:12px}#ll-site .ll-tool-card{padding:21px;min-height:0;position:relative}#ll-site .ll-tool-top{margin-bottom:14px}#ll-site .ll-tool-card h3{font-size:21px}#ll-site .ll-tool-card p{margin-bottom:14px}#ll-site .ll-tools-foot{align-items:flex-start;gap:6px;flex-direction:column;margin-top:12px}#ll-site .ll-category-band{margin-bottom:36px}#ll-site .ll-category-inner{grid-template-columns:1fr;gap:15px;padding-block:28px}#ll-site .ll-category-inner p:not(.ll-eyebrow){display:none}#ll-site .ll-category-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px}#ll-site .ll-article-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 16px}#ll-site .ll-article-card h3{font-size:15px;margin-top:6px}#ll-site .ll-article-image{margin-bottom:10px}#ll-site .ll-article-meta{font-size:10px}#ll-site .ll-article-category{font-size:10px}#ll-site .ll-section-head>.ll-text-link{font-size:12px;margin-top:17px}#ll-site .ll-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#ll-site .ll-service-link{padding:17px 14px}#ll-site .ll-service-link strong{font-size:14px}#ll-site .ll-about{padding-block:32px}#ll-site .ll-about-inner{grid-template-columns:1fr;gap:22px}#ll-site .ll-about h2{font-size:25px}#ll-site .ll-about-inner>div>p:not(.ll-eyebrow){font-size:13px}#ll-site .ll-footer{padding-block:25px}#ll-site .ll-footer-inner{display:block}#ll-site .ll-footer nav{gap:18px;margin-top:12px}#ll-site .ll-footer small{display:block;margin-top:8px}}
@media(max-width:380px){#ll-site .ll-wrap{width:calc(100% - 28px)}#ll-site h1{font-size:29px}#ll-site .ll-article-grid{grid-template-columns:1fr}#ll-site .ll-nav{font-size:11px;gap:8px}}
@media(prefers-reduced-motion:reduce){#ll-site *{transition:none!important;scroll-behavior:auto!important}}

/* 2.0.1: start directly with tools and compact article search. */
#ll-site #tools{padding-top:32px}
#ll-site .ll-tools-heading{align-items:center}
#ll-site .ll-tools-heading h1{font-size:28px;line-height:1.5;letter-spacing:-.025em}
#ll-site .ll-tools-heading .ll-section-note{margin-top:6px;font-size:13px}
#ll-site .ll-home-search{margin:0;width:min(390px,45%);flex-shrink:0}
#ll-site .ll-service-link{grid-template-columns:44px minmax(0,1fr) auto;gap:6px 12px}
#ll-site .ll-service-icon{grid-column:1;grid-row:1 / 3;display:block;width:40px;height:40px;object-fit:contain;border-radius:7px}
#ll-site .ll-service-link strong,#ll-site .ll-service-link small{grid-column:2}
#ll-site .ll-service-link>span{grid-column:3}
@media(max-width:700px){#ll-site #tools{padding-top:25px}#ll-site .ll-tools-heading{gap:18px}#ll-site .ll-tools-heading h1{font-size:25px}#ll-site .ll-home-search{width:100%}#ll-site .ll-service-link{grid-template-columns:30px minmax(0,1fr);gap:5px 9px}#ll-site .ll-service-icon{width:28px;height:28px}#ll-site .ll-service-link>span{display:none}}

#ll-site .ll-service-icon{border-radius:0}
#ll-site .ll-article-image.ll-image-fallback{object-fit:contain;padding:35px;background:#f2f5fa}

#ll-site .ll-service-icon{color-scheme:light}


/* 2.1.0: article-led homepage and a separate Tools service at the bottom. */
#ll-site .ll-editorial-intro{display:flex;align-items:center;justify-content:space-between;gap:36px;padding-block:36px 30px}
#ll-site .ll-editorial-intro h1{font-size:clamp(25px,2.6vw,34px);line-height:1.55}
#ll-site .ll-editorial-intro .ll-eyebrow{margin-bottom:8px}
#ll-site .ll-editorial-intro .ll-lead{margin:10px 0 0;font-size:13px}
#ll-site .ll-nav-tool{background:#fff;color:var(--ll-muted);border:1px solid var(--ll-line);gap:10px}
#ll-site #tools{padding-top:40px;padding-bottom:40px}
#ll-site #tools .ll-tool-card{min-height:220px}
#ll-site #tools .ll-tool-top{margin-bottom:16px}
#ll-site #tools .ll-tool-card h3{font-size:19px}
@media(max-width:700px){#ll-site .ll-editorial-intro{flex-direction:column;align-items:stretch;gap:18px;padding-block:26px}#ll-site .ll-editorial-intro h1{font-size:26px}#ll-site .ll-nav-tool{padding:10px;font-size:11px}#ll-site #tools{padding-block:30px}#ll-site #tools .ll-tool-card{min-height:0}}
