.app-layout[data-v-7a7a37b1]{min-height:100vh;display:flex;flex-direction:column;position:relative}.home-page[data-v-517c1f0d]{display:flex;flex-direction:column;min-height:100vh;position:relative;background:#f8fafc;overflow-x:hidden}.container[data-v-517c1f0d]{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem;box-sizing:border-box}.ambient-glow[data-v-517c1f0d]{position:absolute;border-radius:50%;filter:blur(100px);pointer-events:none;opacity:.55;z-index:0}.glow-top-left[data-v-517c1f0d]{top:-100px;left:5%;width:500px;height:500px;background:radial-gradient(circle,#38bdf840,#0284c700 70%)}.glow-top-right[data-v-517c1f0d]{top:50px;right:5%;width:450px;height:450px;background:radial-gradient(circle,#0ea5e933,#0ea5e900 70%)}.glow-bottom-center[data-v-517c1f0d]{bottom:50px;left:30%;width:600px;height:600px;background:radial-gradient(circle,#0284c726,#0284c700 70%)}.navbar[data-v-517c1f0d]{padding:1rem 0;border-bottom:1px solid rgba(226,232,240,.85);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#f8fafcd9;position:sticky;top:0;z-index:50}.nav-content[data-v-517c1f0d]{display:flex;align-items:center;justify-content:space-between}.brand[data-v-517c1f0d]{display:flex;align-items:center;gap:.85rem}.brand-logo[data-v-517c1f0d]{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#0284c7,#0369a1);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 12px #0284c74d}.brand-info[data-v-517c1f0d]{display:flex;flex-direction:column}.brand-name[data-v-517c1f0d]{font-size:1.15rem;font-weight:700;color:#0f172a;line-height:1.2}.brand-tag[data-v-517c1f0d]{font-size:.75rem;font-weight:600;color:#0284c7;letter-spacing:.02em}.nav-links[data-v-517c1f0d]{display:flex;align-items:center;gap:1rem}.system-status[data-v-517c1f0d]{display:flex;align-items:center;gap:.5rem;padding:.35rem .85rem;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:9999px;font-size:.825rem;font-weight:600;color:#059669}.status-indicator[data-v-517c1f0d]{width:7px;height:7px;border-radius:50%;background:#10b981;box-shadow:0 0 8px #10b98199}.btn-nav[data-v-517c1f0d]{padding:.5rem 1.15rem;font-size:.875rem;font-weight:600;border-radius:8px}.hero-section[data-v-517c1f0d]{flex:1;padding:4rem 0 5rem;display:flex;align-items:center;position:relative;z-index:1}.hero-container[data-v-517c1f0d]{display:flex;flex-direction:column;align-items:center;text-align:center}.hero-badge[data-v-517c1f0d]{display:inline-flex;align-items:center;gap:.45rem;padding:.45rem 1.1rem;border-radius:9999px;background:#0284c714;border:1px solid rgba(2,132,199,.2);color:#0284c7;font-size:.85rem;font-weight:600;margin-bottom:1.5rem}.badge-icon[data-v-517c1f0d]{color:#0284c7}.hero-title[data-v-517c1f0d]{font-size:2.5rem;font-weight:800;line-height:1.25;color:#0f172a;max-width:900px;margin-bottom:.75rem;letter-spacing:-.02em}.hero-gradient-subtitle[data-v-517c1f0d]{font-size:1.35rem;font-weight:700;color:#0284c7;max-width:800px;margin:0 0 1.25rem;line-height:1.4}.hero-description[data-v-517c1f0d]{font-size:1.05rem;color:#64748b;max-width:680px;margin-bottom:2.25rem;line-height:1.75}.hero-actions[data-v-517c1f0d]{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:4.5rem;flex-wrap:wrap}.btn-hero[data-v-517c1f0d]{padding:.8rem 1.75rem;font-size:.95rem;font-weight:600;border-radius:10px}.info-grid[data-v-517c1f0d]{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;width:100%}.info-card[data-v-517c1f0d]{background:#ffffffe0;border:1px solid rgba(226,232,240,.9);border-radius:18px;padding:1.85rem 1.5rem;text-align:left;box-shadow:0 4px 6px -1px #0000000a,0 2px 4px -2px #0000000a;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;display:flex;flex-direction:column}.info-card[data-v-517c1f0d]:hover{transform:translateY(-4px);box-shadow:0 20px 25px -5px #0284c71a,0 8px 10px -6px #0284c70d;border-color:#bae6fd}.icon-box[data-v-517c1f0d]{width:48px;height:48px;border-radius:12px;background:#f0f9ff;color:#0284c7;border:1px solid #bae6fd;display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem}.info-card h3[data-v-517c1f0d]{font-size:1.05rem;font-weight:700;margin-bottom:.6rem;color:#0f172a;line-height:1.35}.info-card p[data-v-517c1f0d]{font-size:.875rem;color:#64748b;line-height:1.6;margin:0}.footer[data-v-517c1f0d]{border-top:1px solid rgba(226,232,240,.85);background:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:1.5rem 0;margin-top:auto;font-size:.875rem;color:#64748b;position:relative;z-index:10}.footer-content[data-v-517c1f0d]{display:flex;align-items:center;justify-content:space-between}.footer-left p[data-v-517c1f0d]{margin:0;font-size:.85rem}.footer-node[data-v-517c1f0d]{display:flex;align-items:center;gap:.45rem;color:#475569;font-size:.85rem;font-weight:500}@media(max-width:1024px){.info-grid[data-v-517c1f0d]{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.hero-title[data-v-517c1f0d]{font-size:1.85rem}.hero-gradient-subtitle[data-v-517c1f0d]{font-size:1.15rem}.system-status[data-v-517c1f0d]{display:none}.info-grid[data-v-517c1f0d]{grid-template-columns:1fr}.footer-content[data-v-517c1f0d]{flex-direction:column;gap:.75rem;text-align:center}}.cosmic-loading-overlay[data-v-70c391af]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#f8fafcf5;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);overflow:hidden;-webkit-user-select:none;user-select:none}.cosmic-loading-card[data-v-70c391af]{position:relative;z-index:10;width:100%;max-width:600px;display:flex;flex-direction:column;align-items:center;text-align:center;animation:cosmicCardEnter-70c391af .6s cubic-bezier(.16,1,.3,1) forwards}@keyframes cosmicCardEnter-70c391af{0%{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.canvas-3d-wrap[data-v-70c391af]{position:relative;width:560px;height:400px;max-width:92vw;display:flex;align-items:center;justify-content:center;margin-bottom:.75rem}.sculpture-radial-glow[data-v-70c391af]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:480px;height:360px;border-radius:50%;background:radial-gradient(circle at center,rgba(56,189,248,.35) 0%,rgba(2,132,199,.2) 40%,rgba(129,140,248,.1) 65%,transparent 80%);filter:blur(36px);pointer-events:none;z-index:0;animation:pulseCenterGlow-70c391af 4s ease-in-out infinite alternate}@keyframes pulseCenterGlow-70c391af{0%{transform:translate(-50%,-50%) scale(.94);opacity:.75}to{transform:translate(-50%,-50%) scale(1.08);opacity:1}}.canvas-3d-wrap canvas[data-v-70c391af]{position:relative;z-index:1;width:560px!important;height:400px!important;max-width:92vw!important;display:block;filter:drop-shadow(0 18px 36px rgba(2,132,199,.25))}.cosmic-greeting-content[data-v-70c391af]{margin-bottom:1.5rem;display:flex;flex-direction:column;align-items:center}.cosmic-user-display-name[data-v-70c391af]{font-size:1.25rem;font-weight:700;color:#0f172a;margin:0 0 .5rem;letter-spacing:-.01em}.cosmic-user-meta-tags[data-v-70c391af]{display:flex;align-items:center;justify-content:center;gap:.6rem;flex-wrap:wrap}.cosmic-tag[data-v-70c391af]{display:inline-flex;align-items:center;gap:.4rem;font-size:.825rem;font-weight:600;padding:.35rem .95rem;border-radius:9999px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.role-glow-tag[data-v-70c391af]{background:#0284c714;color:#0284c7;border:1px solid rgba(2,132,199,.25);box-shadow:0 2px 6px #0284c714}.org-glow-tag[data-v-70c391af]{background:#ffffffbf;color:#475569;border:1px solid rgba(226,232,240,.95);box-shadow:0 2px 6px #00000008}.cosmic-progress-section[data-v-70c391af]{width:100%;max-width:380px;display:flex;flex-direction:column;gap:.75rem;align-items:center}.cosmic-progress-track[data-v-70c391af]{width:100%;height:6px;background:#e2e8f0;border-radius:9999px;overflow:hidden;position:relative;box-shadow:inset 0 1px 2px #0000000a}.cosmic-progress-bar-fill[data-v-70c391af]{height:100%;background:linear-gradient(90deg,#0284c7,#38bdf8 60%,#818cf8);border-radius:9999px;transition:width .5s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 0 12px #0284c773}.cosmic-progress-shimmer[data-v-70c391af]{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.85),transparent);animation:shimmer-70c391af 1.5s infinite}.cosmic-step-status-text[data-v-70c391af]{font-size:.85rem;font-weight:600;color:#64748b;letter-spacing:.01em}@keyframes shimmer-70c391af{0%{left:-100%}to{left:100%}}.cosmic-fade-enter-active[data-v-70c391af],.cosmic-fade-leave-active[data-v-70c391af]{transition:opacity .5s ease}.cosmic-fade-enter-from[data-v-70c391af],.cosmic-fade-leave-to[data-v-70c391af]{opacity:0}.login-page[data-v-3f0acf09]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1.25rem;background-color:#f8fafc;background-image:radial-gradient(at 10% 15%,rgba(2,132,199,.08) 0px,transparent 50%),radial-gradient(at 90% 85%,rgba(14,165,233,.07) 0px,transparent 50%),radial-gradient(at 50% 50%,rgba(241,245,249,.8) 0px,transparent 100%);position:relative;overflow:hidden}.login-bg-decor[data-v-3f0acf09]{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;overflow:hidden}.decor-grid-pattern[data-v-3f0acf09]{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(to right,rgba(226,232,240,.4) 1px,transparent 1px),linear-gradient(to bottom,rgba(226,232,240,.4) 1px,transparent 1px);background-size:40px 40px;mask-image:radial-gradient(ellipse at center,rgba(0,0,0,.5) 0%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at center,rgba(0,0,0,.5) 0%,transparent 75%)}.glow-orb[data-v-3f0acf09]{position:absolute;border-radius:50%;filter:blur(80px);opacity:.65;animation:floatOrb-3f0acf09 12s ease-in-out infinite alternate}.orb-1[data-v-3f0acf09]{width:480px;height:480px;top:-120px;left:-120px;background:radial-gradient(circle,#38bdf847,#38bdf800 70%)}.orb-2[data-v-3f0acf09]{width:520px;height:520px;bottom:-150px;right:-120px;background:radial-gradient(circle,#0284c738,#0284c700 70%);animation-delay:-5s}.orb-3[data-v-3f0acf09]{width:320px;height:320px;top:45%;left:60%;transform:translate(-50%,-50%);background:radial-gradient(circle,#0ea5e926,#0ea5e900 70%);animation-delay:-8s}@keyframes floatOrb-3f0acf09{0%{transform:translateY(0) scale(1)}50%{transform:translateY(-20px) scale(1.05)}to{transform:translateY(15px) scale(.96)}}.login-wrapper[data-v-3f0acf09]{position:relative;z-index:10;width:100%;max-width:440px;display:flex;flex-direction:column;gap:1.25rem;transition:opacity .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1),filter .5s ease}.login-wrapper.blur-fade[data-v-3f0acf09]{opacity:0;transform:scale(.96) translateY(-10px);filter:blur(8px);pointer-events:none}.top-nav[data-v-3f0acf09]{display:flex;align-items:center;justify-content:flex-start}.back-link[data-v-3f0acf09]{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .9rem;font-size:.85rem;font-weight:600;color:#475569;background:#fffc;border:1px solid rgba(226,232,240,.9);border-radius:9999px;text-decoration:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 1px 3px #0f172a0a;transition:all .2s ease}.back-link[data-v-3f0acf09]:hover{color:#0284c7;background:#fff;border-color:#bae6fd;transform:translate(-2px);box-shadow:0 4px 10px #0284c71a}.login-card[data-v-3f0acf09]{background:#fffffff0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(226,232,240,.95);border-radius:20px;padding:2.5rem 2.25rem 2rem;box-shadow:0 20px 35px -8px #0f172a14,0 1px 3px #0f172a0a,inset 0 1px #ffffffe6}.card-header[data-v-3f0acf09]{text-align:center;display:flex;flex-direction:column;align-items:center;margin-bottom:1.75rem}.logo-badge[data-v-3f0acf09]{width:58px;height:58px;border-radius:16px;background:linear-gradient(135deg,#0284c7,#0369a1);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 20px -4px #0284c76b;margin-bottom:1rem;transition:transform .3s ease}.logo-badge[data-v-3f0acf09]:hover{transform:scale(1.04) rotate(-2deg)}.brand-org-tag[data-v-3f0acf09]{font-size:.775rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#0284c7;background:#f0f9ff;border:1px solid #bae6fd;padding:.2rem .75rem;border-radius:9999px;margin-bottom:.65rem}.card-title[data-v-3f0acf09]{font-size:1.6rem;font-weight:800;color:#0f172a;letter-spacing:-.025em;margin:0 0 .4rem;line-height:1.25}.card-subtitle[data-v-3f0acf09]{font-size:.85rem;color:#64748b;margin:0;line-height:1.45}.login-alert[data-v-3f0acf09]{display:flex;align-items:flex-start;gap:.65rem;padding:.85rem 1rem;border-radius:12px;font-size:.875rem;font-weight:500;margin-bottom:1.5rem;line-height:1.4;animation:shakeAlert-3f0acf09 .35s ease}.alert-danger[data-v-3f0acf09]{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.alert-icon[data-v-3f0acf09]{flex-shrink:0;margin-top:.1rem;color:#dc2626}@keyframes shakeAlert-3f0acf09{0%,to{transform:translate(0)}20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}.alert-slide-enter-active[data-v-3f0acf09],.alert-slide-leave-active[data-v-3f0acf09]{transition:all .25s ease}.alert-slide-enter-from[data-v-3f0acf09],.alert-slide-leave-to[data-v-3f0acf09]{opacity:0;transform:translateY(-8px)}.login-form[data-v-3f0acf09]{display:flex;flex-direction:column;gap:1.35rem}.form-group[data-v-3f0acf09]{display:flex;flex-direction:column;gap:.45rem;text-align:left}.form-label[data-v-3f0acf09]{display:inline-flex;align-items:center;gap:.4rem;font-size:.875rem;font-weight:600;color:#334155}.label-icon[data-v-3f0acf09]{color:#64748b}.input-wrapper[data-v-3f0acf09]{position:relative;display:flex;align-items:center;width:100%}.input-icon-lead[data-v-3f0acf09]{position:absolute;left:1rem;color:#94a3b8;display:flex;align-items:center;justify-content:center;pointer-events:none;transition:color .2s ease}.form-input[data-v-3f0acf09]{width:100%;height:46px;padding:0 1rem;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;font-size:.95rem;font-family:inherit;color:#0f172a;outline:none;transition:all .2s cubic-bezier(.4,0,.2,1)}.form-input.has-lead-icon[data-v-3f0acf09]{padding-left:2.85rem}.form-input.has-trail-icon[data-v-3f0acf09]{padding-right:2.85rem}.form-input[data-v-3f0acf09]::placeholder{color:#94a3b8;font-size:.9rem}.form-input[data-v-3f0acf09]:focus{border-color:#0284c7;background:#fff;box-shadow:0 0 0 3.5px #0284c724}.input-wrapper:focus-within .input-icon-lead[data-v-3f0acf09]{color:#0284c7}.input-action-btn[data-v-3f0acf09]{position:absolute;right:.65rem;height:34px;width:34px;background:transparent;border:none;border-radius:8px;color:#94a3b8;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.input-action-btn[data-v-3f0acf09]:hover{color:#0284c7;background:#f0f9ff}.form-options[data-v-3f0acf09]{display:flex;align-items:center;justify-content:space-between;margin-top:-.25rem}.checkbox-label[data-v-3f0acf09]{display:inline-flex;align-items:center;gap:.55rem;font-size:.85rem;font-weight:500;color:#475569;cursor:pointer;-webkit-user-select:none;user-select:none}.custom-checkbox[data-v-3f0acf09]{width:17px;height:17px;border-radius:5px;accent-color:#0284c7;cursor:pointer}.action-buttons[data-v-3f0acf09]{margin-top:.25rem}.submit-btn[data-v-3f0acf09]{width:100%;height:48px;font-size:.975rem;font-weight:700;border-radius:12px;box-shadow:0 4px 14px #0284c74d;letter-spacing:-.01em}.submit-btn[data-v-3f0acf09]:hover:not(:disabled){transform:translateY(-1.5px);box-shadow:0 6px 18px #0284c761}.btn-spinner[data-v-3f0acf09]{width:18px;height:18px;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin-3f0acf09 .75s linear infinite;flex-shrink:0}@keyframes spin-3f0acf09{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.card-extra-note[data-v-3f0acf09]{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid #f1f5f9;font-size:.785rem;color:#64748b}.note-icon[data-v-3f0acf09]{color:#059669}.login-footer[data-v-3f0acf09]{text-align:center;font-size:.8rem;color:#94a3b8;line-height:1.4}@media(max-width:480px){.login-card[data-v-3f0acf09]{padding:2rem 1.5rem 1.75rem;border-radius:16px}.card-title[data-v-3f0acf09]{font-size:1.45rem}}.modal-fade-enter-active[data-v-537b826a],.modal-fade-leave-active[data-v-537b826a]{transition:opacity .2s cubic-bezier(.16,1,.3,1)}.modal-fade-enter-from[data-v-537b826a],.modal-fade-leave-to[data-v-537b826a]{opacity:0}.modal-fade-enter-active .modal-card[data-v-537b826a],.modal-fade-leave-active .modal-card[data-v-537b826a]{transition:transform .2s cubic-bezier(.16,1,.3,1)}.modal-fade-enter-from .modal-card[data-v-537b826a],.modal-fade-leave-to .modal-card[data-v-537b826a]{transform:scale(.97) translateY(6px)}.modal-title-content[data-v-537b826a]{display:flex;flex-direction:column;gap:.25rem}.modal-title-row[data-v-537b826a]{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.modal-tabbed[data-v-537b826a]{display:flex;flex-direction:column}.modal-tabs-bar[data-v-537b826a]{display:flex;background:#f8fafc;border-bottom:1px solid var(--border-color, #e2e8f0);padding:0 1.25rem;gap:.5rem;overflow-x:auto}.modal-tab-item[data-v-537b826a]{display:inline-flex;align-items:center;gap:.45rem;padding:.85rem 1rem;font-size:.84rem;font-weight:600;color:var(--text-secondary);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap;transition:all .2s ease}.modal-tab-item[data-v-537b826a]:hover{color:var(--text-primary);background:#00000005}.modal-tab-item.active[data-v-537b826a]{color:#0284c7;border-bottom-color:#0284c7;background:#fff}.tab-badge[data-v-537b826a]{font-size:.72rem;padding:.1rem .45rem;border-radius:10px;background:#0ea5e91a;color:#0284c7;font-weight:700}.modal-tab-viewport[data-v-537b826a]{padding:1.5rem 1.75rem;overflow-y:auto;flex:1;max-height:calc(88vh - 200px);min-height:280px}.change-password-form[data-v-ad6e702a]{display:flex;flex-direction:column;gap:1rem}.user-target-card[data-v-ad6e702a]{display:flex;align-items:center;gap:.85rem;padding:.85rem 1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px}.target-avatar-box[data-v-ad6e702a]{width:44px;height:44px;border-radius:10px;background:#e2e8f0;border:1px solid #cbd5e1;color:#64748b;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.target-avatar-img[data-v-ad6e702a]{width:100%;height:100%;object-fit:cover}.target-details[data-v-ad6e702a]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.target-name[data-v-ad6e702a]{font-size:.95rem;font-weight:700;color:#0f172a;line-height:1.25}.target-email[data-v-ad6e702a]{font-size:.775rem;color:#64748b;line-height:1.2}.target-sub[data-v-ad6e702a]{font-size:.72rem;color:#0284c7;font-weight:500;margin-top:1px}.form-section-card[data-v-ad6e702a]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1rem 1.15rem;display:flex;flex-direction:column;gap:.85rem}.form-section-head[data-v-ad6e702a]{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:700;color:#1e293b;padding-bottom:.4rem;border-bottom:1px solid #f1f5f9}.form-section-head-between[data-v-ad6e702a]{display:flex;align-items:center;justify-content:space-between;padding-bottom:.4rem;border-bottom:1px solid #f1f5f9}.head-title-row[data-v-ad6e702a]{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:700;color:#1e293b}.form-group[data-v-ad6e702a]{display:flex;flex-direction:column;gap:.35rem}.form-label[data-v-ad6e702a]{font-size:.8rem;font-weight:600;color:#334155}.form-label.required[data-v-ad6e702a]:after{content:" *";color:#dc2626}.input-icon-wrapper[data-v-ad6e702a]{position:relative;display:flex;align-items:center}.input-icon-wrapper .input-icon[data-v-ad6e702a]{position:absolute;left:.75rem;color:#94a3b8;pointer-events:none}.form-input.has-icon[data-v-ad6e702a]{padding-left:2.35rem}.form-input.has-action[data-v-ad6e702a]{padding-right:2.5rem}.form-input[data-v-ad6e702a]{width:100%;padding:.6rem .85rem;font-size:.875rem;font-family:inherit;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#0f172a;transition:all .2s ease}.form-input[data-v-ad6e702a]:focus{outline:none;border-color:#0284c7;box-shadow:0 0 0 3px #0284c71f}.btn-toggle-eye[data-v-ad6e702a]{position:absolute;right:.5rem;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:#94a3b8;border-radius:6px;cursor:pointer;transition:all .15s ease}.btn-toggle-eye[data-v-ad6e702a]:hover{background:#f1f5f9;color:#334155}.btn-helper[data-v-ad6e702a]{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.75rem;font-weight:600;font-family:inherit;border-radius:7px;background:#f0f9ff;border:1px solid #bae6fd;color:#0284c7;cursor:pointer;transition:all .15s ease}.btn-helper[data-v-ad6e702a]:hover{background:#0284c7;color:#fff;border-color:#0284c7}.password-validation-notice[data-v-ad6e702a]{display:flex;flex-direction:column;gap:.25rem;padding:.55rem .75rem;border-radius:8px;border:1px solid transparent;transition:all .2s ease}.password-validation-notice.status-neutral[data-v-ad6e702a]{background:#f8fafc;border-color:#e2e8f0;color:#64748b}.password-validation-notice.status-invalid[data-v-ad6e702a]{background:#fffbeb;border-color:#fde68a;color:#d97706}.password-validation-notice.status-valid[data-v-ad6e702a]{background:#f0fdf4;border-color:#bbf7d0;color:#059669}.validation-row[data-v-ad6e702a]{display:flex;align-items:center;gap:.45rem;font-size:.75rem;font-weight:600}.cropper-body-layout[data-v-78161931]{display:flex;flex-direction:column;align-items:center;gap:1.25rem}.canvas-container[data-v-78161931]{width:300px;height:300px;position:relative;border-radius:14px;overflow:hidden;background:#0f172a;cursor:grab;-webkit-user-select:none;user-select:none;box-shadow:inset 0 2px 8px #0000004d}.canvas-container[data-v-78161931]:active{cursor:grabbing}.crop-canvas[data-v-78161931]{width:100%;height:100%;display:block}.crop-mask-circle[data-v-78161931]{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;box-shadow:0 0 0 9999px #0f172aa6;border-radius:50%;border:2px solid rgba(255,255,255,.85)}.crop-grid-lines[data-v-78161931]{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;border-radius:50%;background-image:linear-gradient(to right,rgba(255,255,255,.15) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.15) 1px,transparent 1px);background-size:33.33% 33.33%}.cropper-controls[data-v-78161931]{width:100%;display:flex;flex-direction:column;gap:.85rem}.zoom-group[data-v-78161931]{display:flex;align-items:center;gap:.75rem;background:#f8fafc;padding:.5rem .85rem;border-radius:10px;border:1px solid var(--border-color)}.control-icon[data-v-78161931]{color:var(--text-muted);cursor:pointer;transition:color .2s}.control-icon[data-v-78161931]:hover{color:var(--primary)}.zoom-slider[data-v-78161931]{flex:1;accent-color:var(--primary);cursor:pointer}.action-tools[data-v-78161931]{display:flex;gap:.75rem}.btn-tool[data-v-78161931]{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.5rem;border-radius:8px;border:1px solid var(--border-color);background:#fff;color:var(--text-secondary);font-family:var(--font-sans);font-size:.825rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-tool[data-v-78161931]:hover{background:var(--primary-light);border-color:var(--primary-border);color:var(--primary)}.compression-info[data-v-78161931]{display:flex;align-items:center;gap:.45rem;font-size:.775rem;color:var(--text-muted);background:var(--primary-light);padding:.4rem .75rem;border-radius:8px;border:1px solid var(--primary-border)}.sparkle-icon[data-v-78161931]{color:var(--primary);flex-shrink:0}.cropper-footer[data-v-78161931]{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;background:#f8fafc;border-top:1px solid var(--border-color)}.cropper-modal-overlay[data-v-78161931]{z-index:10000!important;background:#0f172ab3!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important}.cropper-modal-card[data-v-78161931]{z-index:10001!important;box-shadow:0 25px 50px -12px #00000080!important}.modal-form-wrapper[data-v-5128a4bc]{display:flex;flex-direction:column;gap:1.25rem}.self-profile-layout[data-v-5128a4bc]{display:flex;flex-direction:column;gap:1.15rem}.tab-pane-content[data-v-5128a4bc]{display:flex;flex-direction:column;gap:1.25rem}.avatar-upload-card[data-v-5128a4bc]{display:flex;align-items:center;gap:1.25rem;padding:1.15rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px}.avatar-preview-box[data-v-5128a4bc]{width:72px;height:72px;border-radius:14px;background:#fff;border:2px dashed #cbd5e1;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.avatar-modal-img[data-v-5128a4bc]{width:100%;height:100%;object-fit:cover}.avatar-modal-placeholder[data-v-5128a4bc]{color:#94a3b8}.avatar-actions-meta[data-v-5128a4bc]{flex:1;min-width:0;display:flex;flex-direction:column;gap:.35rem}.avatar-title[data-v-5128a4bc]{font-size:.9rem;font-weight:700;color:#0f172a}.avatar-help[data-v-5128a4bc]{font-size:.75rem;color:#64748b;line-height:1.3}.avatar-btn-row[data-v-5128a4bc]{display:flex;align-items:center;gap:.5rem;margin-top:.35rem}.btn-avatar[data-v-5128a4bc]{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .75rem;border-radius:8px;font-size:.775rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s ease;border:1px solid transparent}.btn-avatar.upload[data-v-5128a4bc]{background:#0284c7;color:#fff}.btn-avatar.upload[data-v-5128a4bc]:hover{background:#0369a1}.btn-avatar.delete[data-v-5128a4bc]{background:#fff;border-color:#fecaca;color:#dc2626}.btn-avatar.delete[data-v-5128a4bc]:hover{background:#fef2f2}.hidden-file-input[data-v-5128a4bc]{display:none}.form-section-card[data-v-5128a4bc]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.15rem;display:flex;flex-direction:column;gap:.85rem}.form-section-head[data-v-5128a4bc]{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:700;color:#0f172a;padding-bottom:.5rem;border-bottom:1px solid #f1f5f9}.form-section-head-between[data-v-5128a4bc]{display:flex;align-items:center;justify-content:space-between;padding-bottom:.5rem;border-bottom:1px solid #f1f5f9}.head-title-row[data-v-5128a4bc]{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:700;color:#0f172a}.btn-change-pwd-trigger[data-v-5128a4bc]{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .65rem;font-size:.775rem;font-weight:600;font-family:inherit;border-radius:7px;background:#f8fafc;border:1px solid #cbd5e1;color:#0284c7;cursor:pointer;transition:all .15s ease}.btn-change-pwd-trigger[data-v-5128a4bc]:hover{background:#f0f9ff;border-color:#0284c7}.section-card-desc[data-v-5128a4bc]{font-size:.775rem;color:#64748b;margin:0;line-height:1.4}.org-readonly-badge-box[data-v-5128a4bc]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.65rem .85rem}.org-readonly-text[data-v-5128a4bc]{font-size:.825rem;color:#334155;font-weight:600}.form-grid[data-v-5128a4bc]{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.form-group[data-v-5128a4bc]{display:flex;flex-direction:column;gap:.35rem}.form-group.full-width[data-v-5128a4bc]{grid-column:span 2}.form-label[data-v-5128a4bc]{display:flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;color:#334155}.form-input[data-v-5128a4bc]{width:100%;padding:.6rem .85rem;font-size:.875rem;font-family:inherit;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#0f172a;transition:all .2s ease}.form-input[data-v-5128a4bc]:focus{outline:none;border-color:#0284c7;box-shadow:0 0 0 3px #0284c71f}.form-input.input-readonly[data-v-5128a4bc]{background:#f8fafc;color:#64748b;cursor:not-allowed;border-color:#e2e8f0}.form-input.select-input[data-v-5128a4bc]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.25rem}.form-hint[data-v-5128a4bc]{font-size:.72rem;color:#64748b}.tab-section-intro[data-v-5128a4bc]{display:flex;align-items:flex-start;gap:.75rem;padding:.85rem 1rem;background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px;color:#0369a1;margin-bottom:1rem}.section-intro-title[data-v-5128a4bc]{font-size:.875rem;font-weight:700;margin:0 0 2px;color:#0369a1}.section-intro-desc[data-v-5128a4bc]{font-size:.75rem;margin:0;color:#0c4a6e;line-height:1.35}.cascade-grid[data-v-5128a4bc]{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.cascade-preview[data-v-5128a4bc]{display:flex;align-items:flex-start;gap:.65rem;padding:.85rem 1rem;background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;margin-top:1rem}.preview-icon[data-v-5128a4bc]{color:#059669;flex-shrink:0;margin-top:2px}.preview-text[data-v-5128a4bc]{display:flex;flex-direction:column;gap:2px}.preview-label[data-v-5128a4bc]{font-size:.72rem;font-weight:700;color:#64748b;text-transform:uppercase}.preview-path[data-v-5128a4bc]{font-size:.85rem;font-weight:600;color:#0f172a}.selected-roles-summary-bar[data-v-5128a4bc]{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:1rem}.summary-left[data-v-5128a4bc]{display:flex;align-items:center;gap:.5rem;font-size:.825rem}.summary-label[data-v-5128a4bc]{color:#64748b}.summary-count[data-v-5128a4bc]{color:#0284c7}.summary-primary-tag[data-v-5128a4bc]{font-size:.825rem;color:#334155}.multi-roles-grid[data-v-5128a4bc]{display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem;max-height:380px;overflow-y:auto;padding-right:4px}.role-select-card[data-v-5128a4bc]{padding:.85rem;border-radius:10px;border:1px solid #e2e8f0;background:#fff;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:.45rem}.role-select-card[data-v-5128a4bc]:hover{border-color:#93c5fd;background:#f8fafc}.role-select-card.is-selected[data-v-5128a4bc]{border-color:#0284c7;background:#f0f9ff}.role-select-card.is-primary-card[data-v-5128a4bc]{border-color:#0284c7;box-shadow:0 0 0 2px #0284c733}.role-card-top[data-v-5128a4bc]{display:flex;align-items:center;justify-content:space-between}.role-checkbox-box[data-v-5128a4bc]{display:flex;align-items:center;gap:.5rem}.role-card-name[data-v-5128a4bc]{font-size:.85rem;font-weight:700;color:#0f172a}.primary-star-badge[data-v-5128a4bc]{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .45rem;background:#fef08a;color:#854d0e;border-radius:6px;font-size:.68rem;font-weight:700}.role-card-desc[data-v-5128a4bc]{font-size:.75rem;color:#64748b;margin:0;line-height:1.35}.role-card-footer[data-v-5128a4bc]{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:.35rem}.role-card-tags[data-v-5128a4bc]{display:flex;align-items:center;gap:.35rem}.badge-tag[data-v-5128a4bc]{font-size:.675rem;padding:.15rem .4rem;border-radius:5px;font-weight:600}.level-tag[data-v-5128a4bc]{background:#e2e8f0;color:#475569}.scope-tag[data-v-5128a4bc]{background:#f1f5f9;color:#64748b}.btn-make-primary[data-v-5128a4bc]{padding:.2rem .5rem;font-size:.72rem;font-weight:600;font-family:inherit;border-radius:6px;background:#fff;border:1px solid #cbd5e1;color:#0284c7;cursor:pointer;transition:all .15s ease}.btn-make-primary[data-v-5128a4bc]:hover{background:#0284c7;color:#fff;border-color:#0284c7}.status-choice-grid[data-v-5128a4bc]{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1rem}.status-choice-card[data-v-5128a4bc]{padding:1rem;border-radius:12px;border:1px solid #e2e8f0;background:#fff;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:.5rem}.status-choice-card[data-v-5128a4bc]:hover{border-color:#cbd5e1;background:#f8fafc}.status-choice-card.is-selected.card-active[data-v-5128a4bc]{border-color:#059669;background:#f0fdf4}.status-choice-card.is-selected.card-inactive[data-v-5128a4bc]{border-color:#dc2626;background:#fef2f2}.choice-card-header[data-v-5128a4bc]{display:flex;align-items:center;justify-content:space-between}.choice-card-title-box[data-v-5128a4bc]{display:flex;align-items:center;gap:.65rem}.choice-icon-wrap[data-v-5128a4bc]{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center}.icon-wrap-active[data-v-5128a4bc]{background:#dcfce7;color:#16a34a}.icon-wrap-inactive[data-v-5128a4bc]{background:#fee2e2;color:#dc2626}.choice-title[data-v-5128a4bc]{font-size:.85rem;font-weight:700;margin:0;color:#0f172a}.choice-badge[data-v-5128a4bc]{font-size:.68rem;font-weight:600;padding:.1rem .4rem;border-radius:4px}.badge-active-pill[data-v-5128a4bc]{background:#dcfce7;color:#15803d}.badge-inactive-pill[data-v-5128a4bc]{background:#fee2e2;color:#b91c1c}.choice-desc[data-v-5128a4bc]{font-size:.775rem;color:#64748b;line-height:1.4;margin:0}.current-status-summary-box[data-v-5128a4bc]{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;border-radius:10px;border:1px solid #e2e8f0}.current-status-summary-box.box-active[data-v-5128a4bc]{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.current-status-summary-box.box-inactive[data-v-5128a4bc]{background:#fef2f2;border-color:#fecaca;color:#991b1b}.summary-text[data-v-5128a4bc]{display:flex;flex-direction:column;gap:2px}.summary-title[data-v-5128a4bc]{font-size:.825rem}.summary-sub[data-v-5128a4bc]{font-size:.72rem;opacity:.85}.modal-alert[data-v-fe7a6b6d]{max-width:480px}.alert-icon-wrapper.icon-success[data-v-fe7a6b6d]{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.alert-icon-wrapper.icon-warning[data-v-fe7a6b6d]{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.alert-icon-wrapper.icon-danger[data-v-fe7a6b6d]{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.alert-icon-wrapper.icon-info[data-v-fe7a6b6d],.alert-icon-wrapper.icon-confirm[data-v-fe7a6b6d]{background:var(--primary-light);color:var(--primary);border:1px solid var(--primary-border)}.alert-title[data-v-fe7a6b6d]{font-size:1.15rem;font-weight:800;color:var(--text-primary)}.alert-body-content[data-v-fe7a6b6d]{padding:1.5rem 1.75rem}.alert-message-text[data-v-fe7a6b6d]{font-size:.95rem;line-height:1.6;color:var(--text-secondary);white-space:pre-line}.btn-danger[data-v-fe7a6b6d]{background:#dc2626;color:#fff;border:1px solid #b91c1c}.btn-danger[data-v-fe7a6b6d]:hover{background:#b91c1c;box-shadow:0 4px 12px #dc262640}.modal-scale-enter-active[data-v-fe7a6b6d],.modal-scale-leave-active[data-v-fe7a6b6d]{transition:opacity .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1)}.modal-scale-enter-from[data-v-fe7a6b6d],.modal-scale-leave-to[data-v-fe7a6b6d]{opacity:0;transform:scale(.95)}.portal-page[data-v-1292d68d]{min-height:100vh;display:flex;flex-direction:column;background-color:#f8fafc;position:relative;overflow-x:hidden;-webkit-user-select:none;user-select:none}.ambient-glow[data-v-1292d68d]{position:absolute;border-radius:50%;filter:blur(140px);pointer-events:none;opacity:.45;z-index:0}.glow-top[data-v-1292d68d]{top:-150px;left:25%;width:650px;height:650px;background:radial-gradient(circle,#0284c724,#0284c700 70%)}.glow-bottom[data-v-1292d68d]{bottom:-100px;right:15%;width:550px;height:550px;background:radial-gradient(circle,#4f46e514,#4f46e500 70%)}.portal-floating-header[data-v-1292d68d]{position:absolute;top:0;left:0;right:0;padding:1.5rem 2.25rem;display:flex;align-items:center;justify-content:space-between;z-index:30;pointer-events:auto}.floating-brand[data-v-1292d68d]{display:flex;align-items:center;gap:.75rem}.brand-badge[data-v-1292d68d]{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 8px #0284c738}.brand-text[data-v-1292d68d]{display:flex;flex-direction:column}.brand-title[data-v-1292d68d]{font-size:.95rem;font-weight:800;color:#0f172a;line-height:1.2}.brand-subtitle[data-v-1292d68d]{font-size:.725rem;color:#0284c7;font-weight:600}.floating-user-actions[data-v-1292d68d]{display:flex;align-items:center;gap:.65rem}.user-profile-pill[data-v-1292d68d]{display:flex;align-items:center;gap:.65rem;padding:.35rem .85rem .35rem .45rem;background:#ffffffe6;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(226,232,240,.9);border-radius:9999px;cursor:pointer;font-family:inherit;transition:all .2s ease;box-shadow:0 2px 8px #0f172a0a}.user-profile-pill[data-v-1292d68d]:hover{border-color:#0284c7;background:#fff;box-shadow:0 4px 12px #0284c71f}.pill-avatar[data-v-1292d68d]{width:28px;height:28px;border-radius:50%;background:#e0f2fe;color:#0284c7;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.pill-avatar .avatar-img[data-v-1292d68d]{width:100%;height:100%;object-fit:cover}.pill-info[data-v-1292d68d]{display:flex;flex-direction:column;text-align:left}.pill-name[data-v-1292d68d]{font-size:.815rem;font-weight:700;color:#0f172a;line-height:1.2}.pill-role[data-v-1292d68d]{font-size:.685rem;color:#64748b;line-height:1}.pill-cog[data-v-1292d68d]{color:#94a3b8;margin-left:2px}.btn-logout-floating[data-v-1292d68d]{width:36px;height:36px;border-radius:50%;background:#ffffffe6;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(226,232,240,.9);color:#64748b;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;box-shadow:0 2px 8px #0f172a0a}.btn-logout-floating[data-v-1292d68d]:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca;box-shadow:0 4px 12px #dc262626}.portal-main[data-v-1292d68d]{flex:1;display:flex;align-items:center;justify-content:center;padding:6rem 1.5rem 3rem;position:relative;z-index:10}.launcher-container[data-v-1292d68d]{width:100%;max-width:820px;display:flex;flex-direction:column;align-items:center;text-align:center}.launcher-header[data-v-1292d68d]{margin-bottom:2.75rem}.launcher-title[data-v-1292d68d]{font-size:1.85rem;font-weight:800;color:#0f172a;margin:0 0 .5rem;letter-spacing:-.02em}.launcher-subtitle[data-v-1292d68d]{font-size:.95rem;color:#64748b;margin:0}.app-tiles-grid[data-v-1292d68d]{display:grid;grid-template-columns:repeat(2,1fr);gap:1.85rem;width:100%}.app-tile[data-v-1292d68d]{background:#fffffff5;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1.5px solid rgba(226,232,240,.95);border-radius:24px;padding:2.75rem 2rem;display:flex;flex-direction:column;align-items:center;text-align:center;cursor:pointer;outline:none;box-shadow:0 10px 25px -5px #0f172a0a,0 4px 6px -2px #0f172a05;transition:all .28s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.app-tile[data-v-1292d68d]:hover{transform:translateY(-8px);border-color:#0284c7;box-shadow:0 25px 40px -10px #0284c729,0 8px 15px -4px #0284c70f}.tile-core[data-v-1292d68d]:hover{border-color:#4f46e5;box-shadow:0 25px 40px -10px #4f46e529,0 8px 15px -4px #4f46e50f}.tile-icon-box[data-v-1292d68d]{width:76px;height:76px;border-radius:22px;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;transition:transform .28s cubic-bezier(.16,1,.3,1)}.box-planning[data-v-1292d68d]{background:#f0f9ff;color:#0284c7;border:1.5px solid #bae6fd}.box-core[data-v-1292d68d]{background:#eef2ff;color:#4f46e5;border:1.5px solid #c7d2fe}.app-tile:hover .tile-icon-box[data-v-1292d68d]{transform:scale(1.1)}.tile-info[data-v-1292d68d]{display:flex;flex-direction:column;align-items:center;gap:.55rem}.tile-title[data-v-1292d68d]{font-size:1.3rem;font-weight:800;color:#0f172a;margin:0;line-height:1.3}.tile-desc[data-v-1292d68d]{font-size:.875rem;color:#64748b;line-height:1.6;margin:0;max-width:300px}.portal-footer[data-v-1292d68d]{padding:1.5rem 0;text-align:center;font-size:.8rem;color:#94a3b8;position:relative;z-index:10}@media(max-width:768px){.portal-floating-header[data-v-1292d68d]{position:static;padding:1.25rem 1rem;flex-direction:column;gap:1rem}.portal-main[data-v-1292d68d]{padding:2rem 1rem}.app-tiles-grid[data-v-1292d68d]{grid-template-columns:1fr}.launcher-title[data-v-1292d68d]{font-size:1.45rem}.launcher-subtitle[data-v-1292d68d]{font-size:.875rem}}.switch-modal-backdrop[data-v-3bdb295e]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#0f172a73;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);-webkit-user-select:none;user-select:none}.ambient-backdrop-glow[data-v-3bdb295e]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:580px;height:380px;border-radius:50%;background:radial-gradient(circle at center,rgba(2,132,199,.18) 0%,rgba(99,102,241,.12) 50%,transparent 75%);filter:blur(48px);pointer-events:none;z-index:0}.switch-modal-card[data-v-3bdb295e]{position:relative;z-index:10;width:100%;max-width:720px;background:#fffffffa;backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border:1px solid rgba(255,255,255,.95);border-radius:24px;box-shadow:0 25px 50px -12px #0f172a2e,0 10px 20px -5px #0f172a0f,inset 0 1px 1px #fffffff2;display:flex;flex-direction:column;overflow:hidden;animation:modalEnter-3bdb295e .28s cubic-bezier(.16,1,.3,1) forwards}@keyframes modalEnter-3bdb295e{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.switch-modal-header[data-v-3bdb295e]{padding:1.5rem 1.75rem 1.15rem;display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid rgba(226,232,240,.85)}.header-text-group[data-v-3bdb295e]{display:flex;flex-direction:column;gap:.35rem}.header-title-row[data-v-3bdb295e]{display:flex;align-items:center;gap:.65rem}.header-icon-badge[data-v-3bdb295e]{width:32px;height:32px;border-radius:10px;background:#f0f9ff;color:#0284c7;display:flex;align-items:center;justify-content:center;border:1px solid #bae6fd}.header-main-title[data-v-3bdb295e]{font-size:1.2rem;font-weight:800;color:#0f172a;margin:0;letter-spacing:-.015em;line-height:1.3}.header-sub-title[data-v-3bdb295e]{font-size:.85rem;color:#64748b;margin:0;line-height:1.4}.btn-modal-close[data-v-3bdb295e]{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;transition:all .15s ease;flex-shrink:0}.btn-modal-close[data-v-3bdb295e]:hover{background:#f1f5f9;color:#0f172a;border-color:#cbd5e1;transform:scale(1.05)}.switch-modal-body[data-v-3bdb295e]{padding:1.75rem}.app-tiles-grid[data-v-3bdb295e]{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;width:100%}.app-tile[data-v-3bdb295e]{background:#fff;border:1.5px solid #e2e8f0;border-radius:20px;padding:2rem 1.5rem;display:flex;flex-direction:column;align-items:center;text-align:center;cursor:pointer;outline:none;box-shadow:0 4px 12px #0f172a08;transition:all .28s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.app-tile[data-v-3bdb295e]:not(.is-restricted-module):hover{transform:translateY(-5px);border-color:#0284c7;box-shadow:0 16px 32px -8px #0284c729,0 4px 8px -2px #0284c70a}.tile-core[data-v-3bdb295e]:not(.is-restricted-module):hover{border-color:#4f46e5;box-shadow:0 16px 32px -8px #4f46e529,0 4px 8px -2px #4f46e50a}.app-tile.is-current-active[data-v-3bdb295e]{border-color:#0284c7;border-width:2px;background:linear-gradient(180deg,#f0f9ff,#fff 60%);box-shadow:0 12px 28px -6px #0284c724}.tile-core.is-current-active[data-v-3bdb295e]{border-color:#4f46e5;background:linear-gradient(180deg,#eef2ff,#fff 60%);box-shadow:0 12px 28px -6px #4f46e524}.active-status-badge[data-v-3bdb295e]{position:absolute;top:1rem;right:1rem;display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;font-weight:700;color:#059669;background:#ecfdf5;border:1px solid #a7f3d0;padding:.25rem .65rem;border-radius:9999px}.active-pulse-dot[data-v-3bdb295e]{width:6px;height:6px;border-radius:50%;background:#059669;box-shadow:0 0 6px #059669cc;animation:pulseDot-3bdb295e 2s infinite}@keyframes pulseDot-3bdb295e{0%{transform:scale(.95);opacity:.8}50%{transform:scale(1.3);opacity:1}to{transform:scale(.95);opacity:.8}}.locked-status-badge[data-v-3bdb295e]{position:absolute;top:1rem;right:1rem;display:inline-flex;align-items:center;gap:.3rem;font-size:.725rem;font-weight:600;color:#94a3b8;background:#f1f5f9;border:1px solid #e2e8f0;padding:.2rem .55rem;border-radius:9999px}.app-tile.is-restricted-module[data-v-3bdb295e]{background:#f8fafc;border-color:#e2e8f0;opacity:.65;cursor:not-allowed;filter:grayscale(85%);transition:all .2s ease}.app-tile.is-restricted-module[data-v-3bdb295e]:hover{opacity:.85;filter:grayscale(40%);border-color:#cbd5e1}.tile-icon-box[data-v-3bdb295e]{width:64px;height:64px;border-radius:18px;display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem;transition:transform .28s cubic-bezier(.16,1,.3,1)}.box-planning[data-v-3bdb295e]{background:#f0f9ff;color:#0284c7;border:1.5px solid #bae6fd}.box-core[data-v-3bdb295e]{background:#eef2ff;color:#4f46e5;border:1.5px solid #c7d2fe}.app-tile:not(.is-restricted-module):hover .tile-icon-box[data-v-3bdb295e]{transform:scale(1.1)}.tile-info[data-v-3bdb295e]{display:flex;flex-direction:column;align-items:center;gap:.45rem}.tile-title[data-v-3bdb295e]{font-size:1.1rem;font-weight:800;color:#0f172a;margin:0;line-height:1.35}.tile-desc[data-v-3bdb295e]{font-size:.8rem;color:#64748b;line-height:1.55;margin:0;max-width:250px}.switch-modal-footer[data-v-3bdb295e]{padding:.85rem 1.75rem;background:#f8fafc;border-top:1px solid rgba(226,232,240,.75);text-align:center}.footer-note-text[data-v-3bdb295e]{font-size:.775rem;color:#64748b}.modal-pop-fade-enter-active[data-v-3bdb295e],.modal-pop-fade-leave-active[data-v-3bdb295e]{transition:opacity .25s ease}.modal-pop-fade-enter-from[data-v-3bdb295e],.modal-pop-fade-leave-to[data-v-3bdb295e]{opacity:0}@media(max-width:640px){.app-tiles-grid[data-v-3bdb295e]{grid-template-columns:1fr}}.app-sidebar[data-v-53430c37]{width:260px;min-width:260px;max-width:260px;background:#fff;border-right:1px solid var(--border-color);display:flex;flex-direction:column;height:100vh;position:sticky;top:0;z-index:50;-webkit-user-select:none;user-select:none;box-shadow:var(--shadow-xs)}.sidebar-header[data-v-53430c37]{height:68px;padding:0 1.15rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-color-light);flex-shrink:0}.sidebar-brand[data-v-53430c37]{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:inherit;flex:1}.brand-badge[data-v-53430c37]{width:36px;height:36px;border-radius:10px;background:var(--primary-gradient);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 3px 8px #0284c740}.brand-info[data-v-53430c37]{display:flex;flex-direction:column;overflow:hidden}.brand-title[data-v-53430c37]{font-size:.95rem;font-weight:800;color:var(--text-primary);line-height:1.2}.brand-subtitle[data-v-53430c37]{font-size:.725rem;color:var(--text-muted)}.mobile-close-btn[data-v-53430c37]{display:none;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.35rem;border-radius:6px}.mobile-close-btn[data-v-53430c37]:hover{background:#f1f5f9;color:var(--text-primary)}.sidebar-app-switcher-wrapper[data-v-53430c37]{position:relative;margin:.65rem .85rem 0;flex-shrink:0}.app-switcher-btn[data-v-53430c37]{width:100%;display:flex;align-items:center;gap:.6rem;padding:.5rem .7rem;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:11px;cursor:pointer;text-align:left;font-family:inherit;transition:all .2s cubic-bezier(.16,1,.3,1)}.app-switcher-btn[data-v-53430c37]:hover,.app-switcher-btn.is-active[data-v-53430c37]{background:#fff;border-color:#0284c7;box-shadow:0 2px 8px #0284c71f}.app-switcher-icon-box[data-v-53430c37]{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.app-switcher-icon-box.badge-planning[data-v-53430c37]{background:#e0f2fe;color:#0284c7}.app-switcher-icon-box.badge-core[data-v-53430c37]{background:#e0e7ff;color:#4f46e5}.app-switcher-info-col[data-v-53430c37]{flex:1;min-width:0;display:flex;flex-direction:column}.app-switcher-sub[data-v-53430c37]{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#64748b;line-height:1;margin-bottom:2px}.app-switcher-name[data-v-53430c37]{font-size:.825rem;font-weight:700;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.switcher-layers-icon[data-v-53430c37]{color:#94a3b8;transition:all .2s ease;flex-shrink:0}.app-switcher-btn:hover .switcher-layers-icon[data-v-53430c37]{color:#0284c7;transform:scale(1.15)}.app-switcher-dropdown[data-v-53430c37]{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fffffff5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(226,232,240,.9);border-radius:12px;box-shadow:0 10px 25px -5px #0f172a26,0 8px 10px -6px #0f172a1a;padding:.45rem;z-index:60}.dropdown-head[data-v-53430c37]{padding:.35rem .5rem .45rem;font-size:.7rem;font-weight:700;color:#64748b;border-bottom:1px solid #f1f5f9;margin-bottom:.35rem}.app-options-list[data-v-53430c37]{display:flex;flex-direction:column;gap:.25rem}.app-option-item[data-v-53430c37]{display:flex;align-items:center;gap:.65rem;padding:.5rem .65rem;border-radius:8px;border:none;background:transparent;cursor:pointer;text-align:left;width:100%;font-family:inherit;transition:background .15s ease}.app-option-item[data-v-53430c37]:hover{background:#f1f5f9}.app-option-item.is-selected[data-v-53430c37]{background:#f0f9ff}.app-option-item .option-icon[data-v-53430c37]{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.app-option-item .option-icon.badge-planning[data-v-53430c37]{background:#e0f2fe;color:#0284c7}.app-option-item .option-icon.badge-core[data-v-53430c37]{background:#e0e7ff;color:#4f46e5}.app-option-item .option-text[data-v-53430c37]{flex:1;min-width:0;display:flex;flex-direction:column}.app-option-item .option-title[data-v-53430c37]{font-size:.825rem;font-weight:700;color:#0f172a;line-height:1.2}.app-option-item .option-desc[data-v-53430c37]{font-size:.68rem;color:#64748b;line-height:1.1;margin-top:1px}.option-check[data-v-53430c37]{color:#0284c7;flex-shrink:0}.sidebar-persona-wrapper[data-v-53430c37]{position:relative;margin:.45rem .85rem 0;flex-shrink:0}.persona-switch-btn[data-v-53430c37]{width:100%;display:flex;align-items:center;gap:.6rem;padding:.45rem .7rem;background:#fff;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;text-align:left;font-family:inherit;transition:all .2s cubic-bezier(.16,1,.3,1)}.persona-switch-btn[data-v-53430c37]:hover,.persona-switch-btn.is-active[data-v-53430c37]{background:#f8fafc;border-color:#cbd5e1}.persona-icon-box[data-v-53430c37]{width:26px;height:26px;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.persona-icon-box.badge-admin[data-v-53430c37]{background:#fef2f2;color:#dc2626}.persona-icon-box.badge-l2[data-v-53430c37]{background:#eff6ff;color:#2563eb}.persona-icon-box.badge-l3[data-v-53430c37]{background:#f0fdf4;color:#16a34a}.persona-icon-box.badge-l4[data-v-53430c37]{background:#f8fafc;color:#475569}.persona-info-col[data-v-53430c37]{flex:1;min-width:0;display:flex;flex-direction:column}.persona-role-label[data-v-53430c37]{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#94a3b8;line-height:1;margin-bottom:2px}.persona-name-text[data-v-53430c37]{font-size:.775rem;font-weight:700;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.persona-switch-arrow[data-v-53430c37]{color:#94a3b8;transition:transform .2s ease;flex-shrink:0}.persona-switch-arrow.is-open[data-v-53430c37]{transform:rotate(180deg)}.persona-dropdown-menu[data-v-53430c37]{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fffffff5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(226,232,240,.9);border-radius:12px;box-shadow:0 10px 25px -5px #0f172a26,0 8px 10px -6px #0f172a1a;padding:.45rem;z-index:60;max-height:280px;overflow-y:auto}.persona-options-list[data-v-53430c37]{display:flex;flex-direction:column;gap:.25rem}.persona-option-item[data-v-53430c37]{display:flex;align-items:center;gap:.6rem;padding:.45rem .6rem;border-radius:8px;border:none;background:transparent;cursor:pointer;text-align:left;width:100%;font-family:inherit;transition:background .15s ease}.persona-option-item[data-v-53430c37]:hover{background:#f1f5f9}.persona-option-item.is-selected[data-v-53430c37]{background:#f8fafc}.persona-option-item .option-icon[data-v-53430c37]{width:28px;height:28px;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.persona-option-item .option-text[data-v-53430c37]{flex:1;min-width:0;display:flex;flex-direction:column}.persona-option-item .option-title[data-v-53430c37]{font-size:.8rem;font-weight:700;color:#0f172a}.persona-option-item .option-desc[data-v-53430c37]{font-size:.675rem;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-nav[data-v-53430c37]{flex:1;overflow-y:auto;padding:.75rem .85rem;display:flex;flex-direction:column;gap:.85rem}.nav-section[data-v-53430c37]{display:flex;flex-direction:column;gap:.2rem}.section-label[data-v-53430c37]{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;padding:.35rem .65rem}.nav-item[data-v-53430c37]{display:flex;align-items:center;gap:.65rem;padding:.52rem .75rem;border-radius:9px;color:#475569;text-decoration:none;font-size:.84rem;font-weight:600;transition:all .15s ease}.nav-item[data-v-53430c37]:hover{background:#f8fafc;color:#0284c7}.nav-item.active[data-v-53430c37]{background:#e0f2fe;color:#0284c7;font-weight:700}.nav-icon[data-v-53430c37]{flex-shrink:0}.nav-text[data-v-53430c37]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-empty-notice[data-v-53430c37]{padding:1.5rem .75rem;text-align:center;font-size:.75rem;color:#94a3b8}.sidebar-footer[data-v-53430c37]{padding:.75rem .85rem;border-top:1px solid var(--border-color-light);position:relative;flex-shrink:0;background:#fff}.profile-toggle-card[data-v-53430c37]{width:100%;display:flex;align-items:center;gap:.65rem;padding:.5rem .65rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:11px;cursor:pointer;text-align:left;font-family:inherit;transition:all .2s ease}.profile-toggle-card[data-v-53430c37]:hover,.profile-toggle-card.is-active[data-v-53430c37]{background:#fff;border-color:#cbd5e1;box-shadow:0 2px 6px #0000000a}.profile-avatar-thumb[data-v-53430c37]{width:32px;height:32px;border-radius:9px;background:#e2e8f0;color:#64748b;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.avatar-fit[data-v-53430c37]{width:100%;height:100%;object-fit:cover}.profile-info-text[data-v-53430c37]{flex:1;min-width:0;display:flex;flex-direction:column}.info-name[data-v-53430c37]{font-size:.825rem;font-weight:700;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.info-pos[data-v-53430c37]{font-size:.68rem;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.1;margin-top:1px}.profile-arrow[data-v-53430c37]{color:#94a3b8;flex-shrink:0}.profile-action-menu[data-v-53430c37]{position:absolute;bottom:calc(100% + 8px);left:.75rem;right:.75rem;background:#fffffffa;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(226,232,240,.9);border-radius:14px;box-shadow:0 14px 30px -4px #0f172a24,0 4px 12px -2px #0f172a0f;padding:.75rem;z-index:70}.menu-user-header[data-v-53430c37]{display:flex;align-items:center;gap:.75rem;padding:.25rem .25rem .45rem}.menu-user-avatar[data-v-53430c37]{width:42px;height:42px;border-radius:10px;background:#f1f5f9;border:1px solid #e2e8f0;color:#64748b;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.menu-user-details[data-v-53430c37]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.menu-user-name[data-v-53430c37]{font-size:.875rem;font-weight:700;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.25}.menu-user-email[data-v-53430c37]{font-size:.72rem;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.menu-user-role-badge[data-v-53430c37]{display:inline-block;align-self:flex-start;margin-top:3px;padding:.15rem .5rem;background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;font-size:.68rem;font-weight:600;color:#0284c7;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.menu-separator[data-v-53430c37]{height:1px;background:#f1f5f9;margin:.5rem 0}.menu-org-details[data-v-53430c37]{padding:.35rem;display:flex;flex-direction:column;gap:3px}.org-details-title[data-v-53430c37]{font-size:.65rem;font-weight:700;color:#94a3b8;letter-spacing:.02em}.org-details-sec[data-v-53430c37]{font-size:.8rem;font-weight:700;color:#1e293b;line-height:1.3}.org-details-div[data-v-53430c37]{font-size:.72rem;color:#64748b;line-height:1.3}.menu-action-links[data-v-53430c37]{display:flex;flex-direction:column;gap:.35rem;padding-top:.15rem}.menu-action-btn[data-v-53430c37]{display:flex;align-items:center;gap:.65rem;padding:.55rem .65rem;border-radius:8px;border:none;background:transparent;cursor:pointer;text-align:left;width:100%;font-family:inherit;font-size:.825rem;font-weight:600;color:#334155;transition:all .15s ease}.menu-action-btn[data-v-53430c37]:hover{background:#f1f5f9;color:#0f172a}.menu-action-btn.btn-logout[data-v-53430c37]{color:#dc2626}.menu-action-btn.btn-logout[data-v-53430c37]:hover{background:#fef2f2;color:#b91c1c}.menu-slide-enter-active[data-v-53430c37],.menu-slide-leave-active[data-v-53430c37]{transition:all .2s cubic-bezier(.16,1,.3,1)}.menu-slide-enter-from[data-v-53430c37],.menu-slide-leave-to[data-v-53430c37]{opacity:0;transform:translateY(-6px) scale(.98)}.dashboard-layout[data-v-2ab4936c]{display:flex;min-height:100vh;background-color:var(--bg-primary, #f8fafc);position:relative}.layout-main-wrapper[data-v-2ab4936c]{flex:1;display:flex;flex-direction:column;min-width:0;width:100%}.top-nav-bar[data-v-2ab4936c]{height:52px;background:#fff;border-bottom:1px solid var(--border-color, #e2e8f0);display:flex;align-items:center;justify-content:space-between;padding:0 1.75rem;position:sticky;top:0;z-index:30;box-shadow:0 1px 2px #00000005}.top-nav-left[data-v-2ab4936c]{display:flex;align-items:center;gap:1rem}.global-year-badge-group[data-v-2ab4936c]{display:flex;align-items:center;gap:.65rem;font-size:.8125rem}.context-label[data-v-2ab4936c]{display:inline-flex;align-items:center;gap:.35rem;font-weight:600;color:var(--text-muted, #64748b)}.label-icon[data-v-2ab4936c]{color:#0284c7}.top-year-select-box[data-v-2ab4936c]{position:relative}.top-year-select[data-v-2ab4936c]{padding:.35rem 1.6rem .35rem .65rem;font-size:.8125rem;font-weight:700;color:#0369a1;background:#f0f9ff;border:1px solid #bae6fd;border-radius:.5rem;cursor:pointer;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%230284c7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;transition:all .15s ease}.top-year-select[data-v-2ab4936c]:hover{background-color:#e0f2fe}.top-year-select[data-v-2ab4936c]:focus{box-shadow:0 0 0 2px #0284c733}.year-status-chip[data-v-2ab4936c]{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .6rem;border-radius:9999px;font-size:.75rem;font-weight:600}.year-status-chip.status-active[data-v-2ab4936c]{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.year-status-chip.status-planning[data-v-2ab4936c]{background:#fefce8;color:#ca8a04;border:1px solid #fef08a}.year-status-chip.status-upcoming[data-v-2ab4936c]{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.year-status-chip.status-closed[data-v-2ab4936c],.year-status-chip.is-locked[data-v-2ab4936c]{background:#f1f5f9;color:#64748b;border:1px solid #cbd5e1}.date-range-hint[data-v-2ab4936c]{display:inline-flex;align-items:center;gap:.3rem;color:var(--text-muted, #94a3b8);font-size:.75rem}.top-nav-right[data-v-2ab4936c]{display:flex;align-items:center;gap:.75rem}.security-warning-chip[data-v-2ab4936c]{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:.5rem;font-size:.75rem;font-weight:600;background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.layout-page-content[data-v-2ab4936c]{flex:1}.mobile-menu-btn[data-v-2ab4936c]{display:none;width:34px;height:34px;border-radius:.5rem;background:#f1f5f9;border:1px solid #e2e8f0;color:var(--text-main, #0f172a);align-items:center;justify-content:center;cursor:pointer}.mobile-backdrop[data-v-2ab4936c]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a66;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:45}@media(max-width:992px){.mobile-menu-btn[data-v-2ab4936c]{display:flex}.date-range-hint[data-v-2ab4936c]{display:none}.top-nav-bar[data-v-2ab4936c]{padding:0 1rem}}.bucket-tabs-container[data-v-f50d5286]{display:flex;align-items:center;gap:.65rem;overflow-x:auto;padding-bottom:.25rem}.bucket-tab[data-v-f50d5286]{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border-radius:12px;background:#fff;border:1px solid var(--border-color);font-family:inherit;font-size:.875rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;white-space:nowrap}.bucket-tab[data-v-f50d5286]:hover{border-color:var(--primary-border);background:#f8fafc;color:var(--text-primary)}.bucket-tab.active[data-v-f50d5286]{background:#fff;border-color:var(--primary);color:var(--primary);box-shadow:0 2px 8px #0284c71f}.tab-icon[data-v-f50d5286]{flex-shrink:0;color:var(--text-muted);transition:color .2s ease}.bucket-tab.active .tab-icon[data-v-f50d5286]{color:var(--primary)}.icon-admin[data-v-f50d5286]{color:#dc2626}.icon-manager[data-v-f50d5286]{color:#8b5cf6}.icon-staff[data-v-f50d5286]{color:#0284c7}.tab-badge[data-v-f50d5286]{padding:.1rem .45rem;border-radius:9999px;font-size:.725rem;font-weight:700;background:#f1f5f9;color:var(--text-secondary)}.bucket-tab.active .tab-badge[data-v-f50d5286]{background:var(--primary-light);color:var(--primary)}.badge-admin[data-v-f50d5286]{background:#fee2e2;color:#dc2626}.badge-manager[data-v-f50d5286]{background:#ede9fe;color:#7c3aed}.badge-staff[data-v-f50d5286]{background:#e0f2fe;color:#0284c7}.table-container[data-v-f50d5286]{padding:0;overflow-x:auto;border-radius:14px}.user-cell[data-v-f50d5286]{display:flex;align-items:center;gap:.75rem}.user-avatar-sm[data-v-f50d5286]{width:36px;height:36px;border-radius:50%;background:var(--primary-light);color:var(--primary);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;border:1px solid var(--border-color)}.avatar-table-img[data-v-f50d5286]{width:100%;height:100%;object-fit:cover}.user-names[data-v-f50d5286]{display:flex;flex-direction:column}.name-main[data-v-f50d5286]{font-weight:700;color:var(--text-primary)}.name-nick[data-v-f50d5286]{font-size:.775rem;color:var(--text-muted)}.position-cell[data-v-f50d5286]{display:flex;flex-direction:column;gap:.2rem}.pos-name[data-v-f50d5286]{font-weight:600}.pos-phone[data-v-f50d5286]{display:inline-flex;align-items:center;gap:.3rem;font-size:.8rem;color:var(--text-muted)}.email-cell[data-v-f50d5286]{display:inline-flex;align-items:center;gap:.4rem;color:var(--text-secondary)}.org-cell[data-v-f50d5286]{display:flex;flex-direction:column;line-height:1.35}.org-dept[data-v-f50d5286]{font-weight:700;font-size:.875rem;color:var(--text-primary)}.org-div[data-v-f50d5286]{font-size:.8rem;color:var(--text-secondary)}.org-sec[data-v-f50d5286]{font-size:.8rem;color:var(--primary);display:inline-flex;align-items:center;gap:.3rem;font-weight:600}.sec-badge[data-v-f50d5286]{font-size:.675rem;padding:.05rem .35rem;border-radius:4px;background:var(--primary-light);border:1px solid var(--primary-border);color:var(--primary)}.role-chip[data-v-f50d5286]{display:inline-block;padding:.25rem .65rem;border-radius:6px;font-size:.8rem;font-weight:700}.role-admin[data-v-f50d5286]{background:#f0f9ff;color:#0284c7;border:1px solid #bae6fd}.role-manager[data-v-f50d5286]{background:#fdf4ff;color:#c026d3;border:1px solid #f5d0fe}.role-staff[data-v-f50d5286]{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.role-user[data-v-f50d5286]{background:#f8fafc;color:#64748b;border:1px solid #e2e8f0}.status-chip[data-v-f50d5286]{display:inline-block;padding:.2rem .6rem;border-radius:9999px;font-size:.775rem;font-weight:600}.status-active[data-v-f50d5286]{background:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.status-inactive[data-v-f50d5286]{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid var(--color-danger-border)}.actions-cell[data-v-f50d5286]{display:flex;align-items:center;justify-content:flex-end;gap:.5rem}.btn-action[data-v-f50d5286]{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .65rem;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;border:1px solid var(--border-color);background:#fff;transition:all .2s ease}.btn-action.edit[data-v-f50d5286]:hover{background:var(--primary-light);border-color:var(--primary-border);color:var(--primary)}.btn-action.delete[data-v-f50d5286]:hover{background:var(--color-danger-bg);border-color:var(--color-danger-border);color:var(--color-danger)}.empty-cell[data-v-f50d5286]{padding:3rem 1rem;text-align:center}.empty-state[data-v-f50d5286]{display:flex;flex-direction:column;align-items:center;gap:.75rem;color:var(--text-muted)}.text-right[data-v-f50d5286]{text-align:right}.modal-form-wrapper[data-v-f50d5286]{display:flex;flex-direction:column;flex:1 1 auto}.avatar-upload-card[data-v-f50d5286]{display:flex;align-items:center;gap:1.25rem;background:#f8fafc;border:1px solid var(--border-color);border-radius:14px;padding:1.25rem;margin-bottom:1.25rem}.avatar-preview-box[data-v-f50d5286]{width:74px;height:74px;border-radius:50%;background:#fff;border:2px solid var(--primary-border);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;box-shadow:var(--shadow-sm)}.avatar-modal-img[data-v-f50d5286]{width:100%;height:100%;object-fit:cover}.avatar-modal-placeholder[data-v-f50d5286]{color:var(--text-muted)}.avatar-actions-meta[data-v-f50d5286]{display:flex;flex-direction:column;gap:.35rem;flex:1}.avatar-title[data-v-f50d5286]{font-size:.95rem;font-weight:700;color:var(--text-primary)}.avatar-help[data-v-f50d5286]{font-size:.8rem;color:var(--text-muted)}.avatar-btn-row[data-v-f50d5286]{display:flex;align-items:center;gap:.6rem;margin-top:.35rem}.btn-avatar[data-v-f50d5286]{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .75rem;border-radius:8px;font-family:inherit;font-size:.825rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-avatar.upload[data-v-f50d5286]{background:#fff;border:1px solid var(--primary-border);color:var(--primary)}.btn-avatar.upload[data-v-f50d5286]:hover{background:var(--primary-light)}.btn-avatar.delete[data-v-f50d5286]{background:#fff;border:1px solid var(--color-danger-border);color:var(--color-danger)}.btn-avatar.delete[data-v-f50d5286]:hover{background:var(--color-danger-bg)}.hidden-file-input[data-v-f50d5286]{display:none}.form-grid[data-v-f50d5286]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.full-width[data-v-f50d5286]{grid-column:span 2}.select-input[data-v-f50d5286]{cursor:pointer}.cascade-section[data-v-f50d5286]{background:#f8fafc;border:1px solid var(--border-color);border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.cascade-title[data-v-f50d5286]{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:700;color:var(--text-primary)}.cascade-grid[data-v-f50d5286]{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.select-highlight[data-v-f50d5286]{border-color:var(--primary-border);background-color:#fff}.cascade-preview[data-v-f50d5286]{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem 1rem;background:#fff;border:1px solid var(--primary-border);border-radius:8px;font-size:.85rem}.preview-icon[data-v-f50d5286]{color:var(--color-success);margin-top:.15rem;flex-shrink:0}.preview-text[data-v-f50d5286]{display:flex;flex-direction:column;gap:.15rem}.preview-label[data-v-f50d5286]{font-size:.75rem;font-weight:700;color:var(--primary);text-transform:uppercase}.preview-path[data-v-f50d5286]{font-weight:700;color:var(--text-primary)}.modal-footer[data-v-f50d5286]{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;margin-top:1.75rem;padding-top:1.25rem;border-top:1px solid var(--border-color)}.table-row-clickable[data-v-f50d5286]{cursor:pointer;transition:background-color .15s ease}.table-row-clickable[data-v-f50d5286]:hover{background-color:#f8fafc!important}.user-subtext[data-v-f50d5286]{font-size:.75rem;color:var(--text-muted);display:flex;align-items:center;gap:.25rem}.sub-email[data-v-f50d5286]{color:var(--text-secondary)}.org-cell-compact[data-v-f50d5286]{display:flex;flex-direction:column;gap:.15rem}.org-sec-highlight[data-v-f50d5286]{font-size:.85rem;font-weight:700;color:var(--text-primary)}.org-div-sub[data-v-f50d5286]{font-size:.725rem;color:var(--text-muted)}.view-modal-card[data-v-f50d5286]{max-width:680px}.view-header-profile[data-v-f50d5286]{display:flex;align-items:center;gap:1rem}.view-avatar-wrapper[data-v-f50d5286]{width:58px;height:58px;border-radius:50%;background:var(--primary-light);color:var(--primary);display:flex;align-items:center;justify-content:center;border:2px solid var(--primary-border);overflow:hidden;flex-shrink:0}.view-avatar-img[data-v-f50d5286]{width:100%;height:100%;object-fit:cover}.view-header-details[data-v-f50d5286]{display:flex;flex-direction:column;gap:.35rem}.view-header-top[data-v-f50d5286]{display:flex;align-items:baseline;gap:.5rem}.view-header-top h3[data-v-f50d5286]{font-size:1.25rem;font-weight:800;color:var(--text-primary);margin:0}.view-nickname[data-v-f50d5286]{font-size:.95rem;font-weight:600;color:var(--primary)}.view-header-badges[data-v-f50d5286]{display:flex;align-items:center;gap:.5rem}.view-modal-body[data-v-f50d5286]{display:flex;flex-direction:column;gap:1.25rem;padding:1.25rem 1.5rem}.view-section-card[data-v-f50d5286]{background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:1.15rem;display:flex;flex-direction:column;gap:.85rem}.view-section-title[data-v-f50d5286]{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:700;color:var(--primary);border-bottom:1px solid var(--border-color-light);padding-bottom:.5rem}.view-info-grid[data-v-f50d5286]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.view-info-item[data-v-f50d5286]{display:flex;flex-direction:column;gap:.2rem}.info-label[data-v-f50d5286]{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase}.info-value[data-v-f50d5286]{font-size:.9rem;font-weight:600;color:var(--text-primary)}.info-value-with-action[data-v-f50d5286]{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:var(--text-primary)}.view-position-banner[data-v-f50d5286]{background:#f8fafc;border:1px solid var(--border-color-light);border-radius:8px;padding:.65rem .85rem;display:flex;align-items:center;gap:.6rem}.pos-badge-title[data-v-f50d5286]{font-size:.8rem;font-weight:600;color:var(--text-muted)}.pos-badge-val[data-v-f50d5286]{font-size:.9rem;font-weight:700;color:var(--text-primary)}.view-hierarchy-box[data-v-f50d5286]{display:flex;flex-direction:column;gap:.35rem;background:#f8fafc;border:1px solid var(--border-color);border-radius:10px;padding:.85rem}.hierarchy-item[data-v-f50d5286]{display:flex;align-items:center;gap:.75rem;background:#fff;border:1px solid var(--border-color-light);padding:.5rem .75rem;border-radius:8px}.hierarchy-item.level-4[data-v-f50d5286]{border-color:var(--primary-border);background:var(--primary-light)}.lvl-badge[data-v-f50d5286]{font-size:.725rem;font-weight:700;padding:.15rem .45rem;border-radius:5px;background:#f1f5f9;color:var(--text-secondary)}.hierarchy-item.level-4 .lvl-badge[data-v-f50d5286]{background:var(--primary);color:#fff}.lvl-val[data-v-f50d5286]{font-size:.85rem;font-weight:600;color:var(--text-primary)}.lvl-val.highlight[data-v-f50d5286]{font-weight:700;color:var(--primary)}.hierarchy-sep[data-v-f50d5286]{display:flex;justify-content:center;color:var(--text-muted);line-height:1}.system-info-card[data-v-f50d5286]{background:#f8fafc}.code-font[data-v-f50d5286]{font-family:monospace;font-size:.85rem;color:var(--text-secondary)}.view-modal-footer[data-v-f50d5286]{justify-content:space-between}.modal-footer-right[data-v-f50d5286]{display:flex;align-items:center;gap:.75rem}.modal-footer-left[data-v-f50d5286]{display:flex;align-items:center}.modal-tabs-bar[data-v-f50d5286]{display:flex;align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:0 1.25rem;gap:.5rem}.modal-tab-item[data-v-f50d5286]{display:inline-flex;align-items:center;gap:.45rem;padding:.75rem 1rem;border:none;background:transparent;color:#64748b;font-size:.8125rem;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s ease;position:relative}.modal-tab-item[data-v-f50d5286]:hover{color:#0284c7}.modal-tab-item.active[data-v-f50d5286]{color:#0284c7;font-weight:700;border-bottom-color:#0284c7;background:#fff}.tab-done-dot[data-v-f50d5286]{width:6px;height:6px;border-radius:50%;background:#10b981}.modal-tab-viewport[data-v-f50d5286]{min-height:420px;overflow-y:auto;padding:1.25rem 1.5rem}.roles-tab-wrapper[data-v-f50d5286]{padding-bottom:2rem}.tab-pane-content[data-v-f50d5286]{animation:fadeInPane-f50d5286 .15s ease-in-out}@keyframes fadeInPane-f50d5286{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.tab-section-intro[data-v-f50d5286]{display:flex;align-items:flex-start;gap:.75rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;padding:.85rem 1rem;margin-bottom:1.25rem;color:#0284c7}.section-intro-title[data-v-f50d5286]{font-size:.875rem;font-weight:700;color:#0f172a;margin:0 0 .15rem}.section-intro-desc[data-v-f50d5286]{font-size:.775rem;color:#475569;margin:0}.select-role-input[data-v-f50d5286]{font-weight:600;font-size:.9rem}.role-summary-preview-card[data-v-f50d5286]{background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:1rem 1.25rem;margin-top:1rem;box-shadow:0 1px 3px #0000000a}.role-summary-header[data-v-f50d5286]{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.5rem;flex-wrap:wrap}.role-summary-title-box[data-v-f50d5286]{display:flex;align-items:center;gap:.5rem}.role-summary-name[data-v-f50d5286]{font-size:.9375rem;font-weight:700;color:#0f172a}.role-summary-id[data-v-f50d5286]{font-size:.725rem;font-family:monospace;color:#0284c7;background:#f0f9ff;padding:.1rem .4rem;border-radius:4px}.role-summary-desc[data-v-f50d5286]{font-size:.8125rem;color:#475569;line-height:1.45;margin:0 0 .85rem}.role-summary-meta[data-v-f50d5286]{display:flex;align-items:center;gap:1.5rem;padding-top:.65rem;border-top:1px solid #f1f5f9;flex-wrap:wrap}.role-meta-item[data-v-f50d5286]{display:flex;align-items:center;gap:.35rem;font-size:.8125rem}.meta-label[data-v-f50d5286]{color:#64748b}.meta-value[data-v-f50d5286]{color:#0f172a}.status-toggle-group[data-v-f50d5286]{margin-top:1.25rem;padding-top:1rem;border-top:1px solid #e2e8f0}.roles-badges-col[data-v-f50d5286]{max-width:260px}.roles-badges-wrap[data-v-f50d5286]{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.is-primary-badge[data-v-f50d5286]{box-shadow:0 0 0 1.5px #0284c7}.badge-primary-star[data-v-f50d5286]{color:#eab308;font-size:.75rem;margin-left:.15rem}.selected-roles-summary-bar[data-v-f50d5286]{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px;margin-bottom:1rem;flex-wrap:wrap}.summary-left[data-v-f50d5286]{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:#0f172a}.summary-primary-tag[data-v-f50d5286]{font-size:.8125rem;color:#0284c7}.multi-roles-grid[data-v-f50d5286]{display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem;margin-bottom:1rem}@media(max-width:768px){.multi-roles-grid[data-v-f50d5286]{grid-template-columns:1fr}}.role-select-card[data-v-f50d5286]{background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;padding:1rem 1.15rem;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;gap:.65rem;transition:all .2s ease;min-height:140px}.role-select-card[data-v-f50d5286]:hover{background:#f8fafc;border-color:#cbd5e1;box-shadow:var(--shadow-sm)}.role-select-card.is-selected[data-v-f50d5286]{border-color:#0284c7;background:#f0f9ff;box-shadow:0 3px 10px #0284c71f}.role-select-card.is-primary-card[data-v-f50d5286]{border-color:#0284c7;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-width:2px}.role-card-top[data-v-f50d5286]{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.role-checkbox-box[data-v-f50d5286]{display:flex;align-items:center;gap:.5rem}.role-card-checkbox[data-v-f50d5286]{width:17px;height:17px;accent-color:#0284c7;cursor:pointer}.role-card-name[data-v-f50d5286]{font-size:.875rem;font-weight:700;color:#0f172a}.primary-star-badge[data-v-f50d5286]{display:inline-flex;align-items:center;gap:.25rem;font-size:.72rem;font-weight:700;color:#0284c7;background:#fff;padding:.15rem .5rem;border-radius:6px;border:1px solid #bae6fd}.primary-star-badge .star-icon[data-v-f50d5286]{color:#eab308;fill:#eab308}.role-card-desc[data-v-f50d5286]{font-size:.8rem;color:#475569;margin:0;line-height:1.45;flex-grow:1}.role-card-footer[data-v-f50d5286]{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding-top:.5rem;border-top:1px solid rgba(0,0,0,.05)}.role-card-tags[data-v-f50d5286]{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.badge-tag.level-tag[data-v-f50d5286]{font-size:.72rem;font-weight:700;padding:.15rem .5rem;border-radius:6px}.tag-level-admin[data-v-f50d5286]{background:#faf5ff;color:#7e22ce;border:1px solid #e9d5ff}.tag-level-l1[data-v-f50d5286]{background:#eef2ff;color:#4338ca;border:1px solid #c7d2fe}.tag-level-l2[data-v-f50d5286]{background:#f0f9ff;color:#0369a1;border:1px solid #bae6fd}.tag-level-l3[data-v-f50d5286]{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.tag-level-l4[data-v-f50d5286]{background:#fffbeb;color:#b45309;border:1px solid #fde68a}.badge-tag.scope-tag[data-v-f50d5286]{font-size:.72rem;font-weight:500;color:#64748b;background:#f1f5f9;padding:.15rem .45rem;border-radius:6px;border:1px solid #e2e8f0}.btn-make-primary[data-v-f50d5286]{background:#fff;border:1px solid #cbd5e1;color:#0284c7;font-size:.725rem;font-weight:700;padding:.2rem .55rem;border-radius:6px;cursor:pointer;transition:all .15s ease}.btn-make-primary[data-v-f50d5286]:hover{background:#0284c7;color:#fff;border-color:#0284c7}.state-unassigned[data-v-f50d5286]{background:#f1f5f9;color:#64748b;border-color:#cbd5e1}.tab-badge.badge-active[data-v-f50d5286]{background:#dcfce7;color:#15803d}.tab-badge.badge-inactive[data-v-f50d5286]{background:#fee2e2;color:#b91c1c}.icon-active[data-v-f50d5286]{color:#16a34a}.icon-inactive[data-v-f50d5286]{color:#dc2626}.bucket-tab.tab-status-active.active[data-v-f50d5286]{background:#f0fdf4;border-color:#86efac;color:#15803d}.bucket-tab.tab-status-inactive.active[data-v-f50d5286]{background:#fef2f2;border-color:#fca5a5;color:#b91c1c}.status-tab-wrapper[data-v-f50d5286]{display:flex;flex-direction:column;gap:1.25rem}.status-choice-grid[data-v-f50d5286]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.status-choice-card[data-v-f50d5286]{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:1.25rem;cursor:pointer;display:flex;flex-direction:column;gap:.75rem;transition:all .2s ease}.status-choice-card[data-v-f50d5286]:hover{border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 4px 12px #0000000d}.status-choice-card.card-active.is-selected[data-v-f50d5286]{border-color:#16a34a;background:#f0fdf4;box-shadow:0 4px 12px #16a34a1f}.status-choice-card.card-inactive.is-selected[data-v-f50d5286]{border-color:#dc2626;background:#fef2f2;box-shadow:0 4px 12px #dc26261f}.choice-card-header[data-v-f50d5286]{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.choice-card-title-box[data-v-f50d5286]{display:flex;align-items:center;gap:.75rem}.choice-icon-wrap[data-v-f50d5286]{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.icon-wrap-active[data-v-f50d5286]{background:#dcfce7;color:#16a34a}.icon-wrap-inactive[data-v-f50d5286]{background:#fee2e2;color:#dc2626}.choice-title[data-v-f50d5286]{font-size:.9375rem;font-weight:700;color:#0f172a;margin:0 0 .15rem}.choice-badge[data-v-f50d5286]{font-size:.685rem;font-weight:600;padding:.1rem .45rem;border-radius:6px;display:inline-block}.badge-active-pill[data-v-f50d5286]{background:#dcfce7;color:#15803d}.badge-inactive-pill[data-v-f50d5286]{background:#fee2e2;color:#b91c1c}.choice-radio[data-v-f50d5286]{width:18px;height:18px;cursor:pointer;accent-color:#0284c7}.choice-desc[data-v-f50d5286]{font-size:.8125rem;color:#64748b;line-height:1.45;margin:0}.current-status-summary-box[data-v-f50d5286]{display:flex;align-items:flex-start;gap:.85rem;padding:1rem 1.25rem;border-radius:10px;border:1px solid transparent}.current-status-summary-box.box-active[data-v-f50d5286]{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.current-status-summary-box.box-inactive[data-v-f50d5286]{background:#fef2f2;border-color:#fecaca;color:#991b1b}.summary-icon[data-v-f50d5286]{margin-top:.1rem;flex-shrink:0}.summary-text[data-v-f50d5286]{display:flex;flex-direction:column;gap:.2rem}.summary-title[data-v-f50d5286]{font-size:.875rem}.summary-sub[data-v-f50d5286]{font-size:.775rem;opacity:.85}.btn-nav-tab[data-v-f50d5286],.btn-nav-next[data-v-f50d5286]{font-size:.8125rem;font-weight:600}@media(max-width:768px){.avatar-upload-card[data-v-f50d5286]{flex-direction:column;text-align:center}.avatar-btn-row[data-v-f50d5286]{justify-content:center}.form-grid[data-v-f50d5286],.cascade-grid[data-v-f50d5286],.view-info-grid[data-v-f50d5286]{grid-template-columns:1fr}.full-width[data-v-f50d5286]{grid-column:span 1}.modal-tabs-bar[data-v-f50d5286]{overflow-x:auto;padding:0 .5rem}}.stats-grid[data-v-52f39247]{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.15rem}.stat-card.active-card[data-v-52f39247]{border-color:var(--primary);background:linear-gradient(135deg,#ffffff,var(--primary-light));box-shadow:0 4px 12px #0284c71f}.stat-icon-wrapper[data-v-52f39247]{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.icon-purple[data-v-52f39247]{background:#f3e8ff;color:#9333ea}.icon-blue[data-v-52f39247]{background:#e0f2fe;color:#0284c7}.icon-emerald[data-v-52f39247]{background:#d1fae5;color:#059669}.icon-sky[data-v-52f39247]{background:#f0fdf4;color:#16a34a}.stat-content[data-v-52f39247]{display:flex;flex-direction:column}.stat-label[data-v-52f39247]{font-size:.775rem;font-weight:700;color:var(--text-muted)}.stat-value[data-v-52f39247]{font-size:1.35rem;font-weight:800;color:var(--text-primary);line-height:1.2;margin:.1rem 0}.stat-unit[data-v-52f39247]{font-size:.8rem;font-weight:600;color:var(--text-muted)}.stat-desc[data-v-52f39247]{font-size:.7rem;color:var(--text-secondary)}.level-tabs-bar[data-v-52f39247]{display:flex;align-items:center;gap:.65rem;overflow-x:auto;padding-bottom:.25rem}.level-tab-btn[data-v-52f39247]{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.15rem;border-radius:12px;background:#fff;border:1px solid var(--border-color);font-family:inherit;font-size:.875rem;font-weight:700;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;white-space:nowrap}.level-tab-btn[data-v-52f39247]:hover{border-color:var(--primary-border);background:#f8fafc;color:var(--text-primary)}.level-tab-btn.active[data-v-52f39247]{background:#fff;border-color:var(--primary);color:var(--primary);box-shadow:0 2px 8px #0284c71f}.tab-badge[data-v-52f39247]{padding:.1rem .45rem;border-radius:9999px;font-size:.725rem;font-weight:700;background:#f1f5f9;color:var(--text-secondary)}.level-tab-btn.active .tab-badge[data-v-52f39247]{background:var(--primary-light);color:var(--primary)}.table-container[data-v-52f39247]{overflow-x:auto;border-radius:16px;border:1px solid var(--border-color);background:#fff;box-shadow:var(--shadow-sm)}.table-row-clickable[data-v-52f39247]{cursor:pointer;transition:background-color .15s ease}.table-row-clickable[data-v-52f39247]:hover{background-color:#f8fafc!important}.org-name-cell[data-v-52f39247]{display:flex;align-items:center;gap:.75rem}.org-icon-badge[data-v-52f39247]{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.org-icon-badge.l1[data-v-52f39247]{background:#f3e8ff;color:#9333ea}.org-icon-badge.l2[data-v-52f39247]{background:#e0f2fe;color:#0284c7}.org-icon-badge.l3[data-v-52f39247]{background:#d1fae5;color:#059669}.org-icon-badge.l4[data-v-52f39247]{background:#f0fdf4;color:#16a34a}.org-text-box[data-v-52f39247]{display:flex;flex-direction:column;gap:.1rem}.name-row[data-v-52f39247]{display:flex;align-items:center;gap:.4rem}.org-name-th[data-v-52f39247]{font-weight:700;color:var(--text-primary)}.org-id-tag[data-v-52f39247]{font-family:monospace;font-size:.725rem;color:var(--primary);font-weight:600}.code-pill[data-v-52f39247]{font-size:.7rem;font-weight:700;padding:.1rem .4rem;border-radius:4px;background:#f1f5f9;color:var(--text-secondary)}.type-badge[data-v-52f39247]{display:inline-block;padding:.2rem .55rem;border-radius:6px;font-size:.785rem;font-weight:600;background:#f1f5f9;color:var(--text-secondary);border:1px solid var(--border-color)}.parent-name[data-v-52f39247]{font-weight:600;color:var(--text-primary);font-size:.875rem}.dept-sub[data-v-52f39247]{font-size:.725rem;color:var(--text-muted)}.div-cell[data-v-52f39247]{display:flex;flex-direction:column;gap:.15rem}.count-chip[data-v-52f39247]{display:inline-block;padding:.2rem .6rem;border-radius:9999px;font-size:.785rem;font-weight:700;background:#f1f5f9;color:var(--text-secondary)}.user-count-chip[data-v-52f39247]{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .6rem;border-radius:9999px;font-size:.785rem;font-weight:700;background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.phone-cell-row[data-v-52f39247]{display:inline-flex;align-items:center;gap:.4rem}.phone-text[data-v-52f39247]{font-size:.85rem;font-weight:600}.empty-cell[data-v-52f39247]{padding:3.5rem!important;text-align:center}.empty-state[data-v-52f39247]{display:flex;flex-direction:column;align-items:center;gap:.75rem;color:var(--text-muted)}.text-center[data-v-52f39247]{text-align:center}.text-right[data-v-52f39247]{text-align:right}.code-font[data-v-52f39247]{font-family:monospace}.modal-form-wrapper[data-v-52f39247]{display:flex;flex-direction:column;flex:1 1 auto;overflow:hidden;height:100%}.cascade-section[data-v-52f39247]{background:#f8fafc;border:1px solid var(--border-color);border-radius:12px;padding:1.15rem;margin-bottom:1.25rem}.cascade-header[data-v-52f39247]{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:700;color:var(--primary);margin-bottom:.85rem}.cascade-grid[data-v-52f39247]{display:grid;grid-template-columns:1fr;gap:.85rem}.form-grid[data-v-52f39247]{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.full-width[data-v-52f39247]{grid-column:span 2}.select-input[data-v-52f39247]{cursor:pointer}.field-hint[data-v-52f39247]{font-size:.725rem;color:var(--text-muted);margin-top:.15rem}.view-modal-card[data-v-52f39247]{max-width:680px}.view-avatar-wrapper[data-v-52f39247]{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.view-avatar-wrapper.l1[data-v-52f39247]{background:#f3e8ff;color:#9333ea}.view-avatar-wrapper.l2[data-v-52f39247]{background:#e0f2fe;color:#0284c7}.view-avatar-wrapper.l3[data-v-52f39247]{background:#d1fae5;color:#059669}.view-avatar-wrapper.l4[data-v-52f39247]{background:#f0fdf4;color:#16a34a}.view-header-profile[data-v-52f39247]{display:flex;align-items:center;gap:1rem}.view-header-details[data-v-52f39247]{display:flex;flex-direction:column;gap:.35rem}.view-header-top[data-v-52f39247]{display:flex;align-items:center;gap:.6rem}.view-header-top h3[data-v-52f39247]{font-size:1.25rem;font-weight:800;color:var(--text-primary);margin:0}.view-header-badges[data-v-52f39247]{display:flex;align-items:center;gap:.5rem}.view-modal-body[data-v-52f39247]{display:flex;flex-direction:column;gap:1.25rem;padding:1.25rem 1.5rem}.view-section-card[data-v-52f39247]{background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:1.15rem;display:flex;flex-direction:column;gap:.85rem}.view-section-title[data-v-52f39247]{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:700;color:var(--primary);border-bottom:1px solid var(--border-color-light);padding-bottom:.5rem}.view-info-grid[data-v-52f39247]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.view-info-item[data-v-52f39247]{display:flex;flex-direction:column;gap:.2rem}.info-label[data-v-52f39247]{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase}.info-value[data-v-52f39247]{font-size:.9rem;font-weight:600;color:var(--text-primary)}.info-value.highlight[data-v-52f39247]{font-weight:700;color:var(--primary)}.view-modal-footer[data-v-52f39247]{justify-content:space-between}.modal-footer-right[data-v-52f39247]{display:flex;align-items:center;gap:.75rem}@media(max-width:768px){.form-grid[data-v-52f39247],.view-info-grid[data-v-52f39247]{grid-template-columns:1fr}.full-width[data-v-52f39247]{grid-column:span 1}}.order-badge[data-v-9d307736]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;background:#f1f5f9;font-size:.75rem;font-weight:700;color:#64748b}.role-primary-cell[data-v-9d307736]{display:flex;flex-direction:column;gap:.25rem}.role-title-line[data-v-9d307736]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.role-name-text[data-v-9d307736]{font-weight:700;color:#0f172a;font-size:.9375rem}.system-tag[data-v-9d307736]{font-size:.65rem;font-weight:700;padding:.1rem .45rem;border-radius:4px;background:#f1f5f9;color:#475569;border:1px solid #cbd5e1}.module-tag-planning[data-v-9d307736]{font-size:.65rem;font-weight:700;padding:.1rem .45rem;border-radius:4px;background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.role-desc-text[data-v-9d307736]{font-size:.8125rem;color:#64748b;margin:0;line-height:1.4}.role-user-count-pill[data-v-9d307736]{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .75rem;background:#f0f9ff;border:1px solid #bae6fd;border-radius:9999px;color:#0284c7;font-size:.8125rem;transition:all .15s ease;cursor:default}.role-user-count-pill[data-v-9d307736]:hover{background:#e0f2fe;border-color:#7dd3fc}.role-user-count-pill .count-icon[data-v-9d307736]{color:#0284c7}.role-user-count-pill .count-val[data-v-9d307736]{font-weight:700;color:#0369a1}.role-user-count-pill .count-unit[data-v-9d307736]{font-size:.75rem;color:#64748b}.modal-tabs-bar[data-v-9d307736]{display:flex;align-items:center;gap:.5rem;padding:.5rem 1.5rem 0;border-bottom:1px solid #e2e8f0;background:#f8fafc;overflow-x:auto}.modal-tab-item[data-v-9d307736]{display:inline-flex;align-items:center;gap:.4rem;padding:.65rem 1rem;border:none;background:transparent;color:#64748b;font-size:.8125rem;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s ease;white-space:nowrap}.modal-tab-item[data-v-9d307736]:hover{color:#0284c7}.modal-tab-item.active[data-v-9d307736]{color:#0284c7;border-bottom-color:#0284c7;font-weight:700;background:#fff;border-radius:6px 6px 0 0}.tab-count-pill[data-v-9d307736]{font-size:.685rem;font-weight:700;background:#0284c7;color:#fff;padding:.05rem .4rem;border-radius:9999px}.modal-tab-viewport[data-v-9d307736]{padding:1.5rem;min-height:380px}.tab-pane-content[data-v-9d307736]{display:flex;flex-direction:column;gap:1.25rem;animation:fadeInTab-9d307736 .15s ease-in-out}@keyframes fadeInTab-9d307736{0%{opacity:.6;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.tab-section-intro[data-v-9d307736]{display:flex;align-items:flex-start;gap:.75rem;padding:.85rem 1rem;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0;color:#0284c7}.section-intro-title[data-v-9d307736]{font-size:.875rem;font-weight:700;color:#0f172a;margin:0 0 .15rem}.section-intro-desc[data-v-9d307736]{font-size:.775rem;color:#64748b;margin:0}.status-choice-grid[data-v-9d307736]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.status-choice-card[data-v-9d307736]{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:1.25rem;cursor:pointer;display:flex;flex-direction:column;gap:.75rem;transition:all .2s ease}.status-choice-card[data-v-9d307736]:hover{border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 4px 12px #0000000d}.status-choice-card.card-active.is-selected[data-v-9d307736]{border-color:#16a34a;background:#f0fdf4;box-shadow:0 4px 12px #16a34a1f}.status-choice-card.card-inactive.is-selected[data-v-9d307736]{border-color:#dc2626;background:#fef2f2;box-shadow:0 4px 12px #dc26261f}.choice-card-header[data-v-9d307736]{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.choice-card-title-box[data-v-9d307736]{display:flex;align-items:center;gap:.75rem}.choice-icon-wrap[data-v-9d307736]{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.icon-wrap-active[data-v-9d307736]{background:#dcfce7;color:#16a34a}.icon-wrap-inactive[data-v-9d307736]{background:#fee2e2;color:#dc2626}.choice-title[data-v-9d307736]{font-size:.9375rem;font-weight:700;color:#0f172a;margin:0 0 .15rem}.choice-badge[data-v-9d307736]{font-size:.685rem;font-weight:600;padding:.1rem .45rem;border-radius:6px;display:inline-block}.badge-active-pill[data-v-9d307736]{background:#dcfce7;color:#15803d}.badge-inactive-pill[data-v-9d307736]{background:#fee2e2;color:#b91c1c}.choice-radio[data-v-9d307736]{width:18px;height:18px;cursor:pointer;accent-color:#0284c7}.choice-desc[data-v-9d307736]{font-size:.8125rem;color:#64748b;line-height:1.45;margin:0}.current-status-summary-box[data-v-9d307736]{display:flex;align-items:flex-start;gap:.85rem;padding:1rem 1.25rem;border-radius:10px;border:1px solid transparent}.current-status-summary-box.box-active[data-v-9d307736]{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.current-status-summary-box.box-inactive[data-v-9d307736]{background:#fef2f2;border-color:#fecaca;color:#991b1b}.modal-footer[data-v-9d307736]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-top:1px solid #e2e8f0;background:#fff}.modal-footer-left[data-v-9d307736],.modal-footer-right[data-v-9d307736]{display:flex;align-items:center;gap:.75rem}.btn-nav-tab[data-v-9d307736],.btn-nav-next[data-v-9d307736]{font-size:.8125rem;font-weight:600}.status-badge[data-v-9d307736]{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:9999px;font-size:.75rem;font-weight:600}.status-dot[data-v-9d307736]{width:6px;height:6px;border-radius:50%}.status-active[data-v-9d307736]{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.status-active .status-dot[data-v-9d307736]{background:#10b981}.status-inactive[data-v-9d307736]{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.status-inactive .status-dot[data-v-9d307736]{background:#94a3b8}.actions-cell[data-v-9d307736]{display:flex;align-items:center;justify-content:flex-end;gap:.4rem}.btn-action-icon[data-v-9d307736]{width:32px;height:32px;border-radius:6px;border:1px solid transparent;display:flex;align-items:center;justify-content:center;background:#f8fafc;color:#64748b;cursor:pointer;transition:all .15s ease}.btn-action-icon.view[data-v-9d307736]:hover{background:#eff6ff;color:#0284c7;border-color:#bfdbfe}.btn-action-icon.edit[data-v-9d307736]:hover{background:#f0fdf4;color:#16a34a;border-color:#bbf7d0}.btn-action-icon.delete[data-v-9d307736]:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.btn-action-icon.disabled-system[data-v-9d307736]{opacity:.4;cursor:not-allowed}.form-section-title[data-v-9d307736]{display:flex;align-items:center;gap:.45rem;font-size:.9rem;font-weight:700;color:#0f172a;margin-bottom:.875rem;padding-bottom:.35rem;border-bottom:1px solid #e2e8f0}.form-grid-2col[data-v-9d307736]{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.field-hint[data-v-9d307736]{font-size:.725rem;color:#64748b;margin-top:.2rem}.matrix-section-header[data-v-9d307736]{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem;flex-wrap:wrap}.matrix-title-box[data-v-9d307736]{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:700;color:#0f172a}.matrix-selected-count[data-v-9d307736]{font-size:.75rem;font-weight:700;color:#0284c7;background:#eff6ff;padding:.15rem .5rem;border-radius:9999px;border:1px solid #bfdbfe}.matrix-quick-actions[data-v-9d307736]{display:flex;align-items:center;gap:.45rem}.btn-matrix-action[data-v-9d307736]{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .75rem;font-size:.75rem;font-weight:600;background:#f0f9ff;color:#0284c7;border:1px solid #bae6fd;border-radius:6px;cursor:pointer}.btn-matrix-action[data-v-9d307736]:hover{background:#e0f2fe}.btn-matrix-action.btn-clear-matrix[data-v-9d307736]{background:#f8fafc;color:#64748b;border-color:#cbd5e1}.btn-matrix-action.btn-clear-matrix[data-v-9d307736]:hover{background:#f1f5f9}.matrix-table-wrapper[data-v-9d307736]{border:1px solid #cbd5e1;border-radius:10px;overflow:hidden;margin-bottom:.5rem}.matrix-table[data-v-9d307736]{width:100%;border-collapse:collapse;font-size:.8125rem}.matrix-table th[data-v-9d307736]{background:#f8fafc;padding:.65rem .75rem;border-bottom:1px solid #cbd5e1;color:#334155;font-weight:700}.matrix-table td[data-v-9d307736]{padding:.65rem .75rem;border-bottom:1px solid #e2e8f0;vertical-align:middle}.matrix-table tr:last-child td[data-v-9d307736]{border-bottom:none}.matrix-table tr:hover td[data-v-9d307736]{background:#f8fafc}.module-title-cell[data-v-9d307736]{font-weight:600}.module-info-box[data-v-9d307736]{display:flex;flex-direction:column;gap:.15rem}.module-name-th[data-v-9d307736]{font-size:.875rem;font-weight:700;color:#0f172a}.module-code-pill[data-v-9d307736]{font-size:.7rem;font-family:monospace;color:#64748b}.matrix-checkbox-label[data-v-9d307736]{display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.matrix-checkbox[data-v-9d307736]{width:18px;height:18px;accent-color:#0284c7;cursor:pointer}.dash-empty[data-v-9d307736]{color:#cbd5e1;font-weight:700}.btn-toggle-module[data-v-9d307736]{background:none;border:1px solid #cbd5e1;border-radius:6px;padding:.25rem .55rem;font-size:.7rem;font-weight:600;color:#475569;cursor:pointer}.btn-toggle-module[data-v-9d307736]:hover{background:#f1f5f9;color:#0f172a}.view-detail-card[data-v-9d307736]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:1.25rem;margin-bottom:1.25rem}.view-detail-grid[data-v-9d307736]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1rem}.view-detail-item[data-v-9d307736]{display:flex;flex-direction:column;gap:.35rem}.item-label[data-v-9d307736]{font-size:.75rem;font-weight:700;color:#64748b;text-transform:uppercase}.item-value[data-v-9d307736]{font-size:.9rem;color:#0f172a}.item-desc-text[data-v-9d307736]{font-size:.875rem;color:#334155;line-height:1.5;margin:.25rem 0 0}.view-section-box[data-v-9d307736]{margin-top:1.25rem;display:flex;flex-direction:column;gap:.75rem}.view-section-title[data-v-9d307736]{font-size:.9rem;font-weight:700;color:#0f172a;margin:0}.view-users-grid[data-v-9d307736]{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem}.view-user-card[data-v-9d307736]{display:flex;align-items:center;gap:.65rem;padding:.65rem .85rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px}.view-user-avatar[data-v-9d307736]{width:32px;height:32px;border-radius:50%;background:#eff6ff;color:#0284c7;display:flex;align-items:center;justify-content:center;flex-shrink:0}.view-user-info[data-v-9d307736]{display:flex;flex-direction:column;gap:.1rem}.view-user-name[data-v-9d307736]{font-size:.8125rem;font-weight:700;color:#0f172a}.view-user-sub[data-v-9d307736]{font-size:.725rem;color:#64748b}.view-perms-chips-grid[data-v-9d307736]{display:flex;flex-wrap:wrap;gap:.45rem}.perm-chip-active[data-v-9d307736]{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .6rem;border-radius:6px;background:#eff6ff;border:1px solid #bfdbfe;color:#0284c7;font-size:.75rem;font-weight:600}@media(max-width:768px){.form-grid-2col[data-v-9d307736]{grid-template-columns:1fr}}.table-card-header[data-v-e3ac0284]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0;background:#f8fafc}.table-card-title-box[data-v-e3ac0284]{display:flex;align-items:flex-start;gap:.65rem}.table-card-title[data-v-e3ac0284]{font-size:.95rem;font-weight:700;color:#0f172a;margin:0 0 .15rem}.table-card-subtitle[data-v-e3ac0284]{font-size:.775rem;color:#64748b;margin:0}.count-pill-badge[data-v-e3ac0284]{font-size:.75rem;font-weight:700;background:#f1f5f9;color:#475569;padding:.2rem .65rem;border-radius:9999px;border:1px solid #cbd5e1}.table-row.is-dragging[data-v-e3ac0284]{opacity:.4;background:#e0f2fe}.table-row.is-disabled-row[data-v-e3ac0284]{opacity:.65;background:#fcfcfd}.drag-handle-grip[data-v-e3ac0284]{cursor:grab;color:#94a3b8;display:inline-flex;align-items:center;justify-content:center;padding:.35rem;border-radius:6px;transition:all .15s ease}.drag-handle-grip[data-v-e3ac0284]:hover{color:#0284c7;background:#f0f9ff}.order-badge[data-v-e3ac0284]{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;background:#f1f5f9;font-size:.75rem;font-weight:700;color:#475569}.menu-cell-info[data-v-e3ac0284]{display:flex;align-items:center;gap:.75rem}.menu-icon-box[data-v-e3ac0284]{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.active-icon[data-v-e3ac0284]{background:#f0f9ff;color:#0284c7;border:1px solid #bae6fd}.inactive-icon[data-v-e3ac0284]{background:#f1f5f9;color:#94a3b8;border:1px solid #e2e8f0}.menu-cell-text[data-v-e3ac0284]{display:flex;flex-direction:column;gap:.1rem}.menu-name-text[data-v-e3ac0284]{font-weight:700;color:#0f172a;font-size:.875rem}.menu-desc-text[data-v-e3ac0284]{font-size:.725rem;color:#64748b}.category-tag[data-v-e3ac0284]{display:inline-flex;align-items:center;font-size:.75rem;font-weight:600;color:#0369a1;background:#f0f9ff;border:1px solid #bae6fd;padding:.2rem .6rem;border-radius:6px}.route-code-badge[data-v-e3ac0284]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.75rem;background:#f1f5f9;padding:.2rem .5rem;border-radius:6px;border:1px solid #e2e8f0;color:#0284c7}.switch-toggle[data-v-e3ac0284]{position:relative;display:inline-block;width:44px;height:24px;cursor:pointer}.switch-toggle input[data-v-e3ac0284]{opacity:0;width:0;height:0}.slider-round[data-v-e3ac0284]{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#cbd5e1;border-radius:24px;transition:all .25s ease}.slider-round[data-v-e3ac0284]:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;border-radius:50%;transition:all .25s ease;box-shadow:0 1px 3px #00000026}.switch-toggle input:checked+.slider-round[data-v-e3ac0284]{background-color:#0284c7}.switch-toggle input:checked+.slider-round[data-v-e3ac0284]:before{transform:translate(20px)}.arrow-btn-group[data-v-e3ac0284]{display:inline-flex;align-items:center;gap:.25rem}.btn-arrow[data-v-e3ac0284]{width:28px;height:28px;border-radius:6px;border:1px solid #e2e8f0;background:#fff;color:#475569;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.btn-arrow[data-v-e3ac0284]:hover:not(:disabled){background:#f0f9ff;border-color:#0284c7;color:#0284c7}.btn-arrow[data-v-e3ac0284]:disabled{opacity:.35;cursor:not-allowed}.empty-table-cell[data-v-e3ac0284]{padding:3rem 1.5rem!important}.empty-table-cell h4[data-v-e3ac0284]{font-size:.95rem;font-weight:700;color:#475569;margin:.5rem 0 .2rem}.empty-table-cell p[data-v-e3ac0284]{font-size:.775rem;color:#94a3b8;margin:0}.modal-tabbed[data-v-526dbdfd]{display:flex;flex-direction:column}.modal-tabs-bar[data-v-526dbdfd]{display:flex;background:#f8fafc;border-bottom:1px solid var(--border-color, #e2e8f0);padding:0 1.25rem;gap:.5rem;overflow-x:auto}.modal-tab-item[data-v-526dbdfd]{display:inline-flex;align-items:center;gap:.45rem;padding:.85rem 1rem;font-size:.84rem;font-weight:600;color:var(--text-secondary);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap;transition:all .2s ease}.modal-tab-item[data-v-526dbdfd]:hover{color:var(--text-primary);background:#00000005}.modal-tab-item.active[data-v-526dbdfd]{color:#0284c7;border-bottom-color:#0284c7;background:#fff}.tab-done-dot[data-v-526dbdfd]{width:6px;height:6px;border-radius:50%;background:#10b981}.modal-form-wrapper[data-v-526dbdfd]{display:flex;flex-direction:column;flex:1;overflow:hidden}.modal-tab-viewport[data-v-526dbdfd]{padding:1.5rem 1.75rem;overflow-y:auto;flex:1;max-height:calc(88vh - 200px);min-height:280px}.tab-pane-content[data-v-526dbdfd]{animation:fadeIn-526dbdfd .2s ease}@keyframes fadeIn-526dbdfd{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.status-setting-card[data-v-526dbdfd]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.status-setting-header[data-v-526dbdfd]{display:flex;align-items:flex-start;gap:.75rem}.status-title[data-v-526dbdfd]{font-size:.95rem;font-weight:700;color:var(--text-primary);margin:0}.status-desc[data-v-526dbdfd]{font-size:.82rem;color:var(--text-secondary);margin:.25rem 0 0}.toggle-switch-card[data-v-526dbdfd]{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.75rem 1rem;background:#fff;border:1px solid #e2e8f0;border-radius:10px;width:fit-content}.toggle-switch-card input[data-v-526dbdfd]{display:none}.toggle-switch-card .slider[data-v-526dbdfd]{width:36px;height:20px;background:#cbd5e1;border-radius:20px;position:relative;transition:.3s}.toggle-switch-card .slider[data-v-526dbdfd]:before{content:"";position:absolute;width:16px;height:16px;left:2px;bottom:2px;background:#fff;border-radius:50%;transition:.3s}.toggle-switch-card input:checked+.slider[data-v-526dbdfd]{background:#10b981}.toggle-switch-card input:checked+.slider[data-v-526dbdfd]:before{transform:translate(16px)}.toggle-card-label[data-v-526dbdfd]{font-size:.85rem;font-weight:600;color:var(--text-primary)}.type-pill[data-v-526dbdfd]{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:600;padding:.25rem .6rem;background:#0ea5e914;color:#0284c7;border-radius:20px;border:1px solid rgba(14,165,233,.2)}.strategic-alignment-cell[data-v-526dbdfd]{display:flex;flex-direction:column;gap:.25rem}.strat-item[data-v-526dbdfd],.mission-item[data-v-526dbdfd]{display:flex;align-items:center;gap:.35rem;font-size:.78rem}.strat-item[data-v-526dbdfd]{color:#059669}.mission-item[data-v-526dbdfd]{color:#2563eb}.strat-text[data-v-526dbdfd],.mission-text[data-v-526dbdfd]{display:inline-block;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-count-badge[data-v-526dbdfd]{display:inline-flex;align-items:center;gap:.35rem;font-size:.82rem;font-weight:700;padding:.25rem .65rem;background:#f59e0b1a;color:#d97706;border:1px solid rgba(245,158,11,.25);border-radius:20px;text-decoration:none;transition:all .2s ease}.activity-count-badge[data-v-526dbdfd]:hover{background:#d97706;color:#fff;transform:translateY(-1px)}.view-detail-grid[data-v-526dbdfd]{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.detail-section-card[data-v-526dbdfd]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:1.15rem}.detail-section-card.full-span[data-v-526dbdfd]{grid-column:1 / -1}.detail-card-title[data-v-526dbdfd]{display:flex;align-items:center;gap:.45rem;font-size:.88rem;font-weight:700;color:var(--text-primary);margin:0 0 .85rem}.detail-kv-list[data-v-526dbdfd]{display:flex;flex-direction:column;gap:.5rem}.detail-kv-item[data-v-526dbdfd]{display:flex;align-items:baseline;justify-content:space-between;font-size:.82rem;gap:1rem}.kv-label[data-v-526dbdfd]{color:var(--text-secondary);white-space:nowrap}.kv-value[data-v-526dbdfd]{color:var(--text-primary);text-align:right}.detail-text-block[data-v-526dbdfd]{font-size:.85rem;color:var(--text-primary);line-height:1.6;margin:0;white-space:pre-line}.form-grid[data-v-526dbdfd]{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.form-group.full-width[data-v-526dbdfd]{grid-column:1 / -1}.form-label[data-v-526dbdfd]{display:flex;align-items:center;gap:.35rem;font-size:.82rem;font-weight:600;color:var(--text-primary);margin-bottom:.35rem}.form-input[data-v-526dbdfd]{width:100%;padding:.65rem .85rem;border:1px solid var(--border-color, #e2e8f0);border-radius:10px;font-size:.88rem;outline:none;transition:all .2s ease}.form-input[data-v-526dbdfd]:focus{border-color:#0284c7;box-shadow:0 0 0 3px #0284c71f}.textarea-input[data-v-526dbdfd]{resize:vertical;line-height:1.5}.btn-close-modal[data-v-526dbdfd]{background:transparent;border:none;cursor:pointer;padding:.4rem;border-radius:8px;color:var(--text-secondary);transition:all .2s ease}.btn-close-modal[data-v-526dbdfd]:hover{background:#f1f5f9;color:var(--text-primary)}.locked-year-banner[data-v-526dbdfd]{display:flex;align-items:center;gap:.75rem;padding:.85rem 1.25rem;background:#ef444414;border:1px solid rgba(239,68,68,.25);border-radius:12px;color:#b91c1c;margin-bottom:1.25rem}.locked-text[data-v-526dbdfd]{display:flex;flex-direction:column;font-size:.82rem}.locked-affiliation-card[data-v-526dbdfd]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.aff-card-header[data-v-526dbdfd]{display:flex;align-items:flex-start;gap:.65rem;padding-bottom:.75rem;border-bottom:1px solid #e2e8f0}.aff-card-title[data-v-526dbdfd]{font-size:.92rem;font-weight:700;color:var(--text-primary);margin:0}.aff-card-subtitle[data-v-526dbdfd]{font-size:.78rem;color:var(--text-secondary);margin:.15rem 0 0}.aff-card-body[data-v-526dbdfd]{display:flex;flex-direction:column;gap:.65rem}.aff-kv-item[data-v-526dbdfd]{display:flex;align-items:center;justify-content:space-between;font-size:.84rem;gap:1rem;padding:.5rem .75rem;background:#fff;border-radius:8px;border:1px solid #f1f5f9}.aff-kv-item.highlight-box[data-v-526dbdfd]{background:#0ea5e90f;border-color:#0ea5e940}.aff-kv-label[data-v-526dbdfd]{display:flex;align-items:center;gap:.4rem;color:var(--text-secondary);font-weight:500}.aff-kv-val[data-v-526dbdfd]{color:var(--text-primary);font-weight:600}.badge-locked-pill[data-v-526dbdfd]{display:inline-flex;align-items:center;font-size:.72rem;font-weight:700;padding:.15rem .5rem;background:#10b9811a;color:#059669;border:1px solid rgba(16,185,129,.25);border-radius:12px}.locked-parent-badge[data-v-526dbdfd]{display:flex;align-items:center;gap:.85rem;padding:.85rem 1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px}.locked-parent-icon[data-v-526dbdfd]{width:36px;height:36px;border-radius:10px;background:#0ea5e91a;color:#0284c7;display:flex;align-items:center;justify-content:center}.locked-parent-info[data-v-526dbdfd]{display:flex;flex-direction:column;gap:.15rem;flex:1}.parent-label[data-v-526dbdfd]{font-size:.75rem;color:var(--text-secondary)}.parent-name[data-v-526dbdfd]{font-size:.88rem;font-weight:700;color:var(--text-primary)}.field-hint[data-v-526dbdfd]{font-size:.75rem;color:var(--text-secondary);margin-top:.35rem;display:block}.activities-view-header[data-v-526dbdfd]{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.btn-manage-act-link[data-v-526dbdfd]{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:6px;background:#3b82f614;color:#2563eb;font-size:.78rem;font-weight:600;text-decoration:none;transition:all .15s}.btn-manage-act-link[data-v-526dbdfd]:hover{background:#3b82f62e}.empty-acts-box[data-v-526dbdfd]{padding:1.5rem;text-align:center;background:var(--bg-hover, rgba(0, 0, 0, .02));border:1px dashed var(--border-color, rgba(0, 0, 0, .1));border-radius:8px;color:var(--text-muted);font-size:.85rem}.project-acts-grid[data-v-526dbdfd]{display:flex;flex-direction:column;gap:.65rem}.project-act-card[data-v-526dbdfd]{padding:.75rem .9rem;border:1px solid var(--border-color, rgba(0, 0, 0, .08));border-radius:8px;background:var(--bg-card, #ffffff)}.act-card-header[data-v-526dbdfd]{display:flex;align-items:center;justify-content:space-between;margin-bottom:.3rem}.act-order-pill[data-v-526dbdfd]{font-size:.75rem;font-weight:700;color:#0284c7}.act-card-title[data-v-526dbdfd]{font-size:.9rem;font-weight:700;color:var(--text-primary);margin-bottom:.2rem}.act-card-target[data-v-526dbdfd]{font-size:.8rem;color:var(--text-secondary);margin-bottom:.2rem}.act-card-desc[data-v-526dbdfd]{font-size:.8rem;color:var(--text-muted);line-height:1.35}.budget-modal-container[data-v-8ef0c515]{display:flex;flex-direction:column;gap:1rem}.activity-identity-banner[data-v-8ef0c515]{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-left:4px solid #0284c7;border-radius:10px;padding:.85rem 1.15rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.activity-identity-main[data-v-8ef0c515]{display:flex;flex-direction:column;gap:.35rem;min-width:0}.activity-badge-row[data-v-8ef0c515]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.activity-tag[data-v-8ef0c515]{display:inline-flex;align-items:center;gap:.3rem;background:#0284c7;color:#fff;font-size:.725rem;font-weight:700;padding:.15rem .55rem;border-radius:9999px}.target-tag[data-v-8ef0c515]{display:inline-flex;align-items:center;background:#fff;color:#475569;font-size:.725rem;font-weight:600;padding:.15rem .55rem;border-radius:9999px;border:1px solid #cbd5e1}.activity-banner-title[data-v-8ef0c515]{font-size:1.15rem;font-weight:800;color:#0f172a;margin:0;line-height:1.35}.activity-banner-project[data-v-8ef0c515]{display:flex;align-items:center;gap:.4rem;font-size:.825rem;color:#64748b;margin:0}.dot-sep[data-v-8ef0c515]{color:#cbd5e1}.section-label[data-v-8ef0c515]{color:#475569;font-weight:600}.budget-summary-strip[data-v-8ef0c515]{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem}.summary-box[data-v-8ef0c515]{padding:.85rem 1rem;border-radius:10px;background:#fff;border:1px solid #e2e8f0;display:flex;flex-direction:column;gap:.35rem}.summary-box.box-budget[data-v-8ef0c515]{background:linear-gradient(135deg,#f0f9ff,#fff);border-color:#bae6fd}.summary-box.box-revenue[data-v-8ef0c515]{background:linear-gradient(135deg,#ecfdf5,#fff);border-color:#a7f3d0}.summary-box.box-combined[data-v-8ef0c515]{background:linear-gradient(135deg,#faf5ff,#fff);border-color:#e9d5ff}.summary-box-amount[data-v-8ef0c515]{font-size:1.35rem;font-weight:800;color:var(--text-primary);display:flex;align-items:baseline;gap:.35rem}.summary-box-amount .unit[data-v-8ef0c515]{font-size:.825rem;font-weight:500;color:#64748b}.round-bar[data-v-8ef0c515]{display:flex;align-items:center;justify-content:space-between;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.5rem .85rem}.round-bar-left[data-v-8ef0c515]{display:flex;align-items:center;gap:.75rem}.round-bar-label[data-v-8ef0c515]{font-size:.825rem;font-weight:600;color:#475569;display:flex;align-items:center;gap:.35rem}.round-tabs[data-v-8ef0c515]{display:flex;gap:.4rem}.round-tab-btn[data-v-8ef0c515]{padding:.3rem .65rem;font-size:.775rem;font-weight:600;border-radius:6px;border:1px solid #cbd5e1;background:#fff;color:#475569;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;transition:all .15s ease}.round-tab-btn[data-v-8ef0c515]:hover{background:#f1f5f9;border-color:#94a3b8}.round-tab-btn.active[data-v-8ef0c515]{background:#0284c7;color:#fff;border-color:#0284c7;box-shadow:0 1px 3px #0284c74d}.round-lock-icon[data-v-8ef0c515]{opacity:.7}.locked-indicator[data-v-8ef0c515]{font-size:.775rem;font-weight:600;color:#b91c1c;display:flex;align-items:center;gap:.35rem;background:#fef2f2;padding:.25rem .55rem;border-radius:4px;border:1px solid #fecaca}.smart-helper-toolbar[data-v-8ef0c515]{display:flex;align-items:center;justify-content:space-between;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:.5rem .85rem;flex-wrap:wrap;gap:.5rem}.helper-group[data-v-8ef0c515]{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.helper-label[data-v-8ef0c515]{font-size:.8rem;font-weight:700;color:#166534;display:flex;align-items:center;gap:.35rem}.helper-input-action[data-v-8ef0c515]{display:flex;align-items:center;gap:.4rem}.helper-select[data-v-8ef0c515]{padding:.3rem .5rem;font-size:.775rem;border-radius:6px;border:1px solid #86efac;background:#fff;font-weight:600}.helper-input[data-v-8ef0c515]{width:130px;padding:.3rem .5rem;font-size:.8rem;border-radius:6px;border:1px solid #86efac;background:#fff;text-align:right}.btn-helper[data-v-8ef0c515]{padding:.3rem .65rem;font-size:.775rem;font-weight:600;border-radius:6px;border:1px solid #16a34a;background:#16a34a;color:#fff;cursor:pointer;transition:all .15s ease}.btn-helper[data-v-8ef0c515]:hover{background:#15803d}.btn-helper-clear[data-v-8ef0c515]{background:#fff;border-color:#cbd5e1;color:#64748b;display:inline-flex;align-items:center;gap:.35rem}.btn-helper-clear[data-v-8ef0c515]:hover{background:#fee2e2;border-color:#fca5a5;color:#dc2626}.matrix-wrapper[data-v-8ef0c515]{margin-top:.25rem}.cell-fund-label[data-v-8ef0c515]{min-width:140px}.round-pill[data-v-8ef0c515]{font-size:.72rem;font-weight:700;padding:.2rem .55rem;border-radius:20px}.round-estimate[data-v-8ef0c515]{background:#fef3c7;color:#b45309;border:1px solid #fde68a}.round-allocated[data-v-8ef0c515]{background:#dcfce7;color:#15803d;border:1px solid #bbf7d0}.round-midyear[data-v-8ef0c515]{background:#e0e7ff;color:#4338ca;border:1px solid #c7d2fe}.quarterly-summary-grid[data-v-8ef0c515]{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-top:.5rem}.q-summary-card[data-v-8ef0c515]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:.75rem .85rem;display:flex;flex-direction:column;gap:.35rem;transition:all .2s ease}.q-summary-card[data-v-8ef0c515]:hover{background:#fff;border-color:#cbd5e1;box-shadow:var(--shadow-sm)}.q-card-head[data-v-8ef0c515]{display:flex;align-items:center;justify-content:space-between}.q-months[data-v-8ef0c515]{font-size:.725rem;color:#64748b;font-weight:500}.q-card-amount[data-v-8ef0c515]{font-size:1.05rem;font-weight:800;color:#0f172a}.q-card-amount .unit[data-v-8ef0c515]{font-size:.75rem;font-weight:600;color:#64748b}.q-card-breakdown[data-v-8ef0c515]{display:flex;flex-direction:column;gap:.15rem;font-size:.72rem;color:#64748b;padding-top:.35rem;border-top:1px dashed #e2e8f0}.breakdown-item[data-v-8ef0c515]{display:flex;align-items:center;gap:.35rem}.dot-budget[data-v-8ef0c515]{width:6px;height:6px;border-radius:50%;background:#0284c7;display:inline-block}.dot-revenue[data-v-8ef0c515]{width:6px;height:6px;border-radius:50%;background:#059669;display:inline-block}.activities-summary-cell[data-v-1cb45efc]{display:flex;flex-direction:column;gap:.4rem}.summary-chip[data-v-1cb45efc]{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .6rem;border-radius:9999px;font-size:.8rem;font-weight:600;background:#10b9811a;color:#059669;border:1px solid rgba(16,185,129,.25);width:fit-content}.summary-chip.chip-empty[data-v-1cb45efc]{background:#9ca3af1a;color:var(--text-muted);border-color:#9ca3af33}.summary-chip.chip-clickable[data-v-1cb45efc]{cursor:pointer;border:1px dashed rgba(59,130,246,.4);background:#3b82f60d;color:#2563eb;transition:all .15s}.summary-chip.chip-clickable[data-v-1cb45efc]:hover{background:#3b82f626;border-color:#2563eb}.activity-tags-preview[data-v-1cb45efc]{display:flex;flex-wrap:wrap;gap:.3rem}.act-tag-chip[data-v-1cb45efc]{font-size:.775rem;padding:.15rem .45rem;background:var(--bg-hover, rgba(0, 0, 0, .04));border:1px solid var(--border-color, rgba(0, 0, 0, .08));border-radius:4px;color:var(--text-secondary);max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.act-tag-more[data-v-1cb45efc]{font-size:.75rem;color:var(--text-muted);font-weight:600;align-self:center}.project-info-banner[data-v-1cb45efc]{display:flex;align-items:flex-start;gap:.85rem;padding:.85rem 1rem;background:#3b82f60f;border:1px solid rgba(59,130,246,.2);border-radius:10px;margin-bottom:1.25rem}.banner-icon[data-v-1cb45efc]{color:var(--primary);margin-top:.2rem}.banner-content[data-v-1cb45efc]{display:flex;flex-direction:column;gap:.4rem;flex:1}.banner-label[data-v-1cb45efc]{font-size:.775rem;font-weight:700;color:var(--text-secondary);margin-bottom:.25rem;display:block}.banner-select[data-v-1cb45efc]{font-weight:700;color:var(--text-primary);background:#fff;border-color:#3b82f64d}.banner-title-row[data-v-1cb45efc]{display:flex;align-items:center;gap:.5rem;width:100%}.banner-code-badge[data-v-1cb45efc]{font-size:.75rem;font-weight:700;padding:.15rem .45rem;background:var(--primary);color:#fff;border-radius:4px}.banner-title[data-v-1cb45efc]{font-size:.95rem;font-weight:700;color:var(--text-primary)}.banner-meta-row[data-v-1cb45efc]{display:flex;flex-wrap:wrap;gap:1rem;font-size:.825rem;color:var(--text-secondary)}.missions-editor-container[data-v-1cb45efc]{display:flex;flex-direction:column;gap:1rem}.editor-section-header[data-v-1cb45efc]{display:flex;align-items:center;justify-content:space-between}.editor-title-box[data-v-1cb45efc]{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:.95rem;color:var(--text-primary)}.repeater-empty-card[data-v-1cb45efc]{text-align:center;padding:2.5rem 1rem;background:var(--bg-hover, rgba(0,0,0,.02));border:1px dashed var(--border-color, rgba(0,0,0,.15));border-radius:10px}.repeater-items-list[data-v-1cb45efc]{display:flex;flex-direction:column;gap:1rem}.repeater-item-card[data-v-1cb45efc]{border:1px solid var(--border-color, rgba(0,0,0,.1));border-radius:10px;background:var(--bg-card, #ffffff);overflow:hidden;box-shadow:0 1px 3px #00000008}.item-card-header[data-v-1cb45efc]{display:flex;align-items:center;justify-content:space-between;padding:.65rem 1rem;background:#00000005;border-bottom:1px solid var(--border-color, rgba(0,0,0,.06))}.item-card-num .num-circle[data-v-1cb45efc]{font-size:.825rem;font-weight:700;color:var(--primary)}.item-card-actions[data-v-1cb45efc]{display:flex;align-items:center;gap:.75rem}.toggle-status-label[data-v-1cb45efc]{display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;font-size:.8rem;color:var(--text-secondary)}.btn-delete-row[data-v-1cb45efc]{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;background:#ef444414;color:#dc2626;border:none;cursor:pointer;transition:all .15s}.btn-delete-row[data-v-1cb45efc]:hover{background:#ef44442e;color:#b91c1c}.item-card-body[data-v-1cb45efc]{padding:1rem}.bottom-add-bar[data-v-1cb45efc]{text-align:center;padding-top:.5rem}.btn-outline-add[data-v-1cb45efc]{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1.25rem;border-radius:8px;border:1px dashed var(--primary);color:var(--primary);background:#3b82f60a;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .15s}.btn-outline-add[data-v-1cb45efc]:hover{background:#3b82f61a}.view-section-card[data-v-1cb45efc]{display:flex;flex-direction:column;gap:1rem}.view-section-title[data-v-1cb45efc]{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:.95rem;color:var(--text-primary)}.view-empty-box[data-v-1cb45efc]{padding:2rem;text-align:center;background:var(--bg-hover, rgba(0,0,0,.02));border:1px dashed var(--border-color, rgba(0,0,0,.1));border-radius:8px;color:var(--text-muted);font-size:.9rem}.view-missions-list[data-v-1cb45efc]{display:flex;flex-direction:column;gap:.75rem}.view-mission-item[data-v-1cb45efc]{padding:.85rem 1rem;border:1px solid var(--border-color, rgba(0,0,0,.08));border-radius:8px;background:var(--bg-card, #ffffff)}.view-mission-header[data-v-1cb45efc]{display:flex;align-items:center;justify-content:space-between;margin-bottom:.35rem}.view-num-badge[data-v-1cb45efc]{font-size:.775rem;font-weight:700;color:var(--primary)}.view-mission-name[data-v-1cb45efc]{font-size:.925rem;font-weight:700;color:var(--text-primary);margin-bottom:.25rem}.view-mission-target[data-v-1cb45efc]{font-size:.825rem;color:var(--text-secondary);margin-bottom:.25rem}.view-mission-desc[data-v-1cb45efc]{font-size:.825rem;color:var(--text-muted);line-height:1.4}.view-act-footer-actions[data-v-1cb45efc]{margin-top:.65rem;padding-top:.5rem;border-top:1px dashed #e2e8f0;display:flex;justify-content:flex-end}.btn-act-budget[data-v-1cb45efc]{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .75rem;font-size:.8rem;font-weight:600;border-radius:6px;background:#f0f9ff;color:#0284c7;border:1px solid #bae6fd;cursor:pointer;transition:all .15s ease}.btn-act-budget[data-v-1cb45efc]:hover{background:#0284c7;color:#fff;border-color:#0284c7;box-shadow:0 2px 6px #0284c740}.btn-repeater-budget[data-v-1cb45efc]{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.775rem;font-weight:600;border-radius:6px;background:#f0f9ff;color:#0284c7;border:1px solid #bae6fd;cursor:pointer;transition:all .15s ease}.btn-repeater-budget[data-v-1cb45efc]:hover{background:#0284c7;color:#fff;border-color:#0284c7}.order-badge[data-v-931c102a]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;background:#f1f5f9;font-size:.75rem;font-weight:700;color:#64748b}.dept-cell[data-v-931c102a]{display:flex;align-items:center;gap:.75rem}.dept-icon-badge[data-v-931c102a]{width:36px;height:36px;border-radius:8px;background:#f0f9ff;color:#0284c7;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dept-info-text[data-v-931c102a]{display:flex;flex-direction:column;gap:.2rem}.dept-name-row[data-v-931c102a]{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.dept-name-title[data-v-931c102a]{font-weight:700;color:#0f172a}.type-badge[data-v-931c102a]{font-size:.6875rem;padding:.15rem .45rem;border-radius:4px;background:#f1f5f9;color:#475569;font-weight:600}.code-pill[data-v-931c102a]{font-size:.6875rem;color:#64748b;font-family:monospace}.ministry-text[data-v-931c102a]{font-size:.8125rem;color:#475569}.year-badge[data-v-931c102a]{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .5rem;border-radius:6px;background:#f0fdf4;border:1px solid #bbf7d0;color:#15803d;font-size:.75rem;font-weight:700}.missions-summary-cell[data-v-931c102a]{display:flex;flex-direction:column;gap:.35rem}.summary-chip[data-v-931c102a]{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .6rem;border-radius:6px;background:#eff6ff;color:#1d4ed8;font-size:.75rem;font-weight:700;width:fit-content}.summary-chip.chip-empty[data-v-931c102a]{background:#f1f5f9;color:#94a3b8}.mission-tags-box[data-v-931c102a]{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.mission-preview-tag[data-v-931c102a]{display:inline-flex;align-items:center;gap:.2rem;font-size:.75rem;padding:.15rem .45rem;border-radius:4px;background:#f8fafc;border:1px solid #e2e8f0;color:#334155;max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.more-count-tag[data-v-931c102a]{font-size:.75rem;font-weight:700;color:#0284c7}.state-badge[data-v-931c102a]{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .55rem;border-radius:9999px;font-size:.75rem;font-weight:600}.state-badge.state-active[data-v-931c102a]{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.state-badge.state-inactive[data-v-931c102a]{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.actions-cell[data-v-931c102a]{display:flex;align-items:center;justify-content:flex-end;gap:.4rem}.btn-action-icon[data-v-931c102a]{width:32px;height:32px;border-radius:6px;border:1px solid transparent;display:flex;align-items:center;justify-content:center;background:#f8fafc;color:#64748b;cursor:pointer;transition:all .15s ease}.btn-action-icon.view[data-v-931c102a]:hover{background:#eff6ff;color:#0284c7;border-color:#bfdbfe}.btn-action-icon.edit[data-v-931c102a]:hover{background:#fefce8;color:#ca8a04;border-color:#fef08a}.btn-action-icon.delete[data-v-931c102a]:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.btn-action-icon.disabled-lock[data-v-931c102a]{opacity:.4;cursor:not-allowed}.empty-cell[data-v-931c102a]{padding:4rem 1rem;text-align:center}.empty-state[data-v-931c102a]{display:flex;flex-direction:column;align-items:center;gap:.75rem;color:#94a3b8}.empty-icon[data-v-931c102a]{color:#cbd5e1}.modal-overlay[data-v-931c102a]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;display:flex;align-items:center;justify-content:center;padding:1.5rem}.modal-card[data-v-931c102a]{background:#fff;border-radius:16px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;overflow:hidden}.modal-xl[data-v-931c102a]{max-width:960px}.modal-header[data-v-931c102a]{padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;background:#fff}.modal-title-box[data-v-931c102a]{display:flex;align-items:center;gap:.875rem}.modal-icon[data-v-931c102a]{width:42px;height:42px;border-radius:10px;background:#f0fdf4;color:#16a34a;display:flex;align-items:center;justify-content:center}.modal-title-row[data-v-931c102a]{display:flex;align-items:center;gap:.65rem}.modal-title-row h3[data-v-931c102a]{font-size:1.15rem;font-weight:700;margin:0;color:#0f172a}.modal-subtitle[data-v-931c102a]{font-size:.8125rem;color:#64748b;margin:0}.header-year-pill[data-v-931c102a]{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:9999px;background:#f0f9ff;border:1px solid #bae6fd;color:#0369a1;font-size:.8125rem;font-weight:700}.btn-close-modal[data-v-931c102a]{background:none;border:none;color:#94a3b8;cursor:pointer;padding:.25rem}.btn-close-modal[data-v-931c102a]:hover{color:#0f172a}.modal-form-wrapper[data-v-931c102a]{display:flex;flex-direction:column;flex:1;min-height:0}.modal-body[data-v-931c102a]{padding:1.5rem;overflow-y:auto;flex:1}.form-grid-header[data-v-931c102a]{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.25rem}.form-group[data-v-931c102a]{display:flex;flex-direction:column;gap:.35rem}.form-group.full-width[data-v-931c102a]{grid-column:1 / -1}.form-label[data-v-931c102a]{font-size:.8125rem;font-weight:600;color:#334155;display:flex;align-items:center;gap:.35rem}.form-input[data-v-931c102a]{width:100%;padding:.55rem .875rem;border-radius:8px;border:1px solid #cbd5e1;background:#fff;font-size:.875rem;outline:none}.form-input[data-v-931c102a]:focus{border-color:#0284c7;box-shadow:0 0 0 2px #0284c726}.input-bold[data-v-931c102a]{font-weight:600}.textarea-input[data-v-931c102a]{resize:vertical}.missions-editor-container[data-v-931c102a]{display:flex;flex-direction:column;gap:1rem}.editor-section-header[data-v-931c102a]{display:flex;align-items:center;justify-content:space-between;gap:1rem}.editor-title-box[data-v-931c102a]{display:flex;align-items:center;gap:.45rem;font-size:.875rem;font-weight:700;color:#0f172a}.editor-header-actions[data-v-931c102a]{display:flex;align-items:center;gap:.5rem}.btn-clone-btn[data-v-931c102a]{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .875rem;font-size:.8125rem;font-weight:600;background:#f0f9ff;color:#0284c7;border:1px solid #bae6fd;border-radius:.5rem;cursor:pointer;transition:all .15s ease}.btn-clone-btn[data-v-931c102a]:hover{background:#e0f2fe}.btn-add-row[data-v-931c102a]{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .875rem;font-size:.8125rem;font-weight:600;background:#0284c7;color:#fff;border-radius:.5rem;cursor:pointer}.repeater-items-list[data-v-931c102a]{display:flex;flex-direction:column;gap:1rem}.repeater-item-card[data-v-931c102a]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem}.item-card-header[data-v-931c102a]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding-bottom:.65rem;border-bottom:1px dashed #cbd5e1}.num-circle[data-v-931c102a]{font-size:.8125rem;font-weight:700;color:#16a34a;background:#dcfce7;padding:.25rem .65rem;border-radius:9999px}.item-card-actions[data-v-931c102a]{display:flex;align-items:center;gap:.75rem}.toggle-status-label[data-v-931c102a]{display:flex;align-items:center;gap:.35rem;font-size:.75rem;cursor:pointer}.btn-delete-row[data-v-931c102a]{width:28px;height:28px;border-radius:6px;border:1px solid #fecaca;background:#fef2f2;color:#dc2626;display:flex;align-items:center;justify-content:center;cursor:pointer}.bottom-add-bar[data-v-931c102a]{margin-top:.5rem}.btn-outline-add[data-v-931c102a]{width:100%;padding:.75rem;border:2px dashed #cbd5e1;border-radius:8px;background:#fff;color:#0284c7;font-weight:600;font-size:.875rem;display:flex;align-items:center;justify-content:center;gap:.45rem;cursor:pointer}.btn-outline-add[data-v-931c102a]:hover{border-color:#0284c7;background:#f0f9ff}.view-missions-list[data-v-931c102a]{display:flex;flex-direction:column;gap:.75rem}.view-mission-item[data-v-931c102a]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:1rem 1.25rem}.view-mission-header[data-v-931c102a]{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.view-num-badge[data-v-931c102a]{font-size:.75rem;font-weight:700;color:#16a34a;background:#dcfce7;padding:.2rem .5rem;border-radius:4px}.view-mission-name[data-v-931c102a]{font-size:.9375rem;font-weight:700;color:#0f172a;margin:0 0 .25rem}.view-mission-desc[data-v-931c102a]{font-size:.8125rem;color:#64748b;margin:0}.modal-footer[data-v-931c102a]{padding:1rem 1.5rem;border-top:1px solid #e2e8f0;display:flex;align-items:center;justify-content:flex-end;gap:.75rem;background:#fff}.btn-lg-save[data-v-931c102a]{padding:.625rem 1.5rem}.text-center[data-v-931c102a]{text-align:center}.text-right[data-v-931c102a]{text-align:right}.text-muted[data-v-931c102a]{color:#94a3b8}@media(max-width:768px){.page-header[data-v-931c102a]{flex-direction:column;align-items:stretch}.form-grid-header[data-v-931c102a]{grid-template-columns:1fr}}.order-badge[data-v-a978b86b]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;background:#f1f5f9;font-size:.75rem;font-weight:700;color:#64748b}.dept-cell[data-v-a978b86b]{display:flex;align-items:center;gap:.75rem}.dept-icon-badge[data-v-a978b86b]{width:36px;height:36px;border-radius:8px;background:#f0f9ff;color:#0284c7;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dept-info-text[data-v-a978b86b]{display:flex;flex-direction:column;gap:.2rem}.dept-name-row[data-v-a978b86b]{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.dept-name-title[data-v-a978b86b]{font-weight:700;color:#0f172a}.type-badge[data-v-a978b86b]{font-size:.6875rem;padding:.15rem .45rem;border-radius:4px;background:#f1f5f9;color:#475569;font-weight:600}.code-pill[data-v-a978b86b]{font-size:.6875rem;color:#64748b;font-family:monospace}.ministry-text[data-v-a978b86b]{font-size:.8125rem;color:#475569}.year-badge[data-v-a978b86b]{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .5rem;border-radius:6px;background:#f0fdf4;border:1px solid #bbf7d0;color:#15803d;font-size:.75rem;font-weight:700}.missions-summary-cell[data-v-a978b86b]{display:flex;flex-direction:column;gap:.35rem}.summary-chip[data-v-a978b86b]{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .6rem;border-radius:6px;background:#eff6ff;color:#1d4ed8;font-size:.75rem;font-weight:700;width:fit-content}.summary-chip.chip-empty[data-v-a978b86b]{background:#f1f5f9;color:#94a3b8}.mission-tags-box[data-v-a978b86b]{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.mission-preview-tag[data-v-a978b86b]{display:inline-flex;align-items:center;gap:.2rem;font-size:.75rem;padding:.15rem .45rem;border-radius:4px;background:#f8fafc;border:1px solid #e2e8f0;color:#334155;max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.more-count-tag[data-v-a978b86b]{font-size:.75rem;font-weight:700;color:#0284c7}.state-badge[data-v-a978b86b]{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .55rem;border-radius:9999px;font-size:.75rem;font-weight:600}.state-badge.state-active[data-v-a978b86b]{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.state-badge.state-inactive[data-v-a978b86b]{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.actions-cell[data-v-a978b86b]{display:flex;align-items:center;justify-content:flex-end;gap:.4rem}.btn-action-icon[data-v-a978b86b]{width:32px;height:32px;border-radius:6px;border:1px solid transparent;display:flex;align-items:center;justify-content:center;background:#f8fafc;color:#64748b;cursor:pointer;transition:all .15s ease}.btn-action-icon.view[data-v-a978b86b]:hover{background:#eff6ff;color:#0284c7;border-color:#bfdbfe}.btn-action-icon.edit[data-v-a978b86b]:hover{background:#fefce8;color:#ca8a04;border-color:#fef08a}.btn-action-icon.delete[data-v-a978b86b]:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.btn-action-icon.disabled-lock[data-v-a978b86b]{opacity:.4;cursor:not-allowed}.empty-cell[data-v-a978b86b]{padding:4rem 1rem;text-align:center}.empty-state[data-v-a978b86b]{display:flex;flex-direction:column;align-items:center;gap:.75rem;color:#94a3b8}.empty-icon[data-v-a978b86b]{color:#cbd5e1}.modal-overlay[data-v-a978b86b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;display:flex;align-items:center;justify-content:center;padding:1.5rem}.modal-card[data-v-a978b86b]{background:#fff;border-radius:16px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;overflow:hidden}.modal-xl[data-v-a978b86b]{max-width:960px}.modal-header[data-v-a978b86b]{padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;background:#fff}.modal-title-box[data-v-a978b86b]{display:flex;align-items:center;gap:.875rem}.modal-icon[data-v-a978b86b]{width:42px;height:42px;border-radius:10px;background:#f0fdf4;color:#16a34a;display:flex;align-items:center;justify-content:center}.modal-title-row[data-v-a978b86b]{display:flex;align-items:center;gap:.65rem}.modal-title-row h3[data-v-a978b86b]{font-size:1.15rem;font-weight:700;margin:0;color:#0f172a}.modal-subtitle[data-v-a978b86b]{font-size:.8125rem;color:#64748b;margin:0}.header-year-pill[data-v-a978b86b]{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:9999px;background:#f0f9ff;border:1px solid #bae6fd;color:#0369a1;font-size:.8125rem;font-weight:700}.btn-close-modal[data-v-a978b86b]{background:none;border:none;color:#94a3b8;cursor:pointer;padding:.25rem}.btn-close-modal[data-v-a978b86b]:hover{color:#0f172a}.modal-form-wrapper[data-v-a978b86b]{display:flex;flex-direction:column;flex:1;min-height:0}.modal-body[data-v-a978b86b]{padding:1.5rem;overflow-y:auto;flex:1}.form-grid-header[data-v-a978b86b]{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.25rem}.form-group[data-v-a978b86b]{display:flex;flex-direction:column;gap:.35rem}.form-group.full-width[data-v-a978b86b]{grid-column:1 / -1}.form-label[data-v-a978b86b]{font-size:.8125rem;font-weight:600;color:#334155;display:flex;align-items:center;gap:.35rem}.form-input[data-v-a978b86b]{width:100%;padding:.55rem .875rem;border-radius:8px;border:1px solid #cbd5e1;background:#fff;font-size:.875rem;outline:none}.form-input[data-v-a978b86b]:focus{border-color:#0284c7;box-shadow:0 0 0 2px #0284c726}.input-bold[data-v-a978b86b]{font-weight:600}.textarea-input[data-v-a978b86b]{resize:vertical}.missions-editor-container[data-v-a978b86b]{display:flex;flex-direction:column;gap:1rem}.editor-section-header[data-v-a978b86b]{display:flex;align-items:center;justify-content:space-between;gap:1rem}.editor-title-box[data-v-a978b86b]{display:flex;align-items:center;gap:.45rem;font-size:.875rem;font-weight:700;color:#0f172a}.editor-header-actions[data-v-a978b86b]{display:flex;align-items:center;gap:.5rem}.btn-clone-btn[data-v-a978b86b]{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .875rem;font-size:.8125rem;font-weight:600;background:#f0f9ff;color:#0284c7;border:1px solid #bae6fd;border-radius:.5rem;cursor:pointer;transition:all .15s ease}.btn-clone-btn[data-v-a978b86b]:hover{background:#e0f2fe}.btn-add-row[data-v-a978b86b]{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .875rem;font-size:.8125rem;font-weight:600;background:#0284c7;color:#fff;border-radius:.5rem;cursor:pointer}.repeater-items-list[data-v-a978b86b]{display:flex;flex-direction:column;gap:1rem}.repeater-item-card[data-v-a978b86b]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem}.item-card-header[data-v-a978b86b]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding-bottom:.65rem;border-bottom:1px dashed #cbd5e1}.num-circle[data-v-a978b86b]{font-size:.8125rem;font-weight:700;color:#16a34a;background:#dcfce7;padding:.25rem .65rem;border-radius:9999px}.item-card-actions[data-v-a978b86b]{display:flex;align-items:center;gap:.75rem}.toggle-status-label[data-v-a978b86b]{display:flex;align-items:center;gap:.35rem;font-size:.75rem;cursor:pointer}.btn-delete-row[data-v-a978b86b]{width:28px;height:28px;border-radius:6px;border:1px solid #fecaca;background:#fef2f2;color:#dc2626;display:flex;align-items:center;justify-content:center;cursor:pointer}.bottom-add-bar[data-v-a978b86b]{margin-top:.5rem}.btn-outline-add[data-v-a978b86b]{width:100%;padding:.75rem;border:2px dashed #cbd5e1;border-radius:8px;background:#fff;color:#0284c7;font-weight:600;font-size:.875rem;display:flex;align-items:center;justify-content:center;gap:.45rem;cursor:pointer}.btn-outline-add[data-v-a978b86b]:hover{border-color:#0284c7;background:#f0f9ff}.view-missions-list[data-v-a978b86b]{display:flex;flex-direction:column;gap:.75rem}.view-mission-item[data-v-a978b86b]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:1rem 1.25rem}.view-mission-header[data-v-a978b86b]{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.view-num-badge[data-v-a978b86b]{font-size:.75rem;font-weight:700;color:#16a34a;background:#dcfce7;padding:.2rem .5rem;border-radius:4px}.view-mission-name[data-v-a978b86b]{font-size:.9375rem;font-weight:700;color:#0f172a;margin:0 0 .25rem}.view-mission-desc[data-v-a978b86b]{font-size:.8125rem;color:#64748b;margin:0}.modal-footer[data-v-a978b86b]{padding:1rem 1.5rem;border-top:1px solid #e2e8f0;display:flex;align-items:center;justify-content:flex-end;gap:.75rem;background:#fff}.btn-lg-save[data-v-a978b86b]{padding:.625rem 1.5rem}.text-center[data-v-a978b86b]{text-align:center}.text-right[data-v-a978b86b]{text-align:right}.text-muted[data-v-a978b86b]{color:#94a3b8}@media(max-width:768px){.page-header[data-v-a978b86b]{flex-direction:column;align-items:stretch}.form-grid-header[data-v-a978b86b]{grid-template-columns:1fr}}.order-badge[data-v-879f9590]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;background:#f1f5f9;font-size:.75rem;font-weight:700;color:#64748b}.dept-cell[data-v-879f9590]{display:flex;align-items:center;gap:.75rem}.dept-icon-badge[data-v-879f9590]{width:36px;height:36px;border-radius:8px;background:#f0f9ff;color:#0284c7;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dept-info-text[data-v-879f9590]{display:flex;flex-direction:column;gap:.2rem}.dept-name-row[data-v-879f9590]{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.dept-name-title[data-v-879f9590]{font-weight:700;color:#0f172a}.type-badge[data-v-879f9590]{font-size:.6875rem;padding:.15rem .45rem;border-radius:4px;background:#f1f5f9;color:#475569;font-weight:600}.code-pill[data-v-879f9590]{font-size:.6875rem;color:#64748b;font-family:monospace}.ministry-text[data-v-879f9590]{font-size:.8125rem;color:#475569}.year-badge[data-v-879f9590]{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .5rem;border-radius:6px;background:#f0fdf4;border:1px solid #bbf7d0;color:#15803d;font-size:.75rem;font-weight:700}.missions-summary-cell[data-v-879f9590]{display:flex;flex-direction:column;gap:.35rem}.summary-chip[data-v-879f9590]{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .6rem;border-radius:6px;background:#eff6ff;color:#1d4ed8;font-size:.75rem;font-weight:700;width:fit-content}.summary-chip.chip-empty[data-v-879f9590]{background:#f1f5f9;color:#94a3b8}.mission-tags-box[data-v-879f9590]{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.mission-preview-tag[data-v-879f9590]{display:inline-flex;align-items:center;gap:.2rem;font-size:.75rem;padding:.15rem .45rem;border-radius:4px;background:#f8fafc;border:1px solid #e2e8f0;color:#334155;max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.more-count-tag[data-v-879f9590]{font-size:.75rem;font-weight:700;color:#0284c7}.state-badge[data-v-879f9590]{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .55rem;border-radius:9999px;font-size:.75rem;font-weight:600}.state-badge.state-active[data-v-879f9590]{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.state-badge.state-inactive[data-v-879f9590]{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.actions-cell[data-v-879f9590]{display:flex;align-items:center;justify-content:flex-end;gap:.4rem}.btn-action-icon[data-v-879f9590]{width:32px;height:32px;border-radius:6px;border:1px solid transparent;display:flex;align-items:center;justify-content:center;background:#f8fafc;color:#64748b;cursor:pointer;transition:all .15s ease}.btn-action-icon.view[data-v-879f9590]:hover{background:#eff6ff;color:#0284c7;border-color:#bfdbfe}.btn-action-icon.edit[data-v-879f9590]:hover{background:#fefce8;color:#ca8a04;border-color:#fef08a}.btn-action-icon.delete[data-v-879f9590]:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.btn-action-icon.disabled-lock[data-v-879f9590]{opacity:.4;cursor:not-allowed}.empty-cell[data-v-879f9590]{padding:4rem 1rem;text-align:center}.empty-state[data-v-879f9590]{display:flex;flex-direction:column;align-items:center;gap:.75rem;color:#94a3b8}.empty-icon[data-v-879f9590]{color:#cbd5e1}.modal-overlay[data-v-879f9590]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;display:flex;align-items:center;justify-content:center;padding:1.5rem}.modal-card[data-v-879f9590]{background:#fff;border-radius:16px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;overflow:hidden}.modal-xl[data-v-879f9590]{max-width:960px}.modal-header[data-v-879f9590]{padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;background:#fff}.modal-title-box[data-v-879f9590]{display:flex;align-items:center;gap:.875rem}.modal-icon[data-v-879f9590]{width:42px;height:42px;border-radius:10px;background:#f0fdf4;color:#16a34a;display:flex;align-items:center;justify-content:center}.modal-title-row[data-v-879f9590]{display:flex;align-items:center;gap:.65rem}.modal-title-row h3[data-v-879f9590]{font-size:1.15rem;font-weight:700;margin:0;color:#0f172a}.modal-subtitle[data-v-879f9590]{font-size:.8125rem;color:#64748b;margin:0}.header-year-pill[data-v-879f9590]{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:9999px;background:#f0f9ff;border:1px solid #bae6fd;color:#0369a1;font-size:.8125rem;font-weight:700}.btn-close-modal[data-v-879f9590]{background:none;border:none;color:#94a3b8;cursor:pointer;padding:.25rem}.btn-close-modal[data-v-879f9590]:hover{color:#0f172a}.modal-form-wrapper[data-v-879f9590]{display:flex;flex-direction:column;flex:1;min-height:0}.modal-body[data-v-879f9590]{padding:1.5rem;overflow-y:auto;flex:1}.form-grid-header[data-v-879f9590]{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.25rem}.form-group[data-v-879f9590]{display:flex;flex-direction:column;gap:.35rem}.form-group.full-width[data-v-879f9590]{grid-column:1 / -1}.form-label[data-v-879f9590]{font-size:.8125rem;font-weight:600;color:#334155;display:flex;align-items:center;gap:.35rem}.form-input[data-v-879f9590]{width:100%;padding:.55rem .875rem;border-radius:8px;border:1px solid #cbd5e1;background:#fff;font-size:.875rem;outline:none}.form-input[data-v-879f9590]:focus{border-color:#0284c7;box-shadow:0 0 0 2px #0284c726}.input-bold[data-v-879f9590]{font-weight:600}.textarea-input[data-v-879f9590]{resize:vertical}.missions-editor-container[data-v-879f9590]{display:flex;flex-direction:column;gap:1rem}.editor-section-header[data-v-879f9590]{display:flex;align-items:center;justify-content:space-between;gap:1rem}.editor-title-box[data-v-879f9590]{display:flex;align-items:center;gap:.45rem;font-size:.875rem;font-weight:700;color:#0f172a}.editor-header-actions[data-v-879f9590]{display:flex;align-items:center;gap:.5rem}.btn-clone-btn[data-v-879f9590]{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .875rem;font-size:.8125rem;font-weight:600;background:#f0f9ff;color:#0284c7;border:1px solid #bae6fd;border-radius:.5rem;cursor:pointer;transition:all .15s ease}.btn-clone-btn[data-v-879f9590]:hover{background:#e0f2fe}.btn-add-row[data-v-879f9590]{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .875rem;font-size:.8125rem;font-weight:600;background:#0284c7;color:#fff;border-radius:.5rem;cursor:pointer}.repeater-items-list[data-v-879f9590]{display:flex;flex-direction:column;gap:1rem}.repeater-item-card[data-v-879f9590]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem}.item-card-header[data-v-879f9590]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding-bottom:.65rem;border-bottom:1px dashed #cbd5e1}.num-circle[data-v-879f9590]{font-size:.8125rem;font-weight:700;color:#16a34a;background:#dcfce7;padding:.25rem .65rem;border-radius:9999px}.item-card-actions[data-v-879f9590]{display:flex;align-items:center;gap:.75rem}.toggle-status-label[data-v-879f9590]{display:flex;align-items:center;gap:.35rem;font-size:.75rem;cursor:pointer}.btn-delete-row[data-v-879f9590]{width:28px;height:28px;border-radius:6px;border:1px solid #fecaca;background:#fef2f2;color:#dc2626;display:flex;align-items:center;justify-content:center;cursor:pointer}.bottom-add-bar[data-v-879f9590]{margin-top:.5rem}.btn-outline-add[data-v-879f9590]{width:100%;padding:.75rem;border:2px dashed #cbd5e1;border-radius:8px;background:#fff;color:#0284c7;font-weight:600;font-size:.875rem;display:flex;align-items:center;justify-content:center;gap:.45rem;cursor:pointer}.btn-outline-add[data-v-879f9590]:hover{border-color:#0284c7;background:#f0f9ff}.view-missions-list[data-v-879f9590]{display:flex;flex-direction:column;gap:.75rem}.view-mission-item[data-v-879f9590]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:1rem 1.25rem}.view-mission-header[data-v-879f9590]{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.view-num-badge[data-v-879f9590]{font-size:.75rem;font-weight:700;color:#16a34a;background:#dcfce7;padding:.2rem .5rem;border-radius:4px}.view-mission-name[data-v-879f9590]{font-size:.9375rem;font-weight:700;color:#0f172a;margin:0 0 .25rem}.view-mission-desc[data-v-879f9590]{font-size:.8125rem;color:#64748b;margin:0}.modal-footer[data-v-879f9590]{padding:1rem 1.5rem;border-top:1px solid #e2e8f0;display:flex;align-items:center;justify-content:flex-end;gap:.75rem;background:#fff}.btn-lg-save[data-v-879f9590]{padding:.625rem 1.5rem}.text-center[data-v-879f9590]{text-align:center}.text-right[data-v-879f9590]{text-align:right}.text-muted[data-v-879f9590]{color:#94a3b8}@media(max-width:768px){.page-header[data-v-879f9590]{flex-direction:column;align-items:stretch}.form-grid-header[data-v-879f9590]{grid-template-columns:1fr}}:root{--font-sans: "Sarabun", "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--bg-primary: #f8fafc;--bg-secondary: #f1f5f9;--bg-surface: #ffffff;--bg-frosted: rgba(255, 255, 255, .85);--bg-card: rgba(255, 255, 255, .92);--border-color: #e2e8f0;--border-color-light: #f1f5f9;--border-color-hover: #cbd5e1;--border-focus: #0284c7;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--text-inverse: #ffffff;--primary: #0284c7;--primary-hover: #0369a1;--primary-light: #f0f9ff;--primary-border: #bae6fd;--primary-gradient: linear-gradient(135deg, #0284c7 0%, #0369a1 100%);--color-success: #059669;--color-success-bg: #ecfdf5;--color-success-border: #a7f3d0;--color-danger: #e11d48;--color-danger-bg: #fff1f2;--color-danger-border: #fecdd3;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .04);--shadow-sm: 0 1px 3px rgba(15, 23, 42, .06), 0 1px 2px rgba(15, 23, 42, .03);--shadow-md: 0 4px 8px -2px rgba(15, 23, 42, .05), 0 2px 4px -2px rgba(15, 23, 42, .03);--shadow-lg: 0 12px 24px -4px rgba(15, 23, 42, .06), 0 4px 8px -4px rgba(15, 23, 42, .03);--shadow-xl: 0 20px 32px -8px rgba(15, 23, 42, .07);--glass-blur: blur(14px)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}.ambient-glow{position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:0;overflow:hidden}.ambient-glow:before{content:"";position:absolute;top:-10%;left:50%;transform:translate(-50%);width:800px;height:500px;background:radial-gradient(circle,#0284c70f,#f1f5f900 70%);filter:blur(60px)}.page-container{padding:0 2.25rem 4rem;max-width:1440px;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem;width:100%}.page-header{position:sticky;top:52px;z-index:20;background:#f8fafceb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding-top:1.25rem;padding-bottom:1.15rem;margin-bottom:.5rem;border-bottom:1px solid rgba(226,232,240,.85);display:flex;align-items:center;justify-content:space-between;gap:1.5rem;transition:all .2s ease}.header-main{display:flex;flex-direction:column;gap:.35rem;flex:1;min-width:0}.page-breadcrumb{display:flex;align-items:center;gap:.4rem;font-size:.825rem;color:var(--text-muted)}.breadcrumb-link{display:inline-flex;align-items:center;gap:.35rem;color:var(--text-secondary);text-decoration:none;transition:color .2s}.breadcrumb-link:hover{color:var(--primary)}.breadcrumb-sep{color:var(--text-muted);font-size:.75rem}.breadcrumb-current{color:var(--text-primary);font-weight:700}.page-title{font-size:1.85rem;font-weight:800;color:var(--text-primary);line-height:1.2;letter-spacing:-.02em}.page-subtitle{font-size:.95rem;color:var(--text-secondary)}.header-actions{display:flex;align-items:center;gap:.65rem;flex-shrink:0}.header-select-wrapper{position:relative;display:inline-flex;align-items:center;flex-shrink:0;max-width:220px}.header-select-wrapper .select-icon,.header-select-wrapper .header-select-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--primary, #0284c7);pointer-events:none;display:flex;align-items:center;justify-content:center;z-index:1}.header-select{height:40px;width:100%;max-width:220px;min-width:130px;padding:0 1.85rem 0 2.25rem;font-size:.8375rem;font-weight:600;color:var(--text-primary, #0f172a);background-color:#fff;border:1px solid #cbd5e1;border-radius:var(--radius-md, 10px);outline:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;box-shadow:0 1px 2px #0000000a;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='13' viewBox='0 0 24 24' fill='none' stroke='%230284c7' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .65rem center;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;transition:all .2s ease}.header-select:hover{border-color:var(--primary, #0284c7);background-color:#f8fafc}.header-select:focus{border-color:var(--primary, #0284c7);box-shadow:0 0 0 3px #0284c726;background-color:#fff}.header-select option{font-size:.875rem;color:var(--text-primary, #0f172a);padding:.5rem}.page-body{display:flex;flex-direction:column;gap:1.5rem;width:100%}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:.5rem}.stat-card{display:flex;align-items:center;gap:1rem;padding:1.125rem 1.25rem;border-radius:12px;background:#fff;border:1px solid var(--border-color, #e2e8f0);box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .04));transition:all .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md, 0 4px 8px -2px rgba(15, 23, 42, .05));border-color:var(--border-color-hover, #cbd5e1)}.stat-card.active-card{border-color:var(--primary);background:linear-gradient(135deg,#ffffff,var(--primary-light));box-shadow:0 4px 12px #0284c71f}.stat-icon-wrapper{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.icon-blue{background:#eff6ff;color:#0284c7}.icon-emerald{background:#ecfdf5;color:#059669}.icon-purple{background:#faf5ff;color:#9333ea}.icon-amber{background:#fffbeb;color:#d97706}.icon-sky{background:#f0fdf4;color:#16a34a}.stat-content{display:flex;flex-direction:column;gap:.15rem}.stat-label{font-size:.75rem;font-weight:600;color:#64748b}.stat-value{font-size:1.35rem;font-weight:800;color:#0f172a;line-height:1.2}.stat-unit{font-size:.8125rem;color:#94a3b8;font-weight:500}.stat-desc{font-size:.75rem;color:#94a3b8}.filter-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.875rem 1.25rem;background:#fff;border:1px solid var(--border-color, #e2e8f0);border-radius:12px;margin-bottom:.75rem;box-shadow:var(--shadow-xs, 0 1px 2px 0 rgba(0, 0, 0, .03));flex-wrap:wrap}.search-box{position:relative;flex:1;min-width:280px;display:flex;align-items:center}.search-icon{position:absolute;left:.85rem;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.search-input{width:100%;height:38px;padding:0 1rem 0 2.5rem;border-radius:8px;border:1px solid #e2e8f0;background:#f8fafc;font-size:.875rem;color:#1e293b;outline:none;font-family:inherit;transition:all .15s ease}.search-input::placeholder{color:#94a3b8;font-size:.85rem}.search-input:focus{background:#fff;border-color:#0284c7;box-shadow:0 0 0 3px #0284c71f}.filter-controls{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.select-wrapper{position:relative;display:inline-flex;align-items:center}.select-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#64748b;pointer-events:none}.filter-select{height:38px;padding:0 2rem 0 2.2rem;border-radius:8px;border:1px solid #e2e8f0;background:#fff;font-size:.825rem;font-weight:500;color:#334155;outline:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .65rem center;transition:all .15s ease}.filter-select:hover{border-color:#cbd5e1}.filter-select:focus{border-color:#0284c7;box-shadow:0 0 0 3px #0284c71f}.btn-clear-filter{display:inline-flex;align-items:center;gap:.35rem;height:38px;padding:0 .85rem;font-size:.8125rem;font-weight:600;color:#ef4444;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.btn-clear-filter:hover{background:#fee2e2;border-color:#fca5a5}.locked-year-banner{display:flex;align-items:center;gap:.875rem;padding:.875rem 1.25rem;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;color:#991b1b;margin-bottom:.5rem}.locked-year-banner .lock-icon{color:#dc2626;flex-shrink:0}.locked-text{display:flex;flex-direction:column;gap:.15rem;font-size:.8125rem}.locked-text strong{font-weight:700}.table-container{background:#fff;border:1px solid var(--border-color, #e2e8f0);border-radius:12px;overflow-x:auto;box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .04))}.data-table{width:100%;border-collapse:collapse;font-size:.875rem;text-align:left}.data-table th{background:#f8fafc;padding:.875rem 1rem;font-weight:700;color:#475569;border-bottom:1px solid #e2e8f0;font-size:.8125rem}.data-table td{padding:1rem;border-bottom:1px solid #f1f5f9;vertical-align:middle}.table-row-clickable{cursor:pointer;transition:background-color .15s ease}.table-row-clickable:hover{background-color:#f8fafc}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-sans);font-size:.9rem;font-weight:600;padding:.65rem 1.25rem;border-radius:10px;border:1px solid transparent;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);text-decoration:none;line-height:1.4;white-space:nowrap}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important;box-shadow:none!important}.btn-sm{padding:.4rem .85rem;font-size:.825rem;border-radius:8px;gap:.35rem}.btn-lg{padding:.85rem 1.75rem;font-size:1rem;border-radius:12px;gap:.6rem}.btn-block{width:100%}.btn-primary{background:var(--primary-gradient);color:#fff;border-color:transparent;box-shadow:0 2px 8px #0284c740}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#0369a1,#075985);box-shadow:0 4px 14px #0284c759;transform:translateY(-1px);color:#fff}.btn-secondary{background:#fff;color:var(--text-primary);border:1px solid var(--border-color);box-shadow:var(--shadow-xs)}.btn-secondary:hover:not(:disabled){background:#f8fafc;border-color:var(--border-color-hover);color:var(--primary);transform:translateY(-1px)}.btn-danger{background:#dc2626;color:#fff;border:1px solid #b91c1c;box-shadow:0 2px 8px #dc262633}.btn-danger:hover:not(:disabled){background:#b91c1c;box-shadow:0 4px 14px #dc262659;transform:translateY(-1px)}.btn-outline-danger{background:#fff;color:#dc2626;border:1px solid #fecaca}.btn-outline-danger:hover:not(:disabled){background:#fef2f2;border-color:#dc2626}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--primary-light);color:var(--primary)}.actions-cell{display:flex;align-items:center;justify-content:flex-end;gap:.45rem}.btn-action{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .7rem;border-radius:7px;font-size:.8rem;font-weight:600;cursor:pointer;border:1px solid var(--border-color);background:#fff;color:var(--text-secondary);transition:all .2s ease;text-decoration:none;font-family:var(--font-sans)}.btn-action:hover{transform:translateY(-1px)}.btn-action.edit:hover{background:var(--primary-light);border-color:var(--primary-border);color:var(--primary)}.btn-action.delete:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626}.btn-action.view:hover{background:#ecfdf5;border-color:#a7f3d0;color:#059669}.btn-action-icon{width:32px;height:32px;min-width:32px;padding:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-color);background:#fff;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;text-decoration:none}.btn-action-icon:hover{transform:translateY(-1px)}.btn-action-icon.edit:hover{background:var(--primary-light);border-color:var(--primary-border);color:var(--primary);box-shadow:0 2px 6px #0284c726}.btn-action-icon.delete:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626;box-shadow:0 2px 6px #dc262626}.btn-action-icon.view:hover{background:#ecfdf5;border-color:#a7f3d0;color:#059669;box-shadow:0 2px 6px #05966926}.btn-action-icon.key:hover,.btn-action-icon.password:hover{background:#fffbeb;border-color:#fde68a;color:#d97706;box-shadow:0 2px 6px #d9770626}.btn-icon{width:36px;height:36px;padding:0;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.btn-icon:hover{background:var(--primary-light);color:var(--primary);border-color:var(--primary-border)}.btn-icon-sm{width:30px;height:30px;border-radius:7px}.state-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.225rem .6rem;border-radius:7px;font-size:.785rem;font-weight:600;line-height:1.25;white-space:nowrap}.state-badge .state-icon{flex-shrink:0}.state-active{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.state-inactive{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.state-admin{background:#f0f9ff;color:#0284c7;border:1px solid #bae6fd}.state-manager{background:#fdf4ff;color:#c026d3;border:1px solid #f5d0fe}.state-staff{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.state-user{background:#f8fafc;color:#64748b;border:1px solid #e2e8f0}.code-tag{display:inline-flex;align-items:center;font-size:.725rem;font-weight:700;padding:.15rem .45rem;background:#f1f5f9;color:var(--text-primary, #1e293b);border:1px solid #e2e8f0;border-radius:6px;font-family:monospace;letter-spacing:.02em}.order-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;font-size:.8rem;font-weight:700;color:var(--text-muted, #64748b);border-radius:6px}.table-primary-cell,.project-title-cell{display:flex;flex-direction:column;gap:.2rem}.table-title-main,.project-name-text{font-size:.925rem;font-weight:600;color:var(--text-primary, #0f172a);line-height:1.4}.table-desc-sub,.project-desc-preview{font-size:.8rem;color:var(--text-secondary, #64748b);line-height:1.35;margin:0;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.table-org-cell,.org-resp-cell{display:flex;flex-direction:column;gap:.15rem}.table-org-main,.sec-name-title{font-size:.875rem;font-weight:600;color:var(--text-primary, #0f172a)}.table-org-sub,.div-name-sub{font-size:.775rem;color:var(--text-secondary, #64748b)}[data-tooltip]{position:relative}[data-tooltip]:before{content:"";position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%) translateY(4px);border-width:5px;border-style:solid;border-color:#0f172a transparent transparent transparent;pointer-events:none;opacity:0;transition:all .2s cubic-bezier(.16,1,.3,1);z-index:999999}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%) translateY(4px);background:#0f172a;color:#fff;font-family:var(--font-sans);font-size:.725rem;font-weight:500;padding:.35rem .65rem;border-radius:6px;white-space:nowrap;pointer-events:none;opacity:0;transition:all .2s cubic-bezier(.16,1,.3,1);z-index:999999;box-shadow:0 4px 14px #0f172a33;line-height:1.2}[data-tooltip]:hover{z-index:99999}td:has([data-tooltip]:hover),th:has([data-tooltip]:hover),tr:has([data-tooltip]:hover){z-index:9999!important;position:relative}[data-tooltip]:hover:before,[data-tooltip]:hover:after{opacity:1;transform:translate(-50%) translateY(0)}[data-tooltip-pos=bottom]:before{top:calc(100% + 2px);bottom:auto;transform:translate(-50%) translateY(-4px);border-color:transparent transparent #0f172a transparent}[data-tooltip-pos=bottom]:after{top:calc(100% + 10px);bottom:auto;transform:translate(-50%) translateY(-4px)}[data-tooltip-pos=bottom]:hover:before,[data-tooltip-pos=bottom]:hover:after{transform:translate(-50%) translateY(0)}[data-tooltip-pos=left]:before{top:50%;bottom:auto;left:auto;right:calc(100% + 2px);transform:translateY(-50%) translate(4px);border-color:transparent transparent transparent #0f172a}[data-tooltip-pos=left]:after{top:50%;bottom:auto;left:auto;right:calc(100% + 8px);transform:translateY(-50%) translate(4px)}[data-tooltip-pos=left]:hover:before,[data-tooltip-pos=left]:hover:after{transform:translateY(-50%) translate(0)}[data-tooltip-pos=right]:before{top:50%;bottom:auto;left:calc(100% + 2px);right:auto;transform:translateY(-50%) translate(-4px);border-color:transparent #0f172a transparent transparent}[data-tooltip-pos=right]:after{top:50%;bottom:auto;left:calc(100% + 8px);right:auto;transform:translateY(-50%) translate(-4px)}[data-tooltip-pos=right]:hover:before,[data-tooltip-pos=right]:hover:after{transform:translateY(-50%) translate(0)}[data-tooltip-pos=top-end]:before{left:auto;right:12px;transform:translate(0) translateY(4px)}[data-tooltip-pos=top-end]:after{left:auto;right:0;transform:translate(0) translateY(4px)}[data-tooltip-pos=top-end]:hover:before,[data-tooltip-pos=top-end]:hover:after{transform:translate(0) translateY(0)}[data-tooltip-pos=bottom-end]:before{top:calc(100% + 2px);bottom:auto;left:auto;right:14px;transform:translateY(-4px);border-color:transparent transparent #0f172a transparent}[data-tooltip-pos=bottom-end]:after{top:calc(100% + 10px);bottom:auto;left:auto;right:0;transform:translateY(-4px)}[data-tooltip-pos=bottom-end]:hover:before,[data-tooltip-pos=bottom-end]:hover:after{transform:translateY(0)}.inline-action-group{display:inline-flex;align-items:center;gap:.35rem}.btn-inline-action{background:transparent;border:1px solid transparent;color:var(--text-muted);cursor:pointer;padding:.25rem;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}.btn-inline-action:hover{background:var(--primary-light);border-color:var(--primary-border);color:var(--primary)}.form-group{margin-bottom:1.25rem;display:flex;flex-direction:column;gap:.45rem}.form-label{font-size:.9rem;font-weight:600;color:var(--text-secondary);display:flex;align-items:center;gap:.4rem}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:.85rem;color:var(--text-muted);pointer-events:none;display:flex;align-items:center}.form-input{width:100%;padding:.65rem .95rem;background:#fff;border:1px solid var(--border-color);border-radius:9px;color:var(--text-primary);font-family:var(--font-sans);font-size:.9rem;transition:all .2s ease;box-shadow:var(--shadow-xs)}.input-wrapper .form-input{padding-left:2.65rem}.form-input::placeholder{color:#94a3b8}.form-input:focus{outline:none;border-color:var(--border-focus);background:#fff;box-shadow:0 0 0 3px #0284c71f}.input-action-btn{position:absolute;right:.75rem;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.25rem;display:flex;align-items:center;transition:color .2s}.input-action-btn:hover{color:var(--text-primary)}.frosted-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);padding:2.25rem 2rem;box-shadow:var(--shadow-lg);transition:all .25s ease}.frosted-card:hover{border-color:var(--border-color-hover)}.alert{padding:.85rem 1rem;border-radius:10px;font-size:.9rem;display:flex;align-items:center;gap:.6rem;margin-bottom:1.25rem}.alert-danger{background:var(--color-danger-bg);border:1px solid var(--color-danger-border);color:var(--color-danger)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a8c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:100;padding:1.25rem}.modal-card{background:#fff;width:100%;max-width:680px;max-height:min(88vh,780px);border-radius:20px;display:flex;flex-direction:column;box-shadow:var(--shadow-xl),0 25px 50px -12px #0f172a40;border:1px solid var(--border-color);overflow:hidden;animation:modalEnter .25s cubic-bezier(.16,1,.3,1)}.modal-card.modal-sm{width:90vw;max-width:440px}.modal-card.modal-md{width:90vw;max-width:620px}.modal-card.modal-lg{width:92vw;max-width:760px}.modal-card.modal-xl{width:94vw;max-width:1040px}.modal-card.modal-2xl{width:95vw;max-width:95vw;max-height:min(92vh,880px)}.modal-card.modal-full{width:98vw;max-width:98vw;height:94vh;max-height:94vh}.modal-card.modal-tabbed{height:80vh;max-height:80vh}.modal-card.modal-tabbed .modal-form-wrapper{display:flex;flex-direction:column;flex:1;min-height:0}.modal-card.modal-tabbed .modal-tab-viewport{flex:1;min-height:0;overflow-y:auto}.modal-header{flex-shrink:0;padding:1.25rem 1.75rem;background:#fff;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;gap:1rem}.modal-title-box{display:flex;align-items:center;gap:.85rem}.modal-icon{width:42px;height:42px;border-radius:12px;background:var(--primary-light);color:var(--primary);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 6px #0e749026}.modal-title-box h3{font-size:1.2rem;font-weight:800;color:var(--text-primary);line-height:1.25;margin-bottom:.15rem}.modal-subtitle{font-size:.825rem;color:var(--text-secondary);line-height:1.3}.btn-close-modal{background:transparent;border:1px solid transparent;color:var(--text-muted);cursor:pointer;padding:.4rem;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.btn-close-modal:hover{background:#f1f5f9;border-color:var(--border-color);color:var(--text-primary)}.modal-body{flex:1 1 auto;overflow-y:auto;padding:1.5rem 1.75rem;overscroll-behavior:contain}.modal-body::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-track{background:#f8fafc}.modal-body::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:9999px}.modal-body::-webkit-scrollbar-thumb:hover{background:#94a3b8}.modal-footer{flex-shrink:0;padding:1.1rem 1.75rem;background:#f8fafc;border-top:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;gap:.75rem}.modal-footer-left{display:flex;align-items:center;gap:.5rem}.modal-footer-right{display:flex;align-items:center;gap:.75rem;margin-left:auto}.code-pill{display:inline-flex;align-items:center;font-size:.75rem;font-weight:700;padding:.2rem .55rem;background:#f1f5f9;color:var(--text-primary);border:1px solid #cbd5e1;border-radius:6px;font-family:monospace}.year-badge{display:inline-flex;align-items:center;font-size:.75rem;font-weight:600;padding:.2rem .6rem;background:#0ea5e91a;color:#0284c7;border:1px solid rgba(14,165,233,.25);border-radius:20px}@keyframes modalEnter{0%{opacity:0;transform:scale(.95) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.alert-success{background:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success)}.fund-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;font-weight:600;padding:.25rem .65rem;border-radius:6px;white-space:nowrap}.fund-budget{background:#f0f9ff;color:#0369a1;border:1px solid #bae6fd}.fund-revenue{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.fund-total{background:#faf5ff;color:#6b21a8;border:1px solid #e9d5ff}.quarter-pill{display:inline-flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;padding:.15rem .5rem;border-radius:20px;background:#f1f5f9;color:#475569;border:1px solid #cbd5e1}.quarter-pill.q1{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.quarter-pill.q2{background:#f0fdf4;color:#15803d;border-color:#bbf7d0}.quarter-pill.q3{background:#fefce8;color:#a16207;border-color:#fef08a}.quarter-pill.q4{background:#fff1f2;color:#be123c;border-color:#fecdd3}.matrix-container{width:100%;overflow-x:auto;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:var(--shadow-sm)}.matrix-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.825rem}.matrix-table th,.matrix-table td{padding:.55rem .45rem;border-bottom:1px solid #f1f5f9;border-right:1px solid #f1f5f9;text-align:right;vertical-align:middle}.matrix-table th:first-child,.matrix-table td:first-child{text-align:left;position:sticky;left:0;z-index:10;background:inherit;border-right:2px solid #cbd5e1}.matrix-table thead th{background:#f8fafc;color:#475569;font-weight:600;font-size:.775rem;text-align:center;border-bottom:2px solid #cbd5e1}.matrix-table thead tr.q-header-row th{background:#f1f5f9;font-weight:700;border-bottom:1px solid #e2e8f0}.matrix-table th.col-q-total,.matrix-table td.col-q-total{background:#f8fafc;font-weight:700;color:#0f172a;border-right:2px solid #e2e8f0}.matrix-table th.col-grand-total,.matrix-table td.col-grand-total{background:#f1f5f9;font-weight:800;color:#0284c7;font-size:.875rem;border-left:2px solid #cbd5e1}.matrix-table tbody tr.row-budget{background:#fff}.matrix-table tbody tr.row-revenue{background:#fafafa}.matrix-table tbody tr.row-combined{background:#f8fafc;font-weight:700;border-top:2px solid #cbd5e1}.matrix-table tbody tr.row-combined td{border-top:2px solid #cbd5e1;border-bottom:none}.matrix-input{width:100%;min-width:65px;padding:.35rem .4rem;font-size:.825rem;font-weight:500;text-align:right;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:var(--text-primary);transition:all .15s ease;font-family:inherit}.matrix-input:focus{outline:none;border-color:#0284c7;box-shadow:0 0 0 2px #0284c726;background:#f0f9ff}.matrix-input:disabled,.matrix-input.locked{background:#f1f5f9;color:#94a3b8;border-color:#e2e8f0;cursor:not-allowed}.matrix-input::-webkit-outer-spin-button,.matrix-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}@media print{@page{size:297mm 210mm;margin:0!important}*,*:before,*:after{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important}.top-nav-bar,.app-sidebar,.sidebar,.mobile-menu-btn,.mobile-backdrop,.mobile-close-btn,.ambient-glow,.print-hide,.btn-action-icon,.page-header,.filter-card,.quick-projects-strip,.preview-status-banner,.global-year-badge-group,.security-warning-chip{display:none!important;visibility:hidden!important;height:0!important;margin:0!important;padding:0!important;border:none!important;opacity:0!important}html,body{background:#fff!important;color:#000!important;font-size:11pt!important;font-family:Sarabun,TH Sarabun PSK,sans-serif!important;width:100%!important;margin:0!important;padding:0!important}.dashboard-layout,.layout-main-wrapper,.page-container,.page-body,.reports-view{padding:0!important;margin:0!important;background:transparent!important;box-shadow:none!important;width:100%!important;max-width:100%!important;min-height:auto!important}.report-paper-sheet{padding:10mm 12mm!important;margin:0!important;border:none!important;box-shadow:none!important;box-sizing:border-box!important}}
