:root{--ink:#17213d;--muted:#5a6680;--line:#e4e8f0;--soft:#f7f9fd;--violet:#5749dd;--cyan:#05a6c9;--night:#101935;--font:system-ui,-apple-system,"Segoe UI","Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.75;overflow-wrap:anywhere;overflow-x:hidden}
a{color:inherit;text-underline-offset:.18em}
a:hover{color:var(--violet)}
a:focus-visible{outline:3px solid var(--cyan);outline-offset:4px;border-radius:3px}
img{display:block;max-width:100%;height:auto}
.shell{width:min(100% - 64px,1180px);margin-inline:auto}
.skip-link{position:absolute;left:16px;top:-100px;background:var(--night);color:#fff;padding:10px 16px;z-index:99}.skip-link:focus{top:12px}
.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:2}
.header-inner{min-height:82px;display:flex;justify-content:space-between;align-items:center;gap:24px}
.brand{display:inline-flex;align-items:center;gap:12px;color:var(--ink);font-size:21px;font-weight:800;letter-spacing:-.06em;text-decoration:none;white-space:nowrap}
.brand-mark{width:32px;height:32px;display:grid;grid-template-columns:repeat(2,1fr);gap:3px;transform:rotate(-12deg)}
.brand-mark i{display:block;border-radius:4px;background:var(--violet)}.brand-mark i:nth-child(2){background:#8b7bfa}.brand-mark i:nth-child(3){background:var(--cyan)}.brand-mark i:nth-child(4){background:#d9d3ff}
.site-nav{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px 30px}.site-nav a{font-size:13px;font-weight:700;letter-spacing:.02em;text-decoration:none;white-space:nowrap}.site-nav a:hover{text-decoration:underline}
.eyebrow{margin:0 0 19px;color:var(--violet);font-size:12px;font-weight:800;letter-spacing:.19em;line-height:1.5}
.hero{min-height:636px;padding-top:82px;padding-bottom:84px;display:grid;grid-template-columns:minmax(0,.87fr) minmax(0,1.13fr);align-items:center;gap:20px}
.hero-copy{position:relative;z-index:1}.pulse{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 5px #e3f8fc;margin-right:11px;vertical-align:1px}
.hero h1{margin:0;font-size:clamp(48px,5vw,76px);font-weight:800;line-height:1.22;letter-spacing:-.085em}.hero h1 em{font-style:normal;color:var(--violet)}
.hero-lead{max-width:470px;margin:26px 0 30px;color:#43506b;font-size:17px;line-height:1.95}
.actions{display:flex;align-items:center;flex-wrap:wrap;gap:17px 25px}
.button{min-height:52px;padding:12px 24px;display:inline-flex;justify-content:center;align-items:center;gap:30px;border-radius:8px;font-size:14px;font-weight:800;text-decoration:none;transition:transform .18s ease,background .18s ease}
.button:hover{transform:translateY(-2px)}.button-primary{background:var(--night);color:#fff;box-shadow:0 10px 24px #20245122}.button-primary:hover{background:var(--violet);color:#fff}.button-outline{background:#fff;border:1px solid #b9c2d6;color:var(--ink)}.button-outline:hover{border-color:var(--violet)}
.text-link{font-size:13px;font-weight:800;text-decoration:none;border-bottom:1px solid #9aa6bd;padding-bottom:4px}.text-link span{margin-left:8px}
.hero-note{display:flex;align-items:center;gap:10px;margin:39px 0 0;color:var(--muted);font-size:12px}.note-line{width:28px;height:1px;background:var(--cyan)}
.hero-visual{position:relative;margin:0;padding:25px 0}.hero-visual img{position:relative;width:100%;filter:none}.hero-visual figcaption{position:absolute;right:11%;bottom:7%;padding:6px 11px;background:#fff;border:1px solid var(--line);border-radius:6px;color:#415071;font-size:10px;font-weight:800;letter-spacing:.12em;box-shadow:0 8px 18px #2d3c7914}.hero-visual figcaption span{color:#aeb6c6}.visual-orbit{position:absolute;border:1px solid #d6defd;border-radius:50%;pointer-events:none}.orbit-one{width:410px;height:410px;right:4%;top:-10%}.orbit-two{width:140px;height:140px;left:7%;bottom:4%;border-color:#c7eff5}
.ticker{border-block:1px solid var(--line);background:#fbfcff}.ticker-inner{min-height:66px;display:flex;justify-content:space-between;align-items:center;gap:12px;color:#8995b1;font-size:11px;font-weight:800;letter-spacing:.25em}.ticker-dot{color:var(--violet);font-size:14px}
.tools-section{padding-top:111px;padding-bottom:112px;scroll-margin-top:30px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:38px}.section-heading h2,.about-section h2{margin:0;font-size:clamp(34px,3.6vw,50px);line-height:1.35;letter-spacing:-.065em}.section-heading>p{max-width:390px;margin:0 0 5px;color:var(--muted);font-size:14px;line-height:1.9}
.tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px}.tool-card{min-width:0;border:1px solid var(--line);border-radius:13px;overflow:hidden;background:#fff;box-shadow:0 20px 55px #3441700b}.card-image{display:block;overflow:hidden;background:#f8faff;aspect-ratio:1.65}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.card-image:hover img{transform:scale(1.035)}.tool-card-dark .card-image{background:#f6f8fd}.card-content{padding:26px 29px 30px}.card-meta{display:flex;justify-content:space-between;gap:10px;align-items:center;color:#596784;font-size:10px;font-weight:800;letter-spacing:.13em}.status{padding:4px 9px;background:#f0eeff;border-radius:100px;color:#5044b8;letter-spacing:0;white-space:nowrap}.card-content h3{margin:17px 0 7px;font-size:25px;line-height:1.4;letter-spacing:-.04em}.card-content p{margin:0;color:var(--muted);font-size:14px;line-height:1.8}.card-link{display:inline-flex;gap:26px;align-items:center;margin-top:20px;font-size:13px;font-weight:800;text-decoration:none;border-bottom:1px solid #aeb7c9;padding-bottom:3px}.image-note{margin:17px 0 0;color:#68748e;font-size:12px}
.about-section{background:var(--soft);padding:105px 0;scroll-margin-top:30px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:11%;align-items:center}.about-copy p{max-width:450px;margin:0 0 21px;color:#4d5a74;font-size:16px;line-height:2.1}.about-copy .text-link{display:inline-block;margin-top:8px}
.closing-section{display:flex;align-items:center;gap:29px;padding-top:75px;padding-bottom:85px}.closing-icon{width:62px;height:62px;display:grid;place-items:center;flex:none;border:1px solid #d9d8f9;border-radius:18px;background:#f4f3ff;color:var(--violet);font-size:31px}.closing-section h2{margin:0;font-size:clamp(25px,2.8vw,37px);letter-spacing:-.05em;line-height:1.45}.closing-section p:not(.eyebrow){margin:10px 0 0;color:var(--muted);font-size:14px}.closing-section .eyebrow{margin-bottom:5px}.closing-section .button{margin-left:auto;white-space:nowrap}
.site-footer{background:var(--night);color:#d9dff1;padding:52px 0 25px}.footer-inner{display:flex;justify-content:space-between;gap:30px}.footer-brand{color:#fff;font-size:19px}.footer-inner p{margin:13px 0 0;color:#aab4d1;font-size:13px}.footer-nav{display:flex;flex-wrap:wrap;align-content:start;gap:14px 28px}.footer-nav a{color:#d9dff1;text-decoration:none;font-size:13px}.footer-nav a:hover{color:#fff;text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff22;margin-top:42px;padding-top:20px;color:#aab4d1;font-size:11px}
.page-top{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-top:62px}.page-top .eyebrow{margin:0}.back-link{color:var(--violet);font-size:13px;font-weight:800;text-decoration:none}.entry{max-width:870px;padding-top:34px;padding-bottom:80px}.entry-body h1,.entry-header h1{margin:0 0 23px;font-size:clamp(38px,4.4vw,61px);line-height:1.3;letter-spacing:-.06em}.entry-body>p:first-of-type{font-size:18px;line-height:1.9;color:#43506b}.entry-body p{margin:0 0 23px}.entry-body img{width:100%;border:1px solid var(--line);border-radius:13px;background:#f7f9ff}.entry-body em{font-style:normal;color:#66738c;font-size:12px}.entry-body h2{margin:55px 0 15px;padding-top:32px;border-top:1px solid var(--line);font-size:25px;letter-spacing:-.04em}.entry-body h3{margin:36px 0 12px;font-size:20px}.entry-body a{color:var(--violet);font-weight:700}.entry-body blockquote{border-left:3px solid var(--violet);padding:5px 0 5px 20px;color:var(--muted)}.entry-body pre{overflow-x:auto;padding:18px;background:var(--soft);border-radius:8px}.entry-body code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.entry-body table{display:block;overflow-x:auto;border-collapse:collapse}.entry-body th,.entry-body td{border:1px solid var(--line);padding:9px 13px}.entry-body ul,.entry-body ol{padding-left:1.5em}.entry-body hr{border:0;border-top:1px solid var(--line);margin:40px 0}.entry-header{margin-bottom:35px}.entry-header time{color:var(--muted);font-size:13px}.page-cta{border-top:1px solid var(--line);padding-top:30px;padding-bottom:80px;display:flex;justify-content:space-between;align-items:center;gap:20px}.page-cta p{margin:0;font-size:21px;font-weight:800}.tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:35px 0 0;padding:0}.tags li{background:#f0eeff;color:#5147b3;padding:3px 11px;border-radius:50px;font-size:12px}.post-back{padding-bottom:70px}
.listing,.not-found{padding-top:100px;padding-bottom:130px}.listing h1,.not-found h1{font-size:clamp(38px,4vw,56px);letter-spacing:-.06em;line-height:1.35;margin:0 0 30px}.not-found p:not(.eyebrow){color:var(--muted);margin-bottom:27px}.post-list{list-style:none;margin:32px 0 0;padding:0;border-top:1px solid var(--line)}.post-list-item{padding:25px 0;border-bottom:1px solid var(--line)}.post-list-link{display:inline-flex;gap:20px;font-size:21px;font-weight:800;text-decoration:none}.post-list-item time{display:block;margin-top:8px;color:var(--muted);font-size:12px}.post-list-item p{margin:8px 0 0;color:var(--muted)}.draft-label,.draft-badge{display:inline-block;background:#fff3d8;color:#765000;border-radius:5px;padding:3px 8px;font-size:12px;font-weight:700}.draft-badge{margin:20px 0 0}.pagination{display:flex;justify-content:center;gap:22px;margin-top:40px}.empty{color:var(--muted)}.recent-posts{padding-bottom:80px}
@media(max-width:1050px){.hero{grid-template-columns:.95fr 1.05fr}.hero-visual{margin-right:-45px}.site-nav{gap:8px 16px}.site-nav a{font-size:12px}}
@media(max-width:760px){.shell{width:min(100% - 36px,600px)}.header-inner{min-height:auto;padding:16px 0 14px;align-items:flex-start;flex-direction:column;gap:12px}.brand{font-size:19px}.brand-mark{width:28px;height:28px}.site-nav{width:100%;justify-content:flex-start;gap:4px 18px}.site-nav a{font-size:12px;padding:3px 0}.hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding-top:60px;padding-bottom:60px;gap:23px}.hero h1{font-size:clamp(44px,10vw,64px)}.hero-lead{font-size:15px;margin:20px 0 25px}.hero-note{margin-top:28px}.hero-visual{margin:0 -18px;padding:0}.hero-visual figcaption{right:7%;bottom:6%;font-size:9px}.orbit-one{width:230px;height:230px}.orbit-two{width:95px;height:95px}.ticker-inner{overflow:hidden;white-space:nowrap;font-size:9px;letter-spacing:.1em}.ticker-inner span:last-child{display:none}.tools-section{padding-top:73px;padding-bottom:78px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:20px}.tool-grid{grid-template-columns:1fr;gap:20px}.about-section{padding:72px 0}.about-grid{grid-template-columns:1fr;gap:30px}.closing-section{flex-wrap:wrap;padding-top:58px;padding-bottom:65px;gap:19px}.closing-section .button{margin-left:81px}.footer-inner{display:block}.footer-nav{margin-top:30px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:7px}.page-top{padding-top:34px}.entry{padding-top:28px;padding-bottom:60px}.entry-body h1{font-size:38px}.page-cta{padding-bottom:60px}.listing,.not-found{padding-top:70px;padding-bottom:90px}}
@media(max-width:420px){.shell{width:calc(100% - 32px)}.site-nav{gap:1px 13px}.site-nav a{font-size:11px}.hero{padding-top:49px}.hero h1{font-size:44px}.hero-visual{margin:0 -12px}.actions{gap:17px}.button{min-height:49px}.card-content{padding:22px}.card-content h3{font-size:22px}.card-meta{font-size:9px;letter-spacing:.04em}.status{font-size:9px}.closing-icon{width:51px;height:51px}.closing-section .button{margin-left:0}.page-top{display:block}.page-top .back-link{display:inline-block;margin-top:10px}.entry-body h1{font-size:34px}.page-cta{display:block}.page-cta .button{margin-top:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.card-image img{transition:none}}

.card-image-ui{display:grid;place-items:center;padding:30px;background:radial-gradient(circle at 75% 18%,#e2e8ff,transparent 40%),#f8faff}.ui-window{display:block;width:100%;height:100%;max-height:290px;border:1px solid #d8dff2;border-radius:9px;background:#fff;box-shadow:0 22px 35px #6478c32b;overflow:hidden}.ui-top{height:24px;display:flex;align-items:center;gap:5px;padding-left:10px;border-bottom:1px solid #e9edf5}.ui-top i{width:5px;height:5px;background:#b8c3e6;border-radius:50%}.ui-body{height:calc(100% - 24px);display:grid;grid-template-columns:18% 1fr 20%}.ui-sidebar{padding:15px 7px;border-right:1px solid #edf0f7}.ui-sidebar i{display:block;height:7px;margin-bottom:11px;border-radius:4px;background:#dce5f7}.ui-sidebar i:nth-child(2){background:#8fa9ef}.ui-canvas{margin:13px;background:#fbfcff;border:1px solid #edf0f7;position:relative;overflow:hidden}.ui-canvas:before{content:"";display:block;height:54%;background:linear-gradient(135deg,#eff7ff 15%,#acc8fa 45%,#9b8aeb 80%,#edf4ff);border-radius:0 0 48% 18%}.ui-canvas i{display:block;width:60%;height:5px;margin:12px 10px 0;background:#cbd6ed;border-radius:9px}.ui-canvas i:nth-child(3){width:40%}.ui-inspector{padding:13px 8px;border-left:1px solid #edf0f7}.ui-inspector i{display:block;height:16px;margin-bottom:9px;border-radius:5px;background:#e5eafe}.ui-inspector i:first-child{background:linear-gradient(90deg,#70c9fa,#7666ed)}

.simple-ui{display:block;width:85%;height:75%;max-height:240px;background:#fff;border:1px solid #dce3f4;border-radius:10px;box-shadow:0 15px 30px #6276bb24;overflow:hidden}.simple-ui-top{display:block;height:25px;background:#f5f7ff;border-bottom:1px solid #e1e6f3}.simple-ui-body{display:flex;height:calc(100% - 25px);gap:10px;padding:12px}.simple-ui-body i:first-child{width:20%;background:#e7edfc}.simple-ui-body i:nth-child(2){width:56%;background:linear-gradient(135deg,#ebf5ff,#90b8f2,#9b83e9)}.simple-ui-body i:nth-child(3){flex:1;background:#edf0fb}.simple-ui-body i{border-radius:4px}

@media(min-width:761px){.hero{min-height:505px;padding-top:46px;padding-bottom:49px}.hero-visual{max-width:620px}.tools-section{padding-top:68px;padding-bottom:68px}.section-heading{margin-bottom:24px}.card-image{aspect-ratio:2.2}.card-content{padding:19px 24px 23px}.card-content h3{margin-top:11px}.about-section{padding:60px 0}.site-footer{padding-top:38px}.footer-bottom{margin-top:28px}}

@media(max-width:760px){.site-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 12px}.site-nav a{font-size:13px;padding:5px 0}}
