body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f4f7f6;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}*,:after,:before{box-sizing:border-box}:root{--color-card-white:#fff}.login-container{align-items:center;background-color:#f4f6f8;background-image:radial-gradient(#e0e0e0 1px,#0000 0);background-size:20px 20px;display:flex;justify-content:center;min-height:100vh;padding:2rem}.login-card{background:#fff;background:var(--color-card-white);border-radius:12px;box-shadow:0 4px 20px #00000014;max-width:450px;padding:2.5rem 3rem;text-align:center;width:100%}.login-logo-img{display:block;height:auto;margin:0 auto 1.5rem;max-width:250px}.login-subtitle{color:#666;font-size:.95rem;margin-bottom:2rem;margin-top:.5rem}.login-actions{display:flex;flex-direction:column}.login-button{border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600;margin-bottom:0;padding:12px;transition:all .2s ease;width:100%}.login-button.primary{background-color:#007bff;box-shadow:0 2px 4px #007bff33;color:#fff}.login-button.primary:hover{background-color:#0056b3;transform:translateY(-1px)}.login-button.secondary{background-color:#28a745;box-shadow:0 2px 4px #28a74533;color:#fff}.login-button.secondary:hover{background-color:#218838;transform:translateY(-1px)}.divider{align-items:center;color:#888;display:flex;font-size:.85rem;margin:1.5rem 0;text-align:center}.divider:after,.divider:before{border-bottom:1px solid #ddd;content:"";flex:1 1}.divider span{padding:0 10px}.social-login-section{margin-top:1.5rem}.social-label{color:#888;font-size:.85rem;margin-bottom:10px}.social-buttons-column{align-items:center;display:flex;flex-direction:column;gap:12px;width:100%}.gsi-material-button{-webkit-appearance:none;background-color:#131314;background-image:none;border:1px solid #8e918f;border-radius:20px;box-sizing:border-box;color:#e3e3e3;cursor:pointer;font-family:Roboto,arial,sans-serif;font-size:14px;height:40px;letter-spacing:.25px;max-width:100%;outline:none;overflow:hidden;padding:0 12px;position:relative;text-align:center;transition:background-color .218s,border-color .218s,box-shadow .218s;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;vertical-align:middle;white-space:nowrap;width:100%}.gsi-material-button .gsi-material-button-icon{height:20px;margin-right:12px;min-width:20px;width:20px}.gsi-material-button .gsi-material-button-content-wrapper{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;height:100%;justify-content:center;position:relative;width:100%}.gsi-material-button .gsi-material-button-contents{flex-grow:0;font-family:Roboto,arial,sans-serif;font-weight:500;overflow:hidden;text-overflow:ellipsis;vertical-align:top}.gsi-material-button .gsi-material-button-state{bottom:0;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .218s}.gsi-material-button:disabled{background-color:#13131461;border-color:#8e918f1f;cursor:default}.gsi-material-button:disabled .gsi-material-button-state{background-color:#e3e3e31f}.gsi-material-button:disabled .gsi-material-button-contents,.gsi-material-button:disabled .gsi-material-button-icon{opacity:38%}.gsi-material-button:not(:disabled):active .gsi-material-button-state,.gsi-material-button:not(:disabled):focus .gsi-material-button-state{background-color:#fff;opacity:12%}.gsi-material-button:not(:disabled):hover{box-shadow:0 1px 2px 0 #3c40434d,0 1px 3px 1px #3c404326}.gsi-material-button:not(:disabled):hover .gsi-material-button-state{background-color:#fff;opacity:8%}.microsoft-official-btn{align-items:center;-webkit-appearance:none;appearance:none;background-color:#2f2f2f;border:1px solid #8e918f;border-radius:20px;box-sizing:border-box;color:#e3e3e3;cursor:pointer;display:flex;font-family:Segoe UI,Helvetica Neue,sans-serif;font-size:14px;height:40px;justify-content:center;padding:0 12px;position:relative;transition:background-color .2s,box-shadow .2s;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;width:100%}.microsoft-official-btn:hover{background-color:#3f3f3f;box-shadow:0 1px 2px 0 #3c40434d}.microsoft-icon-wrapper{align-items:center;display:flex;height:20px;justify-content:center;margin-right:12px;width:20px}.microsoft-icon-wrapper img{height:100%;object-fit:contain;width:100%}.microsoft-btn-text{font-weight:500;letter-spacing:.25px}.login-footer{color:#aaa;font-size:.75rem;margin-top:30px}.app-header{background-color:#1e3a5f;background-color:var(--color-text-dark);box-shadow:0 2px 4px #0000001a;color:#fff;padding:0 2rem}.header-content{align-items:center;display:flex;height:64px;justify-content:space-between;margin:0 auto;max-width:1200px}.header-logo{font-size:1.5rem;font-weight:700;margin:0}.header-user-icon{align-items:center;background-color:#2a5298;background-color:var(--color-primary-blue);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;height:40px;justify-content:center;transition:background-color .2s;width:40px}.header-user-icon:hover{background-color:#3b6ac5}.modal-overlay{background-color:#00000080}.modal-content{border-radius:12px;box-shadow:0 4px 20px #00000026;max-width:400px;padding:30px;width:100%}.modal-content h3{color:#333;margin-top:0}.modal-content p{color:#666;font-size:.9rem;margin-bottom:20px}.modal-input{border:1px solid #ddd;border-radius:6px;box-sizing:border-box;font-size:1rem;margin-bottom:20px;padding:12px;width:100%}.modal-input:focus{border-color:#007bff;outline:none}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.btn-text{background:none;border:none;color:#666;cursor:pointer;font-weight:500;padding:8px 16px}.btn-text:hover{background-color:#f5f5f5;border-radius:4px}.dashboard-container{margin:2rem auto;max-width:1000px;padding:2rem}.dashboard-card{background:#fff;border-radius:8px;box-shadow:0 4px 12px #0000000d;padding:2rem 2.5rem}.dashboard-card h2{color:var(--color-text-dark);font-size:1.75rem;margin-top:0}.dashboard-card h3{border-bottom:1px solid #eef0f2;color:var(--color-text-dark);font-size:1.25rem;margin-top:2rem;padding-bottom:.5rem}.btn-primary{background:var(--color-primary-blue);border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;margin-top:1rem;padding:.8rem 1.5rem;text-decoration:none;transition:background-color .2s}.btn-primary:hover{background:#23457f}.workspace-list{display:flex;flex-direction:column;gap:1rem;list-style-type:none;padding-left:0}.workspace-card-link{text-decoration:none}.workspace-card{align-items:center;background:#fff;border:1px solid #eef0f2;border-radius:8px;display:flex;justify-content:space-between;padding:1.5rem 2rem;transition:box-shadow .2s,border-color .2s}.workspace-card:hover{border-color:var(--color-primary-blue);box-shadow:0 4px 10px #2a52981a}.workspace-card-info h4{color:var(--color-text-dark);font-size:1.2rem;margin:0 0 .25rem}.workspace-card-info p{color:#6a7381;font-size:.9rem;margin:0}.workspace-card-arrow{color:var(--color-primary-blue);font-size:1.5rem}.app-subheader{background-color:#1e3a5f;background-color:var(--color-text-dark);border-bottom:1px solid #102a4c;color:#fff;padding:0 2rem;position:-webkit-sticky;position:sticky;top:0;z-index:10}.subheader-content{align-items:center;display:flex;height:60px;justify-content:space-between;margin:0 auto;max-width:1200px}.subheader-back-link{color:#fff;flex:1 1;font-size:.9rem;font-weight:500;opacity:.8;text-decoration:none;transition:opacity .2s}.subheader-back-link:hover{opacity:1}.subheader-title{flex:2 1;font-size:1.25rem;font-weight:600;margin:0;text-align:center}.subheader-action{display:flex;flex:1 1;justify-content:flex-end}.input-bar-container{background:#fff;border-radius:40px;bottom:2rem;box-shadow:0 6px 20px #00000026;display:flex;gap:1rem;left:50%;padding:.75rem 1rem;position:fixed;transform:translateX(-50%);z-index:20}.add-tool-btn{background:none;border:none;color:var(--color-text-dark);cursor:pointer;flex-direction:column;font-size:.875rem;font-weight:500;gap:.5rem;min-width:60px}.add-tool-btn,.add-tool-icon{align-items:center;display:flex}.add-tool-icon{border:1px solid #d8dde2;border-radius:50%;font-size:1.25rem;height:48px;justify-content:center;transition:all .2s;width:48px}.add-tool-btn:hover .add-tool-icon{border-color:var(--color-primary-blue);box-shadow:0 0 8px #2a52981a;color:var(--color-primary-blue)}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:8px;box-shadow:0 5px 15px #0000004d;max-height:80vh;max-width:600px;overflow-y:auto;padding:2.5rem;position:relative;width:90%}.modal-close-btn{background:none;border:none;color:#aaa;cursor:pointer;font-size:2rem;position:absolute;right:1.25rem;top:1rem;transition:color .2s}.modal-close-btn:hover{color:#333}.text-modal-content h2{color:var(--color-text-dark);margin-top:0}.text-modal-content p{color:#333;font-size:1rem}.text-modal-content textarea{border:1px solid #d8dde2;border-radius:6px;font-family:inherit;font-size:1rem;margin-bottom:1.5rem;padding:.75rem;resize:vertical;width:100%}.text-modal-content textarea:focus{border-color:var(--color-primary-blue);box-shadow:0 0 0 2px #2a529833;outline:none}.text-modal-content .btn-primary-small{background:var(--color-primary-blue);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.6rem 1.2rem;transition:background-color .2s}.text-modal-content .btn-primary-small:hover{background:#23457f}.voice-modal-content{text-align:center}.voice-modal-content h2{color:var(--color-text-dark);margin-bottom:1.5rem;margin-top:0}.mic-error{background:#ffebee;border:1px solid #c62828;border-radius:6px;color:#c62828;font-size:.9rem;padding:.75rem}.voice-recorder{padding:1rem}.voice-timer{color:#333;font-size:2.5rem;font-weight:300;margin-bottom:2rem;transition:color .3s}.voice-timer.recording{color:#e53935;font-weight:400}.btn-record-start,.btn-record-stop{align-items:center;border:none;border-radius:50%;cursor:pointer;display:flex;height:70px;justify-content:center;margin:0 auto;transition:all .2s;width:70px}.btn-record-start{background-color:#e53935;box-shadow:0 4px 15px #e5393566}.btn-record-start:hover{background-color:#c62828}.btn-record-stop{background-color:var(--color-primary-blue);box-shadow:0 4px 15px #2a529866}.btn-record-stop:hover{background-color:#23457f}.voice-playback{align-items:center;display:flex;flex-direction:column;gap:1rem}.voice-playback audio{margin-top:1rem;width:100%}.btn-primary-small,.voice-playback .btn-primary-small{background:var(--color-primary-blue);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.6rem 1.2rem}.btn-primary-small{text-decoration:none;transition:background-color .2s}.btn-primary-small:hover{background:#23457f}.workspace-grid-container{margin:2rem auto;max-width:1000px;padding:0 2rem 120px}.idea-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.idea-card{background:#fff;border:1px solid #eef0f2;border-radius:8px;box-shadow:0 4px 12px #0000000d;color:var(--color-text-dark);font-size:.9rem;font-weight:500;padding:1.25rem;position:relative;text-align:center;transition:box-shadow .2s}.idea-card:hover{box-shadow:0 6px 16px #0000001a}.idea-card-icon{font-size:1.5rem;margin-bottom:.5rem}.idea-card-icon.file{color:#6a7381;font-size:2rem}.delete-card-btn{background:#f4f7f6;border:1px solid #d8dde2;border-radius:50%;color:#6a7381;cursor:pointer;font-size:1rem;font-weight:700;height:24px;line-height:22px;padding:0;position:absolute;right:8px;top:8px;transition:all .2s;width:24px}.delete-card-btn:hover{background:#ffebee;border-color:#c62828;color:#c62828}.idea-card.selected{border-color:var(--color-primary-blue);box-shadow:0 0 0 3px #2a529833}.review-header{position:-webkit-sticky;position:sticky;top:0;z-index:10}.review-back-link{color:#fff;flex:1 1;font-size:.9rem;font-weight:500;opacity:.8;text-decoration:none;transition:opacity .2s}.review-back-link:hover{opacity:1}.review-title{flex:2 1;font-size:1.25rem;font-weight:600;margin:0;text-align:center}.review-action-placeholder{flex:1 1}.review-container{margin:2rem auto;max-width:900px;padding:0 2rem}.review-tabs{border-bottom:2px solid #eef0f2;display:flex;margin-bottom:-1px;position:relative;z-index:1}.review-tab-btn{background:none;border:none;border-bottom:2px solid #0000;color:#6a7381;cursor:pointer;font-size:.9rem;font-weight:600;padding:.8rem 1.2rem;transition:all .2s}.review-tab-btn:hover{color:var(--color-text-dark)}.review-tab-btn.active{border-bottom-color:var(--color-primary-blue);color:var(--color-primary-blue)}.review-content-card{background:#fff;border:1px solid #eef0f2;border-radius:8px;border-top-left-radius:0;box-shadow:0 4px 12px #0000000d;padding:2rem 3rem}.review-tabs:has(.review-tab-btn:first-child:last-child)+.review-content-card{border-top-left-radius:8px}.review-tabs .review-tab-btn:first-child.active+.review-content-card{border-top-left-radius:8px}.review-content-card h1,.review-content-card h2,.review-content-card h3{border-bottom:1px solid #eef0f2;color:var(--color-text-dark);padding-bottom:.5rem}.review-content-card p{line-height:1.6}.review-action-btn:hover{background:#23457f}.disclosure-modal-content h2{color:var(--color-text-dark);margin-top:0}.disclosure-modal-content p{color:#333;font-size:1rem}.disclosure-modal-content textarea{border:1px solid #d8dde2;border-radius:6px;font-family:inherit;font-size:1rem;margin-bottom:1.5rem;min-height:100px;padding:.75rem;width:100%}.disclosure-modal-content textarea:focus{border-color:var(--color-primary-blue);box-shadow:0 0 0 2px #2a529833;outline:none}.ai-response-container{background:#f4f7f6;border:1px solid #eef0f2;border-radius:6px;font-family:Courier New,Courier,monospace;margin-top:1.5rem;padding:1.5rem;white-space:pre-wrap}:root{--color-text-dark:#1e3a5f;--color-primary-blue:#2a5298;--color-border-light:#d8dde2;--color-bg-light-gray:#f4f7f6}.edit-disclosure-page{display:flex;flex-direction:column;height:100vh;overflow:hidden;width:100%}.review-header{align-items:center;background-color:#1e3a5f;background-color:var(--color-text-dark);color:#fff;display:flex;flex-shrink:0;height:60px;justify-content:space-between;padding:0 2rem}.review-header .review-back-link{color:#fff;flex-basis:auto;flex-grow:0;flex-shrink:0;font-size:.9rem;font-weight:500;margin-right:1rem;opacity:.8;text-align:left;text-decoration:none;transition:opacity .2s;white-space:nowrap}.review-header .review-back-link:hover{opacity:1}.version-navigation{align-items:center;display:flex;flex-grow:1;gap:1rem;justify-content:center}.version-navigation button{background:none;border:1px solid #ffffff80;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;padding:.3rem .8rem;transition:background-color .2s,border-color .2s}.version-navigation button:hover:not(:disabled){background-color:#ffffff1a;border-color:#fffc}.version-navigation button:disabled{cursor:not-allowed;opacity:.5}.review-header .review-title{flex-grow:0;flex-shrink:0;font-size:1.25rem;font-weight:600;margin:0;text-align:center;white-space:nowrap}.review-action-placeholder{align-items:center;display:flex;flex-basis:auto;flex-shrink:0;gap:.75rem;justify-content:flex-end;text-align:right}.review-action-btn{background:#2a5298;background:var(--color-primary-blue);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.6rem 1.2rem;text-decoration:none;transition:background-color .2s;white-space:nowrap}.review-action-btn:hover:not(:disabled){background:#23457f}.review-action-btn:disabled{background:#aaa;cursor:not-allowed}.edit-main-content{display:flex;flex-grow:1;overflow:hidden}.editor-pane{border-right:1px solid #d8dde2;border-right:1px solid var(--color-border-light);display:flex;flex:2 1;flex-direction:column;overflow:hidden;padding:1rem}.disclosure-textarea{border:1px solid #d8dde2;border:1px solid var(--color-border-light);border-radius:6px;flex-grow:1;font-family:Courier New,Courier,monospace;font-size:.95rem;line-height:1.5;overflow-y:auto;padding:1rem;resize:none;width:100%}.disclosure-textarea:focus{border-color:#2a5298;border-color:var(--color-primary-blue);box-shadow:0 0 0 2px #2a529833;outline:none}.editor-stats{border-top:1px solid #d8dde2;border-top:1px solid var(--color-border-light);color:#666;font-size:.8rem;margin-top:.5rem;padding:.5rem;text-align:right}.chat-pane{background-color:#f4f7f6;background-color:var(--color-bg-light-gray);display:flex;flex:1 1;flex-direction:column;overflow:hidden}.chat-display{flex-grow:1;overflow-y:auto;padding:1rem}.chat-message{word-wrap:break-word;border-radius:8px;line-height:1.4;margin-bottom:1rem;max-width:90%;padding:.75rem 1rem}.chat-message.user{background-color:#2a5298;background-color:var(--color-primary-blue);border-bottom-right-radius:0;color:#fff;margin-left:auto}.chat-message.assistant{background-color:#fff;border:1px solid #eef0f2;border-bottom-left-radius:0;color:#1e3a5f;color:var(--color-text-dark);margin-right:auto}.chat-message.system{background-color:#fffbe6;border:1px solid #ffe58f;color:#8a6d3b;font-size:.9rem;text-align:center}.chat-message p{margin:0}.chat-input-area{align-items:flex-start;background-color:#fff;border-top:1px solid #d8dde2;border-top:1px solid var(--color-border-light);display:flex;padding:1rem}.chat-input-area textarea{border:1px solid #d8dde2;border:1px solid var(--color-border-light);border-radius:6px;flex-grow:1;font-family:inherit;font-size:.95rem;margin-right:.5rem;min-height:50px;padding:.6rem;resize:none}.chat-input-area textarea:focus{border-color:#2a5298;border-color:var(--color-primary-blue);outline:none}.chat-send-btn{align-self:flex-end;background:#2a5298;background:var(--color-primary-blue);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.6rem 1rem;transition:background-color .2s}.chat-send-btn:hover:not(:disabled){background:#23457f}.chat-send-btn:disabled{background-color:#ccc;cursor:not-allowed}#print-content{display:none}@media print{.print-hide{display:none!important}body *{visibility:hidden}#print-content,#print-content *{visibility:visible}#print-content{display:block;left:40px;position:absolute;right:40px;top:40px;width:auto}}.novelty-page{display:flex;flex-direction:column;min-height:100vh}.novelty-container{flex-grow:1;margin:2rem auto;max-width:1000px;padding:0 2rem}.novelty-subtitle{color:#555;font-size:1.2rem;font-weight:500;margin-bottom:1rem}.novelty-content-card{background:#fff;border:1px solid #eef0f2;border-radius:8px;box-shadow:0 4px 12px #0000000d;padding:2rem 3rem}.novelty-content-card h1,.novelty-content-card h2,.novelty-content-card h3{border-bottom:1px solid #eef0f2;color:var(--color-text-dark);margin-top:1.5rem;padding-bottom:.5rem}.novelty-content-card h1:first-child,.novelty-content-card h2:first-child,.novelty-content-card h3:first-child{margin-top:0}.novelty-content-card p{line-height:1.6;margin-bottom:1rem}.novelty-content-card ol,.novelty-content-card ul{margin-bottom:1rem;padding-left:1.5rem}.novelty-content-card a{color:var(--color-primary-blue);text-decoration:none}.novelty-content-card a:hover{text-decoration:underline}.novelty-content-card code{background:#f4f7f6;border-radius:4px;font-family:Courier New,Courier,monospace;padding:2px 6px}.novelty-content-card pre{background:#f4f7f6;border-radius:6px;overflow-x:auto;padding:1rem}.novelty-content-card pre code{background:none;padding:0}