*{box-sizing:border-box}body{margin:0;padding:0;background:#0b0c10;color:#e5e7eb}a{color:#9ecbff}.container{display:grid;grid-template-columns:360px 1fr;min-height:100vh}@media (max-width:768px){.container{grid-template-columns:1fr;position:relative}.sidebar{position:fixed;top:0;left:-100%;width:85%;max-width:320px;height:100vh;z-index:999;transition:left .3s ease-in-out;overflow-y:auto}.sidebar.open{left:0;box-shadow:2px 0 20px rgba(0,0,0,.5)}.main{padding:60px 16px 16px!important}.mobile-menu-btn{position:fixed;top:10px;left:10px;z-index:1000;width:44px;height:44px;background:#2563eb;border:none;border-radius:8px;color:#fff;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 10px rgba(0,0,0,.3)}.mobile-menu-btn:hover{background:#1d4ed8}.mobile-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:998;display:none}.mobile-overlay.open{display:block}}@media (min-width:769px){.mobile-menu-btn,.mobile-overlay{display:none!important}}.sidebar{border-right:1px solid #1f2937;padding:16px;background:#111317}.main{padding:16px 24px}h1{margin:0 0 12px;font-size:20px}h2{margin:16px 0 8px;font-size:18px}h3{margin:12px 0 8px;font-size:16px}@media (max-width:768px){h1{font-size:18px}h2{font-size:16px}h3{font-size:14px}}.card{background:#141821;border:1px solid #1f2937;border-radius:10px;padding:16px;margin-bottom:12px}@media (max-width:768px){.card{padding:12px;border-radius:8px}}.button{padding:10px 14px;border-radius:8px;background:#2563eb;color:#fff;border:none;cursor:pointer;font-weight:600;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.button:disabled{opacity:.5;cursor:not-allowed}.button:hover:not(:disabled){background:#1d4ed8}@media (max-width:768px){.button{padding:12px 16px;font-size:16px}}.input,.select,.textarea{width:100%;padding:10px;border-radius:8px;border:1px solid #293241;background:#0f1420;color:#e5e7eb;font-size:16px}@media (max-width:768px){.input,.select,.textarea{padding:12px}}.row{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}@media (max-width:640px){.row{grid-template-columns:1fr}}.grid3{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}@media (max-width:1024px){.grid3{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.grid3{grid-template-columns:1fr}}.grid2{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:10px;gap:10px}@media (max-width:640px){.grid2{grid-template-columns:1fr}}.small{font-size:12px;color:#9ca3af}.list{list-style:none;padding:0;margin:0}.list li{margin:6px 0}.badge{display:inline-block;padding:2px 6px;border-radius:6px;background:#1f2937;font-size:12px}.copyBtn{background:#374151;border:1px solid #4b5563;border-radius:6px;padding:4px 8px;color:#e5e7eb;cursor:pointer;font-size:12px;touch-action:manipulation}hr{border:none;border-top:1px solid #1f2937;margin:16px 0}.flex{flex-wrap:wrap}.checkbox,.flex{display:flex;gap:8px;align-items:center}.checkbox{margin:6px 0}.scoreInput{width:48px;text-align:center;font-size:16px}.kbd{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;background:#1f2937;padding:2px 6px;border-radius:6px;border:1px solid #374151;word-break:break-all}.footer,.kbd{font-size:12px}.footer{margin-top:20px;color:#9ca3af}@media (max-width:768px){.footer{padding-bottom:20px}.sign-out-btn{position:fixed;top:10px;right:10px;z-index:900}}@media (max-width:768px){.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:#1f2937}.sidebar::-webkit-scrollbar-thumb{background:#374151;border-radius:3px}}@media (max-width:768px){body{overflow-x:hidden}.container{max-width:100vw}}.call-button{background:#22c55e;color:#fff;padding:14px 32px;font-size:18px;font-weight:600;text-decoration:none;border-radius:8px;display:inline-flex;align-items:center;gap:8px;border:none;cursor:pointer;transition:all .2s ease;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.call-button:hover{background:#16a34a;transform:scale(1.05)}.call-button:active{transform:scale(.95)}@media (max-width:768px){.call-button{padding:16px 36px;font-size:20px}}