.ishikawa-diagram-container{flex-grow:1;position:relative}.ishikawa-diagram{padding:20px 0;position:relative;width:100%;min-height:600px}.categories{width:calc(100% - 200px);margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:60px 30px;position:relative;z-index:2}.spine{position:absolute;left:0;width:100%;height:var(--ishikawa-bone-thickness);background-color:var(--ishikawa-spine-color);z-index:1;transition:top .2s ease-out}.spine:after{content:"";position:absolute;right:-6px;top:50%;transform:translateY(-50%) rotate(45deg);width:10px;height:10px;border-top:var(--ishikawa-bone-thickness) solid var(--ishikawa-spine-color);border-right:var(--ishikawa-bone-thickness) solid var(--ishikawa-spine-color)}.problem-statement{position:absolute;right:0;transform:translateY(-50%);background-color:var(--background-light);padding:10px 20px;border:1px solid var(--ishikawa-spine-color);border-radius:var(--border-radius);font-weight:600;box-shadow:0 2px 4px #0000000d;white-space:nowrap;max-width:180px;overflow:hidden;text-overflow:ellipsis;z-index:3;transition:top .2s ease-out}.category{border:1px solid var(--border-color);border-radius:var(--border-radius);padding:15px;background-color:#fff;box-shadow:0 1px 3px #0000000f;display:flex;flex-direction:column;position:relative;z-index:2;min-height:250px}.category-title{margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid #eee;font-size:1.1em;font-weight:600;color:var(--ishikawa-category-color);text-align:center}.causes-list{display:flex;flex-direction:column;gap:5px;margin-bottom:10px}.cause-item{display:flex;justify-content:space-between;align-items:center;background-color:var(--background-alt);padding:5px 8px;border-radius:4px;font-size:.9em}.cause-item span{word-break:break-word}.remove-cause-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1.2em;padding:0 5px;line-height:1;flex-shrink:0}.remove-cause-btn:hover{color:var(--error-color-text)}.add-cause-input-group{display:flex;margin-top:auto;padding-top:10px}.add-cause-input-group input{flex-grow:1;padding:6px 9px;border:1px solid var(--border-color);border-radius:4px 0 0 4px;font-size:.9em;min-width:50px}.add-cause-input-group input:focus{outline:none;border-color:var(--primary-color)}.add-cause-input-group .add-cause-btn{padding:6px 10px;border:1px solid var(--primary-color);background-color:var(--primary-color);color:#fff;border-radius:0 4px 4px 0;cursor:pointer;font-size:1.1em;line-height:1;flex-shrink:0}.add-cause-input-group .add-cause-btn:hover{background-color:var(--primary-color-dark)}.ai-suggestions{margin-top:15px;padding-top:10px;border-top:1px dashed #e0e0e0;flex-grow:1;min-height:100px;display:flex;flex-direction:column}.ai-suggestions h5{margin:0 0 8px;font-size:.85em;color:var(--text-muted);font-weight:500}.ai-suggestions ul{list-style:none;padding:0;margin:0;overflow-y:auto;flex-grow:1}.ai-suggestions li button{background:none;border:none;padding:5px;text-align:left;width:100%;cursor:pointer;font-size:.9em;color:var(--primary-color);border-radius:3px;transition:background-color .15s ease;display:flex;justify-content:space-between;align-items:center}.ai-suggestions li button:hover:not(:disabled){background-color:#007aff1a}.ai-suggestions li button:disabled{text-decoration:line-through;color:var(--text-muted);cursor:default;opacity:.7}.add-suggestion-icon{font-weight:700;margin-left:8px;color:var(--success-color)}.no-suggestions-text{font-size:.85em;font-style:italic;color:var(--text-muted);padding:5px 0}.ishikawa-bone{position:absolute;height:var(--ishikawa-bone-thickness);background-color:var(--ishikawa-bone-color);transform-origin:left center;z-index:1}:root{--primary-color: #007aff;--primary-color-dark: #005ecb;--secondary-color: #f2f2f7;--border-color: #d1d1d6;--background-light: #ffffff;--background-alt: #f8f9fa;--text-color: #1c1c1e;--text-muted: #6c757d;--text-on-primary: #ffffff;--error-color-text: #ff3b30;--success-color: #34c759;--border-radius: 8px;--ishikawa-spine-color: #333;--ishikawa-bone-color: #aaa;--ishikawa-bone-thickness: 2px}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Helvetica,Arial,sans-serif;background-color:var(--secondary-color);color:var(--text-color);line-height:1.45;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}button{font-family:inherit}.app-container{display:flex;height:100vh;width:100%;overflow:hidden;align-items:stretch}.content-container{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.navbar{background-color:var(--background-light);border-bottom:1px solid var(--border-color);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;padding:10px 20px;z-index:1000;gap:15px;flex-shrink:0}.navbar-left{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.navbar-left h1{font-size:1.5em;font-weight:600;color:var(--text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}.terms-acceptance-container{display:flex;align-items:center;gap:8px}.terms-acceptance-container label{font-size:.8rem;color:var(--text-muted);cursor:pointer;white-space:nowrap}.terms-acceptance-container input[type=checkbox]{width:16px;height:16px;cursor:pointer}.terms-acceptance-container a{color:var(--primary-color);text-decoration:none}.terms-acceptance-container a:hover{text-decoration:underline}.navbar-center{display:flex;align-items:center;justify-content:center;gap:10px}.navbar-right{display:flex;align-items:center;gap:10px}.navbar button{display:flex;align-items:center;gap:8px;padding:8px 16px;border:none;border-radius:var(--border-radius);font-size:.9em;font-weight:500;cursor:pointer;transition:background-color .2s,box-shadow .2s}.navbar button:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--primary-color);color:var(--text-on-primary)}.btn-primary:hover:not(:disabled){background-color:var(--primary-color-dark)}.btn-secondary{background-color:var(--secondary-color);color:var(--text-color);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){background-color:#e5e5ea}.btn-danger{background-color:var(--error-color-text);color:var(--text-on-primary)}.btn-danger:hover:not(:disabled){background-color:#d9362d}.btn-icon{background:none;border:none;cursor:pointer;font-size:1.4em;color:var(--text-muted);padding:8px;border-radius:50%;transition:background-color .2s}.btn-icon:hover{background-color:var(--secondary-color);color:var(--text-color)}.main-content{flex-grow:1;padding:25px;background-color:var(--background-alt);overflow-y:auto;display:flex;flex-direction:column}.current-diagram-editor .problem-description-wrapper{margin-bottom:20px}.current-diagram-editor .problem-description-wrapper label{display:block;margin-bottom:8px;font-weight:700;font-size:1.1em;color:var(--text-color)}.current-diagram-editor .problem-description-wrapper input{width:100%;padding:12px;box-sizing:border-box;font-size:1.15em;border-radius:var(--border-radius);border:1px solid var(--border-color)}.current-diagram-editor .problem-description-wrapper input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #007aff33}.ishikawa-placeholder{text-align:center;color:var(--text-muted);padding:50px 20px;font-style:italic;border:2px dashed var(--border-color);border-radius:var(--border-radius);margin-top:20px}.status-modal{position:fixed;top:20px;left:50%;transform:translate(-50%);padding:15px 25px;border-radius:var(--border-radius);box-shadow:0 4px 12px #00000026;z-index:9000;transition:opacity .3s ease,transform .3s ease;display:flex;align-items:center;gap:15px;text-align:center;font-weight:500;animation:fadeInDown .4s ease}.status-modal.loading{background-color:#e9ecef;color:var(--text-color);border:1px solid var(--border-color)}.status-modal.error{background-color:#fff5f5;color:var(--error-color-text);border:1px solid #fcc2c3}.status-modal.success{background-color:#f0fff4;color:#2f855a;border:1px solid #b7e4c7}.status-modal-dismiss{background:none;border:none;font-size:1.5em;font-weight:700;color:inherit;opacity:.6;cursor:pointer;padding:0 5px;line-height:1}.status-modal-dismiss:hover{opacity:1}@keyframes fadeInDown{0%{opacity:0;transform:translate(-50%,-20px)}to{opacity:1;transform:translate(-50%)}}.sidebar{width:280px;background-color:var(--background-light);border-right:1px solid var(--border-color);flex-shrink:0;transition:width .3s ease;z-index:100;height:100vh;display:flex;flex-direction:column}.sidebar.collapsed{width:70px}.sidebar-sticky-content{padding:15px;display:flex;flex-direction:column;height:100%}.sidebar.collapsed .sidebar-sticky-content{padding:15px 10px}.sidebar-header{display:flex;align-items:center;justify-content:center;margin-bottom:20px;min-height:40px}.sidebar-logo{max-width:100%;height:40px;object-fit:contain}.sidebar.collapsed .sidebar-logo{max-width:35px}.diagrams-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.diagrams-header h2{font-size:1.1em;margin:0;white-space:nowrap;display:flex;align-items:center;gap:8px;flex:1}.sidebar-toggle{background:none;border:none;cursor:pointer;font-size:1.4em;color:var(--text-muted);padding:5px}.sidebar-toggle:hover{color:var(--text-color)}.sidebar-refresh{width:100%;margin-bottom:15px;padding:8px;font-size:.9em;justify-content:center}.sidebar.collapsed .sidebar-refresh span{display:none}.ishikawa-list{list-style:none;padding:0;margin:0;overflow-y:auto;flex-grow:1}.ishikawa-list li{padding:10px 8px;border-radius:var(--border-radius);cursor:pointer;display:flex;align-items:center;gap:12px;margin-bottom:5px;font-size:.9em;transition:all .2s ease;white-space:nowrap;overflow:hidden}.ishikawa-list li:hover{background-color:var(--secondary-color)}.ishikawa-list li.active{background-color:var(--primary-color);color:#fff}.ishikawa-list li.active .diagram-date{color:#fffc}.diagram-icon{font-size:1.2em;flex-shrink:0}.diagram-title{flex-grow:1;overflow:hidden;text-overflow:ellipsis}.diagram-date{font-size:.8em;margin-left:auto;color:var(--text-muted)}.no-diagrams{color:var(--text-muted);font-style:italic;font-size:.9em;text-align:center;padding:20px 5px}.sidebar.collapsed .diagram-title,.sidebar.collapsed .diagram-date{display:none}@media (max-width: 1024px){.sidebar{width:240px}.sidebar.collapsed{width:60px}.navbar-left h1{font-size:1.2em}.navbar-center button{padding:6px 10px;font-size:.8em;gap:5px}}@media (max-width: 768px){.app-container{flex-direction:column;overflow:auto}.content-container{order:1}.sidebar{order:2;width:100%;height:auto;max-height:40vh;box-shadow:0 -2px 5px #0000001a}.sidebar.collapsed{height:65px;max-height:65px;overflow:hidden}.navbar{flex-direction:column;align-items:stretch;gap:8px}.navbar-left,.navbar-right{justify-content:center}.navbar-center{justify-content:space-around;flex-wrap:wrap}.main-content{padding:15px}}.disabled-content{opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none}
