:root{font:14px/1.6 'Yu Gothic UI','Meiryo',sans-serif;color:#243c50;background:#f3f6fa;--navy:#184a77;--line:#dce5ed;--muted:#64798c;--pale:#edf4fa;--green:#246854;--danger:#a43a35}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #4b99bf;outline-offset:3px}a{color:var(--navy)}h1{font-size:26px;line-height:1.4;letter-spacing:.02em;margin:4px 0 8px}h2{font-size:17px;margin:0 0 14px}h3{font-size:14px;margin:0 0 8px}p{margin:0 0 12px}small,.small{font-size:12px}.muted{color:var(--muted)}.loading{padding:30px}.auth-page{min-height:100vh;padding:48px 20px;background:linear-gradient(125deg,#102c49,#20496e 55%,#347693);display:grid;align-content:center;justify-items:center;gap:20px}.auth-brand{color:white;text-align:center;font-size:23px;font-weight:600;letter-spacing:.16em}.brand-mark{display:grid;place-items:center;border:1px solid #91acbe;border-radius:12px;width:42px;height:42px;margin:0 auto 10px;font-size:24px}.auth-card{width:min(440px,100%);padding:30px;background:#fff;border-radius:17px;box-shadow:0 18px 45px #0e273c33}.auth-card h1{font-size:23px}.auth-card p{color:#62758a}.auth-card label{margin-top:13px}.password{position:relative;display:block;margin-top:5px}.password input:not([type=checkbox]){border-radius:7px;min-width:0;margin-top:0;min-height:46px;padding-right:54px}.password button{position:absolute;right:1px;top:1px;bottom:1px;width:46px;border:0;border-radius:0 6px 6px 0;background:transparent;color:#184a77;white-space:nowrap;padding:0}.auth-card .primary{width:100%;margin:18px 0 10px}.demo-note{background:#eef5fa;border-radius:8px;padding:12px;font-size:12px;margin-top:16px}.demo-note button{background:none;border:0;color:var(--navy);text-decoration:underline;padding:5px}.shell{display:grid;grid-template-columns:205px minmax(0,1fr);min-height:100vh}.sidebar{background:#12324e;color:#dce9f3;padding:26px 17px;display:flex;flex-direction:column;gap:22px}.sidebar .brand{font-size:22px;letter-spacing:.13em;font-weight:600;padding:0 10px}.sidebar .brand small{display:block;font-size:11px;letter-spacing:.05em;color:#b8cfdf;margin-top:3px}.sidebar nav{display:grid;gap:6px}.sidebar nav button{border:0;text-align:left;background:transparent;color:#ccdde9;border-radius:8px;padding:12px 14px}.sidebar nav button:hover{background:#204562}.sidebar nav button.active{background:#e9f2f9;color:#163d5c;font-weight:600}.sidebar .account{margin-top:auto;padding:18px 10px 0;border-top:1px solid #31506a;font-size:13px}.sidebar .account small{display:block;color:#b1c9d9}.sidebar .account button{margin-top:10px;border:0;background:transparent;color:#cce2f1;padding:0}.workspace{min-width:0}.topbar{min-height:59px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:13px 32px;gap:12px;flex-wrap:wrap}.topbar strong{font-weight:500;font-size:13px}.demo-label{border-radius:5px;background:#fff3d8;color:#795511;padding:3px 8px;font-size:11px}.content{padding:28px 32px 42px;max-width:1440px;margin:0 auto}.heading{display:flex;gap:16px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:24px}.eyebrow{color:var(--muted);font-size:11px;letter-spacing:.12em}.heading p{color:var(--muted);font-size:13px;margin:0}.panel{padding:22px;background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:18px}.panel.flush{padding:0;overflow:hidden}.panel-head{padding:18px 22px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.panel-head h2{margin:0}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.settings-grid{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:22px;align-items:start}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px}.stat{padding:19px 22px;background:#fff;border:1px solid var(--line);border-radius:11px}.stat .value{font-size:29px;line-height:1.5;font-weight:600;font-variant-numeric:tabular-nums}.stat:first-child{background:#eaf3fa}.stat span{font-size:12px;color:var(--muted)}label{display:block;font-size:13px;color:#344e64;margin-bottom:12px}input:not([type=checkbox]),select,textarea{display:block;width:100%;padding:10px 11px;border:1px solid #ccd7e2;border-radius:7px;background:#fff;color:#1e384e;margin-top:5px;min-height:43px}textarea{resize:vertical;min-height:80px}input[type=checkbox]{width:17px;height:17px;accent-color:var(--navy);flex-shrink:0}.check{display:flex;align-items:flex-start;gap:9px;margin-top:14px}.check input{margin-top:3px}.toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.toolbar label{margin-bottom:0;min-width:140px}.toolbar .grow{flex:1}.button,.primary,.secondary,.danger{display:inline-flex;justify-content:center;align-items:center;gap:6px;min-height:40px;padding:9px 16px;border-radius:7px;border:1px solid var(--line);background:#fff;color:var(--navy);text-decoration:none;font-size:13px}.primary{background:var(--navy);border-color:var(--navy);color:#fff}.secondary{background:#fff;color:#29465d}.danger{color:var(--danger);border-color:#e8c9c5}.actions{display:flex;gap:9px;flex-wrap:wrap;align-items:center}.actions.end{justify-content:flex-end}.link-button{padding:4px 0;border:0;background:transparent;color:var(--navy);text-decoration:underline;font-size:12px}.callout{padding:13px 16px;border-radius:8px;background:#edf4f9;color:#355a74;font-size:13px;margin:14px 0}.warning{background:#fff5e5;color:#885b18}.success{background:#eaf5ef;color:#22674e}.error{background:#fff0ed;color:#9f3028;padding:10px 13px;border-radius:7px;margin:12px 0}.error:empty{display:none}.badge{display:inline-block;padding:2px 8px;border-radius:20px;background:#eef3f7;color:#536a7b;font-size:11px;white-space:nowrap}.badge.approved{background:#e8f4ed;color:#24654d}.badge.returned{background:#fff1dc;color:#8d5918}.scroll-table{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;background:#f5f8fb;color:var(--muted);font-weight:500;font-size:12px;padding:11px 15px;white-space:nowrap}td{padding:13px 15px;border-top:1px solid #e5ecf2;vertical-align:middle}td.num,th.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}tfoot{background:#edf4fa;font-weight:600}.rate-table td{padding:11px 18px}.rate-table input{width:135px;text-align:right;margin:0;padding:8px 10px;min-height:38px;font-variant-numeric:tabular-nums}.rate-table .half{font-variant-numeric:tabular-nums;color:#3b5e78}.rate-table tr.changed{background:#f0f7fb}.rate-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.rate-heading span{font-size:11px;color:var(--green);background:#eaf5ef;border-radius:16px;padding:3px 9px}.aside-note{font-size:12px;color:var(--muted);line-height:1.9;margin:0;padding-left:18px}.history-entry{padding:12px 0;border-top:1px solid var(--line);font-size:12px}.history-entry:first-of-type{border:0}.history-entry p{margin:5px 0}.empty{text-align:center;padding:42px 16px;color:var(--muted)}.empty strong{display:block;color:#456073;margin-bottom:8px}.day{border-top:1px solid var(--line)}.day summary{padding:12px 16px;background:#fff;cursor:pointer}.day summary span{float:right;font-variant-numeric:tabular-nums}.event{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:10px 18px;background:#f7f9fc;font-size:12px;border-top:1px solid #e7edf2}.event time{font-variant-numeric:tabular-nums;min-width:110px}.event .event-name{flex:1;min-width:100px}.event .event-actions{margin-left:auto}.seals{display:flex;gap:24px;flex-wrap:wrap;margin:16px 0}.seal-box{text-align:center;min-width:90px;font-size:12px}.seal{margin:8px auto;border:2px solid #b84642;border-radius:50%;width:62px;height:62px;color:#b84642;display:grid;place-items:center;font-size:19px;font-family:serif;writing-mode:vertical-rl;letter-spacing:.08em;overflow-wrap:anywhere}.seal.long{font-size:12px}.seal.blank{color:#97a8b4;border:1px dashed #bac8d2;writing-mode:horizontal-tb;font:12px sans-serif}.seal-box small{display:block;font-size:11px;color:var(--muted)}dialog{border:1px solid var(--line);border-radius:14px;padding:25px;width:min(720px,calc(100% - 28px));max-height:88vh;overflow-y:auto;color:#243c50;box-shadow:0 20px 80px #102c4940}dialog::backdrop{background:#15324966}dialog h2{font-size:20px}.dialog-close{float:right;border:0;background:transparent;color:#6b7e8d;font-size:23px;padding:0 4px}.dialog-body{clear:both}.dialog-foot{border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.notice-item{display:flex;gap:15px;align-items:flex-start;padding:15px 0;border-top:1px solid var(--line)}.notice-item:first-of-type{border:0}.notice-item .grow{flex:1}.notice-item p{font-size:13px;margin:3px 0 0}#notice{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#183f5b;color:#fff;padding:12px 20px;border-radius:9px;box-shadow:0 6px 25px #15314933;max-width:calc(100% - 28px);z-index:100;display:none}#notice.visible{display:block}.year-table{min-width:1150px}.year-table td,.year-table th{padding:12px 9px}.year-table td:first-child{min-width:105px}.batch{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;background:#edf4fa;border-top:1px solid var(--line)}.print-only{display:none}.invite-row{margin:8px 0}.invite-row input{font-size:12px}.print-title{text-align:center}.dim{color:#8799a7}details summary{cursor:pointer}.rate-form-note{margin:0;padding:16px 20px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
@media(max-width:1050px){.settings-grid{grid-template-columns:1fr}.settings-aside{display:grid;grid-template-columns:1fr 1fr;gap:18px}.shell{grid-template-columns:180px minmax(0,1fr)}.content{padding:24px}.topbar{padding:12px 24px}.rate-table input{width:110px}}
@media(max-width:760px){.shell{display:block}.sidebar{padding:12px 15px;gap:12px}.sidebar .brand{font-size:19px;display:flex;align-items:center;gap:12px}.sidebar .brand small{margin:0}.sidebar nav{display:flex;overflow-x:auto;gap:4px}.sidebar nav button{padding:9px 11px;white-space:nowrap;font-size:12px}.sidebar .account{display:none}.topbar{padding:10px 16px}.content{padding:20px 14px}.heading{margin-bottom:18px}h1{font-size:22px}.grid,.settings-aside{grid-template-columns:1fr}.stats{gap:8px}.stat{padding:14px 12px}.stat .value{font-size:21px}.stat span{font-size:11px}.panel{padding:17px}.rate-table td{padding:10px}.rate-table th{padding:10px}.rate-table input{width:100px}.toolbar label{min-width:120px;flex:1}.toolbar{width:100%}.actions .button,.actions button{min-height:44px}.batch{align-items:flex-start;flex-direction:column}td,th{padding:11px 10px}.scroll-table table{min-width:600px}.scroll-table .rate-table{min-width:0}.rate-table .unit{display:none}.event{gap:8px}.auth-page{padding:25px 16px}.auth-card{padding:25px}.rate-table td:first-child{max-width:100px;overflow-wrap:anywhere}.seals{gap:14px}}
@media(max-width:380px){.stats{grid-template-columns:1fr}.stat{display:flex;align-items:center;justify-content:space-between}.rate-table input{width:83px}.rate-table td,.rate-table th{padding:9px 6px;font-size:12px}.content{padding:16px 10px}.heading h1{font-size:21px}}
@media print{body{background:white}.shell,.auth-page,#notice{display:none!important}dialog[open]{display:block;position:static;max-height:none;width:100%;border:0;box-shadow:none;overflow:visible;margin:0;padding:0}dialog::backdrop{display:none}.dialog-close,.dialog-foot,.no-print{display:none!important}dialog .scroll-table{overflow:visible}.print-only{display:block}.seal{print-color-adjust:exact;-webkit-print-color-adjust:exact}thead{display:table-header-group}tr{break-inside:avoid}.print-title{margin:20px 0}.panel{break-inside:avoid}}
input::placeholder{color:#94a2b0;opacity:1}.with-submit-bar{padding-bottom:155px}.submit-bar{position:fixed;bottom:0;left:205px;right:0;z-index:15;background:#fff;border-top:2px solid #184a77;box-shadow:0 -5px 22px #16354b15;padding:16px 32px;display:flex;justify-content:space-between;align-items:center;gap:16px}.submit-bar strong,.submit-bar small{display:block}.submit-bar>div>span{font-size:12px;color:#64798c}.submit-bar>div>strong{font-size:22px}.submit-guide{display:flex;align-items:center;gap:18px}.submit-guide small{color:#62758a;font-size:12px}.submit-bar .primary{font-size:17px;font-weight:600;min-height:52px;padding:12px 28px}.submission-done{text-align:right;color:#246854}.submission-done small{font-size:12px}dialog.print-dialog{width:min(900px,calc(100% - 28px))}.claim-sheet{color:#182f42;font-size:12px;line-height:1.4}.claim-heading{text-align:center;margin-bottom:12px}.claim-brand{font-size:11px;letter-spacing:.15em;color:#62758a}.claim-heading h2{font-size:21px;margin:6px 0}.claim-heading p{margin:0}.claim-meta{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px;overflow-wrap:anywhere}.claim-total{margin:10px 0;padding:10px 12px;background:#edf4fa;display:flex;gap:16px;align-items:center;border-top:1px solid #8294a3;border-bottom:1px solid #8294a3}.claim-total strong{font-size:22px}.claim-total span{margin-left:auto;font-size:12px}.claim-table{table-layout:fixed;width:100%;font-size:11px}.claim-table th,.claim-table td{padding:5px 6px;border:1px solid #becbd5;white-space:nowrap}.claim-table th{font-size:10px}.claim-table .date-col{width:22%}.claim-table .amount-col{width:12%}.claim-note{font-size:10px;color:#536a7b;margin:10px 0}.claim-sheet .seals{justify-content:flex-end;gap:20px;margin:8px 0}.claim-id{font-size:9px;color:#62758a;border-top:1px solid #dce5ed;padding-top:6px}
@media(max-width:1050px){.submit-bar{left:180px;padding:14px 24px}.submit-guide small{max-width:170px}}
@media(max-width:760px){.submit-bar{left:0;padding:10px 14px;gap:8px;flex-wrap:wrap}.submit-bar>div>strong{font-size:18px}.submit-guide{gap:8px;flex:1;justify-content:flex-end}.submit-guide small{display:none}.submit-bar .primary{padding:10px 14px;font-size:14px}.with-submit-bar{padding-bottom:155px}.claim-sheet{min-width:680px}.print-dialog .dialog-body{overflow-x:auto}}
@page{size:A4 portrait;margin:10mm}
@media print{html,body{height:auto;min-height:0}.submit-bar{display:none!important}dialog.print-dialog{width:100%;padding:0;margin:0;max-width:none;max-height:none;overflow:visible}dialog.print-dialog>h2,dialog.print-dialog>[data-modal-error]{display:none!important}.print-dialog .dialog-body{overflow:visible}.claim-sheet{min-width:0;width:100%;font-size:9pt;line-height:1.25}.claim-heading{margin-bottom:3mm}.claim-heading h2{font-size:15pt;margin:1mm 0}.claim-brand{font-size:8pt}.claim-meta{gap:1mm 4mm;font-size:9pt}.claim-total{margin:2mm 0;padding:2mm 3mm;print-color-adjust:exact}.claim-total strong{font-size:15pt}.claim-total span{font-size:9pt}.claim-table{font-size:8.5pt}.claim-table th,.claim-table td{padding:.7mm 1.3mm;line-height:1.2;height:5mm}.claim-table th{font-size:8pt;height:8mm}.claim-table tr{break-inside:avoid}.claim-table tfoot{display:table-row-group}.claim-note{font-size:7.5pt;margin:2mm 0}.claim-sheet .seals{gap:5mm;margin:2mm 0;break-inside:avoid}.claim-sheet .seal-box{min-width:25mm;font-size:8pt}.claim-sheet .seal{width:13mm;height:13mm;margin:1mm auto;font-size:13pt}.claim-sheet .seal.long{font-size:9pt}.claim-sheet .seal.blank{font-size:8pt}.claim-sheet .seal-box small{font-size:7pt}.claim-id{font-size:7pt;padding-top:1mm}}
@media print{html:root{background:#fff}dialog.print-dialog{border-radius:0}}

.submission-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.submission-table{min-width:850px}.submission-table .badge{font-size:13px}.submission-table td{font-size:14px}.submission-table small{font-size:12px}.submission-table .overdue,.overdue{color:#a13a2f;font-size:13px}.claim-period{border:1px solid var(--line);border-radius:8px;margin:12px 0;padding:16px}.claim-period legend{padding:0 6px;font-weight:600}.panel-head label{margin-bottom:0}dialog:has([data-form=import-batch-commit]){width:min(1040px,calc(100% - 28px))}dialog [data-form=import-map]{padding:14px;background:#fff5e5;border-radius:8px;margin-bottom:18px}
@media(max-width:760px){.submission-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

@font-face{font-family:KiralieSeal;src:url('/YujiSyuku-Regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:block}
.password button{min-width:46px;display:grid;place-items:center}.password button svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.password input::-ms-reveal{display:none}
.seal.seal-v2{--seal-diameter:62px;width:var(--seal-diameter);height:var(--seal-diameter);display:flex;flex-direction:row-reverse;justify-content:center;align-items:center;gap:0;writing-mode:horizontal-tb;font-family:KiralieSeal,serif;font-weight:400;letter-spacing:0;line-height:1;color:#b84642;overflow:hidden;padding:3px}.stamp-column{display:flex;flex-direction:column;justify-content:center;align-items:center;line-height:.94}.stamp-column>span{display:block}.seal-v2.stamp-1{font-size:calc(var(--seal-diameter)*.63)}.seal-v2.stamp-2{font-size:calc(var(--seal-diameter)*.42)}.seal-v2.stamp-3{font-size:calc(var(--seal-diameter)*.29)}.seal-v2.stamp-4{font-size:calc(var(--seal-diameter)*.37)}.seal-v2.stamp-5{font-size:calc(var(--seal-diameter)*.285)}.stamp-preview{display:flex;align-items:center;gap:14px;font-size:12px;color:var(--muted);margin:-2px 0 14px}.stamp-preview .seal{margin:0}
.celebration{position:relative;overflow:hidden;text-align:center;padding:18px 12px 24px}.celebration-emoji{font-size:55px;animation:celebrate-pop .75s ease-out}.celebration-month{font-size:21px;font-weight:600;color:var(--navy);margin:16px 0 10px}.celebration .primary{margin-top:14px;min-width:130px}.confetti{position:absolute;inset:0;pointer-events:none}.confetti i{position:absolute;top:-16px;width:8px;height:13px;background:#e2a53c;animation:confetti-fall 3.5s ease-out both}.confetti i:nth-child(3n){background:#399e91}.confetti i:nth-child(3n + 1){background:#659ed2}.confetti i:nth-child(2n){border-radius:50%;width:9px;height:9px;animation-delay:.25s}
.confetti-0{left:4%;animation-delay:0.0s!important}.confetti-1{left:12%;animation-delay:0.12s!important}.confetti-2{left:20%;animation-delay:0.24s!important}.confetti-3{left:28%;animation-delay:0.36s!important}.confetti-4{left:36%;animation-delay:0.0s!important}.confetti-5{left:44%;animation-delay:0.12s!important}.confetti-6{left:52%;animation-delay:0.24s!important}.confetti-7{left:60%;animation-delay:0.36s!important}.confetti-8{left:68%;animation-delay:0.0s!important}.confetti-9{left:76%;animation-delay:0.12s!important}.confetti-10{left:84%;animation-delay:0.24s!important}.confetti-11{left:92%;animation-delay:0.36s!important}
@keyframes celebrate-pop{0%{transform:scale(.5);opacity:0}65%{transform:scale(1.13)}100%{transform:scale(1);opacity:1}}@keyframes confetti-fall{0%{transform:translateY(0) rotate(0);opacity:1}100%{transform:translateY(320px) rotate(450deg);opacity:0}}
@media(prefers-reduced-motion:reduce){.celebration-emoji,.confetti i{animation:none}.confetti{display:none}}
@media print{.claim-sheet .seal.seal-v2{--seal-diameter:13mm;padding:.6mm}.celebration{display:none!important}}

.topbar [data-action="logout"]{min-height:44px;min-width:94px;margin-left:auto;padding:10px 14px}

.auth-card>.app-version{display:block;text-align:center;margin-top:24px;padding-top:16px;border-top:1px solid #dbe3ec;color:#62758a;font-size:12px}.app-version-footer{padding:16px 24px 88px;text-align:center;color:#62758a;font-size:12px}.app-version-footer .app-version{font-size:inherit}@media print{.app-version-footer{display:none}}

/* Shared feedback standard: centre, non-blocking, responsive. */
.sidebar nav button{position:relative;display:flex;align-items:center;gap:10px;padding-right:14px}
.nav-count{position:static;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 5px;box-sizing:border-box;border-radius:999px;background:#c82333;color:#fff!important;font-size:14px;font-weight:750;line-height:1;border:0}
.role-preview-banner{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 24px;background:#fff1ce;color:#5a3b00;border-bottom:2px solid #d19b25}
.role-preview-banner strong{flex:1;min-width:180px}.role-preview-banner button{background:#fff}
.notice-item .actions{flex-wrap:wrap;justify-content:flex-end}
@media(max-width:640px){.topbar>.actions{flex-wrap:wrap;justify-content:flex-end}.role-preview-banner{padding:12px 16px}.sidebar nav button{padding-right:11px}.notice-item{flex-wrap:wrap}.notice-item .actions{width:100%}.nav-count{min-width:22px;height:22px}}
@media print{.role-preview-banner,.nav-count{display:none!important}}
#notice,.kiralie-auth-feedback{position:fixed;top:45%;left:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);width:max-content;max-width:calc(100vw - 32px);box-sizing:border-box;overflow-wrap:anywhere;z-index:100001}
@media(max-height:420px){#notice,.kiralie-auth-feedback{top:40%;max-height:calc(100dvh - 24px);overflow:auto}}
@media print{#notice,.kiralie-auth-feedback{display:none!important}}

#kiralie-request-feedback{position:fixed;left:50%;top:45%;transform:translate(-50%,-50%);z-index:2147483000;display:flex;align-items:center;gap:12px;max-width:calc(100vw - 32px);padding:16px 22px;border:1px solid #b8cde0;border-radius:14px;background:#fff;color:#173f64;box-shadow:0 12px 36px #102c4930;font:600 16px/1.5 system-ui,sans-serif}#kiralie-request-feedback .kiralie-auth-spinner{display:inline-block;box-sizing:border-box;width:24px;height:24px;flex-shrink:0;border:3px solid #ccdde9;border-top-color:#184a77;border-radius:50%;animation:kiralie-request-spin .8s linear infinite}@keyframes kiralie-request-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){#kiralie-request-feedback .kiralie-auth-spinner{animation:none}}@media print{#kiralie-request-feedback{display:none!important}}

.period-banner{background:#fff;border:1px solid #d2deea;border-left:5px solid #c82333;border-radius:12px;padding:20px 24px;margin:0 0 24px}.period-banner>strong{font-size:1.125rem}.period-banner p{margin:8px 0;line-height:1.6}.period-banner .deadline-emphasis{font-size:clamp(1.2rem,2.4vw,1.7rem);font-weight:800;color:#b51c2c}.period-message{font-weight:600;color:#16496c}.period-banner .callout{margin-top:16px}.submit-bar small{display:block}@media(max-width:600px){.period-banner{padding:16px}.period-banner .deadline-emphasis{font-size:1.25rem}}

.destination-choices{border:1px solid #cbd9e7;border-radius:10px;margin:18px 0;padding:16px}.destination-choices legend{padding:0 6px;font-weight:600}.destination-choices>div{display:grid;grid-template-columns:1fr 1fr;gap:10px}.destination-choices .check{padding:10px;margin:0;background:#f3f7fb;border-radius:6px;min-height:46px}.destination-choices input{flex-shrink:0}@media(max-width:600px){.destination-choices>div{grid-template-columns:1fr}.submit-guide .primary{white-space:normal}}
@media(max-width:760px){.submit-bar .submit-guide small{display:none}.submit-bar .submit-guide{flex:0 0 auto;margin-left:auto}.submit-bar .submit-guide .primary{white-space:nowrap;font-size:14px;padding:10px 12px}}

.portal-startup{min-height:55vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;color:#18344f;font:16px/1.6 system-ui,sans-serif}.portal-startup p{margin:0}.portal-startup a{padding:12px;color:#18344f}.portal-startup-spinner{display:inline-block;width:24px;height:24px;border:3px solid #ced8e2;border-top-color:#18344f;border-radius:50%;animation:portal-startup-turn .8s linear infinite}@keyframes portal-startup-turn{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.portal-startup-spinner{animation:none}}
