/* Shared light-theme controls adapted from Безумно.Команда. */
.mobile-nav-indicator{display:none}
@media(max-width:900px){
 .mobile-nav{--active-nav-index:0;position:fixed;z-index:20;display:grid;grid-template-columns:repeat(var(--nav-count,5),minmax(0,1fr));left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right));bottom:max(14px,calc(clamp(44px,12vw,52px) - 30px),calc(env(safe-area-inset-bottom) - 12px));height:72px;min-height:72px;padding:8px;border:1px solid #ded2c9;border-radius:36px;background:rgba(255,250,246,.96);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 15px 40px #0008;isolation:isolate}
 .mobile-nav>button{position:relative;z-index:2;display:grid;grid-template-rows:24px 12px;align-content:center;justify-items:center;min-width:0;width:100%;height:100%;padding:0;gap:4px;line-height:1;color:#766f69;font-size:10px;font-weight:600;outline:none;border-radius:30px}
 .mobile-nav>button.active{color:#d44d32}
 .mobile-nav>button.active:before{display:none}
 
 .mobile-nav>button svg{width:24px;height:24px;flex:0 0 24px}
 .mobile-nav>button>span{height:12px;display:flex;align-items:center;justify-content:center;white-space:nowrap}
 .mobile-nav-indicator{display:block;position:absolute;z-index:1;top:6px;bottom:6px;left:8px;width:calc((100% - 16px)/var(--nav-count,5));border:1px solid rgba(91,72,59,.2);border-radius:30px;background:linear-gradient(180deg,rgba(218,211,205,.98),rgba(235,227,220,.96)),rgba(70,56,46,.1);box-shadow:inset 0 1px 0 #fffffff5,inset 0 -1px 0 #5946392e,0 7px 18px #45302233;transform:translate3d(calc(var(--active-nav-index)*100%),0,0);transition:transform 440ms cubic-bezier(.22,1,.36,1);transform-origin:center;pointer-events:none;will-change:transform}
 .mobile-nav-indicator:after{content:'';position:absolute;inset:5px 10px;border-radius:inherit;background:#ffffff0f;filter:blur(8px)}
 .content{padding-bottom:calc(116px + env(safe-area-inset-bottom))}
 #toast{bottom:calc(105px + env(safe-area-inset-bottom))}
}
/* Desktop dialogs share the source panel's light surface and type scale. */
.modal-backdrop{background:rgba(44,31,24,.28);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:sheet-backdrop-in 220ms ease-out both}
.modal,.modal.wide{position:relative;width:min(620px,100%);max-height:min(780px,88dvh);display:flex;flex-direction:column;overflow:hidden;padding:0;border:1px solid #ded2c9;border-radius:28px;background:#fffaf6;color:#1d1713;box-shadow:0 12px 32px #37251b24,0 2px 6px #37251b0f;outline:none;transform:translate3d(0,var(--sheet-drag,0px),0);animation:modal-in 220ms ease-out;transition:transform 280ms cubic-bezier(.22,1,.36,1)}
.sheet-drag-zone{position:relative;flex:none;padding:34px 34px 0}
.sheet-drag-zone>header{margin:0;padding-right:44px}
.sheet-origin{display:block;color:#d44d32;font-size:12px;font-weight:800;line-height:1.4;text-transform:uppercase;letter-spacing:.02em}
.sheet-drag-zone h2{font-size:28px;font-weight:800;line-height:1.2;letter-spacing:-.04em;margin:7px 0 26px;overflow-wrap:anywhere}
.sheet-close{position:absolute;right:22px;top:22px;width:38px;height:38px;border:1px solid #ded2c9;border-radius:50%;background:#fffaf6;color:#766f69}
.sheet-close:hover{background:#f4ede5}
.sheet-handle{display:none}
.sheet-content{min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:0 34px 24px;scroll-padding-bottom:24px;-webkit-overflow-scrolling:touch}
.sheet-content form>.muted{font-size:14px;line-height:1.5;margin-bottom:22px}
.sheet-content :is(input,select,textarea){font-size:16px!important;line-height:1.4;font-weight:500}
.sheet-content form label:not(.choice){font-size:13px;line-height:1.4}
.sheet-content .prose{font-size:14px;line-height:1.5}
.sheet-content .prose>p:first-child{margin-top:0}
.sheet-footer{position:relative;flex:none;z-index:2;padding:16px 34px 24px;border-top:1px solid #ded2c9;background:#fffaf6}
.sheet-footer .modal-actions{padding:0;margin:0;display:flex;align-items:center;gap:16px}
.sheet-footer :is(.primary,.danger-button){flex:1;min-height:56px;border-radius:24px;font-size:15px;font-weight:800}
.sheet-footer .primary{box-shadow:0 8px 22px #e4563a3d}
.sheet-footer .text-button{margin-right:0;flex:none}
.modal-backdrop[data-state=closing]{animation:sheet-backdrop-out 180ms ease-in both;pointer-events:none}
.modal-backdrop[data-state=closing]>.modal{transition:none!important;animation:modal-out 180ms ease-in both}
html.modal-open,body.modal-open{overflow:hidden;overscroll-behavior:none}
@media(max-width:900px){
 .modal-backdrop{inset:0;height:auto;display:flex;align-items:flex-end;justify-content:center;padding:0}
 .modal,.modal.wide{width:100%;height:auto;max-height:min(calc(var(--sheet-viewport-height,100dvh)*.72),calc(var(--sheet-viewport-height,100dvh) - max(8px,env(safe-area-inset-top))));min-height:0;border-left:0;border-right:0;border-bottom:0;border-radius:26px 26px 0 0;padding:0;transform-origin:bottom center;animation:sheet-in 420ms cubic-bezier(.22,1,.36,1);transition:transform 280ms cubic-bezier(.22,1,.36,1),height 250ms,max-height 250ms}
 .modal.expanded{height:calc(var(--sheet-viewport-height,100dvh) - max(8px,env(safe-area-inset-top)));max-height:calc(var(--sheet-viewport-height,100dvh) - max(8px,env(safe-area-inset-top)))}
 .modal.is-resizing{max-height:calc(var(--sheet-viewport-height,100dvh) - max(8px,env(safe-area-inset-top)));transition-property:transform}
 .modal.is-dragging{animation:none;transition:none;will-change:transform}
 .sheet-drag-zone{padding:16px max(20px,env(safe-area-inset-right)) 0 max(20px,env(safe-area-inset-left));touch-action:none;user-select:none;-webkit-user-select:none}
 .sheet-drag-zone>header{padding-right:44px}
 .sheet-drag-zone h2{margin:6px 0 26px;font-size:26px}
 .sheet-close{top:23px;right:22px}
 .sheet-handle{width:100%;height:24px;display:block;margin:-9px 0 6px;padding:0;border:0;background:none;touch-action:none;border-radius:8px}
 .sheet-handle span{width:44px;height:5px;display:block;margin:auto;border-radius:99px;background:#b9aaa0}
 
 .sheet-content{flex:0 1 auto;padding:0 max(22px,env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) max(22px,env(safe-area-inset-left));scroll-padding-bottom:calc(24px + env(safe-area-inset-bottom))}
 .modal:has(.sheet-footer) .sheet-content{padding-bottom:24px}
 .sheet-footer{padding:16px max(20px,env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}
 .sheet-footer .modal-actions{gap:12px}
 .modal-backdrop[data-state=closing]>.modal{animation:sheet-out 180ms ease-in both}
}
@supports(-webkit-touch-callout:none){@media(max-width:900px){.modal-backdrop{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}}}
@keyframes sheet-backdrop-in{from{background-color:transparent}to{background-color:var(--sheet-dim,rgba(44,31,24,.28))}}
@keyframes sheet-backdrop-out{from{background-color:var(--sheet-dim,rgba(44,31,24,.28))}to{background-color:transparent}}
@keyframes sheet-in{from{transform:translate3d(0,min(18vh,150px),0)}to{transform:translate3d(0,0,0)}}
@keyframes sheet-out{from{transform:translate3d(0,var(--sheet-drag,0px),0)}to{transform:translate3d(0,100%,0)}}
@keyframes modal-out{from{opacity:1}to{opacity:0;transform:translateY(10px)}}
@media(prefers-reduced-motion:reduce){.mobile-nav-indicator,.modal{transition:none!important}.modal-backdrop,.modal{animation:none!important}}
.import-help{margin:0 0 22px;padding:16px 18px;background:#f4ede5;border:1px solid #e6dcd4;border-radius:16px;font-size:13px;line-height:1.65;color:#76695e}
.import-help b{font-weight:650;color:#55483f}.import-help ol{padding-left:19px;margin:10px 0 0}.import-help li+li{margin-top:8px}.import-help p+p{margin-top:10px}.import-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:20px}.import-stats>div{border:1px solid #e6dcd4;border-radius:14px;background:#fff;padding:13px 12px}.import-stats b{display:block;font-size:27px;font-weight:650}.import-stats span{display:block;font-size:11px;line-height:1.4;color:#827868}.import-periods{max-height:220px;overflow-y:auto;overscroll-behavior:contain;border:1px solid #e6dcd4;border-radius:12px;padding:12px 14px;margin-top:12px}.import-periods .check-label:last-child{margin-bottom:0}.import-periods .check-label span{overflow-wrap:anywhere}.sheet-content .form-row .check-label{font-size:12px;margin-bottom:10px}.sheet-content .import-help ol{font-size:13px}.sheet-content .import-help p{font-size:13px;line-height:1.65}.sheet-footer .modal-actions .text-button{font-size:12px}.sheet-footer .primary{padding-inline:16px}
.modal.is-ready{animation:none}
@media(max-width:900px){.modal.expanded .sheet-content{flex:1 1 auto}}
.modal{letter-spacing:.05em}.sheet-drag-zone h2{letter-spacing:.04em}.sheet-origin{letter-spacing:.05em}

@media(max-width:900px){.modal.is-dragging .sheet-content{flex:1 1 auto}}
