:root{--bg-gradient: #ffffff;--soft-blueish-tint: #f5f8fa;--light-gray: #ccc;--text: #111111;--charcoal: #222;--background: #f5f8fa;--blue: #362d95;--dark-blue: #141740;--green: #2e7d32;--accent: #2ecc71;--accent-hover: #27ae60;--selection-bg: var(--accent);--selection-text: #ffffff;--link: var(--accent);--button-text: #ffffff;--crimson-red: #c62828;--font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-size: 1rem;--line-height: 1.5;--container-padding: 1rem;--container-max-width: 1280px;--border-radius: 8px}body.dark{--bg-gradient: linear-gradient( to bottom right, var(--dark-blue), var(--blue) );--text: var(--soft-blueish-tint);--background: #141740}*{scrollbar-width:none;-ms-overflow-style:none}*::-webkit-scrollbar{display:none}:where(*){box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth;font-size:var(--font-size)}body{font-family:var(--font-family);background:var(--bg-gradient);color:var(--text);margin:0;padding:0;line-height:var(--line-height);letter-spacing:.5px;transition:background-color .3s ease,color .3s ease;-webkit-font-smoothing:antialiased;scrollbar-width:none;-ms-overflow-style:none}body::-webkit-scrollbar{display:none}.layout-grid{display:grid;grid-template-rows:auto 1fr auto;min-height:100vh}.container{width:100%;max-width:var(--container-max-width);padding:0 var(--container-padding);margin:0 auto}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2}button{font-family:inherit;font-size:var(--font-size);padding:.5em 1em;border:none;border-radius:var(--border-radius);cursor:pointer;background-color:var(--accent);color:var(--button-text);transition:background-color .3s ease-in-out}button:hover{background-color:var(--accent-hover)}.btn-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.formHeading{font-size:1.5rem}input,textarea,select{width:100%;padding:1rem;font-family:inherit;font-size:var(--font-size);border-radius:var(--border-radius);margin-bottom:1rem;color:var(--text);background:var(--background);resize:vertical;border:1px solid var(--light-gray)}::selection{background:var(--selection-bg);color:var(--selection-text)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}img{max-width:100%;height:auto;display:block}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}.header{background:var(--background);padding:1rem 0;position:sticky;top:0;z-index:10;border-bottom:1px solid var(--dark-blue);box-shadow:0 1px 12px #f5f8fa2e}.header-inner{display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;gap:.5rem;font-size:1.6rem;font-weight:600;color:var(--accent);cursor:pointer;text-decoration:none}.logo-img{width:32px;height:32px;object-fit:contain}.logo-text{display:inline-block}.theme-toggle-wrapper{display:flex;align-items:center}.button-group{display:flex;flex-wrap:wrap;gap:.5rem}.button-group .btn{transition:background-color .3s ease-in-out,color .3s ease-in-out}.button-group .btn:active{transform:scale(.98)}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:var(--charcoal);color:var(--button-text);padding:10px 16px;border-radius:6px;display:flex;align-items:center;font-size:14px;z-index:9999;box-shadow:0 0 10px #0000004d;opacity:0;pointer-events:none;transition:opacity .3s ease-in-out,transform .3s ease-in-out}.toast.show{opacity:1;transform:translate(-50%) translateY(-10px)}.toast.success{background-color:var(--green)}.toast.error{background-color:var(--crimson-red)}.toast i{font-size:1rem;display:inline-block;vertical-align:middle}.footer{padding:1rem;text-align:center;background:var(--background);color:var(--text);font-size:.9rem;border-top:1px solid var(--dark-blue);box-shadow:0 -1px 12px #f5f8fa2e}.footer-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap}.social-icons{display:flex;gap:1rem;font-size:1rem}.social-icons a{color:var(--text);transition:color .3s ease-in-out}.social-icons a:hover{color:var(--accent)}@media (max-width: 500px){.footer-inner{flex-direction:column;justify-content:center}}.stats h3{font-size:1.5rem}.stats ul{list-style:none;padding-left:0}.stats li{margin-bottom:.5rem;font-size:1rem}.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}
