.layout{min-height:100vh;display:flex;flex-direction:column}.header{background-color:var(--color-bg);border-bottom:1px solid var(--color-border);padding:var(--spacing) 0;box-shadow:var(--shadow-sm)}.header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing)}.logo{font-size:1.5rem;font-weight:700;color:var(--color-primary);margin:0}.nav{display:flex;align-items:center;gap:var(--spacing);flex-wrap:wrap;width:100%;justify-content:space-between}.nav-links{display:flex;gap:var(--spacing-md);align-items:center}.nav-link{color:var(--color-text);text-decoration:none;font-weight:500;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);transition:background-color .2s,color .2s}.nav-link:hover{background-color:var(--color-bg-tertiary);color:var(--color-primary)}.nav-link.active{color:var(--color-primary);background-color:var(--color-bg-tertiary)}.nav-user{display:flex;align-items:center;gap:var(--spacing);flex-wrap:wrap}.user-info{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-text);font-weight:500}.badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase}.badge-admin{background-color:var(--color-primary);color:#fff}.main{flex:1;padding:var(--spacing-lg) 0}@media (max-width: 768px){.header-content{flex-direction:column;align-items:flex-start}.nav{width:100%;justify-content:space-between}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);padding:var(--spacing)}.login-container{width:100%;max-width:400px}.login-card{background:var(--color-bg);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-lg)}.login-title{font-size:2rem;font-weight:700;color:var(--color-primary);text-align:center;margin-bottom:var(--spacing-sm)}.login-subtitle{text-align:center;color:var(--color-text-light);margin-bottom:var(--spacing-lg)}.login-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-group label{font-weight:500;color:var(--color-text);font-size:.875rem}.form-group input{padding:var(--spacing-sm) var(--spacing);border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.form-group input:disabled{background-color:var(--color-bg-tertiary);cursor:not-allowed}.btn{padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius);font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center}.btn-secondary{background-color:var(--color-bg-tertiary);color:var(--color-text)}.star-rating{display:inline-flex;align-items:center;gap:var(--spacing-xs, 4px);-webkit-user-select:none;user-select:none}.star-rating.disabled{opacity:.6;cursor:not-allowed}.star{background:none;border:none;padding:0;margin:0;font-size:1.5rem;color:var(--color-text-lighter, #ccc);cursor:pointer;transition:color .2s ease,transform .1s ease;line-height:1;display:inline-block}.star:hover:not(:disabled){transform:scale(1.1)}.star.active{color:var(--color-warning, #f59e0b)}.star:disabled{cursor:not-allowed;opacity:.5}.rating-value{margin-left:var(--spacing-xs, 4px);font-size:.875rem;color:var(--color-text-light, #666);font-weight:500}.star-rating.compact .star{font-size:1.2rem}.star-rating.compact .rating-value{font-size:.75rem}.loading-spinner-container{display:flex;justify-content:center;align-items:center;padding:var(--spacing-xl)}.loading-spinner{display:inline-block;position:relative;width:80px;height:80px}.loading-spinner div{box-sizing:border-box;display:block;position:absolute;width:64px;height:64px;margin:8px;border:8px solid var(--color-primary);border-radius:50%;animation:loading-spinner 1.2s cubic-bezier(.5,0,.5,1) infinite;border-color:var(--color-primary) transparent transparent transparent}.loading-spinner div:nth-child(1){animation-delay:-.45s}.loading-spinner div:nth-child(2){animation-delay:-.3s}.loading-spinner div:nth-child(3){animation-delay:-.15s}@keyframes loading-spinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.to-rank-page{max-width:800px;margin:0 auto;padding:2rem 0}.to-rank-header{text-align:center;margin-bottom:2rem}.to-rank-header h2{font-size:2rem;margin-bottom:.5rem;color:var(--text-primary)}.to-rank-subtitle{color:var(--text-secondary);font-size:1rem}.to-rank-empty{text-align:center;padding:4rem 2rem;background:var(--bg-secondary);border-radius:8px;border:2px dashed var(--border-color)}.empty-icon{font-size:4rem;margin-bottom:1rem}.to-rank-empty h2{font-size:2rem;margin-bottom:1rem;color:var(--text-primary)}.empty-message{font-size:1.125rem;color:var(--text-secondary);line-height:1.6}.to-rank-game{margin-top:2rem}.to-rank-page .game-card-large{background:var(--bg-secondary);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.to-rank-page .game-image-container{width:100%;height:300px;overflow:hidden;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center}.to-rank-page .game-image-large{width:100%;height:100%;object-fit:cover}.to-rank-page .game-content-large{padding:2rem}.to-rank-page .game-name-large{font-size:1.75rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.to-rank-page .game-description{color:var(--text-secondary);line-height:1.6;margin-bottom:2rem;font-size:1rem}.to-rank-page .game-status-section{display:flex;flex-direction:column;gap:2rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.to-rank-page .status-controls{display:flex;align-items:center}.to-rank-page .status-checkbox{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-size:1rem;color:var(--text-primary)}.to-rank-page .status-checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--primary-color)}.to-rank-page .status-checkbox input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}.to-rank-page .rating-section{display:flex;flex-direction:column;gap:1rem;align-items:center}.to-rank-page .rating-label{font-size:1rem;font-weight:500;color:var(--text-primary);text-align:center}.to-rank-page .star-rating,.to-rank-page .star-rating .star{font-size:5rem}.to-rank-page .star-rating .rating-value{font-size:1.75rem}@media (max-width: 768px){.to-rank-page{padding:1rem}.to-rank-page .game-content-large{padding:1.5rem}.to-rank-page .game-name-large{font-size:1.5rem}.to-rank-page .game-image-container{height:200px}.to-rank-page .star-rating,.to-rank-page .star-rating .star{font-size:4rem}.to-rank-page .star-rating .rating-value{font-size:1.5rem}}@media (max-width: 480px){.to-rank-page .star-rating,.to-rank-page .star-rating .star{font-size:3rem}.to-rank-page .star-rating .rating-value{font-size:1.25rem}}.game-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;transition:box-shadow .2s,transform .2s;display:flex;flex-direction:column}.game-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.game-card-image{width:100%;height:200px;overflow:hidden;background-color:var(--color-bg-tertiary)}.game-card-image img{width:100%;height:100%;object-fit:cover}.game-card-content{padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm);flex:1}.game-card-title{font-size:1.25rem;font-weight:600;color:var(--color-text);margin:0}.game-card-description{color:var(--color-text-light);font-size:.875rem;line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.game-card-meta{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;color:var(--color-text-lighter);margin-top:auto}.game-card-date{font-size:.75rem;color:var(--color-text-lighter)}.game-card-status{display:flex;gap:var(--spacing-md);padding:var(--spacing-sm) 0;border-top:1px solid var(--color-border);margin-top:var(--spacing-sm)}.status-checkbox{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;font-size:.875rem;color:var(--color-text);white-space:nowrap}.status-checkbox input[type=checkbox]{width:1.125rem;height:1.125rem;cursor:pointer}.status-checkbox input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}.status-rating{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.875rem;color:var(--color-text)}.rating-label{white-space:nowrap}.game-card-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border)}.game-form-container{margin-bottom:var(--spacing-lg)}.game-form{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow)}.game-form h3{font-size:1.5rem;font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-md) 0}.game-form .form-group{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.game-form .form-group:last-of-type{margin-bottom:var(--spacing-lg)}.game-form label{font-weight:500;color:var(--color-text);font-size:.875rem}.game-form input,.game-form textarea{padding:var(--spacing-sm) var(--spacing);border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem;font-family:inherit;transition:border-color .2s,box-shadow .2s}.game-form input:focus,.game-form textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.game-form input:disabled,.game-form textarea:disabled{background-color:var(--color-bg-tertiary);cursor:not-allowed}.game-form textarea{resize:vertical;min-height:100px}.search-bar{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.search-input{flex:1;padding:var(--spacing-sm) var(--spacing);border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem;transition:border-color .2s,box-shadow .2s}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}@media (max-width: 640px){.search-bar{flex-direction:column}.search-input{width:100%}}.pagination{display:flex;justify-content:center;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-lg);flex-wrap:wrap}.pagination-pages{display:flex;gap:var(--spacing-xs);align-items:center}.pagination-btn{padding:var(--spacing-sm) var(--spacing);border:1px solid var(--color-border);border-radius:var(--radius);background-color:var(--color-bg);color:var(--color-text);cursor:pointer;transition:all .2s;font-size:.875rem;min-width:2.5rem}.pagination-btn:hover:not(:disabled){background-color:var(--color-bg-tertiary);border-color:var(--color-border-dark)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-btn.active{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.pagination-ellipsis{padding:0 var(--spacing-sm);color:var(--color-text-light)}.games-page{width:100%}.games-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);flex-wrap:wrap;gap:var(--spacing)}.games-header h2{font-size:2rem;font-weight:700;color:var(--color-text);margin:0}.games-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}@media (min-width: 640px){.games-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.games-grid{grid-template-columns:repeat(3,1fr)}}.empty-state{text-align:center;padding:var(--spacing-xl) var(--spacing);color:var(--color-text-light)}.empty-state p{font-size:1.125rem;margin-bottom:var(--spacing-md)}.alert{padding:var(--spacing-sm) var(--spacing);border-radius:var(--radius);margin-bottom:var(--spacing-md)}.alert-error{background-color:#fee2e2;color:#991b1b;border:1px solid #fecaca}.games-matrix-page{width:100%}.matrix-header{margin-bottom:var(--spacing-lg)}.matrix-header h2{font-size:2rem;font-weight:700;color:var(--color-text);margin:0 0 var(--spacing-sm) 0}.matrix-subtitle{color:var(--color-text-light);margin:0}.matrix-filters{margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md)}.filters-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.filters-header h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--color-text)}.filters-list{display:flex;flex-wrap:wrap;gap:var(--spacing-md)}.filter-checkbox{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;font-size:.875rem;color:var(--color-text);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);transition:background-color .2s}.filter-checkbox:hover{background-color:var(--color-bg)}.filter-checkbox input[type=checkbox]{width:1.125rem;height:1.125rem;cursor:pointer}.filter-checkbox span{-webkit-user-select:none;user-select:none}.matrix-container{overflow-x:auto;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow)}.matrix-table{width:100%;border-collapse:collapse;min-width:600px}.matrix-table thead{background-color:var(--color-bg-tertiary);position:sticky;top:0;z-index:10}.matrix-table th{padding:var(--spacing-sm) var(--spacing);text-align:center;font-weight:600;color:var(--color-text);border-bottom:2px solid var(--color-border);font-size:.875rem;white-space:nowrap}.matrix-table th.game-name-col{text-align:left;min-width:200px;position:sticky;left:0;background-color:var(--color-bg-tertiary);z-index:11}.matrix-table th.user-col{min-width:100px;max-width:120px;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.matrix-table th.total-stars-col{min-width:100px;font-weight:700;background-color:var(--color-bg-secondary);position:sticky;right:0;z-index:11}.matrix-table td.total-stars-cell{position:sticky;right:0;background-color:var(--color-bg);z-index:1;font-weight:600;font-size:1.1rem;color:var(--color-primary)}.matrix-table tbody tr:hover td.total-stars-cell{background-color:var(--color-bg-secondary)}.matrix-table td{padding:var(--spacing-sm);text-align:center;border-bottom:1px solid var(--color-border);border-right:1px solid var(--color-border);vertical-align:middle}.matrix-table td.game-name-cell{position:sticky;left:0;background-color:var(--color-bg);z-index:1;text-align:left;padding:var(--spacing-sm) var(--spacing)}.game-name-content{display:flex;align-items:center;gap:var(--spacing-sm)}.game-thumbnail{width:40px;height:40px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}.game-name{font-weight:500;color:var(--color-text)}.matrix-table tbody tr:hover,.matrix-table tbody tr:hover td.game-name-cell{background-color:var(--color-bg-secondary)}.status-cell{font-size:1.25rem;font-weight:700;cursor:default;-webkit-user-select:none;user-select:none}.status-cell.status-none{color:var(--color-text-lighter)}.status-cell.status-played{color:var(--color-success)}.status-cell.status-want{color:var(--color-warning)}.status-cell.status-both{color:var(--color-primary)}.matrix-legend{margin-top:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-bg-secondary);border-radius:var(--radius);display:flex;gap:var(--spacing-lg);flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem}.legend-icon{font-size:1.25rem;font-weight:700}@media (max-width: 768px){.matrix-table{font-size:.875rem}.matrix-table th.user-col{font-size:.7rem;min-width:80px;padding:var(--spacing-xs) var(--spacing-sm)}.game-thumbnail{width:30px;height:30px}.status-cell{font-size:1rem}}.draw-page{padding:2rem;max-width:1200px;margin:0 auto}.draw-header{text-align:center;margin-bottom:2rem}.draw-header h2{font-size:2rem;margin-bottom:.5rem;color:var(--text-primary)}.draw-subtitle{font-size:1rem;color:var(--text-secondary);margin:0}.draw-filters{margin-bottom:var(--spacing-lg, 1.5rem);padding:var(--spacing-md, 1rem);background:var(--color-bg-secondary, var(--bg-secondary));border:1px solid var(--color-border, var(--border-color));border-radius:var(--radius-md, 8px)}.draw-filters .filters-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md, 1rem)}.draw-filters .filters-header h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--color-text, var(--text-primary))}.draw-filters .filters-list{display:flex;flex-wrap:wrap;gap:var(--spacing-md, 1rem)}.draw-filters .filter-checkbox{display:flex;align-items:center;gap:var(--spacing-xs, .25rem);cursor:pointer;font-size:.875rem;color:var(--color-text, var(--text-primary));padding:var(--spacing-xs, .25rem) var(--spacing-sm, .5rem);border-radius:var(--radius-sm, 4px);transition:background-color .2s}.draw-filters .filter-checkbox:hover{background-color:var(--color-bg, var(--bg-primary))}.draw-filters .filter-checkbox input[type=checkbox]{width:1.125rem;height:1.125rem;cursor:pointer}.draw-filters .filter-checkbox span{-webkit-user-select:none;user-select:none}.draw-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;margin-bottom:2rem}.draw-hint{font-size:.875rem;color:var(--text-secondary)}.btn-draw{padding:1rem 2rem;font-size:1.125rem;font-weight:600;min-width:200px}.draw-message{text-align:center;padding:2rem;background:var(--bg-secondary);border-radius:8px;margin-top:2rem}.draw-message p{font-size:1.125rem;color:var(--text-primary);margin:0}.draw-result{margin-top:2rem}.game-card-draw{background:var(--bg-secondary);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;max-width:800px;margin:0 auto}.game-image-container{width:100%;height:300px;overflow:hidden;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center}.game-image-draw{width:100%;height:100%;object-fit:cover}.game-content-draw{padding:2rem}.game-name-draw{font-size:1.75rem;font-weight:600;margin:0 0 1rem;color:var(--text-primary)}.game-description{font-size:1rem;line-height:1.6;color:var(--text-secondary);margin:0 0 1.5rem}.game-meta-draw{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--border-color);font-size:.875rem;color:var(--text-secondary)}.game-creator-draw{font-weight:500}.game-date-draw{color:var(--text-tertiary)}@media (max-width: 768px){.draw-page{padding:1rem}.game-content-draw{padding:1.5rem}.game-name-draw{font-size:1.5rem}.game-image-container{height:200px}}.user-form-container{margin-bottom:var(--spacing-lg)}.user-form{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow)}.user-form h3{font-size:1.5rem;font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-md) 0}.user-form .form-group{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.user-form .form-group:last-of-type{margin-bottom:var(--spacing-lg)}.user-form label{font-weight:500;color:var(--color-text);font-size:.875rem}.user-form input,.user-form select{padding:var(--spacing-sm) var(--spacing);border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem;font-family:inherit;transition:border-color .2s,box-shadow .2s}.user-form input:focus,.user-form select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.user-form input:disabled,.user-form select:disabled{background-color:var(--color-bg-tertiary);cursor:not-allowed}.user-form select{cursor:pointer}.form-help{font-size:.75rem;color:var(--color-text-light);margin-top:calc(var(--spacing-xs) * -1)}.form-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end}@media (max-width: 640px){.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%}}.users-page{width:100%}.users-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);flex-wrap:wrap;gap:var(--spacing)}.users-header h2{font-size:2rem;font-weight:700;color:var(--color-text);margin:0}.users-table-container{overflow-x:auto;margin-bottom:var(--spacing-lg);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md)}.users-table{width:100%;border-collapse:collapse}.users-table thead{background-color:var(--color-bg-tertiary)}.users-table th{padding:var(--spacing-sm) var(--spacing);text-align:left;font-weight:600;color:var(--color-text);border-bottom:2px solid var(--color-border);font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.users-table td{padding:var(--spacing-sm) var(--spacing);border-bottom:1px solid var(--color-border);color:var(--color-text)}.users-table tbody tr:hover{background-color:var(--color-bg-secondary)}.users-table tbody tr:last-child td{border-bottom:none}.badge-user{background-color:var(--color-info);color:#fff;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase}.badge-admin{background-color:var(--color-primary);color:#fff;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase}.table-actions{display:flex;gap:var(--spacing-xs);flex-wrap:wrap}@media (max-width: 768px){.users-table-container{font-size:.875rem}.users-table th,.users-table td{padding:var(--spacing-xs) var(--spacing-sm)}.table-actions{flex-direction:column}.table-actions .btn{width:100%}}.app{min-height:100vh;display:flex;flex-direction:column}*{margin:0;padding:0;box-sizing:border-box}:root{--color-primary: #6366f1;--color-primary-dark: #4f46e5;--color-primary-light: #818cf8;--color-secondary: #8b5cf6;--color-success: #10b981;--color-danger: #ef4444;--color-warning: #f59e0b;--color-info: #3b82f6;--color-text: #1f2937;--color-text-light: #6b7280;--color-text-lighter: #9ca3af;--color-bg: #ffffff;--color-bg-secondary: #f9fafb;--color-bg-tertiary: #f3f4f6;--color-border: #e5e7eb;--color-border-dark: #d1d5db;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--radius-sm: .375rem;--radius: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--color-text);background-color:var(--color-bg-secondary);line-height:1.6}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{min-height:100vh}.btn{padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius);font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-dark)}.btn-secondary{background-color:var(--color-bg-tertiary);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background-color:var(--color-border)}.btn-danger{background-color:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background-color:#dc2626}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:.875rem}.btn-block{width:100%}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing)}@media (min-width: 768px){.container{padding:0 var(--spacing-md)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}
