.loading-spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px}.loading-spinner-container.small .loading-spinner{width:20px;height:20px}.loading-spinner-container.medium .loading-spinner{width:40px;height:40px}.loading-spinner-container.large .loading-spinner{width:60px;height:60px}.loading-spinner{position:relative;display:inline-block}.spinner-ring{position:absolute;width:100%;height:100%;border-radius:50%;border:3px solid transparent;border-top-color:#007bff;animation:spin 1.2s cubic-bezier(.5,0,.5,1) infinite}.spinner-ring:nth-child(1){animation-delay:-.45s}.spinner-ring:nth-child(2){animation-delay:-.3s;border-top-color:#0056b3}.spinner-ring:nth-child(3){animation-delay:-.15s;border-top-color:#003d82}.loading-message{margin-top:16px;font-size:14px;color:#6c757d;text-align:center}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#fff;display:flex;align-items:center;justify-content:center;z-index:9999;opacity:1;animation:fadeOut .3s ease-out forwards}@keyframes fadeOut{0%{opacity:1}to{opacity:.95}}.blog-list-container{max-width:1200px;margin:0 auto;padding:20px}.blog-header{text-align:center;margin-bottom:40px}.blog-header h1{font-size:2.5rem;color:#2c3e50;margin-bottom:10px}.blog-subtitle{color:#7f8c8d;font-size:1.1rem}.blog-categories{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:40px}.category-btn{padding:8px 20px;border:2px solid #e0e0e0;background:#fff;border-radius:25px;cursor:pointer;transition:all .3s ease;font-size:.95rem}.category-btn:hover{border-color:#4caf50;color:#4caf50}.category-btn.active{background:#4caf50;color:#fff;border-color:#4caf50}.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:30px}.blog-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000001a;transition:transform .3s ease,box-shadow .3s ease}.blog-card:hover{transform:translateY(-5px);box-shadow:0 4px 15px #00000026}.blog-thumbnail{width:100%;height:200px;overflow:hidden}.blog-thumbnail img{width:100%;height:100%;object-fit:cover}.blog-content{padding:20px}.blog-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.blog-category{background:#f0f0f0;padding:4px 12px;border-radius:15px;font-size:.85rem;color:#666}.blog-date{color:#999;font-size:.85rem}.blog-title{margin-bottom:15px}.blog-title a{color:#2c3e50;text-decoration:none;font-size:1.3rem;font-weight:600;line-height:1.3}.blog-title a:hover{color:#4caf50}.blog-excerpt{color:#666;line-height:1.6;margin-bottom:20px}.blog-footer{display:flex;justify-content:space-between;align-items:center}.blog-author{color:#999;font-size:.9rem}.read-more{color:#4caf50;text-decoration:none;font-weight:500;font-size:.95rem}.read-more:hover{text-decoration:underline}.no-posts{text-align:center;padding:60px 20px}.no-posts p{color:#999;font-size:1.1rem;margin-bottom:20px}.create-post-btn{display:inline-block;padding:12px 30px;background:#4caf50;color:#fff;text-decoration:none;border-radius:25px;font-weight:500;transition:background .3s ease}.create-post-btn:hover{background:#45a049}.blog-loading{text-align:center;padding:60px;color:#999}@media (max-width: 768px){.blog-header h1{font-size:2rem}.blog-grid{grid-template-columns:1fr}.blog-categories{padding:0 10px}.category-btn{font-size:.85rem;padding:6px 15px}}.blog-post-container{max-width:900px;margin:0 auto;padding:20px}.blog-post{background:#fff;border-radius:12px;padding:40px;box-shadow:0 2px 8px #0000001a;margin-bottom:40px}.post-header{margin-bottom:30px}.post-breadcrumb{font-size:.9rem;color:#999;margin-bottom:20px}.post-breadcrumb a{color:#4caf50;text-decoration:none}.post-breadcrumb a:hover{text-decoration:underline}.post-title{font-size:2.5rem;color:#2c3e50;line-height:1.2;margin-bottom:20px}.post-meta{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.post-author{display:flex;align-items:center;gap:8px;font-weight:500}.post-author img{width:32px;height:32px;border-radius:50%}.post-date{color:#999}.post-category{background:#f0f0f0;padding:4px 12px;border-radius:15px;font-size:.9rem;color:#666}.post-thumbnail{margin:30px -40px;max-height:500px;overflow:hidden}.post-thumbnail img{width:100%;height:auto;display:block}.post-content{font-size:1.1rem;line-height:1.8;color:#333;margin:30px 0}.post-content h2{font-size:1.8rem;margin:30px 0 20px;color:#2c3e50;border-bottom:2px solid #f0f0f0;padding-bottom:10px}.post-content h3{font-size:1.5rem;margin:25px 0 15px;color:#34495e}.post-content p{margin:15px 0}.post-content ul,.post-content ol{margin:20px 0;padding-left:30px}.post-content li{margin:10px 0}.post-content blockquote{border-left:4px solid #4CAF50;padding-left:20px;margin:20px 0;color:#666;font-style:italic}.post-content img{max-width:100%;height:auto;margin:20px 0;border-radius:8px}.post-content pre{background:#f5f5f5;padding:15px;border-radius:8px;overflow-x:auto;margin:20px 0}.post-content code{background:#f0f0f0;padding:2px 6px;border-radius:4px;font-family:Courier New,monospace}.post-tags{margin:30px 0;display:flex;flex-wrap:wrap;gap:10px}.tag{background:#e8f5e9;color:#4caf50;padding:6px 15px;border-radius:20px;font-size:.9rem}.post-actions{display:flex;justify-content:space-between;align-items:center;margin-top:40px;padding-top:30px;border-top:2px solid #f0f0f0}.share-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#4caf50;color:#fff;border:none;border-radius:25px;cursor:pointer;font-size:1rem;transition:background .3s ease}.share-btn:hover{background:#45a049}.back-to-list{color:#4caf50;text-decoration:none;font-weight:500}.back-to-list:hover{text-decoration:underline}.related-posts{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #0000001a}.related-posts h3{font-size:1.3rem;color:#2c3e50;margin-bottom:20px}.related-posts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.related-post-card{display:flex;flex-direction:column;text-decoration:none;border-radius:8px;overflow:hidden;transition:transform .3s ease;box-shadow:0 2px 4px #0000001a}.related-post-card:hover{transform:translateY(-3px);box-shadow:0 4px 8px #00000026}.related-post-thumbnail{height:120px;overflow:hidden}.related-post-thumbnail img{width:100%;height:100%;object-fit:cover}.related-post-content{padding:15px;background:#f9f9f9}.related-post-content h4{color:#2c3e50;font-size:1rem;margin-bottom:8px;line-height:1.3}.related-post-date{color:#999;font-size:.85rem}.blog-loading,.blog-not-found{text-align:center;padding:60px;color:#999}@media (max-width: 768px){.blog-post{padding:20px}.post-title{font-size:1.8rem}.post-thumbnail{margin:20px -20px}.post-content{font-size:1rem}.post-actions{flex-direction:column;gap:20px}.related-posts-grid{grid-template-columns:1fr}}.blog-editor-container{max-width:1200px;margin:0 auto;padding:20px}.editor-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #f0f0f0}.editor-header h1{font-size:2rem;color:#2c3e50}.editor-actions{display:flex;gap:10px}.editor-actions button{padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:.95rem;font-weight:500;transition:all .3s ease}.preview-btn{background:#f0f0f0;color:#333}.preview-btn:hover{background:#e0e0e0}.draft-btn{background:#ffc107;color:#fff}.draft-btn:hover{background:#ffb300}.publish-btn{background:#4caf50;color:#fff}.publish-btn:hover{background:#45a049}.cancel-btn{background:#f44336;color:#fff}.cancel-btn:hover{background:#da190b}.editor-form{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #0000001a}.form-group{margin-bottom:25px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#333}.form-input,.form-textarea,.form-select{width:100%;padding:10px 15px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:border-color .3s ease}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:#4caf50}.form-textarea{resize:vertical;font-family:inherit;line-height:1.6}.content-editor{font-family:Courier New,monospace;min-height:400px}.editor-toolbar{background:#f5f5f5;padding:10px 15px;border-radius:8px 8px 0 0;margin-bottom:-2px}.toolbar-hint{font-size:.85rem;color:#666}.form-file{padding:8px;border:2px dashed #e0e0e0;border-radius:8px;width:100%;cursor:pointer}.thumbnail-preview{margin-top:15px;position:relative;display:inline-block}.thumbnail-preview img{max-width:300px;max-height:200px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.remove-thumbnail{position:absolute;top:10px;right:10px;background:#f44336e6;color:#fff;border:none;border-radius:50%;width:30px;height:30px;cursor:pointer;font-size:1.2rem}.tags-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.tag-item{background:#e8f5e9;color:#4caf50;padding:6px 12px;border-radius:20px;display:flex;align-items:center;gap:8px}.tag-item button{background:none;border:none;color:#4caf50;cursor:pointer;font-size:1.2rem;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center}.tag-item button:hover{color:#2e7d32}.preview-container{background:#fff;border-radius:12px;padding:40px;box-shadow:0 2px 8px #0000001a}.blog-preview h1{font-size:2.5rem;color:#2c3e50;margin-bottom:20px}.preview-meta{display:flex;gap:20px;color:#999;margin-bottom:30px}.preview-thumbnail{width:100%;max-height:500px;object-fit:cover;border-radius:8px;margin-bottom:30px}.preview-content{font-size:1.1rem;line-height:1.8;color:#333}.preview-content h1,.preview-content h2,.preview-content h3{margin:25px 0 15px;color:#2c3e50}.preview-content p{margin:15px 0}.preview-content strong{font-weight:600;color:#2c3e50}.preview-content em{font-style:italic}.preview-tags{margin-top:30px;display:flex;flex-wrap:wrap;gap:10px}.preview-tags span{background:#e8f5e9;color:#4caf50;padding:6px 15px;border-radius:20px;font-size:.9rem}@media (max-width: 768px){.editor-header{flex-direction:column;align-items:flex-start;gap:20px}.editor-actions{width:100%;flex-wrap:wrap}.form-row{grid-template-columns:1fr}.thumbnail-preview img{max-width:100%}}.training-calendar{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:16px;max-width:100%;width:100%}.calendar-header{text-align:center;margin-bottom:20px}.calendar-header h2{font-size:20px;color:#2c5aa0;margin:0;font-weight:700}.tab-switcher{display:flex;gap:10px;margin-bottom:20px;background:#f5f5f5;border-radius:8px;padding:4px}.tab-btn{flex:1;padding:10px 20px;border:none;background:transparent;border-radius:6px;font-size:16px;cursor:pointer;transition:all .3s ease;font-weight:500}.tab-btn.active{background:#28a745;color:#fff;box-shadow:0 2px 4px #0000001a}.tab-btn:not(.active):hover{background:#e0e0e0}.month-navigation{display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:20px}.nav-btn{background:#f0f0f0;border:none;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;font-size:14px}.nav-btn:hover{background:#e0e0e0}.current-month{font-size:18px;font-weight:700;color:#333;min-width:100px;text-align:center}.weekday-header{display:grid;grid-template-columns:repeat(7,1fr);width:100%;background:#f8f8f8;border:1px solid #e0e0e0;border-bottom:none;gap:0}.weekday{text-align:center;font-size:11px;font-weight:400;padding:2px;color:#666;background:#f8f8f8;border-right:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0;display:grid;place-items:center;min-height:60px;min-width:0;width:100%;box-sizing:border-box;overflow:hidden;position:relative}.weekday:last-child{border-right:none}.weekday.sunday{color:red}.weekday.saturday{color:#00f}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:60px;width:100%;background:#fff;gap:0;border:1px solid #e0e0e0}.calendar-cell{background:#fff;border-right:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0;padding:2px;cursor:pointer;transition:all .2s ease;position:relative;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:400;min-height:60px;min-width:0;width:100%;box-sizing:border-box;overflow:visible;color:#333}.calendar-cell:hover:not(.empty){background:#f0f0f0}.calendar-cell.empty{cursor:default;background:#fafafa}.calendar-cell.today{background:#fff9c4;font-weight:700}.calendar-cell.has-practice{background:#e8f5e9}.calendar-cell:nth-child(7n+1):not(.empty){color:red;background:#fff8f8}.calendar-cell:nth-child(7n):not(.empty){color:#00f;background:#f8f8ff;border-right:none}.calendar-cell:nth-last-child(-n+7){border-bottom:none}.calendar-cell:nth-child(7n+1).today,.calendar-cell:nth-child(7n).today{background:#fff9c4}.calendar-cell.selected{background:gold;border-color:#ffc107}.practice-indicator{position:absolute;bottom:2px;right:2px;font-size:10px}.note-list{display:flex;flex-direction:column;gap:12px}.note-item{padding:16px;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .3s ease;text-align:center}.note-item.green{background:linear-gradient(to bottom,#5cb85c,#4cae4c);color:#fff;box-shadow:0 2px 4px #4cae4c4d}.note-item.yellow{background:linear-gradient(to bottom,#f0ad4e,#ec971f);color:#fff;box-shadow:0 2px 4px #ec971f4d}.note-item.red{background:linear-gradient(to bottom,#d9534f,#c9302c);color:#fff;box-shadow:0 2px 4px #c9302c4d}.note-item:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0003}.note-memo{margin-top:20px;padding:16px;background:#f8f9fa;border-radius:8px}.note-memo label{display:block;font-weight:700;margin-bottom:8px;color:#333}.note-memo textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;resize:vertical;font-size:14px;font-family:inherit}.note-memo textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff1a}@media (min-width: 769px) and (max-width: 1199px){.training-calendar{padding:12px;max-width:500px;margin:0 auto}.calendar-cell{min-height:50px;padding:12px 6px;font-size:16px}.weekday{font-size:11px;padding:5px 3px}.calendar-header h2,.current-month{font-size:16px}.nav-btn{width:26px;height:26px;font-size:12px}}@media (max-width: 768px){.training-calendar{padding:8px;max-width:240px;margin:0 auto}.calendar-cell{min-height:24px;padding:2px;font-size:10px}.weekday{font-size:9px;padding:3px 1px}.calendar-header h2{font-size:12px}.current-month{font-size:12px;min-width:80px}.nav-btn{width:20px;height:20px;font-size:10px}.weekday{font-size:12px;padding:2px}.practice-indicator{font-size:8px}.note-item{padding:12px;font-size:14px}}.list-content h3{text-align:center;color:#333;margin-bottom:20px;font-size:18px}.navigation{background:#fff;padding:0;box-shadow:0 2px 4px #00000014;position:-webkit-sticky;position:sticky;top:0;z-index:100;border-bottom:1px solid #e0e0e0}.nav-items{display:flex;align-items:stretch;height:56px;margin:0 auto;max-width:1400px;padding:0 1rem;overflow-x:auto}@media (max-width: 768px){.nav-items{padding:0 .5rem;gap:0}}.nav-item{display:flex;align-items:center;justify-content:center;padding:0 1.5rem;text-decoration:none;color:#666;background:transparent;border:none;cursor:pointer;transition:all .2s;position:relative;font-family:inherit;white-space:nowrap;gap:.5rem;flex-shrink:0}@media (max-width: 768px){.nav-item{padding:0 .75rem;gap:.25rem}.nav-label{font-size:.75rem}.nav-icon{font-size:1rem}}.nav-item:hover{background-color:#f8f9fa;color:#333}.nav-item.active{color:#2e7d46;font-weight:700;border-bottom:3px solid #2e7d46}.nav-icon{font-size:1.2rem}.nav-label{font-size:.9rem;font-weight:500}.admin-badge{background:#fff3e0;color:#ff6f00}.admin-badge:hover{background:#ffe0b2}.install-button{background:transparent}.install-button:hover{background:#2196f326}.logout-button{background:#ff6e42;color:#fff;border-radius:20px;padding:0 2rem;margin-left:auto;margin-right:1rem}.logout-button:hover{background:#ff5722}.more-menu{position:relative}.nav-calendar{position:fixed;background:#fff;border-radius:12px;padding:0;box-shadow:0 4px 16px #00000026;width:320px;transition:all .3s ease;z-index:998;overflow:hidden}.nav-calendar.minimized{width:auto;min-width:200px}.nav-calendar.dragging{box-shadow:0 8px 24px #00000040;opacity:.9}.calendar-header-section{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#f8f9fa;border-bottom:1px solid #e0e0e0;cursor:move;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;touch-action:none;-webkit-touch-callout:none;padding:.5rem;background:#f5f5f5;border-radius:6px 6px 0 0;margin:-.5rem -.5rem .5rem}.calendar-header-section:hover{background:#eee}.nav-calendar.dragging .calendar-header-section{background:#e0e0e0}.nav-calendar h3{color:#2e7d46;margin:0;font-size:.9rem;display:flex;align-items:center;gap:.3rem}.calendar-minimize-btn{background:none;border:none;color:#2e7d46;font-size:1rem;cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:all .2s;font-weight:700}.calendar-minimize-btn:hover{background-color:#e8f5e9;transform:scale(1.1)}@media (max-width: 768px){.nav-items{height:48px;padding:0 .5rem}.nav-item{padding:0 .75rem}.nav-icon{display:none}.nav-label{font-size:.85rem}.logout-button{padding:0 1rem;margin-right:.5rem}.nav-calendar{width:280px;max-width:calc(100vw - 20px);position:fixed;z-index:300;max-height:calc(100vh - 80px);overflow-y:auto}.nav-calendar.dragging{transition:none}.calendar-header-section{padding:1rem;min-height:44px}}@media (max-width: 480px){.nav-calendar{width:calc(100vw - 20px);max-width:320px;right:50%;transform:translate(50%);left:auto;top:60px}.nav-calendar.minimized{width:auto;min-width:120px}}.nav-install-button{animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}to{transform:scale(1);opacity:1}}.app-footer{background:linear-gradient(135deg,#1e5631,#2e7d46);color:#fff;padding:3rem 0 1rem;margin-top:4rem}.footer-content{max-width:1200px;margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem;margin-bottom:2rem}.footer-section h3{font-size:1.5rem;margin-bottom:.5rem}.footer-section h4{font-size:1.1rem;margin-bottom:1rem;color:#a7d5a7}.footer-section p{opacity:.9;line-height:1.6}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:.5rem}.footer-links a{color:#fff;text-decoration:none;opacity:.8;transition:opacity .2s}.footer-links a:hover{opacity:1;text-decoration:underline}.footer-bottom{text-align:center;padding:1.5rem 2rem;border-top:1px solid rgba(255,255,255,.2)}.footer-bottom p{margin:0;opacity:.7;font-size:.9rem}@media (max-width: 768px){.footer-content{grid-template-columns:1fr;gap:2rem;text-align:center}.footer-section{padding:0 1rem}.footer-links{display:flex;flex-direction:column;align-items:center}}@media (max-width: 480px){.app-footer{padding:2rem 0 1rem;margin-top:2rem}.footer-content{padding:0 1rem}}.offline-indicator{position:fixed;top:70px;left:50%;transform:translate(-50%);z-index:1000;animation:slideDown .3s ease-out}.indicator-content{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ff5722;color:#fff;border-radius:20px;box-shadow:0 2px 8px #0003;font-size:.875rem;font-weight:500}.offline-indicator.syncing .indicator-content{background:#2196f3}.indicator-icon{font-size:1rem}.indicator-icon.syncing{animation:spin 1s linear infinite}@keyframes slideDown{0%{transform:translate(-50%) translateY(-20px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}@media (max-width: 768px){.offline-indicator{top:60px}.indicator-content{padding:.375rem .75rem;font-size:.8125rem}}.app{min-height:100vh;background:linear-gradient(to bottom,#e8f5e8,#f0f4f0);overflow-x:hidden;width:100%;position:relative}@media (max-width: 768px){.app{padding-bottom:60px}}.app-header{background:linear-gradient(135deg,#1e5631,#2e7d46);color:#fff;padding:1.5rem 1rem;text-align:center;box-shadow:0 2px 10px #0000001a}@media (min-width: 1024px){.app-header{padding:.75rem 1rem}}.app-header h1{font-size:2rem;margin-bottom:.25rem;text-shadow:2px 2px 4px rgba(0,0,0,.3)}@media (min-width: 1024px){.app-header h1{font-size:1.25rem;margin-bottom:.125rem}}.app-header p{font-size:1rem;opacity:.9;margin:0}@media (min-width: 1024px){.app-header p{font-size:.75rem}}.app-main{max-width:800px;margin:0 auto;padding:2rem 1rem;width:100%;box-sizing:border-box}@media (max-width: 768px){.app-main{padding:1rem .5rem;max-width:100%}}@media (max-width: 768px){.app-header h1{font-size:1.75rem}.app-header p{font-size:.875rem}.app-main{padding:1rem}}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:#f5f5f5}.loading-spinner{width:50px;height:50px;border:4px solid #e0e0e0;border-top-color:#2e7d46;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}body.admin-theme{background-color:#1a1a1a;color:#e0e0e0}body.admin-theme .app-header{background:#000;color:#fff;border-bottom:2px solid #ff6b35}body.admin-theme .app-header h1{color:#fff}body.admin-theme .app-header p{color:#ccc}body.admin-theme .navigation{background:#1f1f1f;box-shadow:0 2px 8px #00000080;border-bottom:1px solid #333}body.admin-theme .nav-link{color:#b0b0b0}body.admin-theme .nav-link:hover{background-color:#333;color:#ff6b35}body.admin-theme .nav-link.active{background:linear-gradient(135deg,#ff6b35,#ff8c5a);color:#fff}body.admin-theme .logout-button{background:#2a2a2a;border-color:#ff6b35;color:#ff6b35}body.admin-theme .logout-button:hover{background:#ff6b35;color:#000}body.admin-theme .admin-badge{background:#ff6b35;color:#000;font-weight:700}body.admin-theme .timeline-container{background:#1a1a1a}body.admin-theme .post-form-card,body.admin-theme .post-card{background:#2a2a2a;border:1px solid #333;box-shadow:0 2px 8px #0000004d}body.admin-theme .form-tabs button{background:#333;color:#b0b0b0;border-color:#444}body.admin-theme .form-tabs button.active{background:#ff6b35;color:#000;border-color:#ff6b35}body.admin-theme .form-tabs button:hover:not(.active){background:#444;color:#ff6b35}body.admin-theme input,body.admin-theme textarea,body.admin-theme select{background:#1f1f1f;color:#e0e0e0;border:1px solid #444}body.admin-theme input:focus,body.admin-theme textarea:focus,body.admin-theme select:focus{border-color:#ff6b35;outline:none;box-shadow:0 0 0 2px #ff6b3533}body.admin-theme .submit-button{background:linear-gradient(135deg,#ff6b35,#ff8c5a);color:#000;font-weight:700}body.admin-theme .submit-button:hover{background:linear-gradient(135deg,#ff8c5a,#fa7);transform:translateY(-2px);box-shadow:0 4px 12px #ff6b3566}body.admin-theme .mypage-container,body.admin-theme .profile-container{background:#1a1a1a;color:#e0e0e0}body.admin-theme .mypage-header,body.admin-theme .profile-header{background:linear-gradient(135deg,#2a2a2a,#1f1f1f);color:#fff}body.admin-theme .section-card{background:#2a2a2a;border:1px solid #333;box-shadow:0 2px 8px #0000004d}body.admin-theme .section-header{background:#333;color:#ff6b35}body.admin-theme .stats-grid .stat-item{background:#333;border:1px solid #444}body.admin-theme .stats-grid .stat-value{color:#ff6b35}body.admin-theme .footer{background:#000;color:#b0b0b0;border-top:1px solid #333}body.admin-theme .footer a{color:#ff6b35}body.admin-theme .footer a:hover{color:#ff8c5a}body.admin-theme .nav-calendar{background:#2a2a2a;border:1px solid #444;box-shadow:0 4px 12px #00000080}body.admin-theme .calendar-header-section{background:#333}body.admin-theme .calendar-header-section:hover{background:#444}body.admin-theme .nav-calendar h3,body.admin-theme .calendar-minimize-btn{color:#ff6b35}body.admin-theme .calendar-minimize-btn:hover{background-color:#444}body.admin-theme .quick-form-card{background:#2a2a2a;border:1px solid #333}body.admin-theme .quick-form-header{background:linear-gradient(135deg,#333,#444)}body.admin-theme .quick-form-title{color:#ff6b35}body.admin-theme .modal-overlay{background:#000c}body.admin-theme .modal-content{background:#2a2a2a;color:#e0e0e0;border:1px solid #444}body.admin-theme .auth-container{background:linear-gradient(135deg,#1a1a1a,#2a2a2a)}body.admin-theme .auth-card{background:#2a2a2a;border:1px solid #444;box-shadow:0 4px 20px #00000080}body.admin-theme .auth-card h2{color:#ff6b35}body.admin-theme .profile-setup-container{background:#1a1a1a}body.admin-theme .profile-setup-card{background:#f5f5f5;border:1px solid #444;color:#333}body.admin-theme .profile-setup-card h2,body.admin-theme .profile-setup-card h3{color:#333}body.admin-theme .setup-subtitle{color:#666}body.admin-theme .sport-option,body.admin-theme .hand-option,body.admin-theme .position-option,body.admin-theme .pitcher-type-option,body.admin-theme .pitch-type-option{background:#fff;border-color:#ddd;color:#333}body.admin-theme .sport-option.selected,body.admin-theme .hand-option.selected,body.admin-theme .position-option.selected,body.admin-theme .pitcher-type-option.selected,body.admin-theme .pitch-type-option.selected{background:#ff6b35;color:#fff;border-color:#ff6b35}body.admin-theme .sport-option:hover,body.admin-theme .hand-option:hover,body.admin-theme .position-option:hover,body.admin-theme .pitcher-type-option:hover,body.admin-theme .pitch-type-option:hover{background:#f0f0f0;border-color:#ff6b35}body.admin-theme .profile-setup-form input,body.admin-theme .profile-setup-form select{background:#fff;color:#333;border:1px solid #ddd}body.admin-theme .profile-setup-form input:focus,body.admin-theme .profile-setup-form select:focus{border-color:#ff6b35;outline:none;box-shadow:0 0 0 2px #ff6b3533}body.admin-theme .form-section{color:#333}body.admin-theme .position-hint,body.admin-theme .birth-date-note,body.admin-theme .birth-format-hint{color:#666}body.admin-theme .setup-submit-button{background:linear-gradient(135deg,#ff6b35,#ff8c5a);color:#fff;font-weight:700}body.admin-theme .setup-submit-button:hover{background:linear-gradient(135deg,#ff8c5a,#fa7)}body.admin-theme .sport-icon,body.admin-theme .pitcher-type-icon{filter:none}body.admin-theme .sport-label,body.admin-theme .hand-group label,body.admin-theme .position-option span,body.admin-theme .pitcher-type-option span,body.admin-theme .pitch-type-option span{color:#333}body.admin-theme .selected .sport-label,body.admin-theme .selected span{color:#fff}body.admin-theme .nickname-input,body.admin-theme .category-select,body.admin-theme .grade-select,body.admin-theme .physical-input,body.admin-theme .birth-single-input,body.admin-theme .birth-date-picker{background:#fff;color:#333;border:1px solid #ddd}body.admin-theme .personal-info-grid label,body.admin-theme .physical-info-grid label,body.admin-theme .pitcher-info label,body.admin-theme .pitch-types-section label{color:#333}body.admin-theme .pwa-install-banner{background:linear-gradient(135deg,#ff6b35,#ff8c5a);color:#000}body.admin-theme .disclaimer-container{background:#1a1a1a}body.admin-theme .disclaimer-card{background:#2a2a2a;border:1px solid #444}body.admin-theme .disclaimer-section{background:#333;border:1px solid #444}body.admin-theme .contact-form{background:#2a2a2a;border:1px solid #444}*{margin:0;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}@supports not (display: grid){.training-parts-selector,.category-selector,.calendar-days,.calendar-weekdays{display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}}body{font-family:Noto Sans JP,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:#f0f4f0;color:#333;line-height:1.7;font-size:16px;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased}@media (max-width: 768px){body{font-size:17px}}button{cursor:pointer;border:none;background:none;font-family:inherit}textarea{font-family:inherit;resize:vertical}.position-relative{position:relative}.icon-wrapper{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1;pointer-events:none}.icon-offset{transform:translateY(-2px)}.count-input{padding-left:2.5rem;text-align:right}input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=url],input[type=search],textarea,select{font-size:16px!important;min-height:44px}button,a,.clickable,[role=button],[onclick]{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;position:relative}button:before,a:before,.clickable:before{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;z-index:-1}.full-height{height:100vh;height:100dvh}.min-full-height{min-height:100vh;min-height:100dvh}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;-webkit-overflow-scrolling:touch}.fixed-header,.fixed-footer{position:fixed;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}body.modal-open{position:fixed;width:100%;overflow:hidden;-webkit-overflow-scrolling:auto}.draggable,.chart-container{touch-action:pan-y}.no-scroll{touch-action:none}@media (prefers-color-scheme: dark){input,textarea,select{background-color:#1a1a1a;color:#fff;border-color:#333}button{background-color:#2a2a2a;color:#fff}}.safe-area-padding{padding-top:env(safe-area-inset-top);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left)}@media (orientation: landscape) and (max-height: 500px){.header{position:-webkit-sticky;position:sticky;top:0;z-index:100}.full-height{height:auto;min-height:100dvh}}
