﻿*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #ffffff;--text: #1a1a1a;--text-muted: #666666;--accent: #4a9eff;--border: #e8e8e8;--code-bg: #f5f5f5;--nav-height: 60px}[data-theme=dark]{--bg: #1a1a1a;--text: #e8e8e8;--text-muted: #999999;--accent: #6ab3ff;--border: #333333;--code-bg: #2a2a2a}html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background-color:var(--bg);color:var(--text);font-family:system-ui,"Noto Sans JP",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1rem;line-height:1.8;min-height:100vh;display:flex;flex-direction:column;transition:background-color .2s ease,color .2s ease}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.35;letter-spacing:-0.01em;margin-top:2em;margin-bottom:.6em}h1{font-size:1.75rem}h2{font-size:1.35rem}h3{font-size:1.15rem}h4{font-size:1rem}p{margin-bottom:1.4em}a{color:var(--accent);text-decoration:none;transition:opacity .15s ease}a:hover{opacity:.75}ul,ol{padding-left:1.5em;margin-bottom:1.4em}li{margin-bottom:.3em}li>ul,li>ol{margin-top:.3em;margin-bottom:0}blockquote{border-left:3px solid var(--accent);padding:.6em 1.2em;margin:1.5em 0;color:var(--text-muted);font-style:italic}blockquote p:last-child{margin-bottom:0}hr{border:none;border-top:1px solid var(--border);margin:2.5em 0}img{max-width:100%;height:auto;display:block;border-radius:4px}table{width:100%;border-collapse:collapse;margin-bottom:1.4em;font-size:.9rem}table th,table td{border:1px solid var(--border);padding:.5em .8em;text-align:left}table th{background-color:var(--code-bg);font-weight:600}table tr:nth-child(even) td{background-color:var(--code-bg)}code{background-color:var(--code-bg);border:1px solid var(--border);border-radius:3px;font-family:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;font-size:.85em;padding:.1em .4em}pre{background-color:var(--code-bg);border:1px solid var(--border);border-radius:6px;overflow-x:auto;padding:1.2em 1.4em;margin-bottom:1.4em;font-size:.875rem;line-height:1.6}pre code{background:none;border:none;padding:0;font-size:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.site-header{border-bottom:1px solid var(--border);background-color:var(--bg);position:sticky;top:0;z-index:100;transition:background-color .2s ease}.header-inner{max-width:680px;margin:0 auto;padding:0 1.5rem;height:var(--nav-height);display:flex;align-items:center;justify-content:space-between;gap:1rem}.site-title{font-size:1.1rem;font-weight:700;color:var(--text);letter-spacing:.02em;flex-shrink:0}.site-title:hover{opacity:.75}.header-right{display:flex;align-items:center;gap:1.25rem}.site-nav{display:flex;align-items:center;gap:1.25rem}.site-nav a{color:var(--text-muted);font-size:.9rem;font-weight:500;transition:color .15s ease}.site-nav a:hover,.site-nav a.active{color:var(--text);opacity:1}.header-controls{display:flex;align-items:center;gap:.5rem}.search-link{display:flex;align-items:center;color:var(--text-muted)}.search-link:hover{color:var(--text);opacity:1}.nav-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:32px;height:32px;background:none;border:none;cursor:pointer;color:var(--text-muted);padding:4px;border-radius:4px;transition:color .15s ease}.nav-toggle:hover{color:var(--text)}.nav-toggle .nav-toggle-bar{display:block;width:18px;height:2px;background-color:currentColor;transition:transform .2s ease,opacity .15s ease;transform-origin:center}.nav-toggle[aria-expanded=true]{color:var(--text)}.nav-toggle[aria-expanded=true] .nav-toggle-bar:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle[aria-expanded=true] .nav-toggle-bar:nth-child(2){opacity:0;transform:scaleX(0)}.nav-toggle[aria-expanded=true] .nav-toggle-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}body.nav-open{overflow:hidden}.nav-mobile-menu{position:fixed;top:var(--nav-height);left:0;right:0;background-color:var(--bg);border-bottom:1px solid var(--border);z-index:99;transform:translateY(-105%);opacity:0;pointer-events:none;transition:transform .2s ease,opacity .15s ease}.nav-mobile-menu.is-open{transform:translateY(0);opacity:1;pointer-events:auto}.nav-mobile-menu nav{max-width:680px;margin:0 auto;padding:.5rem 1rem;display:flex;flex-direction:column}.nav-mobile-menu a{display:block;padding:.85rem .5rem;border-bottom:1px solid var(--border);color:var(--text-muted);font-size:1rem;font-weight:500;transition:color .15s ease}.nav-mobile-menu a:last-child{border-bottom:none}.nav-mobile-menu a:hover,.nav-mobile-menu a.active{color:var(--text);opacity:1}.nav-backdrop{position:fixed;inset:0;top:var(--nav-height);background-color:rgba(0,0,0,.4);z-index:98;opacity:0;pointer-events:none;transition:opacity .2s ease}.nav-backdrop.is-open{opacity:1;pointer-events:auto}.theme-toggle{background:none;border:none;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;padding:4px;border-radius:4px;transition:color .15s ease;line-height:1}.theme-toggle:hover{color:var(--text)}.theme-toggle .icon-sun,.theme-toggle .icon-moon{display:flex;align-items:center}.theme-toggle .icon-sun{display:none}.theme-toggle .icon-moon{display:flex}[data-theme=dark] .theme-toggle .icon-sun{display:flex}[data-theme=dark] .theme-toggle .icon-moon{display:none}.main-content{flex:1}.page-content{max-width:680px;margin:0 auto;padding:2.5rem 1.5rem 4rem}.page-title{font-size:1.5rem;margin-top:0;margin-bottom:2rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.post-list{display:flex;flex-direction:column;gap:0}.post-item{padding:1.5rem 0;border-bottom:1px solid var(--border)}.post-item:first-child{padding-top:.5rem}.post-meta-line{display:flex;align-items:center;gap:.75rem;margin-bottom:.35rem;font-size:.85rem;color:var(--text-muted)}.post-date{font-size:.85rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.reading-time{font-size:.8rem;color:var(--text-muted)}.reading-time::before{content:"·";margin-right:.5rem}.post-title{font-size:1.15rem;margin-top:0;margin-bottom:.5rem;font-weight:600;line-height:1.4}.post-title a{color:var(--text)}.post-title a:hover{color:var(--accent);opacity:1}.post-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem}.tag{display:inline-block;background-color:var(--code-bg);border:1px solid var(--border);border-radius:3px;color:var(--text-muted);font-size:.78rem;padding:.1em .5em;line-height:1.7;transition:border-color .15s ease,color .15s ease}.tag:hover{color:var(--accent);border-color:var(--accent);opacity:1}.tag-sm{font-size:.72rem;line-height:1.3;padding:.05em .45em}.post-header{margin-bottom:2.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.post-header .post-title{font-size:1.75rem;margin-top:0;margin-bottom:.75rem;color:var(--text)}.post-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;font-size:.85rem;color:var(--text-muted)}.post-meta .reading-time::before{content:"·";margin-right:.5rem}.post-content h1,.post-content h2,.post-content h3,.post-content h4,.post-content h5,.post-content h6{margin-top:2.5em}.post-content h2{padding-bottom:.3em;border-bottom:1px solid var(--border)}.post-content img{margin:1.5em auto}.post-content .highlight,.post-content .highlighter-rouge{margin-bottom:1.4em}.post-nav{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border)}.post-nav-prev,.post-nav-next{display:flex;flex-direction:column;gap:.25rem;padding:1rem;border:1px solid var(--border);border-radius:6px;color:var(--text);transition:border-color .15s ease}.post-nav-prev:hover,.post-nav-next:hover{border-color:var(--accent);color:var(--text);opacity:1}.post-nav-prev .nav-label,.post-nav-next .nav-label{font-size:.75rem;color:var(--text-muted);font-weight:500}.post-nav-prev .nav-title,.post-nav-next .nav-title{font-size:.9rem;font-weight:600;line-height:1.4}.post-nav-next{text-align:right}.post-nav-empty{display:block}.archive-year{margin-bottom:2.5rem}.archive-year-heading{font-size:1.25rem;margin-top:0;margin-bottom:1rem;color:var(--text)}.archive-month{margin-bottom:1.5rem;padding-left:1rem}.archive-month-heading{font-size:.95rem;font-weight:600;color:var(--text-muted);margin-top:0;margin-bottom:.5rem;border-bottom:none}.archive-post-list{list-style:none;padding:0;margin:0}.archive-post-item{display:flex;align-items:flex-start;flex-wrap:nowrap;gap:.75rem;padding:.5rem 0;border-bottom:1px solid var(--border);font-size:.9rem}.archive-post-item .post-date{flex-shrink:0;white-space:nowrap;color:var(--text-muted);padding-top:.1em}.archive-post-item .archive-post-body{flex:1;min-width:0}.archive-post-item a{color:var(--text);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.archive-post-item a:hover{color:var(--accent);opacity:1}.archive-post-item .archive-post-desc{font-size:.8rem;color:var(--text-muted);margin:.15rem 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tag-cloud{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:3rem;padding:1.25rem;background-color:var(--code-bg);border-radius:6px;border:1px solid var(--border)}.tag-cloud .tag-cloud-item{font-size:.85rem;color:var(--text-muted)}.tag-cloud .tag-cloud-item .tag-count{font-size:.7rem;opacity:.7}.tag-section{margin-bottom:2.5rem}.tag-section-heading{display:flex;align-items:center;gap:.75rem;margin-top:0;margin-bottom:.75rem;border-bottom:none}.tag-section-heading .tag{font-size:.9rem}.tag-section-heading .tag-count-label{font-size:.8rem;color:var(--text-muted);font-weight:400}#interview-results .result-excerpt{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal}.search-result-item--expandable{cursor:pointer}.search-result-item--expandable:hover .result-excerpt{opacity:.75}body.modal-open{overflow:hidden}.card-modal-overlay{position:fixed;inset:0;background-color:rgba(0,0,0,.45);z-index:500;display:flex;align-items:center;justify-content:center;padding:1.5rem;opacity:0;pointer-events:none;transition:opacity .1s ease}.card-modal-overlay.is-open{opacity:1;pointer-events:auto}.card-modal-overlay.is-open .card-modal{pointer-events:auto}.card-modal-overlay .card-modal{pointer-events:none}.card-modal{position:relative;background-color:var(--bg);border:1px solid var(--border);border-radius:8px;padding:1.5rem 1.75rem;max-width:600px;width:100%;max-height:80vh;overflow-y:auto;box-shadow:0 8px 32px rgba(0,0,0,.15)}.card-modal-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:1.25rem;line-height:1;padding:.25rem;border-radius:4px;transition:color .15s ease}.card-modal-close:hover{color:var(--text)}.card-modal-meta{font-size:.82rem;color:var(--text-muted);margin-bottom:.75rem}.card-modal-question{font-size:1.05rem;font-weight:600;color:var(--text);margin-bottom:1rem}.card-modal-answer{font-size:.88rem;color:var(--text-muted);line-height:1.6;white-space:pre-wrap}.search-container .search-input-wrapper{position:relative;margin-bottom:1.5rem}.search-container .search-input-wrapper svg{position:absolute;left:.9rem;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.search-container #search-input,.search-container #interview-search-input{width:100%;padding:.75rem 1rem .75rem 2.75rem;border:1px solid var(--border);border-radius:6px;background-color:var(--bg);color:var(--text);font-size:1rem;font-family:inherit;outline:none;transition:border-color .15s ease}.search-container #search-input:focus,.search-container #interview-search-input:focus{border-color:var(--accent)}.search-container #search-input::placeholder,.search-container #interview-search-input::placeholder{color:var(--text-muted)}.search-results .search-result-item{padding:1.25rem 0;border-bottom:1px solid var(--border)}.search-results .search-result-item:first-child{padding-top:0}.search-results .result-title{font-size:1.05rem;font-weight:600;margin-bottom:.25rem}.search-results .result-title a{color:var(--text)}.search-results .result-title a:hover{color:var(--accent);opacity:1}.search-results .result-meta{font-size:.82rem;color:var(--text-muted);margin-bottom:.4rem}.search-results .result-excerpt{font-size:.88rem;color:var(--text-muted);line-height:1.6}.search-results .result-excerpt em{font-style:normal;background-color:rgba(74,158,255,.15);border-radius:2px;padding:0 2px;color:var(--text)}.search-results .search-no-results,.search-results .search-hint{color:var(--text-muted);font-size:.9rem;padding:2rem 0;text-align:center}.page-single .page-header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.page-single .page-header .page-title{margin-bottom:0;border-bottom:none;padding-bottom:0}.page-single .page-body h1:first-child,.page-single .page-body h2:first-child,.page-single .page-body h3:first-child{margin-top:0}.error-page{text-align:center;padding:5rem 1.5rem}.error-page .error-code{font-size:5rem;font-weight:700;color:var(--border);line-height:1;margin-bottom:1rem}.error-page h1{font-size:1.5rem;margin-top:0;margin-bottom:1rem}.error-page p{color:var(--text-muted);margin-bottom:2rem}.error-page .btn{display:inline-block;padding:.6em 1.4em;border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.9rem;transition:border-color .15s ease,color .15s ease}.error-page .btn:hover{border-color:var(--accent);color:var(--accent);opacity:1}.site-footer{border-top:1px solid var(--border);margin-top:auto}.footer-inner{max-width:680px;margin:0 auto;padding:1.25rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:.82rem;color:var(--text-muted)}.footer-inner .rss-link{display:flex;align-items:center;gap:.35rem;color:var(--text-muted)}.footer-inner .rss-link:hover{color:var(--accent);opacity:1}@media(max-width: 640px){.header-inner{padding:0 1rem}.site-nav{display:none}.nav-toggle{display:flex}.page-content{padding:1.75rem 1rem 3rem}.post-nav{grid-template-columns:1fr}.post-nav-next{text-align:left}h1{font-size:1.5rem}h2{font-size:1.2rem}.card-modal{max-height:90vh;padding:1.25rem}}.highlight{background-color:var(--code-bg);border:1px solid var(--border);border-radius:6px;overflow-x:auto}.highlight pre{background:none;border:none;margin:0;padding:1.2em 1.4em}.highlight table{border:none;margin:0;width:auto}.highlight table td{border:none;padding:0;background:none}.highlight table td.gl{padding-right:1em;color:var(--text-muted);user-select:none}.highlight .c{color:#6a737d;font-style:italic}.highlight .c1{color:#6a737d;font-style:italic}.highlight .cm{color:#6a737d;font-style:italic}.highlight .cp{color:#6a737d}.highlight .k{color:#d73a49}.highlight .kd{color:#d73a49}.highlight .kn{color:#d73a49}.highlight .kr{color:#d73a49}.highlight .kt{color:#d73a49}.highlight .nt{color:#22863a}.highlight .na{color:#6f42c1}.highlight .nb{color:#005cc5}.highlight .nc{color:#6f42c1}.highlight .nf{color:#6f42c1}.highlight .no{color:#005cc5}.highlight .s{color:#032f62}.highlight .s1{color:#032f62}.highlight .s2{color:#032f62}.highlight .sb{color:#032f62}.highlight .se{color:#032f62}.highlight .si{color:#032f62}.highlight .ss{color:#032f62}.highlight .m{color:#005cc5}.highlight .mi{color:#005cc5}.highlight .mf{color:#005cc5}.highlight .mh{color:#005cc5}.highlight .o{color:#d73a49}.highlight .ow{color:#d73a49}.highlight .p{color:var(--text)}.highlight .nv{color:#e36209}.highlight .vi{color:#e36209}[data-theme=dark] .highlight .c,[data-theme=dark] .highlight .c1,[data-theme=dark] .highlight .cm,[data-theme=dark] .highlight .cp{color:#8b949e}[data-theme=dark] .highlight .k,[data-theme=dark] .highlight .kd,[data-theme=dark] .highlight .kn,[data-theme=dark] .highlight .kr,[data-theme=dark] .highlight .kt,[data-theme=dark] .highlight .o,[data-theme=dark] .highlight .ow{color:#ff7b72}[data-theme=dark] .highlight .nt{color:#7ee787}[data-theme=dark] .highlight .na{color:#d2a8ff}[data-theme=dark] .highlight .nb{color:#79c0ff}[data-theme=dark] .highlight .nc{color:#d2a8ff}[data-theme=dark] .highlight .nf{color:#d2a8ff}[data-theme=dark] .highlight .no{color:#79c0ff}[data-theme=dark] .highlight .s,[data-theme=dark] .highlight .s1,[data-theme=dark] .highlight .s2,[data-theme=dark] .highlight .sb,[data-theme=dark] .highlight .se,[data-theme=dark] .highlight .si,[data-theme=dark] .highlight .ss{color:#a5d6ff}[data-theme=dark] .highlight .m,[data-theme=dark] .highlight .mi,[data-theme=dark] .highlight .mf,[data-theme=dark] .highlight .mh{color:#79c0ff}[data-theme=dark] .highlight .nv,[data-theme=dark] .highlight .vi{color:#ffa657}/*# sourceMappingURL=main.css.map */