:root{color-scheme:light;--canvas:#fff;--surface-soft:#f8f9fa;--surface-card:#f5f5f5;--surface-strong:#e5e7eb;--hairline:#e5e7eb;--hairline-soft:#f3f4f6;--ink:#111;--text:#374151;--muted:#6b7280;--muted-soft:#898989;--primary:#111;--primary-hover:#242424;--primary-text:#fff;--primary-disabled-bg:#e5e7eb;--primary-disabled-text:#6b7280;--accent:#3b82f6;--link:#1d4ed8;--ring:#3b82f6;--success-decor:#10b981;--success-text:#047857;--warning-decor:#f59e0b;--warning-text:#92400e;--error-decor:#ef4444;--error-text:#dc2626;--error-bg:#fef2f2;--btn-blue:#2563eb;--btn-blue-hover:#1d4ed8;--btn-blue-text:#fff;--btn-green:#16a34a;--btn-green-hover:#15803d;--btn-green-text:#fff;--btn-amber:#d97706;--btn-amber-hover:#b45309;--btn-amber-text:#fff;--btn-red-bg:#fef2f2;--btn-red-text:#b91c1c;--btn-red-border:#fca5a5;--btn-red-hover:#dc2626;--btn-indigo-bg:#eef2ff;--btn-indigo-text:#4338ca;--btn-indigo-border:#c7d2fe;--btn-indigo-hover:#4f46e5;--btn-teal-bg:#ecfeff;--btn-teal-text:#0e7490;--btn-teal-border:#a5f3fc;--btn-teal-hover:#0891b2;--btn-violet-bg:#f5f3ff;--btn-violet-text:#6d28d9;--btn-violet-border:#ddd6fe;--btn-violet-hover:#7c3aed;--footer-bg:#101010;--footer-text:#a1a1aa;--footer-heading:#fff;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.125rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:clamp(1.75rem, 1.4rem + 1.2vw, 2rem);--text-display:clamp(2.25rem, 1.5rem + 2.8vw, 3.5rem);--leading-tight:1.15;--leading-heading:1.25;--leading-body:1.6;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--section:clamp(48px, 8vw, 96px);--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-pill:999px;--shadow-1:0 1px 2px #0000000d;--shadow-2:0 4px 12px #00000014;--container:1200px;--container-narrow:760px;--control-height:42px;--fast:.12s ease;--med:.2s ease}[data-theme=dark]{color-scheme:dark;--canvas:#101010;--surface-soft:#161616;--surface-card:#1a1a1a;--surface-strong:#262626;--hairline:#2a2a2a;--hairline-soft:#222;--ink:#f5f5f5;--text:#d4d4d4;--muted:#a1a1aa;--muted-soft:#8a8a93;--primary:#f5f5f5;--primary-hover:#dcdcdc;--primary-text:#111;--primary-disabled-bg:#2a2a2a;--primary-disabled-text:#7a7a83;--accent:#60a5fa;--link:#93c5fd;--ring:#60a5fa;--success-decor:#34d399;--success-text:#34d399;--warning-decor:#fbbf24;--warning-text:#fbbf24;--error-decor:#f87171;--error-text:#f87171;--error-bg:#1f1416;--btn-blue:#3b82f6;--btn-blue-hover:#2563eb;--btn-blue-text:#fff;--btn-green:#16a34a;--btn-green-hover:#22c55e;--btn-green-text:#fff;--btn-amber:#d97706;--btn-amber-hover:#f59e0b;--btn-amber-text:#fff;--btn-red-bg:#450a0a;--btn-red-text:#fca5a5;--btn-red-border:#7f1d1d;--btn-red-hover:#dc2626;--btn-indigo-bg:#1e1b4b;--btn-indigo-text:#c7d2fe;--btn-indigo-border:#3730a3;--btn-indigo-hover:#4f46e5;--btn-teal-bg:#083344;--btn-teal-text:#67e8f9;--btn-teal-border:#155e75;--btn-teal-hover:#0891b2;--btn-violet-bg:#2e1065;--btn-violet-text:#ddd6fe;--btn-violet-border:#5b21b6;--btn-violet-hover:#7c3aed;--footer-bg:#0a0a0a;--footer-text:#a1a1aa;--footer-heading:#fff;--shadow-1:0 1px 2px #0006;--shadow-2:0 4px 12px #00000073}html:lang(ja){--font-sans:system-ui, -apple-system, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif}html:lang(zh-CN),html:lang(zh){--font-sans:system-ui, -apple-system, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--canvas);min-height:100dvh;color:var(--text);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;flex-direction:column;display:flex}main{flex:1}img,svg{max-width:100%;display:block}input,button,select,textarea{font:inherit;color:inherit}h1,h2,h3,h4{color:var(--ink);line-height:var(--leading-heading);letter-spacing:-.02em;overflow-wrap:break-word;font-weight:600}h1{font-size:var(--text-2xl);line-height:var(--leading-tight)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}p{overflow-wrap:break-word}a{color:var(--link);text-underline-offset:2px;text-decoration:none}a:hover{text-decoration:underline}code{font-family:var(--font-mono);background:var(--surface-card);border:1px solid var(--hairline-soft);border-radius:var(--radius-sm);padding:.1em .35em;font-size:.92em}:focus-visible{outline:2px solid var(--ring);outline-offset:2px;border-radius:var(--radius-sm)}::selection{background:var(--accent);color:#fff}.container{width:100%;max-width:var(--container);padding-inline:var(--space-4);margin-inline:auto}@media (width>=768px){.container{padding-inline:var(--space-5)}}.narrow{max-width:var(--container-narrow)}.section{padding-block:var(--section)}.section--tight{padding-block:calc(var(--section) / 2)}.stack>*+*{margin-top:var(--space-4)}.lead{font-size:var(--text-md);color:var(--muted);max-width:62ch}.page-head{padding-top:var(--space-7);padding-bottom:var(--space-5);gap:var(--space-3);display:grid}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{left:var(--space-4);z-index:100;background:var(--ink);color:var(--canvas);border-radius:var(--radius-md);padding:10px 16px;font-weight:600;position:absolute;top:-100%}.skip-link:focus{top:var(--space-3)}.mono{font-family:var(--font-mono)}.text-muted{color:var(--muted)}.text-sm{font-size:var(--text-sm)}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}table.data{border-collapse:collapse;width:100%;font-size:var(--text-sm)}table.data th,table.data td{text-align:left;border-bottom:1px solid var(--hairline);white-space:nowrap;padding:10px 14px}table.data th{color:var(--muted);font-weight:500;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em}table.data td{color:var(--text)}table.data .num{font-family:var(--font-mono)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-height);border-radius:var(--radius-md);background:var(--surface-card);color:var(--ink);font-size:var(--text-sm);cursor:pointer;transition:background var(--fast), border-color var(--fast);border:1px solid #0000;padding:10px 20px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{background:var(--surface-strong);text-decoration:none}.btn:active{transform:translateY(.5px)}.btn--primary{background:var(--primary);color:var(--primary-text)}.btn--primary:hover{background:var(--primary-hover)}.btn--ghost{border-color:var(--hairline);background:0 0}.btn--ghost:hover{background:var(--surface-card)}.btn--sm{min-height:34px;font-size:var(--text-xs);padding:6px 12px}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--action,.btn--calc,button[id$=-calc],button[id$=-convert],button[id$=-check],button[id$=-plan],button[id=du-calc],button[id=dw-calc],button[id=ly-check],button[id=dst-check]{background:var(--btn-blue);border-color:#1d4ed8;font-weight:600;box-shadow:0 1px 3px #2563eb40;color:var(--btn-blue-text)!important}.btn--action:hover,.btn--calc:hover,button[id$=-calc]:hover,button[id$=-convert]:hover,button[id$=-check]:hover,button[id$=-plan]:hover,button[id=du-calc]:hover,button[id=dw-calc]:hover,button[id=ly-check]:hover,button[id=dst-check]:hover{background:var(--btn-blue-hover);border-color:#1e40af;transform:translateY(-1px);box-shadow:0 3px 8px #2563eb59;color:#fff!important}.btn--success,.btn--start,button[id$=-start],button[id$=-resume]{background:var(--btn-green);border-color:#15803d;font-weight:600;box-shadow:0 1px 3px #16a34a40;color:var(--btn-green-text)!important}.btn--success:hover,.btn--start:hover,button[id$=-start]:hover,button[id$=-resume]:hover{background:var(--btn-green-hover);border-color:#166534;transform:translateY(-1px);box-shadow:0 3px 8px #16a34a59;color:#fff!important}.btn--warning,.btn--pause,button[id$=-pause]{background:var(--btn-amber);border-color:#b45309;font-weight:600;box-shadow:0 1px 3px #d9770640;color:var(--btn-amber-text)!important}.btn--warning:hover,.btn--pause:hover,button[id$=-pause]:hover{background:var(--btn-amber-hover);border-color:#92400e;transform:translateY(-1px);box-shadow:0 3px 8px #d9770659;color:#fff!important}.btn--lap,button[id$=-lap],button[id$=-skip]{background:#0284c7;border-color:#0369a1;font-weight:600;box-shadow:0 1px 3px #0284c740;color:#fff!important}.btn--lap:hover,button[id$=-lap]:hover,button[id$=-skip]:hover{background:#0369a1;border-color:#075985;transform:translateY(-1px);box-shadow:0 3px 8px #0284c759;color:#fff!important}.btn--danger,.btn--reset,button[id$=-reset]{background:var(--btn-red-bg);border:1px solid var(--btn-red-border);font-weight:600;color:var(--btn-red-text)!important}.btn--danger:hover,.btn--reset:hover,button[id$=-reset]:hover{background:var(--btn-red-hover);border-color:#b91c1c;transform:translateY(-1px);box-shadow:0 2px 6px #dc26264d;color:#fff!important}.btn--now,.btn--helper,button[id$=-now],button[id$=-today],button[id$=-add-btn],button[id=tzc-add],button[data-cd-preset]{background:var(--btn-indigo-bg);border:1px solid var(--btn-indigo-border);font-weight:500;color:var(--btn-indigo-text)!important}.btn--now:hover,.btn--helper:hover,button[id$=-now]:hover,button[id$=-today]:hover,button[id$=-add-btn]:hover,button[id=tzc-add]:hover,button[data-cd-preset]:hover{background:var(--btn-indigo-hover);border-color:#4338ca;transform:translateY(-1px);box-shadow:0 2px 6px #4f46e540;color:#fff!important}.btn--copy,button[data-copy]{background:var(--btn-teal-bg);border:1px solid var(--btn-teal-border);font-weight:500;color:var(--btn-teal-text)!important}.btn--copy:hover,button[data-copy]:hover{background:var(--btn-teal-hover);border-color:#0e7490;transform:translateY(-1px);box-shadow:0 2px 6px #0891b240;color:#fff!important}.btn--announce,button[data-speak-time],button[id$=-announce]{background:var(--btn-violet-bg);border:1px solid var(--btn-violet-border);font-weight:500;color:var(--btn-violet-text)!important}.btn--announce:hover,button[data-speak-time]:hover,button[id$=-announce]:hover{background:var(--btn-violet-hover);border-color:#6d28d9;transform:translateY(-1px);box-shadow:0 2px 6px #7c3aed40;color:#fff!important}.field{gap:6px;display:grid}.field>label{font-size:var(--text-sm);color:var(--ink);font-weight:600}.field .hint{font-size:var(--text-xs);color:var(--muted)}.input,.select,.textarea{width:100%;min-height:var(--control-height);background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--radius-md);font-size:var(--text-base);color:var(--ink);padding:9px 14px}.textarea{resize:vertical;min-height:96px}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);outline:2px solid var(--ring);outline-offset:1px}.input[aria-invalid=true],.input.error,.select[aria-invalid=true]{border-color:var(--error-decor)}.field-error{font-size:var(--text-sm);color:var(--error-text);font-weight:500}.tool-panel{background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-1)}.tool-panel+.tool-panel{margin-top:var(--space-4)}.tool-panel__grid{gap:var(--space-4);display:grid}@media (width>=640px){.tool-panel__grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-panel__grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.tool-panel__grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}}.check{font-size:var(--text-sm);color:var(--ink);cursor:pointer;align-items:center;gap:8px;font-weight:500;display:flex}.check>input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.check-group{gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.field-legend{font-size:var(--text-sm);color:var(--ink);font-weight:600}.progress{background:var(--hairline);border-radius:999px;height:8px;overflow:hidden}.progress__fill{background:var(--accent);border-radius:999px;width:0%;height:100%;transition:width .2s linear}@media (prefers-reduced-motion:reduce){.progress__fill{transition:none}}.tool-actions{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.result{margin-top:var(--space-4);background:var(--surface-soft);border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:var(--space-4)}.result:empty{display:none}.result__value{font-family:var(--font-mono);color:var(--ink);letter-spacing:-.01em;overflow-wrap:anywhere;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:600}.result__rows{gap:var(--space-2);margin-top:var(--space-3);display:grid}.result__row{gap:4px var(--space-3);border-bottom:1px solid var(--hairline-soft);flex-wrap:wrap;justify-content:space-between;align-items:baseline;padding:6px 0;display:flex}.result__row:last-child{border-bottom:0}.result__row dt{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:500}.result__row dd{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--ink);text-align:right;overflow-wrap:anywhere;margin:0}.result__note{margin-top:var(--space-3);font-size:var(--text-sm);color:var(--muted)}.clock-display{font-family:var(--font-mono);color:var(--ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:clamp(2.25rem,7vw,4rem);font-weight:600;line-height:1.1}.timer-display{font-family:var(--font-mono);color:var(--ink);font-variant-numeric:tabular-nums;text-align:center;letter-spacing:-.02em;font-size:clamp(3.5rem,14vw,7rem);font-weight:600;line-height:1}.card{background:var(--surface-card);border-radius:var(--radius-lg);padding:var(--space-5)}.card--line{background:var(--canvas);border:1px solid var(--hairline)}.tool-card{gap:var(--space-2);background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:var(--space-5);color:inherit;transition:box-shadow var(--med), transform var(--med), border-color var(--med);flex-direction:column;display:flex;position:relative}.tool-card:hover{box-shadow:var(--shadow-2);border-color:var(--accent);text-decoration:none;transform:translateY(-2px)}.tool-card h3{font-size:var(--text-base);color:var(--ink);font-weight:600;line-height:1.35}.tool-card p{font-size:var(--text-sm);color:var(--muted);line-height:1.5}.tool-card__header{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:2px;display:flex}.tool-card__cat{font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:6px;font-weight:600;display:inline-flex}.tool-card__cta{padding-top:var(--space-3);margin-top:auto}.btn-blue-click{min-height:34px;font-size:var(--text-xs);border-radius:var(--radius-md);transition:background var(--fast), border-color var(--fast), box-shadow var(--fast), transform var(--fast);white-space:nowrap;cursor:pointer;background:#2563eb;border:1px solid #1d4ed8;justify-content:center;align-items:center;gap:6px;width:fit-content;padding:6px 14px;font-weight:600;display:inline-flex;box-shadow:0 1px 3px #2563eb40;color:#fff!important;text-decoration:none!important}.btn-blue-click--full{width:100%}.tool-card:hover .btn-blue-click,.btn-blue-click:hover{background:#1d4ed8;border-color:#1e40af;transform:translateY(-1px);box-shadow:0 3px 8px #2563eb59;color:#fff!important}.btn-blue-click:active{transform:translateY(0)}.btn-blue-click__icon{transition:transform var(--fast);flex-shrink:0}.tool-card:hover .btn-blue-click__icon,.btn-blue-click:hover .btn-blue-click__icon{transform:translate(3px)}[data-theme=dark] .btn-blue-click{background:#3b82f6;border-color:#60a5fa;box-shadow:0 1px 3px #3b82f64d}[data-theme=dark] .tool-card:hover .btn-blue-click,[data-theme=dark] .btn-blue-click:hover{background:#2563eb;border-color:#93c5fd;box-shadow:0 4px 10px #3b82f666}.cat-badge{border-radius:var(--radius-pill);font-size:var(--text-xs);letter-spacing:.02em;align-items:center;gap:5px;padding:2px 8px;font-weight:600;display:inline-flex}.cat-badge--timestamp{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.cat-badge--time-converter{color:#a21caf;background:#fdf4ff;border:1px solid #f5d0fe}.cat-badge--time-zone{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.cat-badge--date-calculator{color:#b45309;background:#fffbeb;border:1px solid #fde68a}.cat-badge--timers{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.cat-badge--work-hours{color:#6d28d9;background:#f5f3ff;border:1px solid #ddd6fe}[data-theme=dark] .cat-badge--timestamp{color:#bfdbfe;background:#1e3a8a;border-color:#2563eb}[data-theme=dark] .cat-badge--time-converter{color:#f5d0fe;background:#581c87;border-color:#9333ea}[data-theme=dark] .cat-badge--time-zone{color:#a7f3d0;background:#064e3b;border-color:#059669}[data-theme=dark] .cat-badge--date-calculator{color:#fde68a;background:#78350f;border-color:#d97706}[data-theme=dark] .cat-badge--timers{color:#fecaca;background:#7f1d1d;border-color:#dc2626}[data-theme=dark] .cat-badge--work-hours{color:#ddd6fe;background:#4c1d95;border-color:#7c3aed}.badge--mini{padding:1px 6px;font-size:10px}.card-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));display:grid}.chip-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{border-radius:var(--radius-pill);background:var(--surface-card);border:1px solid var(--hairline);font-size:var(--text-xs);color:var(--text);align-items:center;padding:5px 12px;font-weight:500;display:inline-flex}button.chip{cursor:pointer}button.chip:hover{background:var(--surface-strong)}.badge{border-radius:var(--radius-pill);font-size:var(--text-xs);background:var(--surface-strong);color:var(--ink);align-items:center;gap:6px;padding:3px 10px;font-weight:600;display:inline-flex}.badge--ok{background:color-mix(in srgb, var(--success-decor) 14%, transparent);color:var(--success-text)}.badge--warn{background:color-mix(in srgb, var(--warning-decor) 16%, transparent);color:var(--warning-text)}.notice{gap:var(--space-2);border-radius:var(--radius-md);font-size:var(--text-sm);margin-top:var(--space-3);align-items:flex-start;padding:10px 14px;display:flex}.notice--error{background:var(--error-bg);color:var(--error-text)}.notice--info{background:var(--surface-card);color:var(--text)}.notice--warn{background:color-mix(in srgb, var(--warning-decor) 12%, transparent);color:var(--warning-text)}.site-header{z-index:50;background:color-mix(in srgb, var(--canvas) 92%, transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--hairline);position:sticky;top:0}.site-header__inner{align-items:center;gap:clamp(8px,1.2vw,16px);min-height:52px;display:flex}.brand{color:var(--ink);letter-spacing:-.02em;flex-shrink:0;align-items:center;gap:8px;display:inline-flex}.brand:hover{text-decoration:none}.brand__logo-img{object-fit:cover;border:1px solid var(--hairline);border-radius:7px;flex-shrink:0;width:32px;height:32px;display:block;box-shadow:0 1px 2px #00000014}.brand--compact{gap:6px}.brand--compact .brand__logo-img{border-radius:6px;width:24px;height:24px}.brand__mark{background:var(--ink);min-width:32px;height:28px;color:var(--canvas);letter-spacing:-.03em;border-radius:7px;place-items:center;padding:0 3px;font-size:12px;font-weight:800;line-height:1;display:grid}.brand__amp{color:var(--accent);margin:0 1px;font-weight:700}.brand__text{letter-spacing:-.02em;white-space:nowrap;font-size:.95rem;font-weight:700}.brand--compact .brand__text{font-size:.875rem}.site-nav{flex-shrink:1;align-items:center;gap:clamp(1px,.35vw,4px);min-width:0;margin-left:auto;display:flex}.site-nav a{white-space:nowrap;border-radius:var(--radius-sm);color:var(--text);letter-spacing:-.01em;transition:background var(--fast), color var(--fast);flex-shrink:0;align-items:center;padding:4px clamp(5px,.55vw,8px);font-size:clamp(.72rem,.78vw,.8125rem);font-weight:500;line-height:1.3;display:inline-flex}.site-nav a:hover{background:var(--surface-card);color:var(--ink);text-decoration:none}.site-nav a[aria-current=page]{background:var(--surface-card);color:var(--ink);font-weight:600}.site-nav__label{display:inline}.site-nav__label--short{display:none}@media (width<=1300px){.site-nav__label--full{display:none}.site-nav__label--short{display:inline}}.header-actions{flex-shrink:0;align-items:center;gap:clamp(4px,.6vw,8px);display:flex}@media (width<=1024px){.site-nav{display:none}}.nav-toggle{border:1px solid var(--hairline);border-radius:var(--radius-md);cursor:pointer;width:34px;height:34px;color:var(--ink);background:0 0;place-items:center;display:none}@media (width<=1024px){.nav-toggle{display:grid}}.mobile-nav{border-top:1px solid var(--hairline);background:var(--canvas);padding:var(--space-3) 0 var(--space-4);display:none}.mobile-nav[data-open=true]{display:block}.mobile-nav ul{margin:0;padding:0;list-style:none}.mobile-nav a{padding:12px var(--space-4);color:var(--ink);border-radius:var(--radius-md);font-weight:500;display:block}.mobile-nav a:hover{background:var(--surface-card);text-decoration:none}.search,.search__input-wrap{position:relative}.search__input{width:100%;min-height:var(--control-height);border:1px solid var(--hairline);border-radius:var(--radius-md);background:var(--canvas);font-size:var(--text-base);color:var(--ink);padding:9px 14px 9px 42px}.search--hero .search__input{font-size:var(--text-md);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);padding:14px 14px 14px 48px}.search__icon{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search__panel{z-index:60;background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);max-height:340px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.search__panel[hidden]{display:none}.search__option{border-radius:var(--radius-md);color:inherit;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.search__option:hover,.search__option[data-active=true]{background:var(--surface-card);text-decoration:none}.search__option .name{color:var(--ink);font-weight:600;font-size:var(--text-sm)}.search__option .meta{font-size:var(--text-xs);color:var(--muted)}.search__empty{font-size:var(--text-sm);color:var(--muted);padding:14px}.header-search{flex-shrink:1;width:clamp(130px,12vw,180px)}.header-search .search__input{height:32px;min-height:32px;font-size:var(--text-xs);border-radius:var(--radius-md);padding:4px 10px 4px 30px}.header-search .search__icon{left:9px}@media (width<=1024px){.header-search{display:none}}.theme-toggle{border:1px solid var(--hairline);border-radius:var(--radius-md);cursor:pointer;width:32px;height:32px;color:var(--ink);background:0 0;flex-shrink:0;place-items:center;display:grid}.theme-toggle:hover{background:var(--surface-card)}[data-theme=light] .theme-toggle__moon{display:block}[data-theme=light] .theme-toggle__sun,[data-theme=dark] .theme-toggle__moon{display:none}[data-theme=dark] .theme-toggle__sun{display:block}.breadcrumbs{padding-top:var(--space-5);font-size:var(--text-sm)}.breadcrumbs ol{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li{align-items:center;gap:6px;display:flex}.breadcrumbs li+li:before{content:"/";color:var(--muted-soft)}.breadcrumbs a{color:var(--muted)}.breadcrumbs a:hover{color:var(--link)}.breadcrumbs [aria-current=page]{color:var(--ink);font-weight:500}.faq{margin-top:var(--space-4);border:1px solid var(--hairline);border-radius:var(--radius-lg);background:var(--canvas)}.faq details{border-bottom:1px solid var(--hairline)}.faq details:last-child{border-bottom:0}.faq summary{cursor:pointer;padding:14px var(--space-4);color:var(--ink);justify-content:space-between;gap:var(--space-3);align-items:center;font-weight:600;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--muted);font-weight:400;font-size:var(--text-lg);flex-shrink:0}.faq details[open] summary:after{content:"−"}.faq .faq__a{padding:0 var(--space-4) var(--space-4);color:var(--text);font-size:var(--text-sm);line-height:var(--leading-body)}.prose{max-width:var(--container-narrow)}.prose>*+*{margin-top:var(--space-4)}.prose h2{margin-top:var(--space-7)}.prose h3{margin-top:var(--space-6)}.prose ul,.prose ol{gap:var(--space-2);padding-left:1.4em;display:grid}.prose table{margin-block:var(--space-4)}.site-footer{background:var(--footer-bg);color:var(--footer-text);margin-top:var(--section);padding:var(--space-8) 0 var(--space-6)}.site-footer .brand{color:var(--footer-heading);margin-bottom:var(--space-3)}.site-footer .brand__logo-img{border-color:#ffffff26}.site-footer a{color:var(--footer-text)}.site-footer a:hover{color:var(--footer-heading);text-decoration:underline}.footer-grid{gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.footer-grid h3{color:var(--footer-heading);font-size:var(--text-sm);margin-bottom:var(--space-3)}.footer-grid ul{font-size:var(--text-sm);gap:10px;margin:0;padding:0;list-style:none;display:grid}.footer-bottom{margin-top:var(--space-7);padding-top:var(--space-5);gap:var(--space-3);font-size:var(--text-xs);color:var(--muted-soft);border-top:1px solid #1f1f1f;flex-wrap:wrap;justify-content:space-between;display:flex}.sr-status{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.header-live-clock{background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-pill);height:28px;color:var(--ink);white-space:nowrap;user-select:none;flex-shrink:0;align-items:center;gap:5px;padding:3px 8px;font-size:11px;display:inline-flex}.header-live-dot{background:var(--success-decor);border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse-glow}.header-live-time{letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:11.5px;font-weight:600}@media (width<=440px){.header-live-clock{display:none}}@keyframes pulse-glow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.85)}}.local-clock{background:var(--canvas);border:1px solid var(--hairline);box-shadow:var(--shadow-2)}.local-clock__head{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:8px;display:flex}.clock-footnote{font-size:var(--text-xs);color:var(--muted);margin-top:12px;line-height:1.4}.tool-directory-section{padding-block:var(--space-7);border-bottom:1px solid var(--hairline-soft)}.directory-head{gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--hairline);flex-direction:column;display:flex}@media (width>=768px){.directory-head{flex-direction:row;justify-content:space-between;align-items:flex-end}}.directory-head__copy h2{font-size:clamp(1.5rem,3vw,2rem)}.directory-controls{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.view-switch{background:var(--surface-card);border-radius:var(--radius-md);border:1px solid var(--hairline);align-items:center;gap:4px;padding:4px;display:inline-flex}.view-switch__label{font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:0 6px;font-weight:600}.view-btn{border-radius:var(--radius-sm);color:var(--muted);font-size:var(--text-xs);cursor:pointer;transition:all var(--fast);background:0 0;border:1px solid #0000;align-items:center;gap:6px;padding:6px 12px;font-weight:600;display:inline-flex}.view-btn:hover{color:var(--ink);background:color-mix(in srgb, var(--surface-strong) 50%, transparent)}.view-btn--active{box-shadow:var(--shadow-1);background:var(--canvas)!important;color:var(--ink)!important;border-color:var(--hairline)!important}.directory-sort{align-items:center;gap:6px;display:inline-flex}.sort-label{font-size:var(--text-xs);color:var(--muted);font-weight:600}.select--sm{min-height:34px;font-size:var(--text-xs);width:auto;padding:4px 10px}.directory-toolbar{gap:var(--space-3);margin-top:var(--space-4);margin-bottom:var(--space-4);flex-direction:column;display:flex}@media (width>=860px){.directory-toolbar{flex-direction:row;justify-content:space-between;align-items:center}}.category-tabs{flex-wrap:wrap;gap:6px;display:flex}.cat-tab{border-radius:var(--radius-pill);border:1px solid var(--hairline);background:var(--surface-card);color:var(--text);font-size:var(--text-xs);cursor:pointer;transition:all var(--fast);align-items:center;gap:5px;padding:6px 12px;font-weight:500;display:inline-flex}.cat-tab:hover{background:var(--surface-strong);color:var(--ink)}.cat-tab--active{background:var(--ink);color:var(--canvas);border-color:var(--ink);font-weight:600}[data-theme=dark] .cat-tab--active{background:var(--ink);color:#111;border-color:var(--ink)}.tab-count{opacity:.8;font-size:11px}.directory-search{align-items:center;gap:var(--space-3);display:flex}.input--sm{min-height:36px;font-size:var(--text-xs);padding:6px 12px}.input--filter{max-width:240px}@media (width<=639px){.input--filter{width:100%;max-width:100%}}.directory-counter{font-size:var(--text-xs);color:var(--muted);white-space:nowrap}.directory-list--mini{flex-direction:column;gap:8px;display:flex}.directory-list--mini .item-max{display:none!important}.directory-list--mini .item-mini{justify-content:space-between;align-items:center;gap:var(--space-4);background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-lg);transition:all var(--fast);padding:12px 18px;display:flex}.directory-list--mini .item-mini:hover{background:var(--canvas);border-color:var(--accent);box-shadow:var(--shadow-2);transform:translate(2px)}.directory-list--mini .item-mini__info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}@media (width>=768px){.directory-list--mini .item-mini__info{align-items:center;gap:var(--space-4);flex-direction:row}}.directory-list--mini .item-mini__meta{flex-shrink:0;align-items:center;gap:6px;display:flex}.directory-list--mini .item-mini__title{font-size:var(--text-sm);white-space:nowrap;font-weight:600}.directory-list--mini .item-mini__title a{color:var(--ink);text-decoration:none}.directory-list--mini .item-mini__title a:hover{color:var(--link);text-decoration:underline}.directory-list--mini .item-mini__short{font-size:var(--text-xs);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.directory-list--mini .item-mini__action{flex-shrink:0}.directory-list--max{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));display:grid}.directory-list--max .item-mini{display:none!important}.directory-list--max .item-max{gap:var(--space-2);padding:var(--space-5);background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-lg);transition:all var(--fast);flex-direction:column;height:100%;display:flex}.directory-list--max .item-max:hover{background:var(--canvas);border-color:var(--accent);box-shadow:var(--shadow-2);transform:translateY(-2px)}.directory-list--max .item-max__header{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.directory-list--max .item-max__title{font-size:var(--text-base);margin-top:4px;font-weight:600;line-height:1.35}.directory-list--max .item-max__title a{color:var(--ink);text-decoration:none}.directory-list--max .item-max__title a:hover{color:var(--link);text-decoration:underline}.directory-list--max .item-max__lead{font-size:var(--text-xs);color:var(--muted);font-weight:500}.directory-list--max .item-max__body{margin-block:var(--space-2);flex:1}.directory-list--max .item-max__desc{font-size:var(--text-sm);color:var(--text);line-height:1.5}.directory-list--max .item-max__tags{margin-top:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;gap:4px;display:flex}.chip-tag{background:var(--surface-strong);color:var(--muted);border-radius:var(--radius-sm);font-size:11px;font-family:var(--font-mono);padding:2px 7px;display:inline-block}.directory-list--max .item-max__action{margin-top:auto}.directory-empty{padding:var(--space-6);text-align:center;color:var(--muted);font-size:var(--text-sm);background:var(--surface-card);border-radius:var(--radius-lg);border:1px dashed var(--hairline);margin-top:var(--space-4)}@media (width<=639px){.container{padding-inline:14px}.tool-panel,.card,.tool-card{padding:16px}.clock-display{font-size:clamp(2rem,8vw,3rem)}.result__row{flex-direction:row;justify-content:space-between;align-items:center;padding:8px 0}.result__row dt{font-size:11px}.result__row dd{font-size:13px}.directory-list--mini .item-mini{flex-direction:column;align-items:flex-start;gap:10px;padding:14px}.directory-list--mini .item-mini__action,.directory-list--mini .item-mini__action .btn-blue-click{width:100%}.directory-list--mini .item-mini__short{white-space:normal}.btn{min-height:40px}.cat-tab{padding:7px 12px}}.lang-selector[data-astro-cid-jwfgfhzu]{display:inline-block;position:relative}.lang-selector__button[data-astro-cid-jwfgfhzu]{height:32px;color:var(--text);border:1px solid var(--hairline);border-radius:var(--radius-md);font-size:var(--text-xs);cursor:pointer;transition:background var(--fast), border-color var(--fast), color var(--fast);background:0 0;align-items:center;gap:5px;padding:0 8px;font-weight:500;display:inline-flex}.lang-selector__button[data-astro-cid-jwfgfhzu]:hover{background:var(--surface-soft);color:var(--ink);border-color:var(--surface-strong)}.lang-selector__button[data-astro-cid-jwfgfhzu]:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.lang-selector__globe[data-astro-cid-jwfgfhzu]{opacity:.8;flex-shrink:0}.lang-selector__chevron[data-astro-cid-jwfgfhzu]{opacity:.6;transition:transform var(--fast);flex-shrink:0}.lang-selector[data-astro-cid-jwfgfhzu][data-open=true] .lang-selector__chevron[data-astro-cid-jwfgfhzu]{transform:rotate(180deg)}.lang-selector__dropdown[data-astro-cid-jwfgfhzu]{background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--radius-md);min-width:160px;box-shadow:var(--shadow-2);z-index:100;padding:4px;position:absolute;top:calc(100% + 6px);right:0}.lang-selector__dropdown[data-astro-cid-jwfgfhzu][hidden]{display:none}.lang-selector__list[data-astro-cid-jwfgfhzu]{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.lang-selector__link[data-astro-cid-jwfgfhzu]{border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-xs);transition:background var(--fast), color var(--fast);justify-content:space-between;align-items:center;padding:7px 10px;font-weight:500;text-decoration:none;display:flex}.lang-selector__link[data-astro-cid-jwfgfhzu]:hover,.lang-selector__link[data-astro-cid-jwfgfhzu]:focus-visible{background:var(--surface-soft);color:var(--ink);outline:none}.lang-selector__link--active[data-astro-cid-jwfgfhzu]{color:var(--primary);background:var(--surface-card);font-weight:600}.lang-selector__check[data-astro-cid-jwfgfhzu]{color:var(--primary)}.lang-selector--compact[data-astro-cid-jwfgfhzu] .lang-selector__button[data-astro-cid-jwfgfhzu]{width:100%;height:40px;font-size:var(--text-sm);justify-content:space-between;padding:0 12px}.lang-selector--compact[data-astro-cid-jwfgfhzu] .lang-selector__dropdown[data-astro-cid-jwfgfhzu]{box-shadow:none;border-color:var(--hairline-soft);background:var(--surface-soft);margin-top:6px;position:static}@media (width<=640px){.lang-selector[data-astro-cid-jwfgfhzu]:not(.lang-selector--compact) .lang-selector__current[data-astro-cid-jwfgfhzu]{display:none}.lang-selector[data-astro-cid-jwfgfhzu]:not(.lang-selector--compact) .lang-selector__button[data-astro-cid-jwfgfhzu]{padding:0 8px}}.mobile-nav__lang-item[data-astro-cid-vwn3tmth]{padding-top:var(--space-3);border-top:1px solid var(--hairline);margin-top:var(--space-2)}
