@font-face{font-family:Figtree;src:url(fonts/figtree.woff2) format('woff2');font-weight:300 900;font-display:swap}
@font-face{font-family:Syne;src:url(fonts/syne.woff2) format('woff2');font-weight:400 800;font-display:swap}
:root{--ym-brand:#5959d0;--ym-brand-ink:#4141aa;--ym-coral:#ff8058;--ym-canvas:#f7f7fc;--ym-surface:#fff;--ym-ink:#22223e;--ym-muted:#63637a;--ym-border:#e5e5f0;--ym-selected:#eeeefc;--ym-focus:#5959d0;--ym-radius:8px}
html.dark-mode{--ym-brand:#a9a9f0;--ym-brand-ink:#bdbdf8;--ym-coral:#ff9b7b;--ym-canvas:#10101e;--ym-surface:#19192a;--ym-ink:#f1f1fa;--ym-muted:#b4b4cd;--ym-border:#35354e;--ym-selected:#30304f;--ym-focus:#bdbdf8}
html,body,button,input,select,textarea,.form-control{font-family:Figtree,sans-serif;font-size:1rem}
body{background:var(--ym-canvas);color:var(--ym-ink)}
::selection{background:var(--ym-selected);color:var(--ym-brand-ink)}
button,a,input,select,textarea{outline-offset:3px}
:focus-visible{outline:2px solid var(--ym-focus)!important}
a{color:var(--ym-brand-ink)}
.btn-primary,.btn-primary:not(:disabled):not(.disabled):active{background:#5959d0;border-color:#5959d0;color:#fff;border-radius:var(--ym-radius)}
.btn-primary:hover,.btn-primary:focus{background:#4848b6;border-color:#4848b6}
.btn-secondary{border-radius:var(--ym-radius)}
.form-control,.custom-select{border-color:var(--ym-border);border-radius:var(--ym-radius);color:var(--ym-ink);background-color:var(--ym-surface)}
.formcontent .form-control,.formcontainer .form-control{min-height:44px}
.form-control:focus{border-color:var(--ym-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--ym-brand) 15%,transparent)}
.task-login #layout{display:block;width:100%;height:100%;min-height:100dvh;background:var(--ym-canvas)}
.task-login #layout-content{display:none}
#yasui-login{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr}
.yasui-welcome{background:#5959d0;color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:44px 56px 30px;position:relative;overflow:hidden}
.yasui-wordmark{display:flex;align-items:center;gap:18px;min-height:64px}
.yasui-wordmark img{width:156px;height:64px;object-fit:cover;object-position:center}
.yasui-wordmark>span{font-size:1.375rem;font-weight:600;border-left:1px solid #ffffff5c;padding-left:18px}
.yasui-welcome-copy{padding:65px 0 72px;max-width:550px}
.yasui-welcome-copy .yasui-display{font-family:Syne,Figtree,sans-serif;font-weight:600;font-size:3.75rem;line-height:1.14;letter-spacing:-.035em;margin:0 0 28px;max-width:none;color:#fff}
.yasui-welcome-copy .yasui-display span{color:#ffc3ae}
.yasui-welcome-copy>p{color:#ededff;font-size:1.125rem;line-height:1.6;max-width:350px;margin-bottom:32px}
.yasui-domain-list{display:flex;flex-wrap:wrap;gap:10px 20px;color:#ededff;font-size:.875rem}
.yasui-domain-list span{padding-bottom:8px;border-bottom:1px solid #ffffff42}
.yasui-welcome-foot{color:#ededff;font-size:.875rem;line-height:1.5;margin:0;max-width:330px}
.yasui-signin{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 56px 30px;position:relative;background:var(--ym-surface)}
.yasui-signin-inner{width:100%;max-width:390px;margin:auto 0}
.yasui-pilot-label{display:inline-flex;align-items:center;gap:8px;color:var(--ym-brand-ink);font-size:.8125rem;font-weight:600;margin-bottom:28px}
.yasui-pilot-label::before{content:'';width:7px;height:7px;display:inline-block;background:var(--ym-coral);border-radius:50%}
.yasui-signin #signin-title{font-family:Figtree,sans-serif;font-size:1.875rem;line-height:1.25;letter-spacing:-.025em;font-weight:650;margin:0 0 12px;color:var(--ym-ink)}
.yasui-signin-intro{font-size:1rem;line-height:1.5;color:var(--ym-muted);margin-bottom:34px}
.yasui-signin #login-form{position:static!important;top:auto!important;transform:none!important;width:100%;max-width:none;margin:0;text-align:left}
.yasui-signin #login-form table{width:100%;margin:0}
.yasui-signin #login-form tr{display:flex;flex-direction:column;margin:0 0 20px}
.yasui-signin #login-form td{display:block;padding:0;width:100%;text-align:left}
.yasui-signin #login-form td.title{display:block!important;margin-bottom:9px;font-size:.875rem;font-weight:600;color:var(--ym-ink)}
.yasui-signin #login-form input[type=text],.yasui-signin #login-form input[type=password]{height:50px;padding:12px 14px;font-size:1rem;background:var(--ym-canvas);border:1px solid var(--ym-border);box-shadow:none;width:100%}
.yasui-signin #login-form p.formbuttons{margin:28px 0 0}
.yasui-signin #login-form #rcmloginsubmit{width:100%;height:50px;font-size:.9375rem;font-weight:600;text-transform:none!important;letter-spacing:0}
.yasui-signin #login-form input.form-control{border-radius:8px!important}
.yasui-signin #login-form input[type=password],.yasui-signin #login-form input[name=_pass]{padding-right:52px}
.yasui-signin #login-form .yasui-password-toggle{position:absolute;right:3px;top:3px;display:grid;place-items:center;width:44px;height:44px;border:0;background:transparent;color:var(--ym-muted);border-radius:6px;cursor:pointer}
.yasui-signin #login-form .yasui-password-toggle:hover{background:var(--ym-selected);color:var(--ym-brand-ink)}
.yasui-signin .input-group-text,.yasui-signin .input-group-prepend{display:none}
.yasui-signin #login-form .btn-primary{background:#5959d0!important;border-color:#5959d0!important;color:#fff!important}
.yasui-signin-note{font-size:.8125rem;line-height:1.6;color:var(--ym-muted);margin-top:24px;padding-top:22px;border-top:1px solid var(--ym-border)}
.yasui-signin-note .yasui-pilot-label{display:flex;margin-bottom:8px;font-size:.75rem}
.yasui-signin-foot{display:flex;justify-content:space-between;width:100%;font-size:.75rem;color:var(--ym-muted);padding-top:48px;gap:16px}
.yasui-signin #login-footer{font-size:.8125rem;margin:0}
#taskmenu{background:#25254f;border-right:0}
#taskmenu a{color:#d9d9ee}
#taskmenu a.selected,#taskmenu a:hover{background:#454581;color:#fff}
#taskmenu .action-buttons a.compose{background:#ff8058;color:#301a14;margin:14px 10px 22px;border-radius:10px;min-height:58px}
#taskmenu .action-buttons a.compose:hover{background:#ff9979}
#taskmenu .action-buttons a.compose::before{color:#301a14}
#taskmenu .special-buttons{border-top:1px solid #ffffff24}
#taskmenu .button-logout{color:#ededfa}
#taskmenu a.yasui-admin-link::before{content:'\f1de'}
#layout-sidebar{background:var(--ym-canvas);border-color:var(--ym-border)}
#layout-list,#layout-content{background:var(--ym-surface);border-color:var(--ym-border)}
#layout-sidebar>.header,#layout-list>.header,#layout-content>.header{background:var(--ym-surface);border-color:var(--ym-border);min-height:65px}
#layout-sidebar>.header{padding-left:20px;padding-right:12px;font-size:.875rem;font-weight:600}
#layout-sidebar .footer{background:var(--ym-canvas);border-color:var(--ym-border)}
.folderlist li{margin:3px 10px;border-radius:var(--ym-radius)}
.folderlist li a{padding-top:10px;padding-bottom:10px;color:var(--ym-muted);font-size:.9375rem;border-radius:var(--ym-radius)}
.folderlist li.selected>a,.folderlist li.selected>div>a{background:var(--ym-selected);color:var(--ym-brand-ink);font-weight:650}
.folderlist li a:hover{background:var(--ym-selected);color:var(--ym-ink)}
.folderlist li .unreadcount{background:var(--ym-selected);color:var(--ym-brand-ink);font-weight:600;border-radius:5px}
.searchbar{background:var(--ym-canvas);border-bottom-color:var(--ym-border);padding:8px}
.searchbar input{font-size:.875rem}
.messagelist td{border-color:var(--ym-border);padding-top:16px;padding-bottom:16px}
.messagelist tr.selected td{background:var(--ym-selected);color:var(--ym-ink)}
.messagelist tr.unread .subject{font-weight:650}
.messagelist .subject a{color:var(--ym-ink)}
.messagelist .date,.messagelist .fromto{color:var(--ym-muted)}
.messagelist tr:hover td{background:var(--ym-canvas)}
.message-header{background:var(--ym-surface);border-color:var(--ym-border)}
.message-header h2.subject{font-size:1.5rem;line-height:1.35;font-weight:650;color:var(--ym-ink);letter-spacing:-.02em}
.header-headers,.header-summary{color:var(--ym-muted);font-size:.875rem}
.yasui-pilot-status{font-size:.75rem;color:var(--ym-muted);padding:10px 8px;margin:0;white-space:normal;line-height:1.4}
.yasui-live-status{font-size:.75rem;color:var(--ym-brand-ink);padding:8px 8px 0;margin:0;white-space:normal;line-height:1.4}
.toolbar a{border-radius:6px;transition:background-color 150ms,color 150ms}
.toolbar a:hover{background:var(--ym-selected);color:var(--ym-brand-ink)}
.ym-mail-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 12px;padding:12px 12px 8px;background:var(--ym-surface);border-bottom:1px solid var(--ym-border)}
.ym-mail-controls label{display:flex;flex-direction:column;gap:4px;margin:0;min-width:0;color:var(--ym-muted);font-size:.75rem;font-weight:500}
.ym-mail-controls select{width:100%;min-width:0;min-height:44px;padding:8px 26px 8px 10px;border:1px solid var(--ym-border);border-radius:6px;background-color:var(--ym-canvas);color:var(--ym-ink);font:inherit;font-size:.875rem;text-overflow:ellipsis}
.ym-mail-controls select:focus-visible{outline:2px solid var(--ym-focus);outline-offset:2px}
.ym-view-context{grid-column:1/-1;margin:0;color:var(--ym-muted);font-size:.75rem;line-height:1.5}
.ym-message-origin{display:block;clear:both;float:none!important;width:max-content;max-width:100%;margin-top:5px;padding:2px 6px;border-radius:4px;background:var(--ym-selected);color:var(--ym-brand-ink);font-size:.6875rem;line-height:1.4;font-weight:500;overflow:hidden;text-overflow:ellipsis}
#searchmenu [hidden]{display:none!important}
.floating-action-buttons a.button.compose,html.dark-mode .floating-action-buttons a.button.compose{background:#ff8058;color:#301a14}
.floating-action-buttons a.button.compose:hover,html.dark-mode .floating-action-buttons a.button.compose:hover{background:#ff9979}
html.dark-mode #layout-sidebar,html.dark-mode #layout-sidebar .footer{background:var(--ym-canvas);border-color:var(--ym-border)}
html.dark-mode body{background:var(--ym-surface);color:var(--ym-ink)}
html.dark-mode .form-control,html.dark-mode .custom-select{background-color:var(--ym-canvas);color:var(--ym-ink)}
html.dark-mode .form-control:not(.is-invalid){border-color:var(--ym-border)}
html.dark-mode .form-control:focus:not(.is-invalid){background-color:var(--ym-canvas);border-color:var(--ym-focus);color:var(--ym-ink)!important}
.custom-control-input:checked~.custom-control-label::before,html.dark-mode .custom-switch .custom-control-input:checked~.custom-control-label::before{background-color:#5959d0;border-color:#a9a9f0}
html.dark-mode .btn-primary{background:#5959d0;border-color:#5959d0;color:#fff}
html.dark-mode .btn-primary:hover{background:#4848b6;border-color:#4848b6}
html.dark-mode #layout-list,html.dark-mode #layout-content{background:var(--ym-surface);border-color:var(--ym-border)}
html.dark-mode #layout>div>.header,html.dark-mode #layout>div>.footer{background:var(--ym-surface);border-color:var(--ym-border);color:var(--ym-ink)}
html.dark-mode #layout-menu,html.dark-mode #taskmenu{background:#25254f;border-color:#35354e}
html.dark-mode #taskmenu .special-buttons a:not(:focus){background:transparent}
html.dark-mode #taskmenu a{color:#d9d9ee}
html.dark-mode #taskmenu a.selected,html.dark-mode #taskmenu a:hover{background:#454581;color:#fff}
html.dark-mode #taskmenu .action-buttons a.compose{background:#ff8058;color:#301a14}
html.dark-mode .folderlist li a{color:var(--ym-muted)}
html.dark-mode .folderlist li.selected,html.dark-mode .folderlist li.selected>a,html.dark-mode .folderlist li.selected>div>a{background:var(--ym-selected);color:var(--ym-brand-ink)}
html.dark-mode .folderlist li.selected ul{background:var(--ym-canvas)}
html.dark-mode .folderlist li a:hover{background:var(--ym-selected);color:var(--ym-ink)}
html.dark-mode .folderlist li .unreadcount{background:var(--ym-selected);color:var(--ym-brand-ink)}
html.dark-mode .messagelist tr td{background:var(--ym-surface);border-color:var(--ym-border);color:var(--ym-ink)}
html.dark-mode .messagelist tr.selected td{background:var(--ym-selected);color:var(--ym-ink)}
html.dark-mode .messagelist tr:hover td{background:var(--ym-canvas)}
html.dark-mode .messagelist tr:not(.flagged):not(.deleted) td.subject span.date,html.dark-mode .messagelist tr:not(.flagged):not(.deleted) td.subject span.fromto{color:var(--ym-muted)}
@media(min-width:1025px){#layout-menu{flex:0 0 76px;width:76px}#taskmenu a .inner{display:none}#taskmenu>a,#taskmenu>.special-buttons>a{min-height:54px;padding:14px 8px}#taskmenu .action-buttons a.compose{min-height:52px;margin:8px 12px 16px}#taskmenu a::before{font-size:21px}}
@media(min-width:1025px){#layout-sidebar{flex:0 0 260px;width:260px}#layout-list{min-width:340px;flex-basis:360px}}
@media(max-width:1100px){.yasui-welcome{padding:36px}.yasui-welcome-copy .yasui-display{font-size:3rem}.yasui-signin{padding:48px 36px 24px}}
@media(max-width:767px){#yasui-login{grid-template-columns:1fr;min-height:100dvh}.yasui-welcome{padding:18px 24px;min-height:86px;justify-content:center}.yasui-wordmark{min-height:50px}.yasui-wordmark img{width:126px;height:50px}.yasui-wordmark>span{font-size:1.125rem}.yasui-welcome-copy,.yasui-welcome-foot{display:none}.yasui-signin{padding:38px 24px 24px;min-height:calc(100dvh - 86px);justify-content:space-between}.yasui-signin-inner{margin:20px 0 0;max-width:420px}.yasui-signin #signin-title{font-size:1.75rem}.yasui-pilot-label{margin-bottom:22px}.yasui-signin-foot{padding-top:40px;max-width:420px}.task-login #layout{height:auto}#taskmenu .action-buttons a.compose{min-height:44px;margin:8px}.folderlist li a{min-height:44px}.toolbar a{min-height:44px}.yasui-pilot-status{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
/* An explicit, reachable submit action accompanies the field selector. */
.searchbar a.button.search{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}
.searchbar a.button.search::before{content:'\f002';line-height:44px}
.searchbar{height:auto;min-height:52px;flex-shrink:0}
.searchbar form{min-width:0}
.searchbar:focus-within{box-shadow:inset 0 -2px var(--ym-focus)}
.yasui-live-status[hidden]{display:none!important}

/* The sender owns its email design; the reader owns selection and viewport fit. */
#messagebody{min-width:0;max-width:100%}
#messagebody .message-htmlpart,#messagebody .message-part{min-width:0;max-width:100%}
#messagebody .rcmBody{max-width:100%;overflow-x:auto;overflow-y:visible;overscroll-behavior-x:contain}
#messagebody,#messagebody *{-webkit-user-select:text!important;user-select:text!important;-webkit-touch-callout:default!important}
#messagebody .message-htmlpart table{max-width:100%!important}
#messagebody .message-htmlpart img{max-width:100%!important;height:auto}
#messagebody .rcmBody{overflow-wrap:anywhere}
#messagebody .message-part div.pre{white-space:normal;overflow-wrap:anywhere;font-size:.9375rem;line-height:1.6}
#messagebody .message-htmlpart ::selection{background:#cfcff9;color:#202034}
