:root{--bg-color: #ffffff;--text-color: #212529;--card-bg: rgba(255, 255, 255, .95);--nav-bg: #0d6efd;--nav-active: #ffffff;--nav-active-bg: #0d6efd;--footer-bg: #f8f9fa}body.dark-mode{--bg-color: #1e1e1e;--text-color: #f8f9fa;--card-bg: rgba(34, 34, 34, .95);--nav-bg: #343a40;--nav-active: #f8f9fa;--nav-active-bg: #212529;--footer-bg: #111111}body{background-color:var(--bg-color);color:var(--text-color);font-family:Helvetica Neue,sans-serif;transition:background-color .3s,color .3s}.card{background-color:var(--card-bg);border-radius:12px;box-shadow:0 2px 10px #0000001a}.app-footer{background-color:var(--footer-bg);color:var(--text-color)}.color-Black,.color-Red,.color-Blue,.color-Brown,.color-Orange,.color-Yellow{display:inline-block;padding:.15rem .7rem;border-radius:999px;font-weight:600;font-size:.9rem;line-height:1.2}.color-Black{background-color:#343a40;color:#fff}.color-Red{background-color:#ff4b4b;color:#fff}.color-Blue{background-color:#0d6efd;color:#fff}.color-Brown{background-color:#8b4513;color:#fff}.color-Orange{background-color:#fd7e14;color:#fff}.color-Yellow{background-color:#ff0;color:#212529}.tool-container{width:100%;padding:2rem 1rem;display:flex;justify-content:center;align-items:flex-start}.card{width:100%;max-width:720px;margin:0 auto;background-color:#fff;border-radius:16px;padding:2rem 2.5rem;box-shadow:0 8px 24px #0000000f}.tool-title{text-align:center;font-size:1.8rem;font-weight:600;margin-bottom:1.5rem}.tool-form{max-width:520px;margin:0 auto}.form-group{margin-bottom:1rem}.form-label{display:block;font-weight:500;margin-bottom:.25rem}.form-control{width:100%;padding:.5rem .75rem;border-radius:6px;border:1px solid #ced4da;font-size:.95rem}.tool-button-row{display:flex;justify-content:center;margin-top:.9rem}.primary-button{background-color:#4285f4;color:#fff;border:none;border-radius:6px;padding:.55rem 1.75rem;font-weight:500;font-size:.95rem;cursor:pointer;transition:background-color .15s ease,transform .05s ease}.primary-button:hover{background-color:#2f6fe0;transform:translateY(-1px)}.primary-button:active{background-color:#2456b2;transform:translateY(0)}.primary-button--small{min-width:220px}.result-box{margin-top:1.25rem;padding:.8rem 1rem;border-radius:8px;font-size:.95rem}.result-box--info{background-color:#e3f7ff;border:1px solid #c1ecff;color:#084d6e}.result-box--error{background-color:#fde2e4;border:1px solid #f8b4b8;color:#842029}.result-box--info,.result-box--error{text-align:center}.result-box--info strong{margin-right:.3rem}.app-shell{display:flex;flex-direction:column;min-height:100vh}.app-header{display:flex;align-items:center;padding:.75rem 1rem;gap:.75rem;background-color:var(--nav-bg);color:var(--nav-active)}.app-body{display:flex;flex-direction:column;flex:1;min-height:0}.app-main{flex:1;padding:2rem 1.5rem;display:block}.tool-card{width:100%;max-width:720px}.app-main-inner{width:100%;max-width:100%}.app-sidebar{position:fixed;top:56px;left:0;bottom:0;width:280px;max-width:80%;padding:1.25rem 1rem;background-color:var(--footer-bg);border-right:1px solid rgba(0,0,0,.08);box-shadow:2px 0 8px #0003;transform:translate(-100%);transition:transform .2s ease-out;z-index:110}.app-sidebar.app-sidebar--open{transform:translate(0)}.sidebar-backdrop{position:fixed;inset:0;background-color:#00000040;opacity:0;pointer-events:none;transition:opacity .2s ease-out;z-index:100}.sidebar-backdrop.sidebar-backdrop--visible{opacity:1;pointer-events:auto}.sidebar-toggle{position:fixed;top:72px;left:16px;z-index:120;border-radius:999px;padding:.35rem .85rem;border:1px solid rgba(0,0,0,.12);background-color:#fff;color:#0d6efd;font-size:.85rem;cursor:pointer;box-shadow:0 2px 6px #00000026;display:inline-flex;align-items:center;gap:.35rem}@media(max-width:768px){.sidebar-toggle{top:90px}}.sidebar-toggle:hover{background-color:#e7f0ff}.app-shell{display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:260px 1fr;grid-template-areas:"header header" "sidebar main" "footer footer";min-height:100vh}.app-header{grid-area:header;display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;background-color:var(--nav-bg);color:var(--nav-active)}.app-sidebar{grid-area:sidebar;padding:1rem;background-color:var(--footer-bg);border-right:1px solid rgba(0,0,0,.05)}.app-main{grid-area:main;padding:1.5rem 2rem;background-color:var(--bg-color)}.app-footer{grid-area:footer;padding:.75rem 1.5rem;font-size:.9rem;display:flex;align-items:center;justify-content:center;border-top:1px solid rgba(0,0,0,.05)}.tool-list{display:flex;flex-direction:column;gap:.25rem}.tool-button{width:100%;text-align:left;padding:.45rem .75rem;border-radius:.5rem;border:1px solid transparent;background-color:transparent;color:var(--text-color);cursor:pointer;font-size:.95rem;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.tool-button:hover{background-color:#0d6efd1a}.tool-button.active{background-color:var(--nav-active-bg);color:var(--nav-active);border-color:var(--nav-active-bg)}.card{margin-top:.5rem;padding:1.1rem 1.35rem}.form-grid{display:grid;gap:.75rem}.form-row-inline{display:flex;gap:.75rem;flex-wrap:wrap}.form-field{flex:1}.form-label{display:block;font-size:.85rem;color:#6c757d;margin-bottom:.25rem}.form-input,.form-select{width:100%;padding:.5rem .6rem;border-radius:.5rem;border:1px solid #ced4da;background-color:#fff;color:#212529}.form-input:focus,.form-select:focus{outline:none;border-color:#0d6efd;box-shadow:0 0 0 .15rem #0d6efd40}.form-unit{font-size:.8rem;color:#6c757d;margin-left:.25rem}.result-box{margin-top:.75rem;padding:.75rem .9rem;border-radius:.5rem;background-color:#f8f9fa;border:1px solid #dee2e6;font-size:.9rem}.result-title{font-weight:600;margin-bottom:.35rem}.result-note{font-size:.8rem;color:#6c757d}.button-primary{margin-top:.75rem;padding:.45rem .9rem;border-radius:.5rem;border:1px solid #0d6efd;background-color:#0d6efd;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;transition:background-color .15s ease,border-color .15s ease}.button-primary:hover{background-color:#0b5ed7;border-color:#0a58ca}.tool-container{max-width:720px;margin:0 auto;padding:20px 0 40px;width:100%}.card{margin-top:.5rem;padding:1.5rem 2rem;border-radius:12px;background-color:var(--card-bg);box-shadow:0 2px 10px #00000014;border:1px solid rgba(0,0,0,.05)}.tool-title{text-align:center;font-size:1.4rem;font-weight:600;margin-bottom:1rem}.button-primary-compact{display:block;margin:1rem auto 0;padding:.45rem 1.4rem;width:auto}
