@font-face{font-family:Tooly Sans;src:url(/src/fonts/Inter-Regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/src/fonts/JetBrainsMono-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{color-scheme:dark;--bg:#202020;--bg-elevated:#262626;--bg-deep:#191919;--surface:#202020;--surface-raised:#2a2a2a;--surface-muted:#252525;--surface-code:#1d1d1d;--button-bg:#303030;--button-bg-hover:#3a3a3a;--button-text:#f3f3f1;--input:#262626;--input-hover:#303030;--border:#3d3d3d;--border-strong:#555555;--border-soft:#343434;--border-accent:rgba(243,243,241,0.4);--border-default:1px solid var(--border);--text:#f3f3f1;--text-soft:#e8e8e5;--muted:#a5a5a1;--muted-strong:#cececa;--primary:#dededb;--primary-strong:#f3f3f1;--primary-soft:rgba(243,243,241,0.1);--success:#3ecf8e;--danger:#f87171;--danger-soft:rgba(248,113,113,0.08);--danger-border:rgba(248,113,113,0.4);--danger-text:#fecaca;--page-accent-glow:transparent;--page-gradient-start:#202020;--page-gradient-end:#202020;--dashboard-gradient-start:#202020;--dashboard-gradient-end:#202020;--header-bg:rgba(32,32,32,0.94);--footer-bg:rgba(32,32,32,0.94);--scrollbar-track:rgba(15,15,15,0.28);--scrollbar-thumb:rgba(154,154,154,0.56);--scrollbar-thumb-hover:rgba(180,180,180,0.74);--scrollbar-thumb-soft:rgba(154,154,154,0.36);--highlight-soft:rgba(243,243,241,0.07);--folder-modal-overlay-glow:transparent;--folder-modal-overlay:rgba(0,0,0,0.56);--folder-modal-card-start:#2a2a2a;--folder-modal-card-end:#2a2a2a;--highlight-strong:rgba(243,243,241,0.14);--focus-ring:0 0 0 3px rgba(243,243,241,0.2);--shadow-focus:0 0 0 3px rgba(243,243,241,0.12);--shadow-card:0 4px 20px rgba(0,0,0,0.08);--shadow-hover:0 10px 28px rgba(0,0,0,0.16);--shadow-modal:0 24px 72px rgba(0,0,0,0.28);--max-site-width:1100px;--max-tool-width:860px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-pill:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--space-9:48px;--space-10:64px;--space-11:96px;--font-sans:"JetBrains Mono","Tooly Sans","Inter","Helvetica Neue",Helvetica,Arial,sans-serif;--font-mono:"JetBrains Mono","SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.5rem}@media (prefers-color-scheme:light){:root{color-scheme:light;--bg:#f7f7f5;--bg-elevated:#ffffff;--bg-deep:#f0f0ed;--surface:#f7f7f5;--surface-raised:#ffffff;--surface-muted:#f3f3f0;--surface-code:#f5f5f2;--button-bg:#ebebe8;--button-bg-hover:#e1e1dd;--button-text:#242422;--input:#ffffff;--input-hover:#fafaf8;--border:#e4e4e0;--border-strong:#cacac5;--border-soft:#ededeb;--border-accent:rgba(36,36,34,0.36);--text:#242422;--text-soft:#383835;--muted:#72726d;--muted-strong:#555550;--primary:#383835;--primary-strong:#242422;--primary-soft:rgba(36,36,34,0.07);--success:#008f5a;--danger:#c24141;--danger-soft:rgba(194,65,65,0.08);--danger-border:rgba(194,65,65,0.34);--danger-text:#7f1d1d;--page-accent-glow:transparent;--page-gradient-start:#f7f7f5;--page-gradient-end:#f7f7f5;--dashboard-gradient-start:#f7f7f5;--dashboard-gradient-end:#f7f7f5;--header-bg:rgba(247,247,245,0.94);--footer-bg:rgba(247,247,245,0.94);--scrollbar-track:rgba(0,0,0,0.08);--scrollbar-thumb:rgba(116,116,107,0.48);--scrollbar-thumb-hover:rgba(85,85,78,0.64);--scrollbar-thumb-soft:rgba(116,116,107,0.32);--highlight-soft:rgba(36,36,34,0.05);--folder-modal-overlay-glow:transparent;--folder-modal-overlay:rgba(22,22,21,0.36);--folder-modal-card-start:#ffffff;--folder-modal-card-end:#ffffff;--highlight-strong:rgba(36,36,34,0.11);--focus-ring:0 0 0 3px rgba(36,36,34,0.17);--shadow-focus:0 0 0 3px rgba(36,36,34,0.1);--shadow-card:0 4px 20px rgba(36,36,34,0.04);--shadow-hover:0 10px 28px rgba(36,36,34,0.09);--shadow-modal:0 24px 72px rgba(36,36,34,0.14)}}*,:after,:before{box-sizing:border-box}html{min-width:320px;background:var(--bg);scroll-behavior:smooth}body{min-height:100vh;margin:0;display:flex;flex-direction:column;background:radial-gradient(circle at top,var(--page-accent-glow),transparent 32%),linear-gradient(180deg,var(--page-gradient-start) 0,var(--page-gradient-end) 100%);color:var(--text);font-family:var(--font-sans);font-size:16px;line-height:1.5;text-rendering:optimizeLegibility}a{color:var(--primary-strong);text-decoration:none}a:hover{color:var(--primary)}a:focus-visible,button:focus-visible{outline:2px solid var(--primary);outline-offset:3px;box-shadow:var(--focus-ring)}button,input,select{font:inherit}dd,dl,h1,h2,h3,h4,h5,h6,p{margin:0}h1{max-width:13ch;color:var(--text);font-size:clamp(2.4rem,6vw,4.5rem);font-weight:400;line-height:1}::selection{background:var(--highlight-strong);color:var(--text)}.site-width{width:min(100% - 32px,var(--max-site-width));margin-inline:auto}.skip-link{position:fixed;top:8px;left:8px;z-index:200;padding:8px 12px;border:1px solid var(--primary);border-radius:var(--radius-sm);background:var(--bg-deep);color:var(--text);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header{position:sticky;top:0;z-index:100;border-bottom:1px solid var(--border);background:var(--header-bg);backdrop-filter:blur(4px)}.header-inner{padding-block:16px;display:flex;align-items:center;justify-content:space-between}.site-logo{color:var(--text);font-family:var(--font-mono);font-size:.875rem}.shell-screen{flex:1;padding:var(--space-9) var(--space-5) var(--space-11)}.shell-container{display:flex;flex-direction:column;align-items:flex-start;gap:20px}.shell-eyebrow{color:var(--muted);font-family:var(--font-mono);font-size:.75rem;letter-spacing:1.2px;text-transform:uppercase}.shell-copy{max-width:60ch;color:var(--muted-strong)}.shell-button{min-height:44px;padding:10px 14px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--button-bg);color:var(--button-text);cursor:pointer;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.shell-button:hover:not(:disabled){background:var(--button-bg-hover);border-color:var(--border-accent);box-shadow:var(--shadow-card);color:var(--text);transform:translateY(-1px)}.shell-button:active:not(:disabled){transform:translateY(1px)}.shell-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.text-link{border-bottom:1px solid}.site-footer{margin-top:auto;border-top:1px solid var(--border-soft);background:var(--footer-bg)}.content-screen,.home-screen{flex:1;padding:var(--space-9) var(--space-5) var(--space-11)}.home-container{margin-inline:auto}.home-hero{max-width:760px;margin-bottom:36px}.home-hero p{color:var(--muted-strong);font-family:var(--font-mono);font-size:.875rem}.folder-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:18px}.folder-state{grid-column:1/-1;display:flex;align-items:center;gap:12px;color:var(--muted-strong)}.folder-placeholder{display:flex;flex-direction:column;align-items:center;gap:14px}.folder-placeholder-preview{width:120px;height:120px;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-raised)}.folder-placeholder-name{width:90px;height:19px;border-radius:var(--radius-sm);background:var(--surface-raised)}.folder-button{padding:0;border:0;display:flex;flex-direction:column;align-items:center;gap:14px;background:transparent;color:var(--text);cursor:pointer;animation:reveal-folder .18s ease-out backwards}.folder-button:hover{transform:translateY(-2px)}.folder-preview{width:120px;height:120px;padding:10px;display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);gap:8px;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-card);transition:border-color .18s ease,box-shadow .18s ease}.folder-button:focus-visible .folder-preview,.folder-button:hover .folder-preview{border-color:var(--border-accent);box-shadow:var(--shadow-hover)}.folder-preview-icon{width:100%;height:100%;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-sm);color:#fff;font-size:.875rem;font-weight:600}.folder-name,.tool-label{color:var(--text);font-family:var(--font-mono);font-size:.9375rem;text-align:center}.folder-modal{position:fixed;inset:0;z-index:200;padding:20px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 74% 78%,var(--folder-modal-overlay-glow),transparent 32%),var(--folder-modal-overlay);backdrop-filter:blur(3px);animation:show-folder-overlay .18s ease-out backwards}@media (max-width:600px){.folder-modal{backdrop-filter:none}}.folder-modal-card{width:min(92vw,760px);padding:28px;border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(180deg,var(--folder-modal-card-start),var(--folder-modal-card-end));box-shadow:var(--shadow-modal)}.folder-modal-card:focus{outline:none}.folder-title{max-width:none;margin:0 0 20px;font-family:var(--font-mono);font-size:var(--font-size-lg);line-height:1.33}.tool-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:18px}.tool-item{padding:8px 6px;flex-direction:column;gap:10px;color:var(--text);border-radius:var(--radius-md)}.tool-icon,.tool-item{display:flex;align-items:center}.tool-icon{width:56px;height:56px;justify-content:center;border:none;border-radius:var(--radius-md);color:#fff;font-family:var(--font-mono);font-size:1.05rem;font-weight:600}.tool-icon,.tool-label{transition:transform .18s ease}.tool-label{color:var(--muted-strong);font-size:.875rem}@media (prefers-reduced-motion:reduce){.tool-icon,.tool-label{transition:none}}.tool-item:focus-visible .tool-icon,.tool-item:focus-visible .tool-label,.tool-item:hover .tool-icon,.tool-item:hover .tool-label{transform:translateY(-2px)}.content-page{width:min(100%,760px);margin-inline:auto;padding:24px;border:1px solid var(--border);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:20px;background:var(--surface-raised);box-shadow:var(--shadow-card);line-height:1.7}.content-page h1{max-width:none;margin-bottom:4px;font-size:clamp(2rem,4vw,3rem);line-height:1.05}.content-page h2{margin-top:20px;font-size:var(--font-size-lg);line-height:1.33}.content-page ul{margin:0;padding-left:20px}.access-form{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.access-form input{width:min(100%,360px);min-height:42px;padding:8px 10px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--input);color:var(--text)}.access-users{display:flex;flex-direction:column;gap:8px}.access-user{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:12px 0;border-top:1px solid var(--border-soft)}.access-user small{display:block;color:var(--muted-strong)}.access-actions{display:flex;gap:8px}.calculator{width:min(100%,680px);min-width:0;display:grid;gap:16px}.calculator input{width:100%;min-width:0;padding:14px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--input);color:var(--text);font-size:clamp(1.4rem,5vw,2rem);font-variant-numeric:tabular-nums;letter-spacing:.025em;text-align:right;transition:border-color .12s ease,box-shadow .12s ease}.calculator input:focus{outline:none;border-color:var(--primary-strong);box-shadow:var(--shadow-focus)}.calculator input:focus-visible{box-shadow:var(--focus-ring)}.calculator-angle,.calculator-modes{display:flex;flex-wrap:wrap;gap:8px}.calculator-bases{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.calculator-bases button{min-width:0;display:grid;gap:2px;text-align:left}.calculator-bases span{overflow-wrap:anywhere;font-size:.78rem}.calculator-bitwise,.calculator-hex,.calculator-scientific{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.calculator-keys{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.calculator button{min-width:0;min-height:48px;padding:8px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--input);color:var(--text);font-size:1rem;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease,transform .12s ease}.calculator-keys button{min-height:56px;font-size:1.2rem}.calculator .calculator-key--number{background:var(--input)}.calculator .calculator-key--function,.calculator .calculator-toggle{background:var(--button-bg)}.calculator .calculator-key--operator{border-color:var(--border-accent);background:var(--primary-soft);color:var(--primary-strong);font-weight:600}.calculator .calculator-key--equals{border-color:var(--primary-strong);background:var(--primary-strong);color:var(--input);font-weight:700}.calculator .calculator-key--danger{border-color:color-mix(in srgb,var(--danger) 40%,var(--border-strong));background:color-mix(in srgb,var(--danger) 9%,var(--input));color:var(--danger)}.calculator .calculator-toggle[aria-pressed=true]{border-color:var(--primary);background:var(--primary-soft);box-shadow:inset 0 -2px 0 var(--primary);color:var(--primary-strong);font-weight:600}.calculator button:focus-visible{outline:2px solid var(--primary);outline-offset:3px;box-shadow:var(--focus-ring)}.calculator .calculator-key--equals:focus-visible{outline-color:var(--text)}@media (hover:hover) and (pointer:fine){.calculator button:not(:disabled):hover{border-color:var(--text-soft);background:var(--input-hover);transform:translateY(-1px)}.calculator .calculator-key--function:hover:not(:disabled),.calculator .calculator-toggle:hover:not(:disabled){background:var(--button-bg-hover)}.calculator .calculator-key--operator:hover:not(:disabled),.calculator .calculator-toggle[aria-pressed=true]:hover:not(:disabled){border-color:var(--primary);background:color-mix(in srgb,var(--primary-soft) 60%,var(--button-bg-hover))}.calculator .calculator-key--equals:hover:not(:disabled){border-color:var(--primary);background:var(--primary)}.calculator .calculator-key--danger:hover:not(:disabled){border-color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,var(--button-bg-hover))}}.calculator button:not(:disabled):active{transform:translateY(1px) scale(.98)}.calculator button:disabled{opacity:.35;cursor:not-allowed;transform:none;transition:none}@media (prefers-reduced-motion:reduce){.calculator button:not(:disabled):active,.calculator button:not(:disabled):hover{transform:none}}.calculator-admin{width:min(100%,680px);display:grid;gap:16px;padding-top:24px;border-top:1px solid var(--border-soft)}.calculator-admin-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.calculator-admin-heading h2{margin:0}.calculator-admin-heading button{min-height:36px;padding:6px 12px}@media (min-width:600px){.calculator-bitwise,.calculator-hex,.calculator-scientific{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (max-width:420px){.calculator-bases{grid-template-columns:repeat(2,minmax(0,1fr))}}.tool-screen{flex:1;padding:var(--space-9) var(--space-5) var(--space-11)}.tool-container{width:min(100%,var(--max-tool-width));margin-inline:auto;gap:24px}.tool-container,.tool-header{display:flex;flex-direction:column}.tool-header{padding-top:8px;gap:12px}.tool-title{max-width:12ch;font-size:clamp(2.4rem,5vw,4.5rem)}.tool-subtitle{max-width:60ch;color:var(--muted-strong)}.tool-card,.tool-info{display:flex;flex-direction:column;gap:16px}.tool-info{margin-top:8px}.tool-panel{padding:24px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-card);transition:border-color .18s ease,box-shadow .18s ease}@media (hover:hover) and (pointer:fine){.tool-panel:hover{border-color:var(--border-strong);box-shadow:var(--shadow-hover)}}.tool-panel-muted{background:var(--button-bg)}.tool-panel h2{margin-top:0;font-size:inherit;line-height:inherit}.pace-card{width:100%}.pace-grid{display:grid;gap:20px}.form-group,.pace-group{display:flex;flex-direction:column;gap:8px}.pace-group-full{grid-column:1/-1}.form-label{color:var(--muted);font-family:var(--font-mono);font-size:.875rem}.custom-distance,.pace-inputs,.time-inputs{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.custom-distance{margin-top:10px}.custom-distance input{flex:1}.pace-grid .custom-distance select{width:96px}.pace-grid .pace-inputs input,.pace-grid .time-inputs input{width:72px;text-align:center}.colon,.unit{color:var(--muted)}.colon{font-family:var(--font-mono)}.unit{font-size:.875rem}.pace-grid input,.pace-grid select,.tool-control{width:100%;min-height:44px;border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--input);color:var(--text);transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.pace-grid input,input.tool-control{padding:0 14px}.pace-grid select,select.tool-control{padding:0 40px 0 14px;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px}.pace-grid input:focus,.pace-grid input:hover,.pace-grid select:focus,.pace-grid select:hover,.tool-control:focus,.tool-control:hover{background-color:var(--input-hover)}.pace-grid input:focus,.pace-grid select:focus,.tool-control:focus{outline:none;border-color:var(--border-accent);box-shadow:var(--shadow-focus)}.action-row{margin-top:4px;display:flex;flex-wrap:wrap;gap:12px}.tool-button{min-height:40px;padding:8px 20px;border:0;border-radius:var(--radius-sm);background:var(--button-bg);color:var(--button-text);cursor:pointer;transition:background .18s ease,box-shadow .18s ease,transform .18s ease}.tool-button:hover{background:var(--button-bg-hover);box-shadow:var(--shadow-card);color:var(--primary);transform:translateY(-1px)}.tool-button:active{transform:translateY(1px)}.tool-support-footer{margin-top:auto;border-top:1px solid var(--border-soft);background:var(--footer-bg)}.tool-support-footer-inner{width:min(100% - 32px,var(--max-site-width));margin:0 auto;padding:20px 0 28px;display:flex;align-items:center;justify-content:center}.tool-support-footer-text{margin:0;color:var(--muted-strong);font-family:var(--font-mono);font-size:.78rem;line-height:1.7;text-align:center;white-space:nowrap}.tool-support-footer-link{display:inline-block;padding:0 2px;background:linear-gradient(90deg,var(--highlight-strong),var(--highlight-strong)) 0 /0 100% no-repeat;color:var(--text-soft);font-size:inherit;line-height:inherit;text-decoration:none;transition:background-size .22s ease,color .16s ease}.tool-support-footer-link:focus-visible,.tool-support-footer-link:hover{background-size:100% 100%;color:var(--primary)}@media (max-width:600px){.tool-support-footer-text{font-size:.64rem;white-space:normal}}.dashboardPage .dashboardHero h1{max-width:none}.cookie-banner{position:fixed;right:16px;bottom:16px;left:16px;z-index:600;max-width:760px;margin-inline:auto;padding:14px 16px;border:1px solid var(--border-strong);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--footer-bg);box-shadow:var(--shadow-modal);color:var(--muted-strong);font-family:var(--font-mono);font-size:.75rem}.cookie-banner-actions{display:flex;flex-shrink:0}.cookie-banner-button{min-height:36px;padding:8px 14px;font-size:.75rem}@keyframes reveal-folder{0%{opacity:0;transform:translateY(12px)}}@keyframes show-folder-overlay{0%{opacity:0}}.footer-inner{padding:20px 0 28px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:.8125rem}.footer-links{display:flex;flex-wrap:wrap;gap:18px}.footer-links a{color:var(--muted)}.footer-links a:hover{color:var(--primary)}.loading-line{width:min(100%,520px);height:18px;background:var(--surface-muted);animation:pulse 1.4s ease-in-out infinite}.loading-title{width:min(80%,620px);height:64px}.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}@keyframes pulse{50%{opacity:.48}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.folder-button,.folder-modal{animation:none}*,:after,:before{animation-duration:.01ms;animation-iteration-count:1;transition-duration:.01ms}}@media (max-width:600px){.site-width{width:min(100% - 24px,var(--max-site-width))}.content-screen,.home-screen,.shell-screen,.tool-screen{padding:var(--space-7) var(--space-4) var(--space-10)}.action-row{flex-direction:column}.action-row .tool-button{width:100%}.custom-distance,.pace-inputs,.time-inputs{flex-wrap:nowrap}.pace-grid .pace-inputs input,.pace-grid .time-inputs input{flex:1;min-width:0;width:0}.folder-modal-card{padding:20px}.cookie-banner{align-items:flex-start;flex-direction:column}.cookie-banner-actions{width:100%}.cookie-banner-button{flex:1}}@media (min-width:600px){.pace-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.pace-grid .action-row{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){.folder-preview,.shell-button,.tool-button,.tool-panel{transition:none}}