.link-card-section{gap:.65rem;margin-top:1rem;display:grid}.link-card-heading{color:var(--color-brand-navy);align-items:center;gap:.4rem;display:flex}.link-card-heading h2{font-size:.95rem;font-weight:var(--font-weight-bold);margin:0}.link-card-description{font-size:.95rem;font-weight:var(--font-weight-regular);margin:0;line-height:1.8}.link-card-heading-icon,.link-card-icon,.link-card-external{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px}.link-card-heading-icon{width:1.1rem;height:1.1rem}.link-card-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.link-card{box-sizing:border-box;border:1px solid var(--color-border-subtle);width:100%;min-height:3.5rem;color:var(--color-brand-navy);background:var(--color-surface-page);border-radius:.85rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.75rem .9rem;text-decoration:none;display:grid}.link-card:hover{border-color:var(--color-border-action);background:var(--color-surface-subtle)}.link-card:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}.link-card-icon{width:1.5rem;height:1.5rem;color:var(--color-brand-orange)}.link-card-label{overflow-wrap:anywhere;min-width:0;color:var(--color-brand-navy);font-size:var(--font-size-card-label);font-weight:var(--font-weight-bold);line-height:1.45}.link-card-external{width:1rem;height:1rem;color:var(--color-icon-muted)}.conversation-feedback{background:var(--color-surface-subtle);border:0;border-radius:.9rem;min-inline-size:0;margin-block:.25rem 1.25rem;padding:.75rem;font-size:.875rem;line-height:1.5}.conversation-feedback-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem .75rem;display:flex}.conversation-feedback-prompt{color:var(--color-text-primary);font-weight:var(--font-weight-bold);align-items:center;gap:.6rem;margin:0;display:flex}.conversation-feedback-options{flex-wrap:wrap;gap:.35rem;margin-inline-start:auto;display:flex}.conversation-feedback button{border:1px solid var(--color-border-default);min-height:2rem;color:var(--color-text-secondary);background:var(--color-surface-page);font-size:.8rem;font-weight:var(--font-weight-bold);border-radius:.7rem;justify-content:center;align-items:center;gap:.35rem;padding:.25rem .5rem;display:inline-flex}.conversation-feedback .conversation-feedback-yes{color:var(--color-text-action);border-color:var(--color-border-action)}.conversation-feedback button:hover:not(:disabled):not([aria-pressed=true]){border-color:var(--color-border-action);color:var(--color-text-action)}.conversation-feedback button[aria-pressed=true]{color:var(--color-text-on-action);border-color:var(--color-border-action);background:var(--color-surface-action);box-shadow:inset 0 0 0 1px var(--color-border-action)}.conversation-feedback svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1rem;height:1rem}.feedback-thumb-down{transform:rotate(180deg)}.conversation-feedback-error{color:var(--color-text-error);margin:.75rem 0 0}.new-conversation-button{min-height:2.75rem;color:var(--color-brand-navy);font-size:.8125rem;font-weight:var(--font-weight-medium);white-space:nowrap;background:0 0;border:0;border-radius:.45rem;align-items:center;padding:0;line-height:1.5;display:inline-flex}.new-conversation-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1.1rem;height:1.1rem}.new-conversation-label{border:1px solid var(--color-border-default);border-radius:inherit;background:var(--color-surface-page);align-items:center;gap:.35rem;padding:.3125rem .5rem;display:inline-flex}.new-conversation-button:hover:not(:disabled) .new-conversation-label{border-color:var(--color-brand-orange);color:var(--color-brand-navy);background:var(--color-surface-subtle)}.new-conversation-dialog{border:1px solid var(--color-border-default);width:min(100% - 2rem,28rem);color:var(--color-text-primary);background:var(--color-surface-page);box-shadow:var(--shadow-dialog);border-radius:.75rem;padding:1.5rem}.new-conversation-dialog::backdrop{background:var(--color-scrim)}.new-conversation-dialog h2{color:var(--color-brand-navy);margin:0;font-size:1.15rem;line-height:1.5}.new-conversation-dialog p{margin:.75rem 0 0;line-height:1.6}.new-conversation-error{color:var(--color-text-error)}.new-conversation-actions{justify-content:flex-end;gap:.75rem;margin-top:1.5rem;display:flex}.new-conversation-actions button{border:1px solid var(--color-border-default);min-height:2.75rem;color:var(--color-brand-navy);background:var(--color-surface-page);font-weight:var(--font-weight-bold);border-radius:.45rem;padding:.5rem .8rem}.new-conversation-actions .new-conversation-confirm{border-color:var(--color-border-action);color:var(--color-text-on-action);background:var(--color-surface-action)}@media (width<=30rem){.new-conversation-actions{flex-direction:column}.new-conversation-actions button{width:100%}}.usage-notice{border:1px solid var(--color-border-subtle);color:var(--color-text-primary);background:var(--color-surface-page);font-size:var(--font-size-label);line-height:var(--line-height-body);text-align:start;overflow-wrap:anywhere;border-radius:.9rem;gap:.625rem;padding:1rem;display:grid}.usage-notice h2{color:var(--color-brand-navy);font-size:var(--font-size-label);font-weight:var(--font-weight-bold);line-height:var(--line-height-label);margin:0}.usage-notice p{margin:0}.usage-notice-supporting{color:var(--color-text-secondary);font-size:.8125rem}.usage-notice ul{gap:.5rem;margin:0;padding-inline-start:1.125rem;display:grid}.usage-notice li::marker{color:var(--color-icon-muted)}.usage-notice strong{font-weight:var(--font-weight-bold)}.usage-notice-prohibited{color:var(--color-text-error)}.usage-notice li.usage-notice-prohibited::marker{color:var(--color-text-error)}@media (width>=40rem){.usage-notice{padding:1.25rem 1.5rem}}.welcome-view{width:min(100%, var(--size-chat-content));min-height:100%;color:var(--color-text-primary);font-size:var(--font-size-body);font-weight:var(--font-weight-regular);line-height:var(--line-height-body);align-content:center;gap:2rem;margin-inline:auto;padding-block:2rem 1.5rem;display:grid}.welcome-greeting{text-align:center;justify-items:center;gap:.25rem;display:grid}.welcome-subtitle{color:var(--color-text-action);font-size:var(--font-size-label);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);margin:0}.welcome-greeting h1{color:var(--color-brand-navy);font-size:1.375rem;font-weight:var(--font-weight-bold);margin:0;line-height:1.5}.welcome-questions{gap:.75rem;display:grid}.welcome-questions h2{color:var(--color-text-primary);font-size:var(--font-size-label);font-weight:var(--font-weight-bold);line-height:var(--line-height-label);margin:0}.welcome-question-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.welcome-question-list button{border:1px solid var(--color-border-subtle);min-height:4.5rem;color:var(--color-brand-navy);background:var(--color-surface-page);box-shadow:var(--shadow-card);font:inherit;font-size:var(--font-size-card-label);font-weight:var(--font-weight-bold);line-height:var(--line-height-label);text-align:start;overflow-wrap:anywhere;border-radius:.9rem;grid-template-columns:1.5rem minmax(0,1fr) 1rem;align-items:center;gap:.85rem;padding:.85rem 1rem;display:grid}.welcome-question-icon{width:1.5rem;height:1.5rem;color:var(--color-text-action)}.welcome-question-arrow{width:1rem;height:1rem;color:var(--color-icon-muted)}.welcome-question-list button:hover:not(:disabled){border-color:var(--color-border-action);background:var(--color-surface-subtle)}.welcome-question-list button:active:not(:disabled){border-color:var(--color-border-action);box-shadow:none}@media (width<=40rem){.welcome-view{align-content:start;gap:1.5rem;padding-block:1.25rem}.welcome-greeting h1{font-size:1.125rem}}@media (width<=35rem){.welcome-question-list{grid-template-columns:1fr}}:root{--space-page-inline:.75rem;--size-chat-content:42rem;--font-size-body:1rem;--font-size-label:.875rem;--font-size-supporting:var(--font-size-label);--font-size-card-label:var(--font-size-label);--line-height-body:1.6;--line-height-label:1.5;--font-family-body:"NotoSansJp", sans-serif;--font-weight-regular:400;--font-weight-medium:500;--font-weight-bold:700;--color-brand-navy:#00215a;--color-brand-orange:#f26001;--color-surface-page:#fff;--color-surface-subtle:#f4f6f8;--color-surface-error:#fff4f2;--color-surface-action:var(--color-brand-orange);--color-text-primary:#333;--color-text-secondary:#526075;--color-text-on-action:#fff;--color-text-action:var(--color-brand-orange);--color-text-link:var(--color-brand-orange);--color-text-error:#b42318;--color-border-default:#7b8799;--color-border-subtle:#e3e7ee;--color-border-focus:#005fcc;--color-border-action:var(--color-brand-orange);--color-border-error:#b42318;--color-focus-ring:#005fcc;--color-icon-muted:#526075;--color-scrim:#17203361;--shadow-card:0 2px 8px #00215a0a;--shadow-dialog:0 1rem 3rem #17203333}@font-face{font-family:NotoSansJp;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/NotoSansJP-Regular-Subset-DJw-avji.woff2)format("woff2")}@font-face{font-family:NotoSansJp;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/NotoSansJP-Medium-Subset-FVvC4-12.woff2)format("woff2")}@font-face{font-family:NotoSansJp;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/NotoSansJP-Bold-Subset-DW0D6V_i.woff2)format("woff2")}.composer-hints{justify-content:space-between;align-items:center;gap:1rem;display:flex}:root{color:var(--color-text-primary);background:var(--color-surface-page);font-family:var(--font-family-body);font-synthesis:none;text-rendering:optimizelegibility;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{background:var(--color-surface-page);min-width:20rem}html:has(.support-shell){overscroll-behavior-y:none}body,#root{min-width:20rem;min-height:100%;margin:0}body{color:var(--color-text-primary);background:var(--color-surface-page);font-size:1rem;font-weight:var(--font-weight-medium);letter-spacing:.04em;-webkit-text-size-adjust:100%;line-height:1.8}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{cursor:pointer}button:disabled,textarea:disabled,input:disabled{cursor:not-allowed;opacity:.58}:where(button,input,textarea,a):focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:3px}.skip-link{z-index:20;color:var(--color-surface-page);background:var(--color-brand-navy);border-radius:5px;padding:.6rem .9rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.support-shell{inset-inline:0;top:var(--chat-viewport-top,0px);height:var(--chat-viewport-height,100dvh);background:var(--color-surface-page);grid-template:"header""content"minmax(0,1fr)"composer"/minmax(0,1fr);display:grid;position:fixed;overflow:hidden}.chat-header{z-index:2;border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface-page);grid-area:header;justify-content:space-between;align-items:center;gap:1rem;min-height:4.75rem;padding-block:.8rem;display:flex;position:relative}.chat-identity,.composer-input-row{align-items:center;display:flex}.chat-identity{flex-direction:column;align-items:flex-start;gap:.1rem;min-width:0}.service-logo{flex:none;width:11.4rem;height:auto;display:block}.service-home-link{border-radius:.25rem;align-items:center;min-height:2.75rem;display:inline-flex}.chat-main{overscroll-behavior:none;scrollbar-gutter:stable;background:var(--color-surface-page);grid-area:content;min-height:0;scroll-padding-block:1.5rem;overflow-y:auto}.chat-header,.chat-main,.composer-dock{padding-inline:max(var(--space-page-inline), env(safe-area-inset-left)) max(var(--space-page-inline), env(safe-area-inset-right))}.message-list,.error-banner,.composer,.conversation-feedback{width:min(100%, var(--size-chat-content));margin-inline:auto}.message-list{gap:1.75rem;margin-block:0;padding:2rem 0 1.25rem;list-style:none;display:grid}.message{align-items:flex-start;display:flex}.message-user{justify-content:flex-end}.message-content{width:100%}.message-user .message-content{width:fit-content;max-width:min(88%,41rem)}.message-body{font-size:.95rem;font-weight:var(--font-weight-regular);overflow-wrap:anywhere;background:0 0;border:0;padding:.1rem 0 0;line-height:1.8}.message-assistant .message-body{color:var(--color-text-primary)}.message-user .message-body{color:var(--color-text-primary);background:var(--color-surface-subtle);border-radius:1.1rem 1.1rem .3rem;padding:.8rem 1rem}.message-body :first-child{margin-top:0}.message-body :last-child{margin-bottom:0}.message-body :is(p,ul,ol){margin-block:.65rem}.message-body :is(ul,ol){padding-left:1.4rem}.message-body a{color:var(--color-text-link);font-weight:var(--font-weight-medium);text-underline-offset:3px;text-decoration:underline}.message-body a:hover,.message-body a:active{text-decoration-thickness:2px}.inline-external-icon{vertical-align:-.05em;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:.8em;height:.8em;margin-inline-start:.2em;display:inline-block}.thinking-indicator{align-items:center;gap:.3rem;width:fit-content;min-height:2rem;padding-inline:.25rem;display:flex}.thinking-indicator span{background:var(--color-brand-orange);border-radius:50%;width:.38rem;height:.38rem;animation:1.2s ease-in-out infinite thinking-pulse}.thinking-indicator span:nth-child(2){animation-delay:.12s}.thinking-indicator span:nth-child(3){animation-delay:.24s}@keyframes thinking-pulse{0%,65%,to{opacity:.25;transform:translateY(0)}35%{opacity:1;transform:translateY(-.2rem)}}.outcome-out-of-scope{border-color:var(--color-text-secondary);color:var(--color-text-secondary)}.redaction-note{color:var(--color-text-secondary);margin:.45rem 0 0;font-size:.72rem}.error-banner{gap:.2rem;margin-block:0 1.5rem;font-size:.82rem;display:grid}.error-banner,.message-body.input-rejection-notice{border:1px solid var(--color-border-error);color:var(--color-text-error);background:var(--color-surface-error);border-radius:5px;padding:.85rem 1rem}.input-rejection-notice a{color:var(--color-text-link)}.input-rejection-notice a:hover,.input-rejection-notice a:active{text-decoration-thickness:2px}.composer-dock{z-index:2;background:var(--color-surface-page);grid-area:composer;position:relative}.composer{padding-block:1rem max(.85rem, env(safe-area-inset-bottom))}.language-notice,.composer-support-text{color:var(--color-text-secondary);font-size:var(--font-size-supporting);font-weight:var(--font-weight-regular);letter-spacing:normal;line-height:var(--line-height-label);overflow-wrap:anywhere}.language-notice{margin-bottom:.65rem}.composer-support-text{flex:1;min-width:0;margin:0;padding:.5rem .25rem}.language-notice p{margin:0}.composer-input-row{border:1px solid var(--color-border-default);background:var(--color-surface-page);box-shadow:none;border-radius:1.2rem;padding:.35rem;position:relative}.composer textarea{resize:none;width:100%;min-height:3.75rem;color:var(--color-text-primary);background:var(--color-surface-page);font-size:.95rem;font-weight:var(--font-weight-regular);border:0;border-radius:.9rem;padding:.65rem 4.15rem .65rem .7rem;line-height:1.65;overflow-y:auto}.composer textarea::placeholder{color:var(--color-text-secondary);opacity:1}.composer textarea:focus{outline:0}.composer-input-row:focus-within{border-color:var(--color-border-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-border-focus) 20%, transparent)}.send-button{width:2.75rem;height:2.75rem;color:var(--color-text-on-action);background:var(--color-surface-action);font-size:1.2rem;font-weight:var(--font-weight-bold);box-shadow:none;border:0;border-radius:.85rem;place-items:center;display:grid;position:absolute;bottom:.6rem;right:.6rem}.send-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:1.35rem;height:1.35rem}.send-button:hover:not(:disabled):not(.stop-button){color:var(--color-text-action);background:var(--color-surface-page);box-shadow:inset 0 0 0 1px var(--color-border-action)}.stop-button{background:var(--color-brand-navy);box-shadow:none}.stop-icon{background:currentColor;border-radius:.12rem;width:.7rem;height:.7rem;display:block}.composer-meta{color:var(--color-text-secondary);font-size:.75rem;font-weight:var(--font-weight-regular);margin-top:.35rem;display:flex}.composer-meta p{margin:0}.admin-page{background:var(--color-surface-page);min-height:100dvh}.admin-header{border-bottom:1px solid var(--color-border-subtle);padding:1rem clamp(1rem,4vw,2rem)}.support-brand{color:var(--color-brand-navy);text-decoration:none}.support-brand .brand-symbol{display:none}.support-brand .brand-copy{display:grid}.support-brand small{color:var(--color-text-secondary)}.admin-panel{width:min(100% - 2rem,56rem);margin-inline:auto;padding-block:clamp(2.5rem,7vw,5rem)}.eyebrow{color:var(--color-brand-orange);font-size:.75rem;font-weight:var(--font-weight-bold);letter-spacing:.08em;margin:0}.admin-panel h1{color:var(--color-brand-navy);margin:.25rem 0 0;font-size:clamp(1.7rem,4vw,2.4rem)}.admin-intro{font-weight:var(--font-weight-regular);margin:.8rem 0 2rem}.admin-panel form,.admin-field{display:grid}.admin-panel form{gap:1.5rem}.admin-field{gap:.4rem}.admin-field label{color:var(--color-brand-navy);font-weight:var(--font-weight-bold)}.admin-field p{color:var(--color-text-secondary);font-size:.78rem;font-weight:var(--font-weight-regular);margin:0}.admin-token-row{grid-template-columns:minmax(0,1fr) auto;gap:.65rem;display:grid}.admin-field input,.admin-field textarea{border:1px solid var(--color-border-default);width:100%;color:var(--color-text-primary);background:var(--color-surface-page);border-radius:5px;padding:.7rem .9rem}.admin-field textarea{resize:vertical;min-height:24rem;line-height:1.8}.admin-token-row button,.primary-button{color:var(--color-text-on-action);background:var(--color-surface-action);border:0;border-radius:5px;padding:.7rem 1.1rem}.admin-actions{justify-content:space-between;align-items:center;gap:1rem;display:flex}.admin-actions span,.admin-feedback{color:var(--color-text-secondary);font-size:.78rem}.admin-success{color:var(--color-brand-navy)}.admin-error{color:var(--color-text-error)}@media (width>=48rem){.support-shell{--space-page-inline:1.5rem}}@media (width<=40rem){.chat-header{min-height:3.5rem;padding-block:max(.25rem, env(safe-area-inset-top)) .25rem}.chat-identity{gap:.05rem}.chat-header .service-logo{width:9rem;max-width:100%}.message-user .message-content{max-width:min(90%,32rem)}.message-list{gap:1.5rem;padding-block:1rem 1.25rem}.composer{padding-block:.25rem max(.375rem, env(safe-area-inset-bottom))}.composer-input-row{border-radius:1rem;padding:.25rem}.composer textarea{min-height:2.75rem;padding:.5rem 3.5rem .5rem .65rem;font-size:1rem}.send-button{width:2.75rem;height:2.75rem;bottom:.25rem;right:.25rem}.composer-support-text{padding-block:.25rem 0}.composer-hints{display:block}.desktop-composer-hint,.composer-meta{display:none}.admin-token-row{grid-template-columns:1fr}}@media (height<=36rem){.composer{padding-top:.5rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}.thinking-indicator span{opacity:.55;animation:none}}.conversation-limit-notice{width:min(100%, var(--size-chat-content));background:var(--color-surface-subtle);color:var(--color-text-secondary);font-size:var(--font-size-supporting);overflow-wrap:anywhere;border-radius:12px;margin:0 auto 12px;padding:12px 16px;line-height:1.7}
