: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}body{margin:0;display:flex;place-items:center;min-width:320px;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}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--background-color: #1a1a1a;--header-background: rgba(26, 26, 26, .8);--card-background: rgba(36, 36, 36, .7);--border-color: rgba(255, 255, 255, .1);--text-primary: #e0e0e0;--text-secondary: #aaa;--accent-color: #007bff;--accent-hover: #0056b3}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;margin:0;background-color:var(--background-color);background-image:radial-gradient(circle at top left,rgba(121,68,154,.1),transparent 40%),radial-gradient(circle at bottom right,rgba(0,123,255,.1),transparent 40%);color:var(--text-primary);min-height:100vh}body.modal-open{overflow:hidden}#root{display:flex;flex-direction:column;min-height:100vh;width:100%}.app-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.5rem;padding:0 2rem;height:80px;border-bottom:1px solid var(--border-color);background-color:var(--header-background);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:100;box-sizing:border-box}.app-header h1{color:#fff;margin:0;font-weight:600;justify-self:start}.header-actions{display:flex;gap:1rem;align-items:center;justify-self:end}.user-info{display:flex;align-items:center;gap:1rem;white-space:nowrap}.user-email{color:var(--text-secondary);font-weight:500}.filter-controls{display:flex;justify-content:center;gap:2rem;margin-bottom:2rem}.filter-group{display:flex;align-items:center;gap:.5rem}.filter-group label{font-weight:500;color:var(--text-secondary);cursor:pointer}.filter-group input[type=checkbox]{width:1.2em;height:1.2em;cursor:pointer}.search-bar-container{width:100%;max-width:600px;margin:0 auto 2rem}.search-bar{width:100%;padding:.8rem 1.2rem;font-size:1.1rem;border-radius:50px;background-color:#2c2c2cb3;border:1px solid #444;color:var(--text-primary);transition:border-color .3s ease,background-color .3s ease;text-align:left}.search-bar::placeholder{color:#888}.search-bar:focus{outline:none;border-color:var(--accent-color);background-color:#323232e6}.main-content{padding:2rem;width:100%;max-width:1600px;margin:0 auto;box-sizing:border-box;flex-grow:1}.prompt-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem}.card{background-color:var(--card-background);border-radius:12px;border:1px solid #333;box-shadow:0 4px 6px #0003;overflow:hidden;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%;flex-basis:300px;flex-grow:1;max-width:380px;animation:fadeIn .5s ease-out forwards}.card:hover{transform:translateY(-5px);box-shadow:0 8px 15px #0000004d}.card-header,.card-body,.card-footer{padding:1.25rem}.card-header{border-bottom:1px solid #333}.card-title-group{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.5rem}.card-header h3{margin:0;color:#fff}.public-badge{background-color:#28a745;color:#fff;padding:.2rem .5rem;border-radius:12px;font-size:.7rem;font-weight:700;text-transform:uppercase;flex-shrink:0}.tags{display:flex;flex-wrap:wrap;gap:.5rem}.tag{background-color:#007bff33;color:#0af;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500}.card-body{flex-grow:1}.owner-info-card{font-size:.8rem;color:var(--text-secondary);margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px dashed #444}.owner-label{font-weight:700;margin-right:.5rem}.notes-label{font-size:.8rem;color:var(--text-secondary);font-weight:700;margin:0 0 .25rem;text-transform:uppercase;letter-spacing:.5px}.card-footer{display:flex;gap:.5rem;border-top:1px solid #333;background-color:#2a2a2ab3;align-items:center}.button{padding:.6rem 1rem;border:1px solid transparent;border-radius:8px;font-weight:700;cursor:pointer;transition:all .2s ease;white-space:nowrap}.button.primary{background-color:var(--accent-color);color:#fff}.button.primary:hover{background-color:var(--accent-hover);box-shadow:0 0 10px #007bff80}.button-link{background:none;border:none;color:var(--text-secondary);font-weight:700;cursor:pointer;padding:.6rem;text-align:center;font-size:.9rem}.button-link:hover{color:#0af}.modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);overflow-y:auto;padding:2rem 0}.modal-content{background-color:#2c2c2c;padding:2rem;border-radius:12px;width:90%;max-width:600px;box-shadow:0 5px 15px #00000080;border:1px solid #444;margin:auto}.modal-content h2{margin-top:0;color:#fff}.form-group{margin-bottom:1rem;text-align:left}.form-group-inline{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.form-group-inline label{font-weight:700;color:#ccc}.form-group label{display:block;margin-bottom:.5rem;font-weight:700;color:#ccc}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem;border:1px solid #555;border-radius:6px;font-size:1rem;box-sizing:border-box;background-color:#3a3a3a;color:var(--text-primary)}.modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:1rem;margin-top:2rem}.button.danger{background-color:#c82333;color:#fff;margin-right:auto}.button.danger:hover{background-color:#a01c28}.button:disabled{background-color:#555;color:#999;cursor:not-allowed}.button:disabled:hover{background-color:#555;box-shadow:none}.toggle-switch{position:relative;display:inline-block;width:50px;height:28px;background-color:#555;border-radius:28px;transition:background-color .3s;cursor:pointer;-webkit-appearance:none;appearance:none;outline:none}.toggle-switch:before{content:"";position:absolute;width:20px;height:20px;border-radius:50%;background-color:#fff;top:4px;left:4px;transition:transform .3s}.toggle-switch:checked{background-color:var(--accent-color)}.toggle-switch:checked:before{transform:translate(22px)}.ollama-options-box{background-color:#0003;border:1px solid #444;border-radius:8px;padding:1.5rem;margin-top:1.5rem;margin-bottom:1.5rem}.ollama-options-box h4{margin-top:0;margin-bottom:1rem;color:var(--text-primary)}.info-message{background-color:#007bff1a;border-left:3px solid var(--accent-color);color:var(--text-secondary);padding:.75rem;border-radius:6px;font-size:.9rem;margin-top:.5rem}.input-with-button{display:flex;align-items:center;gap:.5rem}.clear-button{background:none;border:1px solid #555;color:var(--text-secondary);cursor:pointer;border-radius:50%;width:28px;height:28px;font-size:1.2rem;line-height:1;padding:0}.clear-button:hover{background-color:#555;color:#fff}.auth-container{display:flex;align-items:center;justify-content:center;height:100vh;background-color:var(--background-color);background-image:radial-gradient(circle at center,rgba(121,68,154,.15),transparent 50%)}.auth-form{background:#242424b3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:2rem 3rem;border-radius:12px;border:1px solid #333;box-shadow:0 4px 12px #0000004d;width:100%;max-width:400px;text-align:center}.auth-form h2{margin-top:0;margin-bottom:1.5rem;color:#fff}.button.full-width{width:100%;padding:.8rem;font-size:1rem}.auth-toggle{margin-top:1.5rem;font-size:.9rem;color:var(--text-secondary)}.error-message{color:#ff8a8a;background-color:#4d2323;border:1px solid #c82333;border-radius:6px;padding:.75rem;margin-bottom:1rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.app-header{grid-template-columns:1fr;height:auto;padding:1rem;gap:1rem}.app-header h1,.app-header .header-actions{justify-self:center}.user-info{grid-column:1 / -1;grid-row:1;justify-self:end}.user-info .user-email{display:none}.main-content{padding:1rem}.card{flex-basis:100%}}
