:root{--primary-01:#eef4ff;--primary-02:#d6e4ff;--primary-03:#adc8ff;--primary-04:#84a9ff;--primary-05:#5b89f5;--primary-06:#2b63e0;--primary-07:#1e4ab8;--primary-08:#153a94;--primary-09:#0f2d72;--primary-10:#0b1e4e;--blue-01:#eff8ff;--blue-02:#d1eafd;--blue-03:#a6d8fb;--blue-05:#45a5ec;--blue-06:#1c87d8;--blue-07:#146eb8;--blue-08:#0e5594;--green-01:#f0faf2;--green-02:#d8f2dc;--green-03:#a7deaf;--green-05:#42b057;--green-06:#2e9a42;--green-07:#258235;--green-08:#1d6929;--red-01:#fef1f1;--red-02:#fcdada;--red-03:#f7aaaa;--red-04:#f07878;--red-05:#e64b4b;--red-06:#d02e2e;--red-07:#b02525;--red-08:#8c1b1b;--red-09:#681313;--orange-01:#fff5ec;--orange-02:#ffe4cb;--orange-03:#fec796;--orange-04:#fca661;--orange-05:#f7872e;--orange-06:#e36b0f;--orange-07:#bd5708;--orange-08:#944306;--orange-09:#6c3104;--yellow-01:#fffbe6;--yellow-02:#fff4b8;--yellow-03:#ffe680;--yellow-05:#f2b51a;--yellow-07:#a87b05;--yellow-08:#7e5c03;--neutral-00:#fff;--neutral-01:#fafafb;--neutral-02:#f5f5f7;--neutral-03:#ececef;--neutral-04:#dddde2;--neutral-05:#b8b8c2;--neutral-06:#8a8a95;--neutral-07:#5f5f6b;--neutral-08:#3d3d48;--neutral-09:#25252e;--neutral-10:#0f0f18;--bg-app:var(--neutral-02);--bg-surface:var(--neutral-00);--bg-elevated:var(--neutral-00);--bg-hover:var(--neutral-02);--bg-active:var(--primary-01);--text-primary:var(--neutral-09);--text-secondary:var(--neutral-07);--text-tertiary:var(--neutral-06);--border-default:var(--neutral-03);--border-strong:var(--neutral-04);--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-xl:14px;--radius-full:9999px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-7:32px;--fs-h1:28px;--fs-h2:22px;--fs-h3:18px;--fs-h4:15px;--fs-body:13px;--fs-sm:12px;--fs-xs:11px;--fs-micro:10px;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-extrabold:800;--duration-fast:.12s;--duration-base:.2s;--ease-out:cubic-bezier(.16,1,.3,1)}.ogsm-page-root{background:var(--bg-app);min-height:100%;color:var(--text-primary);font-family:Arial,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.ogsm-main{min-width:0;padding:0}.ogsm-main-inner{flex-direction:column;gap:16px;margin:0 auto;padding:24px 32px;display:flex}.ogsm-page-head{border-bottom:1px solid var(--border-default);margin-bottom:4px;padding-bottom:20px}.ogsm-page-breadcrumb{color:var(--text-tertiary);align-items:center;gap:6px;margin-bottom:12px;font-size:12px;font-weight:500;display:flex}.ogsm-page-breadcrumb .ogsm-sep{color:var(--neutral-05)}.ogsm-page-breadcrumb .ogsm-curr{color:var(--text-primary);font-weight:600}.ogsm-page-title-row{justify-content:space-between;align-items:center;display:flex}.ogsm-page-title-group{align-items:center;gap:16px;display:flex}.ogsm-page-title-ic{border-radius:var(--radius-lg);background:linear-gradient(135deg, var(--primary-01), #d6e4ff);width:44px;height:44px;color:var(--primary-07);justify-content:center;align-items:center;display:flex}.ogsm-page-title-ic svg{width:22px;height:22px}.ogsm-page-title{letter-spacing:-.02em;margin:0;font-size:28px;font-weight:800;line-height:36px}.ogsm-page-title-wrap{align-items:center;gap:10px;display:inline-flex}.ogsm-page-title-text{min-width:0}.ogsm-btn{justify-content:center;align-items:center;gap:var(--sp-2);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);border:1px solid #0000;padding:8px 16px;font-family:inherit;display:inline-flex}.ogsm-btn-sm{height:32px;font-size:var(--fs-xs);padding:0 12px}.ogsm-btn-primary{background:var(--primary-06);color:#fff;border-color:var(--primary-06)}.ogsm-btn-primary:hover{background:var(--primary-07);border-color:var(--primary-07)}.ogsm-btn-ghost{color:var(--text-secondary);background:0 0;border-color:#0000}.ogsm-btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary)}.ogsm-info-btn{border:1px solid var(--border-default);background:var(--neutral-02);width:20px;height:20px;color:var(--text-tertiary);border-radius:var(--radius-full);cursor:help;justify-content:center;align-items:center;display:inline-flex;position:relative}.ogsm-info-btn:hover{background:var(--primary-01);color:var(--primary-07);border-color:#adc8ff}.ogsm-info-btn svg{width:12px;height:12px}.ogsm-info-tip{z-index:30;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-surface);width:260px;color:var(--text-secondary);box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;text-align:left;transition:opacity var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);padding:10px 12px;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(-4px)}.ogsm-info-btn:hover .ogsm-info-tip,.ogsm-info-btn:focus-visible .ogsm-info-tip{opacity:1;transform:translate(-50%)translateY(0)}.ogsm-info-tip-title,.ogsm-info-tip-body{display:block}.ogsm-info-tip-title{color:var(--text-primary);font-size:var(--fs-xs);font-weight:var(--fw-bold);margin-bottom:4px}.ogsm-info-tip-body{font-size:var(--fs-micro);line-height:1.45}.ogsm-page-meta-row{flex-wrap:wrap;justify-content:flex-end}.ogsm-role-banner-wrap{margin-bottom:24px}.ogsm-role-banner-card{border-radius:var(--radius-md);border:1px solid var(--border-default);background:#fff;align-items:center;gap:16px;padding:8px 16px;transition:opacity .3s;display:flex;box-shadow:0 1px 2px #0000000d}.ogsm-role-banner-card.loading{opacity:.6}.ogsm-role-banner-section{flex-direction:column;min-width:80px;display:flex}.ogsm-role-banner-lbl{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:700;line-height:1.2}.ogsm-role-banner-val{color:var(--text-secondary);text-transform:capitalize;margin-top:2px;font-size:12px;font-weight:600}.ogsm-role-banner-pulse{background:var(--neutral-02);border-radius:4px;width:64px;height:16px;margin-top:2px;animation:2s cubic-bezier(.4,0,.6,1) infinite ogsm-pulse}@keyframes ogsm-pulse{0%,to{opacity:1}50%{opacity:.4}}.ogsm-page-toolbar{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;padding:12px 16px;display:flex}.ogsm-page-toolbar-left{flex:1;align-items:flex-end;gap:12px;display:flex}.ogsm-page-toolbar-right{align-items:center;gap:8px;display:flex}.ogsm-toolbar-filter-group{align-items:center;gap:var(--sp-3)}.ogsm-period-wrap{position:relative}.ogsm-period-trigger{align-items:center;gap:var(--sp-2);background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-primary);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);min-width:170px;max-width:240px;padding:7px 12px;font-family:inherit;display:inline-flex}.ogsm-period-trigger:hover{border-color:var(--neutral-05)}.ogsm-period-trigger.open{border-color:var(--primary-06);box-shadow:var(--shadow-focus)}.ogsm-period-trigger.has-value{border-color:var(--primary-04)}.ogsm-period-trigger-ic{width:14px;height:14px;color:var(--primary-06);flex-shrink:0}.ogsm-period-trigger-label{text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1;min-width:0;overflow:hidden}.ogsm-period-trigger-chev{width:12px;height:12px;color:var(--text-tertiary);transition:transform var(--duration-base) var(--ease-out);flex-shrink:0;margin-left:4px}.ogsm-period-trigger.open .ogsm-period-trigger-chev{color:var(--primary-06);transform:rotate(180deg)}.ogsm-period-pop{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);width:480px;box-shadow:var(--shadow-xl);padding:var(--sp-4);z-index:40;opacity:0;pointer-events:none;transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);position:absolute;top:calc(100% + 6px);left:0;transform:translateY(-4px)scale(.98)}.ogsm-period-pop.open{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.ogsm-period-sec+.ogsm-period-sec{margin-top:var(--sp-4);padding-top:var(--sp-4);border-top:1px solid var(--border-subtle)}.ogsm-period-sec-lbl{font-size:var(--fs-micro);font-weight:var(--fw-bold);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.ogsm-period-grid{gap:8px;display:grid}.ogsm-period-grid.cols-1{grid-template-columns:1fr}.ogsm-period-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.ogsm-period-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.ogsm-period-grid.cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.ogsm-period-cell{border:1px solid var(--border-default);background:var(--bg-surface);border-radius:var(--radius-sm);height:32px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-primary);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);font-family:inherit}.ogsm-period-cell:hover:not(:disabled){border-color:var(--primary-05);background:var(--primary-01);color:var(--primary-07)}.ogsm-period-cell.active{border-color:var(--primary-06);background:var(--primary-06);color:#fff}.ogsm-period-cell:disabled{opacity:.42;cursor:not-allowed;background:var(--neutral-02);color:var(--text-tertiary)}.ogsm-period-cell.month{font-size:var(--fs-micro)}.ogsm-page-root .ogsm-status-wrap{position:relative}.ogsm-page-root .ogsm-status-trigger{align-items:center;gap:var(--sp-2);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-primary);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);justify-content:space-between;min-width:150px;max-width:220px;height:34px;padding:7px 12px;font-family:inherit;display:inline-flex}.ogsm-page-root .ogsm-status-trigger:hover{border-color:var(--neutral-05)}.ogsm-page-root .ogsm-status-trigger.open{border-color:var(--primary-06);box-shadow:var(--shadow-focus)}.ogsm-page-root .ogsm-status-trigger.has-value{border-color:var(--primary-04)}.ogsm-page-root .ogsm-status-trigger-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.ogsm-page-root .ogsm-status-trigger-label{text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1;min-width:0;overflow:hidden}.ogsm-page-root .ogsm-status-trigger-chev{width:12px;height:12px;color:var(--text-tertiary);transition:transform var(--duration-base) var(--ease-out);flex-shrink:0}.ogsm-page-root .ogsm-status-trigger.open .ogsm-status-trigger-chev{color:var(--primary-06);transform:rotate(180deg)}.ogsm-page-root .ogsm-status-trigger.has-value .ogsm-status-trigger-chev{color:var(--primary-06)}.ogsm-page-root .ogsm-status-pop{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);width:220px;box-shadow:var(--shadow-xl);z-index:40;opacity:0;padding:var(--sp-1);pointer-events:none;transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);position:absolute;top:calc(100% + 6px);left:0;transform:translateY(-4px)scale(.98)}.ogsm-page-root .ogsm-status-pop.open{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.ogsm-page-root .ogsm-status-opt{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast);-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:7px 10px;display:flex}.ogsm-page-root .ogsm-status-opt:hover{background:var(--bg-hover)}.ogsm-page-root .ogsm-status-opt.active{background:var(--primary-01);color:var(--primary-07);font-weight:var(--fw-semibold)}.ogsm-page-root .ogsm-status-opt-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.ogsm-page-root .ogsm-status-opt-check{width:14px;height:14px;color:var(--primary-06);opacity:0;flex-shrink:0;margin-left:auto}.ogsm-page-root .ogsm-status-opt-check svg{width:14px;height:14px}.ogsm-page-root .ogsm-status-opt.active .ogsm-status-opt-check{opacity:1}.ogsm-filter-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;font-size:11px;font-weight:700}.ogsm-filter-panel-inline{gap:8px;margin-top:8px;display:flex}.ogsm-filter-inline-input{border:1px solid var(--border-default);border-radius:var(--radius-sm);height:28px;padding:0 8px;font-size:12px}.ogsm-toolbar-filter-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:700}.ogsm-filter-trigger{border:1px solid var(--border-strong);border-radius:var(--radius-md);height:34px;color:var(--text-primary);background:var(--bg-surface);align-items:center;gap:8px;min-width:220px;padding:0 12px;font-size:13px;font-weight:600;transition:all .12s;display:inline-flex}.ogsm-filter-trigger.active{background:var(--primary-01);border-color:var(--primary-05);color:var(--primary-08)}.ogsm-filter-trigger .ogsm-icon{width:14px;height:14px;color:var(--text-tertiary)}.ogsm-filter-trigger.active .ogsm-icon{color:var(--primary-06)}.ogsm-filter-trigger-label{text-align:left;flex:1}.ogsm-filter-trigger-chev{width:11px;height:11px}.ogsm-btn{border-radius:var(--radius-md);border:1px solid #0000;justify-content:center;align-items:center;gap:6px;height:36px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.ogsm-btn .ogsm-icon{width:12px;height:12px}.ogsm-btn-sm{border-radius:var(--radius-sm);height:28px;padding:0 10px;font-size:12px}.ogsm-btn-primary{background:var(--primary-06);color:#fff}.ogsm-btn-secondary{background:var(--bg-surface);color:var(--text-primary);border-color:var(--border-strong)}.ogsm-btn-secondary:hover{background:var(--bg-hover);border-color:var(--neutral-05)}.ogsm-kh-layout{display:block}.ogsm-pending-bar{background:#fff;border:1px solid #e5e7eb;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;padding:8px 10px;font-size:11px;display:flex}.ogsm-pending-bar-left{color:#374151;align-items:center;gap:6px;display:inline-flex}.ogsm-pending-dot{color:#64748b;font-size:10px}.ogsm-bulk-bar-inline{border:1px solid var(--border-default);border-radius:var(--radius-md);background:#fff;align-items:center;gap:8px;margin-bottom:8px;padding:8px 10px;display:flex}.ogsm-tree-panel{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-xl);width:100%}.ogsm-objective-header{padding:var(--sp-3) var(--sp-4);background:var(--neutral-01);border-bottom:1px solid var(--border-default);cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.ogsm-objective-header.selected{background:var(--primary-01)}.ogsm-objective-header:hover{background:var(--primary-02)}.ogsm-objective-header .ogsm-label{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-1);display:flex}.ogsm-objective-header .ogsm-label-icon{color:var(--primary-06);width:14px;height:14px}.ogsm-objective-header .ogsm-label-text{color:var(--primary-07);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:700}.ogsm-objective-header .ogsm-name{color:var(--text-primary);font-size:12px;font-weight:500;line-height:1.4}.ogsm-tree-content{padding:var(--sp-2) 0}.ogsm-tree-item{align-items:center;gap:var(--sp-2);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast) var(--ease-out);font-size:var(--fs-sm);margin:1px 4px;padding:7px 10px;display:flex}.ogsm-tree-item:hover{background:var(--bg-hover)}.ogsm-tree-item.goal{flex-direction:column;align-items:stretch;gap:4px}.ogsm-row-checkbox{appearance:none;border:1px solid var(--border-strong);cursor:pointer;background:#fff;border-radius:3px;width:14px;height:14px}.ogsm-row-checkbox:checked{border-color:var(--primary-06);background:var(--primary-06)}.ogsm-tree-item-meta{color:var(--text-tertiary);font-size:10px}.ogsm-tree-row-end-status{justify-content:flex-end;width:108px;display:inline-flex}.ogsm-tree-shared-mini{color:#7849dd;justify-content:flex-end;align-items:center;gap:2px;width:48px;font-size:10px;font-weight:600;display:inline-flex}.ogsm-row-more{width:24px;height:24px;color:var(--text-tertiary);background:0 0;border:none;border-radius:6px}.ogsm-row-more:hover{background:var(--bg-hover)}.ogsm-row-more svg{width:13px;height:13px}.ogsm-row-actions{align-items:center;gap:4px;display:inline-flex}.ogsm-row-mini-action{border:1px solid var(--border-default);color:var(--text-secondary);background:#fff;border-radius:6px;padding:2px 6px;font-size:10px}.ogsm-badge{border-radius:var(--radius-full);letter-spacing:.02em;white-space:nowrap;border:1px solid #0000;align-items:center;height:24px;padding:2px 10px;font-size:11px;font-weight:700;display:inline-flex}.ogsm-badge-warning{color:#b45309;text-transform:uppercase;background:#fff7ed;border-color:#fdba74}.ogsm-badge-warning:before{content:"";background:#ea580c;border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-right:6px}.ogsm-badge-success{color:#258235;background:#f0faf2;border-color:#a7deaf}.ogsm-badge-info{color:#146eb8;background:#eff8ff;border-color:#a6d8fb}.ogsm-badge-danger{color:#b02525;background:#fef1f1;border-color:#f7aaaa}.ogsm-toast{color:#fff;background:#25252e;border-radius:10px;padding:10px 12px;position:fixed;bottom:20px;right:20px}.ogsm-modal-backdrop{z-index:9999;background:#0f0f1852;place-items:center;width:100vw;height:100vh;display:grid;inset:0;position:fixed!important}.ogsm-modal{background:#fff;border:1px solid #ececef;border-radius:12px;width:min(560px,100vw - 32px);padding:16px}.ogsm-delete-confirm-modal{z-index:10010!important}.ogsm-import-modal{border-radius:14px;width:min(590px,100vw - 32px);padding:18px 18px 14px}.ogsm-import-modal-title{letter-spacing:-.01em;font-size:16px;font-weight:600;margin-bottom:10px!important}.ogsm-import-modal-desc{font-size:14px;line-height:1.35;color:#4b5563!important;margin-bottom:8px!important}.ogsm-import-file-row{margin-top:2px}.ogsm-import-file-input{color:#1f2937;font-size:14px}.ogsm-import-modal-actions{margin-top:14px}.ogsm-modal h2{margin:0 0 8px}.ogsm-modal p{color:#5f5f6b;margin:0}.ogsm-helper-text{font-size:12px;margin-top:8px!important}.ogsm-modal-textarea{border:1px solid var(--border-default);resize:vertical;border-radius:8px;width:100%;margin-top:8px;padding:8px}.ogsm-modal-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.ogsm-import-backdrop{place-items:stretch stretch}.ogsm-import-drawer{background:#fff;border-left:1px solid #e5e7eb;flex-direction:column;width:min(540px,100vw);height:100vh;margin-left:auto;display:flex}.ogsm-import-drawer-header{border-bottom:1px solid #ececef;align-items:flex-start;gap:10px;padding:14px 20px;display:flex}.ogsm-import-drawer-header-icon{color:#2b63e0;background:#eef4ff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.ogsm-import-drawer-title{margin:0;font-size:16px;font-weight:700;line-height:1.35}.ogsm-import-drawer-subtitle{color:#8a8a95;margin:4px 0 0;font-size:12px;line-height:1.4}.ogsm-import-drawer-close{color:#8a8a95;background:0 0;border:0;width:28px;height:28px;font-size:24px;line-height:1}.ogsm-import-drawer-body{padding:16px 20px;overflow:auto}.ogsm-import-info-banner{color:#1d4f91;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;align-items:center;gap:8px;margin-bottom:18px;padding:12px 14px;font-size:12px;line-height:1.45;display:flex}.ogsm-import-info-banner .ogsm-icon{width:14px;height:14px}.ogsm-import-info-banner a{color:#1e4ab8;font-weight:600;text-decoration:underline}.ogsm-import-field{margin-bottom:18px}.ogsm-import-field label{margin-bottom:8px;font-size:12px;font-weight:600;display:block}.ogsm-import-field label span{color:#ef4444}.ogsm-import-field input[type=text]{background:#f8fafc;border:1px solid #dddde2;border-radius:12px;width:100%;height:44px;padding:0 14px;font-size:12px}.ogsm-import-dropzone{color:#6b7280;background:#fcfcfd;border:2px dashed #d1d5db;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;min-height:190px;display:flex}.ogsm-import-dropzone .ogsm-icon{width:34px;height:34px}.ogsm-import-dropzone-title{color:#374151;font-size:12px;font-weight:600}.ogsm-import-dropzone-subtitle{color:#9ca3af;font-size:12px}.ogsm-import-dropzone.has-file{background:#f0fdf4;border-color:#86efac}.ogsm-import-file-hidden{display:none}.ogsm-import-drawer-footer{border-top:1px solid #ececef;justify-content:flex-end;gap:10px;margin-top:auto;padding:12px 20px;display:flex}.ogsm-import-drawer .ogsm-btn{font-size:12px}.ogsm-compact-12,.ogsm-compact-12 *{font-size:11px}.ogsm-tab-strip{border-bottom:1px solid #e5e7eb;gap:10px;margin-bottom:12px;display:flex}.ogsm-tab{color:#6b7280;background:0 0;border:0;padding:8px 2px;font-weight:600}.ogsm-tab.active{color:#2563eb;border-bottom:2px solid #2563eb}.ogsm-ai-title{color:#4c1d95;font-weight:700}.ogsm-ai-sub{color:#6d28d9;margin-top:2px}.ogsm-ai-input{border:1px solid #d1d5db;border-radius:10px;width:100%;height:36px;margin-top:10px;padding:0 10px;font-size:12px}.ogsm-section-title{color:#6b7280;letter-spacing:.04em;margin:14px 0 8px;font-weight:700}.ogsm-chip-row{flex-wrap:wrap;gap:8px;display:flex}.ogsm-chip{color:#5b21b6;background:#f5f3ff;border:1px solid #c4b5fd;border-radius:10px;align-items:center;gap:4px;padding:4px 10px;font-weight:600;display:inline-flex}.ogsm-chip-muted{color:#6b7280;background:#f3f4f6;border-color:#e5e7eb}.ogsm-section-inline{align-items:center;gap:8px;display:flex}.ogsm-box-muted{color:#4b5563;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;padding:10px}.ogsm-method-box{border:1px solid #e5e7eb;border-radius:10px;margin-top:10px;overflow:hidden}.ogsm-method-head{color:#6b7280;background:#f3f4f6;padding:8px 10px;font-weight:700}.ogsm-method-row{border-top:1px solid #f1f5f9;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:7px 10px;display:grid}.ogsm-kpi{border:1px solid;border-radius:8px;padding:2px 8px;font-weight:700}.ogsm-kpi.red{color:#b91c1c;background:#fff1f2;border-color:#fecaca}.ogsm-kpi.yellow{color:#a16207;background:#fffbeb;border-color:#fde68a}.ogsm-kpi.green{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.ogsm-source-line{color:#6b7280;border-top:1px dashed #e5e7eb;margin-top:10px;padding-top:10px}.ogsm-source-line strong{color:#15803d}.ogsm-measure-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.ogsm-measure-card{border:1px solid #e5e7eb;border-radius:10px;padding:10px}.ogsm-measure-card strong{margin-top:6px;font-size:18px;display:block}.ogsm-measure-card.blue{color:#1e40af;background:#eef4ff;border-color:#bfdbfe}.ogsm-measure-card.yellow{color:#92400e;background:#fffbeb;border-color:#fde68a}.ogsm-strategy-card{color:#374151;border:1px solid #e5e7eb;border-radius:10px;margin-bottom:8px;padding:10px;font-weight:600}.ogsm-strategy-card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.ogsm-strategy-card-meta{color:#6b7280;margin-top:6px}.ogsm-goal-detail-strategy-head{justify-content:space-between;align-items:center;gap:10px;margin-top:14px;margin-bottom:8px;display:flex}.ogsm-goal-detail-strategy-head .ogsm-section-title{margin:0}.ogsm-goal-add-strategy-btn{color:#374151;cursor:pointer;height:32px;transition:all var(--duration-fast) var(--ease-out);background:#fff;border:1px solid #d9dde5;border-radius:8px;align-items:center;gap:7px;padding:0 10px;font-weight:700;display:inline-flex;box-shadow:0 1px 2px #0f172a0a}.ogsm-goal-add-strategy-btn:hover{color:#1e4ab8;background:#f8fbff;border-color:#b6c6e3}.ogsm-goal-add-plus{font-size:16px;font-weight:800;line-height:1}.ogsm-goal-add-code{color:#1e4ab8;height:22px;font-family:var(--font-mono);background:#eef4ff;border:1px solid #cfe0ff;border-radius:7px;align-items:center;padding:0 8px;font-weight:800;display:inline-flex}.ogsm-goal-add-chev{color:#64748b;width:13px;height:13px}.ogsm-link-banner{color:#1d4f91;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;margin-top:10px;padding:10px}.ogsm-flow-box{border:1px solid #e5e7eb;border-radius:10px;margin:10px 0;padding:10px}.ogsm-flow-item{color:#6b7280;padding:6px 0;font-weight:600}.ogsm-flow-item.ok{color:#15803d}.ogsm-flow-item.current{color:#ca8a04}.ogsm-strategy-detail-status{margin-bottom:10px}.ogsm-strategy-flow-box{background:#fff;border:1px solid #d9dde5;border-radius:10px;padding:14px 14px 12px}.ogsm-strategy-flow-title{letter-spacing:.06em;margin-top:0;margin-bottom:10px;font-size:11px}.ogsm-strategy-flow-box{position:relative}.ogsm-strategy-flow-box:before{content:"";background:#d6dae1;width:1px;position:absolute;top:52px;bottom:24px;left:29px}.ogsm-flow-step{z-index:1;align-items:center;gap:9px;padding:6px 0;display:flex;position:relative}.ogsm-flow-step-dot{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:700;display:inline-flex}.ogsm-flow-step-label{font-size:11px;font-weight:700}.ogsm-flow-step-meta{color:#8a8a95;font-size:11px}.ogsm-flow-step-done .ogsm-flow-step-dot{color:#fff;background:#2e9a42}.ogsm-flow-step-done .ogsm-flow-step-label{color:#2e9a42}.ogsm-flow-step-current .ogsm-flow-step-dot{color:#fff;background:#eab308}.ogsm-flow-step-current .ogsm-flow-step-label{color:#a16207}.ogsm-flow-step-wait .ogsm-flow-step-dot{color:#6b7280;background:#e5e7eb}.ogsm-flow-step-wait .ogsm-flow-step-label{color:#6b7280}.ogsm-strategy-detail-actions{justify-content:flex-end;margin-top:8px;margin-bottom:10px;display:flex}.ogsm-strategy-detail-actions .ogsm-btn{border-color:#d1d5db;height:34px;font-size:11px}.ogsm-strategy-goal-chip{text-overflow:ellipsis;white-space:nowrap;max-width:280px;font-size:11px;overflow:hidden}.ogsm-dept-selector{position:relative}.ogsm-dept-trigger{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-primary);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);justify-content:space-between;align-items:center;gap:8px;min-width:200px;max-width:280px;padding:7px 12px;font-family:inherit;display:inline-flex}.ogsm-dept-trigger:hover{border-color:var(--neutral-05)}.ogsm-dept-trigger.open{border-color:var(--primary-06);box-shadow:var(--shadow-focus)}.ogsm-dept-trigger>svg:first-of-type{width:14px;height:14px;color:var(--primary-06);flex-shrink:0}.ogsm-dept-trigger-label{text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1;align-items:center;gap:4px;min-width:0;display:flex;overflow:hidden}.ogsm-dept-trigger-crumb{color:var(--text-tertiary);font-weight:var(--fw-medium);font-size:var(--fs-micro)}.ogsm-dept-trigger-crumb-sep{color:var(--neutral-05);margin:0 2px}.ogsm-dept-trigger-placeholder{color:var(--text-tertiary);font-style:italic}.ogsm-dept-trigger-chev{width:12px;height:12px;color:var(--text-tertiary);transition:transform var(--duration-base) var(--ease-out);flex-shrink:0;margin-left:4px}.ogsm-dept-trigger.open .ogsm-dept-trigger-chev{color:var(--primary-06);transform:rotate(180deg)}.ogsm-dept-dropdown{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);width:320px;max-height:420px;box-shadow:var(--shadow-xl);z-index:30;opacity:0;pointer-events:none;transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);flex-direction:column;display:flex;position:absolute;top:calc(100% + 4px);left:0;transform:translateY(-4px)scale(.98)}.ogsm-dept-dropdown.open{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.ogsm-dept-dropdown-head{padding:var(--sp-3) var(--sp-3) 10px;border-bottom:1px solid var(--border-subtle)}.ogsm-dept-search{position:relative}.ogsm-dept-search input{border:1px solid var(--border-default);border-radius:var(--radius-md);width:100%;height:32px;font-size:var(--fs-xs);background:var(--neutral-01);color:var(--text-primary);transition:all var(--duration-fast);outline:none;padding:0 30px;font-family:inherit}.ogsm-dept-search input:focus{border-color:var(--primary-06);background:var(--bg-surface);box-shadow:var(--shadow-focus)}.ogsm-dept-search input::placeholder{color:var(--text-tertiary)}.ogsm-dept-search>svg{width:13px;height:13px;color:var(--text-tertiary);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.ogsm-dept-search-clear{border-radius:var(--radius-xs);width:18px;height:18px;color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:none;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.ogsm-dept-search-clear:hover{background:var(--neutral-02);color:var(--text-secondary)}.ogsm-dept-search-clear.visible{display:flex}.ogsm-dept-search-clear svg{width:11px;height:11px}.ogsm-dept-dropdown-toolbar{justify-content:space-between;align-items:center;margin-top:10px;display:flex}.ogsm-dept-toolbar-btn{font-size:var(--fs-micro);font-weight:var(--fw-bold);color:var(--text-tertiary);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border-radius:var(--radius-xs);transition:color var(--duration-fast);background:0 0;border:none;padding:2px 4px;font-family:inherit}.ogsm-dept-toolbar-btn:hover{color:var(--primary-06);background:var(--neutral-02)}.ogsm-dept-toolbar-count{font-size:var(--fs-micro);font-weight:var(--fw-semibold);color:var(--text-tertiary);font-family:var(--font-mono);letter-spacing:-.01em}.ogsm-dept-tree{padding:var(--sp-2);flex:1;min-height:0;overflow-y:auto}.ogsm-dept-tree::-webkit-scrollbar{width:6px}.ogsm-dept-tree::-webkit-scrollbar-thumb{background:var(--neutral-04);border-radius:3px}.ogsm-custom-scrollbar{scrollbar-width:thin;scrollbar-color:var(--neutral-04) transparent}.ogsm-dept-node{font-size:var(--fs-xs);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast);-webkit-user-select:none;user-select:none;font-weight:var(--fw-medium);align-items:center;gap:8px;padding:7px 10px;display:flex;position:relative}.ogsm-dept-node:hover{background:var(--bg-hover)}.ogsm-dept-node.selected{background:var(--primary-01);color:var(--primary-07);font-weight:var(--fw-semibold)}.ogsm-dept-node.selected .ogsm-dept-node-ic{color:var(--primary-06)}.ogsm-dept-node[data-hidden=true]{display:none}.ogsm-dept-node-chev{width:14px;height:14px;color:var(--text-tertiary);transition:transform var(--duration-fast) var(--ease-out);border-radius:var(--radius-xs);cursor:pointer;flex-shrink:0;padding:1px}.ogsm-dept-node-chev:hover{color:var(--primary-06);background:var(--neutral-02)}.ogsm-dept-node-chev.expanded{color:var(--primary-06);transform:rotate(90deg)}.ogsm-dept-node-chev.leaf{visibility:hidden}.ogsm-dept-node-ic{width:14px;height:14px;color:var(--text-tertiary);flex-shrink:0}.ogsm-dept-node.level-0 .ogsm-dept-node-ic{color:var(--primary-06)}.ogsm-dept-node.level-1 .ogsm-dept-node-ic{color:var(--text-secondary)}.ogsm-dept-node.level-2 .ogsm-dept-node-ic,.ogsm-dept-node.level-3 .ogsm-dept-node-ic,.ogsm-dept-node.level-4 .ogsm-dept-node-ic,.ogsm-dept-node.level-5 .ogsm-dept-node-ic,.ogsm-dept-node.level-6 .ogsm-dept-node-ic{color:var(--text-tertiary)}.ogsm-dept-node-label{text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.005em;flex:1;min-width:0;overflow:hidden}.ogsm-dept-node-label mark{background:var(--yellow-02);color:var(--yellow-08);font-weight:var(--fw-bold);border-radius:2px;padding:0 2px}.ogsm-dept-node-count{font-size:var(--fs-micro);font-weight:var(--fw-bold);color:var(--text-tertiary);font-family:var(--font-mono);background:var(--neutral-02);letter-spacing:-.01em;border-radius:10px;flex-shrink:0;padding:1px 7px}.ogsm-dept-node.selected .ogsm-dept-node-count{background:var(--primary-02);color:var(--primary-07)}.ogsm-dept-node.level-0{padding-left:10px}.ogsm-dept-node.level-1{padding-left:24px}.ogsm-dept-node.level-2{padding-left:40px}.ogsm-dept-node.level-3{padding-left:56px}.ogsm-dept-node.level-4{padding-left:72px}.ogsm-dept-node.level-5{padding-left:88px}.ogsm-dept-node.level-6{padding-left:104px}.ogsm-dept-node.level-1:before,.ogsm-dept-node.level-2:before,.ogsm-dept-node.level-3:before,.ogsm-dept-node.level-4:before,.ogsm-dept-node.level-5:before,.ogsm-dept-node.level-6:before{content:"";border-left:1.5px dashed var(--neutral-04);pointer-events:none;position:absolute;top:0;bottom:0;left:16px}.ogsm-dept-node.level-2:before{left:32px}.ogsm-dept-node.level-3:before{left:48px}.ogsm-dept-node.level-4:before{left:64px}.ogsm-dept-node.level-5:before{left:80px}.ogsm-dept-node.level-6:before{left:96px}.ogsm-dept-node.level-1:after,.ogsm-dept-node.level-2:after,.ogsm-dept-node.level-3:after,.ogsm-dept-node.level-4:after,.ogsm-dept-node.level-5:after,.ogsm-dept-node.level-6:after{content:"";border-top:1.5px dashed var(--neutral-04);pointer-events:none;width:6px;height:1.5px;position:absolute;top:50%}.ogsm-dept-node.level-1:after{left:16px}.ogsm-dept-node.level-2:after{left:32px}.ogsm-dept-node.level-3:after{left:48px}.ogsm-dept-node.level-4:after{left:64px}.ogsm-dept-node.level-5:after{left:80px}.ogsm-dept-node.level-6:after{left:96px}.ogsm-dept-node.selected:after{border-top-color:var(--primary-04);border-top-style:solid}.ogsm-dept-empty{padding:var(--sp-6) var(--sp-3);text-align:center;color:var(--text-tertiary);font-size:var(--fs-xs);flex-direction:column;align-items:center;gap:8px;display:flex}.ogsm-dept-empty svg{width:32px;height:32px;color:var(--neutral-04)}.ogsm-btn-clear-filters{border-radius:var(--radius-md);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-tertiary);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);white-space:nowrap;background:0 0;border:1px solid #0000;flex-shrink:0;align-items:center;gap:6px;padding:6px 10px 6px 8px;font-family:inherit;line-height:1;display:none}.ogsm-btn-clear-filters.is-visible{display:inline-flex}.ogsm-btn-clear-filters svg{flex-shrink:0;width:14px;height:14px}.ogsm-btn-clear-filters:hover{background:var(--red-01);border-color:var(--red-03);color:var(--red-07)}.ogsm-btn-clear-filters:active{background:var(--red-02)}.ogsm-btn-clear-filters:focus-visible{outline:2px solid var(--red-04);outline-offset:1px}.ogsm-tree-persp-header{align-items:center;gap:var(--sp-2);border-radius:var(--radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--neutral-01);border:1px solid var(--border-default);transition:background var(--duration-fast) var(--ease-out);margin:8px 4px 2px;padding:8px 10px;display:flex}.ogsm-tree-persp-header:hover{background:var(--neutral-02)}.ogsm-tree-persp-header:first-child{margin-top:4px}.ogsm-tree-persp-header .ogsm-tree-persp-badge{width:22px;height:22px;font-size:var(--fs-xs);font-weight:var(--fw-extrabold);justify-content:center;align-items:center;padding:0;display:inline-flex}.ogsm-tree-persp-header .ogsm-tree-persp-name{font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--text-primary);letter-spacing:-.005em;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.ogsm-tree-persp-header .ogsm-tree-persp-count{font-size:var(--fs-micro);color:var(--text-tertiary);font-family:var(--font-mono);flex-shrink:0}.ogsm-tree-persp-header.tree-persp-F{background:#eff4fb;border-color:#3055f82e}.ogsm-tree-persp-header.tree-persp-C{background:#fcf3ee;border-color:#e36b0f33}.ogsm-tree-persp-header.tree-persp-B,.ogsm-tree-persp-header.tree-persp-P{background:#f1f8f2;border-color:#2e9a4233}.ogsm-tree-persp-header.tree-persp-L{background:#f4f0fb;border-color:#7849dd33}.ogsm-bsc-badge{border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:.02em;white-space:nowrap;border:1px solid #0000;align-items:center;gap:4px;height:20px;padding:2px 8px;display:inline-flex}.ogsm-bsc-badge.F{color:#1e408b;background:#eff4fb;border-color:#3055f82e}.ogsm-bsc-badge.C{color:#7a3a0e;background:#fcf3ee;border-color:#e36b0f33}.ogsm-bsc-badge.B,.ogsm-bsc-badge.P{color:#1d6929;background:#f1f8f2;border-color:#2e9a4233}.ogsm-bsc-badge.L{color:#492a95;background:#f4f0fb;border-color:#7849dd33}.ogsm-goal-code-badge{letter-spacing:0;height:22px;padding:0 8px;font-size:11px;font-weight:900;box-shadow:inset 0 0 0 1px #ffffff73}.ogsm-tree-persp-header{align-items:center;gap:var(--sp-2);cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid var(--border-default);border-radius:var(--radius-sm);min-height:40px;transition:filter var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);margin:8px 4px 2px;padding:8px 10px;display:flex}.ogsm-goal-formula-block{background:var(--neutral-01);border-radius:var(--radius-md);padding:16px}.ogsm-goal-formula-title{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.ogsm-goal-formula-code{color:#3730a3;background:#e0e7ff;border-radius:999px;align-items:center;padding:3px 10px;font-size:13px;font-weight:700;display:inline-flex}.ogsm-goal-formula-name{color:var(--text-primary);font-size:15px;font-weight:700}.ogsm-goal-formula-rows{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;margin-top:16px;padding:12px 16px}.ogsm-goal-formula-row{font-family:var(--font-mono);padding:4px 0;font-size:13px;line-height:1.5;display:flex}.ogsm-goal-formula-condition{color:#334155;width:160px}.ogsm-goal-formula-sep{color:#94a3b8;width:24px}.ogsm-goal-formula-result{color:#1e4ab8;flex:1;font-weight:600}.ogsm-tree-persp-header:hover{filter:brightness(.98)}.ogsm-tree-persp-header:focus-visible{outline:2px solid var(--primary-06);outline-offset:-2px}.ogsm-tree-persp-arrow{width:14px;height:14px;color:var(--text-tertiary);transition:transform var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:none;flex-shrink:0;padding:0}.ogsm-tree-persp-arrow.expanded{color:var(--primary-06);transform:none}.ogsm-tree-persp-header .ogsm-tree-persp-badge{border-radius:var(--radius-sm);border:1px solid #0000;flex:none;justify-content:center;align-items:center;width:auto;height:28px;padding:3px 7px;display:inline-flex}.ogsm-tree-persp-letter{border-radius:var(--radius-xs);min-width:20px;height:20px;font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-extrabold);justify-content:center;align-items:center;padding:0 5px;line-height:1;display:inline-flex}.ogsm-tree-persp-header .ogsm-tree-persp-name{min-width:0;font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--text-primary);letter-spacing:-.005em;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.ogsm-tree-persp-letter{border-radius:var(--radius-xs);width:20px;height:20px;font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-extrabold);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.ogsm-tree-persp-header .ogsm-tree-persp-count{font-size:var(--fs-xs);color:var(--text-secondary);font-weight:var(--fw-semibold);flex-shrink:0;font-family:inherit}.ogsm-tree-item.goal{flex-direction:column;align-items:stretch;gap:4px;margin-left:4px}.ogsm-tree-item.goal .ogsm-goal-row-main{align-items:center;gap:var(--sp-2);width:100%;display:flex}.ogsm-tree-item.goal .ogsm-goal-row-progress{align-items:center;gap:8px;padding-left:26px;display:flex}.ogsm-tree-item.goal .ogsm-goal-row-progress .ogsm-progress-track{background:var(--neutral-03);border-radius:var(--radius-full);flex:1;height:4px;overflow:hidden}.ogsm-tree-item.goal .ogsm-goal-row-progress .ogsm-progress-fill{border-radius:var(--radius-full);height:100%;transition:width var(--duration-base) var(--ease-out)}.ogsm-tree-item.goal .ogsm-goal-row-progress .ogsm-progress-fill.success{background:var(--green-06)}.ogsm-tree-item.goal .ogsm-goal-row-progress .ogsm-progress-fill.warning{background:var(--yellow-05)}.ogsm-tree-item.goal .ogsm-goal-row-progress .ogsm-progress-fill.danger{background:var(--red-05)}.ogsm-tree-item.goal .ogsm-goal-row-progress .ogsm-progress-fill.empty{background:var(--neutral-04)}.ogsm-tree-item.goal .ogsm-goal-row-progress .ogsm-progress-pct{font-size:var(--fs-micro);font-family:var(--font-mono);font-weight:var(--fw-semibold);text-align:right;flex-shrink:0;min-width:30px}.ogsm-tree-item.goal .ogsm-goal-row-progress .ogsm-progress-pct.empty{color:var(--text-tertiary)}.ogsm-tree-item.subgoal{margin-left:22px;padding-left:10px;position:relative}.ogsm-tree-item.subgoal:before{content:"";background:var(--border-default);width:1px;position:absolute;top:0;bottom:0;left:4px}.ogsm-tree-item.strategy.under-goal{margin-left:36px}.ogsm-tree-item.strategy.under-subgoal{margin-left:44px}.ogsm-tree-add-strategy-btn--direct{color:var(--text-secondary)}.ogsm-tree-add-strategy-btn--direct .ogsm-tree-add-target{border-style:dashed}.ogsm-tree-add-strategy-btn--direct:hover{color:var(--primary-07)}.ogsm-tree-checkbox{border-radius:var(--radius-xs);border:1.5px solid var(--border-strong);background:var(--bg-surface);cursor:pointer;width:16px;height:16px;transition:all var(--duration-fast) var(--ease-out);color:#0000;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.ogsm-tree-checkbox:hover{border-color:var(--primary-05)}.ogsm-tree-checkbox.checked{background:var(--primary-06);border-color:var(--primary-06);color:#fff}.ogsm-tree-checkbox svg{width:10px;height:10px}.ogsm-tree-checkbox-spacer{flex-shrink:0;width:16px;height:16px;display:inline-block}.ogsm-tree-row-end{flex-shrink:0;align-items:center;margin-left:auto;display:inline-flex}.ogsm-tree-row-end-shared{width:48px;padding-right:var(--sp-2);flex-shrink:0;justify-content:flex-end;align-items:center;display:inline-flex}.ogsm-tree-row-end-status{flex-shrink:0;justify-content:flex-end;align-items:center;width:140px;display:inline-flex}.ogsm-tree-row-end-actions{flex-shrink:0;justify-content:center;align-items:center;width:30px;margin-left:4px;display:inline-flex}.ogsm-tree-action-trigger{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-tertiary);cursor:pointer;transition:all var(--duration-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.ogsm-tree-action-trigger:hover{background:var(--neutral-02);color:var(--text-primary)}.ogsm-tree-action-menu.open .ogsm-tree-action-trigger{background:var(--neutral-03);color:var(--text-primary)}.ogsm-tree-action-menu .ogsm-dropdown{z-index:50;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);min-width:160px;box-shadow:var(--shadow-lg);padding:4px;position:absolute;top:100%;right:0}.ogsm-tree-toggle{border-radius:var(--radius-xs);cursor:pointer;width:18px;height:18px;color:var(--text-tertiary);transition:all var(--duration-fast) var(--ease-out);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.ogsm-tree-toggle:hover{background:var(--neutral-03);color:var(--text-primary)}.ogsm-tree-toggle .ogsm-icon{width:12px;height:12px;transition:transform var(--duration-fast)}.ogsm-tree-toggle.expanded .ogsm-icon{transform:rotate(90deg)}.ogsm-def-badge{border-radius:var(--radius-full);height:20px;font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:.02em;white-space:nowrap;text-transform:uppercase;border:1px solid #0000;flex-shrink:0;align-items:center;gap:4px;padding:2px 8px;line-height:1;display:inline-flex}.ogsm-def-badge .ogsm-def-badge-dot{border-radius:var(--radius-full);background:currentColor;flex-shrink:0;width:6px;height:6px}.ogsm-def-badge.def-draft{background:var(--neutral-02);color:var(--text-secondary);border-color:var(--neutral-04)}.ogsm-def-badge.def-checking{color:#944306;background:#fff5ec;border-color:#fec796}.ogsm-def-badge.def-checking .ogsm-def-badge-dot{background:#f7872e;animation:1.8s infinite pulseOrange}.ogsm-def-badge.def-pending{color:#6c3104;background:#ffe4cb;border-color:#fca661}.ogsm-def-badge.def-approved{background:var(--green-01);color:var(--green-07);border-color:var(--green-03)}.ogsm-def-badge.def-rejected{background:var(--red-01);color:var(--red-07);border-color:var(--red-03)}.ogsm-def-badge.def-adjusting{color:#c2410c;background:#fff7ed;border-color:#fdba74}.ogsm-def-badge.def-unlock-pending{background:var(--yellow-01);color:var(--yellow-07);border-color:var(--yellow-03)}@keyframes pulseOrange{0%,to{box-shadow:0 0 #f9731680}50%{box-shadow:0 0 0 3px #f9731600}}.ogsm-tree-inline-add{margin:4px 4px 6px 28px;display:inline-flex}.ogsm-tree-inline-add-subgoal{margin-left:44px}.ogsm-tree-add-strategy-btn{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.ogsm-tree-add-strategy-btn .ogsm-tree-add-target{height:18px;font-size:var(--fs-micro);font-weight:var(--fw-extrabold);padding:0 6px}.ogsm-tree-item .ogsm-name{font-size:var(--fs-sm);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.ogsm-tree-item.strategy .ogsm-name{color:var(--text-secondary)}.ogsm-tree-item .ogsm-code-mono{font-family:var(--font-mono);font-size:var(--fs-micro);font-weight:var(--fw-bold);color:var(--text-secondary);flex-shrink:0}.ogsm-tree-item-meta{font-size:var(--fs-micro);color:var(--text-tertiary);font-family:var(--font-mono);flex-shrink:0}.ogsm-icon{flex-shrink:0;width:14px;height:14px;display:inline-block}.ogsm-tree-shared-mini{font-size:var(--fs-micro);color:#7849dd;flex-shrink:0;align-items:center;gap:2px;display:inline-flex}.ogsm-tree-shared-mini .ogsm-icon{width:10px;height:10px}.ogsm-tree-item.goal .ogsm-name{font-weight:400;font-size:var(--fs-sm)}.ogsm-tree-action-trigger{border-radius:var(--radius-sm);width:26px;height:26px;color:var(--text-tertiary);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;display:inline-flex}.ogsm-tree-action-trigger:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-default)}.ogsm-tree-action-menu{position:relative}.ogsm-tree-action-menu .ogsm-dropdown{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);width:180px;box-shadow:var(--shadow-lg);z-index:50;padding:var(--sp-1);display:block;position:absolute;top:calc(100% + 4px);right:0}.ogsm-dropdown-item{width:100%;font-size:var(--fs-xs);text-align:left;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-primary);transition:background var(--duration-fast);background:0 0;border:none;align-items:center;gap:8px;padding:8px 12px;display:flex}.ogsm-dropdown-item:hover{background:var(--bg-hover)}.ogsm-dropdown-item.danger{color:var(--red-06)}.ogsm-dropdown-item.danger:hover{background:var(--red-01)}.ogsm-drawer-backdrop{z-index:1000;opacity:0;pointer-events:none;transition:opacity var(--duration-base) var(--ease-out);background:#0f0f1873;justify-content:flex-end;display:flex;position:fixed;inset:0}.ogsm-drawer-backdrop.open{opacity:1;pointer-events:auto}.ogsm-drawer,.ogsm-import-drawer{background:var(--bg-surface);border-left:1px solid var(--border-default);width:min(540px,100vw);height:100vh;transition:transform var(--duration-base) var(--ease-out);flex-direction:column;display:flex;transform:translate(100%)}.ogsm-drawer-backdrop.open .ogsm-drawer,.ogsm-drawer-backdrop.open .ogsm-import-drawer{transform:translate(0)}.ogsm-drawer-header,.ogsm-import-drawer-header{border-bottom:1px solid var(--border-default);align-items:flex-start;gap:12px;padding:16px 20px;display:flex}.ogsm-import-drawer-header-icon{background:var(--primary-01);width:36px;height:36px;color:var(--primary-06);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:flex}.ogsm-import-drawer-header-icon .ogsm-icon{width:18px;height:18px}.ogsm-import-drawer-header-text{flex:1}.ogsm-ai-box{background:#fdfaff;border:1px solid #efe5fd;border-radius:12px;margin:20px 0;padding:16px}.ogsm-ai-title{color:#5521b5;margin-bottom:2px;font-size:13px;font-weight:700}.ogsm-ai-sub{color:#6b7280;margin-bottom:12px;font-size:12px}.ogsm-ai-input-wrap{gap:8px;display:flex}.ogsm-ai-input{border:1px solid #e5e7eb;border-radius:8px;outline:none;flex:1;height:38px;padding:0 12px;font-size:13px;transition:border-color .2s}.ogsm-ai-input:focus{border-color:#7c3aed}.ogsm-ai-gen-btn{color:#fff;cursor:pointer;background:#3730a3;border:none;border-radius:20px;align-items:center;gap:6px;height:38px;padding:0 16px;font-size:13px;font-weight:600;transition:background .2s;display:flex}.ogsm-ai-gen-btn:hover{background:#312e81}.ogsm-inline-error{color:var(--red-06);margin-top:4px;font-size:11px}.ogsm-import-field.has-error input{border-color:var(--red-06)!important}.ogsm-import-field.has-error input:focus{box-shadow:0 0 0 2px #dc26261a}.ogsm-import-drawer-title{color:var(--text-primary);margin:0;font-size:16px;font-weight:700}.ogsm-import-drawer-subtitle{color:var(--text-tertiary);margin:2px 0 0;font-size:12px}.ogsm-import-drawer-close{width:24px;height:24px;color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-size:20px;display:flex}.ogsm-import-drawer-close:hover{color:var(--text-primary)}.ogsm-drawer-body,.ogsm-import-drawer-body{flex:1;padding:20px;overflow-y:auto}.ogsm-drawer-footer,.ogsm-import-drawer-footer{border-top:1px solid var(--border-default);justify-content:flex-end;gap:12px;padding:12px 20px;display:flex}.ogsm-text-btn,.ogsm-strategy-btn-link{color:var(--text-secondary);cursor:pointer;font:inherit;background:0 0;border:0}.ogsm-text-btn:hover,.ogsm-strategy-btn-link:hover{color:var(--primary-07)}.ogsm-strategy-btn-link.danger:hover{color:var(--red-07)}.ogsm-dropdown-item.success{color:var(--green-06)!important}.ogsm-dropdown-item.success:hover{background:var(--green-01)!important}.ogsm-def-badge.def-adjusting{color:#c2410c;background:#fff7ed}.ogsm-def-badge.def-adjusting .ogsm-def-badge-dot{background:#f97316}.ogsm-page-root .ogsm-tree-panel{z-index:1;position:relative;overflow:visible}.ogsm-page-root .ogsm-tree-content{padding:8px 6px 12px;overflow:visible}.ogsm-page-root .ogsm-tree-item{min-height:38px;margin:2px 0}.ogsm-page-root .ogsm-tree-item.goal{gap:0;margin-left:0}.ogsm-page-root .ogsm-tree-item.goal .ogsm-goal-row-progress{display:none}.ogsm-page-root .ogsm-tree-item.strategy.under-goal{margin-left:28px}.ogsm-page-root .ogsm-tree-item.strategy.under-subgoal{margin-left:40px}.ogsm-page-root .ogsm-tree-row-end-status{width:124px}.ogsm-page-root .ogsm-tree-item.ogsm-menu-active{z-index:80;position:relative}.ogsm-page-root .ogsm-tree-action-menu.open{z-index:90}.ogsm-page-root .ogsm-tree-action-menu.open .ogsm-dropdown{z-index:100}.ogsm-selection-bar-wrap{z-index:50;width:min(900px,100vw - 32px);position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.ogsm-selection-bar{color:#fff;background:#1e1e2d;border:1px solid #ffffff1f;border-radius:14px;align-items:center;gap:12px;min-height:54px;padding:9px 12px;display:flex;box-shadow:0 18px 46px #0f172a47}.ogsm-selection-summary,.ogsm-selection-actions,.ogsm-selection-btn{align-items:center;display:inline-flex}.ogsm-selection-summary{gap:10px;min-width:250px}.ogsm-selection-count{background:#2b63e0;border-radius:10px;flex:0 0 34px;justify-content:center;align-items:center;width:34px;height:34px;font-size:14px;font-weight:800;display:inline-flex}.ogsm-selection-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.ogsm-selection-title{color:#fff;white-space:nowrap;font-size:13px;font-weight:800;line-height:1.2}.ogsm-selection-role{color:#ffffff7a;text-transform:uppercase;white-space:nowrap;font-size:10px;font-weight:800;line-height:1.2}.ogsm-selection-divider{background:#ffffff1a;width:1px;height:32px}.ogsm-selection-actions{gap:12px;margin-left:auto}.ogsm-selection-btn{white-space:nowrap;min-height:40px;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:1px solid #0000;border-radius:10px;justify-content:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:800;line-height:1.2}.ogsm-selection-btn:active{transform:scale(.98)}.ogsm-selection-btn-reject{color:#ef4444;background:#ef44441a;border-color:#ef444438;min-width:130px}.ogsm-selection-btn-reject:hover{background:#ef44442e}.ogsm-selection-btn-primary{color:#fff;min-width:280px}.ogsm-selection-btn-primary.is-orange{background:#f26a1b}.ogsm-selection-btn-primary.is-orange:hover{background:#d95f18}.ogsm-selection-btn-primary.is-green{background:#258235}.ogsm-selection-btn-primary.is-green:hover{background:#1f6f2d}.ogsm-selection-btn-primary.is-loading{cursor:not-allowed;background:#f9731694}.ogsm-selection-btn-clear{color:#ffffffb8;background:#ffffff0d;border-color:#ffffff14;min-width:118px}.ogsm-selection-btn-clear:hover{background:#ffffff1a}.ogsm-selection-spinner{border:2px solid #ffffff52;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite ogsmSpin}@keyframes ogsmSpin{to{transform:rotate(360deg)}}@media (max-width:720px){.ogsm-selection-bar{flex-direction:column;align-items:stretch}.ogsm-selection-divider{display:none}.ogsm-selection-actions{flex-wrap:wrap;width:100%;margin-left:0}.ogsm-selection-btn{flex:auto}}
