:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}html,body{margin:0;padding:0;width:100%;height:100%;min-width:320px;min-height:100vh}#root{width:100%;height:100%;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.field-marker:focus,.field-marker:focus-visible{outline:none}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.app{display:flex;flex-direction:column;width:100%;height:100%;min-height:100vh;box-sizing:border-box}.app-header{width:100%;padding:12px 16px;border-bottom:1px solid #444;flex-shrink:0;box-sizing:border-box}.app-back-link{display:inline-block;margin-right:12px;font-size:.9rem;color:#646cff;text-decoration:none}.app-back-link:hover{text-decoration:underline}.app-header h1{margin:0 0 8px;font-size:1.5rem;display:inline-block}.toolbar-save-btn,.toolbar-share-btn{padding:6px 12px;font-size:.9rem;background:#646cff;color:#fff;border:1px solid #555;border-radius:4px;cursor:pointer;margin-right:4px}.toolbar-save-btn:hover:not(:disabled),.toolbar-share-btn:hover{background:#535bf2}.toolbar-save-btn:disabled{opacity:.7;cursor:not-allowed}.toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;min-height:2.5em}.toolbar-label{font-size:.9rem;color:#aaa}.toolbar-checkbox{display:inline-flex;align-items:center;gap:6px;font-size:.95rem;cursor:pointer;-webkit-user-select:none;user-select:none}.toolbar-sep{color:#666;margin:0 4px}.toolbar button.active{border-color:#646cff;background-color:#2a2a4a}.toolbar button:disabled{opacity:.5;cursor:not-allowed}.toolbar-spacer{flex:1;min-width:12px}.toolbar-mode-label{font-size:.9rem;color:#aaa;margin-left:4px}.toolbar-mode-group{display:inline-flex;border:1px solid #444;border-radius:6px;overflow:hidden}.toolbar-mode-btn{padding:6px 10px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:0;background:transparent}.toolbar-mode-btn+.toolbar-mode-btn{border-left:1px solid #444}.toolbar-mode-btn:hover{background:#2a2a4a}.toolbar-mode-btn.active{background:#2a2a4a;border-color:#646cff;color:#646cff}.toolbar-menu-wrap{position:relative}.toolbar-menu-trigger{padding:6px 10px;display:inline-flex;align-items:center;justify-content:center}.toolbar-menu-trigger.open{border-color:#646cff;background-color:#2a2a4a}.toolbar-menu-dropdown{position:absolute;top:100%;left:0;margin-top:4px;min-width:120px;padding:4px 0;background:#1a1a1a;border:1px solid #444;border-radius:8px;box-shadow:0 4px 12px #0006;display:flex;flex-direction:column;z-index:100}.toolbar-menu-dropdown button{padding:8px 14px;text-align:left;border:none;border-radius:0;background:transparent}.toolbar-menu-dropdown button:hover{background:#2a2a4a}.app-main{flex:1;min-height:0;min-width:0;width:100%;max-width:100vw;overflow-x:hidden;display:flex;flex-direction:column}.app-main>*{flex:1;min-height:300px}.popup-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.popup-card{background:#2a2a2a;border:1px solid #555;border-radius:12px;padding:20px;min-width:280px;box-shadow:0 8px 32px #00000080;color:#e8e8e8}.popup-title{margin:0 0 16px;font-size:1.2rem;color:#fff}.popup-hint{margin:0 0 12px;font-size:.85rem;color:#aaa}.popup-toggle{padding:6px 12px;font-size:.9rem;border-radius:6px;border:1px solid #555;background:#1a1a1a;color:#aaa;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.popup-toggle:hover{background:#252525;border-color:#666}.popup-toggle.popup-toggle-on{background:#646cff;border-color:#646cff;color:#fff}.popup-toggle.popup-toggle-on:hover{background:#7580ff;border-color:#7580ff}.popup-form{display:flex;flex-direction:column;gap:14px}.popup-field{display:flex;flex-direction:column;gap:4px;font-size:.9rem}.popup-field span{color:#ccc}.popup-field input[type=text],.popup-field input[type=number]{padding:6px 10px;border-radius:6px;border:1px solid #555;background:#1a1a1a;color:#e8e8e8}.popup-color-wrap{display:flex;gap:8px;align-items:center}.popup-color-input{width:44px;height:32px;padding:2px;border-radius:6px;border:1px solid #555;cursor:pointer;background:transparent}.popup-color-text{flex:1;min-width:0}.popup-size-circles{display:flex;align-items:center;gap:12px}.popup-size-circles button{display:flex;align-items:center;justify-content:center;padding:0;border:2px solid #555;border-radius:50%;background:#1a1a1a;cursor:pointer;transition:border-color .15s,background .15s}.popup-size-circles button:hover{border-color:#888}.popup-size-circles button.selected{border-color:#646cff;background:#2a2a4a}.popup-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.popup-actions button{padding:8px 16px;border-radius:6px;border:1px solid #555;background:#1a1a1a;color:#e8e8e8;font-size:.9rem;cursor:pointer}.popup-actions button[type=submit]{background:#646cff;border-color:#646cff;color:#fff}.popup-actions button:hover{background:#333;border-color:#666}.popup-actions button[type=submit]:hover{background:#7580ff;border-color:#7580ff}.popup-actions-multi{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.popup-actions-spacer{flex:1;min-width:8px}.popup-delete-btn{color:#e88!important;border-color:#844!important;background:#2a1a1a!important}.popup-delete-btn:hover{background:#3a2020!important;border-color:#a55!important;color:#faa!important}.context-menu{position:fixed;z-index:1000;min-width:140px;padding:4px 0;background:#1a1a1a;border:1px solid #444;border-radius:8px;box-shadow:0 8px 24px #00000080}.context-menu button{width:100%;padding:8px 14px;display:flex;align-items:center;gap:10px;border:none;border-radius:0;background:transparent;color:inherit;font-size:.95rem;text-align:left;cursor:pointer}.context-menu button:hover{background:#2a2a4a}.context-menu button svg{flex-shrink:0}.team-plays-page{min-height:100vh;background:#1a1a1a;color:#fff}.team-plays-header{padding:16px 24px;border-bottom:1px solid #444;background:#252525}.team-plays-back{display:inline-block;margin-bottom:8px;font-size:.9rem;color:#646cff;text-decoration:none}.team-plays-back:hover{text-decoration:underline}.team-plays-header h1{margin:0;font-size:1.25rem}.team-plays-main{max-width:600px;margin:0 auto;padding:24px}.team-plays-error{padding:12px;margin-bottom:16px;background:#c8505033;border:1px solid #c44;border-radius:4px;color:#f88}.team-plays-loading{color:#aaa}.team-plays-new{display:inline-block;padding:12px 20px;margin-bottom:20px;background:#646cff;color:#fff;text-decoration:none;border-radius:4px;font-weight:500}.team-plays-new:hover{background:#535bf2}.team-plays-empty{color:#888;margin:0}.team-plays-list{list-style:none;margin:0;padding:0}.team-plays-list li{margin-bottom:8px}.team-plays-list a{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:#252525;border:1px solid #444;border-radius:4px;color:#fff;text-decoration:none}.team-plays-list a:hover{background:#2a2a2a;border-color:#555}.team-plays-name{font-weight:500}.team-plays-date{font-size:.85rem;color:#888}.teams-page{min-height:100vh;background:#1a1a1a;color:#fff}.teams-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid #444;background:#252525}.teams-header h1{margin:0;font-size:1.25rem}.teams-logout{padding:8px 16px;font-size:.9rem;background:transparent;color:#aaa;border:1px solid #555;border-radius:4px;cursor:pointer}.teams-logout:hover{color:#fff;border-color:#666}.teams-main{max-width:600px;margin:0 auto;padding:24px}.teams-error{padding:12px;margin-bottom:16px;background:#c8505033;border:1px solid #c44;border-radius:4px;color:#f88}.teams-loading{color:#aaa}.teams-list h2,.teams-create h2{margin:0 0 12px;font-size:1rem;color:#ccc}.teams-list{margin-bottom:32px}.teams-list ul{list-style:none;margin:0;padding:0}.teams-list li{margin-bottom:4px}.teams-list a{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#252525;border:1px solid #444;border-radius:4px;color:#fff;text-decoration:none}.teams-list a:hover{background:#2a2a2a;border-color:#555}.teams-role{font-size:.75rem;color:#646cff;margin-left:auto}.teams-empty{color:#888;margin:0}.teams-create form{display:flex;gap:8px;flex-wrap:wrap}.teams-create input{flex:1;min-width:160px;padding:10px 12px;font-size:1rem;background:#252525;border:1px solid #444;border-radius:4px;color:#fff}.teams-create button{padding:10px 20px;font-size:1rem;background:#646cff;color:#fff;border:none;border-radius:4px;cursor:pointer}.teams-create button:hover:not(:disabled){background:#535bf2}.teams-create button:disabled{opacity:.6;cursor:not-allowed}.share-view{min-height:100vh;display:flex;flex-direction:column;background:#1a1a1a;color:#fff}.share-view-loading,.share-view-error{flex:1;display:flex;align-items:center;justify-content:center;padding:24px;color:#aaa}.share-view-error{color:#f88}.share-view-header{padding:12px 24px;border-bottom:1px solid #444;background:#252525;display:flex;align-items:baseline;gap:12px}.share-view-header h1{margin:0;font-size:1.25rem}.share-view-subtitle{font-size:.85rem;color:#888}.share-view-main{flex:1;min-height:0;display:flex;flex-direction:column}.share-view-footer{padding:12px 24px;border-top:1px solid #444;background:#252525}.share-view-copy{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.share-view-copy span{font-size:.85rem;color:#aaa}.share-view-copy input{flex:1;min-width:200px;padding:6px 10px;font-size:.85rem;background:#1a1a1a;border:1px solid #444;border-radius:4px;color:#ccc}.share-view-copy button{padding:6px 12px;font-size:.9rem;background:#646cff;color:#fff;border:none;border-radius:4px;cursor:pointer}.share-view-copy button:hover{background:#535bf2}
