@font-face{font-family:BNazanin;src:url(/fonts/BNazanin.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:BNazanin;src:url(/fonts/BNazanin-Bold.ttf) format("truetype");font-weight:700 900;font-display:swap}:root{font-family:BNazanin,DejaVu Sans,sans-serif;color:#172a42;background:#f5f6f8;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}a{text-decoration:none}.shell{min-height:100vh;display:flex}.sidebar{width:225px;flex:none;background:#102848;color:#fff;display:flex;flex-direction:column;padding:22px 15px;position:sticky;top:0;height:100vh;z-index:20}.brand{display:flex;align-items:center;gap:10px;padding:0 7px 24px;border-bottom:1px solid #ffffff25;font-size:13px}.brand img{width:52px;height:40px;object-fit:contain;background:#fff;border-radius:5px}.sidebar nav{display:grid;gap:6px;margin-top:22px}.sidebar nav button,.sidebar-bottom button{border:0;background:transparent;color:#d8e0ec;display:flex;align-items:center;gap:11px;padding:10px 12px;text-align:right;border-radius:8px;font-size:12px}.sidebar nav button:hover,.sidebar nav button.active{background:#ffffff1d;color:#fff}.sidebar nav button.active{border-right:3px solid #c7a24e}.sidebar-bottom{margin-top:auto;border-top:1px solid #ffffff25;padding-top:15px;display:grid;gap:5px;font-size:12px}.sidebar-bottom span{padding:0 12px}.main{flex:1;min-width:0}.topbar{height:65px;background:#fff;border-bottom:1px solid #e7e8ed;display:flex;align-items:center;justify-content:space-between;padding:0 30px;font-size:12px;font-weight:700;color:#102848}.topbar img{width:42px;height:42px;object-fit:contain}.content{max-width:1320px;margin:auto;padding:30px 32px 75px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.page-head small{color:#a77c19;font-weight:800;font-size:11px}.page-head h1{font-size:27px;margin:2px 0 3px;color:#102848}.page-head p{color:#76849a;font-size:12px;margin:0}.primary,.secondary,.small-primary{border:1px solid #102848;background:#102848;color:#fff;border-radius:8px;padding:9px 16px;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:39px}.primary:hover,.small-primary:hover{background:#193b68}.secondary{background:#fff;color:#102848;border-color:#c6ceda}.secondary:hover{background:#f5f7fa}.small-primary{padding:5px 10px;min-height:28px;font-size:10px}.ghost{border:0;background:none;color:#a77c19;display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700}.ghost:hover{text-decoration:underline}.head-actions,.bottom-actions{display:flex;align-items:center;gap:8px}.head-actions select{background:#fff;color:#102848;border:1px solid #c6ceda;border-radius:8px;padding:8px;min-height:39px}.search{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e1e5eb;border-radius:10px;padding:0 12px;margin-bottom:15px;color:#8a99ab}.search input{border:0;outline:0;flex:1;padding:12px 0;background:none;font-size:12px}.report-list,.calendar,.card{background:#fff;border:1px solid #e0e5ed;border-radius:12px;overflow:hidden;box-shadow:0 3px 12px #10284808}.report-row{display:flex;align-items:center;gap:14px;width:100%;border:0;border-bottom:1px solid #edf0f3;background:#fff;padding:15px 19px;text-align:right;color:#102848}.report-row:hover{background:#f8fafc}.report-row>span{flex:1;display:grid;gap:3px}.report-row strong{font-size:12px}.report-row small{color:#8a97a7;font-size:10px}.empty{text-align:center;color:#8795a8;padding:45px;font-size:12px}.calendar{padding:18px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.calendar-toolbar h2{font-size:18px;margin:0}.calendar-toolbar button{border:1px solid #dce3ea;background:#fff;border-radius:7px;color:#102848;width:34px;height:34px;display:grid;place-items:center}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.week{text-align:center;background:#edf1f6;color:#6b7c92;font-size:11px;font-weight:700;padding:10px 0}.day,.calendar-empty{min-height:75px;background:#fff;border:1px solid #edf0f3;color:#213954;text-align:right;padding:10px;font-size:13px;font-weight:700;position:relative}.day:hover{background:#f2f6fb}.day.today{color:#a77c19}.day.saved{background:#f9f5e9}.day i{width:6px;height:6px;background:#b68b2c;border-radius:50%;position:absolute;bottom:12px;right:12px}.editor-grid{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:20px;align-items:start}.sections{display:grid;gap:15px}.card{padding:20px;overflow:visible}.section-head{display:flex;align-items:center;gap:10px;margin-bottom:17px}.section-head span{width:31px;height:31px;display:grid;place-items:center;border-radius:7px;background:#f3ead6;color:#906c1c;font-weight:800;font-size:12px}.section-head h2{font-size:15px;margin:0;color:#102848}.fields{display:grid;gap:12px}.fields.three{grid-template-columns:repeat(3,minmax(0,1fr))}.fields.four{grid-template-columns:repeat(4,minmax(0,1fr))}.field{display:flex;flex-direction:column;gap:5px;min-width:0;color:#43556e;font-weight:700;font-size:11px}.field input,.field textarea,.card textarea,table input,.signature-box input[type=file],.head-actions select{border:1px solid #dbe1e9;background:#fff;border-radius:7px;outline:none;color:#172a42}.field input,.field textarea,table input{width:100%;min-width:0;padding:8px 9px;font-size:11px}.field input:focus,.card textarea:focus,table input:focus{border-color:#b28b35;box-shadow:0 0 0 3px #b28b3521}.field input:disabled{background:#f3f5f7;color:#697b91}.table-scroll,.cabin-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;direction:rtl}th,td{border:1px solid #e0e5eb;padding:7px;text-align:center;font-size:10px}thead th{background:#e9edf3;color:#102848;font-weight:800}tbody th{background:#f8fafc;color:#102848}table input{text-align:center;min-width:82px;padding:6px}.add-row{margin-top:12px}.icon{border:0;background:none;color:#102848;padding:4px}.danger-text{color:#a34444}.notes{width:100%;padding:12px;font-size:12px;resize:vertical;min-height:85px}.cabin-table{width:max-content;min-width:100%;table-layout:fixed}.cabin-table th{width:105px;min-width:105px;white-space:nowrap}.cabin-table td{width:46px;min-width:46px;padding:4px}.cabin-table input{min-width:0;width:100%;padding:5px 2px;font-size:10px}.hint{color:#8a96a5;font-size:10px;margin:8px 0 0}.signature-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.signature-box{border:1px dashed #c6ceda;border-radius:8px;padding:14px;min-width:0}.signature-box h3{font-size:12px;margin:0 0 12px}.signature-box input[type=file]{width:100%;font-size:10px;padding:7px}.signature-box details{margin-top:8px}.signature-box summary{display:flex;align-items:center;gap:5px;cursor:pointer;color:#936c1c;font-size:10px}.signature-preview{display:flex;align-items:center;gap:8px;margin-bottom:8px}.signature-preview img{width:100px;height:50px;object-fit:contain}.signature-pad{margin-top:8px}.signature-pad canvas{width:100%;height:110px;border:1px dashed #b9c5d4;background:#fff;touch-action:none}.signature-actions{display:flex;justify-content:flex-end;gap:8px}.bottom-actions{justify-content:space-between}.danger{border:1px solid #e8c6c6;color:#a34444;background:#fff;border-radius:8px;padding:9px 13px;display:inline-flex;align-items:center;gap:7px;font-size:11px}.preview{position:sticky;top:85px;background:#fff;border:1px solid #e0e5ed;border-radius:12px;padding:10px}.preview img{width:100%;display:block}.preview p{font-size:10px;color:#74839a;line-height:1.8;margin:10px 4px 3px}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.account-grid .field{margin-bottom:15px}.error{background:#fff0f0;color:#9a3838;border:1px solid #f0d0d0;border-radius:8px;padding:10px;font-size:11px}.banner{margin-bottom:15px}.toast{position:fixed;left:25px;bottom:20px;background:#102848;color:#fff;padding:10px 15px;border-radius:8px;font-size:11px;z-index:30}.loading{height:100vh;display:grid;place-items:center;color:#102848}.login-screen{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;direction:rtl}.login-brand{background:#102848;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:50px}.login-brand img{width:min(340px,80%);background:#fff;border-radius:14px;padding:15px}.login-brand h1{font-size:28px;margin:30px 0 5px}.login-brand p{color:#d1d9e5;font-size:13px}.login-card{align-self:center;justify-self:center;width:min(380px,90%);display:grid;gap:14px}.login-card>svg{color:#a77c19}.login-card h2{font-size:22px;margin:0 0 8px}.login-card .full{width:100%;margin-top:4px}.mobile-menu,.backdrop{display:none}@media(max-width:1050px){.editor-grid{grid-template-columns:1fr}.preview{display:none}.fields.four{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.sidebar{position:fixed;right:-240px;transition:right .2s}.sidebar.open{right:0}.backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0007;border:0;z-index:19}.mobile-menu{display:block;border:0;background:none;color:#102848}.topbar{padding:0 16px}.content{padding:24px 15px}.page-head{align-items:flex-start;flex-direction:column}.page-head h1{font-size:23px}.fields.three,.fields.four,.signature-grid,.account-grid{grid-template-columns:1fr}.head-actions{flex-wrap:wrap}.day,.calendar-empty{min-height:50px;padding:5px}.week{font-size:9px}.login-screen{grid-template-columns:1fr}.login-brand{display:none}.login-card{min-height:100vh;align-content:center}.cabin-table td{width:40px;min-width:40px}}.editor-grid{grid-template-columns:minmax(0,1fr)}.jalali-picker{position:relative;min-width:0}.date-trigger{width:100%;min-height:35px;display:flex;align-items:center;justify-content:flex-start;gap:8px;border:1px solid #dbe1e9;border-radius:7px;background:#fff;color:#172a42;padding:6px 9px;font-size:15px}.date-popover{position:absolute;right:0;top:calc(100% + 5px);z-index:50;width:290px;background:#fff;border:1px solid #cbd3df;box-shadow:0 12px 30px #10284824;border-radius:10px;padding:10px}.date-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px;color:#102848;font-size:16px}.date-nav button{border:0;background:#f3f5f8;border-radius:6px;width:28px;height:28px;display:grid;place-items:center;color:#102848}.date-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center}.date-days span{font-size:12px;color:#718096;padding:5px 0}.date-days button{border:0;background:#fff;border-radius:6px;height:29px;color:#1b3555;font-size:14px}.date-days button:hover,.date-days button.chosen{background:#102848;color:#fff}.time-control{display:flex;align-items:center;direction:ltr;min-width:110px;position:relative;border:1px solid #dbe1e9;border-radius:7px;background:#fff}.time-control input,.time-control input:focus{border:0;box-shadow:none;text-align:center;min-width:0;width:76px;flex:1;padding:6px 3px;font-family:Arial,sans-serif;font-size:13px}.time-control button{border:0;background:none;color:#a77c19;padding:4px 7px;display:grid;place-items:center}.time-control.invalid{border-color:#b44b48;background:#fff6f5}.time-popover{position:fixed;z-index:100;background:#fff;border:1px solid #cbd3df;border-radius:8px;box-shadow:0 10px 25px #10284824;display:flex;align-items:center;gap:4px;padding:8px}.time-popover select{font-family:Arial,sans-serif;font-size:13px;padding:5px;border:1px solid #dbe1e9;border-radius:5px;background:#fff}.time-popover button{white-space:nowrap;color:#a77c19;background:none;border:0;padding:4px;font-size:13px}.wind-control{display:flex;align-items:center;gap:0;border:1px solid #dbe1e9;border-radius:7px;overflow:hidden;background:#fff}.wind-control span{background:#f3ead6;color:#102848;padding:7px 9px;font-family:Arial,sans-serif;font-size:12px;white-space:nowrap}.wind-control input{border:0;box-shadow:none;min-width:0;flex:1;text-align:left;font-family:Arial,sans-serif;font-size:13px;padding:7px}.duration-control{min-width:0;width:100%}.field,.page-head p,.report-row strong,.report-row small,.sidebar nav button,.sidebar-bottom,.topbar,.section-head h2{font-size:15px}.page-head h1{font-size:31px}.field input,.field textarea,.card textarea,table input{font-size:14px}.section-head h2{font-size:18px}.calendar .day{font-size:16px}.card th,.card td{font-size:13px}.primary,.secondary,.ghost,.danger{font-size:15px}.date-days button:focus-visible,.date-trigger:focus-visible,.time-control:focus-within,.wind-control:focus-within{outline:2px solid #b28b35;outline-offset:2px}.time-control input,.time-popover select,.wind-control input{font-family:BNazanin,DejaVu Sans,sans-serif;font-size:16px}.wind-control input{text-align:right}.cabin-scroll{scrollbar-color:#b28b35 #eef1f5;scrollbar-width:thin;scroll-padding-inline:110px}.cabin-scroll:focus-visible{outline:2px solid #b28b35;outline-offset:3px}.cabin-table th{position:sticky;right:0;z-index:2;box-shadow:-3px 0 7px #10284813}@media(max-width:700px){.shell{background:#f3f5f8}.topbar{height:60px;padding:0 14px;gap:12px;box-shadow:0 2px 10px #1028480a}.topbar span{flex:1;font-size:16px}.topbar img{width:48px;height:46px}.mobile-menu{width:38px;height:38px;border-radius:9px;background:#f1f3f6;display:grid;place-items:center;flex:none}.content{padding:20px 12px 38px}.page-head{gap:13px;margin-bottom:18px}.page-head h1{font-size:26px}.head-actions{display:grid;grid-template-columns:auto 1fr auto;width:100%;gap:8px}.head-actions .secondary,.head-actions .primary{white-space:nowrap}.head-actions .primary:only-child{grid-column:1/-1}.sections{gap:13px}.card{padding:16px;border-radius:14px;box-shadow:0 6px 22px #1028480a}.section-head{margin-bottom:14px}.section-head h2{font-size:18px}.field{font-size:15px;gap:6px}.field input,.date-trigger,.wind-control,.time-control{min-height:44px}.date-popover{width:min(300px,calc(100vw - 38px));max-width:calc(100vw - 38px)}.table-scroll{overflow:visible}.shift-table,.stop-table,.shift-table tbody,.stop-table tbody,.shift-table tr,.stop-table tr{display:block;width:100%}.shift-table thead,.stop-table thead{display:none}.shift-table tr,.stop-table tr{border:1px solid #dce3ed;border-radius:11px;padding:11px;margin-bottom:11px;background:#fbfcfe;box-shadow:0 2px 8px #10284808}.shift-table td,.stop-table td,.stop-table tbody th{border:0;display:grid;grid-template-columns:minmax(90px,42%) minmax(0,1fr);align-items:center;gap:8px;padding:6px 1px;text-align:right;min-height:45px}.shift-table td:before,.stop-table td:before{font-weight:700;color:#43556e;font-size:14px}.shift-table td:nth-child(1):before{content:"سانس"}.shift-table td:nth-child(2):before{content:"خروج از پارکینگ"}.shift-table td:nth-child(3):before{content:"شروع به کار دستگاه"}.shift-table td:nth-child(4):before{content:"بهره برداری · شروع"}.shift-table td:nth-child(5):before{content:"بهره برداری · پایان"}.shift-table td:nth-child(6){display:flex;justify-content:flex-end;border-top:1px solid #e7ecf2;margin-top:6px}.shift-table td:nth-child(6):before{content:"حذف سانس";margin-left:auto}.stop-table tbody th{display:block;background:none;color:#102848;font-size:17px;border-bottom:1px solid #e7ecf2;margin-bottom:5px}.stop-table tbody th:before{content:"ردیف ";font-size:13px;color:#718096}.stop-table td:nth-child(2):before{content:"ساعت"}.stop-table td:nth-child(3):before{content:"مدت توقف"}.stop-table td:nth-child(4):before{content:"توضیحات"}.shift-table input,.stop-table input{min-width:0;min-height:41px;width:100%;font-size:16px}.cabin-scroll{margin-inline:-16px;padding-inline:16px;padding-bottom:8px}.cabin-table th{width:98px;min-width:98px}.cabin-table td{width:46px;min-width:46px}.cabin-table input{min-height:40px;font-size:15px}.hint{font-size:13px;line-height:1.5}.signature-box{padding:13px}.signature-box input[type=file]{font-size:13px;max-width:100%}.bottom-actions{display:flex;gap:10px;flex-wrap:wrap}.bottom-actions .primary{flex:1}.login-screen{grid-template-columns:1fr;align-content:start;background:linear-gradient(#102848 0,#102848 185px,#f3f5f8 185px)}.login-brand{display:flex;min-height:185px;padding:16px;justify-content:flex-start}.login-brand img{width:130px;max-height:90px;padding:5px;border-radius:8px}.login-brand h1{font-size:19px;margin:8px 0 0}.login-brand p{display:none}.login-card{min-height:0;width:calc(100% - 32px);max-width:430px;padding:24px;margin:-8px auto 30px;background:#fff;border-radius:16px;box-shadow:0 14px 36px #1028481c;z-index:1}}@media(max-width:380px){.head-actions{grid-template-columns:72px 1fr}.head-actions .primary{grid-column:1/-1}.card{padding:14px}.cabin-scroll{margin-inline:-14px;padding-inline:14px}}.report-fields{border:0;padding:0;margin:0;min-width:0;display:grid;gap:15px}.report-fields:disabled{opacity:.82}.report-fields select,.field select,.workflow-actions select{border:1px solid #dbe1e9;border-radius:7px;background:#fff;color:#172a42;padding:8px;min-height:39px;min-width:0}.report-fields .field select{width:100%}.cabin-table select{width:100%;min-width:42px;border:1px solid #dbe1e9;border-radius:5px;background:#fff;padding:5px 0;text-align:center}.workflow-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:12px}.workflow-actions select{min-width:190px}.workflow-actions button{min-height:39px}.day small{display:block;font-size:11px;font-weight:400;margin-top:8px}.day.state-draft{background:#f9f5e9}.day.state-submitted{background:#e9f1fb}.day.state-approved{background:#e8f5ed}.notice-button{border:0;background:none;color:#102848;position:relative}.notice-button b,.sidebar nav b{background:#b68b2c;color:#fff;border-radius:20px;padding:0 6px;font-size:11px}.report-row.unread{background:#f7f9ff}.saved-signature{width:150px;height:75px;object-fit:contain}.signature-box p{color:#74839a}.stats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:18px}.stats-grid>div{display:grid;gap:5px;text-align:center;background:#f4f6f9;border-radius:8px;padding:12px}.stats-grid strong{font-size:24px;color:#102848}.stats-grid span{font-size:13px}.version-list{margin-top:12px}.version-list details{border:1px solid #e0e5ed;padding:10px;margin:5px 0;border-radius:7px}.version-list pre{overflow:auto;direction:ltr;text-align:left;white-space:pre-wrap;font-size:11px}@media(max-width:700px){.shift-table tbody th{display:block;background:none;border:0;border-bottom:1px solid #e7ecf2;text-align:right;font-size:17px}.shift-table td:nth-child(2):before{content:"خروج از پارکینگ"}.shift-table td:nth-child(3):before{content:"شروع به کار دستگاه"}.shift-table td:nth-child(4):before{content:"بهره‌برداری · شروع"}.shift-table td:nth-child(5):before{content:"بهره‌برداری · پایان"}.shift-table td{display:block}.shift-table td:before{display:block;margin-bottom:3px}.login-brand{min-height:245px}.login-brand img{width:100px;max-height:70px}.login-brand h1{font-size:17px;line-height:1.35}.login-brand p{display:block;font-size:12px;margin:3px 0}.stats-grid{grid-template-columns:repeat(2,1fr)}.day small{font-size:8px;margin-top:3px}}.bottom-nav,.cabin-mobile{display:none}@media(max-width:700px){html,body,#root{max-width:100%;overflow-x:clip}.shell,.main,.content,.editor-grid,.sections,.report-fields,.card{min-width:0;max-width:100%}.sidebar,.mobile-menu{display:none}.topbar,.topbar span{min-width:0}.content{padding-bottom:calc(108px + env(safe-area-inset-bottom))}.card{overflow:hidden}.table-scroll{max-width:100%}.cabin-scroll{display:none}.cabin-mobile{display:grid;gap:17px;margin-top:18px}.cabin-station h3{font-size:16px;margin:0 0 8px;color:#102848}.cabin-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.cabin-grid button{min-width:0;min-height:60px;border:1px solid #dce3ed;border-radius:9px;background:#f8fafc;color:#102848;display:grid;align-content:center;gap:2px}.cabin-grid button span{font-size:12px;color:#77869b}.cabin-grid button strong{font-size:21px;line-height:1}.report-fields:disabled .cabin-grid button{opacity:.75}.bottom-nav{position:fixed;z-index:30;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);padding:6px 4px calc(6px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #dce3ed;box-shadow:0 -4px 18px #10284814}.bottom-nav button{position:relative;min-height:53px;border:0;background:none;color:#64758b;display:grid;justify-items:center;align-content:center;gap:2px;font-size:12px}.bottom-nav button.active{color:#102848;font-weight:800}.bottom-nav button.active:before{content:"";position:absolute;top:-6px;width:38px;height:3px;border-radius:3px;background:#b68b2c}.bottom-nav b{position:absolute;top:0;right:25%;background:#b68b2c;color:#fff;border-radius:12px;padding:0 5px;font-size:10px}.more-backdrop,.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;border:0;background:#10284866;z-index:31}.more-menu{position:fixed;z-index:32;bottom:calc(72px + env(safe-area-inset-bottom));left:9px;right:9px;background:#fff;border-radius:14px;padding:8px;box-shadow:0 12px 36px #10284833;display:grid}.more-menu button{border:0;background:#fff;text-align:right;padding:12px;display:flex;align-items:center;gap:10px;color:#102848;min-height:48px}.cabin-sheet{position:fixed;z-index:42;bottom:0;left:0;right:0;max-height:min(78dvh,700px);overflow:auto;background:#fff;border-radius:18px 18px 0 0;padding:16px 16px calc(18px + env(safe-area-inset-bottom));box-shadow:0 -10px 35px #10284833}.sheet-backdrop{z-index:41}.sheet-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;font-size:17px}.sheet-head button{border:0;background:#f2f4f7;border-radius:8px;width:40px;height:40px;font-size:27px;color:#102848}.number-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.number-grid button{min-width:0;min-height:43px;border:1px solid #dce3ed;background:#f8fafc;border-radius:8px;color:#102848;font-size:17px}.number-grid button[aria-pressed=true]{background:#102848;color:#fff}.number-grid button:disabled{opacity:.35}.sheet-clear{width:100%;margin-top:13px;min-height:45px}.day,.calendar-empty{min-height:46px;padding:5px;text-align:center}.day small{display:none}.day[class*=state-]:after{content:"";display:block;width:7px;height:7px;border-radius:50%;background:#b68b2c;margin:3px auto 0}.day.state-submitted:after{background:#4b83c4}.day.state-approved:after{background:#46a46b}.calendar:after{content:"● پیش‌نویس　● ارسال‌شده　● تأییدشده";display:block;margin-top:12px;color:#64758b;font-size:12px}.head-actions .primary,.bottom-actions .primary{min-height:44px}.report-row>span{min-width:0}.report-row strong,.report-row small{overflow-wrap:anywhere}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.version-list pre{max-width:100%}.login-card .primary{min-height:48px}.date-popover{max-width:calc(100vw - 28px)}}@media(max-width:360px){.number-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.cabin-grid{gap:5px}.cabin-grid button{min-height:55px}}.mobile-save{display:none}@media(max-width:700px){.mobile-save{position:fixed;z-index:29;left:0;right:0;bottom:calc(65px + env(safe-area-inset-bottom));display:flex;gap:8px;padding:7px 12px;background:#ffffffed;border-top:1px solid #e0e5ed}.mobile-save .primary{flex:1}.mobile-save button{min-height:43px}.content:has(.report-fields){padding-bottom:calc(170px + env(safe-area-inset-bottom))}}@media(max-width:700px){.card{overflow:visible}.table-scroll,.report-list,.calendar{min-width:0;max-width:100%}.search input{min-width:0}.date-popover{z-index:25}.calendar-grid,.calendar .day,.calendar .calendar-empty{min-width:0}}.parking-time-field{display:flex;align-items:center;gap:12px;width:max-content;max-width:100%;margin-bottom:16px;color:#43556e;font-size:15px;font-weight:700}.parking-time-field .time-control{width:130px;flex:none}.cabin-table select{min-height:38px}.cabin-table td{padding:5px}.cabin-scroll{max-width:100%}@media(max-width:700px){.parking-time-field{width:100%;justify-content:flex-start;flex-wrap:wrap}.parking-time-field .time-control{min-height:44px}.cabin-mobile,.cabin-station{min-width:0}.cabin-station h3{margin-bottom:10px}.cabin-track{display:flex;align-items:stretch;min-width:0;max-width:100%;border-radius:12px;background:#edf1f5;border:1px solid #d6dfea;overflow:hidden}.track-end{flex:none;width:7px;background:repeating-linear-gradient(135deg,#b68b2c 0,#b68b2c 5px,#f4e5be 5px,#f4e5be 10px)}.cabin-grid{display:flex;flex:none;gap:7px;width:calc(100% - 14px);min-width:0;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-color:#b68b2c #dce3ed;scrollbar-width:thin;scroll-snap-type:x proximity;padding:9px 8px 12px;background:linear-gradient(90deg,#e7ebf2,#f6f8fb 14%,#f6f8fb 86%,#e7ebf2)}.cabin-grid button{flex:0 0 54px;min-width:54px;min-height:54px;scroll-snap-align:start;background:#fff;box-shadow:0 1px 3px #10284812}.cabin-grid button strong{font-size:21px}.cabin-grid:focus-visible,.cabin-grid button:focus-visible{outline:2px solid #b28b35;outline-offset:-2px}}.signature-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0b1b34b8;display:grid;place-items:center;padding:16px}.signature-dialog{width:min(920px,100%);max-height:calc(100dvh - 32px);overflow:auto;background:#fff;border-radius:16px;padding:22px;box-shadow:0 25px 70px #08162d55}.signature-dialog-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.signature-dialog-head h2{margin:0;font-size:21px;color:#102848}.signature-dialog-head p,.signature-size-hint{font-size:13px;color:#687a90;margin:3px 0 14px}.signature-close{border:0;background:#edf1f6;border-radius:8px;width:38px;height:38px;font-size:25px;color:#102848}.signature-tools{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-bottom:14px}.signature-tools fieldset{border:0;padding:0;display:flex;align-items:center;gap:9px}.signature-tools legend{float:right;margin-left:10px;font-size:13px;font-weight:700;color:#43556e}.signature-color{width:30px;height:30px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #bfc9d5}.signature-color[aria-pressed=true]{box-shadow:0 0 0 3px #b68b2c}.signature-tools label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#43556e}.signature-tools input{accent-color:#102848}.signature-board{display:block;width:100%;height:auto;aspect-ratio:8/3;background:#fff;border:1px solid #cbd5e1;border-radius:10px;touch-action:none;cursor:crosshair}.signature-dialog-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:14px}.signature-dialog-actions .primary{margin-right:auto}.signature-error{color:#9a3838;font-size:13px;margin:8px 0}.signature-size-hint{margin:10px 0 0}@media(max-width:700px){.signature-overlay{padding:8px;align-items:center}.signature-dialog{padding:15px;max-height:calc(100dvh - 16px)}.signature-board{aspect-ratio:8/3}.signature-dialog-actions .primary{width:100%;order:-1;margin:0}.signature-dialog-actions .secondary{flex:1}.signature-tools{gap:8px}}.date-days button:disabled{opacity:.25;cursor:not-allowed}.time-popover input[aria-label="ساعت مدت توقف"]{width:75px;padding:5px;border:1px solid #dbe1e9;border-radius:5px;font-size:15px}.duration-control input{width:100%}.stat-card{margin-top:16px}.stat-card h3{font-size:16px;color:#173658;margin:18px 0 8px}.stat-help,.stat-range-note{color:#64758b;font-size:14px;line-height:1.7}.stat-range-note{align-self:end;padding-bottom:8px}.stat-chart{width:100%;min-width:0;direction:ltr}.stat-chart .recharts-wrapper{font-family:BNazanin,DejaVu Sans,sans-serif}.stat-tip{direction:rtl;text-align:right;background:#fff;border:1px solid #dce3ed;border-radius:11px;box-shadow:0 10px 28px #10284825;padding:10px 14px;font-size:14px;color:#173658;max-width:290px}.stat-tip strong{display:block;margin-bottom:5px}.stat-tip p{margin:4px 0}.chart-point{cursor:pointer}.stat-stop-summary{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}.stat-stop-summary>div{display:grid;gap:6px;min-width:170px;padding:14px 18px;border-radius:12px;background:#f2f6fa;color:#173658}.stat-stop-summary strong{font-size:23px}.stat-stop-summary span{font-size:13px;color:#63758b}.stat-groups{display:flex;width:max-content;max-width:100%;overflow:auto;gap:4px;background:#edf1f5;padding:4px;border-radius:11px}.stat-groups button{border:0;background:transparent;color:#526982;padding:8px 14px;border-radius:8px;font-size:14px;white-space:nowrap}.stat-groups button.selected{background:#163a63;color:#fff;box-shadow:0 2px 7px #10284825}@media(max-width:700px){.stat-chart{margin-inline:-10px;width:calc(100% + 20px)}.stat-stop-summary>div{flex:1;min-width:130px}.stat-groups{width:100%}.stat-groups button{flex:1;padding:8px 9px}}.month-year-picker{position:relative;display:flex;align-items:center;justify-content:center;gap:4px;direction:rtl}.month-year-picker>button{width:auto;min-width:58px;height:34px;padding:3px 8px;border:1px solid #dce3ea;border-radius:7px;background:#fff;color:#102848;font-size:16px;font-weight:700}.month-year-picker>button:hover,.month-year-picker>button[aria-expanded=true]{background:#f3ead6;border-color:#c9aa62}.month-year-menu{position:absolute;top:calc(100% + 6px);right:50%;transform:translate(50%);z-index:70;width:245px;max-height:220px;overflow-y:auto;overscroll-behavior:contain;padding:8px;border:1px solid #d8e0e9;border-radius:10px;background:#fff;box-shadow:0 14px 35px #10284830;scrollbar-color:#b68b2c #eef1f5}.month-year-menu.year{display:grid;grid-template-columns:1fr;gap:2px;scroll-snap-type:y proximity}.month-year-menu.month{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;width:285px;max-width:calc(100vw - 34px)}.month-year-menu button{width:100%;height:36px;border:0;border-radius:7px;background:#f7f9fb;color:#102848;font-size:15px;scroll-snap-align:center}.month-year-menu button:hover,.month-year-menu button[aria-current=date]{background:#102848;color:#fff}.month-year-menu button:disabled{opacity:.3}.date-nav .month-year-picker{flex:1}.date-nav .month-year-picker>button{min-width:0;font-size:14px}.calendar-toolbar .month-year-picker>button{width:auto;min-width:68px}.calendar:after{content:none}.calendar-legend{display:flex;gap:13px;flex-wrap:wrap;margin-top:13px;color:#64758b;font-size:13px}.calendar-legend span{display:inline-flex;align-items:center;gap:5px}.calendar-legend i{width:9px;height:9px;border-radius:50%;display:inline-block;background:#b68b2c}.calendar-legend i.submitted{background:#4b83c4}.calendar-legend i.approved{background:#46a46b}.calendar-legend i.delayed{background:#c85151}.day.delayed{box-shadow:inset 0 0 0 2px #c85151}.day.delayed:after{background:#c85151!important}.delay-badge{display:inline-block;margin-right:7px;color:#a03939;font-style:normal;font-size:12px;font-weight:700}.delay-notice{color:#a03939!important;font-weight:700}.signature-box h3{display:flex;align-items:baseline;justify-content:space-between;gap:8px;text-align:right}.signature-box h3 span{color:#6c7c90;font-weight:400}.parking-time-field label{display:flex;flex-direction:column;gap:4px}@media(max-width:700px){.calendar-legend{font-size:11px;gap:7px 11px}.day .delay-badge{font-size:9px;margin:0}.parking-time-field label{flex:1;min-width:120px}.parking-time-field .time-control{width:100%}.month-year-menu{z-index:75}}.calendar{overflow:visible}.stop-table{table-layout:fixed}.stop-table th:first-child{width:48px}.stop-table thead th:nth-child(2){width:124px}.stop-table thead th:nth-child(3){width:124px}.stop-table .time-control{min-width:0;width:100%}.stop-table textarea{display:block;width:100%;min-height:76px;padding:8px 10px;line-height:1.6;resize:vertical;text-align:right}.document-code,.field input.document-code{font-family:Arial,sans-serif;direction:ltr;unicode-bidi:isolate}@media(max-width:700px){.stop-table tbody th:first-child{width:100%}.stop-table .duration-control input{min-height:44px}.stop-table td:nth-child(3):before{content:"مدت توقف (دقیقه)"}.stop-table td:nth-child(4){grid-template-columns:minmax(0,1fr);gap:6px}.stop-table textarea{min-height:96px;font-size:16px}}
