:root{--navy-900: #0a1f33;--navy-800: #0f2c47;--navy-700: #163b5c;--navy-400: #4a7ba3;--white: #ffffff;--surface: #f4f6f8;--hairline: #d7dee5;--sent: #0e6f47;--sending: #8a5000;--saved: #163b5c;--refused: #8f1d1d;--alert: #8c1d18;--tap-min: 64px;--tap-primary: 96px;--step-0: 1rem;--step-1: 1.25rem;--step-2: 1.5rem;--step-3: 2rem;--step-4: 2.75rem;--gap: 1.25rem;--gap-lg: 2rem;--radius: 10px;--font: "Noto Sans Arabic", "Segoe UI", Tahoma, system-ui, -apple-system, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);font-size:var(--step-1);line-height:1.5;color:var(--navy-900);background:var(--surface);-webkit-text-size-adjust:100%}.app{min-height:100%;display:flex;flex-direction:column;max-width:900px;margin-inline:auto;background:var(--white)}.header{background:var(--navy-900);color:var(--white);padding-block:var(--gap);padding-inline:var(--gap-lg);display:flex;align-items:center;gap:var(--gap)}.header__mark{block-size:2.2em;inline-size:auto;flex-shrink:0}.header__identity{flex:1;min-width:0}.header__boat{margin:0;font-size:var(--step-4);font-weight:700;letter-spacing:-.01em;line-height:1.15}.header__system{margin:0;margin-block-start:.15rem;font-size:var(--step-0);color:var(--navy-400)}.lang-toggle{min-height:var(--tap-min);min-width:96px;padding-inline:var(--step-1);font-family:inherit;font-size:var(--step-0);font-weight:600;color:var(--white);background:transparent;border:2px solid var(--navy-400);border-radius:var(--radius);cursor:pointer}.lang-toggle:hover{background:var(--navy-800)}a.support-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.rail{display:flex;align-items:center;gap:.75rem;padding-block:.9rem;padding-inline:var(--gap-lg);font-weight:600;border-block-end:1px solid var(--hairline)}.rail--online{background:#e8f3ee;color:var(--sent)}.rail--offline{background:#fdf1e3;color:var(--sending)}.rail__dot{inline-size:14px;block-size:14px;border-radius:50%;background:currentColor;flex:none}.rail--offline .rail__dot{background:transparent;box-shadow:inset 0 0 0 3px currentColor}.rail__count{margin-inline-start:auto;font-variant-numeric:tabular-nums}.rail__hint{padding-block:0 .9rem;padding-inline:var(--gap-lg);margin:0;font-size:var(--step-0);color:var(--sending);background:#fdf1e3;border-block-end:1px solid var(--hairline)}.notice{margin:var(--gap-lg);margin-block-end:0;padding:var(--gap);border:2px solid var(--alert);border-radius:var(--radius);background:#fdf0ef}.notice__title{margin:0 0 .4rem;font-size:var(--step-1);color:var(--alert)}.notice__body{margin:0;font-size:var(--step-0);color:var(--navy-900)}.notice--update{border-color:var(--hairline);background:var(--surface);color:var(--navy-900);display:flex;flex-wrap:wrap;align-items:center;gap:var(--gap);font-size:var(--step-0)}.notice__action{min-height:var(--tap-min);padding-inline:var(--gap);font:inherit;font-size:var(--step-0);color:var(--white);background:var(--navy-700);border:none;border-radius:var(--radius);cursor:pointer}.main{flex:1;padding:var(--gap-lg);display:flex;flex-direction:column;gap:var(--gap-lg)}.section__title{margin:0 0 var(--gap);font-size:var(--step-2);font-weight:700}.slot{border:2px dashed var(--hairline);border-radius:var(--radius);padding:var(--gap-lg);text-align:center;color:var(--navy-700)}.log__toggle{inline-size:100%;min-height:var(--tap-min);padding:0;font:inherit;text-align:start;color:inherit;background:none;border:none;cursor:pointer}.log__toggle:before{content:"▸";display:inline-block;margin-inline-end:.5rem;transition:transform .12s}.log__toggle[aria-expanded=true]:before{transform:rotate(90deg)}[dir=rtl] .log__toggle:before{transform:scaleX(-1)}[dir=rtl] .log__toggle[aria-expanded=true]:before{transform:scaleX(-1) rotate(90deg)}.events__days{display:flex;flex-direction:column;gap:var(--gap)}.events__dayTitle{margin:0 0 .5rem;font-size:var(--step-0);font-weight:700;color:var(--navy-700)}.events{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.event{display:flex;flex-wrap:wrap;align-items:center;gap:var(--gap);min-height:var(--tap-min);padding:var(--step-0);border:1px solid var(--hairline);border-radius:var(--radius);border-inline-start:6px solid var(--saved);background:var(--white)}.event--sending{border-inline-start-color:var(--sending)}.event--sent{border-inline-start-color:var(--sent)}.event--refused{border-inline-start-color:var(--refused)}.event__label{flex:1 1 14ch;min-width:0;font-weight:600}.event__time{font-variant-numeric:tabular-nums;font-size:var(--step-0);color:var(--navy-700)}.event__status{font-size:var(--step-0);font-weight:700;white-space:nowrap}.event--saved .event__status{color:var(--saved)}.event--sending .event__status{color:var(--sending)}.event--sent .event__status{color:var(--sent)}.event--refused .event__status{color:var(--refused)}.empty{color:var(--navy-700);margin:0}.harness{border-block-start:1px solid var(--hairline);padding:var(--gap-lg);display:flex;flex-wrap:wrap;gap:.75rem}.harness__button{min-height:var(--tap-min);padding-inline:var(--step-1);font-family:inherit;font-size:var(--step-0);font-weight:600;color:var(--white);background:var(--navy-700);border:none;border-radius:var(--radius);cursor:pointer}:focus-visible{outline:3px solid var(--navy-400);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@media(max-width:600px){:root{--gap-lg: 1.25rem}.header__boat{font-size:var(--step-3)}.event{flex-wrap:wrap}}.job{margin:0 0 var(--gap-lg);border:1px solid var(--hairline);border-radius:var(--radius);overflow:hidden}.job__row{display:flex;gap:var(--gap);padding:.85rem var(--step-0);border-block-end:1px solid var(--hairline)}.job__row:last-child{border-block-end:none}.job__label{margin:0;min-inline-size:9rem;color:var(--navy-700)}.job__value{margin:0;font-weight:700;font-variant-numeric:tabular-nums}.action{inline-size:100%;min-height:var(--tap-primary);padding-inline:var(--step-1);font-family:inherit;font-size:var(--step-3);font-weight:700;color:var(--white);background:var(--navy-900);border:none;border-radius:var(--radius);cursor:pointer}.action:hover{background:var(--navy-800)}.action:disabled{background:var(--navy-400);cursor:default}.slot--inline{margin-block-start:var(--gap);padding:var(--step-0);font-size:var(--step-0)}.recorded__headline{margin:0 0 var(--gap-lg);padding:var(--gap-lg);font-size:var(--step-3);font-weight:700;text-align:center;color:var(--sent);background:#e8f3ee;border-radius:var(--radius)}.times{list-style:none;margin:0;padding:0;border:1px solid var(--hairline);border-radius:var(--radius);overflow:hidden}.times__row{display:flex;gap:var(--gap);padding:.85rem var(--step-0);border-block-end:1px solid var(--hairline)}.times__row:last-child{border-block-end:none}.times__label{flex:1}.times__value{font-weight:700;font-variant-numeric:tabular-nums}.tabs{display:flex;gap:.5rem;border-block-end:2px solid var(--hairline)}.tabs__tab{min-height:var(--tap-min);padding-inline:var(--step-1);font-family:inherit;font-size:var(--step-1);font-weight:600;color:var(--navy-700);background:transparent;border:none;border-block-end:4px solid transparent;margin-block-end:-2px;cursor:pointer}.tabs__tab--on{color:var(--navy-900);border-block-end-color:var(--navy-900)}.cargo{margin-top:1.5rem;padding:1rem;border:1px solid var(--line, #d7dee6);border-radius:10px}.cargo__title{margin:0 0 .75rem;font-size:1rem;font-weight:600}.cargo__figures{margin-bottom:.75rem}.cargo__field{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.cargo__fieldLabel{font-size:1rem}.cargo__input{width:8rem;min-height:56px;padding:.5rem .75rem;font-size:1.25rem;text-align:center;border:1px solid var(--line, #d7dee6);border-radius:8px}.cargo__button{display:block;width:100%;min-height:64px;padding:.75rem 1rem;font:inherit;font-size:1.125rem;font-weight:600;color:inherit;background:var(--surface-2, #eef3f7);border:1px solid var(--line, #d7dee6);border-radius:10px;cursor:pointer}.cargo__button:disabled{opacity:.5;cursor:default}.cargo__link{display:block;width:100%;min-height:48px;margin-top:.5rem;background:none;border:0;font:inherit;color:var(--accent, #0b5c8a);text-decoration:underline;cursor:pointer}.cargo__done{margin:.5rem 0 0;font-weight:600}.cargo__note{margin:.5rem 0 0;font-size:.9rem;opacity:.75}.cargo__warning{margin:.5rem 0 0;font-weight:600}.signin{max-width:28rem}.signin__logo{display:block;inline-size:100%;max-inline-size:22rem;block-size:auto;margin-block-end:var(--gap-lg)}.signin__form{display:flex;flex-direction:column;gap:1rem}.signin__field{display:flex;flex-direction:column;gap:.375rem}.signin__label{font-size:1rem;font-weight:600}.signin__input{min-height:56px;padding:.5rem .75rem;font-size:1.125rem;border:1px solid var(--line, #d7dee6);border-radius:8px}.signin__failure{margin:0;font-weight:600}.signin__pending{margin:0 0 1rem;padding:.75rem 1rem;border:1px solid var(--line, #d7dee6);border-radius:8px;font-weight:600}.header__actions{display:flex;gap:.5rem;align-items:center}.note-frame{display:block;inline-size:100%;max-inline-size:210mm;block-size:297mm;border:1px solid var(--line, #d7dee6);background:#fff}.note__controls{display:flex;gap:var(--gap);margin-block-end:var(--gap)}.history__note{min-height:var(--tap-min);padding-inline:var(--step-0);font-family:inherit;font-size:var(--step-0);font-weight:600;color:var(--navy-900);background:var(--white);border:2px solid var(--navy-900);border-radius:var(--radius);cursor:pointer}.history__fallback{min-height:var(--tap-min);padding-inline:var(--step-0);font-family:inherit;font-size:var(--step-0);color:var(--navy-700);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);cursor:pointer}.history__fallback-note{margin-block:0 var(--step-0);color:var(--navy-700);font-size:var(--step-0)}.note{max-inline-size:186mm;padding:0;color:#000;background:var(--white);border:2px solid #000;font-size:.85rem;line-height:1.3}.note__head{display:flex;align-items:stretch;gap:var(--gap);padding:.6rem 1rem;border-block-end:2px solid #000}.note__logo{display:block;inline-size:100%;max-inline-size:11rem;block-size:auto}.note__org{flex:1;display:flex;flex-direction:column;font-size:.75rem;color:#333}.note__ref{display:flex;flex-direction:column;font-size:.75rem;color:#333;border-inline-start:1px solid #8a8a8a;padding-inline-start:1rem}.note__number{font-weight:700;font-size:1rem;color:#000}.note__title{display:flex;justify-content:space-between;gap:var(--gap);margin:0;padding:.5rem 1rem;font-size:1.1rem;background:#e6eaed;border-block-end:2px solid #000}.note__sec{border-block-end:1px solid #000}.note__sec:last-of-type{border-block-end:none}.note__bar{display:flex;justify-content:space-between;gap:var(--gap);margin:0;padding:.3rem 1rem;font-size:.85rem;font-weight:700;border-block-end:1px solid #8a8a8a}.note__bar small{font-weight:400;color:#444}.note__grid{display:grid}.note__grid--3{grid-template-columns:repeat(3,1fr)}.note__f{display:flex;flex-direction:column;gap:.15rem;padding:.3rem .75rem .4rem;border-inline-end:1px solid #8a8a8a;border-block-end:1px solid #8a8a8a}.note__grid>.note__f:nth-child(3n){border-inline-end:none}.note__lab{display:flex;justify-content:space-between;gap:.5rem;font-size:.7rem;color:#111}.note__val{font-size:.95rem;font-weight:700;font-variant-numeric:tabular-nums;min-block-size:1.3rem}.note__val--none{display:flex;justify-content:space-between;gap:.5rem;font-weight:400;font-style:italic;color:#333}.note__lines{list-style:none;margin:0;padding:0}.note__line{display:flex;justify-content:space-between;align-items:baseline;gap:var(--gap);padding:.3rem .75rem;border-block-end:1px solid #cfd6db}.note__line .note__lab{flex:1}.note__lineFields{display:grid;grid-template-columns:2fr 1fr 1fr;flex:2}.note__lineFields .note__f{border-block-end:none}.note__hint{display:flex;justify-content:space-between;gap:var(--gap);margin:0;padding:.3rem .75rem;font-size:.7rem;color:#333}.note__remarks{block-size:18mm;margin:.4rem 1rem .6rem;border-block-end:1px solid #b6bfc6;background-image:repeating-linear-gradient(to bottom,transparent 0 6.6mm,#cfd6db 6.6mm 6.6mm)}.note__sigs{display:grid;grid-template-columns:1fr 1fr}.note__sig{padding:.5rem 1rem .7rem;border-inline-end:1px solid #8a8a8a}.note__sig:last-child{border-inline-end:none}.note__sig>.note__lab{font-weight:700;font-size:.85rem;margin-block-end:.4rem}.note__sig .note__f{padding-inline:0;border:none}.note__sigRow{display:grid;grid-template-columns:1fr 22mm;gap:.75rem}.note__blank{block-size:9mm;margin-block-end:.35rem;border-block-end:1px solid #000}.note__blank--tall{block-size:12mm}.note__stamp{block-size:28mm;margin-block-start:.4rem;border:1px dashed #7d868d;display:flex;align-items:flex-start;padding:.25rem .5rem;color:#6c757c;font-size:.7rem}.note__stamp .note__lab{inline-size:100%;color:#6c757c}.note__foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;padding:.4rem 1rem;border-block-start:2px solid #000;font-size:.65rem;color:#333}.note__issued{inline-size:100%}@media print{@page{size:A4;margin:10mm 12mm}body{background:#fff}.header,.rail,.tabs,.notice,.note__controls{display:none!important}.app,.main{padding:0;gap:0;max-inline-size:none}.note{inline-size:186mm;max-inline-size:186mm;margin:0;border-width:1px;font-size:9.2pt;line-height:1.28}.note__title{font-size:12.4pt}.note__bar{font-size:8.4pt}.note__lab{font-size:7.4pt}.note__val{font-size:8.6pt;min-block-size:1rem}.note__number{font-size:8.6pt}.note__logo{max-inline-size:48.6mm}.note__remarks{block-size:15mm}.note__stamp{block-size:20mm}.note__title{padding-block:.2rem}.note__f{padding-block:.15rem .2rem}.note__sig{padding-block:.3rem .4rem}.note__hint,.note__foot{padding-block:.2rem;font-size:6.9pt}.note__blank{block-size:7mm}.note__blank--tall{block-size:10mm}.note__sec,.note__sig,.note__line{break-inside:avoid}}.stops{display:grid;gap:1rem}.stop{padding:.9rem 1rem;border:1px solid var(--line, #d9dee5);border-radius:6px;background:var(--surface, #fff)}.stop__title{margin:0 0 .4rem;font-size:1.05rem}.stop__state,.stop__flag{font-weight:400;color:var(--muted, #5a6b7c)}.stop__reason{margin:0 0 .6rem;font-style:italic;color:var(--muted, #5a6b7c)}.stop__times{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.5rem 1rem;margin:0 0 .6rem}.stop__time{display:grid;gap:.15rem}.stop__actions{display:grid;gap:.6rem}.stop__notServed,.stop__confirm{margin-top:.6rem}.stop__notServed summary,.stop__confirm summary{cursor:pointer;color:var(--muted, #5a6b7c)}.event__label,.event__status,.job__label,.job__value,.cards__head h2,.cards__vessel,.cards__services,.header__identity,.header__boat,.header__system{min-inline-size:0}.cards{margin-block-start:var(--gap-lg)}.cards__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--gap);padding:var(--step-0) var(--step-1);color:var(--white);background:var(--navy-900);border-start-start-radius:var(--radius);border-start-end-radius:var(--radius)}.cards__head h2{margin:0;font-size:var(--step-2)}.cards__count{margin:0;font-size:var(--step-1);font-weight:700;font-variant-numeric:tabular-nums}.cards__preview{margin:0;flex-basis:100%;font-size:var(--step-0);color:#cfe0ee}.cards__list{list-style:none;margin:0;padding:0;display:grid;gap:var(--gap);padding-block-start:var(--gap)}.cards__item{--state: var(--navy-400);padding:var(--step-1);background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius);border-inline-start:6px solid var(--state)}.cards__item[data-state=arrived],.cards__item[data-state=alongside]{--state: var(--navy-900)}.cards__item[data-state=departed]{--state: var(--sent)}.cards__item[data-state=not_served]{--state: var(--sending)}.cards__item[data-state=cancelled]{--state: var(--alert)}.cards__row{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.5rem var(--gap)}.cards__summary{display:block;inline-size:100%;min-height:var(--tap-min);padding:0;font:inherit;text-align:start;color:inherit;background:none;border:none;cursor:pointer}.cards__total{font-weight:700;font-variant-numeric:tabular-nums}.cards__serial{grid-column:1;grid-row:1;font-size:var(--step-0);font-weight:700;font-variant-numeric:tabular-nums;color:var(--navy-700)}.cards__state{grid-column:2;grid-row:1;justify-self:end;padding:.25rem .75rem;font-size:var(--step-0);font-weight:700;color:var(--white);background:var(--navy-700);border-radius:999px;white-space:nowrap}.en{display:block;unicode-bidi:isolate;font-size:var(--step-1);color:var(--navy-700)}.cards__vessel{grid-column:1 / -1;grid-row:2;font-size:var(--step-2);font-weight:700;line-height:1.2;color:var(--navy-900);overflow-wrap:anywhere}.cards__services{margin:.35rem 0 0;font-size:var(--step-0);color:var(--navy-700)}.cards__action{margin-block-start:var(--gap)}.cards__tap{inline-size:100%;min-height:var(--tap-min);padding-inline:var(--step-1);font-family:inherit;font-size:var(--step-1);font-weight:700;color:var(--white);background:var(--navy-800);border:none;border-radius:var(--radius);cursor:pointer}.cards__tap--open{background:var(--navy-900)}.cards__tap:hover{background:var(--navy-700)}.cards__tap:disabled{background:var(--navy-400);cursor:default}.cards__hint{margin:.5rem 0 0;font-size:var(--step-0);color:var(--navy-700)}.cards__notServed,.cards__notServedRecord,.cards__notServedBack{inline-size:100%;min-height:var(--tap-min);margin-block-start:var(--gap);padding-inline:var(--step-1);font-family:inherit;font-size:var(--step-1);font-weight:700;border-radius:var(--radius);cursor:pointer}.cards__notServed,.cards__notServedBack{color:var(--sending);background:var(--white);border:2px solid var(--sending)}.cards__notServedRecord{color:var(--white);background:var(--sending);border:none}.cards__notServedForm{margin-block-start:var(--gap)}.cards__question{margin:0 0 var(--gap);font-size:var(--step-2);font-weight:700;color:var(--navy-900)}.cards__reasonField{display:block;font-size:var(--step-1);font-weight:700;color:var(--navy-900)}.cards__reasonField textarea{display:block;box-sizing:border-box;inline-size:100%;margin-block-start:.5rem;padding:.75rem;font-family:inherit;font-size:var(--step-1);border:2px solid var(--navy-400);border-radius:var(--radius)}.cards__reasonMissing{margin:.5rem 0 0;font-size:var(--step-1);font-weight:700;color:var(--refused)}.cards__reason{margin:.5rem 0 0;font-size:var(--step-1);color:var(--navy-900);overflow-wrap:anywhere}.cards__reasonLabel{font-weight:700;color:var(--navy-700)}.cards__refusal{margin-block-start:var(--gap);padding:var(--step-0);border:2px solid var(--refused);border-radius:var(--radius)}.cards__refusalText{margin:0;font-size:var(--step-1);font-weight:700;color:var(--refused)}.cards__closed{margin:var(--gap) 0 0;font-size:var(--step-1);font-weight:700;color:var(--sent)}.cards__receipt{margin-block-start:var(--gap)}.cards__legs,.cards__figures{margin:var(--gap) 0 0;display:grid;gap:.35rem}.cards__leg,.cards__figure{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem var(--gap);padding-block:.35rem;border-block-end:1px solid var(--hairline)}.cards__leg dt,.cards__figure dt,.cards__leg dd,.cards__figure dd{margin:0;min-inline-size:0;font-size:var(--step-0)}.cards__leg dt,.cards__figure dt{color:var(--navy-700)}.cards__leg dd,.cards__figure dd{display:flex;gap:var(--gap);align-items:baseline;font-weight:700;font-variant-numeric:tabular-nums}.cards__legAt{font-weight:400;color:var(--navy-700)}.cards__legs--chain{margin-block-start:calc(var(--gap) * 1.5)}.cards__leg--total{border-block-start:2px solid var(--navy-700);border-block-end:0}.cards__figuresTitle{margin:var(--gap) 0 0;font-size:var(--step-0);font-weight:700}.cards__legsPending,.cards__noFigures{margin:.35rem 0 0;font-size:var(--step-0);color:var(--navy-700)}.cards__item[data-state=departed],.cards__item[data-state=not_served]{background:var(--surface)}.cards__disclose{margin-block-start:var(--gap);min-height:var(--tap-min);inline-size:100%;font-family:inherit;font-size:var(--step-0);color:var(--navy-900);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);cursor:pointer}.cards__none{margin:var(--gap) 0 0;padding:var(--step-1);font-size:var(--step-1);background:var(--surface);border-radius:var(--radius)}.depart{margin-block-start:var(--gap-lg);padding:var(--step-1);background:var(--white);border:1px solid var(--hairline);border-inline-start:6px solid var(--navy-900);border-radius:var(--radius)}.depart__title{margin:0;font-size:var(--step-2);line-height:1.2;overflow-wrap:anywhere}.depart__optional{margin:.5rem 0 var(--gap);font-size:var(--step-0);color:var(--navy-700)}.depart__fields{display:grid;gap:var(--gap);margin-block-end:var(--gap-lg)}.depart__field{display:grid;gap:.4rem;font-size:var(--step-0);font-weight:700;color:var(--navy-900)}.depart__field input{min-height:var(--tap-min);inline-size:100%;padding-inline:var(--step-0);font-family:inherit;font-size:var(--step-2);font-weight:700;font-variant-numeric:tabular-nums;color:var(--navy-900);background:var(--white);border:2px solid var(--navy-700);border-radius:var(--radius)}.depart__skip{inline-size:100%;min-height:var(--tap-min);margin-block-start:var(--gap);padding-inline:var(--step-1);font-family:inherit;font-size:var(--step-1);font-weight:700;color:var(--navy-900);background:var(--surface);border:2px solid var(--navy-900);border-radius:var(--radius);cursor:pointer}.depart__back{inline-size:100%;min-height:var(--tap-min);margin-block-start:var(--gap-lg);font-family:inherit;font-size:var(--step-0);color:var(--navy-900);background:none;border:1px solid var(--hairline);border-radius:var(--radius);cursor:pointer}@media(max-width:600px){.cards__head{flex-direction:column;align-items:flex-start}.cards__item{padding:var(--step-0)}.cards__vessel{font-size:var(--step-1)}}
