:root{--bg-color: #ffffff;--text-color: #000000;--accent-color: #000000;--border-color: #e0e0e0;--font-family: "Inter", system-ui, -apple-system, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-color);-webkit-font-smoothing:antialiased;display:flex;justify-content:center;min-height:100vh}#root,.app{width:100%;display:flex;justify-content:center}.loading{display:flex;justify-content:center;align-items:center;height:100vh;font-size:.875rem;letter-spacing:.1em;text-transform:uppercase}.login-container{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;width:100%}.login-container footer{position:absolute;bottom:1rem;text-align:center;font-size:.85rem;opacity:.6}.login-box{width:100%;max-width:400px;padding:2rem;display:flex;flex-direction:column;gap:2rem;text-align:center}h1{font-size:1.5rem;font-weight:600;letter-spacing:-.05em;text-transform:uppercase;margin-bottom:1rem}.social-buttons{display:flex;flex-direction:column;gap:1rem}.social-button{padding:1rem;background:#fff;color:var(--text-color);border:1px solid var(--text-color);font-family:inherit;font-size:.875rem;font-weight:500;letter-spacing:.05em;cursor:pointer;transition:all .2s;text-transform:uppercase;width:100%}.social-button:hover{background:#f5f5f5}.social-button.apple{background:var(--text-color);color:var(--bg-color);border:1px solid var(--text-color)}.social-button.apple:hover{background:#333;border-color:#333}.error-message{color:red;font-size:.875rem;margin-top:1rem}.dashboard-layout{width:100%;display:flex;flex-direction:column}.dashboard-header{width:100%;padding:1.5rem 0;border-bottom:1px solid var(--border-color);background:var(--bg-color);position:sticky;top:0;z-index:100;display:flex;justify-content:center}.header-content{width:90%;max-width:none;display:flex;justify-content:space-between;align-items:center}.dashboard-header h1{margin-bottom:0}.dashboard-content{width:90%;max-width:none;margin:0 auto;padding:3rem 0}.sign-out-button{background:transparent;border:none;font-family:inherit;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;opacity:.6;transition:opacity .2s}.sign-out-button:hover{opacity:1}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.5rem}.project-card{border:1px solid var(--border-color);padding:2rem 2rem 3.5rem;transition:all .3s cubic-bezier(.16,1,.3,1);cursor:pointer;height:350px!important;min-height:350px!important;max-height:350px!important;display:flex;flex-direction:column;position:relative;background:var(--bg-color);overflow:visible!important}.card-content{flex:1;overflow:hidden;position:relative;mask-image:linear-gradient(to bottom,black 90%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,black 90%,transparent 100%)}.card-content img,.card-content canvas{max-width:100%;height:auto;object-fit:contain}.project-card:hover{border-color:var(--accent-color);transform:translateY(-2px);box-shadow:0 10px 30px #0000000d}body:has(.modal-backdrop) .project-card{pointer-events:none}body:has(.modal-backdrop) .modal-backdrop{pointer-events:auto}body:has(.modal-backdrop) .modal-backdrop *{pointer-events:auto}.card-menu-container{position:absolute;top:.5rem;right:.5rem;opacity:0;transition:opacity .2s ease;z-index:10}.project-card:hover .card-menu-container{opacity:1}.menu-trigger{background:transparent;border:none;cursor:pointer;padding:.5rem;border-radius:50%;color:#666;transition:color .2s,background-color .2s;display:flex;align-items:center;justify-content:center}.menu-trigger:hover{background-color:#f5f5f5;color:var(--text-color)}.card-menu-dropdown{position:absolute;top:100%;right:0;background:var(--bg-color);border:1px solid var(--border-color);border-radius:4px;box-shadow:0 4px 12px #0000001a;padding:.5rem;min-width:140px;display:flex;flex-direction:column;gap:.25rem;opacity:0;transform:translateY(5px) scale(.95);pointer-events:none;transition:all .2s cubic-bezier(.16,1,.3,1);transform-origin:top right}.card-menu-container:hover .card-menu-dropdown,.menu-trigger:focus+.card-menu-dropdown,.card-menu-dropdown:hover{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.menu-item{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;border:none;background:transparent;color:var(--text-color);font-family:inherit;font-size:.8125rem;cursor:pointer;text-align:left;border-radius:2px;transition:background-color .15s}.menu-item:hover{background-color:#f5f5f5}.menu-item svg{opacity:.6}.menu-item.delete{color:#c00}.menu-item.delete:hover{background-color:#fff0f0}.menu-divider{height:1px;background-color:var(--border-color);margin:.25rem 0}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.card-title{font-size:1.125rem;font-weight:600;margin:0;letter-spacing:-.02em}.card-version{position:absolute;bottom:1rem;right:1rem;font-size:.75rem;font-family:monospace;opacity:.6}.card-shared-icon{position:absolute;top:.5rem;left:.5rem;color:var(--text-color);opacity:.6;z-index:10}.card-shared-icon.shared-inbound{color:#4caf50;opacity:1}.header-actions{display:flex;align-items:center;gap:1rem}.create-project-button{background:transparent;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;color:var(--text-color);transition:all .3s cubic-bezier(.16,1,.3,1)}.create-project-button:hover{background:#f5f5f5;transform:rotate(90deg) scale(1.1)}.create-project-button svg{width:1.5rem;height:1.5rem}.add-item-highlight{background:#444;color:#fff;border-radius:50%;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;transition:all .5s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 12px #0000001a;border:2px solid #e0e0e0}.add-item-highlight:hover{background:#2a2a2a;color:#fff;transform:rotate(180deg) scale(1.1)!important;box-shadow:0 6px 16px #0003;border-color:#999}.add-item-highlight svg{width:1.5rem;height:1.5rem}@keyframes spinAttention{0%{transform:rotate(0)}10%{transform:rotate(180deg)}20%{transform:rotate(360deg)}to{transform:rotate(360deg)}}.animate-attention{animation:spinAttention 5s infinite ease-in-out}.add-item-highlight.animate-attention:hover{animation-play-state:paused}.header-menu-container{position:relative;z-index:200}.header-menu-container .card-menu-dropdown{opacity:0;pointer-events:none;transform:translateY(5px) scale(.95);top:100%;margin-top:.5rem;right:-.5rem;width:160px}.header-menu-container:hover .card-menu-dropdown,.header-menu-container .menu-trigger:focus+.card-menu-dropdown,.header-menu-container .card-menu-dropdown:hover{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}.header-menu-container .card-menu-dropdown:before{content:"";position:absolute;top:-.5rem;left:0;width:100%;height:.5rem}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:#fffc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .2s ease-out}.modal-content{background:var(--bg-color);border:1px solid var(--border-color);padding:3rem;width:90%;max-width:none;box-shadow:0 30px 60px #0000001f;animation:slideUp .3s cubic-bezier(.16,1,.3,1)}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.modal-content h2{font-size:1.5rem;font-weight:700;margin:0;text-transform:uppercase;letter-spacing:-.02em}.input-group{margin-bottom:2rem}.input-group label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#666;margin-bottom:.75rem;font-weight:500}.input-group input,.input-group textarea{width:100%;padding:.75rem 0;border:none;border-bottom:1px solid var(--border-color);font-family:inherit;font-size:1rem;background:transparent;outline:none;transition:border-color .2s;border-radius:0}.input-group input:focus,.input-group textarea:focus{border-bottom-color:var(--accent-color)}.input-group input#title{font-size:1.5rem;font-weight:500;padding-bottom:1rem}.modal-content textarea{resize:none;min-height:100px}.modal-actions{display:flex;justify-content:flex-end;gap:1.5rem;margin-top:3rem;align-items:center}.cancel-button{background:transparent;border:none;padding:0;font-family:inherit;font-size:.875rem;cursor:pointer;color:#999;text-transform:uppercase;letter-spacing:.05em;font-weight:500;transition:color .2s}.cancel-button:hover{color:var(--text-color)}.create-button{background:var(--text-color);color:var(--bg-color);border:none;padding:.875rem 2rem;font-family:inherit;font-size:.875rem;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;font-weight:600;border-radius:2px;transition:transform .2s,opacity .2s}.create-button:hover{opacity:.9;transform:translateY(-1px)}.metadata-modal{max-width:600px}.metadata-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.metadata-item{display:flex;flex-direction:column;gap:.5rem}.metadata-item.full-width{grid-column:1 / -1}.metadata-item label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#999;font-weight:500}.metadata-item p{font-size:.95rem;color:var(--text-color);margin:0;line-height:1.4}.status-badge{display:inline-block;padding:.375rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;width:fit-content}.status-open{background:#22c55e26;color:#22c55e}.status-paused{background:#eab30826;color:#eab308}.status-closed{background:#ef444426;color:#ef4444}.team-modal{max-width:500px}.team-info{display:flex;flex-direction:column;gap:2rem}.team-header{display:flex;justify-content:space-between;align-items:center}.team-header h3{font-size:1.25rem;font-weight:600;margin:0}.member-count{font-size:.875rem;color:#666}.join-code-section{background:#f5f5f5;padding:1.5rem;border-radius:4px}.join-code-section label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#666;margin-bottom:.75rem;font-weight:500}.join-code-display{display:flex;align-items:center;gap:1rem}.join-code-display .code{font-family:monospace;font-size:1.5rem;font-weight:600;letter-spacing:.2em}.copy-button{background:var(--text-color);color:var(--bg-color);border:none;padding:.5rem 1rem;font-family:inherit;font-size:.75rem;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;font-weight:600;border-radius:2px;transition:opacity .2s}.copy-button:hover{opacity:.9}.no-team{text-align:center;padding:2rem 0}.no-team p{margin-bottom:2rem;color:#666}.team-options{display:flex;gap:1rem;justify-content:center}.create-button.secondary{background:transparent;color:var(--text-color);border:1px solid var(--text-color)}.create-button.secondary:hover{background:#f5f5f5}.members-list{display:flex;flex-direction:column;gap:.75rem;max-height:300px;overflow-y:auto}.member-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border:1px solid var(--border-color);border-radius:4px}.member-info{display:flex;flex-direction:column;gap:.25rem}.member-name{font-weight:500}.member-email{font-size:.875rem;color:#666}.admin-badge{display:inline-block;padding:.25rem .5rem;background:#22c55e26;color:#22c55e;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-radius:2px;width:fit-content;margin-top:.25rem}.remove-member-button{background:transparent;border:none;color:#c00;font-size:.75rem;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;font-weight:500;padding:.5rem;transition:opacity .2s}.remove-member-button:hover{opacity:.7}.team-loading{padding:3rem;text-align:center;color:#666}.error-message{color:#c00;font-size:.875rem;margin-top:1rem}.share-modal{max-width:500px}.share-project-name{color:#666;margin-bottom:2rem;font-size:.95rem}.share-section{margin-bottom:2rem}.share-section>label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#666;margin-bottom:.75rem;font-weight:500}.shared-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.share-entry{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#f5f5f5;border-radius:4px}.insert-menu-container{position:relative;display:inline-block;margin-left:.5rem}.insert-menu-dropdown{position:absolute;top:100%;left:0;margin-top:.5rem;background:var(--bg-color);border:1px solid var(--border-color);border-radius:4px;box-shadow:0 4px 12px #0000001a;padding:.5rem;min-width:120px;z-index:100;display:flex;flex-direction:column;gap:.25rem}.insert-menu-item{padding:.5rem .75rem;border:none;background:transparent;text-align:left;font-family:inherit;font-size:.875rem;cursor:pointer;border-radius:2px;color:var(--text-color);transition:background .2s}.insert-menu-item:hover:not(:disabled){background:#f5f5f5}.insert-menu-item:disabled{opacity:.4;cursor:not-allowed}.share-info{display:flex;flex-direction:column;gap:.25rem}.share-name{font-weight:500;font-size:.9rem}.share-detail{font-size:.75rem;color:#666}.share-actions{display:flex;align-items:center;gap:.75rem}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding:10px 36px 10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#1f2937;cursor:pointer;transition:all .2s ease;width:100%}select:hover{border-color:#9ca3af;background-color:#f9fafb}select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}select:disabled{background-color:#f3f4f6;cursor:not-allowed;opacity:.6}.access-select{padding:.375rem .5rem;border:1px solid var(--border-color);border-radius:4px;font-size:.75rem;background:#fff;cursor:pointer}.access-select-full{width:100%;padding:.75rem 1rem;border:none;border-bottom:1px solid var(--border-color);font-family:inherit;font-size:1rem;background:transparent;cursor:pointer}.access-select-full:focus{outline:none;border-color:var(--text-color)}.remove-share-button{background:transparent;border:none;color:#c00;font-size:.7rem;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;font-weight:500;padding:.25rem;transition:opacity .2s}.remove-share-button:hover{opacity:.7}.no-shares{color:#999;font-size:.875rem;margin-bottom:1rem}.add-share-button{background:transparent;border:1px dashed var(--border-color);padding:.75rem 1rem;width:100%;font-family:inherit;font-size:.875rem;cursor:pointer;color:#666;border-radius:4px;transition:all .2s}.add-share-button:hover{border-color:var(--text-color);color:var(--text-color)}.team-share-options{display:flex;gap:.5rem}.share-team-button{flex:1;padding:.75rem 1rem;border:1px solid var(--border-color);background:transparent;font-family:inherit;font-size:.8rem;cursor:pointer;border-radius:4px;transition:all .2s}.share-team-button:hover{background:#f5f5f5;border-color:var(--text-color)}.card-participant-count{position:absolute;bottom:1rem;left:1rem;display:flex;align-items:center;gap:.3rem;color:#666;font-size:.75rem;font-weight:500}.card-participant-count svg{opacity:.7}.card-participant-count span{opacity:.8}.card-participant-count-separator{opacity:.5}.card-participant-count-sync{opacity:.55}.project-view{min-height:100vh;background:var(--bg-color);width:100%;display:flex;flex-direction:column}.project-view-content{width:90%;max-width:none;margin:0 auto;padding:3rem 0}.icon-button{background:transparent;border:none;cursor:pointer;padding:.5rem;color:var(--text-color);opacity:.6;transition:opacity .2s}.icon-button:hover{opacity:1}.delete-account-button{background:transparent;border:none;padding:0;font-family:inherit;font-size:.75rem;cursor:pointer;color:#c00;text-transform:uppercase;letter-spacing:.05em;font-weight:500;opacity:.7;transition:opacity .2s}.delete-account-button:hover{opacity:1}.delete-final-button{background:#c00;color:#fff;border:none;padding:.875rem 2rem;font-family:inherit;font-size:.875rem;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;font-weight:600;border-radius:2px;transition:transform .2s,opacity .2s}.delete-final-button:hover{opacity:.9;transform:translateY(-1px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.card-subtitle{font-size:.875rem;font-weight:500;margin-bottom:1rem;opacity:.8}.fab-container{position:fixed;bottom:2rem;right:7rem;display:flex;gap:1rem;z-index:1000}.fab-button{width:3.5rem;height:3.5rem;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 6px #0000001a,0 1px 3px #00000014,inset 0 1px #fff6;background:#fff;color:#666;position:relative}.fab-button:after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:inset 0 -3px #0000001a}.fab-button:hover{transform:translateY(-4px);box-shadow:0 12px 20px #00000026,0 4px 8px #0000001a}.fab-button:active{transform:translateY(0);box-shadow:0 2px 4px #0000001a}.fab-button svg{width:1.5rem;height:1.5rem;position:relative;z-index:2}.fab-button.trash:hover{color:#c00}.fab-button.shared:hover{color:#4caf50}.fab-button.templates:hover{color:#3f51b5}.fab-button.lego:hover{color:#ff6b35}.fab-button.lego.active{background:#ff6b35;color:#fff}.fab-button.make-block{background:#4caf50;color:#fff}.fab-button.make-block:hover{background:#45a049}.block-checkbox{position:absolute;top:.75rem;left:.75rem;z-index:10}.block-checkbox .checkbox{width:24px;height:24px;border-radius:50%;border:2px solid #ccc;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.block-checkbox .checkbox:hover{border-color:#ff6b35}.block-checkbox .checkbox.checked{background:#ff6b35;border-color:#ff6b35}.project-card.selected-for-block{outline:3px solid #ff6b35;outline-offset:-3px}.project-card[draggable=true]{cursor:grab}.project-card[draggable=true]:active{cursor:grabbing}.project-card.dragging{opacity:.4;transform:scale(.98);box-shadow:0 0 20px #0003}.project-card.dragging-sibling{opacity:.4;transform:scale(.98)}.project-card.drop-target{position:relative}.project-card.drop-target:before{content:"";position:absolute;left:-12px;top:0;bottom:0;width:4px;background:#ff6b35;border-radius:2px;z-index:10}.card-block-label{position:absolute;bottom:.75rem;left:.75rem;background:#ff6b35;color:#fff;font-size:.7rem;font-weight:600;padding:.25rem .5rem;border-radius:4px;z-index:5}.card-title.editable{cursor:text}.card-title.editable:hover{background:#0000000d;border-radius:4px}.card-title-input{font-size:1rem;font-weight:600;border:1px solid #ddd;border-radius:4px;padding:.25rem .5rem;width:100%;box-sizing:border-box;background:#fff}.card-title-input:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 0 2px #ff6b3533}.block-label.editable:hover{box-shadow:0 0 0 2px #0003}.block-name-input{font-family:inherit}.participant-count{display:flex;align-items:center;gap:.35rem;padding:.35rem .75rem;background:#0000000d;border-radius:20px;color:#444;font-size:.9rem;font-weight:600}.participant-count svg{opacity:.9}.participant-count span{min-width:1ch}.close-trash-button{position:absolute;top:6rem;right:2rem;width:2.5rem;height:2.5rem;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;background:#fff;color:#666;box-shadow:0 4px 6px #0000001a,0 1px 3px #00000014,inset 0 1px #fff6;transition:all .2s cubic-bezier(.16,1,.3,1);z-index:90}.close-trash-button:after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:inset 0 -3px #0000001a}.close-trash-button:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000026,0 2px 4px #0000001a;color:#000}.close-trash-button svg{width:1.25rem;height:1.25rem;position:relative;z-index:2}.templates-button{position:absolute;top:6rem;right:2rem;width:2.5rem;height:2.5rem;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;background:#fff;color:#666;box-shadow:0 4px 6px #0000001a,0 1px 3px #00000014,inset 0 1px #fff6;transition:all .2s cubic-bezier(.16,1,.3,1);z-index:90}.templates-button:after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:inset 0 -3px #0000001a}.templates-button:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000026,0 2px 4px #0000001a;color:#000}.templates-button svg{width:1.25rem;height:1.25rem;position:relative;z-index:2}.page-transition-wrapper{transition:transform .6s cubic-bezier(.6,-.28,.735,.045);transform-origin:top right;width:100%;transform-style:preserve-3d;perspective:1000px}.page-exit-peel{transform:rotate3d(1,1,0,-20deg) translate(-100%,20%) scale(.8);pointer-events:none}.page-enter{animation:slideIn .5s cubic-bezier(.16,1,.3,1) forwards}@keyframes slideIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.component-view-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--bg-color);z-index:2000;display:flex;flex-direction:column;animation:slideIn .3s cubic-bezier(.16,1,.3,1)}.component-view-container{display:flex;flex-direction:column;height:100%;width:100%}.component-view-header{padding:1rem 2rem;border-bottom:1px solid var(--border-color);display:flex;align-items:center;gap:1rem}.component-view-header h1{font-size:1.25rem;margin:0}.component-view-body{display:flex;flex:1;overflow:hidden}.split-view-left{flex:1;border-right:1px solid var(--border-color);padding:2rem;display:flex;flex-direction:column}.split-view-right{width:350px;background:#f9f9f9;padding:2rem;overflow-y:auto}.component-text-input{width:100%;flex:1;padding:1rem;font-size:1rem;border:1px solid var(--border-color);border-radius:4px;resize:none;font-family:inherit;line-height:1.5}.component-text-input:focus{outline:none;border-color:var(--accent-color)}.options-panel h3{font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;color:#666;margin-bottom:1rem}.segmented-control{display:flex;position:relative;background:#fff;border:1px solid var(--border-color);border-radius:6px;padding:4px;gap:0;overflow:hidden}.segmented-control:after{content:"";position:absolute;top:15%;bottom:15%;left:33.33%;width:1px;background:var(--border-color);z-index:1}.segmented-control:before{content:"";position:absolute;top:15%;bottom:15%;left:66.66%;width:1px;background:var(--border-color);z-index:1}.segmented-item{flex:1;border:none;background:transparent;padding:.6rem .5rem;text-align:center;font-family:inherit;font-size:.875rem;font-weight:500;cursor:pointer;z-index:2;position:relative;transition:color .2s;color:#666}.segmented-item.active{color:var(--text-color);font-weight:600}.segmented-glider{position:absolute;top:4px;left:4px;bottom:4px;width:calc((100% - 8px) / 3);background:#f5f5f5;border:1px solid rgba(0,0,0,.1);border-radius:4px;z-index:1;transition:transform .3s cubic-bezier(.16,1,.3,1);pointer-events:none}.segmented-control:after,.segmented-control:before{z-index:0}.segmented-control[data-selected=Keyboard] .segmented-glider,.segmented-control[data-selected=Left] .segmented-glider{transform:translate(0)}.segmented-control[data-selected=Button] .segmented-glider,.segmented-control[data-selected=Right] .segmented-glider{transform:translate(100%)}.segmented-control[data-selected=Mouse] .segmented-glider,.segmented-control[data-selected=Both] .segmented-glider{transform:translate(200%)}.segmented-control.two-items[data-selected=variables] .segmented-glider,.segmented-control.two-items[data-selected=Yes] .segmented-glider{transform:translate(0)}.segmented-control.two-items[data-selected=fixed] .segmented-glider,.segmented-control.two-items[data-selected=No] .segmented-glider{transform:translate(100%)}.card-text{font-size:.875rem;color:#666;margin-top:.5rem;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;line-height:1.5}.saving-indicator{font-size:.75rem;color:#666;text-transform:uppercase;letter-spacing:.05em;margin-left:auto}.editor-toolbar-container{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;border-bottom:1px solid var(--border-color);padding-bottom:1rem;gap:1rem;flex-wrap:wrap}.editor-mode-toggle{display:flex;background:#f5f5f5;border-radius:4px;padding:2px}.mode-btn{border:none;background:transparent;padding:.5rem 1rem;font-size:.75rem;font-weight:500;color:#666;cursor:pointer;border-radius:2px;text-transform:uppercase;letter-spacing:.05em;transition:all .2s}.mode-btn.active{background:#fff;color:var(--text-color);font-weight:600;box-shadow:0 1px 2px #0000001a}.rich-text-toolbar{display:flex;align-items:center;gap:.5rem}.rich-text-toolbar button{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border:1px solid transparent;background:transparent;border-radius:4px;cursor:pointer;color:#333;transition:background-color .2s;font-family:inherit}.rich-text-toolbar button:hover{background:#f5f5f5;border-color:var(--border-color)}.rich-text-toolbar .toolbar-separator{width:1px;height:1.5rem;background:var(--border-color);margin:0 .5rem}.rich-editor-wrapper{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.rich-editor-wrapper .rich-editor{flex:1}.rich-editor{overflow-y:auto;outline:none}.rich-editor:empty:before{content:"Enter text here...";color:#aaa}.toolbar-select{border:1px solid transparent;background:transparent;font-family:inherit;font-size:.75rem;color:#333;padding:.25rem .5rem;border-radius:4px;cursor:pointer;outline:none;height:2rem}.toolbar-select:hover{background:#f5f5f5;border-color:var(--border-color)}.color-picker-wrapper{position:relative;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:4px;border:1px solid transparent;transition:background-color .2s}.color-picker-wrapper:hover{background:#f5f5f5;border-color:var(--border-color)}.toolbar-color-input{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:2}.color-icon{font-weight:700;font-size:.875rem;border-bottom:3px solid currentColor;line-height:1;display:inline-block;height:14px;color:#333}.card-text>*{margin:0;padding:0}.card-text ul,.card-text ol{padding-left:1.2rem}.segmented-control.two-items .segmented-glider{width:calc((100% - 8px)/2)}.segmented-control.two-items[data-selected=Yes] .segmented-glider{transform:translate(0)}.flow-connector{position:absolute;right:-1.5rem;top:50%;width:1.5rem;height:4px;background:linear-gradient(90deg,#e0e0e0,#bdbdbd,#e0e0e0);background-size:200% 100%;transform:translateY(-50%);animation:flowAnimation 2s infinite linear;z-index:10;pointer-events:none}@keyframes flowAnimation{0%{background-position:100% 0}to{background-position:-100% 0}}.project-card{border:1px solid var(--border-color);padding:2rem 2rem 3.5rem;transition:all .3s cubic-bezier(.16,1,.3,1);cursor:pointer;height:100%;min-height:280px;display:flex;flex-direction:column;position:relative;background:var(--bg-color);overflow:visible}button.icon-button.add-item-highlight{transition:all .5s cubic-bezier(.16,1,.3,1)!important;background:#c9c8c8;border:2px solid #e0e0e0;opacity:1!important}button.icon-button.add-item-highlight:hover{background:#2a2a2a;transform:rotate(180deg) scale(1.1)!important;border-color:#999;opacity:1!important}.shimmer-layer{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;border-radius:inherit}.shimmer-layer:before{content:"";position:absolute;inset:0;background:linear-gradient(45deg,var(--block-color) 0%,rgba(255,255,255,0) 70%);opacity:.15;pointer-events:none;z-index:0}.shimmer-layer:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 20%,rgba(255,255,255,.4) 50%,transparent 80%);background-size:200% 100%;animation:shineMove 4s infinite linear;pointer-events:none;z-index:1}@keyframes shineMove{0%{background-position:200% 0}to{background-position:-200% 0}}.card-subtitle-input{font-size:.9rem;font-weight:500;border:1px solid #ddd;border-radius:4px;padding:.25rem .5rem;width:100%;box-sizing:border-box;background:#fff;margin-bottom:.5rem;color:#666;font-family:inherit}.card-subtitle-input:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 0 2px #ff6b3533}.card-description-input{font-size:.9rem;line-height:1.5;border:1px solid #ddd;border-radius:4px;padding:.25rem .5rem;width:100%;box-sizing:border-box;background:#fff;min-height:60px;resize:vertical;font-family:inherit;color:#666}.card-description-input:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 0 2px #ff6b3533}.project-card .editable{cursor:text;border:1px solid transparent;padding:.1rem;border-radius:4px;transition:all .2s}.project-card .editable:hover{background:#00000008;border-color:#0000001a}.placeholder-text{color:#999;font-style:italic}.toggle-switch-group{display:flex;align-items:center;justify-content:space-between;width:100%}.toggle-switch-group label{margin:0;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--text-color);text-transform:uppercase;letter-spacing:.05em}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;transition:.4s;border-radius:24px}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s;border-radius:50%;box-shadow:0 2px 4px #0003}input:checked+.slider{background-color:var(--text-color)}input:focus+.slider{box-shadow:0 0 1px var(--text-color)}input:checked+.slider:before{transform:translate(20px)}.project-card.stacked{box-shadow:0 2px 8px #00000014;transition:all .3s cubic-bezier(.16,1,.3,1);z-index:5;background-color:var(--bg-color)}.project-card.stacked:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:inherit;z-index:-1;transform:translate(4px,4px) rotate(1deg);transition:transform .3s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 8px #0000000d}.project-card.stacked:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:inherit;z-index:-2;transform:translate(8px,8px) rotate(2deg);transition:transform .3s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 8px #0000000d}.project-card.stacked:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001f}.project-card.stacked:hover:before{transform:translate(6px,6px) rotate(2deg)}.project-card.stacked:hover:after{transform:translate(12px,12px) rotate(4deg)}.card-text ul,.card-text ol,.rich-editor ul,.rich-editor ol{padding-left:2rem;margin-left:0;margin-bottom:1rem}.card-text li,.rich-editor li{margin-bottom:.25rem}.toolbar-select{width:auto;max-width:120px}.member-email{font-size:.875rem;color:#666;margin-bottom:.5rem}.gemini-widget-fab{position:fixed;bottom:2rem;right:2rem;background:var(--text-color);color:var(--bg-color);width:3.5rem;height:3.5rem;border-radius:50%;border:none;cursor:pointer;box-shadow:0 4px 12px #00000026;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.16,1,.3,1);z-index:9999}.gemini-widget-fab:hover{transform:scale(1.1)}.gemini-widget-container{position:fixed;bottom:6rem;right:2rem;width:350px;max-width:calc(100vw - 4rem);height:500px;max-height:calc(100vh - 8rem);background:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.5);border-radius:12px;box-shadow:0 8px 32px #0000001f;display:flex;flex-direction:column;z-index:9999;overflow:hidden;animation:slideUpGemini .3s cubic-bezier(.16,1,.3,1)}.gemini-header{padding:1rem;border-bottom:1px solid rgba(0,0,0,.1);display:flex;justify-content:space-between;align-items:center;background:#ffffff80}.gemini-header h3{margin:0;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600;display:flex;align-items:center;gap:.5rem}.gemini-messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:1rem}.gemini-message{max-width:85%;padding:.75rem;border-radius:8px;font-size:.875rem;line-height:1.5;word-wrap:break-word}.gemini-message.user{align-self:flex-end;background:var(--text-color);color:var(--bg-color)}.gemini-message.model{align-self:flex-start;background:#fffc;border:1px solid rgba(0,0,0,.05);color:var(--text-color)}.gemini-input-area{padding:1rem;border-top:1px solid rgba(0,0,0,.1);background:#ffffff80;display:flex;gap:.5rem}.gemini-input-area input{flex:1;padding:.5rem;border:1px solid rgba(0,0,0,.1);border-radius:4px;font-family:inherit;font-size:.875rem;background:#fffc;outline:none;transition:all .2s}.gemini-input-area input:focus{border-color:var(--accent-color);background:#fff}.gemini-input-area button{background:transparent;border:none;cursor:pointer;color:var(--text-color);padding:.5rem;border-radius:4px;transition:background .2s}.gemini-input-area button:hover{background:#0000000d}.gemini-input-area button:disabled{opacity:.5;cursor:not-allowed}@keyframes slideUpGemini{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes spinner-border{to{transform:rotate(360deg)}}.spinner-border{animation:spinner-border .75s linear infinite}.owner-mini-card{position:absolute;top:1.5rem;left:0;width:180px;background:#fff;border-radius:12px;box-shadow:0 5px 20px #00000026;padding:1rem;z-index:1000;display:flex;flex-direction:column;align-items:center;border:1px solid rgba(0,0,0,.05);animation:fadeIn .2s ease-out;pointer-events:none}.owner-mini-card:after{content:"";position:absolute;bottom:100%;left:10px;border-width:6px;border-style:solid;border-color:transparent transparent white transparent}@keyframes spinner{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.fab-button.shared.has-unopened{position:relative;overflow:visible}.fab-button.shared.has-unopened:before{content:"";position:absolute;top:50%;left:50%;width:calc(100% + 8px);height:calc(100% + 8px);border:3px solid transparent;border-top-color:#4caf50;border-right-color:#4caf50;border-radius:50%;animation:spinner 1.5s linear infinite;pointer-events:none;box-sizing:border-box}@keyframes borderTracing{0%,to{clip-path:inset(0 0 98% 0)}25%{clip-path:inset(0 0 0 98%)}50%{clip-path:inset(98% 0 0 0)}75%{clip-path:inset(0 98% 0 0)}}.project-card.unopened-card:after{content:"";position:absolute;inset:-2px;border:3px solid #4CAF50;border-radius:2px;animation:borderTracing 4s linear infinite;pointer-events:none;z-index:5}.project-card.unopened-card{border-color:#4caf504d}.beta-subtitle{background:transparent;color:silver;padding:2px 8px;font-size:12px;font-weight:700;display:inline-block;animation:flash 2s ease-in-out infinite}@keyframes flash{0%,to{opacity:1}50%{opacity:.3}}.segmented-control.four-items{display:grid;grid-template-columns:repeat(4,1fr)}.segmented-control.four-items .segmented-glider{width:calc((100% - 8px)/4)}.segmented-control.four-items:before,.segmented-control.four-items:after{display:none}.segmented-control.four-items .segmented-item{position:relative;font-size:.8rem}.segmented-control.four-items .segmented-item:not(:first-child):before{content:"";position:absolute;left:0;top:15%;bottom:15%;width:1px;background:var(--border-color);z-index:0}.segmented-control.four-items[data-selected=Keyboard] .segmented-glider{transform:translate(0)}.segmented-control.four-items[data-selected=Button] .segmented-glider{transform:translate(100%)}.segmented-control.four-items[data-selected=Mouse] .segmented-glider{transform:translate(200%)}.segmented-control.four-items[data-selected=Survey] .segmented-glider{transform:translate(300%)}.survey-item-card{border:1px solid var(--border-color);border-radius:6px;padding:1rem;margin-bottom:.75rem;background:#fff;transition:box-shadow .2s}.survey-item-card:hover{box-shadow:0 1px 4px #0000000f}.survey-item-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none}.survey-type-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid var(--border-color);border-radius:6px;box-shadow:0 4px 12px #0000001a;z-index:10;overflow:hidden}.survey-type-option{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;cursor:pointer;border:none;background:transparent;width:100%;text-align:left;font-family:inherit;transition:background .15s}.survey-type-option:hover{background:#f5f5f5}.survey-type-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:#666;flex-shrink:0}
