:root{--bg:#f7f8fa;--panel:#ffffff;--border:#e3e6eb;--muted:#6b7280;--section-label:#9ca3af;--header:#1f2937;--hover:#f3f6fa;--brand:#1f5fa8;--brand-dark:#174a85;--brand-soft:#e8f1fb;--brand-soft-2:#dbe8f7}*{box-sizing:border-box}body,html{height:100%}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Arial,Helvetica,sans-serif;background:var(--bg);color:#111;font-size:14px;overflow:hidden}.app{width:100vw}.app,.sidebar{display:flex;height:100vh;height:100dvh}.sidebar{width:240px;background:#ffffff;border-right:1px solid var(--border);flex-direction:column;padding:14px 0 8px;overflow:hidden}.brand,.sidebar,.sidebar-actions{flex-shrink:0}.nav-scroll{flex:1 1 auto;overflow-y:auto;min-height:0}.app .main{flex:1 1;min-width:0;display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden}.brand{gap:10px;padding:0 12px 14px 16px;border-bottom:1px solid var(--border);margin-bottom:6px;cursor:pointer}.brand,.brand .logo-wrap{display:flex;align-items:center}.brand .logo-wrap{flex:1 1;min-width:0}.brand img{max-width:100%;height:auto;max-height:46px;display:block}.brand .brand-text{font-family:Lato,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;font-size:38px;font-weight:900;color:#085393;letter-spacing:-.025em;line-height:1;font-style:italic;-webkit-user-select:none;-moz-user-select:none;user-select:none}.app.sidebar-collapsed .brand .brand-text{display:none}.collapse-btn{flex-shrink:0;width:26px;height:26px;border:1px solid var(--border);background:#fff;color:#6b7280;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background .12s,color .12s,border-color .12s}.collapse-btn:hover{background:var(--brand-soft);color:var(--brand);border-color:var(--brand-soft-2)}.collapse-btn svg{width:22px;height:14px;stroke-width:2}.sec-label{font-size:16px;color:var(--section-label);font-weight:600;letter-spacing:.7px;text-transform:uppercase;padding:14px 18px 6px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sec-label:hover{color:var(--brand)}.sec-label .caret{font-size:27px;color:#cbd2dc;transition:transform .15s ease;margin-left:8px;line-height:.6}.sec-label:hover .caret{color:var(--brand)}.sec-label.collapsed .caret{transform:rotate(-90deg)}.sec-label.collapsed+.nav{display:none}.sidebar-actions{display:flex;justify-content:flex-end;padding:2px 14px}.sidebar-actions button{width:26px;height:26px;background:#fff;border:1px solid var(--border);color:#6b7280;padding:0;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .12s,color .12s,border-color .12s}.sidebar-actions button:hover{background:var(--brand-soft);color:var(--brand);border-color:var(--brand-soft-2)}.sidebar-actions button svg{width:18px;height:18px;display:block}.app.sidebar-collapsed .sidebar-actions{display:none}.nav{display:flex;flex-direction:column;gap:1px;padding:0 8px}.nav-empty{padding:6px 12px 10px;color:#9ca3af;font-size:12px;font-style:italic}.app.sidebar-collapsed .nav-empty{display:none}.nav a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;color:#1f2937;text-decoration:none;font-size:13.5px;font-weight:500;border:1px solid transparent;transition:background .12s,color .12s;cursor:pointer}.nav a:hover{background:var(--hover)}.nav a.active{background:var(--brand-soft);color:var(--brand-dark);border-color:var(--brand-soft-2);font-weight:600}.nav a .ico{width:18px;height:18px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;color:#6b7280}.nav a.active .ico{color:var(--brand)}.nav a .ico svg{width:16px;height:16px;stroke-width:1.8}.sidebar-footer{margin-top:auto;border-top:1px solid var(--border);padding:10px 14px;gap:10px;font-size:12px;color:var(--muted)}.avatar,.sidebar-footer{display:flex;align-items:center}.avatar{width:30px;height:30px;border-radius:50%;background:var(--brand);color:#fff;justify-content:center;font-weight:700;font-size:13px}.sidebar-footer .who{display:flex;flex-direction:column;line-height:1.2;flex:1 1;min-width:0}.sidebar-footer .who b{color:#111;font-size:13px}.sidebar-footer .who span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-footer .logout-btn{background:none;border:1px solid #dbe2eb;color:#6b7a8e;border-radius:5px;padding:5px 7px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-footer .logout-btn:hover{background:#c0392b;color:#fff;border-color:#c0392b}.sidebar-footer .logout-btn svg{width:14px;height:14px;stroke-width:2}.app.sidebar-collapsed .sidebar-footer .logout-btn{display:none}.topbar{display:flex;align-items:center;gap:14px;padding:14px 22px;background:#fff;border-bottom:1px solid var(--border);flex-shrink:0}.topbar .back{color:#6b7280;cursor:pointer;font-size:18px;text-decoration:none;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.topbar .back:hover{color:var(--brand)}.topbar h1{margin:0;font-size:17px;font-weight:700;color:#111}.topbar .sub{color:var(--muted);font-size:12px;margin-top:1px}.topbar .right{margin-left:auto;gap:8px}.topbar .right,.zoom-ctl{display:flex;align-items:center}.zoom-ctl{gap:4px;border:1px solid var(--border);border-radius:6px;padding:2px;background:#fff}.zoom-ctl button{width:26px;height:26px;border:none;background:transparent;color:#374151;cursor:pointer;border-radius:4px;font-size:14px;font-weight:600}.zoom-ctl button:hover{background:var(--brand-soft);color:var(--brand)}.zoom-ctl .lbl{font-size:11px;color:var(--muted);min-width:38px;text-align:center}.tb-btn{font-size:12px;font-weight:600;border:1px solid var(--border);background:#fff;color:#374151;border-radius:6px;padding:6px 12px;cursor:pointer;line-height:1;white-space:nowrap}.tb-btn:hover{background:var(--brand-soft);color:var(--brand);border-color:var(--brand)}.app .content{flex:1 1;min-height:0;overflow:hidden;position:relative;background:var(--bg)}.home{height:100%;overflow-y:auto;padding:22px 26px}.breadcrumbs{font-size:12px;color:var(--muted);margin-bottom:14px}.breadcrumbs b{color:#111;font-weight:600}.panel{background:#fff;border:1px solid var(--border);border-radius:10px;padding:18px 20px}.panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.panel-header h2{margin:0;font-size:15px;color:var(--header)}.panel-header .meta{font-size:12px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:14px;gap:14px}.card{background:#fff;border:1px solid var(--border);border-radius:10px;padding:16px;text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:6px;transition:transform .12s,box-shadow .12s,border-color .12s;cursor:pointer}.card:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(31,95,168,.1);border-color:var(--brand-soft-2)}.card .card-ico{width:36px;height:36px;border-radius:8px;background:var(--brand-soft);color:var(--brand);display:flex;align-items:center;justify-content:center}.card .card-ico svg{width:18px;height:18px;stroke-width:1.8}.card h3{margin:6px 0 0;font-size:14.5px;font-weight:700;color:#111}.card .desc{font-size:12.5px;color:var(--muted);line-height:1.45}.card .open{margin-top:auto;padding-top:10px;font-size:12px;font-weight:600;color:var(--brand)}.frame-wrap{width:100%;height:100%;overflow:auto;background:#fff;position:relative}.frame-wrap iframe{border:0;display:block;width:100%;height:100%}.hidden{display:none!important}.app.sidebar-collapsed .sidebar{width:58px}.app.sidebar-collapsed .brand{padding:0 6px 12px;justify-content:center;gap:0}.app.sidebar-collapsed .brand .logo-wrap,.app.sidebar-collapsed .sec-label{display:none}.app.sidebar-collapsed .nav{padding:0 6px}.app.sidebar-collapsed .nav a{justify-content:center;padding:9px 0;font-size:0;gap:0}.app.sidebar-collapsed .nav a .ico{font-size:13.5px}.app.sidebar-collapsed .nav a .ico svg{width:18px;height:18px}.app.sidebar-collapsed .sidebar-footer{justify-content:center;padding:10px 6px}.app.sidebar-collapsed .sidebar-footer .who{display:none}.nav-row{position:relative}.nav-row>a{padding-right:34px}.fav-btn{position:absolute;width:26px;height:26px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .12s,background .12s,color .12s}.nav-row .fav-btn{right:4px;top:50%;margin-top:-13px}.fav-btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;transition:transform .12s}.fav-btn.on{color:var(--brand);opacity:1}.fav-btn.on svg{fill:currentColor}.card-wrap:focus-within .fav-btn,.card-wrap:hover .fav-btn,.nav-row:focus-within .fav-btn,.nav-row:hover .fav-btn{opacity:1}.fav-btn:hover{background:var(--brand-soft);color:var(--brand)}.fav-btn:hover svg{transform:scale(1.12)}.fav-btn:active svg{transform:scale(.88);transition-duration:.06s}.fav-btn:focus-visible{outline:2px solid var(--brand);outline-offset:1px;opacity:1}.card-wrap{position:relative;display:flex;transition:transform .12s}.card-wrap>.card{flex:1 1;min-width:0}.card-wrap>.card:hover{transform:none}.card-wrap:hover{transform:translateY(-2px)}.card-wrap:hover>.card{box-shadow:0 6px 18px rgba(31,95,168,.1);border-color:var(--brand-soft-2)}.card-wrap .fav-btn{top:19px;right:14px;width:30px;height:30px}.card-wrap .fav-btn svg{width:17px;height:17px}.fav-panel{margin-bottom:18px}.app.sidebar-collapsed .fav-btn{display:none}.app.sidebar-collapsed .nav-row>a{padding-right:0}.app.sidebar-collapsed .fav-group:not(.empty){border-bottom:1px solid var(--border);margin:0 6px 6px;padding-bottom:6px}.fav-toast{position:fixed;left:50%;bottom:20px;z-index:60;width:max-content;max-width:min(440px,calc(100vw - 32px));transform:translateX(-50%);background:var(--header);color:#fff;font-size:13px;line-height:1.4;padding:10px 14px;border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.18)}@media (hover:none){.fav-btn{opacity:1}.card-wrap:hover,.fav-btn:active svg,.fav-btn:hover svg{transform:none}}@media (prefers-reduced-motion:reduce){.card-wrap,.fav-btn svg{transition:none}.card-wrap:hover,.fav-btn:active svg,.fav-btn:hover svg{transform:none}}@media (max-width:780px){.sidebar{display:none}.topbar{padding:9px 14px;gap:10px}.topbar .sub{display:none}.topbar h1{font-size:15.5px}}.ump{height:100vh;overflow-y:auto;background:#eef2f7;font-family:Lato,Segoe UI,sans-serif;color:#13283f}.ump-head{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:linear-gradient(135deg,#085393,#063D6E);color:#fff;padding:16px 28px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;box-shadow:0 2px 10px rgba(13,40,80,.25)}.ump-head h1{margin:0;font-size:20px;font-weight:700;letter-spacing:.2px}.ump-head .sub{font-size:12.5px;color:rgba(255,255,255,.85);margin-top:2px}.ump-head a.back{color:#fff;text-decoration:none;font-size:12.5px;font-weight:700;opacity:.9;border:1px solid rgba(255,255,255,.45);border-radius:6px;padding:7px 12px;white-space:nowrap}.ump-head a.back:hover{background:rgba(255,255,255,.14)}.ump-head .grow{flex:1 1}.ump-head button{background:#fff;color:#085393;border:none;border-radius:6px;padding:9px 16px;font:700 12.5px Lato,sans-serif;cursor:pointer;letter-spacing:.3px}.ump-head button:hover{background:#e8f0f8}.ump-head button.ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.5)}.ump-head button.ghost:hover{background:rgba(255,255,255,.14)}.ump-wrap{max-width:1000px;margin:0 auto;padding:20px 24px 90px}.ump-flash{position:-webkit-sticky;position:sticky;top:8px;z-index:40;background:#13283f;color:#fff;border-radius:8px;box-shadow:0 6px 18px rgba(13,40,80,.3)}.ump-error,.ump-flash{padding:10px 16px;font-size:13px;font-weight:700;margin-bottom:12px}.ump-error{background:#fff3f1;color:#a33122;border:1px solid #f3c8c2;border-radius:8px}.ump-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.ump-bar input,.ump-bar select{padding:9px 12px;border:1px solid #d5dde7;border-radius:7px;font:400 13px Lato,sans-serif;background:#fff}.ump-bar input:focus,.ump-bar select:focus{outline:none;border-color:#085393;box-shadow:0 0 0 3px rgba(8,83,147,.12)}.ump-bar input[type=search]{min-width:230px}.ump-bar input[type=email]{min-width:210px}.ump-bar .count{font-size:12px;color:#6b7a8e;white-space:nowrap}.ump-bar .grow{flex:1 1}.ump-bar button.add{background:#085393;color:#fff;border:none;border-radius:7px;padding:9px 16px;font:700 13px Lato,sans-serif;cursor:pointer;letter-spacing:.3px}.ump-bar button.add:hover{background:#0869B0}.ump-empty{padding:50px 20px;text-align:center;color:#6b7a8e;background:#fff;border:1px dashed #d5dde7;border-radius:10px}.ump-list{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;box-shadow:0 1px 2px rgba(13,40,80,.05)}.ump-row{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:none;border:none;border-bottom:1px solid #eef2f6;padding:13px 18px;cursor:pointer;font-family:inherit}.ump-row:last-child{border-bottom:none}.ump-row:hover{background:#f4f8fc}.ump-email{font-weight:700;font-size:14px;color:#13283f;word-break:break-all}.ump-email.big{font-size:16px}.ump-meta{color:#6b7a8e;margin-left:auto}.ump-manage,.ump-meta{font-size:12px;white-space:nowrap}.ump-manage{color:#085393;font-weight:700}.ump-badge{display:inline-block;font-weight:700;font-size:10px;padding:3px 8px;border-radius:99px;text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.ump-badge.leader{background:#0a8a4f;color:#fff}.ump-badge.admin{background:#38424e;color:#fff}.ump-badge.ms{background:#e8f0f8;color:#085393;border:1px solid #c4d7e8}.ump-badge.guest{background:#f3ecfd;color:#6b3fb5;border:1px solid #ddc9f5}.ump-badge.role-admin{background:#38424e;color:#fff}.ump-badge.role-leadership{background:#0a8a4f;color:#fff}.ump-badge.role-member{background:#eef2f6;color:#5b6b7e;border:1px solid #d5dde7}.ump-badge.seed{background:#fff8e6;color:#8a6d1a;border:1px solid #f0d99a}.ump-badge.edit{background:#ffb020;color:#4a3200}.ump-note{font-size:12px;color:#6b7a8e;margin:8px 0 0;line-height:1.5}.ump-diff{list-style:none;margin:0 0 16px;padding:0}.ump-diff li{display:flex;align-items:center;gap:8px;padding:9px 4px;border-bottom:1px solid #eef2f6;font-size:13px;flex-wrap:wrap}.ump-diff li .ump-btn{margin-left:auto}.ump-btn.sm{padding:4px 10px}.ump-confirm-actions{display:flex;align-items:center;gap:10px;margin-top:6px}.ump-confirm-actions .grow{flex:1 1}.ump-apply{background:#085393;color:#fff;border:none;border-radius:7px;padding:9px 18px;font:700 12.5px Lato,sans-serif;cursor:pointer;letter-spacing:.3px}.ump-apply:hover{background:#0869B0}.ump-apply:disabled{opacity:.55;cursor:default}.ump-audit{margin-top:18px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:12px 18px}.ump-audit summary{cursor:pointer;font-weight:700;font-size:12.5px;color:#5b6b7e;text-transform:uppercase;letter-spacing:.4px}.ump-audit ul{list-style:none;margin:10px 0 0;padding:0;max-height:320px;overflow-y:auto}.ump-audit li{padding:7px 2px;border-bottom:1px solid #eef2f6;font-size:12.5px;color:#3b4a5c}.ump-audit li .when{font-family:monospace;color:#8a97a8;margin-right:10px;font-size:11.5px}.ump-audit-empty{padding:12px 2px;color:#8a97a8;font-size:12.5px}.ump-pager .range{margin-right:auto}.ump-modal.ump-ask{max-width:460px}.ump-ask-body{font-size:13.5px;color:#3b4a5c;line-height:1.55;margin:0 0 16px}.ump-apply.danger{background:#c0392b}.ump-apply.danger:hover{background:#a93226}.ump-pager{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:14px;font-size:13px;color:#6b7a8e}.ump-pager button{background:#fff;color:#085393;border:1px solid #c4d7e8;border-radius:6px;padding:7px 14px;font:700 12px Lato,sans-serif;cursor:pointer}.ump-pager button:hover{background:#e8f0f8}.ump-pager button:disabled{opacity:.45;cursor:default}.ump-overlay{position:fixed;inset:0;background:rgba(13,40,80,.55);display:flex;align-items:flex-start;justify-content:center;z-index:200;overflow-y:auto;padding:40px 16px}.ump-modal{background:#fff;border-radius:12px;width:100%;max-width:640px;box-shadow:0 18px 60px rgba(13,40,80,.4);overflow:hidden}.ump-modal-head{display:flex;align-items:flex-start;gap:12px;padding:18px 22px;background:linear-gradient(135deg,#085393,#063D6E);color:#fff}.ump-modal-head .ump-email{color:#fff}.ump-modal-badges{margin-top:6px;display:flex;gap:6px;flex-wrap:wrap}.ump-modal-head .x{margin-left:auto;background:none;border:none;color:#fff;font-size:26px;cursor:pointer;line-height:1;padding:0 4px}.ump-modal-body{padding:18px 22px 22px;max-height:70vh;overflow-y:auto}.ump-method{font-size:12.5px;color:#6b7a8e;margin:0 0 14px;line-height:1.5}.ump-block{margin-bottom:18px}.ump-block h4{margin:0 0 8px;font-size:12px;font-weight:700;color:#8a97a8;text-transform:uppercase;letter-spacing:.5px}.ump-block.danger{border-top:1px solid #f3d5d0;padding-top:14px;margin-bottom:0}.ump-block.danger h4{color:#a33122}.ump-btn{border-radius:6px;padding:7px 14px;font:700 11px Lato,sans-serif;text-transform:uppercase;letter-spacing:.4px;cursor:pointer;display:inline-flex;align-items:center;gap:5px}.ump-btn.blue{background:#fff;color:#085393;border:1px solid #085393}.ump-btn.blue:hover{background:#085393;color:#fff}.ump-btn.red{background:#fff;color:#c0392b;border:1px solid #c0392b}.ump-btn.red:hover{background:#c0392b;color:#fff}.ump-pass{background:#f0f7ff;border:1px dashed #9dbede;border-radius:8px;padding:10px 14px;display:flex;align-items:center;gap:12px;font-size:13px;flex-wrap:wrap}.ump-pass code{font-size:17px;font-weight:700;letter-spacing:1.5px;color:#085393;background:#fff;border:1px solid #c4d7e8;border-radius:6px;padding:4px 10px}.ump-pass .note{color:#6b7a8e;font-size:12px}.ump-secs{gap:6px}.ump-app,.ump-secs{display:flex;flex-wrap:wrap;align-items:center}.ump-app{gap:5px;margin-bottom:7px}.ump .lbl{font-size:10.5px;font-weight:700;color:#8a97a8;text-transform:uppercase;letter-spacing:.5px;margin-right:4px;min-width:72px}.ump-pill{background:#fff;color:#5b6b7e;border:1px solid #d5dde7;border-radius:99px;padding:5px 12px;font:700 11px Lato,sans-serif;letter-spacing:.3px;cursor:pointer}.ump-pill:hover{border-color:#085393;color:#085393;background:#f2f7fc}.ump-pill.on{background:#085393;border-color:#085393;color:#fff}.ump-pill.on:hover{background:#0869B0;border-color:#0869B0}.ump-pill.locked{cursor:not-allowed;opacity:.85}.role-pill{background:#fff;color:#085393;border:1px solid #cdd9e5;border-radius:99px;padding:4px 11px;margin:2px 0;font:700 11px Lato,sans-serif;letter-spacing:.3px;cursor:pointer}.role-pill:hover{border-color:#085393;background:#E8F0F8}.role-pill.on{background:#085393;border-color:#085393;color:#fff}.role-pill.on:hover{background:#0869B0;border-color:#0869B0}@media (max-width:700px){.ump-head{padding:14px 16px}.ump-wrap{padding:16px 12px 70px}.ump-meta{display:none}.ump .lbl{min-width:0}}.frame-loading{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:#fff}.fl-spin{width:34px;height:34px;border-radius:50%;border:3px solid #dbe4ee;border-top-color:#085393;animation:flspin .8s linear infinite}.fl-txt{font-size:13.5px;color:#6b7a87}@keyframes flspin{to{transform:rotate(1turn)}}.ap-notice-backdrop{position:fixed;inset:0;background:rgba(15,30,45,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.ap-notice{background:#fff;border-radius:12px;width:560px;max-width:92vw;box-shadow:0 18px 60px rgba(10,25,40,.35)}.ap-notice-head{display:flex;align-items:center;padding:16px 20px;border-bottom:1px solid #e5eaef}.ap-notice-head h3{margin:0;font-size:17px}.ap-notice-x{margin-left:auto;border:0;background:none;font-size:22px;cursor:pointer;color:#64748b}.ap-notice-body{padding:16px 20px}.ap-notice-body p{margin:0 0 12px;font-size:13.5px;line-height:1.55}.ap-notice-dim{color:#64748b;font-size:12.5px!important}.ap-notice-foot{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid #e5eaef}.ap-notice-btn{padding:8px 16px;border-radius:8px;font-size:13.5px;font-weight:600;cursor:pointer;text-decoration:none;border:1px solid #cfd8e0}.ap-notice-btn.ghost{background:#fff;color:#334155}.ap-notice-btn.ghost:hover{background:#f1f5f9}.ap-notice-btn.primary{background:#0c4a6e;border-color:#0c4a6e;color:#fff}.ap-notice-btn.primary:hover{background:#0a3d5c}.pulse-btn{display:flex;align-items:center;justify-content:center;width:51px;height:42px;padding:0;border:1px solid var(--border);border-radius:8px;background:#fff;color:#085393;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.pulse-btn:hover{background:var(--brand-soft);border-color:var(--brand);color:var(--brand)}.pulse-btn svg{display:block}.pulse-backdrop{position:absolute;inset:0;z-index:20;background:rgba(15,30,45,.5);display:flex;align-items:center;justify-content:center;padding:14px}.pulse-modal{background:#fff;border-radius:10px;width:97%;height:100%;max-width:1600px;box-shadow:0 18px 60px rgba(10,25,40,.35);display:flex;flex-direction:column;overflow:hidden}.pulse-head{display:flex;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid #e5eaef;flex:0 0 auto}.pulse-head h3{margin:0;font-size:15px;color:#0f2233}.pulse-x{margin-left:auto;width:34px;height:34px;border:1px solid var(--border);border-radius:8px;background:#fff;color:#334155;font-size:24px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.pulse-x:hover{background:#fee2e2;border-color:#ef4444;color:#b91c1c}.pulse-body{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;background:#eef2f6;padding:14px}.pulse-body img{display:block;width:100%;height:auto;margin:0 auto 14px;background:#fff;border:1px solid #dbe4ee;border-radius:4px;box-shadow:0 2px 10px rgba(10,25,40,.1)}.pulse-body img:last-child{margin-bottom:0}.pulse-pdf{margin-left:auto;font-size:12px;font-weight:600;letter-spacing:.04em;color:#085393;text-decoration:none;border:1px solid var(--border);border-radius:6px;padding:5px 10px;background:#fff}.pulse-pdf:hover{background:var(--brand-soft);border-color:var(--brand)}.pulse-head .pulse-x{margin-left:8px}.plan-open-btn{font-weight:700;letter-spacing:.06em}.plan-backdrop{position:absolute;inset:0;z-index:20;background:rgba(15,30,45,.5);display:flex;align-items:center;justify-content:center;padding:14px}.plan-modal{background:#fff;border-radius:10px;width:97%;height:100%;max-width:1600px;box-shadow:0 18px 60px rgba(10,25,40,.35);display:flex;flex-direction:column;overflow:hidden}.plan-head{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid #e5eaef;flex:0 0 auto}.plan-head h3{margin:0 auto 0 0;font-size:15px;color:#0f2233}.plan-btn{font-size:12px;font-weight:600;border:1px solid var(--border);border-radius:6px;padding:7px 12px;background:#fff;color:#374151;cursor:pointer;white-space:nowrap;line-height:1;text-decoration:none;display:inline-flex;align-items:center}.plan-btn:hover:not(:disabled){background:var(--brand-soft);color:var(--brand);border-color:var(--brand)}.plan-btn:disabled{opacity:.45;cursor:default}.plan-btn.primary{background:#085393;border-color:#085393;color:#fff}.plan-btn.primary:hover:not(:disabled){background:#0a3d5c;border-color:#0a3d5c;color:#fff}.plan-x{width:34px;height:34px;margin-left:4px;border:1px solid var(--border);border-radius:8px;background:#fff;color:#334155;font-size:24px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.plan-x:hover{background:#fee2e2;border-color:#ef4444;color:#b91c1c}.plan-status{flex:0 0 auto;padding:6px 14px;font-size:12px;color:#6b7a87;background:#f8fafc;border-bottom:1px solid #eef2f6}.plan-unsaved{color:#b45309}.plan-body{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;background:#eef2f6;padding:16px;display:flex;flex-direction:column;align-items:center;gap:16px}.plan-page{display:block;flex:0 0 auto;width:100%;max-width:816px;background:#fff;border:1px solid #dbe4ee;border-radius:3px;box-shadow:0 2px 10px rgba(10,25,40,.1)}.plan-sheet{min-height:1056px;padding:72px;font:14px/1.55 Georgia,Times New Roman,serif;color:#111}.plan-sheet h1{font-size:22px;margin:0 0 12px}.plan-sheet h2{font-size:18px;margin:18px 0 8px}.plan-sheet h3{font-size:15px;margin:16px 0 6px}.plan-sheet p{margin:0 0 10px}.plan-sheet ol,.plan-sheet ul{margin:0 0 10px 22px}.plan-sheet table{border-collapse:collapse;margin:10px 0;width:100%}.plan-sheet td,.plan-sheet th{border:1px solid #cbd5e1;padding:5px 8px;font-size:13px}.plan-sheet img{max-width:100%;height:auto}