@import"https://fonts.googleapis.com/css?family=Noto+Serif+JP:400,700&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:var(--color-accent-primary);text-decoration:inherit}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--color-bg-primary);color:var(--color-text-primary)}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:var(--color-bg-secondary);color:var(--color-text-primary);cursor:pointer;transition:border-color .25s}button:hover{border-color:var(--color-accent-primary)}button:focus,button:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}input,textarea,select{font-family:inherit;font-size:inherit;color:var(--color-text-primary);background-color:var(--color-bg-elevated);border:1px solid var(--color-border-primary);border-radius:4px}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 2px var(--color-accent-light)}input::placeholder,textarea::placeholder{color:var(--color-text-placeholder)}::selection{background-color:var(--color-accent-light);color:var(--color-text-primary)}.language-switcher{position:relative;display:inline-block}.language-switcher-button{display:flex;align-items:center;gap:6px;padding:8px 12px;background-color:transparent;border:1px solid var(--color-border-primary);border-radius:6px;color:var(--color-text-primary);font-size:14px;cursor:pointer;transition:all .2s ease}.language-switcher-button:hover{background-color:var(--color-bg-hover);border-color:var(--color-border-secondary)}.language-icon{font-size:16px}.language-name{font-weight:500}.language-arrow{font-size:10px;transition:transform .2s ease;color:var(--color-text-muted)}.language-arrow.open{transform:rotate(180deg)}.language-dropdown{position:absolute;top:calc(100% + 4px);right:0;min-width:120px;background-color:var(--color-bg-elevated);border:1px solid var(--color-border-primary);border-radius:8px;box-shadow:0 4px 12px #00000026;list-style:none;margin:0;padding:4px;z-index:1000}.language-dropdown li{margin:0}.language-option{display:block;width:100%;padding:10px 12px;background:none;border:none;text-align:left;font-size:14px;color:var(--color-text-primary);cursor:pointer;border-radius:4px;transition:background-color .15s ease}.language-option:hover{background-color:var(--color-bg-hover)}.language-option.active{background-color:var(--color-accent-primary);color:var(--color-text-inverse)}.language-option.active:hover{background-color:var(--color-accent-hover)}.header-actions .language-switcher{margin-right:8px}.app-header .language-switcher-button{border-color:#ffffff4d;color:#fff}.top-page .language-switcher-button:hover{background-color:#ffffff1a;border-color:#ffffff80}.top-page .language-arrow{color:#ffffffb3}@media(max-width:768px){.language-name{display:none}.language-switcher-button{padding:8px}.language-arrow{display:none}}.app-header{display:flex;justify-content:space-between;align-items:center;padding:12px 24px;background-color:var(--color-toolbar-bg);border-bottom:1px solid var(--color-border-primary);box-shadow:var(--shadow-sm);z-index:200;width:100%;flex-shrink:0;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.header-left{display:flex;align-items:center;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.logo{text-decoration:none;color:inherit;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.logo h1{font-size:1.5rem;font-weight:600;color:var(--color-text-primary);margin:0;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.header-right{display:flex;align-items:center;gap:16px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.header-content{display:flex;align-items:center;gap:16px;font-size:.875rem;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.auth-section{display:flex;align-items:center;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.user-menu{display:flex;align-items:center;gap:12px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.user-info{display:flex;align-items:center;gap:8px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.user-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;border:2px solid var(--color-border-primary)}.user-name{font-size:.875rem;font-weight:500;color:var(--color-text-primary);font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.header-button{padding:8px 16px;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;text-decoration:none;border:1px solid;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important;display:inline-flex;align-items:center;justify-content:center}.header-button.primary{background-color:var(--color-accent-primary);color:var(--color-text-inverse);border-color:var(--color-accent-primary)}.header-button.primary:hover{background-color:var(--color-accent-hover);border-color:var(--color-accent-hover)}.header-button.secondary{background-color:transparent;color:#fff;border-color:#ffffff4d}.header-button.secondary:hover{background-color:#ffffff1a;border-color:#ffffff80}.header-button.logout{background-color:transparent;color:var(--color-error);border-color:var(--color-error)}.header-button.logout:hover{background-color:var(--color-error);color:#fff}.header-button:focus{outline:2px solid var(--color-accent-primary);outline-offset:2px}@media(max-width:768px){.app-header{padding:8px 16px}.logo h1{font-size:1.25rem}.header-right{gap:12px}.header-content{gap:12px;font-size:.75rem}.user-name{display:none}.header-button{padding:6px 12px;font-size:.75rem}}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;gap:16px;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.loading-spinner{width:40px;height:40px;border:4px solid var(--color-border-secondary);border-top:4px solid var(--color-accent-primary);border-radius:50%;animation:spin 1s linear infinite}.top-page{display:flex;flex-direction:column;min-height:100vh;background-color:#e4e0d7;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.top-main{flex:1;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.hero-section{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:120px 40px 60px;overflow:hidden;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.hero-background{position:absolute;inset:0;z-index:0}.hero-bg-image{width:100%;height:100%;object-fit:cover;object-position:center}.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#e4e0d7d9,#e4e0d7bf,#e4e0d7e6);z-index:1}.hero-content{position:relative;z-index:2;text-align:center;max-width:800px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.hero-title{font-size:48px;font-weight:700;line-height:1.4;margin-bottom:24px;letter-spacing:.05em;color:#1a1a1a;font-family:"Noto Serif JP","Noto Serif TC",serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.hero-title .highlight{color:#00d4aa;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.hero-description{font-size:16px;color:#4b5563;line-height:1.8;margin-bottom:40px;font-weight:400;font-family:"Noto Serif JP","Noto Serif TC",serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.hero-actions{display:flex;gap:16px;justify-content:center;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.cta-button{display:inline-flex;align-items:center;justify-content:center;padding:14px 32px;border-radius:4px;font-size:15px;font-weight:500;text-decoration:none;transition:all .2s ease;font-family:"Noto Serif JP","Noto Serif TC",serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.cta-button.primary{background-color:#00d4aa;color:#fff;border:none}.cta-button.primary:hover{background-color:#00b894}.cta-button.secondary{background-color:transparent;color:#1a1a1a;border:1px solid #1A1A1A}.cta-button.secondary:hover{background-color:#0000000d}.cta-button.large{padding:16px 40px;font-size:16px}.features-section{padding:80px 40px;background-color:#e4e0d7;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.features-header{text-align:center;margin-bottom:60px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.section-title{font-size:28px;font-weight:600;margin-bottom:16px;color:#1a1a1a;font-family:"Noto Serif JP","Noto Serif TC",serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.section-subtitle{color:#4b5563;font-size:15px;font-family:"Noto Serif JP","Noto Serif TC",serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;max-width:1000px;margin:0 auto;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.feature-item{text-align:center;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.feature-icon{font-size:32px;margin-bottom:16px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.feature-title{font-size:18px;font-weight:600;margin-bottom:12px;color:#1a1a1a;font-family:"Noto Serif JP","Noto Serif TC",serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.feature-description{font-size:14px;color:#4b5563;line-height:1.7;font-family:"Noto Serif JP","Noto Serif TC",serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.cta-section{padding:80px 40px;background-color:#1a1a1a;text-align:center;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.cta-container{max-width:600px;margin:0 auto;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.cta-title{font-size:28px;font-weight:600;margin-bottom:16px;color:#fff;font-family:"Noto Serif JP","Noto Serif TC",serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.cta-description{font-size:15px;line-height:1.7;margin-bottom:32px;color:#9ca3af;font-family:"Noto Serif JP","Noto Serif TC",serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.top-footer{padding:40px;text-align:center;border-top:1px solid #C5C1B8;background-color:#e4e0d7;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.footer-content p{font-size:13px;color:#6b7280;margin:0;font-family:"Noto Serif JP","Noto Serif TC",serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}@media(max-width:1024px){.hero-section{padding:100px 24px 40px}.hero-title{font-size:40px}.features-grid{grid-template-columns:repeat(2,1fr);gap:32px}}@media(max-width:768px){.hero-section{padding:80px 20px 40px;min-height:auto}.hero-title{font-size:32px}.hero-description{font-size:15px}.hero-actions{flex-direction:column;align-items:center}.cta-button{width:100%;max-width:300px}.features-section{padding:60px 20px}.features-grid{grid-template-columns:1fr;gap:32px}.section-title{font-size:24px}.cta-section{padding:60px 20px}.cta-title{font-size:24px}.top-footer{padding:24px 20px}}.top-footer .footer-links{margin-bottom:8px}.top-footer .footer-links a{color:#1a1a1a;text-decoration:none;font-size:.9rem;transition:color .2s}.top-footer .footer-links a:hover{color:#1a1a1a}.top-footer .footer-separator{margin:0 12px;color:#1a1a1a}.login-page{display:flex;flex-direction:column;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);writing-mode:horizontal-tb!important;text-orientation:mixed!important}.login-main{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 24px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.login-container{width:100%;max-width:400px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.login-card{background-color:var(--color-bg-elevated);border-radius:12px;box-shadow:var(--shadow-lg);padding:40px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.login-header{text-align:center;margin-bottom:32px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.login-header h2{font-size:1.875rem;font-weight:700;color:var(--color-text-primary);margin-bottom:8px;font-family:"Noto Serif JP",serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.login-header p{color:var(--color-text-muted);font-size:.875rem;margin:0;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.error-message{background-color:#ef44441a;border:1px solid var(--color-error);color:var(--color-error);padding:12px 16px;border-radius:6px;margin-bottom:24px;font-size:.875rem;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.login-form{writing-mode:horizontal-tb!important;text-orientation:mixed!important}.form-group{margin-bottom:20px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.form-group label{display:block;font-size:.875rem;font-weight:600;color:var(--color-text-muted);margin-bottom:6px;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.form-group input{width:100%;padding:12px 16px;border:2px solid var(--color-border-primary);border-radius:6px;font-size:1rem;transition:all .2s ease;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important;box-sizing:border-box;background-color:var(--color-bg-elevated);color:var(--color-text-primary)}.form-group input.error{border-color:var(--color-error)}.form-group input::placeholder{color:var(--color-text-placeholder)}.field-error{display:block;color:var(--color-error);font-size:.75rem;margin-top:4px;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.submit-button{width:100%;padding:12px 16px;background-color:var(--color-accent-primary);color:var(--color-text-inverse);border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-bottom:24px;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.submit-button:hover{background-color:var(--color-accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.submit-button:active{transform:translateY(0)}.divider{text-align:center;margin:24px 0;position:relative;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background-color:var(--color-border-primary)}.divider span{background-color:var(--color-bg-elevated);color:var(--color-text-muted);padding:0 16px;font-size:.875rem;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.google-button{width:100%;padding:12px 16px;background-color:var(--color-bg-elevated);color:var(--color-text-primary);border:2px solid var(--color-border-primary);border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:32px;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.google-button:hover{background-color:var(--color-bg-hover);border-color:var(--color-text-muted);transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.google-button:active{transform:translateY(0)}.login-footer{text-align:center;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.login-footer p{margin:12px 0;font-size:.875rem;color:var(--color-text-muted);font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.toggle-button{background:none;border:none;color:var(--color-accent-primary);cursor:pointer;font-weight:600;text-decoration:none;margin-left:4px;font-size:.875rem;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.toggle-button:hover{text-decoration:underline}.back-link{color:var(--color-text-muted);text-decoration:none;font-size:.875rem;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.back-link:hover{color:var(--color-accent-primary);text-decoration:underline}@media(max-width:480px){.login-main{padding:20px 16px}.login-card{padding:32px 24px}.login-header h2{font-size:1.5rem}.form-group input,.submit-button,.google-button{padding:14px 16px}}.writing-document-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1200;animation:fadeIn .2s ease-out}.writing-document-modal-overlay .writing-document-modal{writing-mode:horizontal-tb!important;text-orientation:mixed!important}.writing-document-modal{background-color:var(--color-bg-elevated);border-radius:12px;box-shadow:var(--shadow-lg);border:1px solid var(--color-border-primary);min-width:500px;max-width:700px;width:90%;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.writing-document-modal.loading-content{opacity:0}.writing-document-modal.content-ready{animation:fadeInModal .2s ease-out forwards}@keyframes fadeInModal{0%{opacity:0}to{opacity:1}}.writing-document-modal *{writing-mode:horizontal-tb!important;text-orientation:mixed!important}@keyframes slideUp{0%{opacity:0;transform:scale(.95) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.writing-document-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--color-border-primary);background-color:var(--color-bg-secondary);flex-shrink:0}.writing-document-modal-title{margin:0;font-size:18px;font-weight:600;color:var(--color-text-primary);font-family:system-ui,-apple-system,sans-serif}.writing-document-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;color:var(--color-text-muted);cursor:pointer;border-radius:6px;transition:all .15s ease;font-size:18px;font-weight:700}.writing-document-modal-close:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.writing-document-modal-close:focus{outline:2px solid var(--color-accent-primary);outline-offset:2px}.writing-document-modal-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.writing-document-modal .new-document-form{padding:24px}.writing-document-modal .form-group{margin-bottom:20px}.writing-document-modal .form-group label{display:block;font-size:14px;font-weight:600;color:var(--color-text-muted);margin-bottom:8px;font-family:system-ui,-apple-system,sans-serif}.writing-document-modal .form-group input{width:100%;padding:12px 16px;border:2px solid var(--color-border-primary);border-radius:6px;font-size:16px;transition:all .2s ease;font-family:system-ui,-apple-system,sans-serif;box-sizing:border-box;background-color:var(--color-bg-primary);color:var(--color-text-primary)}.writing-document-modal .form-group input:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 3px var(--color-accent-light)}.writing-document-modal .form-group input.error{border-color:var(--color-error)}.writing-document-modal .form-group input::placeholder{color:var(--color-text-placeholder)}.writing-document-modal .field-error{display:block;color:var(--color-error);font-size:12px;margin-top:4px;font-family:system-ui,-apple-system,sans-serif}.writing-document-modal .document-list{flex:1;display:flex;flex-direction:column;overflow:hidden}.writing-document-modal .document-list-empty{padding:40px 24px;text-align:center;color:var(--color-text-muted);font-family:system-ui,-apple-system,sans-serif}.writing-document-modal .document-list-scroll{overflow-y:auto;max-height:400px}.writing-document-modal .document-list-scroll::-webkit-scrollbar{width:8px}.writing-document-modal .document-list-scroll::-webkit-scrollbar-track{background:var(--color-bg-secondary)}.writing-document-modal .document-list-scroll::-webkit-scrollbar-thumb{background:var(--color-border-primary);border-radius:4px}.writing-document-modal .document-list-scroll::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.writing-document-modal .document-item{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid var(--color-border-primary);cursor:pointer;transition:all .15s ease;min-height:80px}.writing-document-modal .document-item:hover{background-color:var(--color-bg-hover)}.writing-document-modal .document-item:last-child{border-bottom:none}.writing-document-modal .document-info{flex:1;min-width:0}.writing-document-modal .document-title-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}.writing-document-modal .document-title{font-size:16px;font-weight:600;color:var(--color-text-primary);font-family:system-ui,-apple-system,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.writing-document-modal .role-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;font-family:system-ui,-apple-system,sans-serif;white-space:nowrap;flex-shrink:0}.writing-document-modal .role-badge.owner{background-color:var(--color-accent-light);color:var(--color-accent-primary)}.writing-document-modal .role-badge.reviewer.pending{background-color:#f59e0b26;color:var(--color-warning)}.writing-document-modal .role-badge.reviewer.accepted{background-color:#10b98126;color:var(--color-success)}.writing-document-modal .document-meta{display:flex;gap:16px;font-size:12px;color:var(--color-text-muted);font-family:system-ui,-apple-system,sans-serif}.writing-document-modal .document-actions{display:flex;gap:8px;margin-left:12px}.writing-document-modal .loading-container{padding:40px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.writing-document-modal .loading-spinner{width:32px;height:32px;border:3px solid var(--color-border-primary);border-top:3px solid var(--color-accent-primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.writing-document-modal .loading-text{color:var(--color-text-muted);font-family:system-ui,-apple-system,sans-serif}.writing-document-modal .error-message{background-color:#ef44441a;border:1px solid var(--color-error);color:var(--color-error);padding:12px 16px;border-radius:6px;margin:16px 24px;font-size:14px;font-family:system-ui,-apple-system,sans-serif}.writing-document-modal-footer{padding:16px 24px 20px;border-top:1px solid var(--color-border-primary);background-color:var(--color-bg-secondary);display:flex;justify-content:flex-end;gap:12px;flex-shrink:0}.writing-document-modal-button{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s ease;border:none;font-family:system-ui,-apple-system,sans-serif}.writing-document-modal-button.secondary{background-color:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border-primary)}.writing-document-modal-button.secondary:hover{background-color:var(--color-bg-hover);border-color:var(--color-text-muted)}.writing-document-modal-button.primary{background-color:var(--color-accent-primary);color:var(--color-text-inverse)}.writing-document-modal-button.primary:hover:not(:disabled){background-color:var(--color-accent-hover)}.writing-document-modal-button.primary:disabled{background-color:var(--color-bg-tertiary);color:var(--color-text-muted);cursor:not-allowed}.dashboard-page{display:flex;flex-direction:column;min-height:100vh;background-color:var(--color-bg-primary);writing-mode:horizontal-tb!important;text-orientation:mixed!important}.dashboard-main{flex:1;padding:40px 24px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.dashboard-container{max-width:1200px;margin:0 auto;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.system-message-section{background-color:var(--color-bg-elevated);border:1px solid var(--color-border-primary);border-radius:12px;padding:20px 24px;margin-bottom:28px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.system-message-title{margin:0 0 10px;font-size:1rem;font-weight:600;color:var(--color-text-secondary);font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.system-message-text{margin:0;color:var(--color-text-primary);font-size:.95rem;line-height:1.6;white-space:pre-wrap;word-break:break-word;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.user-stats{display:flex;gap:24px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.stat-card{background-color:#ffffff1a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:24px;border-radius:12px;text-align:center;min-width:100px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.stat-number{font-size:2rem;font-weight:700;margin-bottom:4px;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.stat-label{font-size:.875rem;opacity:.8;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.actions-section{display:flex;gap:16px;margin-bottom:48px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.btn-new-document,.btn-dashboard-settings,.btn-dashboard-import{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;border-radius:8px;font-size:1rem;font-weight:600;text-decoration:none;transition:all .2s ease;cursor:pointer;border:none;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.btn-new-document{background:linear-gradient(135deg,var(--color-accent-primary) 0%,var(--color-accent-hover) 100%);color:var(--color-text-inverse);flex:1}.btn-new-document:hover{transform:translateY(-2px);box-shadow:0 8px 20px #3b82f64d}.btn-dashboard-import{background-color:var(--color-bg-elevated);color:var(--color-text-primary);border:2px solid var(--color-border-primary)}.btn-dashboard-import:hover{border-color:var(--color-accent-primary);color:var(--color-accent-primary);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.btn-dashboard-settings{background-color:var(--color-bg-elevated);color:var(--color-text-primary);border:2px solid var(--color-border-primary)}.btn-dashboard-settings:hover{border-color:var(--color-accent-primary);color:var(--color-accent-primary);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.section-title{font-size:1.5rem;font-weight:600;color:var(--color-text-primary);margin-bottom:24px;font-family:"Noto Serif JP",serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.documents-section{margin-bottom:48px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.loading-state{text-align:center;padding:60px 20px;color:var(--color-text-muted);font-size:1.125rem;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.empty-state{text-align:center;padding:60px 20px;background-color:var(--color-bg-elevated);border-radius:12px;border:2px dashed var(--color-border-primary);writing-mode:horizontal-tb!important;text-orientation:mixed!important}.empty-state p{color:var(--color-text-muted);font-size:1.125rem;margin-bottom:24px;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.btn-create-first{padding:12px 24px;background:linear-gradient(135deg,var(--color-accent-primary) 0%,var(--color-accent-hover) 100%);color:var(--color-text-inverse);border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.btn-create-first:hover{transform:translateY(-2px);box-shadow:0 8px 20px #3b82f64d}.documents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.document-card{background-color:var(--color-bg-elevated);border:2px solid var(--color-border-primary);border-radius:12px;padding:24px;cursor:pointer;transition:all .3s ease;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.document-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0000001a;border-color:var(--color-accent-primary)}.document-card.reviewer{border-left:4px solid var(--color-warning)}.document-card.owner{border-left:4px solid var(--color-accent-primary)}.document-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.document-title{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin:0;flex:1;font-family:"Noto Serif JP",serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.role-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.role-badge.owner{background-color:#3b82f626;color:var(--color-accent-primary)}.role-badge.pending{background-color:#f59e0b26;color:var(--color-warning)}.role-badge.accepted{background-color:#10b98126;color:var(--color-success)}.document-meta{display:flex;justify-content:space-between;align-items:center;color:var(--color-text-muted);font-size:.875rem;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.document-date,.document-count{writing-mode:horizontal-tb!important;text-orientation:mixed!important}.dashboard-footer{background-color:var(--color-bg-secondary);border-top:1px solid var(--color-border-primary);padding:24px;text-align:center;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.footer-content p{margin:0;font-size:.875rem;color:var(--color-text-muted);font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}@media(max-width:1024px){.welcome-section{flex-direction:column;text-align:center;gap:32px}.user-stats{justify-content:center}.documents-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media(max-width:768px){.dashboard-main{padding:24px 16px}.welcome-section{padding:32px 24px}.welcome-title{font-size:1.875rem}.user-stats{flex-direction:row;gap:16px}.stat-card{padding:16px;min-width:80px}.stat-number{font-size:1.5rem}.actions-section{flex-direction:column}.documents-grid{grid-template-columns:1fr}}.btn-delete-documents{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;border-radius:8px;font-size:1rem;font-weight:600;text-decoration:none;transition:all .2s ease;cursor:pointer;border:2px solid var(--color-border-primary);background-color:var(--color-bg-elevated);color:var(--color-text-primary);font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.btn-delete-documents:hover{border-color:var(--color-error);color:var(--color-error);transform:translateY(-2px);box-shadow:0 4px 12px #ef444433}.btn-delete-documents.active{background-color:var(--color-accent-primary);color:var(--color-text-inverse);border-color:var(--color-accent-primary)}.btn-delete-documents.active:hover{background-color:var(--color-accent-hover);border-color:var(--color-accent-hover)}.document-card.deletion-mode{cursor:pointer;position:relative;padding-left:60px}.document-card.deletion-mode:hover{border-color:var(--color-error);background-color:#ef44441a}.document-card.deletion-mode.disabled{opacity:.5;cursor:not-allowed;background-color:var(--color-bg-tertiary)}.document-card.deletion-mode.disabled:hover{border-color:var(--color-border-primary);background-color:var(--color-bg-tertiary);transform:none}.document-card.selected{background-color:#ef444426;border-color:var(--color-error);border-width:2px}.document-card.selected:hover{background-color:#ef444433}.checkbox-container{position:absolute;left:20px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center}.checkbox-container input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--color-error)}.checkbox-container input[type=checkbox]:disabled{cursor:not-allowed;opacity:.3}.bulk-delete-panel{position:fixed;bottom:0;left:0;right:0;background:linear-gradient(to top,#000000e6,#000000b3);padding:20px;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:2px solid var(--color-error);animation:slideUpPanel .3s ease-out}@keyframes slideUpPanel{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.btn-bulk-delete{padding:16px 40px;background-color:#dc2626;color:#fff;border:none;border-radius:8px;font-size:1.125rem;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #dc262666;font-family:system-ui,-apple-system,sans-serif;display:flex;align-items:center;gap:8px}.btn-bulk-delete:hover{background-color:#b91c1c;transform:translateY(-2px);box-shadow:0 6px 16px #dc262680}.btn-bulk-delete:active{transform:translateY(0)}.dashboard-footer .footer-links{margin-bottom:8px}.dashboard-footer .footer-links a{color:var(--text-secondary);text-decoration:none;font-size:.9rem;transition:color .2s}.dashboard-footer .footer-links a:hover{color:var(--accent-color)}.dashboard-footer .footer-separator{margin:0 12px;color:var(--text-tertiary)}.invite-processing-overlay{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;background:#0f172a59;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.invite-processing-modal{min-width:320px;max-width:90vw;padding:24px 28px;border-radius:12px;background-color:var(--color-bg-elevated);border:1px solid var(--color-border-primary);display:flex;align-items:center;gap:12px;box-shadow:0 10px 24px #0003}.invite-processing-text{margin:0;color:var(--color-text-primary);font-size:16px;font-weight:500;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.security-limited-banner{margin-bottom:16px;padding:14px 16px;border:1px solid #f59e0b;background-color:#fffbeb;color:#92400e;border-radius:10px;font-weight:700;line-height:1.5}.btn-new-document:disabled,.btn-dashboard-import:disabled,.btn-delete-documents:disabled,.btn-create-first:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.document-card.disabled{opacity:.55;cursor:not-allowed;pointer-events:none}.document-card.disabled:hover{transform:none;box-shadow:none;border-color:var(--color-border-primary)}.import-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.import-modal{background:var(--color-bg-elevated);border-radius:12px;box-shadow:var(--shadow-lg);width:90%;max-width:500px;max-height:85vh;display:flex;flex-direction:column;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.import-modal-header{padding:20px 24px;border-bottom:1px solid var(--color-border-primary);display:flex;justify-content:space-between;align-items:center}.import-modal-header h3{margin:0;font-size:18px;font-weight:600;color:var(--color-text-primary)}.import-modal-close-button{background:none;border:none;font-size:24px;color:var(--color-text-muted);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.import-modal-close-button:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.import-modal-content{padding:24px;flex:1;overflow-y:auto}.import-info{display:flex;align-items:center;gap:8px;padding:12px 16px;background-color:#3b82f61a;border:1px solid var(--color-info);border-radius:8px;margin-bottom:20px}.import-info .info-icon{font-size:18px}.import-info .info-text{color:var(--color-info);font-size:14px;font-weight:500}.import-section{margin-top:16px}.import-section p{color:var(--color-text-muted);font-size:14px;margin:0 0 16px}.import-buttons{display:flex;flex-direction:column;gap:12px}.import-button{padding:12px 20px;border:1px solid var(--color-border-primary);border-radius:8px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s;background-color:var(--color-bg-secondary);color:var(--color-text-primary);writing-mode:horizontal-tb!important;text-orientation:mixed!important}.import-button:hover:not(:disabled){background-color:var(--color-bg-hover);border-color:var(--color-text-muted)}.import-button:disabled{opacity:.5;cursor:not-allowed}.import-button-primary{background-color:var(--color-accent-primary);border-color:var(--color-accent-primary);color:var(--color-text-inverse)}.import-button-primary:hover:not(:disabled){background-color:var(--color-accent-hover);border-color:var(--color-accent-hover)}.import-confirmation{display:flex;flex-direction:column;gap:20px}.import-confirmation-info h4{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--color-text-primary)}.document-info{background-color:var(--color-bg-secondary);padding:16px;border-radius:8px;margin-bottom:12px}.document-info p{margin:8px 0;color:var(--color-text-muted);font-size:14px}.document-info strong{color:var(--color-text-primary)}.import-note{display:flex;align-items:center;gap:8px;padding:12px 16px;background-color:#3b82f61a;border:1px solid var(--color-info);border-radius:8px;color:var(--color-info);font-size:14px;margin:0}.import-confirmation-buttons{display:flex;gap:12px}.import-confirmation-buttons .import-button{flex:1}.import-message{margin-top:16px;padding:12px 16px;border-radius:8px;font-size:14px;text-align:center}.import-message.info{background-color:#10b9811a;color:var(--color-success);border:1px solid var(--color-success)}.import-message.error{background-color:#ef44441a;color:var(--color-error);border:1px solid var(--color-error)}.ruby-modal-overlay{position:fixed;inset:0;background-color:#0000004d;z-index:1300;writing-mode:horizontal-tb!important;text-orientation:mixed!important;display:flex;align-items:center;justify-content:center}.ruby-modal{background-color:#fff;border-radius:8px;box-shadow:0 8px 24px #0003;min-width:280px;max-width:400px;writing-mode:horizontal-tb!important;text-orientation:mixed!important;animation:rubyModalFadeIn .2s ease-out}@keyframes rubyModalFadeIn{0%{opacity:0;transform:scale(.9) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.ruby-modal-header{padding:16px 20px 12px;border-bottom:1px solid #e5e7eb;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.ruby-modal-header h4{margin:0;font-size:16px;font-weight:600;color:#374151;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.ruby-modal-content{padding:20px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.ruby-modal-text{margin-bottom:16px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.ruby-modal-label{font-size:14px;font-weight:500;color:#374151;margin-right:8px;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.ruby-modal-selected-text{font-size:16px;font-weight:600;color:#1f2937;background-color:#fef3c7;padding:2px 6px;border-radius:4px;font-family:"Noto Serif JP",serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.ruby-modal-input-group{display:flex;flex-direction:column;gap:8px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.ruby-modal-input{width:100%;height:40px;padding:8px 12px;border:2px solid #d1d5db;border-radius:6px;font-size:14px;font-family:system-ui,-apple-system,sans-serif;transition:all .15s ease;writing-mode:horizontal-tb!important;text-orientation:mixed!important;box-sizing:border-box}.ruby-modal-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.ruby-modal-actions{display:flex;gap:12px;padding:16px 20px 20px;justify-content:flex-end;border-top:1px solid #e5e7eb;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.ruby-modal-button{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;border:1px solid;min-width:80px;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.ruby-modal-button.cancel{background-color:#fff;color:#374151;border-color:#d1d5db}.ruby-modal-button.cancel:hover{background-color:#f9fafb;border-color:#9ca3af}.ruby-modal-button.confirm{background-color:#3b82f6;color:#fff;border-color:#3b82f6}.ruby-modal-button.confirm:hover:not(:disabled){background-color:#2563eb;border-color:#2563eb}.ruby-modal-button.confirm:disabled{opacity:.5;cursor:not-allowed}.ruby-modal-button:focus{outline:2px solid #3b82f6;outline-offset:2px}@media(prefers-color-scheme:dark){.ruby-modal{background-color:#1f2937}.ruby-modal-header{border-bottom-color:#374151}.ruby-modal-header h4,.ruby-modal-label{color:#f9fafb}.ruby-modal-selected-text{color:#1f2937;background-color:#fbbf24}.ruby-modal-input{background-color:#374151;border-color:#4b5563;color:#f9fafb}.ruby-modal-input:focus{border-color:#3b82f6}.ruby-modal-actions{border-top-color:#374151}.ruby-modal-button.cancel{background-color:#374151;color:#f9fafb;border-color:#4b5563}.ruby-modal-button.cancel:hover{background-color:#4b5563;border-color:#6b7280}}.scroll-navigation-container{position:fixed;bottom:70px;left:50%;transform:translate(-50%);width:80%;max-width:800px;z-index:1000;pointer-events:auto;opacity:.35;transition:opacity .2s ease}.scroll-navigation-container:hover,.scroll-navigation-container.active{opacity:1}.custom-slider-bar{position:relative;width:100%;height:6px;background:#e0e0e0;border-radius:3px;cursor:pointer;-webkit-user-select:none;user-select:none;box-shadow:0 1px 3px #0000001a}.custom-slider-thumb{position:absolute;top:50%;transform:translate(-50%,-50%);width:24px;height:24px;border-radius:50%;background:#17395c;border:3px solid #2363a4;box-shadow:0 2px 6px #00000040;cursor:pointer;pointer-events:auto;transition:all .1s ease}.custom-slider-bar:hover .custom-slider-thumb{width:28px;height:28px;background:#17395c}.custom-slider-thumb.dragging{width:32px;height:32px;background:#17395c;box-shadow:0 3px 8px #0000004d}@media(prefers-color-scheme:dark){.custom-slider-bar{background:#555;box-shadow:0 1px 3px #0000004d}.custom-slider-thumb{background:#17395c;border-color:#fff6}.custom-slider-bar:hover .custom-slider-thumb,.custom-slider-thumb.dragging{background:#17395c}}@media(max-width:768px){.scroll-navigation-container{width:90%}.custom-slider-bar{height:8px}.custom-slider-thumb{width:28px;height:28px}.custom-slider-bar:hover .custom-slider-thumb{width:32px;height:32px}}.vertical-editor{display:block;width:100%;height:100vh;padding:80px 0 120px;writing-mode:vertical-rl;-webkit-writing-mode:vertical-rl;-ms-writing-mode:tb-rl;font-size:20px;font-family:"Noto Serif JP",serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-font-feature-settings:"palt";font-feature-settings:"palt";color:var(--color-editor-text);line-height:2em;background-color:var(--color-editor-bg);overflow-x:auto;overflow-y:hidden;max-width:100%;box-sizing:border-box;position:relative;scroll-behavior:auto;overscroll-behavior-x:contain}.vertical-editor .ProseMirror{display:block;width:calc(max-content + 480px);min-width:calc(100vw + 240px);height:100%;padding:0 240px;overflow:visible;outline:none;max-height:600px;position:relative;box-sizing:border-box;line-break:strict;word-wrap:break-word;overflow-wrap:break-word}.vertical-editor .ProseMirror.chars-20{max-height:400px}.vertical-editor .ProseMirror.chars-30{max-height:600px}.vertical-editor .ProseMirror.chars-40{max-height:800px}.vertical-editor .ProseMirror p{margin:0;display:block;min-height:1em;box-sizing:border-box;line-break:strict;position:relative}.vertical-editor .ProseMirror p:empty:before{content:"​"}.vertical-editor .ProseMirror br{display:block;height:1em}.vertical-editor .ProseMirror ruby{ruby-align:center;ruby-position:right;display:inline-block;vertical-align:baseline}.vertical-editor .ProseMirror ruby .ruby-base{display:inline}.vertical-editor .ProseMirror ruby rt{font-size:.5em;line-height:1;text-align:center;font-weight:400;color:var(--color-text-muted);display:block;margin-right:.2em}.vertical-editor .ProseMirror .tatenakayoko{text-combine-upright:all;-webkit-text-combine:horizontal;-ms-text-combine-horizontal:all;writing-mode:horizontal-tb;display:inline-block;font-feature-settings:normal;letter-spacing:normal;text-orientation:mixed}.vertical-editor .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--color-text-placeholder);pointer-events:none;height:0;font-style:italic}.vertical-editor .ProseMirror::selection{background-color:var(--color-editor-selection)}.vertical-editor .ProseMirror ::-moz-selection{background-color:var(--color-editor-selection)}.vertical-editor.focused{box-shadow:inset 0 0 0 2px var(--color-accent-light)}.vertical-editor.loading{display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:1rem;font-family:system-ui,sans-serif}@media(max-width:1024px){.vertical-editor{padding:60px 0 100px;font-size:18px}.vertical-editor .ProseMirror{padding:0 180px}.vertical-editor .ProseMirror.chars-20{max-height:360px}.vertical-editor .ProseMirror.chars-30{max-height:540px}.vertical-editor .ProseMirror.chars-40{max-height:720px}}@media(max-width:768px){.vertical-editor{padding:40px 0 80px;font-size:16px}.vertical-editor .ProseMirror{padding:0 120px}.vertical-editor .ProseMirror.chars-20{max-height:320px}.vertical-editor .ProseMirror.chars-30{max-height:480px}.vertical-editor .ProseMirror.chars-40{max-height:640px}}@media(max-width:480px){.vertical-editor{padding:20px 0 60px;font-size:16px;line-height:1.8em}.vertical-editor .ProseMirror{padding:0 80px}}@media print{.vertical-editor{padding:20mm;font-size:12pt;line-height:1.8;background-color:#fff;color:#000;overflow:visible}.vertical-editor .ProseMirror{overflow:visible;max-height:none;width:auto;min-width:auto;max-width:none;padding:0}}.context-menu-content{padding:4px 0;writing-mode:horizontal-tb;text-orientation:mixed}.context-menu-item{display:block;width:100%;padding:8px 16px;border:none;background:none;text-align:left;font-family:system-ui,-apple-system,sans-serif;font-size:14px;color:var(--color-text-primary);cursor:pointer;transition:background-color .15s ease;writing-mode:horizontal-tb;text-orientation:mixed;white-space:nowrap}.context-menu-item.disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.vertical-editor .ProseMirror .ruby-text{position:relative;display:inline-block}.vertical-editor .ProseMirror .ruby-text:before{content:attr(data-ruby);position:absolute;left:100%;top:50%;transform:translateY(-50%);font-size:.5em;line-height:1;color:var(--color-text-muted);writing-mode:vertical-rl;text-orientation:mixed;white-space:nowrap;margin-left:-.9em;font-weight:400;font-family:"Noto Serif JP",serif;min-height:1em;text-align:center;letter-spacing:.1em}.vertical-editor .ProseMirror ruby{ruby-align:center;ruby-position:right;display:inline-block;vertical-align:baseline;font-feature-settings:"palt"}.vertical-editor .ProseMirror ruby rt{font-size:.5em;line-height:1;text-align:center;font-weight:400;color:var(--color-text-muted);display:block;margin-right:.2em;writing-mode:horizontal-tb;text-orientation:mixed}.vertical-editor .ProseMirror .ruby-text{cursor:pointer;transition:background-color .2s ease}.vertical-editor .ProseMirror .ruby-text:hover{background-color:var(--color-accent-light);border-radius:2px}.vertical-editor .ProseMirror .ruby-text:hover:before{color:var(--color-accent-primary)}.vertical-editor .ProseMirror .ruby-text::selection{background-color:var(--color-editor-selection)}.vertical-editor .ProseMirror ruby::selection{background-color:var(--color-editor-selection)}.vertical-editor .ProseMirror ruby rt::selection{background-color:var(--color-editor-selection)}@media print{.vertical-editor .ProseMirror .ruby-text:before{font-size:.4em;color:#333}.vertical-editor .ProseMirror .ruby-text:hover{background-color:transparent}.vertical-editor .ProseMirror ruby rt{font-size:.4em;color:#333}}@media(max-width:768px){.vertical-editor .ProseMirror .ruby-text:before{font-size:.45em;margin-left:.2em}}.vertical-editor .ProseMirror .tatechuuyoko-html{text-combine-upright:all;-webkit-text-combine:horizontal;-ms-text-combine-horizontal:all;writing-mode:horizontal-tb;display:inline-block;font-feature-settings:normal;letter-spacing:normal;text-orientation:mixed;background-color:transparent;border-radius:2px;padding:0;margin:0;cursor:pointer;transition:background-color .2s ease}.vertical-editor .ProseMirror .tatechuuyoko-html:hover{background-color:var(--color-accent-light);padding:1px 2px;margin:0 1px}.vertical-editor .ProseMirror .tatechuuyoko-html::selection{background-color:var(--color-editor-selection)}.vertical-editor .ProseMirror .tatechuuyoko-html::-moz-selection{background-color:var(--color-editor-selection)}@media print{.vertical-editor .ProseMirror .tatechuuyoko-html{background-color:transparent;padding:0;margin:0}.vertical-editor .ProseMirror .tatechuuyoko-html:hover{background-color:transparent}}@media(max-width:768px){.vertical-editor .ProseMirror .tatechuuyoko-html{padding:0;margin:0}.vertical-editor .ProseMirror .tatechuuyoko-html:hover{padding:1px;margin:0}}.vertical-editor .ProseMirror .bouten-char{position:relative;display:inline;background-image:radial-gradient(circle,var(--color-text-muted) .13em,transparent .14em);background-repeat:repeat-y;background-size:1em 1em;background-position:calc(100% + .5em) 1em;cursor:pointer;transition:background-color .2s ease}.vertical-editor .ProseMirror .bouten-char:hover{background-color:var(--color-accent-light);border-radius:2px;background-image:radial-gradient(circle,var(--color-accent-primary) .13em,transparent .14em)}.vertical-editor .ProseMirror .bouten-char::selection{background-color:var(--color-editor-selection)}.context-menu{position:fixed;z-index:1000;box-shadow:var(--shadow-lg)}.context-menu-content{background:var(--color-bg-elevated);border:1px solid var(--color-border-primary);border-radius:8px;padding:4px;min-width:180px;box-shadow:var(--shadow-lg)}.context-menu-item{display:block;width:100%;padding:8px 16px;text-align:left;background:none;border:none;cursor:pointer;font-size:14px;color:var(--color-text-primary);border-radius:4px;transition:background-color .15s}.context-menu-item:hover:not(.disabled){background-color:var(--color-bg-hover)}.context-menu-item.disabled{color:var(--color-text-muted);cursor:not-allowed;opacity:.5}.context-menu-item:active:not(.disabled){background-color:var(--color-bg-tertiary)}.vertical-editor[data-lines-per-page="30"] .ProseMirror{background-image:repeating-linear-gradient(to left,transparent 0px,transparent 1198px,var(--color-border-primary) 1198px,var(--color-border-primary) 1200px);background-size:1200px 100%;background-position:calc(100% - 240px) top}.vertical-editor[data-lines-per-page="40"] .ProseMirror{background-image:repeating-linear-gradient(to left,transparent 0px,transparent 1598px,var(--color-border-primary) 1598px,var(--color-border-primary) 1600px);background-size:1600px 100%;background-position:calc(100% - 240px) top}.vertical-editor[data-lines-per-page="20"] .ProseMirror{background-image:repeating-linear-gradient(to left,transparent 0px,transparent 798px,var(--color-border-primary) 798px,var(--color-border-primary) 800px);background-size:800px 100%;background-position:calc(100% - 240px) top}@media(max-width:1024px){.vertical-editor[data-lines-per-page="30"] .ProseMirror{background-image:repeating-linear-gradient(to left,transparent 0px,transparent 1078px,var(--color-border-primary) 1078px,var(--color-border-primary) 1080px);background-size:1080px 100%;background-position:calc(100% - 180px) top}.vertical-editor[data-lines-per-page="40"] .ProseMirror{background-image:repeating-linear-gradient(to left,transparent 0px,transparent 1438px,var(--color-border-primary) 1438px,var(--color-border-primary) 1440px);background-size:1440px 100%;background-position:calc(100% - 180px) top}.vertical-editor[data-lines-per-page="20"] .ProseMirror{background-image:repeating-linear-gradient(to left,transparent 0px,transparent 718px,var(--color-border-primary) 718px,var(--color-border-primary) 720px);background-size:720px 100%;background-position:calc(100% - 180px) top}}@media(max-width:768px){.vertical-editor[data-lines-per-page="30"] .ProseMirror{background-image:repeating-linear-gradient(to left,transparent 0px,transparent 958px,var(--color-border-primary) 958px,var(--color-border-primary) 960px);background-size:960px 100%;background-position:calc(100% - 120px) top}.vertical-editor[data-lines-per-page="40"] .ProseMirror{background-image:repeating-linear-gradient(to left,transparent 0px,transparent 1278px,var(--color-border-primary) 1278px,var(--color-border-primary) 1280px);background-size:1280px 100%;background-position:calc(100% - 120px) top}.vertical-editor[data-lines-per-page="20"] .ProseMirror{background-image:repeating-linear-gradient(to left,transparent 0px,transparent 638px,var(--color-border-primary) 638px,var(--color-border-primary) 640px);background-size:640px 100%;background-position:calc(100% - 120px) top}}@media print{.vertical-editor .ProseMirror{background-image:none!important}}.editor-loading-overlay{position:absolute;inset:0;background:#ffffffe6;z-index:100;display:flex;justify-content:center;align-items:center}.spinner-ring{width:40px;height:40px;border:4px solid var(--color-border-secondary);border-top:4px solid var(--color-text-muted);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.vertical-editor .ProseMirror .search-highlight{background-color:#fbbf24;color:#1f2937;border-radius:2px;padding:1px 0;box-shadow:0 0 0 1px #fbbf244d;transition:all .15s ease}.vertical-editor .ProseMirror .search-highlight-current{background-color:#f97316;color:#fff;border-radius:2px;padding:1px 0;box-shadow:0 0 0 2px #f9731680;transition:all .15s ease;animation:pulse-highlight 1s ease-in-out}@keyframes pulse-highlight{0%{box-shadow:0 0 0 2px #f9731680}50%{box-shadow:0 0 0 4px #f97316b3}to{box-shadow:0 0 0 2px #f9731680}}@media(prefers-color-scheme:dark){.vertical-editor .ProseMirror .search-highlight{background-color:#d97706;color:#1f2937;box-shadow:0 0 0 1px #d9770666}.vertical-editor .ProseMirror .search-highlight-current{background-color:#ea580c;color:#fff;box-shadow:0 0 0 2px #ea580c99}@keyframes pulse-highlight{0%{box-shadow:0 0 0 2px #ea580c99}50%{box-shadow:0 0 0 4px #ea580ccc}to{box-shadow:0 0 0 2px #ea580c99}}}@media print{.vertical-editor .ProseMirror .search-highlight,.vertical-editor .ProseMirror .search-highlight-current{background-color:transparent;color:inherit;border:1px solid #666666;box-shadow:none;animation:none}}.comment-highlight{position:relative;cursor:pointer!important;transition:all .2s ease;padding:2px 0;border-radius:2px;display:inline}.comment-highlight.comment-status-pending{background-color:#ff6b6b4d!important;border-bottom:2px solid #ff6b6b}.comment-highlight.comment-status-pending:hover{background-color:#ff6b6b73!important}.comment-highlight.comment-status-inProgress{background-color:#ffd43b4d!important;border-bottom:2px solid #ffd43b}.comment-highlight.comment-status-inProgress:hover{background-color:#ffd43b73!important}.comment-highlight.comment-status-completed{background-color:#51cf664d!important;border-bottom:2px solid #51cf66}.comment-highlight.comment-status-completed:hover{background-color:#51cf6673!important}.comment-highlight.comment-multiple{background:linear-gradient(90deg,#ff6b6b40,#ffd43b40,#51cf6640);border-bottom:2px solid #8b8b8b}.comment-highlight.comment-active{animation:pulse 1s ease-in-out infinite;box-shadow:0 0 8px #4a9eff99}.comment-highlight:after{content:attr(data-comment-count);position:absolute;top:-20px;left:50%;transform:translate(-50%);background:#333;color:#fff;padding:2px 6px;border-radius:3px;font-size:11px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s;z-index:100}.comment-highlight[data-comment-count]:hover:after{opacity:1}.vertical-editor .comment-highlight{border-bottom:none;border-left:2px solid}.vertical-editor .comment-highlight.comment-status-pending{border-left-color:#ff6b6b}.vertical-editor .comment-highlight.comment-status-inProgress{border-left-color:#ffd43b}.vertical-editor .comment-highlight.comment-status-completed{border-left-color:#51cf66}.review-mode .comment-highlight{display:inline}.edit-mode .comment-highlight{opacity:.6}.share-dialog-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.share-dialog{background:var(--color-bg-elevated);border-radius:12px;box-shadow:var(--shadow-lg);width:90%;max-width:560px;max-height:85vh;display:flex;flex-direction:column;animation:slideUp .3s ease-out;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.share-dialog-header{padding:20px 24px;border-bottom:1px solid var(--color-border-primary);display:flex;justify-content:space-between;align-items:center}.share-dialog-title{display:flex;align-items:center;gap:12px}.share-icon{font-size:24px}.share-dialog-header h2{margin:0;font-size:18px;font-weight:600;color:var(--color-text-primary)}.share-dialog-close{background:none;border:none;font-size:28px;color:var(--color-text-muted);cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.share-dialog-close:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.share-document-info{padding:12px 24px;background-color:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-primary)}.document-name{display:flex;align-items:center;gap:8px;font-size:14px}.document-name .label{color:var(--color-text-muted);font-weight:500}.document-name .value{color:var(--color-text-primary);font-weight:600}.share-dialog-content{flex:1;overflow-y:auto;padding:24px}.permission-grant-section h3,.reviewers-section h3{font-size:15px;font-weight:600;color:var(--color-text-primary);margin:0 0 8px}.section-description{font-size:13px;color:var(--color-text-muted);margin:0 0 16px;line-height:1.5}.permission-grant-form{display:flex;gap:12px;margin-bottom:12px}.share-input{flex:1;padding:10px 14px;border:1px solid var(--color-border-primary);border-radius:8px;font-size:14px;color:var(--color-text-primary);background-color:var(--color-bg-elevated);transition:all .2s;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.share-input:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 3px var(--color-accent-light)}.share-input:disabled{background-color:var(--color-bg-tertiary);color:var(--color-text-muted);cursor:not-allowed}.share-message{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:8px;font-size:13px;margin-top:8px;animation:fadeIn .2s}.share-message .message-icon{font-size:16px}.share-message.error{background-color:#ef44441a;color:var(--color-error);border:1px solid var(--color-error)}.share-message.success{background-color:#10b9811a;color:var(--color-success);border:1px solid var(--color-success)}.share-divider{height:1px;background-color:var(--color-border-primary);margin:24px 0}.owner-item,.reviewer-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background-color:var(--color-bg-elevated);border:1px solid var(--color-border-primary);border-radius:8px;transition:all .2s}.owner-item{margin-bottom:12px;background-color:var(--color-accent-light);border-color:var(--color-accent-primary)}.reviewer-item{margin-bottom:8px}.reviewer-item:hover{background-color:var(--color-bg-hover);border-color:var(--color-text-muted)}.user-info{display:flex;align-items:center;gap:12px;flex:1}.user-icon{font-size:20px}.user-details{display:flex;flex-direction:column;gap:2px}.user-email{font-size:14px;color:var(--color-text-primary);font-weight:500}.user-name{font-size:12px;color:var(--color-text-muted)}.access-badge{display:inline-block;padding:4px 10px;border-radius:16px;font-size:12px;font-weight:600}.access-badge.owner{background-color:var(--color-accent-light);color:var(--color-accent-primary)}.reviewer-actions{display:flex;align-items:center;gap:12px}.status-badge{display:inline-block;padding:4px 10px;border-radius:16px;font-size:12px;font-weight:500}.status-badge.pending{background-color:#f59e0b26;color:var(--color-warning)}.status-badge.accepted{background-color:#10b98126;color:var(--color-success)}.share-button{padding:10px 18px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:1px solid}.share-button:disabled{opacity:.5;cursor:not-allowed}.share-button.primary{background-color:var(--color-accent-primary);color:var(--color-text-inverse);border-color:var(--color-accent-primary)}.share-button.primary:hover:not(:disabled){background-color:var(--color-accent-hover);border-color:var(--color-accent-hover)}.share-button.secondary{background-color:var(--color-bg-elevated);color:var(--color-text-primary);border-color:var(--color-border-primary)}.share-button.secondary:hover:not(:disabled){background-color:var(--color-bg-hover);border-color:var(--color-text-muted)}.share-button.danger{background-color:var(--color-bg-elevated);color:var(--color-error);border-color:var(--color-error)}.share-button.danger:hover:not(:disabled){background-color:#ef44441a}.share-button.small{padding:4px 10px;font-size:12px}.no-reviewers{color:var(--color-text-muted);font-size:13px;text-align:center;padding:24px 0;font-style:italic}.reviewers-list{margin-top:12px}.share-dialog-footer{padding:16px 24px;border-top:1px solid var(--color-border-primary);display:flex;justify-content:flex-end}.editor-toolbar{display:flex;align-items:center;padding:8px 16px;border-bottom:1px solid var(--color-border-primary);background-color:var(--color-toolbar-bg);gap:8px;font-family:system-ui,-apple-system,sans-serif;position:sticky;top:0;z-index:100;box-shadow:var(--shadow-sm);writing-mode:horizontal-tb!important;text-orientation:mixed!important}.toolbar-group{display:flex;align-items:center;gap:4px}.toolbar-button{display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:6px 8px;border:1px solid transparent;border-radius:4px;background-color:transparent;color:var(--color-text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.toolbar-button:hover:not(.disabled){background-color:var(--color-toolbar-button-hover);border-color:var(--color-border-primary)}.toolbar-button.active{background-color:var(--color-accent-primary);color:var(--color-text-inverse);border-color:var(--color-accent-hover)}.toolbar-button.active:hover{background-color:var(--color-accent-hover)}.toolbar-button.disabled{opacity:.5;cursor:not-allowed}.toolbar-button:focus{outline:2px solid var(--color-accent-primary);outline-offset:2px}.toolbar-separator{width:1px;height:24px;background-color:var(--color-border-secondary);margin:0 4px}.toolbar-spacer{flex:1}.character-limit-control{display:flex;align-items:center;gap:8px}.character-limit-label{font-size:14px;font-weight:500;color:var(--color-text-primary);white-space:nowrap}.character-limit-select{height:32px;padding:4px 8px;border:1px solid var(--color-border-primary);border-radius:4px;background-color:var(--color-bg-elevated);color:var(--color-text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;min-width:80px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.character-limit-select:hover{border-color:var(--color-text-muted)}.character-limit-select:focus{outline:2px solid var(--color-accent-primary);outline-offset:2px;border-color:var(--color-accent-primary)}.document-title-display{font-size:14px;color:var(--color-text-muted);padding:0 8px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.modification-indicator{display:flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--color-warning);font-size:12px;font-weight:700}@media(max-width:768px){.editor-toolbar{padding:6px 12px;gap:6px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.editor-toolbar::-webkit-scrollbar{display:none}.toolbar-button{min-width:28px;height:28px;padding:4px 6px;font-size:12px}.toolbar-group{gap:2px}.toolbar-separator{margin:0 2px}.character-limit-control{gap:4px}.character-limit-label{font-size:12px}.character-limit-select{height:28px;padding:2px 6px;font-size:12px;min-width:70px}.document-title-display{font-size:12px;max-width:120px}.save-status{font-size:.625rem;padding:2px 6px;margin-right:4px}.modification-indicator{width:12px;height:12px;font-size:10px}}.sync-status{display:flex;align-items:center;gap:4px;padding:4px 12px;border-radius:4px;font-size:12px;font-weight:500;white-space:nowrap;transition:all .3s ease}.sync-status-synced{background-color:#10b98126;color:var(--color-success)}.sync-status-modified{background-color:#f59e0b26!important;color:var(--color-warning)!important}.sync-status-syncing{background-color:#3b82f626;color:var(--color-info);animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.sync-status-checking{background-color:#f59e0b26;color:var(--color-warning)}.sync-status-offline{background-color:#ef444426;color:var(--color-error)}.sync-status-error{background-color:#ef444433;color:var(--color-error);font-weight:600}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.page-lines-control{display:flex;align-items:center;gap:8px}.page-lines-label{font-size:14px;font-weight:500;color:var(--color-text-primary);white-space:nowrap}.page-lines-select{height:32px;padding:4px 8px;border:1px solid var(--color-border-primary);border-radius:4px;background-color:var(--color-bg-elevated);color:var(--color-text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;min-width:80px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.page-lines-select:hover{border-color:var(--color-text-muted)}.page-lines-select:focus{outline:2px solid var(--color-accent-primary);outline-offset:2px;border-color:var(--color-accent-primary)}@media(max-width:768px){.page-lines-control{gap:4px}.page-lines-label{font-size:12px}.page-lines-select{height:28px;padding:2px 6px;font-size:12px;min-width:70px}}.search-replace-panel{position:fixed;top:115px;left:0;right:0;width:100%;height:auto;background-color:var(--color-toolbar-bg);border-bottom:1px solid var(--color-border-primary);box-shadow:var(--shadow-sm);z-index:100;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.search-replace-content{display:flex;align-items:center;gap:20px;padding:8px 24px;flex-wrap:wrap;position:relative}.search-replace-close{position:absolute;right:16px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:none;color:var(--color-text-muted);cursor:pointer;border-radius:4px;transition:all .15s ease;font-size:16px;font-weight:700}.search-replace-close:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.search-group{display:flex;align-items:center;gap:8px;margin-bottom:0}.search-group.search-field{flex:2;min-width:300px}.search-group.replace-field{flex:2;min-width:250px}.search-label{font-size:14px;font-weight:500;color:var(--color-text-primary);white-space:nowrap;min-width:40px}.search-input-container{display:flex;align-items:center;gap:4px;flex:1}.search-input{flex:1;height:32px;padding:6px 8px;border:1px solid var(--color-border-primary);border-radius:4px;font-size:14px;font-family:system-ui,sans-serif;transition:all .15s ease;min-width:150px;background-color:var(--color-bg-elevated);color:var(--color-text-primary)}.search-input:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 2px var(--color-accent-light)}.search-nav-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid transparent;border-radius:4px;background-color:transparent;color:var(--color-text-primary);cursor:pointer;font-size:14px;font-weight:500;transition:all .15s ease;-webkit-user-select:none;user-select:none}.search-nav-button:hover:not(:disabled){background-color:var(--color-bg-hover);border-color:var(--color-border-primary)}.search-nav-button:disabled{opacity:.5;cursor:not-allowed}.replace-actions{display:flex;gap:8px;margin-top:0}.replace-button{height:32px;padding:6px 8px;border:1px solid transparent;border-radius:4px;background-color:transparent;color:var(--color-text-primary);cursor:pointer;font-size:14px;font-weight:500;transition:all .15s ease;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;-webkit-user-select:none;user-select:none}.replace-button:hover:not(:disabled){background-color:var(--color-bg-hover);border-color:var(--color-border-primary)}.replace-button:disabled{opacity:.5;cursor:not-allowed}.replace-button.primary{background-color:var(--color-accent-primary);border-color:var(--color-accent-primary);color:var(--color-text-inverse)}.replace-button.primary:hover:not(:disabled){background-color:var(--color-accent-hover);border-color:var(--color-accent-hover)}.replace-button:focus{outline:2px solid var(--color-accent-primary);outline-offset:2px}.search-options{display:flex;gap:16px;margin:0;padding-top:0;border-top:none}.search-option{display:flex;align-items:center;gap:6px;margin-bottom:0}.search-checkbox{width:16px;height:16px;cursor:pointer;accent-color:var(--color-accent-primary)}.search-option-label{font-size:14px;color:var(--color-text-primary);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;font-weight:500}.search-results{margin-top:0;padding-top:0;border-top:none;min-width:120px}.search-results-text{font-size:.75rem;color:var(--color-text-muted);text-align:center;white-space:nowrap}.search-results-text.no-results{color:var(--color-error)}.search-results-text.has-results{color:var(--color-success)}@media(max-width:1200px){.search-replace-content{gap:16px}.search-group.search-field{min-width:250px}.search-group.replace-field{min-width:200px}}@media(max-width:992px){.search-replace-content{flex-direction:column;align-items:stretch;gap:12px}.search-group{width:100%}.search-group.search-field,.search-group.replace-field{min-width:auto}.search-input-container{flex:1}.replace-actions{justify-content:flex-end}.search-options{justify-content:center}.search-results{text-align:center}}@media(max-width:768px){.search-replace-panel{top:60px}.search-replace-content{padding:6px 48px 6px 12px;gap:6px}.search-replace-close{right:12px;width:20px;height:20px;font-size:14px}.search-input{height:28px;font-size:12px;min-width:120px}.search-nav-button{width:28px;height:28px;font-size:12px}.replace-button{height:28px;padding:4px 6px;font-size:12px}.search-label{font-size:12px;min-width:35px}.search-option-label{font-size:12px}}.search-replace-panel{animation:slideDown .2s ease-out}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.search-replace-panel{isolation:isolate}.search-replace-panel *{writing-mode:horizontal-tb!important;text-orientation:mixed!important}.confirm-dialog-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1100;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.confirm-dialog{background-color:var(--color-bg-elevated);border-radius:8px;box-shadow:var(--shadow-lg);min-width:320px;max-width:480px;writing-mode:horizontal-tb!important;text-orientation:mixed!important;animation:confirmDialogFadeIn .2s ease-out}@keyframes confirmDialogFadeIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.confirm-dialog-header{padding:16px 20px 12px;border-bottom:1px solid var(--color-border-primary);writing-mode:horizontal-tb!important;text-orientation:mixed!important}.confirm-dialog-header h4{margin:0;font-size:16px;font-weight:600;color:var(--color-text-primary);writing-mode:horizontal-tb!important;text-orientation:mixed!important}.confirm-dialog-content{padding:20px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.confirm-dialog-content p{margin:0 0 12px;font-size:14px;color:var(--color-text-primary);line-height:1.5;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.confirm-dialog-content p:last-child{margin-bottom:0}.confirm-dialog-note{font-size:12px!important;color:var(--color-text-muted)!important;font-style:italic}.confirm-dialog-actions{display:flex;gap:12px;padding:16px 20px 20px;justify-content:flex-end;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.confirm-dialog-button{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;border:1px solid;min-width:80px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.confirm-dialog-button.cancel{background-color:var(--color-bg-elevated);color:var(--color-text-primary);border-color:var(--color-border-primary)}.confirm-dialog-button.cancel:hover{background-color:var(--color-bg-hover);border-color:var(--color-text-muted)}.confirm-dialog-button.confirm{background-color:#dc2626;color:#fff;border-color:#dc2626}.confirm-dialog-button.confirm:hover{background-color:#b91c1c;border-color:#b91c1c}.confirm-dialog-button:focus{outline:2px solid var(--color-accent-primary);outline-offset:2px}.character-count-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1200;writing-mode:horizontal-tb!important;text-orientation:mixed!important;animation:fadeIn .2s ease-out}.character-count-modal{background-color:var(--color-bg-elevated);border-radius:12px;box-shadow:var(--shadow-lg);min-width:400px;max-width:600px;width:90%;max-height:80vh;overflow:hidden;writing-mode:horizontal-tb!important;text-orientation:mixed!important;animation:slideUp .3s ease-out}.character-count-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--color-border-primary);background-color:var(--color-bg-secondary);writing-mode:horizontal-tb!important;text-orientation:mixed!important}.character-count-modal-title{margin:0;font-size:18px;font-weight:600;color:var(--color-text-primary);font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.character-count-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;color:var(--color-text-muted);cursor:pointer;border-radius:6px;transition:all .15s ease;font-size:18px;font-weight:700;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.character-count-modal-close:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.character-count-modal-close:focus{outline:2px solid var(--color-accent-primary);outline-offset:2px}.character-count-modal-content{padding:24px;writing-mode:horizontal-tb!important;text-orientation:mixed!important;min-height:200px}.character-count-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;gap:16px}.character-count-spinner{width:40px;height:40px;border:3px solid var(--color-border-primary);border-top-color:var(--color-accent-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.character-count-loading-text{font-size:14px;color:var(--color-text-muted);font-family:system-ui,-apple-system,sans-serif}.character-count-stats{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:32px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.character-count-stats-3col{grid-template-columns:1fr 1fr 1fr;gap:16px}.character-count-stat{text-align:center;padding:20px 12px;background-color:var(--color-bg-secondary);border-radius:8px;border:1px solid var(--color-border-primary);writing-mode:horizontal-tb!important;text-orientation:mixed!important}.character-count-stat-label{font-size:13px;font-weight:500;color:var(--color-text-muted);margin-bottom:8px;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.character-count-stat-value{font-size:24px;font-weight:700;color:var(--color-text-primary);margin-bottom:4px;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.character-count-stat-unit{font-size:14px;font-weight:500;color:var(--color-text-secondary);margin-bottom:4px;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.character-count-stat-note{font-size:11px;color:var(--color-text-muted);font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.character-count-details{background-color:var(--color-bg-secondary);border-radius:6px;padding:16px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.character-count-detail-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:14px;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.character-count-detail-item:last-child{margin-bottom:0}.character-count-detail-label{color:var(--color-text-muted);font-weight:500;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.character-count-detail-value{color:var(--color-text-primary);font-weight:600;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.character-count-modal-footer{padding:16px 24px 20px;border-top:1px solid var(--color-border-primary);display:flex;justify-content:flex-end;background-color:var(--color-bg-secondary);writing-mode:horizontal-tb!important;text-orientation:mixed!important}.character-count-modal-button{padding:10px 20px;background-color:var(--color-accent-primary);color:var(--color-text-inverse);border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.character-count-modal-button:hover{background-color:var(--color-accent-hover)}.character-count-modal-button:focus{outline:2px solid var(--color-accent-primary);outline-offset:2px}@media(max-width:768px){.character-count-modal{min-width:320px;width:95%;margin:20px}.character-count-modal-header{padding:16px 20px 12px}.character-count-modal-title{font-size:16px}.character-count-modal-content{padding:20px;min-height:160px}.character-count-stats{grid-template-columns:1fr;gap:16px;margin-bottom:24px}.character-count-stats-3col{grid-template-columns:1fr}.character-count-stat{padding:16px}.character-count-stat-value{font-size:24px}.character-count-detail-item{flex-direction:column;align-items:flex-start;gap:4px}.character-count-modal-footer{padding:12px 20px 16px}.character-count-loading{padding:32px 16px}}@media(max-width:600px)and (min-width:481px){.character-count-stats-3col{grid-template-columns:1fr 1fr}.character-count-stats-3col .character-count-stat:last-child{grid-column:1 / -1}}@media(prefers-reduced-motion:reduce){.character-count-modal-overlay,.character-count-modal{animation:none}.character-count-spinner{animation:none;border-top-color:var(--color-accent-primary);border-right-color:var(--color-accent-primary)}}@media print{.character-count-modal-overlay{display:none}}.settings-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1200;writing-mode:horizontal-tb!important;text-orientation:mixed!important;animation:fadeIn .2s ease-out}.settings-modal{background-color:var(--color-bg-elevated);border-radius:12px;box-shadow:var(--shadow-lg);min-width:480px;max-width:600px;width:90%;max-height:80vh;overflow:hidden;writing-mode:horizontal-tb!important;text-orientation:mixed!important;animation:slideUp .3s ease-out}.settings-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--color-border-primary);background-color:var(--color-bg-secondary);writing-mode:horizontal-tb!important;text-orientation:mixed!important}.settings-modal-title{margin:0;font-size:18px;font-weight:600;color:var(--color-text-primary);font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.settings-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;color:var(--color-text-muted);cursor:pointer;border-radius:6px;transition:all .15s ease;font-size:18px;font-weight:700;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.settings-modal-close:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.settings-modal-close:focus{outline:2px solid var(--color-accent-primary);outline-offset:2px}.settings-modal-content{padding:24px;writing-mode:horizontal-tb!important;text-orientation:mixed!important;max-height:60vh;overflow-y:auto}.settings-section{margin-bottom:32px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.settings-section:last-child{margin-bottom:0}.settings-section-title{font-size:16px;font-weight:600;color:var(--color-text-primary);margin-bottom:16px;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.settings-option{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--color-border-secondary);writing-mode:horizontal-tb!important;text-orientation:mixed!important}.settings-option:last-child{border-bottom:none}.settings-option-info{flex:1;margin-right:16px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.settings-option-label{font-size:14px;font-weight:500;color:var(--color-text-primary);margin-bottom:4px;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.settings-option-description{font-size:12px;color:var(--color-text-muted);line-height:1.4;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.settings-option-control{flex-shrink:0;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.radio-group{display:flex;flex-direction:column;gap:8px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.radio-option{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--color-border-primary);border-radius:6px;cursor:pointer;transition:all .15s ease;background-color:var(--color-bg-elevated);writing-mode:horizontal-tb!important;text-orientation:mixed!important}.radio-option:hover{border-color:var(--color-accent-primary);background-color:var(--color-bg-hover)}.radio-option.selected{border-color:var(--color-accent-primary);background-color:var(--color-accent-light)}.radio-option input[type=radio]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-accent-primary)}.radio-option-content{flex:1;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.radio-option-label{font-size:14px;font-weight:500;color:var(--color-text-primary);margin-bottom:2px;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.radio-option-description{font-size:12px;color:var(--color-text-muted);line-height:1.3;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.settings-modal-footer{padding:16px 24px 20px;border-top:1px solid var(--color-border-primary);display:flex;justify-content:space-between;align-items:center;background-color:var(--color-bg-secondary);writing-mode:horizontal-tb!important;text-orientation:mixed!important}.settings-modal-actions{display:flex;gap:12px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.settings-modal-button{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;border:1px solid;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.settings-modal-button.secondary{background-color:var(--color-bg-elevated);color:var(--color-text-primary);border-color:var(--color-border-primary)}.settings-modal-button.secondary:hover{background-color:var(--color-bg-hover);border-color:var(--color-text-muted)}.settings-modal-button.primary{background-color:var(--color-accent-primary);color:var(--color-text-inverse);border-color:var(--color-accent-primary)}.settings-modal-button.primary:hover{background-color:var(--color-accent-hover);border-color:var(--color-accent-hover)}.settings-modal-button:focus{outline:2px solid var(--color-accent-primary);outline-offset:2px}.settings-reset-button{padding:8px 16px;background-color:transparent;color:var(--color-error);border:1px solid var(--color-error);border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.settings-reset-button:hover{background-color:var(--color-error);color:#fff}@media(max-width:768px){.settings-modal{min-width:320px;width:95%;margin:20px}.settings-modal-header{padding:16px 20px 12px}.settings-modal-title{font-size:16px}.settings-modal-content{padding:20px}.settings-option{flex-direction:column;align-items:flex-start;gap:12px}.settings-option-info{margin-right:0}.radio-group{width:100%}.settings-modal-footer{padding:12px 20px 16px;flex-direction:column;gap:12px}.settings-modal-actions{width:100%;justify-content:flex-end}}@media(prefers-reduced-motion:reduce){.settings-modal-overlay,.settings-modal{animation:none}}@media print{.settings-modal-overlay{display:none}}.save-document-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1200;animation:fadeIn .2s ease-out}.save-document-modal-overlay .save-document-modal{writing-mode:horizontal-tb!important;text-orientation:mixed!important}.save-document-modal{background-color:var(--color-bg-elevated);border-radius:12px;box-shadow:var(--shadow-lg);min-width:400px;max-width:500px;width:90%;animation:slideUp .3s ease-out}.save-document-modal *{writing-mode:horizontal-tb!important;text-orientation:mixed!important}@keyframes slideUp{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.save-document-modal-header{padding:20px 24px 16px;border-bottom:1px solid var(--color-border-primary);background-color:var(--color-bg-secondary)}.save-document-modal-title{margin:0;font-size:18px;font-weight:600;color:var(--color-text-primary);font-family:system-ui,-apple-system,sans-serif}.save-document-modal-content{padding:24px}.save-document-form label{display:block;font-size:14px;font-weight:600;color:var(--color-text-muted);margin-bottom:8px;font-family:system-ui,-apple-system,sans-serif}.save-document-form input{width:100%;padding:12px 16px;border:2px solid var(--color-border-primary);border-radius:6px;font-size:16px;transition:all .2s ease;font-family:system-ui,-apple-system,sans-serif;box-sizing:border-box;background-color:var(--color-bg-elevated);color:var(--color-text-primary)}.save-document-form input:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 3px var(--color-accent-light)}.save-document-form input.error{border-color:var(--color-error)}.field-error{display:block;color:var(--color-error);font-size:12px;margin-top:4px;font-family:system-ui,-apple-system,sans-serif}.save-document-hint{margin-top:8px;font-size:12px;color:var(--color-text-muted);font-family:system-ui,-apple-system,sans-serif}.save-document-modal-footer{padding:16px 24px 20px;border-top:1px solid var(--color-border-primary);display:flex;justify-content:flex-end;gap:12px;background-color:var(--color-bg-secondary)}.save-document-modal-button{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;border:1px solid;font-family:system-ui,-apple-system,sans-serif}.save-document-modal-button.secondary{background-color:var(--color-bg-elevated);color:var(--color-text-primary);border-color:var(--color-border-primary)}.save-document-modal-button.secondary:hover{background-color:var(--color-bg-hover);border-color:var(--color-text-muted)}.save-document-modal-button.primary{background-color:var(--color-accent-primary);color:var(--color-text-inverse);border-color:var(--color-accent-primary)}.save-document-modal-button.primary:hover:not(:disabled){background-color:var(--color-accent-hover);border-color:var(--color-accent-hover)}.save-document-modal-button.primary:disabled{opacity:.5;cursor:not-allowed}.save-document-modal-button:focus{outline:2px solid var(--color-accent-primary);outline-offset:2px}@media(max-width:768px){.save-document-modal{min-width:320px;width:95%;margin:20px}.save-document-modal-header{padding:16px 20px 12px}.save-document-modal-title{font-size:16px}.save-document-modal-content{padding:20px}.save-document-modal-footer{padding:12px 20px 16px}}.comment-highlight{background-color:var(--color-comment-highlight, rgba(255, 235, 59, .3));cursor:pointer;position:relative;transition:background-color .2s ease}.comment-highlight:hover{background-color:var(--color-comment-highlight-hover, rgba(255, 235, 59, .5))}.comment-highlight.status-pending{background-color:var(--color-status-pending-bg, rgba(255, 107, 107, .2))}.comment-highlight.status-inProgress{background-color:var(--color-status-inprogress-bg, rgba(255, 212, 59, .2))}.comment-highlight.status-completed{background-color:var(--color-status-completed-bg, rgba(81, 207, 102, .2))}.comment-modal-overlay{position:fixed;inset:0;background-color:var(--color-overlay, rgba(0, 0, 0, .5));display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.comment-modal{background:var(--color-bg-elevated);border-radius:8px;box-shadow:var(--shadow-lg);width:90%;max-width:600px;max-height:80vh;overflow-y:auto;animation:slideUp .3s ease}.comment-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--color-border-primary);background-color:var(--color-bg-secondary)}.comment-modal-header h3{margin:0;font-size:1.25rem;color:var(--color-text-primary)}.comment-modal-close{background:none;border:none;font-size:1.5rem;color:var(--color-text-muted);cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.comment-modal-close:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.comment-modal-selected-text{padding:15px 20px;border-bottom:1px solid var(--color-border-primary)}.comment-modal-selected-text label{display:block;font-size:.875rem;color:var(--color-text-muted);margin-bottom:8px}.selected-text-preview{background-color:var(--color-bg-secondary);padding:12px;border-radius:4px;font-size:.95rem;line-height:1.5;color:var(--color-text-primary);max-height:100px;overflow-y:auto;border:1px solid var(--color-border-primary)}.comment-status-section{padding:15px 20px;border-bottom:1px solid var(--color-border-primary)}.comment-status-section label{display:block;font-size:.875rem;color:var(--color-text-muted);margin-bottom:10px}.comment-status-buttons{display:flex;gap:10px}.status-button{padding:8px 16px;border:1px solid var(--color-border-primary);border-radius:20px;font-size:.875rem;cursor:pointer;transition:all .2s ease;color:var(--color-text-primary);background-color:var(--color-bg-secondary);font-weight:500}.status-button:hover{transform:translateY(-1px);box-shadow:var(--shadow-md);background-color:var(--color-bg-tertiary)}.status-button.active{color:var(--color-text-inverse);border-color:transparent}.status-button.active.status-pending{background-color:var(--color-status-pending, #ff6b6b)}.status-button.active.status-inProgress{background-color:var(--color-status-inprogress, #ffd43b);color:var(--color-text-primary)}.status-button.active.status-completed{background-color:var(--color-status-completed, #51cf66)}.comment-main{padding:15px 20px;border-bottom:1px solid var(--color-border-primary)}.comment-main label{display:block;font-size:.875rem;color:var(--color-text-muted);margin-bottom:8px}.comment-text{font-size:1rem;line-height:1.6;color:var(--color-text-primary);margin-bottom:8px}.comment-meta{font-size:.875rem;color:var(--color-text-muted)}.comment-replies{padding:15px 20px;border-bottom:1px solid var(--color-border-primary)}.comment-replies label{display:block;font-size:.875rem;color:var(--color-text-muted);margin-bottom:10px}.replies-list{display:flex;flex-direction:column;gap:10px}.reply-item{padding:10px;border-radius:6px;background-color:var(--color-bg-secondary);border-left:3px solid var(--color-border-primary)}.reply-item.author{background-color:var(--color-accent-light);border-left-color:var(--color-info)}.reply-item.reviewer{background-color:var(--color-reply-reviewer-bg, rgba(251, 191, 36, .1));border-left-color:var(--color-warning)}.reply-text{font-size:.95rem;line-height:1.5;color:var(--color-text-primary);margin-bottom:5px}.reply-meta{font-size:.8rem;color:var(--color-text-muted)}.comment-reply-input{padding:15px 20px;border-bottom:1px solid var(--color-border-primary)}.comment-reply-input textarea{width:100%;padding:10px;border:1px solid var(--color-border-primary);background-color:var(--color-bg-secondary);color:var(--color-text-primary);border-radius:4px;font-size:.95rem;resize:vertical;font-family:inherit}.comment-reply-input textarea:focus{outline:none;border-color:var(--color-accent-primary);background-color:var(--color-bg-primary)}.comment-reply-input textarea::placeholder{color:var(--color-text-placeholder)}.comment-length-indicator{margin-top:8px;font-size:.8rem;text-align:right;color:var(--color-text-muted)}.comment-length-indicator.over-limit{color:var(--color-danger, #dc2626);font-weight:600}.reply-actions{display:flex;gap:10px;margin-top:10px}.comment-input-section{padding:20px}.comment-input-section label{display:block;font-size:.875rem;color:var(--color-text-muted);margin-bottom:8px}.comment-input-section textarea{width:100%;padding:12px;border:1px solid var(--color-border-primary);background-color:var(--color-bg-secondary);color:var(--color-text-primary);border-radius:4px;font-size:1rem;resize:vertical;font-family:inherit}.comment-input-section textarea:focus{outline:none;border-color:var(--color-accent-primary);background-color:var(--color-bg-primary)}.comment-input-section textarea::placeholder{color:var(--color-text-placeholder)}.comment-modal-footer{padding:15px 20px;display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--color-border-primary);background-color:var(--color-bg-secondary)}.comment-actions{padding:15px 20px;display:flex;justify-content:flex-end;background-color:var(--color-bg-primary)}.btn-primary,.btn-secondary,.btn-danger,.btn-reply{padding:8px 20px;border:none;border-radius:4px;font-size:.95rem;cursor:pointer;transition:all .2s ease;font-weight:500}.btn-primary{background-color:var(--color-accent-primary);color:var(--color-text-inverse)}.btn-primary:hover{background-color:var(--color-accent-hover)}.btn-primary:disabled,.btn-danger:disabled,.btn-reply:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background-color:var(--color-bg-tertiary);color:var(--color-text-primary)}.btn-secondary:hover{background-color:var(--color-bg-hover)}.btn-danger{background-color:var(--color-error);color:var(--color-text-inverse)}.btn-danger:hover{opacity:.9}.btn-reply{background-color:var(--color-info);color:var(--color-text-inverse);width:100%;margin:15px 20px;width:calc(100% - 40px)}.btn-reply:hover{opacity:.9}.comment-list-panel{position:fixed;top:0;left:0;width:320px;height:100vh;background:var(--color-bg-primary);box-shadow:var(--shadow-lg);z-index:999;display:flex;flex-direction:column;transform:translate(0);animation:slideInLeft .3s ease;color:var(--color-text-primary)}.comment-list-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--color-border-primary);background-color:var(--color-bg-secondary)}.comment-list-header h3{margin:0;font-size:1.125rem;color:var(--color-text-primary)}.comment-list-close{background:none;border:none;font-size:1.5rem;color:var(--color-text-muted);cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.comment-list-close:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.comment-list-stats{padding:15px 20px;background-color:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-primary);display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat-item{display:flex;align-items:center;gap:5px}.stat-item:first-child{grid-column:1 / -1;padding-bottom:10px;border-bottom:1px solid var(--color-border-primary)}.stat-indicator{width:12px;height:12px;border-radius:50%}.stat-indicator.status-pending{background-color:var(--color-status-pending, #ff6b6b)}.stat-indicator.status-inProgress{background-color:var(--color-status-inprogress, #ffd43b)}.stat-indicator.status-completed{background-color:var(--color-status-completed, #51cf66)}.stat-label{font-size:.875rem;color:var(--color-text-muted)}.stat-value{font-size:.875rem;font-weight:600;color:var(--color-text-primary)}.comment-list-content{flex:1;overflow-y:auto;padding:20px;background-color:var(--color-bg-primary)}.comment-list-empty{text-align:center;padding:40px 20px;color:var(--color-text-muted)}.comment-groups{display:flex;flex-direction:column;gap:20px}.comment-group-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.status-badge{padding:4px 12px;border-radius:12px;font-size:.8rem;color:var(--color-text-inverse);font-weight:500}.status-badge.status-pending{background-color:var(--color-status-pending, #ff6b6b)}.status-badge.status-inProgress{background-color:var(--color-status-inprogress, #ffd43b);color:var(--color-text-primary)}.status-badge.status-completed{background-color:var(--color-status-completed, #51cf66)}.comment-count{font-size:.875rem;color:var(--color-text-muted)}.comment-group-items{display:flex;flex-direction:column;gap:8px}.comment-list-item{padding:12px;background-color:var(--color-bg-elevated);border-radius:6px;cursor:pointer;transition:all .2s ease;border:1px solid var(--color-border-primary)}.comment-list-item:hover{background-color:var(--color-bg-secondary);border-color:var(--color-border-secondary);box-shadow:var(--shadow-sm)}.comment-item-text{font-size:.875rem;color:var(--color-text-primary);margin-bottom:6px;font-weight:500;overflow:hidden;text-overflow:ellipsis}.comment-item-comment{font-size:.875rem;color:var(--color-text-muted);margin-bottom:8px;line-height:1.4}.comment-item-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.comment-author{font-size:.75rem;color:var(--color-text-muted);font-weight:500}.comment-replies-count{font-size:.75rem;color:var(--color-info);background-color:var(--color-accent-light);padding:2px 8px;border-radius:10px}.comment-item-date{font-size:.75rem;color:var(--color-text-muted)}.comment-list-content::-webkit-scrollbar,.comment-modal::-webkit-scrollbar,.selected-text-preview::-webkit-scrollbar{width:8px;height:8px}.comment-list-content::-webkit-scrollbar-track,.comment-modal::-webkit-scrollbar-track,.selected-text-preview::-webkit-scrollbar-track{background:var(--color-bg-primary);border-radius:4px}.comment-list-content::-webkit-scrollbar-thumb,.comment-modal::-webkit-scrollbar-thumb,.selected-text-preview::-webkit-scrollbar-thumb{background:var(--color-border-primary);border-radius:4px}.comment-list-content::-webkit-scrollbar-thumb:hover,.comment-modal::-webkit-scrollbar-thumb:hover,.selected-text-preview::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}.editor-page{display:flex;flex-direction:column;height:100vh;width:100vw;min-width:1200px;max-width:100%;overflow-x:auto;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:var(--color-bg-primary);writing-mode:horizontal-tb!important;text-orientation:mixed!important}.editor-main{flex:1;overflow:hidden;position:relative;width:100%;max-width:100%;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.document-limit-banner{padding:6px 20px;font-size:.85rem;color:var(--color-text-muted);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-primary);text-align:right}.document-limit-banner.over-limit{color:var(--color-danger, #dc2626);font-weight:600}.editor-header-info{display:flex;align-items:center;gap:16px;font-size:.875rem;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.character-count{color:var(--color-text-muted);font-weight:500;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.save-status{padding:4px 8px;border-radius:4px;font-weight:500;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.save-status.saved{background-color:var(--color-success);color:var(--color-text-inverse)}.save-status.modified{background-color:var(--color-warning);color:var(--color-text-inverse)}.editor-footer{padding:8px 24px;background-color:var(--color-bg-secondary);border-top:1px solid var(--color-border-primary);width:100%;flex-shrink:0;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.footer-info{display:flex;align-items:center;gap:12px;font-size:.75rem;color:var(--color-text-muted);font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.footer-info span:not(:last-child):not(:nth-child(odd)){color:var(--color-border-primary)}@media(max-width:768px){.editor-page{min-width:auto}.editor-header-info{gap:12px;font-size:.75rem}.editor-footer{padding:6px 16px}.footer-info{gap:8px;font-size:.625rem;flex-wrap:wrap}.footer-info span:nth-child(n+10){display:none}}.loading{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-muted);font-size:1rem;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.error{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-error);font-size:1rem;text-align:center;padding:24px;font-family:system-ui,-apple-system,sans-serif;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.editor-main{animation:fadeIn .3s ease-out}@media print{.editor-footer{display:none}.editor-main{height:auto}.vertical-editor{padding:20mm;writing-mode:vertical-rl;font-size:12pt;line-height:1.8}}.export-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.export-modal{background:var(--color-bg-elevated);border-radius:12px;box-shadow:var(--shadow-lg);width:90%;max-width:500px;max-height:85vh;display:flex;flex-direction:column;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.export-modal-header{padding:20px 24px;border-bottom:1px solid var(--color-border-primary);display:flex;justify-content:space-between;align-items:center}.export-modal-header h3{margin:0;font-size:18px;font-weight:600;color:var(--color-text-primary)}.export-modal-close-button{background:none;border:none;font-size:24px;color:var(--color-text-muted);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.export-modal-close-button:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.export-modal-content{padding:24px;flex:1;overflow-y:auto}.export-warning{display:flex;align-items:center;gap:8px;padding:12px 16px;background-color:#f59e0b1a;border:1px solid var(--color-warning);border-radius:8px;margin-bottom:20px}.export-warning .warning-icon{font-size:18px}.export-warning .warning-text{color:var(--color-warning);font-size:14px;font-weight:500}.export-section{margin-top:16px}.export-section p{color:var(--color-text-muted);font-size:14px;margin:0 0 16px}.export-buttons{display:flex;flex-direction:column;gap:12px}.export-button{padding:12px 20px;border:1px solid var(--color-border-primary);border-radius:8px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s;background-color:var(--color-bg-secondary);color:var(--color-text-primary);writing-mode:horizontal-tb!important;text-orientation:mixed!important}.export-button:hover:not(:disabled){background-color:var(--color-bg-hover);border-color:var(--color-text-muted)}.export-button:disabled{opacity:.5;cursor:not-allowed}.export-message{margin-top:16px;padding:12px 16px;border-radius:8px;font-size:14px;text-align:center}.export-message.info{background-color:#10b9811a;color:var(--color-success);border:1px solid var(--color-success)}.export-message.error{background-color:#ef44441a;color:var(--color-error);border:1px solid var(--color-error)}.toast-container{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:12px;max-width:400px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.toast{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:8px;box-shadow:var(--shadow-md);animation:toastSlideIn .3s ease-out;writing-mode:horizontal-tb!important;text-orientation:mixed!important}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast-success{background-color:#10b98126;border:1px solid var(--color-success);color:var(--color-success)}.toast-error{background-color:#ef444426;border:1px solid var(--color-error);color:var(--color-error)}.toast-warning{background-color:#f59e0b26;border:1px solid var(--color-warning);color:var(--color-warning)}.toast-info{background-color:#3b82f626;border:1px solid var(--color-info);color:var(--color-info)}.toast-icon{font-size:18px;flex-shrink:0}.toast-message{flex:1;font-size:14px;font-family:system-ui,-apple-system,sans-serif;line-height:1.5}.toast-close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;color:inherit;opacity:.6;cursor:pointer;border-radius:4px;font-size:16px;font-weight:700;transition:opacity .15s ease,background-color .15s ease;flex-shrink:0}.toast-close:hover{opacity:1;background-color:#0000001a}@media(max-width:480px){.toast-container{bottom:16px;right:16px;left:16px;max-width:none}.toast{padding:12px 14px}.toast-message{font-size:13px}}@media(prefers-reduced-motion:reduce){.toast{animation:none}}*{margin:0;padding:0;box-sizing:border-box}.app{display:flex;flex-direction:column;height:100vh;width:100vw;min-width:1200px;max-width:100%;overflow-x:auto;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:#111827}.app-header{display:flex;justify-content:space-between;align-items:center;padding:12px 24px;background-color:#1f2937;border-bottom:1px solid #374151;box-shadow:0 1px 3px #0000001a;z-index:200;width:100%;flex-shrink:0}.app-header h1{font-size:1.5rem;font-weight:600;color:#f9fafb;margin:0}.header-info{display:flex;align-items:center;gap:16px;font-size:.875rem}.character-count{color:#6b7280;font-weight:500}.save-status{padding:4px 8px;border-radius:4px;font-weight:500;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.save-status.saved{background-color:#d1fae5;color:#065f46}.save-status.modified{background-color:#fef3c7;color:#92400e}.app-main{flex:1;overflow:hidden;position:relative;width:100%;max-width:100%}.app-footer{padding:8px 24px;background-color:#f9fafb;border-top:1px solid #e5e7eb;width:100%;flex-shrink:0}.footer-info{display:flex;align-items:center;gap:12px;font-size:.75rem;color:#6b7280}.footer-info span:not(:last-child):not(:nth-child(odd)){color:#d1d5db}@media(max-width:768px){.app-header{padding:8px 16px}.app-header h1{font-size:1.25rem}.header-info{gap:12px;font-size:.75rem}.app-footer{padding:6px 16px}.footer-info{gap:8px;font-size:.625rem}}@media(prefers-color-scheme:dark){.app{background-color:#111827}.app-header{background-color:#1f2937;border-bottom-color:#374151}.app-header h1{color:#f9fafb}.character-count{color:#9ca3af}.save-status.saved{background-color:#064e3b;color:#a7f3d0}.save-status.modified{background-color:#78350f;color:#fcd34d}.app-footer{background-color:#1f2937;border-top-color:#374151}.footer-info{color:#9ca3af}.footer-info span:not(:last-child):not(:nth-child(odd)){color:#4b5563}}.loading{display:flex;align-items:center;justify-content:center;height:100%;color:#6b7280;font-size:1rem}.error{display:flex;align-items:center;justify-content:center;height:100%;color:#dc2626;font-size:1rem;text-align:center;padding:24px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.app-main{animation:fadeIn .3s ease-out}@media print{.app-header,.app-footer{display:none}.app-main{height:auto}.vertical-editor{padding:20mm;writing-mode:vertical-rl;font-size:12pt;line-height:1.8}}.reauth-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:10000}.reauth-modal-content{background:var(--color-bg-elevated);border-radius:8px;padding:0;max-width:500px;width:90%;box-shadow:var(--shadow-lg);max-height:90vh;overflow-y:auto}.reauth-modal-header{padding:24px 32px;border-bottom:1px solid var(--color-border-primary);display:flex;justify-content:space-between;align-items:center}.reauth-modal-header h3{font-size:20px;font-weight:600;margin:0;color:var(--color-text-primary)}.reauth-modal-close{background:none;border:none;font-size:28px;color:var(--color-text-muted);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s;line-height:1}.reauth-modal-close:hover:not(:disabled){background-color:var(--color-bg-hover);color:var(--color-text-primary)}.reauth-modal-close:disabled{opacity:.5;cursor:not-allowed}.reauth-modal-body{padding:24px 32px 32px}.reauth-warning-box{background-color:#ef44441a;border:1px solid var(--color-error);border-radius:6px;padding:16px 20px;margin-bottom:24px}.reauth-warning-title{font-size:16px;font-weight:600;color:var(--color-error);margin:0 0 12px}.reauth-warning-text{font-size:14px;color:var(--color-error);margin:0 0 8px;line-height:1.6}.reauth-warning-list{margin:8px 0 12px 24px;padding:0;color:var(--color-error);font-size:14px;line-height:1.6}.reauth-warning-list li{margin:4px 0}.reauth-warning-final{font-size:14px;color:var(--color-error);margin:12px 0 0;line-height:1.6}.reauth-warning-final strong{font-weight:700}.reauth-message{font-size:14px;color:var(--color-text-muted);margin:0 0 24px;line-height:1.6}.reauth-form-group{margin-bottom:20px}.reauth-form-group:last-of-type{margin-bottom:0}.reauth-form-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:var(--color-text-muted)}.reauth-form-group label strong{color:var(--color-text-primary);font-weight:600}.reauth-form-input{width:100%;padding:10px 12px;border:1px solid var(--color-border-primary);border-radius:6px;font-size:14px;transition:all .2s;box-sizing:border-box;color:var(--color-text-primary);background-color:var(--color-bg-primary)}.reauth-form-input:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 3px var(--color-accent-light);background-color:var(--color-bg-elevated)}.reauth-form-input:disabled{background-color:var(--color-bg-tertiary);color:var(--color-text-muted);cursor:not-allowed}.reauth-form-input::placeholder{color:var(--color-text-placeholder)}.reauth-input-error{border-color:var(--color-error)!important}.reauth-input-error:focus{border-color:var(--color-error)!important;box-shadow:0 0 0 3px #ef444433!important}.reauth-field-error{display:block;margin-top:6px;font-size:12px;color:var(--color-error);font-weight:500}.reauth-error-message{padding:12px 16px;background-color:#ef44441a;border:1px solid var(--color-error);border-radius:6px;color:var(--color-error);font-size:14px;margin-top:16px;margin-bottom:0}.reauth-modal-footer{display:flex;gap:12px;margin-top:24px;justify-content:flex-end}.reauth-btn-primary,.reauth-btn-secondary,.reauth-btn-danger{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.reauth-btn-primary{background-color:var(--color-accent-primary);color:var(--color-text-inverse)}.reauth-btn-primary:hover:not(:disabled){background-color:var(--color-accent-hover)}.reauth-btn-danger{background-color:#dc2626;color:#fff}.reauth-btn-danger:hover:not(:disabled){background-color:#b91c1c}.reauth-btn-secondary{background-color:var(--color-bg-tertiary);color:var(--color-text-primary)}.reauth-btn-secondary:hover:not(:disabled){background-color:var(--color-bg-hover)}.reauth-btn-primary:disabled,.reauth-btn-secondary:disabled,.reauth-btn-danger:disabled{opacity:.5;cursor:not-allowed}@media(max-width:640px){.reauth-modal-content{width:95%;max-height:95vh}.reauth-modal-header{padding:20px 24px}.reauth-modal-body{padding:20px 24px 24px}.reauth-modal-header h3{font-size:18px}.reauth-modal-footer{flex-direction:column-reverse}.reauth-btn-primary,.reauth-btn-secondary,.reauth-btn-danger{width:100%}}.image-uploader{display:flex;flex-direction:column;align-items:center;gap:16px}.image-preview{width:256px;height:256px;border-radius:8px;overflow:hidden;border:2px solid var(--color-border-primary);background-color:var(--color-bg-secondary);display:flex;align-items:center;justify-content:center}.image-preview img{width:100%;height:100%;object-fit:cover}.image-placeholder{color:var(--color-text-muted);font-size:14px;text-align:center}.upload-button{padding:10px 20px;background-color:var(--color-accent-primary);color:var(--color-text-inverse);border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.upload-button:hover:not(:disabled){background-color:var(--color-accent-hover)}.upload-button:disabled{opacity:.5;cursor:not-allowed}.upload-hint{font-size:12px;color:var(--color-text-muted);margin:0}.profile-form{display:flex;flex-direction:column;gap:24px}.profile-form h2{font-size:20px;font-weight:600;margin:0;color:var(--color-text-primary)}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:500;color:var(--color-text-muted)}.form-group input{padding:10px 12px;border:1px solid var(--color-border-primary);background-color:var(--color-bg-elevated);color:var(--color-text-primary);border-radius:6px;font-size:14px;transition:all .2s}.form-group input:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 3px var(--color-accent-light)}.form-group input:disabled{background-color:var(--color-bg-tertiary);cursor:not-allowed;opacity:.6}.form-error{padding:12px;background-color:#ef44441a;border:1px solid var(--color-error);border-radius:6px;color:var(--color-error);font-size:14px}.form-success{padding:12px;background-color:#10b9811a;border:1px solid var(--color-success);border-radius:6px;color:var(--color-success);font-size:14px}.submit-button{padding:12px 24px;background-color:var(--color-accent-primary);color:var(--color-text-inverse);border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;align-self:flex-start}.submit-button:hover:not(:disabled){background-color:var(--color-accent-hover)}.submit-button:disabled{opacity:.5;cursor:not-allowed}.email-change-form{display:flex;flex-direction:column;gap:24px}.email-change-form h2{font-size:20px;font-weight:600;margin:0;color:var(--color-text-primary)}.email-change-form .form-group{display:flex;flex-direction:column;gap:8px}.email-change-form .form-group label{font-size:14px;font-weight:500;color:var(--color-text-muted)}.current-email{padding:10px 12px;background-color:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);border-radius:6px;font-size:14px;color:var(--color-text-muted)}.email-change-form .form-group input{padding:10px 12px;border:1px solid var(--color-border-primary);border-radius:6px;font-size:14px;transition:all .2s;background-color:var(--color-bg-elevated);color:var(--color-text-primary)}.email-change-form .form-group input:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 3px var(--color-accent-light)}.email-change-form .form-group input:disabled{background-color:var(--color-bg-tertiary);cursor:not-allowed}.email-change-form .form-error{padding:12px;background-color:#ef44441a;border:1px solid var(--color-error);border-radius:6px;color:var(--color-error);font-size:14px}.email-change-form .form-success{padding:12px;background-color:#10b9811a;border:1px solid var(--color-success);border-radius:6px;color:var(--color-success);font-size:14px}.email-change-form .submit-button{padding:12px 24px;background-color:var(--color-accent-primary);color:var(--color-text-inverse);border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;align-self:flex-start}.email-change-form .submit-button:hover:not(:disabled){background-color:var(--color-accent-hover)}.email-change-form .submit-button:disabled{opacity:.5;cursor:not-allowed}.email-note{font-size:13px;color:var(--color-text-muted);margin:0;padding:8px 12px;background-color:#f59e0b1a;border-left:3px solid var(--color-warning);border-radius:4px}.password-change-form{display:flex;flex-direction:column;gap:24px}.password-change-form h2{font-size:20px;font-weight:600;margin:0;color:var(--color-text-primary)}.password-change-form .form-group{display:flex;flex-direction:column;gap:8px}.password-change-form .form-group label{font-size:14px;font-weight:500;color:var(--color-text-muted)}.password-change-form .form-group input{padding:10px 12px;border:1px solid var(--color-border-primary);border-radius:6px;font-size:14px;transition:all .2s;background-color:var(--color-bg-elevated);color:var(--color-text-primary)}.password-change-form .form-group input:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 3px var(--color-accent-light)}.password-change-form .form-group input:disabled{background-color:var(--color-bg-tertiary);cursor:not-allowed}.password-change-form .form-error{padding:12px;background-color:#ef44441a;border:1px solid var(--color-error);border-radius:6px;color:var(--color-error);font-size:14px}.password-change-form .form-success{padding:12px;background-color:#10b9811a;border:1px solid var(--color-success);border-radius:6px;color:var(--color-success);font-size:14px}.password-change-form .submit-button{padding:12px 24px;background-color:var(--color-accent-primary);color:var(--color-text-inverse);border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;align-self:flex-start}.password-change-form .submit-button:hover:not(:disabled){background-color:var(--color-accent-hover)}.password-change-form .submit-button:disabled{opacity:.5;cursor:not-allowed}.password-note{font-size:13px;color:var(--color-text-muted);margin:0;padding:8px 12px;background-color:#f59e0b1a;border-left:3px solid var(--color-warning);border-radius:4px}.account-settings-page{min-height:100vh;display:flex;flex-direction:column}.account-settings-main{flex:1;padding:40px 20px;display:flex;justify-content:center}.account-settings-container{width:100%;max-width:800px;background:var(--color-bg-secondary);border-radius:8px;padding:40px;box-shadow:var(--shadow-md)}.account-settings-container h1{font-size:28px;font-weight:600;margin-bottom:32px;color:var(--color-text-primary)}.settings-section{margin-bottom:40px;padding-bottom:32px;border-bottom:1px solid var(--color-border-primary)}.settings-section:last-of-type{border-bottom:none}.settings-section h2{font-size:20px;font-weight:600;margin-bottom:16px;color:var(--color-text-primary)}.theme-section{background-color:var(--color-bg-elevated);padding:24px;border-radius:8px;margin-bottom:40px}.theme-options{display:flex;gap:24px;margin-bottom:24px}.theme-option{display:flex;flex-direction:column;align-items:center;cursor:pointer;padding:12px;border-radius:8px;border:2px solid transparent;transition:all .2s ease}.theme-option:hover{background-color:var(--color-bg-hover)}.theme-option.selected{border-color:var(--color-accent-primary);background-color:var(--color-accent-light)}.theme-option input[type=radio]{display:none}.theme-preview{width:80px;height:60px;border-radius:6px;display:flex;align-items:center;justify-content:center;margin-bottom:8px;border:2px solid var(--color-border-primary);transition:all .2s ease}.theme-preview-text{font-size:24px;font-weight:700}.default-preview{background-color:#e4e0d7;color:#1a1a1a}.dark-preview{background-color:#1a1a1a;color:#e0e0e0}.custom-preview{border-width:3px}.theme-label{font-size:14px;font-weight:500;color:var(--color-text-primary)}.custom-theme-settings{margin-top:24px;padding-top:24px;border-top:1px solid var(--color-border-primary)}.custom-theme-settings h3{font-size:16px;font-weight:600;margin-bottom:16px;color:var(--color-text-primary)}.color-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;margin-bottom:24px}.color-picker-item{display:flex;flex-direction:column;gap:8px}.color-picker-label{font-size:14px;font-weight:500;color:var(--color-text-muted)}.color-picker-controls{display:flex;gap:8px;align-items:center}.color-input{width:48px;height:36px;padding:2px;border:1px solid var(--color-border-primary);border-radius:4px;cursor:pointer;background:transparent}.color-input::-webkit-color-swatch-wrapper{padding:0}.color-input::-webkit-color-swatch{border:none;border-radius:2px}.color-text-input{flex:1;padding:8px 12px;border:1px solid var(--color-border-primary);border-radius:4px;font-size:14px;font-family:monospace;background-color:var(--color-bg-elevated);color:var(--color-text-primary)}.color-text-input:focus{outline:none;border-color:var(--color-accent-primary)}.custom-theme-actions{display:flex;gap:12px;justify-content:flex-end}.btn-reset-theme,.btn-save-theme{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-reset-theme{background-color:transparent;color:var(--color-text-muted);border:1px solid var(--color-border-primary)}.btn-reset-theme:hover:not(:disabled){background-color:var(--color-bg-hover);color:var(--color-text-primary)}.btn-save-theme{background-color:var(--color-accent-primary);color:var(--color-text-inverse);border:none}.btn-save-theme:hover:not(:disabled){background-color:var(--color-accent-hover)}.btn-reset-theme:disabled,.btn-save-theme:disabled{opacity:.5;cursor:not-allowed}.account-info{display:flex;flex-direction:column;gap:12px}.info-row{display:flex;align-items:center;gap:12px}.info-label{font-weight:500;color:var(--color-text-muted);min-width:140px}.info-value{color:var(--color-text-primary)}.danger-zone{border-color:var(--color-error);background-color:#ef44441a;padding:24px;border-radius:6px}.danger-zone h2{color:var(--color-error)}.danger-content{display:flex;flex-direction:column;gap:16px}.danger-warning{color:var(--color-error);font-size:14px;margin:0}.delete-account-button{padding:12px 24px;background-color:#dc2626;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;align-self:flex-start}.delete-account-button:hover:not(:disabled){background-color:#b91c1c}.delete-account-button:disabled{opacity:.5;cursor:not-allowed}.error-message{padding:12px 16px;background-color:#ef44441a;border:1px solid var(--color-error);border-radius:6px;color:var(--color-error);font-size:14px}.confirm-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:10000}.confirm-modal{background:var(--color-bg-elevated);border-radius:8px;padding:32px;max-width:500px;width:90%;box-shadow:var(--shadow-lg)}.confirm-modal h3{font-size:20px;font-weight:600;margin-bottom:16px;color:var(--color-text-primary)}.confirm-modal p{font-size:14px;color:var(--color-text-muted);margin-bottom:12px;line-height:1.6}.confirm-modal ul{margin:12px 0;padding-left:24px;color:var(--color-text-muted);font-size:14px}.confirm-modal li{margin-bottom:6px}.confirm-warning{color:var(--color-error)!important;font-weight:600!important;margin-top:16px!important}.confirm-buttons{display:flex;gap:12px;margin-top:24px;justify-content:flex-end}.confirm-button{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.confirm-yes{background-color:#dc2626;color:#fff}.confirm-yes:hover:not(:disabled){background-color:#b91c1c}.confirm-no{background-color:var(--color-bg-tertiary);color:var(--color-text-primary)}.confirm-no:hover:not(:disabled){background-color:var(--color-bg-hover)}.confirm-button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.account-settings-container{padding:24px}.account-settings-container h1{font-size:24px}.info-row{flex-direction:column;align-items:flex-start;gap:4px}.info-label{min-width:auto}.theme-options{flex-direction:column;gap:16px}.theme-option{flex-direction:row;justify-content:flex-start;gap:16px}.theme-preview{margin-bottom:0}.color-picker-grid{grid-template-columns:1fr}.custom-theme-actions{flex-direction:column}.btn-reset-theme,.btn-save-theme{width:100%}}.account-deleted-page{min-height:100vh;display:flex;justify-content:center;align-items:center;background-color:var(--color-bg-primary);padding:20px}.account-deleted-container{text-align:center;background:var(--color-bg-elevated);border-radius:8px;padding:60px 40px;box-shadow:var(--shadow-md);max-width:500px;width:100%}.deleted-icon{width:80px;height:80px;border-radius:50%;background-color:#10b98126;color:var(--color-success);font-size:48px;display:flex;justify-content:center;align-items:center;margin:0 auto 24px}.account-deleted-container h1{font-size:24px;font-weight:600;color:var(--color-text-primary);margin-bottom:16px}.account-deleted-container p{font-size:16px;color:var(--color-text-muted);margin-bottom:32px}.go-home-button{padding:12px 32px;background-color:var(--color-accent-primary);color:var(--color-text-inverse);border:none;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s}.go-home-button:hover{background-color:var(--color-accent-hover)}.security-change-success-page{min-height:100vh;display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.success-container{background:var(--color-bg-elevated);border-radius:12px;padding:48px 40px;max-width:500px;width:100%;box-shadow:var(--shadow-lg);text-align:center}.success-icon{width:80px;height:80px;margin:0 auto 24px;background-color:var(--color-success);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:48px;color:#fff;font-weight:700}.success-container h1{font-size:28px;font-weight:600;margin-bottom:16px;color:var(--color-text-primary)}.success-message{font-size:16px;color:var(--color-text-muted);line-height:1.6;margin-bottom:32px}.login-button{padding:14px 32px;background-color:var(--color-accent-primary);color:var(--color-text-inverse);border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s;width:100%}.login-button:hover{background-color:var(--color-accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.login-button:active{transform:translateY(0)}@media(max-width:768px){.success-container{padding:32px 24px}.success-container h1{font-size:24px}.success-icon{width:64px;height:64px;font-size:36px}}:root,[data-theme=default]{--color-bg-primary: #E4E0D7;--color-bg-elevated: #EBE8DF;--color-bg-secondary: #F2EFE6;--color-bg-tertiary: #F9F7F0;--color-bg-hover: rgba(0, 212, 170, .1);--color-text-primary: #1A1A1A;--color-text-secondary: #4B5563;--color-text-muted: #6B7280;--color-text-placeholder: rgba(107, 114, 128, .6);--color-text-inverse: #FFFFFF;--color-accent-primary: #00D4AA;--color-accent-hover: #00B894;--color-accent-light: rgba(0, 212, 170, .1);--color-border-primary: #C5C1B8;--color-border-secondary: #D5D1C8;--color-success: #10B981;--color-warning: #F59E0B;--color-error: #EF4444;--color-info: #3B82F6;--color-editor-bg: #E4E0D7;--color-editor-text: #1A1A1A;--color-editor-selection: rgba(0, 212, 170, .2);--color-toolbar-bg: #F2EFE6;--color-toolbar-button-hover: rgba(26, 26, 26, .1);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .15);--color-overlay: rgba(0, 0, 0, .5);--color-status-pending: #ff6b6b;--color-status-inprogress: #ffd43b;--color-status-completed: #51cf66;--color-status-pending-bg: rgba(255, 107, 107, .2);--color-status-inprogress-bg: rgba(255, 212, 59, .2);--color-status-completed-bg: rgba(81, 207, 102, .2);--color-comment-highlight: rgba(255, 235, 59, .3);--color-comment-highlight-hover: rgba(255, 235, 59, .5);--color-reply-reviewer-bg: rgba(251, 191, 36, .15)}[data-theme=dark]{--color-bg-primary: #1A1A1A;--color-bg-secondary: #2D2D2D;--color-bg-tertiary: #3D3D3D;--color-bg-elevated: #252525;--color-bg-hover: rgba(96, 165, 250, .1);--color-text-primary: #E0E0E0;--color-text-secondary: #A0A0A0;--color-text-muted: #808080;--color-text-placeholder: rgba(128, 128, 128, .6);--color-text-inverse: #1A1A1A;--color-accent-primary: #60A5FA;--color-accent-hover: #3B82F6;--color-accent-light: rgba(96, 165, 250, .15);--color-border-primary: #4B5563;--color-border-secondary: #374151;--color-success: #34D399;--color-warning: #FBBF24;--color-error: #F87171;--color-info: #60A5FA;--color-editor-bg: #1A1A1A;--color-editor-text: #E0E0E0;--color-editor-selection: rgba(96, 165, 250, .25);--color-toolbar-bg: #2D2D2D;--color-toolbar-button-hover: rgba(224, 224, 224, .1);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .4);--color-overlay: rgba(0, 0, 0, .7);--color-status-pending: #ff6b6b;--color-status-inprogress: #ffd43b;--color-status-completed: #51cf66;--color-status-pending-bg: rgba(255, 107, 107, .25);--color-status-inprogress-bg: rgba(255, 212, 59, .25);--color-status-completed-bg: rgba(81, 207, 102, .25);--color-comment-highlight: rgba(255, 235, 59, .2);--color-comment-highlight-hover: rgba(255, 235, 59, .35);--color-reply-reviewer-bg: rgba(251, 191, 36, .2)}[data-theme=custom]{color:inherit}body{background-color:var(--color-bg-primary);color:var(--color-text-primary);transition:background-color .3s ease,color .3s ease}a{color:var(--color-accent-primary)}a:hover{color:var(--color-accent-hover)}::selection{background-color:var(--color-editor-selection)}::-moz-selection{background-color:var(--color-editor-selection)}:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-border-primary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}*{scrollbar-width:thin;scrollbar-color:var(--color-border-primary) var(--color-bg-secondary)}.terms-page{display:flex;flex-direction:column;min-height:100vh;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.terms-main{flex:1;padding:60px 24px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.terms-container{max-width:800px;margin:0 auto}.terms-container>h1{font-size:2rem;font-weight:700;color:#f2f2f2;margin-bottom:32px;text-align:center;font-family:"Noto Serif JP",serif}.terms-section{background:#fff;border-radius:12px;padding:32px;margin-bottom:24px;border:1px solid #e5e7eb;box-shadow:0 4px 12px #0000000d}.terms-section h2{font-size:1.125rem;font-weight:600;color:#1f2937;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid #667eea}.terms-effective-date{color:#6b7280;font-size:.9rem;margin-bottom:24px}.terms-content{border-radius:8px;padding:28px}.terms-article{margin-bottom:32px}.terms-article:last-child{margin-bottom:0}.terms-article h2{font-size:1rem;font-weight:600;color:#1f2937;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(102,126,234,.3)}.terms-article p{color:#374151;font-size:.9rem;line-height:1.9;margin-bottom:12px}.terms-article ol,.terms-article ul{color:#374151;font-size:.9rem;line-height:1.9;padding-left:24px;margin-bottom:12px}.terms-article ol>li{margin-bottom:10px}.terms-article ul{list-style-type:disc;margin-top:8px}.terms-article ul>li{margin-bottom:6px}.operator-section h2{border-bottom:2px solid #667eea}.operator-info{display:flex;flex-direction:column;gap:16px}.operator-info .info-row{display:flex;align-items:center;gap:20px;padding:12px 16px;background-color:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.operator-info .info-label{min-width:80px;color:#6b7280;font-size:.9rem;font-weight:500}.operator-info .info-value{color:#1f2937;font-size:.9rem}.terms-footer{background-color:#1f2937;color:#9ca3af;padding:32px 24px;text-align:center}.terms-footer .footer-content{max-width:800px;margin:0 auto}.terms-footer .footer-links{margin-bottom:12px}.terms-footer .footer-links a{color:#9ca3af;text-decoration:none;font-size:.9rem;transition:color .2s}.terms-footer .footer-links a:hover{color:#fff}.terms-footer .footer-separator{margin:0 16px;color:#6b7280}.terms-footer .footer-copyright{color:#6b7280;font-size:.85rem;margin:0}@media(max-width:768px){.terms-main{padding:40px 16px}.terms-container>h1{font-size:1.5rem}.terms-section{padding:24px 20px}.terms-content{padding:20px 16px}.terms-article h2{font-size:.95rem}.operator-info .info-row{flex-direction:column;align-items:flex-start;gap:4px}.operator-info .info-label{min-width:auto}}.privacy-page{display:flex;flex-direction:column;min-height:100vh;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.privacy-main{flex:1;padding:60px 24px;writing-mode:horizontal-tb!important;text-orientation:mixed!important}.privacy-container{max-width:800px;margin:0 auto}.privacy-container>h1{font-size:2rem;font-weight:700;color:#f2f2f2;margin-bottom:32px;text-align:center;font-family:"Noto Serif JP",serif}.privacy-section{background:#fff;border-radius:12px;padding:32px;margin-bottom:24px;border:1px solid #e5e7eb;box-shadow:0 4px 12px #0000000d}.privacy-section h2{font-size:1.125rem;font-weight:600;color:#1f2937;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid #667eea}.privacy-effective-date{color:#6b7280;font-size:.9rem;margin-bottom:24px}.privacy-content{border-radius:8px;padding:28px}.privacy-article{margin-bottom:32px}.privacy-article:last-child{margin-bottom:0}.privacy-article h2{font-size:1rem;font-weight:600;color:#1f2937;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(102,126,234,.3)}.privacy-article h3{font-size:.95rem;font-weight:500;color:#1f2937;margin-top:20px;margin-bottom:10px}.privacy-article p{color:#374151;font-size:.9rem;line-height:1.9;margin-bottom:12px}.privacy-article ol,.privacy-article ul{color:#374151;font-size:.9rem;line-height:1.9;padding-left:24px;margin-bottom:12px}.privacy-article ol>li{margin-bottom:10px}.privacy-article ul{list-style-type:disc;margin-top:8px}.privacy-article ul>li{margin-bottom:6px}.privacy-article strong{color:#1f2937;font-weight:600}.privacy-article a{color:#667eea;text-decoration:none;word-break:break-all}.privacy-article a:hover{text-decoration:underline}.privacy-article .company-list{list-style-type:none;padding-left:0}.privacy-article .company-list>li{margin-bottom:16px;padding:12px 16px;background-color:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.contact-section h2{border-bottom:2px solid #667eea}.contact-intro{color:#6b7280;font-size:.9rem;margin-bottom:20px}.contact-info{display:flex;flex-direction:column;gap:8px}.contact-info .info-value{color:#1f2937;font-size:.9rem}.privacy-footer{background-color:#1f2937;color:#9ca3af;padding:32px 24px;text-align:center}.privacy-footer .footer-content{max-width:800px;margin:0 auto}.privacy-footer .footer-links{margin-bottom:12px}.privacy-footer .footer-links a{color:#9ca3af;text-decoration:none;font-size:.9rem;transition:color .2s}.privacy-footer .footer-links a:hover{color:#fff}.privacy-footer .footer-separator{margin:0 16px;color:#6b7280}.privacy-footer .footer-copyright{color:#6b7280;font-size:.85rem;margin:0}@media(max-width:768px){.privacy-main{padding:40px 16px}.privacy-container>h1{font-size:1.5rem}.privacy-section{padding:24px 20px}.privacy-content{padding:20px 16px}.privacy-article h2{font-size:.95rem}.privacy-article .company-list>li{padding:10px 12px}}
