.app{min-height:100vh}.header{text-align:center;padding:20px 20px 10px;color:#fff}.header h1{font-size:2rem;margin-bottom:5px;text-shadow:2px 2px 4px rgba(0,0,0,.2)}.header p{font-size:.9rem;opacity:.9;margin:0}@media (max-width: 768px){.header{padding:15px 15px 8px}.header h1{font-size:1.5rem}.header p{font-size:.85rem}}.form-section{margin-bottom:16px}.form-section-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:10px;padding-bottom:6px;border-bottom:2px solid var(--border-color)}.checkbox-group{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.dropzone{border:2px dashed var(--primary-color);border-radius:8px;padding:25px;text-align:center;cursor:pointer;transition:all .3s;margin-bottom:16px;background:var(--input-bg);color:var(--text-primary)}.dropzone:hover{background:var(--card-bg);border-color:var(--primary-hover);transform:translateY(-2px)}.dropzone.active{border-color:var(--primary-hover);background:var(--card-bg)}.dropzone ul{list-style:none;margin-top:15px;text-align:left}.dropzone li{padding:8px;color:var(--text-secondary);background:var(--input-bg);border-radius:4px;margin-bottom:5px}@media (max-width: 768px){.dropzone{padding:30px 20px}}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:16px}@media (max-width: 768px){.form-grid{grid-template-columns:1fr;gap:16px}}.qr-preview{display:flex;justify-content:center;margin:20px 0;padding:20px;background:var(--input-bg);border-radius:8px}.actions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}.actions button{flex:1;min-width:150px}.form-layout{display:grid;grid-template-columns:1fr 300px;gap:14px;align-items:start}.form-card{min-width:0}.form-card h2{font-size:1.2rem;margin-bottom:12px}.preview-card{position:sticky;top:10px}.preview-card h2{font-size:1.1rem;margin-bottom:10px}.qr-preview-live{display:flex;justify-content:center;align-items:center;padding:12px;background:var(--input-bg);border-radius:8px;margin-bottom:10px;min-height:220px}.preview-info{font-size:.85rem;color:var(--text-secondary)}.preview-info p{margin:4px 0;display:flex;align-items:center;gap:6px}.preview-info strong{color:var(--text-primary);min-width:70px;font-size:.85rem}@media (max-width: 1024px){.form-layout{grid-template-columns:1fr}.preview-card{position:static}}@media (max-width: 768px){.actions{flex-direction:column}.actions button{width:100%}.qr-preview-live{min-height:200px}}.success-message{text-align:center;padding:20px}.success-message h2{color:var(--text-primary);margin-bottom:20px}.success-message p{color:var(--text-secondary);margin-bottom:10px;word-break:break-all}.success-message a{color:var(--primary-color);text-decoration:none}.success-message a:hover{text-decoration:underline}.description{color:var(--text-secondary);margin-bottom:20px;font-size:18px;line-height:1.6}.files-list{margin-top:30px}.files-list h2{color:var(--text-primary);margin-bottom:20px;font-size:1.5rem}.file-item{display:flex;flex-direction:column;padding:20px;border:2px solid var(--border-color);border-radius:12px;margin-bottom:20px;background:var(--input-bg);transition:all .3s ease}.file-item:hover{border-color:var(--primary-color);box-shadow:var(--shadow);transform:translateY(-2px)}.file-info{margin-bottom:15px}.file-info h3{margin:0 0 8px;color:var(--text-primary);font-size:1.1rem;word-break:break-word}.file-info p{margin:0;color:var(--text-secondary);font-size:14px}.file-preview{margin-bottom:15px;border-radius:8px;overflow:hidden;background:var(--bg-secondary)}.file-preview img,.file-preview video{width:100%;max-height:500px;object-fit:contain;display:block}.file-actions{display:flex;gap:10px;flex-wrap:wrap}.file-actions button{flex:1;min-width:120px}@media (max-width: 768px){.file-item{padding:15px}.file-actions{flex-direction:column}.file-actions button{width:100%}.file-preview img,.file-preview video{max-height:300px}}.access-count{text-align:center;color:var(--text-muted);margin-top:30px;font-style:italic;padding-top:20px;border-top:1px solid var(--border-color)}.loading{text-align:center;padding:40px;color:var(--text-secondary)}.error-message{text-align:center;padding:20px;color:#dc3545;background:#dc35451a;border-radius:8px;margin:20px 0}.form-container{max-width:400px;margin:0 auto}.form-container h2{color:var(--text-primary);margin-bottom:20px;text-align:center}.form-container form{display:flex;flex-direction:column}.form-container label{margin-bottom:12px}.form-container input{margin-bottom:20px}.form-container button{width:100%;margin-top:10px}.file-dropzone{border:2px dashed var(--primary-color);border-radius:6px;padding:20px;text-align:center;cursor:pointer;transition:all .3s;background:var(--input-bg);color:var(--text-primary);margin-bottom:12px}.file-dropzone:hover{background:var(--card-bg);border-color:var(--primary-hover)}.file-dropzone.active{border-color:var(--primary-hover);background:var(--card-bg)}.file-dropzone p{margin:0;font-size:.9rem}.files-list{display:flex;flex-direction:column;gap:8px}.file-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--input-bg);border-radius:6px;font-size:.85rem;color:var(--text-secondary)}.btn-remove{background:var(--error-color);color:#fff;border:none;border-radius:50%;width:24px;height:24px;cursor:pointer;font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .2s}.btn-remove:hover{background:#c82333}.myqrs-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.myqrs-header h2{margin:0;color:var(--text-primary)}.qrs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.qr-card{background:var(--card-bg);border-radius:8px;padding:16px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px}.qr-preview-small{display:flex;justify-content:center;padding:10px;background:var(--input-bg);border-radius:6px}.qr-info h3{margin:0 0 8px;font-size:1.1rem;color:var(--text-primary)}.qr-description{font-size:.9rem;color:var(--text-secondary);margin:0 0 8px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.qr-meta{display:flex;gap:12px;font-size:.85rem;color:var(--text-muted);margin:0 0 8px}.qr-code{font-size:.75rem;color:var(--text-muted);word-break:break-all;margin:0}.qr-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.qr-actions .btn{padding:8px 12px;font-size:.9rem;width:100%}.qr-actions .btn-danger{grid-column:1 / -1}.edit-form{display:flex;flex-direction:column;gap:12px}.edit-form label{margin-bottom:4px;font-size:.9rem}.edit-form input,.edit-form textarea,.edit-form select{padding:8px;font-size:.9rem;margin-bottom:0}.form-grid-small{display:grid;grid-template-columns:1fr 1fr;gap:12px}.edit-actions{display:flex;gap:8px;margin-top:8px}.edit-actions .btn{flex:1;padding:8px 12px;font-size:.9rem}@media (max-width: 768px){.qrs-grid{grid-template-columns:1fr}.myqrs-header{flex-direction:column;align-items:flex-start;gap:12px}.myqrs-header .btn{width:100%}}.existing-files{margin-bottom:16px}.file-item-existing{display:flex;justify-content:space-between;align-items:center;padding:8px;margin-bottom:8px;background:var(--input-bg);border-radius:6px;border:1px solid var(--border-color)}.file-item-existing span{flex:1;color:var(--text-primary);font-size:.9rem}.no-files{color:var(--text-secondary);font-style:italic;text-align:center;padding:10px}.theme-toggle{position:fixed;bottom:20px;left:20px;width:50px;height:50px;border-radius:50%;border:none;background:var(--card-bg);color:var(--text-primary);font-size:24px;cursor:pointer;box-shadow:0 2px 8px #0003;display:flex;align-items:center;justify-content:center;z-index:999;transition:all .3s ease}.theme-toggle:hover{transform:scale(1.1);box-shadow:0 4px 12px #0000004d}.theme-icon{display:block;line-height:1}@media (max-width: 768px){.theme-toggle{bottom:10px;left:10px;width:44px;height:44px;font-size:20px}}.btn-install{margin-right:10px;font-size:14px;padding:8px 16px}@media (max-width: 768px){.btn-install{font-size:12px;padding:6px 12px}}.login-button{display:flex;align-items:center;gap:10px}.login-button.authenticated{display:flex;align-items:center;gap:12px}.login-button .user-info{color:var(--text-primary);font-weight:500;font-size:.9rem}.login-button.loading{color:var(--text-secondary);font-size:.9rem}.btn-small{padding:6px 12px;font-size:.85rem}@media (max-width: 768px){.login-button.authenticated{flex-direction:column;align-items:flex-end;gap:6px}.login-button .user-info{font-size:.8rem}}.main-nav{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background:var(--card-bg);box-shadow:var(--shadow);margin-bottom:20px}.nav-left{display:flex;gap:20px}.nav-right{display:flex;align-items:center}.nav-link{color:var(--text-primary);text-decoration:none;font-weight:600;padding:8px 16px;border-radius:6px;transition:all .2s ease}.nav-link:hover{background:var(--input-bg);color:var(--primary-color)}a{color:var(--primary-color);text-decoration:none;transition:color .2s ease}a:hover{color:var(--primary-hover);text-decoration:underline}h1,h2,h3,h4,h5,h6{color:var(--text-primary);margin-bottom:.5em}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}@media (max-width: 768px){h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}}:root{--bg-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--bg-secondary: #ffffff;--card-bg: #ffffff;--text-primary: #333333;--text-secondary: #666666;--text-muted: #999999;--border-color: #e0e0e0;--input-bg: #ffffff;--input-border: #e0e0e0;--primary-color: #667eea;--primary-hover: #5568d3;--shadow: 0 4px 6px rgba(0, 0, 0, .1);--shadow-hover: 0 8px 16px rgba(0, 0, 0, .15)}[data-theme=dark]{--bg-primary: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);--bg-secondary: #0f0f1e;--card-bg: #1e1e2e;--text-primary: #ffffff;--text-secondary: #b0b0b0;--text-muted: #808080;--border-color: #333344;--input-bg: #2a2a3e;--input-border: #404050;--primary-color: #7c8ef5;--primary-hover: #6b7de3;--shadow: 0 4px 6px rgba(0, 0, 0, .3);--shadow-hover: 0 8px 16px rgba(0, 0, 0, .5)}*{margin:0;padding:0;box-sizing:border-box}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;background:var(--bg-primary);min-height:100vh;color:var(--text-primary);transition:background .3s ease,color .3s ease}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.container{max-width:1200px;margin:0 auto;padding:12px}@media (max-width: 768px){.container{padding:10px}}.card{background:var(--card-bg);border-radius:8px;padding:16px;box-shadow:var(--shadow);margin-bottom:16px;transition:background .3s ease,box-shadow .3s ease}@media (max-width: 768px){.card{padding:14px;border-radius:8px}}.btn{padding:12px 24px;border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;transition:all .3s;color:#fff}.btn-primary{background:var(--primary-color)}.btn-primary:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-hover)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#5a6268;transform:translateY(-2px)}.btn-danger{background:#dc3545;color:#fff}.btn-danger:hover{background:#c82333}input,textarea,select{width:100%;padding:8px;border:2px solid var(--input-border);border-radius:6px;font-size:14px;margin-bottom:12px;background:var(--input-bg);color:var(--text-primary);transition:all .3s ease}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #667eea1a}input[type=checkbox]{width:auto;margin-right:8px;margin-bottom:0;cursor:pointer}input[type=color]{height:50px;cursor:pointer;padding:4px}label{display:block;margin-bottom:6px;font-weight:600;color:var(--text-primary);font-size:.9rem}label.checkbox-label{display:flex;align-items:center;margin-bottom:16px;cursor:pointer;padding:12px;border-radius:8px;transition:background .2s ease}label.checkbox-label:hover{background:var(--input-bg)}label.checkbox-label input[type=checkbox]{width:20px;height:20px;margin-right:12px;cursor:pointer}@media (max-width: 768px){.btn{padding:10px 20px;font-size:14px}input,textarea,select{padding:10px;font-size:14px}}
