button{font-family:inherit}:root{--red:#d44a4d;--red-dark:#b8393c;--red-soft:#fde7e8;--ink:#2a1c1d;--sand:#fdf3ea;--line:#f1d6d2;--shadow:0 8px 24px #d44a4d2e;--shadow-lg:0 18px 48px #d44a4d47}*{box-sizing:border-box}html,body,#root{margin:0;padding:0}body{color:var(--ink);background:#fef3e8;min-height:100vh;font-family:ui-rounded,Nunito,Segoe UI Rounded,SF Pro Rounded,system-ui,-apple-system,sans-serif;overflow-x:hidden}.backdrop{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.sky{background:linear-gradient(#fef3e8 0%,#fde0d2 25%,#cfeef5 70%,#b9e2ec 100%);position:absolute;inset:0}.sun-deco{filter:blur(2px);opacity:.8;background:radial-gradient(circle,#ffd166 0%,#ffb84d 50%,#0000 70%);border-radius:50%;width:160px;height:160px;animation:6s ease-in-out infinite pulseSun;position:absolute;top:4%;right:6%}.cloud{filter:blur(1px);opacity:.85;background:#fff;border-radius:999px;position:absolute}.cloud:before,.cloud:after{content:"";background:#fff;border-radius:999px;position:absolute}.cloud-1{width:140px;height:28px;animation:60s linear infinite floatX;top:6%;left:10%}.cloud-1:before{width:58px;height:46px;top:-20px;left:24px}.cloud-1:after{width:48px;height:38px;top:-14px;left:70px}.cloud-2{width:100px;height:20px;animation:80s linear infinite reverse floatX;top:12%;left:58%}.cloud-2:before{width:42px;height:34px;top:-15px;left:17px}@keyframes pulseSun{0%,to{opacity:.8;transform:scale(1)}50%{opacity:.95;transform:scale(1.05)}}@keyframes floatX{0%{transform:translate(-120px)}to{transform:translate(110vw)}}.app{max-width:1500px;margin:0 auto;padding:20px 20px 28px;position:relative}.is-dragging,.is-dragging *{-webkit-user-select:none;user-select:none;cursor:grabbing!important}.topbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);box-shadow:var(--shadow);background:#ffffffed;border-radius:22px;grid-template-columns:auto 1fr auto;grid-template-areas:"brand actions stats";align-items:center;gap:14px;margin-bottom:18px;padding:14px 20px;animation:.5s both slideDown;display:grid}.brand{grid-area:brand;align-items:center;gap:14px;display:flex}.brand-mark{filter:drop-shadow(0 4px 8px #ffb43c66);animation:4s ease-in-out infinite bob;display:inline-block}.brand h1{letter-spacing:-.5px;color:var(--red);margin:0;font-size:26px}.subtitle{color:#735a5b;margin:2px 0 0;font-size:13px}.today{color:#a18587;margin:3px 0 0;font-size:11px}.actions{flex-wrap:wrap;grid-area:actions;justify-content:center;gap:8px;display:flex}.stats{flex-wrap:wrap;grid-area:stats;justify-content:flex-end;gap:8px;display:flex}.stat{background:var(--red-soft);text-align:center;border:1px solid var(--line);border-radius:14px;min-width:72px;padding:8px 12px}.stat-num{color:var(--red);font-size:19px;font-weight:800;line-height:1.1;display:block}.stat-label{text-transform:uppercase;letter-spacing:.7px;color:#8a6c6e;font-size:10px}.stat--full{background:#e6f7e9;border-color:#c5e9cb}.stat--full .stat-num{color:#2a9d4a}@media (width<=900px){.topbar{grid-template-columns:1fr;grid-template-areas:"brand""actions""stats"}.actions,.stats{justify-content:flex-start}}.line-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);box-shadow:var(--shadow);background:#fffffff2;border-radius:22px;margin-bottom:16px;padding:14px 16px 16px;animation:.5s 40ms both slideDown}.line-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:12px;display:flex}.line-head h2{color:var(--red);margin:0;font-size:18px}.line-head p{color:#735a5b;margin:2px 0 0;font-size:12px}.line-legend{color:#5a4647;flex-wrap:wrap;gap:12px;font-size:11px;font-weight:700;display:flex}.line-legend span{align-items:center;gap:5px;display:inline-flex}.lg-dot{background:#cfc7c8;border-radius:3px;width:12px;height:12px;display:inline-block}.lg-dot--full{background:#1a7a3a}.lg-dot--part{background:#e9a13b}.lg-dot--empty{background:#cfc7c8}.line-wrap{align-items:center;gap:10px;display:flex}.line-end{color:#8a7273;letter-spacing:.04em;writing-mode:vertical-rl;text-orientation:mixed;flex-shrink:0;font-size:10.5px;font-weight:900;line-height:1}.line-end--l{transform:rotate(180deg)}.line-track{border:1px solid var(--line);background:#fbf7f2;border-radius:14px;flex:1;min-width:0;padding:10px 10px 0;position:relative;overflow:auto hidden}.line-sea{background:linear-gradient(90deg,#8ecbe0,#4aa6c6,#8ecbe0);border-radius:6px;min-width:100%;height:8px;margin-bottom:9px}.line-sand{background:linear-gradient(90deg,#f3e3b8,#e8d49a,#f3e3b8);border-radius:6px;min-width:100%;height:7px;margin:9px 0 10px}.line-blocks{gap:8px;min-width:100%;display:flex}.lblock{cursor:pointer;min-width:74px;font:inherit;color:#fff;background:var(--c);border:2px solid #0000;border-radius:12px;flex-direction:column;flex:1 1 0;align-items:center;gap:2px;padding:9px 6px 8px;transition:transform .14s,box-shadow .14s,filter .14s,border-color .14s;display:flex;position:relative;box-shadow:0 2px 7px #00000024}.lblock:hover{transform:translateY(-3px);box-shadow:0 6px 16px #0003}.lblock--empty{filter:saturate(.35)brightness(1.16);color:#6b5b5c}.lblock--over,.lblock--sel{border-color:#2b2020;transform:translateY(-4px)scale(1.03);box-shadow:0 8px 20px #00000047}.lblock-code{letter-spacing:.02em;font-size:13px;font-weight:900;line-height:1}.lblock-name{opacity:.92;text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:9.5px;font-weight:700;line-height:1.1;overflow:hidden}.lblock-cap{background:#00000042;border-radius:20px;margin-top:2px;padding:1px 8px;font-size:10px;font-weight:900}.lblock--full .lblock-cap{background:#1a7a3a}.lblock--alone{border-color:#e5484d}.lblock--part{border-color:#e9a13b}.lblock-warn{color:#fff;background:#e5484d;border:2px solid #fff;border-radius:50%;place-items:center;width:19px;height:19px;font-size:12px;font-weight:900;display:grid;position:absolute;top:-6px;right:-6px;box-shadow:0 2px 5px #0000004d}.lblock-warn--part{color:#402c05;background:#e9a13b}.alone-bar{color:#6b3a3a;background:#fff4f2;border:1.5px solid #f3b7b4;border-left:5px solid #e5484d;border-radius:14px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;padding:10px 14px;font-size:12.5px;animation:.4s both slideDown;display:flex}.alone-bar-tag{color:#c22;letter-spacing:.02em;white-space:nowrap;font-weight:900}.alone-bar-txt{flex:1;min-width:220px;line-height:1.45}.alone-bar .btn{flex-shrink:0}.ubs-section{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);box-shadow:var(--shadow);background:#ffffffeb;border-radius:22px;margin-bottom:16px;padding:14px 16px 16px;animation:.5s 80ms both slideDown}.ubs-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.ubs-section-head h3{color:var(--red);margin:0;font-size:16px}.ubs-section-sub{color:#8a6c6e;font-size:12px;font-weight:600}.ubs-head-l{align-items:center;gap:10px;min-width:0;display:flex}.daytools{flex-wrap:wrap;gap:6px;display:flex}.daytools .btn{padding:7px 11px;font-size:12px}.daynav{background:var(--sand);border:1.5px solid var(--line);border-radius:999px;flex-shrink:0;align-items:center;gap:2px;padding:2px;display:inline-flex}.daynav-btn{width:28px;height:28px;color:var(--red);font:inherit;cursor:pointer;background:#fff;border:none;border-radius:50%;place-items:center;font-size:18px;font-weight:900;line-height:1;transition:background .12s,color .12s,transform .1s;display:grid;box-shadow:0 1px 4px #0000001a}.daynav-btn:hover{background:var(--red);color:#fff;transform:scale(1.08)}.daynav-btn:active{transform:scale(.92)}.daynav-lbl{color:var(--red);text-align:center;font-variant-numeric:tabular-nums;min-width:44px;padding:0 6px;font-size:11.5px;font-weight:900}.ubs-grid{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}@media (width<=1200px){.ubs-grid{grid-template-columns:repeat(4,1fr)}}@media (width<=900px){.ubs-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=600px){.ubs-grid{grid-template-columns:repeat(2,1fr)}}.ub-card{--accent:var(--red);background:#fff;border:2px solid #0000;border-radius:16px;padding:10px 10px 12px;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s;position:relative;overflow:hidden;box-shadow:0 4px 14px #00000014}.ub-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px #0000001f}.ub-stripe{background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 50%,#ffd9a0));height:4px;position:absolute;inset:0 0 auto}.ub--full{border-color:#2a9d4a}.ub--empty{background:#fffc}.ub--target{border-color:var(--accent);animation:1.3s ease-in-out infinite targetPulse}.ub--over{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,white);box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 30%,transparent),0 8px 22px #00000024;transform:translateY(-4px)scale(1.015)}.ub--selected{border-color:var(--accent);animation:1.8s selectedFlash}@keyframes targetPulse{0%,to{box-shadow:0 4px 14px #00000014}50%{box-shadow:0 0 0 8px color-mix(in srgb,var(--accent) 18%,transparent),0 4px 14px #00000014}}@keyframes selectedFlash{0%,to{box-shadow:0 4px 14px #00000014}30%,70%{box-shadow:0 0 0 7px color-mix(in srgb,var(--accent) 28%,transparent),0 8px 22px #0000001f}}.ub-header{justify-content:space-between;align-items:flex-start;gap:6px;margin:6px 0 8px;display:flex}.ub-id-block{align-items:center;gap:7px;display:flex}.ub-num-badge{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:13px;font-weight:900;display:grid}.ub-name{color:var(--ink);font-size:14px;font-weight:800;line-height:1.1}.ub-landmark{color:#735a5b;white-space:nowrap;text-overflow:ellipsis;max-width:120px;margin-top:2px;font-size:10px;font-weight:600;overflow:hidden}.cap-control{background:var(--sand);border:1px solid var(--line);z-index:3;border-radius:999px;align-items:center;gap:4px;padding:3px 5px;display:flex;position:relative}.cap-btn{width:22px;height:22px;color:var(--accent);cursor:pointer;background:#fff;border:none;border-radius:50%;place-items:center;font-size:14px;font-weight:800;transition:transform .1s,background .12s,color .12s;display:grid;box-shadow:0 1px 4px #00000014}.cap-btn:hover{background:var(--accent);color:#fff;transform:scale(1.12)}.cap-btn:active{transform:scale(.9)}.cap-num{text-align:center;min-width:28px;font-size:12px}.cap-num strong{color:var(--accent);font-size:13px}.bar{background:var(--sand);border-radius:999px;height:4px;margin-bottom:10px;overflow:hidden}.bar-fill{background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 60%,#ffd9a0));border-radius:999px;height:100%;transition:width .45s cubic-bezier(.2,.8,.2,1)}.slots{grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:6px;display:grid}.slot{border:2px dashed var(--line);background:var(--sand);cursor:pointer;font:inherit;color:inherit;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:7px 4px 6px;transition:transform .12s,border-color .12s,background .12s;display:flex;position:relative}.slot:hover{transform:translateY(-2px)}.slot--empty{color:#b39599}.slot--empty:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,white);color:var(--accent)}.plus{width:26px;height:26px;color:var(--accent);border:2px solid var(--accent);background:#fff;border-radius:50%;place-items:center;font-size:16px;font-weight:800;transition:transform .18s;display:grid}.slot--empty:hover .plus{transform:rotate(90deg)scale(1.08)}.slot--filled{background:#fff;border-style:solid;border-color:#fff;box-shadow:0 3px 8px #0000000f}.slot--filled img{object-fit:cover;border:2px solid var(--accent);background:var(--sand);border-radius:50%;width:34px;height:34px}.slot-name{text-align:center;-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;max-width:74px;font-size:9.5px;font-weight:700;line-height:1.15;display:-webkit-box;overflow:hidden}.slot-x{width:19px;height:19px;font:inherit;color:#e5484d;cursor:pointer;opacity:0;background:#fff;border:1.5px solid #e5484d;border-radius:50%;place-items:center;padding:0;font-size:14px;font-weight:900;line-height:1;transition:opacity .12s,transform .12s,background .12s,color .12s;display:grid;position:absolute;top:2px;right:2px;transform:scale(.7);box-shadow:0 1px 4px #00000029}.slot--filled:hover .slot-x,.slot-x:focus-visible{opacity:1;transform:scale(1)}.slot-x:hover{color:#fff;background:#e5484d;transform:scale(1.18);box-shadow:0 2px 8px #e5484d80}.badge{letter-spacing:.3px;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;border-radius:999px;max-width:100%;margin-top:8px;padding:3px 9px;font-size:9.5px;font-weight:800;display:inline-flex;overflow:hidden;box-shadow:0 1px 4px #00000026}.badge-full{color:#fff;background:#2a9d4a}.badge-empty{color:#fff;background:#bbb}.drop-overlay{background:color-mix(in srgb,var(--accent) 14%,white);border:3px dashed var(--accent);opacity:0;pointer-events:none;z-index:4;border-radius:16px;place-items:center;transition:opacity .12s;display:grid;position:absolute;inset:0}.ub--over .drop-overlay{opacity:1}.drop-msg{background:var(--accent);color:#fff;box-shadow:var(--shadow-lg);border-radius:999px;padding:8px 18px;font-size:14px;font-weight:800;animation:.25s cubic-bezier(.2,.8,.2,1.4) bounceIn}@keyframes bounceIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.pop{animation:.6s cubic-bezier(.2,.8,.2,1.4) pop}.pool{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);border-top:4px solid var(--red);box-shadow:var(--shadow);background:linear-gradient(#fffffff2,#fdf3eaf5);border-radius:22px;margin-bottom:16px;padding:14px 16px 16px;animation:.5s .1s both slideUp;position:relative}.pool-head{flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:8px;display:flex}.pool-head h3{color:var(--red);margin:0;font-size:15px}.pool-count{background:var(--red);color:#fff;border-radius:999px;padding:1px 10px;font-size:11px;font-weight:800}.pool-tip{color:#8a6c6e;margin-left:auto;font-size:11px;font-style:italic}.pool-add{white-space:nowrap;padding:6px 12px;font-size:12px}.pool-list{flex-wrap:wrap;gap:8px;padding-bottom:2px;display:flex}.pool-item{border:2px solid var(--line);white-space:nowrap;cursor:grab;-webkit-user-select:none;user-select:none;background:#fff;border-radius:999px;flex:none;align-items:center;gap:7px;padding:6px 12px 6px 6px;font-size:13px;font-weight:600;transition:transform .12s,box-shadow .12s,border-color .12s;display:flex}.pool-item:hover{box-shadow:var(--shadow);border-color:var(--red);transform:translateY(-3px)rotate(-1deg)}.pool-item--dragging{opacity:.3;transform:scale(.92)}.pool-item img{object-fit:cover;border:2px solid var(--red);pointer-events:none;border-radius:50%;width:30px;height:30px}.pool-item span{pointer-events:none}.drag-float{z-index:9999;pointer-events:none;will-change:transform,left,top;border:3px solid var(--red);background:#fff;border-radius:999px;flex-direction:row;align-items:center;gap:4px;padding:8px 12px 8px 8px;font-size:13px;font-weight:700;display:flex;position:fixed;box-shadow:0 12px 36px #d44a4d73,0 4px 12px #0003}.drag-float img{object-fit:cover;border:2px solid var(--red);border-radius:50%;width:40px;height:40px}.drag-float span{white-space:nowrap;text-overflow:ellipsis;max-width:80px;overflow:hidden}.modal-back{z-index:50;background:#2a1c1d8c;place-items:center;padding:20px;animation:.2s both fade;display:grid;position:fixed;inset:0}.modal{width:min(720px,100%);max-height:80vh;box-shadow:var(--shadow-lg);border-top:6px solid var(--red);background:#fff;border-radius:22px;flex-direction:column;animation:.3s cubic-bezier(.2,.8,.2,1.2) both modalIn;display:flex;overflow:hidden}.modal--small{width:min(400px,100%);padding:22px}.modal-head{justify-content:space-between;align-items:flex-start;padding:18px 22px 10px;display:flex}.modal-head h3{color:var(--red);margin:0;font-size:20px}.modal-head p{color:#735a5b;margin:4px 0 0;font-size:13px}.x{background:var(--red-soft);width:34px;height:34px;color:var(--red);cursor:pointer;border:none;border-radius:50%;place-items:center;font-size:20px;font-weight:800;display:grid}.x:hover{background:var(--red);color:#fff}.search{border:2px solid var(--line);font:inherit;background:var(--sand);border-radius:12px;outline:none;margin:6px 22px 10px;padding:10px 14px;font-size:14px;transition:border-color .14s,background .14s}.search:focus{border-color:var(--red);background:#fff}.picker-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px;padding:0 22px 22px;display:grid;overflow-y:auto}.picker-item{border:2px solid var(--line);cursor:pointer;font:inherit;text-align:left;background:#fff;border-radius:12px;align-items:center;gap:9px;padding:7px 10px 7px 7px;transition:transform .12s,border-color .12s,background .12s;display:flex}.picker-item:hover{border-color:var(--red);background:var(--red-soft);transform:translateY(-2px)}.picker-item img{object-fit:cover;border:2px solid var(--red);border-radius:50%;width:36px;height:36px}.picker-item span{font-size:12px;font-weight:600}.add-cta{color:var(--red);text-transform:uppercase;letter-spacing:.7px;opacity:0;margin-left:auto;transition:opacity .12s;font-size:10px!important}.picker-item:hover .add-cta{opacity:1}.confirm-msg{color:#735a5b;line-height:1.5}.confirm-row{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.btn{font:inherit;cursor:pointer;border:2px solid #0000;border-radius:11px;padding:9px 16px;font-size:13px;font-weight:700;transition:transform .1s,background .13s,border-color .13s}.btn:active{transform:scale(.97)}.btn-primary{background:var(--red);color:#fff}.btn-primary:hover{background:var(--red-dark)}.btn-ghost{color:var(--red);border-color:var(--line);background:#fff}.btn-ghost:hover{background:var(--red-soft);border-color:var(--red)}.btn-ghost.danger{color:#8a6c6e}.btn-ghost.danger:hover{color:var(--red);border-color:var(--red);background:#fff0f0}.empty{color:#8a6c6e;padding:6px 4px;font-style:italic}.dl-menu{z-index:9000;border:1px solid var(--line);box-shadow:var(--shadow-lg);background:#fff;border-radius:16px;min-width:288px;max-width:calc(100vw - 16px);padding:6px;animation:.16s both modalIn}.dl-busy{color:var(--red);text-align:center;padding:6px 8px 8px;font-size:12px;font-weight:700}.dl-opt{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;background:#fff;border:none;border-radius:12px;align-items:center;gap:11px;padding:10px 12px;transition:background .12s;display:flex}.dl-opt:hover{background:var(--red-soft)}.dl-opt:disabled{opacity:.55;cursor:default}.dl-ic{flex:none;font-size:22px;line-height:1}.dl-txt{flex-direction:column;gap:1px;display:flex}.dl-txt strong{color:var(--ink);font-size:13.5px}.dl-txt small{color:#8a6c6e;font-size:11px}.toast{background:var(--ink);color:#fff;box-shadow:var(--shadow-lg);z-index:200;text-align:center;border-radius:999px;max-width:90vw;padding:11px 20px;font-size:13px;font-weight:700;animation:.22s cubic-bezier(.2,.8,.2,1.2) toastIn;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes modalIn{0%{opacity:0;transform:translateY(18px)scale(.95)}to{opacity:1;transform:none}}@keyframes bob{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-7px)rotate(7deg)}}@keyframes pop{0%{transform:scale(.55)}60%{transform:scale(1.18)}to{transform:scale(1)}}@media print{.backdrop,.actions,.badge,.toast,.drop-overlay,.pool-tip{display:none!important}body{background:#fff}.app{max-width:none;padding:0}.topbar,.line-card,.ubs-section,.pool{box-shadow:none;border:1px solid #ccc}.pool{break-inside:avoid}.ubs-grid{gap:8px;grid-template-columns:repeat(2,1fr)!important}.ub-card{box-shadow:none;break-inside:avoid;border:1px solid #ccc}.slot--empty{display:none}.line-track{overflow:visible}}.daybar{scrollbar-width:thin;scroll-snap-type:x proximity;gap:6px;margin:0 0 4px;padding:4px 4px 10px;display:flex;overflow-x:auto}.daybar::-webkit-scrollbar{height:7px}.daybar::-webkit-scrollbar-thumb{background:var(--line);border-radius:8px}.daychip{scroll-snap-align:center;border:2px solid var(--line);cursor:pointer;min-width:46px;font:inherit;color:var(--ink);background:#fff;border-radius:14px;flex-direction:column;flex:none;align-items:center;gap:1px;padding:7px 6px 6px;transition:transform .12s,border-color .12s,background .12s,box-shadow .15s;display:flex}.daychip:hover{border-color:var(--red);transform:translateY(-2px)}.daychip--wknd{background:#fff7f1}.daychip-wd{text-transform:uppercase;letter-spacing:.04em;color:#b08;opacity:.6;font-size:9.5px;font-weight:800}.daychip--wknd .daychip-wd{color:var(--red);opacity:.85}.daychip-d{font-size:17px;font-weight:900;line-height:1}.daychip-c{color:#2a9d8f;min-height:12px;font-size:9.5px;font-weight:800}.daychip--on{background:var(--red);border-color:var(--red);color:#fff;box-shadow:var(--shadow)}.daychip--on .daychip-wd,.daychip--on .daychip-c{color:#fff;opacity:.92}.modal--wide{width:96vw;max-width:720px}.pay-wrap{border:1px solid var(--line);border-radius:16px;max-height:64vh;overflow:auto}.pay-table{border-collapse:collapse;width:100%;font-size:13.5px}.pay-table th,.pay-table td{text-align:left;border-bottom:1px solid var(--red-soft);padding:8px 12px}.pay-table thead th{background:var(--red);color:#fff;text-transform:uppercase;letter-spacing:.04em;z-index:1;font-size:12px;font-weight:800;position:sticky;top:0}.pay-table thead th:first-child{border-top-left-radius:14px}.pay-table thead th:last-child{border-top-right-radius:14px}.pay-table td.num{text-align:right;font-variant-numeric:tabular-nums}.pay-table td.strong{font-weight:800}.pay-table tbody tr:hover{background:#fff7f1}.pay-table .pay-zero{opacity:.5}.pay-table .pay-fee td{background:#eef9f4;font-style:italic}.pay-pct-in{align-items:center;gap:3px;display:inline-flex}.pay-pct-in .pay-in{width:60px}.pay-table tfoot td{color:#fff;background:#2a1c1d;border:none;font-size:14px;font-weight:900;position:sticky;bottom:0}.pay-table tfoot td.num{text-align:right}.tbadge{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:10px;font-weight:800;line-height:1.4;display:inline-flex}.tbadge--fixo{color:#0f7a5a;background:#dff3ec;border:1px solid #9fdcc8}.tbadge--folguista{color:#a85a12;background:#fdeede;border:1px solid #f3c98c}.tbadge--mini{padding:1px 6px;font-size:8.5px}.type-dot{border-radius:50%;flex:none;width:9px;height:9px;display:inline-block}.type-dot--fixo{background:#15a06f}.type-dot--folguista{background:#e08a2b}.type-dot--unav{background:#d44a4d}.type-dot--av{background:#15a06f}.slot--filled .type-dot{position:absolute;top:3px;left:4px;box-shadow:0 0 0 2px #fff}.pool-group{margin-top:4px}.pool-group-label{color:#9a7;opacity:.8;text-transform:uppercase;letter-spacing:.05em;margin:2px 2px 4px;font-size:11px;font-weight:800;display:block}.pool-group .empty{margin:0 0 4px;padding:0 4px;font-size:12px}.pool-legend{color:#8a6f70;gap:12px;margin-left:10px;font-size:11px;font-weight:700;display:inline-flex}.pool-legend span{align-items:center;gap:5px;display:inline-flex}.pool-item{position:relative}.pool-item--fixo{border-left:3px solid #15a06f}.pool-item--folguista{border-left:3px solid #e08a2b}.pool-item .tbadge--mini{margin-left:2px}.pool-item--unav{opacity:.55;filter:grayscale(.4)}.pool-item--unav img{outline-offset:1px;outline:2px solid #d44a4d}.unav-flag{color:#fff;background:#d44a4d;border-radius:50%;place-items:center;width:16px;height:16px;font-size:10px;font-weight:900;display:grid;position:absolute;top:-4px;right:-4px;box-shadow:0 1px 3px #0000004d}.pool-item--av{border-left-color:#15a06f;box-shadow:inset 0 0 0 1.5px #bfe9d8}.pool-item--av img{outline-offset:1px;outline:2px solid #15a06f}.av-flag{color:#fff;background:#15a06f;border-radius:50%;place-items:center;width:16px;height:16px;font-size:10px;font-weight:900;display:grid;position:absolute;top:-4px;right:-4px;box-shadow:0 1px 3px #0000004d}.login-screen{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex;position:relative}.login-bg{z-index:-1;position:fixed;inset:0;overflow:hidden}.login-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);width:100%;max-width:440px;box-shadow:var(--shadow-lg);background:#ffffffeb;border-radius:26px;padding:30px 28px}.login-brand{align-items:center;gap:14px;margin-bottom:22px;display:flex}.login-brand h1{color:var(--red);margin:0;font-size:26px}.login-brand p{color:#8a6f70;margin:2px 0 0;font-size:12.5px}.login-q{margin:0 0 12px;font-size:15px;font-weight:800}.role-btn{text-align:left;border:2px solid var(--line);cursor:pointer;width:100%;font:inherit;color:inherit;background:#fff;border-radius:18px;align-items:center;gap:14px;margin-bottom:12px;padding:16px 18px;transition:transform .12s,border-color .12s,box-shadow .15s;display:flex}.role-btn:hover{border-color:var(--red);box-shadow:var(--shadow);transform:translateY(-2px)}.role-emoji{font-size:30px}.role-txt{flex-direction:column;display:flex}.role-txt strong{font-size:16px}.role-txt small{color:#8a6f70;margin-top:1px;font-size:12.5px}.login-form h2{margin:6px 0 2px;font-size:20px}.login-hint{color:#8a6f70;margin:0 0 14px;font-size:13px}.login-err{color:var(--red-dark);margin:8px 0 0;font-size:13px;font-weight:700}.link-back{color:var(--red);cursor:pointer;font-weight:700;font:inherit;background:0 0;border:none;margin-bottom:6px;padding:0}.login-go{justify-content:center;width:100%;margin-top:14px}.login-people{border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:6px;max-height:46vh;margin-top:12px;padding:8px;display:flex;overflow:auto}.person-row{cursor:pointer;font:inherit;color:inherit;text-align:left;background:0 0;border:none;border-radius:12px;align-items:center;gap:11px;width:100%;padding:8px 10px;transition:background .12s;display:flex}.person-row:hover{background:var(--sand)}.person-row img{border-radius:50%;width:34px;height:34px}.person-name{flex:1;font-weight:700}.pin-head{align-items:center;gap:13px;margin:6px 0 10px;display:flex}.pin-head img{border-radius:50%;width:52px;height:52px}.pin-head h2{margin:0 0 3px}.pin-in{letter-spacing:.5em;text-align:center;margin-bottom:8px;font-size:20px;font-weight:800}.login-foot{color:#a98f90;margin-top:18px;font-size:12px}.portal{min-height:100vh;padding:16px clamp(12px,3vw,30px) 60px;position:relative}.portal-bar .me-avatar{width:52px;height:52px;box-shadow:var(--shadow);border-radius:16px}.tabbar{gap:8px;margin:14px 0 18px;display:flex}.tab{border:2px solid var(--line);max-width:260px;font:inherit;cursor:pointer;color:#8a6f70;background:#fff;border-radius:16px;flex:1;padding:12px 16px;font-size:14.5px;font-weight:800;transition:transform .12s,border-color .12s,background .12s,color .12s}.tab:hover{border-color:var(--red);transform:translateY(-1px)}.tab--on{background:var(--red);border-color:var(--red);color:#fff;box-shadow:var(--shadow)}.portal-pane{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--line);box-shadow:var(--shadow);background:#ffffffdb;border-radius:22px;padding:20px clamp(14px,2.5vw,26px)}.pane-head h2{color:var(--red);margin:0 0 4px;font-size:21px}.pane-head p{color:#7a5f60;max-width:60ch;margin:0 0 16px;font-size:13.5px}.cal-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;display:grid}.month{border:1px solid var(--line);background:#fff;border-radius:18px;padding:14px}.month-title{text-align:center;color:var(--ink);margin:0 0 10px;font-size:16px;font-weight:900}.month-title span{color:#b39;opacity:.5;font-weight:700}.month-bulk{flex-wrap:wrap;justify-content:center;gap:6px;margin:0 0 10px;display:flex}.mb{border:1.5px solid var(--line);min-width:82px;font:inherit;cursor:pointer;white-space:nowrap;background:#fffdfb;border-radius:10px;flex:1;padding:7px 6px;font-size:11.5px;font-weight:800;line-height:1;transition:transform .1s,background .12s,border-color .12s,color .12s}.mb:hover{transform:translateY(-1px);box-shadow:0 3px 9px #0000001a}.mb--on{color:#0f7a5a;background:#eafaf3;border-color:#9fdcc8}.mb--on:hover{color:#fff;background:#0f7a5a;border-color:#0f7a5a}.mb--off{color:var(--red-dark);background:#fdeced;border-color:#f3b4b6}.mb--off:hover{background:var(--red-dark);border-color:var(--red-dark);color:#fff}.mb--clear{color:#7a5f60}.mb--clear:hover{background:#f6efef;border-color:#7a5f60}.month-wd,.month-days{grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.month-wd span{text-align:center;color:#b08;opacity:.6;text-transform:uppercase;padding-bottom:4px;font-size:10px;font-weight:800}.cell{aspect-ratio:1;border:1px solid var(--red-soft);font:inherit;color:var(--ink);background:#fffdfb;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:2px;display:flex;position:relative}.cell--pad{background:0 0;border:none}.cell--wknd{background:#fff6f0}.cell-d{font-size:14px;font-weight:800;line-height:1}.cell-post{color:#0f7a5a;text-align:center;text-overflow:ellipsis;white-space:nowrap;letter-spacing:.01em;background:#bfe9d8;border-radius:6px;max-width:calc(100% - 2px);margin-top:3px;padding:2px 6px;font-size:11px;font-weight:900;line-height:1;overflow:hidden}.cell--work{background:#dff3ec;border-color:#9fdcc8}.cell--work .cell-d{color:#0f7a5a}.cell--click{cursor:pointer;transition:transform .1s,background .12s,border-color .12s}.cell--click:hover{border-color:var(--red);transform:scale(1.06);box-shadow:0 3px 10px #0000001f}.cell--off{background:#fde7e8;border-color:#f3b4b6}.cell--off .cell-d{color:var(--red-dark)}.cell--free-on{background:#dff3ec;border-color:#86d3b6}.cell--free-on .cell-d{color:#0f7a5a}.cell-x{color:var(--red);font-size:10px;font-weight:900;position:absolute;top:2px;right:4px}.cell-tick{color:#0f7a5a;font-size:10px;font-weight:900;position:absolute;top:2px;right:4px}.cal-legend{color:#7a5f60;flex-wrap:wrap;gap:16px;margin-top:16px;font-size:12.5px;font-weight:700;display:flex}.cal-legend span{align-items:center;gap:6px;display:inline-flex}.lg-sw{border-radius:5px;width:14px;height:14px;display:inline-block}.lg-sw--work{background:#dff3ec;border:1px solid #9fdcc8}.lg-sw--on{background:#cdeede;border:1px solid #86d3b6}.lg-sw--off{background:#fde7e8;border:1px solid #f3b4b6}.lg-sw--free{border:1px solid var(--red-soft);background:#fffdfb}.cal-note{color:#a98f90;font-style:italic;font-weight:600}.day-post{border:1px solid var(--line);background:#fffdfb;border-radius:16px;margin-top:12px;padding:14px}.day-post-head{align-items:center;gap:11px;margin-bottom:10px;display:flex}.day-post-badge{background:var(--red);color:#fff;border-radius:12px;flex:none;place-items:center;width:42px;height:42px;font-size:15px;font-weight:900;display:grid}.day-post-head strong{font-size:16px;display:block}.day-post-sub{color:#8a6f70;font-size:12px;font-weight:700}.day-crew{flex-wrap:wrap;gap:8px;display:flex}.crew-chip{border:1px solid var(--line);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:6px 12px 6px 6px;font-size:13px;font-weight:700;display:inline-flex}.crew-chip img{border-radius:50%;width:30px;height:30px}.crew-chip--me{background:#dff3ec;border-color:#9fdcc8}.crew-chip em{color:#0f7a5a;font-size:11px;font-style:normal;font-weight:800}.crew-solo{color:#8a6f70;margin:2px 0;font-size:13px;font-style:italic}.profile-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:18px;box-shadow:0 4px 14px #d44a4d14}.profile-id{border-bottom:1px solid var(--line);align-items:center;gap:14px;margin-bottom:16px;padding-bottom:16px;display:flex}.profile-avatar{border:2px solid var(--line);border-radius:16px;width:58px;height:58px}.profile-id h3{color:var(--ink);margin:0 0 4px;font-size:19px}.profile-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.pf-field{flex-direction:column;gap:6px;display:flex}.pf-field--wide{grid-column:1/-1}.pf-label{color:#7a5f60;font-size:12.5px;font-weight:800}.pf-input{border:2px solid var(--line);background:var(--sand);font:inherit;color:var(--ink);border-radius:12px;padding:10px 13px;font-size:14px;transition:border-color .12s,background .12s}.pf-input:focus{border-color:var(--red);background:#fff;outline:none}textarea.pf-input{resize:vertical;min-height:72px}.profile-actions{align-items:center;gap:14px;margin-top:18px;display:flex}.pf-saved{color:#0f7a5a;font-size:13.5px;font-weight:800}.pool-info{border:1.5px solid var(--line);width:20px;height:20px;color:var(--red);cursor:pointer;background:#fff;border-radius:50%;flex:none;place-items:center;margin-left:auto;padding:0;font-size:12px;font-weight:900;line-height:1;transition:background .12s,color .12s,transform .1s;display:grid}.pool-info:hover{background:var(--red);color:#fff;transform:scale(1.12)}.pm-id{align-items:center;gap:12px;display:flex}.pm-avatar{border:2px solid var(--line);border-radius:13px;width:46px;height:46px}.pm-id h3{color:var(--red);margin:0;font-size:19px}.pm-id p{color:#735a5b;align-items:center;gap:6px;margin:4px 0 0;font-size:13px;display:flex}.pm-grid{grid-template-columns:repeat(2,1fr);gap:2px 22px;padding:6px 22px 22px;display:grid}.pm-row{border-bottom:1px solid var(--red-soft);flex-direction:column;gap:2px;padding:9px 0;display:flex}.pm-row--wide{grid-column:1/-1}.pm-label{color:#8a6f70;font-size:11.5px;font-weight:800}.pm-val{color:var(--ink);white-space:pre-wrap;word-break:break-word;font-size:15px;font-weight:700}.monthbar{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffffff2;border-radius:16px;align-items:center;gap:8px;margin-bottom:10px;padding:7px 10px;animation:.5s 20ms both slideDown;display:flex}.monthnav{border:1.5px solid var(--line);width:30px;height:30px;color:var(--red);cursor:pointer;background:#fff;border-radius:50%;flex-shrink:0;place-items:center;font-size:17px;font-weight:900;line-height:1;transition:background .14s,border-color .14s;display:grid}.monthnav:hover{background:var(--sand);border-color:var(--red)}.monthchips{flex:1;gap:5px;min-width:0;padding:1px;display:flex;overflow-x:auto}.monthchip{border:1.5px solid var(--line);cursor:pointer;min-width:52px;font:inherit;background:#fff;border-radius:10px;flex:1 1 0;padding:6px 4px;transition:background .14s,border-color .14s,color .14s,transform .12s;position:relative}.monthchip:hover{border-color:var(--red);transform:translateY(-1px)}.monthchip--on{background:var(--red);border-color:var(--red);color:#fff}.monthchip-l{text-transform:uppercase;letter-spacing:.04em;font-size:11.5px;font-weight:800;display:block}.monthchip-c{background:var(--teal,#2a9d8f);color:#fff;border:1.5px solid #fff;border-radius:9px;place-items:center;min-width:16px;height:16px;padding:0 4px;font-size:9.5px;font-weight:900;display:grid;position:absolute;top:-5px;right:-3px}.monthbar-year{color:var(--red);white-space:nowrap;flex-shrink:0;padding-left:6px;font-size:12px;font-weight:900}.yearpick{border-right:1px solid var(--line);flex-shrink:0;align-items:center;gap:4px;padding-right:8px;display:flex}.yearpick--pane{border-right:none;margin-top:8px;padding-right:0}.yearsel{border:1.5px solid var(--line);font:inherit;color:var(--red);cursor:pointer;background:#fff;border-radius:9px;padding:5px 8px;font-size:12.5px;font-weight:900}.yearsel:focus{border-color:var(--red);outline:none;box-shadow:0 0 0 3px #d44a4d21}.daychip{position:relative}.daychip-alone{color:#fff;background:#e5484d;border:1.5px solid #fff;border-radius:50%;place-items:center;width:15px;height:15px;font-size:10px;font-weight:900;display:grid;position:absolute;top:-4px;right:-4px}.ub--alone{border-color:#f3b7b4}.badge-alone{color:#fff;background:#e5484d}.ub--part{border-color:#f6d9a8}.badge-part{color:#402c05;background:#e9a13b}.slot--alone{box-shadow:0 0 0 2px #e5484d2e,0 3px 8px #0000000f;border-color:#e5484d!important}.slot-alone{letter-spacing:.06em;color:#c22;background:#ffe9e7;border-radius:20px;margin-top:1px;padding:1px 5px;font-size:7.5px;font-weight:900;display:block}.pay-tabs{gap:8px;padding:0 22px 10px;display:flex}.pay-tabs .tab-c{color:#fff;background:#e5484d;border-radius:9px;place-items:center;min-width:17px;height:17px;margin-left:5px;padding:0 4px;font-size:10px;font-weight:900;display:inline-grid}.pay-tabs .tab--on .tab-c{color:#c22;background:#fff}.pay-note{color:#6b3a3a;background:#fff4f2;border:1px solid #f3b7b4;border-radius:10px;margin:0 0 12px;padding:9px 12px;font-size:12px;line-height:1.5}.pay-alone td{background:#fff4f2}.pay-link{font:inherit;color:#c22;cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-weight:800}.pay-link span{opacity:.7;font-size:11px;font-weight:600}.pay-link:hover{text-decoration:underline}.pay-dates{color:#7a6263;max-width:280px;font-size:10.5px;line-height:1.4}.pm-toolbar{flex-wrap:wrap;align-items:center;gap:8px;padding:0 22px 12px;display:flex}.pm-note{color:#1a7a3a;font-size:12px;font-weight:700}.pm-grid--edit{gap:10px}.pm-field{flex-direction:column;gap:4px;display:flex}.pm-field input,.pm-field textarea{border:1.5px solid var(--line);width:100%;font:inherit;color:inherit;resize:vertical;background:#fff;border-radius:10px;padding:8px 10px;font-size:13px}.pm-field input:focus,.pm-field textarea:focus{border-color:var(--red);outline:none;box-shadow:0 0 0 3px #d44a4d21}.pm-audit{padding:4px 22px 20px}.pm-audit h4{color:var(--red);align-items:center;gap:7px;margin:0 0 8px;font-size:13px;display:flex}.pm-audit-c{background:var(--red);color:#fff;border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:900;display:grid}.pm-audit-list{border:1px solid var(--line);background:#fbf7f2;border-radius:12px;max-height:190px;margin:0;padding:0;list-style:none;overflow-y:auto}.pm-audit-list li{border-bottom:1px solid #0000000d;flex-wrap:wrap;align-items:baseline;gap:7px;padding:7px 11px;font-size:11.5px;line-height:1.5;display:flex}.pm-audit-list li:last-child{border-bottom:none}.au-ts{color:#8a7273;white-space:nowrap;font-weight:700}.au-actor{color:var(--red);font-weight:900}.au-txt{color:#4a3a3b}.au-from{color:#a33;background:#ffe9e7;border-radius:5px;padding:1px 5px;font-style:normal}.au-to{color:#1a7a3a;background:#e6f6ec;border-radius:5px;padding:1px 5px;font-style:normal}.repbar{border:2px solid var(--red);background:linear-gradient(135deg,#fff6f5,#ffeceb);border-radius:18px;gap:10px;margin-bottom:10px;padding:13px 16px;animation:.3s both slideDown;display:grid;box-shadow:0 6px 20px #d44a4d33}.repbar-main{align-items:flex-start;gap:11px;display:flex}.repbar-tag{background:var(--red);color:#fff;white-space:nowrap;border-radius:20px;flex-shrink:0;padding:4px 12px;font-size:12px;font-weight:900}.repbar-txt{color:#5a3a3b;font-size:13px;line-height:1.55}.repbar-txt strong{color:var(--red)}.repbar-txt em{color:#8a7273;font-size:12px;font-style:normal}.repbar-quick{flex-wrap:wrap;gap:6px;display:flex}.rep-qbtn{border:1.5px solid var(--line);font:inherit;color:var(--red);cursor:pointer;background:#fff;border-radius:20px;padding:5px 12px;font-size:12px;font-weight:800;transition:background .12s,border-color .12s}.rep-qbtn:hover{background:var(--sand);border-color:var(--red)}.rep-qbtn--clear{color:#8a7273}.repbar-sel{color:#4a3a3b;font-size:12.5px}.repbar-sel strong{color:var(--red)}.rep-chips{vertical-align:middle;flex-wrap:wrap;gap:4px;margin-left:7px;display:inline-flex}.rep-chip{border:1px solid var(--line);color:var(--red);background:#fff;border-radius:20px;padding:1px 8px;font-size:10.5px;font-weight:800}.rep-chip--more{background:var(--red);color:#fff;border-color:var(--red)}.repbar-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.daybar--rep .daychip{border-style:dashed}.daychip--repsrc{cursor:default;box-shadow:0 0 0 3px #2a9d8f33;background:#e6f6f3!important;border:2px solid #2a9d8f!important}.daychip--reptgt{background:var(--red)!important;border:2px solid var(--red)!important;color:#fff!important}.daychip--reptgt .daychip-wd,.daychip--reptgt .daychip-c{color:#ffffffd9!important}.daychip--reptgt .daychip-d{color:#fff!important}.daychip-flag{text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border:1.5px solid #fff;border-radius:20px;padding:0 6px;font-size:8.5px;font-weight:900;position:absolute;top:-7px;left:50%;transform:translate(-50%)}.daychip-flag--src{color:#fff;background:#2a9d8f}.daychip-flag--tgt{background:var(--red);color:#fff;padding:0 5px;font-size:10px}.daymenu{z-index:120;border:1px solid var(--line);background:#fff;border-radius:13px;min-width:216px;padding:5px;animation:.12s both popIn;overflow:hidden;box-shadow:0 10px 30px #00000038}.daymenu-head{color:#8a7273;border-bottom:1px solid var(--line);margin-bottom:4px;padding:7px 10px 8px;font-size:11px;font-weight:900}.daymenu-item{text-align:left;width:100%;font:inherit;color:#3a2a2b;cursor:pointer;background:0 0;border:none;border-radius:9px;padding:8px 10px;font-size:12.5px;font-weight:700;transition:background .1s;display:block}.daymenu-item:hover:not(:disabled){background:var(--sand)}.daymenu-item:disabled{opacity:.4;cursor:default}.daymenu-item--danger{color:#c22}@keyframes popIn{0%{opacity:0;transform:scale(.96)translateY(-4px)}to{opacity:1;transform:none}}.slot--drag{cursor:grab}.slot--drag:active{cursor:grabbing}.slot--dragging{opacity:.32;transform:scale(.93)}.nl-form{flex-direction:column;gap:11px;margin-top:14px;display:flex}.nl-field{flex-direction:column;gap:4px;display:flex}.nl-field>span{color:#7a5f60;font-size:11.5px;font-weight:800}.nl-field input,.nl-field select{border:1.5px solid var(--line);font:inherit;color:inherit;background:#fff;border-radius:11px;padding:9px 11px;font-size:13.5px}.nl-field input:focus,.nl-field select:focus{border-color:var(--red);outline:none;box-shadow:0 0 0 3px #d44a4d21}.nl-err{color:var(--red-dark);margin:0;font-size:12.5px;font-weight:800}.pay-toolbar{flex-wrap:wrap;align-items:center;gap:8px;padding:0 22px 10px;display:flex}.pay-toolbar .btn{padding:7px 12px;font-size:12.5px}.pay-hint{color:#8a6c6e;font-size:11.5px;font-style:italic}.pay-table--edit th,.pay-table--edit td{padding:4px 8px}.pay-in{border:1.5px solid var(--line);width:100%;font:inherit;color:inherit;background:#fffdfb;border-radius:8px;padding:5px 8px;font-size:12.5px}.pay-in.num{text-align:right;font-variant-numeric:tabular-nums;max-width:104px}.pay-in--name{min-width:120px}.pay-in:focus{border-color:var(--red);background:#fff;outline:none;box-shadow:0 0 0 3px #d44a4d1f}.pay-del{color:#e5484d;width:24px;height:24px;font:inherit;cursor:pointer;background:#fff;border:1.5px solid #e5484d;border-radius:50%;place-items:center;padding:0;font-size:15px;font-weight:900;line-height:1;transition:background .12s,color .12s;display:grid}.pay-del:hover{color:#fff;background:#e5484d}.app--dense .line-card{margin-bottom:10px;padding:9px 12px 11px}.app--dense .line-head{margin-bottom:8px}.app--dense .line-head h2{font-size:15px}.app--dense .line-head p,.app--dense .line-legend{display:none}.app--dense .lblock{min-width:60px;padding:6px 4px 5px}.app--dense .lblock-name{display:none}.app--dense .ubs-section{margin-bottom:10px;padding:10px 12px 11px}.app--dense .ubs-section-head{margin-bottom:8px}.app--dense .ubs-section-sub{display:none}.app--dense .ubs-grid{grid-template-columns:repeat(7,1fr);gap:7px}.app--dense .ub-card{border-radius:13px;padding:7px 7px 8px}.app--dense .ub-header{margin:4px 0 6px}.app--dense .ub-num-badge{width:22px;height:22px;font-size:11px}.app--dense .ub-name{font-size:12px}.app--dense .ub-landmark{display:none}.app--dense .cap-btn{width:19px;height:19px;font-size:12px}.app--dense .cap-num{min-width:24px;font-size:11px}.app--dense .bar{margin-bottom:7px}.app--dense .slots{grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:4px}.app--dense .slot{border-radius:10px;padding:5px 3px 4px}.app--dense .slot--filled img{width:26px;height:26px}.app--dense .plus{width:20px;height:20px;font-size:13px}.app--dense .slot-name{max-width:58px;font-size:8.5px}.app--dense .pool{padding:10px 12px 11px}.app--dense .pool-item{gap:5px;padding:3px 9px 3px 3px;font-size:11.5px}.app--dense .pool-item img{width:22px;height:22px}.app--dense .pool-list{gap:5px}.app--dense .pool-tip{display:none}.app--dense .daybar{padding-bottom:6px}.app--dense .daychip{min-width:40px;padding:5px 5px 4px}.app--dense .daychip-d{font-size:15px}@media (width>=1600px){.app--dense .ubs-grid{grid-template-columns:repeat(9,1fr)}}@media (width<=1100px){.app--dense .ubs-grid{grid-template-columns:repeat(5,1fr)}}@media (width<=760px){.app--dense .ubs-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=1280px){.app{padding:16px 14px 24px}.brand h1{font-size:22px}.btn{padding:8px 12px;font-size:12px}.stat{min-width:62px;padding:6px 10px}.stat-num{font-size:17px}.topbar{grid-template-columns:auto 1fr;grid-template-areas:"brand stats""actions actions";padding:12px 16px}.stats{justify-content:flex-end}.actions{justify-content:flex-start}}@media (width<=900px){.topbar{grid-template-columns:1fr;grid-template-areas:"brand""stats""actions"}.stats,.actions{justify-content:flex-start}.pool-legend{flex-wrap:wrap;row-gap:4px;margin-left:0}.pool-tip{display:none}}@media (width<=600px){.ub-header{flex-wrap:wrap}.cap-control{gap:3px;padding:2px 4px}.cap-btn{width:20px;height:20px;font-size:12px}.cap-num{min-width:24px;font-size:11px}.ub-landmark{max-width:96px}.pm-grid{grid-template-columns:1fr}.repbar{padding:11px 13px}.repbar-main{flex-direction:column;gap:7px}.repbar-actions{justify-content:stretch}.repbar-actions .btn{flex:1}.pay-dates{max-width:none}.line-end{display:none}.lblock{min-width:64px}.lblock-name,.monthbar-year{display:none}.monthchip{flex:none;min-width:46px}.pm-toolbar,.pay-tabs,.pm-audit{padding-left:16px;padding-right:16px}}@media (width<=500px){.app{padding:12px 8px 20px}.pool{padding:12px 10px}.pool-item{padding:5px 10px 5px 5px;font-size:12px}.pool-item img{width:26px;height:26px}.alone-bar{padding:9px 11px;font-size:11.5px}}@media (height<=820px){.app{padding-top:12px}.topbar{margin-bottom:12px;padding:10px 16px}.line-card,.ubs-section{margin-bottom:12px}.daybar{padding-bottom:8px}}@media (height<=680px){.sun-deco{width:110px;height:110px}}.rec-page{max-width:980px;margin:0 auto;padding:24px 18px 60px}.rec-head h1{color:var(--red);margin:0 0 6px;font-size:24px}.rec-head p{color:#5a4647;margin:0 0 12px;font-size:13.5px;line-height:1.6}.rec-head code{background:var(--sand);border-radius:6px;padding:1px 6px;font-size:12.5px}.rec-card{border:1px solid var(--line);background:#fff;border-radius:16px;margin-top:16px;padding:16px 18px;box-shadow:0 4px 14px #0000000f}.rec-card h2{color:var(--red);margin:0 0 10px;font-size:15px}.rec-p{color:#5a4647;margin:0 0 10px;font-size:13px;line-height:1.6}.rec-key{color:#8a7273;margin-top:2px;font-family:ui-monospace,monospace;font-size:10.5px}.rec-dim{color:#8a7273;font-size:12px}.rec-empty{color:#6b3a3a;background:#fff4f2;border:1px solid #f3b7b4;border-radius:12px;margin:10px 0 0;padding:12px 14px;font-size:13px;line-height:1.6}.rec-note{color:#1a5c3a;background:#eef9f4;border:1px solid #9ad3b8;border-radius:12px;margin-top:14px;padding:11px 14px;font-size:13px;font-weight:700}.rec-actions{flex-wrap:wrap;gap:10px;margin-bottom:10px;display:flex}.rec-grid{grid-template-columns:repeat(auto-fill,minmax(58px,1fr));gap:6px;display:grid}.rec-day{cursor:help;background:#eef9f4;border:1px solid #9ad3b8;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:7px 4px;display:flex}.rec-day--low{background:#fff8ec;border-color:#e9c46a}.rec-day--0{border-color:var(--line);color:#a08f90;background:#faf6f6}.rec-day-k{letter-spacing:.02em;font-size:10px;font-weight:800}.rec-day-n{font-size:14px;font-weight:900}@media (width<=600px){.rec-page{padding:16px 12px 48px}}.syncdot{white-space:nowrap;letter-spacing:.02em;border:1.5px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:5px 11px;font-size:11px;font-weight:800;display:inline-flex}.syncdot--ok{color:#1a5c3a;background:#eef9f4;border-color:#9ad3b8}.syncdot--a-ligar{background:var(--sand);border-color:var(--line);color:#735a5b}.syncdot--offline{color:#a6302f;background:#fff4f2;border-color:#f3b7b4}.ub--fechado{opacity:.55;border-color:var(--line);background:repeating-linear-gradient(45deg,#faf6f6,#faf6f6 8px,#f2ecec 8px 16px)}.ub--fechado .ub-stripe{background:#c9bfc0}.badge-fechado{color:#fff;background:#8a7273}.lblock--fechado{filter:grayscale()brightness(1.25);opacity:.6;border-style:dashed;border-color:#b6a9aa}.syncwrap{order:99;margin-left:auto;position:relative}.syncdot{cursor:pointer;font:inherit}.syncdot:hover{filter:brightness(.96)}.syncpanel{z-index:9999;border:1px solid var(--line);text-align:left;background:#fff;border-radius:14px;width:min(320px,100vw - 16px);padding:13px 15px;animation:.14s both syncIn;box-shadow:0 14px 40px #00000047}@keyframes syncIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.syncpanel-t{color:#4a3839;margin:0 0 6px;font-size:12.5px;line-height:1.55}.syncpanel-s{color:#8a7273;margin:0 0 10px;font-size:11px;font-weight:700}.syncpanel-b{flex-wrap:wrap;gap:7px;margin-bottom:9px;display:flex}.syncpanel-b .btn{padding:7px 11px;font-size:11.5px}.syncpanel-n{border-top:1px solid var(--red-soft);color:#8a7273;margin:0;padding-top:9px;font-size:10.5px;line-height:1.5}.boot{z-index:9999;background:linear-gradient(#eaf6fb 0%,#fdf6ec 100%);place-items:center;display:grid;position:fixed;inset:0}.boot-card{background:#fff;border-radius:20px;flex-direction:column;align-items:center;gap:14px;padding:30px 38px;display:flex;box-shadow:0 18px 44px #143c5024}.boot-card p{color:#4a6b7c;margin:0;font-size:14px;font-weight:700}.boot-card svg{animation:2.6s linear infinite boot-spin}@keyframes boot-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.boot-card svg{animation:none}}.boot-warn{z-index:60;text-align:center;color:#8a5a1a;background:#fff4e0;border-bottom:1px solid #f0d9ae;padding:7px 14px;font-size:12.5px;font-weight:700;position:sticky;top:0}
