@import url("https://fonts.googleapis.com/css2?family=Comic+Relief:wght@400;700&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap");:root[data-theme=light]{--text-50:#f2f2f2;--text-100:#e6e6e6;--text-200:#cccccc;--text-300:#b3b3b3;--text-400:#999999;--text-500:#808080;--text-600:#666666;--text-700:#4d4d4d;--text-800:#333333;--text-900:#1a1a1a;--text-950:#0d0d0d;--background-50:#f2f2f2;--background-100:#e6e6e6;--background-200:#cccccc;--background-300:#b3b3b3;--background-400:#999999;--background-500:#808080;--background-600:#666666;--background-700:#4d4d4d;--background-800:#333333;--background-900:#1a1a1a;--background-950:#0d0d0d;--primary-50:#fce9e8;--primary-100:#f9d3d2;--primary-200:#f3a7a5;--primary-300:#ed7c78;--primary-400:#e8504a;--primary-500:#e2241d;--primary-600:#b51d17;--primary-700:#871612;--primary-800:#5a0e0c;--primary-900:#2d0706;--primary-950:#170403;--secondary-50:#e8fcf6;--secondary-100:#d2f9ed;--secondary-200:#a5f3dc;--secondary-300:#78edca;--secondary-400:#4ae8b8;--secondary-500:#1de2a7;--secondary-600:#17b585;--secondary-700:#128764;--secondary-800:#0c5a43;--secondary-900:#062d21;--secondary-950:#031711;--accent-50:#e8f1fc;--accent-100:#d2e2f9;--accent-200:#a5c5f3;--accent-300:#78a9ed;--accent-400:#4a8ce8;--accent-500:#1d6fe2;--accent-600:#1759b5;--accent-700:#124387;--accent-800:#0c2c5a;--accent-900:#06162d;--accent-950:#030b17}:root[data-theme=dark]{--text-50:#0d0d0d;--text-100:#1a1a1a;--text-200:#333333;--text-300:#4d4d4d;--text-400:#666666;--text-500:#808080;--text-600:#999999;--text-700:#b3b3b3;--text-800:#cccccc;--text-900:#e6e6e6;--text-950:#f2f2f2;--background-50:#0d0d0d;--background-100:#1a1a1a;--background-200:#333333;--background-300:#4d4d4d;--background-400:#666666;--background-500:#808080;--background-600:#999999;--background-700:#b3b3b3;--background-800:#cccccc;--background-900:#e6e6e6;--background-950:#f2f2f2;--primary-50:#170403;--primary-100:#2d0706;--primary-200:#5a0e0c;--primary-300:#871612;--primary-400:#b51d17;--primary-500:#e2241d;--primary-600:#e8504a;--primary-700:#ed7c78;--primary-800:#f3a7a5;--primary-900:#f9d3d2;--primary-950:#fce9e8;--secondary-50:#031711;--secondary-100:#062d21;--secondary-200:#0c5a43;--secondary-300:#128764;--secondary-400:#17b585;--secondary-500:#1de2a7;--secondary-600:#4ae8b8;--secondary-700:#78edca;--secondary-800:#a5f3dc;--secondary-900:#d2f9ed;--secondary-950:#e8fcf6;--accent-50:#030b17;--accent-100:#06162d;--accent-200:#0c2c5a;--accent-300:#124387;--accent-400:#1759b5;--accent-500:#1d6fe2;--accent-600:#4a8ce8;--accent-700:#78a9ed;--accent-800:#a5c5f3;--accent-900:#d2e2f9;--accent-950:#e8f1fc}body,html{max-width:100vw;overflow-x:hidden}body{color:var(--text-900)!important;background:var(--background-50);font-family:Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;padding:0;margin:0}a{color:inherit;text-decoration:none}.roboto{font-family:Roboto,sans-serif;font-optical-sizing:auto;font-style:normal;font-variation-settings:"wdth" 100}.comic-relief-regular{font-weight:400}.comic-relief-bold,.comic-relief-regular{font-family:Comic Relief,system-ui;font-style:normal}.comic-relief-bold{font-weight:700}::-webkit-scrollbar{display:none}nav{width:100%;height:80px;justify-content:space-between;padding:0 20px;margin-bottom:2rem;color:var(--text-900)}nav,nav a{display:flex;align-items:center}nav a{justify-content:center;gap:.5rem;color:var(--background-500)}nav a,nav div{width:100px}nav a:hover{color:var(--background-700)}nav h1{font-size:2.5rem;color:var(--background-900);font-family:Comic Relief,system-ui;font-weight:700;font-style:normal;-webkit-text-decoration-style:wavy;text-decoration-style:wavy;text-underline-offset:.5rem;text-decoration-thickness:.2rem}nav button{border:none;background-color:var(--accent-100);color:var(--accent-500);height:50px;width:50px;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:1.5rem;cursor:pointer}nav button:hover{background-color:var(--accent-200);color:var(--accent-600)}.toolWrapper{width:100%;max-width:1000px;padding:20px;margin:auto;display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.toolItem{width:300px;height:300px;outline:2px solid var(--text-200);border-radius:1rem;display:flex;flex-direction:column;position:relative}.toolImageHeader{background-color:var(--background-100);height:30%;border-radius:1rem 1rem 0 0}.toolImageHeader img{width:100%;height:100%;object-fit:cover;border-radius:1rem 1rem 0 0}.toolItemContent{height:70%;position:relative;color:var(--text-950);padding:30px 10px 10px}.toolItemContent img{width:50px;height:50px;object-fit:contain;background-color:var(--background-50);border-radius:50%;border:none;padding:5px;position:absolute;top:-25px;left:20px}.toolItemContent h2{font-size:1.5rem;margin-bottom:10px;font-family:Comic Relief,system-ui;font-weight:700;font-style:normal}.toolItemContent p{font-size:1rem;font-weight:400;line-height:1.5rem;margin-bottom:20px;font-family:Roboto,sans-serif}.toolItemContent button{position:absolute;bottom:10px;right:10px;border:none;background-color:transparent}.toolItemContent a{padding:10px 20px;background-color:var(--accent-500);color:var(--text-50);border-radius:.5rem;font-family:Roboto,sans-serif;font-weight:500}.toolItemContent a,.toolItemSoon{display:flex;justify-content:center;align-items:center}.toolItemSoon{position:absolute;top:0;left:0;z-index:10;height:100%;width:100%;flex-direction:column;gap:2rem;font-family:Comic Relief,system-ui;font-weight:700;font-style:normal;font-size:1.5rem;color:white;background-color:rgba(0,0,0,.8);border-radius:1rem}.toolItemSoon svg{width:80px;height:80px;color:var(--primary-500)}.toolItemNew{position:absolute;top:-10px;right:-10px;transform:rotate(15deg);z-index:10;padding:5px 10px;border-radius:.5rem;width:60px;height:60px;display:flex;justify-content:center;align-items:center;text-align:center;font-family:Comic Relief,system-ui;font-weight:700;font-style:normal;font-size:1rem;color:white;background-color:var(--primary-500)}.passwordCard{width:95%;max-width:720px;color:var(--text-900)!important;border-radius:1rem;padding:1.25rem;margin:auto auto 20px}.passwordCard .outputRow{display:flex;background-color:var(--background-200);border-radius:1rem;width:100%}.passwordCard .passwordField{width:100%;font:600 1.05rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;padding:.9rem 1rem;border:none;background:transparent;color:var(--text-950)}.passwordCard .outputRow button{padding:.7rem .9rem;border:none;background:transparent;color:var(--text-950);cursor:pointer;font-weight:600;font-size:1.2rem}.passwordCard .bar{height:8px;border-radius:999px;background:linear-gradient(90deg,var(--background-200) 0,var(--background-200) 100%);transition:background .3s ease;width:100%;margin-top:1rem}.passwordCard .bar.s0{background:linear-gradient(90deg,red 20%,#2b3b61 0)}.passwordCard .bar.s1{background:linear-gradient(90deg,orange 40%,#2b3b61 0)}.passwordCard .bar.s2{background:linear-gradient(90deg,yellow 60%,#2b3b61 0)}.passwordCard .bar.s3{background:linear-gradient(90deg,lightgreen 100%,lightgreen 0)}.passwordCard .lengthRow{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1rem;margin-bottom:1rem}.passwordCard .lengthRow input[type=range]{width:100%;height:8px;border-radius:100%;background:var(--background-200);cursor:pointer;accent-color:var(--accent-500);border:none}.passwordCard .lengthRow span{border-radius:1rem;border:none;background-color:var(--background-200);font-size:1.2rem;text-align:center;padding:0;width:50px;height:40px;display:flex;justify-content:center;align-items:center}.passwordCard .optionsGrid{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;align-items:center}.passwordCard .option{width:calc(50% - .5rem);display:flex;align-items:center;gap:.5rem;font-size:.95rem}.passwordCard .option input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--accent-500)}.passwordCard .option span{display:flex;align-items:center;gap:.5rem;font-size:1.2rem}.uuidCard{width:100%;max-width:600px;padding:1.25rem;color:var(--text-900);margin:auto}.uuidCard textarea{width:100%;height:150px;resize:none;border:none;background-color:var(--background-200);color:var(--text-950);font:600 1.05rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;padding:1rem;border-radius:1rem}.uuidCard .actionRow{width:100%;display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:1rem;margin-bottom:1rem}.uuidCard .actionRow button{padding:.7rem .9rem;border:none;background:transparent;color:var(--text-950);background-color:var(--background-200);cursor:pointer;font-weight:600;font-size:1.2rem;border-radius:.5rem}.uuidCard .actionRow .countRow{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%}.uuidCard .actionRow .countRow input[type=range]{width:100%;height:8px;border-radius:100%;background:var(--background-200);cursor:pointer;accent-color:var(--accent-500);border:none}.uuidCard .actionRow .countRow span{width:40px;height:40px;border:none;background-color:var(--background-200);color:var(--text-950);font:600 1.05rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;padding:0 1rem;border-radius:.5rem;display:flex;justify-content:center;align-items:center}.uuidCard .optionsGrid{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;align-items:center}.uuidCard .optionsGrid .option{display:flex;align-items:center;gap:.5rem;font-size:.95rem}.uuidCard .optionsGrid .option input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--accent-500)}.uuidCard .optionsGrid .option span{display:flex;align-items:center;gap:.5rem;font-size:1.2rem}.diffCheckerWrap{display:flex;flex-direction:column;gap:1.5rem;width:95%;max-width:1200px;margin:auto;padding:1.25rem;color:var(--text-900)!important}.diffCheckerWrap .inputs{display:flex;gap:1rem;width:100%;flex-wrap:wrap;justify-content:center}.diffCheckerWrap .inputs textarea{width:100%;height:400px;resize:none;border:none;background-color:var(--background-200);color:var(--text-950);font:600 1.05rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;padding:1rem;border-radius:1rem;max-width:calc(50% - .5rem);min-width:300px}.diffCheckerWrap .actions{width:100%;display:flex;justify-content:center;align-items:center;gap:1rem}.diffCheckerWrap .actions button{padding:.7rem .9rem;border:none;background:transparent;color:var(--text-950);background-color:var(--background-200);cursor:pointer;font-weight:600;font-size:1.2rem;border-radius:.5rem}.diffCheckerWrap .diff .muted{color:var(--text-600);font-size:.9rem;font-weight:500;font-style:italic;margin-top:.5rem;text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none}.diffCheckerWrap .diff{width:100%;border:none;background-color:var(--background-200);color:var(--text-950);font:600 1.05rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;padding:1rem;border-radius:1rem;min-height:200px;max-height:600px;overflow:auto}.diffCheckerWrap .diff .add{background-color:#d4f8d4;color:black}.diffCheckerWrap .diff .del{background-color:#f8d4d4;color:black}.diffCheckerWrap .diff,.diffCheckerWrap .diff .add,.diffCheckerWrap .diff .del{white-space:pre-wrap;word-break:break-word}.diffCheckerWrap .diff .add{padding:0 .05rem}.diffCheckerWrap .diff .del{text-decoration:line-through;opacity:.7}.gpxcard{width:100%;max-width:960px;margin:auto;display:flex;flex-direction:column}.gpxcard input[type=file]{display:none}.gpxcard label{width:100%;padding:1rem;border:none;background-color:var(--background-200);color:var(--text-950);font:600 1.05rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;border-radius:1rem;border:1px dashed var(--background-400);cursor:pointer}.gpxcard label,.gpxfiles{display:flex;justify-content:center;align-items:center}.gpxfiles{flex-wrap:wrap;gap:1rem;margin-top:1rem}.gpxfile{padding:1rem;background-color:var(--background-200);border-radius:1rem;display:flex;justify-content:center;align-items:center;gap:.5rem}.gpxfile .muted{color:var(--text-600);font-size:.9rem;font-weight:500;font-style:italic;-webkit-user-select:none;-moz-user-select:none;user-select:none}.gpxcard .actions{width:100%;gap:1rem;margin-top:1rem}.gpxcard .actions,.gpxcard .actions button{display:flex;justify-content:center;align-items:center}.gpxcard .actions button{padding:.7rem .9rem;border:none;background:transparent;color:var(--text-950);background-color:var(--background-200);cursor:pointer;font-weight:600;font-size:1.2rem;border-radius:.5rem;gap:.5rem}.gpxcard .actions button:disabled{background-color:var(--background-300);color:var(--text-600);cursor:not-allowed}.gpxcard .stats{display:flex;justify-content:center;align-items:center;gap:2rem}.gpxcard .preview,.gpxcard .stats{margin-top:1rem;padding:1rem;border:none;background-color:var(--background-200);color:var(--text-950);font:600 1.05rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;border-radius:1rem}.gpxcard .preview{max-height:400px;overflow:auto}.gpxcard .preview textarea{width:100%;height:100%;border:none;background:transparent;color:var(--text-950);font:inherit;resize:none}.gpxcard .err{margin-top:1rem;padding:1rem;border:none;background-color:var(--background-200);color:rgb(224,2,2);font:600 1.05rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;border-radius:1rem;text-align:center}.footer{width:100%;background:var(--background-100);border-top:1px solid var(--background-200);color:var(--text-700);margin-top:100px}.footWrap{max-width:900px;margin:0 auto;padding:1rem 1.25rem;flex-direction:column;text-align:center;gap:.5rem}.footWrap,.links{display:flex;align-items:center}.links{flex-wrap:wrap;justify-content:center;gap:.5rem 1rem;line-height:1}.links span+span:before{content:"•";margin:0 .5rem;opacity:.5}.link{position:relative;display:inline-block;padding:.25rem .1rem;text-decoration:none;color:var(--text-700);border-radius:.5rem;transition:background-color .2s ease,opacity .2s ease}.link:after{content:"";position:absolute;left:50%;transform:translateX(-50%) scaleX(0);transform-origin:center;bottom:-2px;width:100%;height:2px;background:var(--accent-500);transition:transform .22s ease;opacity:.9}.link:hover{background:var(--background-50)}.link:hover:after{transform:translateX(-50%) scaleX(1)}.copy{font-size:.92rem;color:var(--text-600);opacity:.95}@media (max-width:480px){.footWrap{padding:.9rem 1rem}.copy{font-size:.9rem}}.hashCard{width:100%;max-width:600px;padding:1.25rem;color:var(--text-900);margin:auto}.hashControls{width:100%;display:flex;justify-content:space-evenly;margin-bottom:1rem}.hashControls button{display:flex;justify-content:center;align-items:center}.hashAlgoCtrl select,.hashControls button{padding:.7rem .9rem;border:none;background:transparent;color:var(--text-950);background-color:var(--background-200);cursor:pointer;font-weight:600;font-size:1.2rem;border-radius:.5rem}.hashAlgoCtrl select{outline:0}.hashOutCtrl select{padding:.7rem .9rem;border:none;outline:0;background:transparent;color:var(--text-950);background-color:var(--background-200);cursor:pointer;font-weight:600;font-size:1.2rem;border-radius:.5rem}.hashUpCtrl{display:flex;gap:.5rem;display:none}.hashUpCtrl,.hashUpCtrl input{align-items:center;justify-content:center}.hashUpCtrl input{height:40px;aspect-ratio:1;border-radius:.5rem;border:none;background-color:var(--background-200);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex}.hashUpCtrl input:checked{background-color:var(--accent-500)}.hashUpCtrl input:after{content:"";width:10px;height:20px;border-right:3px solid white;border-bottom:3px solid white;transform:rotate(45deg) scale(0);transition:transform .15s ease-in-out;margin-bottom:5px}.hashUpCtrl input:checked:after{transform:rotate(45deg) scale(1)}.hashControls .active{background-color:var(--background-300)}.warn{width:500px;text-align:center;color:black;margin:1rem auto;background-color:lightcoral;outline:1px solid red;border-radius:5px;padding:1rem 0}.hashCard .panel{display:flex;flex-direction:column;gap:1rem}.hashCard .panel textarea{border-radius:5px;outline:0;border:0;background-color:var(--background-200);color:var(--text-900);padding:1rem}.hashCard .panel textarea::placeholder{color:var(--text-700)}.hashCard .panel .actions{display:flex;justify-content:space-evenly;align-items:center}.hashCard .panel .actions button{padding:.7rem .9rem;border:none;background:transparent;color:var(--text-950);background-color:var(--background-200);cursor:pointer;font-weight:600;font-size:1.2rem;border-radius:.5rem;display:flex;justify-content:center;align-items:center}