.ym-apps-enabled{--ym-paper:#fbf8f3;--ym-ink:#352c31;--ym-muted:#716369;--ym-wine:#702e43;--ym-line:#ded3cd}
.ym-app-page .ym-footer{margin-top:45px}.ym-auth-layout{max-width:1200px;margin:auto;padding:70px 38px 80px;display:grid;grid-template-columns:1fr 1fr;gap:76px;align-items:start}.ym-auth-story{padding:30px 0}.ym-auth-story h1{font-size:clamp(42px,4.3vw,64px)}.ym-auth-story>p:not(.ym-eyebrow){max-width:360px;font-size:15px;line-height:1.9;color:var(--ym-muted);margin-top:26px}.ym-auth-word{padding:38px 0 30px;display:flex;flex-direction:column;gap:10px}.ym-auth-word>span:first-child{font:52px/1.4 "Yu Mincho",Georgia,serif;letter-spacing:.07em;color:#ac7580}.ym-auth-word>span:last-child{font:italic 22px Georgia,serif;color:#734552}.ym-auth-word small{font:11px "Segoe UI",Arial,sans-serif;color:var(--ym-muted);margin-left:8px}.ym-auth-card{background:#fffdf9;border:1px solid #e3d5cc;border-radius:12px;padding:38px;box-shadow:0 14px 50px #7140520a}.ym-auth-card h2{font-size:31px;margin-bottom:12px}.ym-form-lead{font:14px/1.8 "Segoe UI",Arial,sans-serif;color:var(--ym-muted);margin:12px 0 27px!important}.ym-form-switch{border-top:1px solid var(--ym-line);padding-top:24px;margin-top:23px!important;font:12px/1.8 "Segoe UI",Arial,sans-serif}.ym-form-switch a{color:var(--ym-wine);font-weight:600}.ym-app-title{max-width:1200px;padding:54px 38px 35px;margin:auto}.ym-app-title h1{font-size:clamp(39px,3.8vw,57px)}.ym-app-title>p:last-child{color:var(--ym-muted);font-size:14px;line-height:1.8;max-width:640px;margin-top:21px}.ym-registration-layout{max-width:1200px;padding:10px 38px 60px;margin:auto;display:grid;grid-template-columns:245px minmax(0,1fr);gap:50px;align-items:start}.ym-registration-aside{position:sticky;top:30px;padding-top:20px}.ym-registration-nav{display:grid;gap:5px}.ym-registration-nav a{display:flex;align-items:center;gap:14px;font-size:13px;padding:12px 0}.ym-registration-nav a span{font:italic 20px Georgia,serif;color:#956370}.ym-registration-aside>p:not(.ym-eyebrow){font-size:12px;line-height:1.8;margin-top:25px;padding-top:24px;border-top:1px solid var(--ym-line);color:var(--ym-muted)}.ym-registration-aside a:hover{text-decoration:underline;text-underline-offset:4px}.ym-aside-note{margin-top:30px;background:#f1e2db;padding:24px 20px;border-radius:5px;font:italic 16px/1.7 Georgia,serif;color:#754757}.ym-aside-note>span{display:block;font-size:36px;margin-bottom:10px}.ym-registration-card{padding:32px 38px;background:#fffdf9;border:1px solid #e3d5cc;border-radius:12px;min-width:0}
/* Preserve Forminator conditions, errors, nonces and AJAX behavior. */
.ym-apps-enabled .ym-form-surface{font-family:"Segoe UI",Arial,sans-serif;color:var(--ym-ink)}
.ym-apps-enabled .ym-form-surface .forminator-ui{font-family:"Segoe UI",Arial,sans-serif!important;background:transparent!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important}
.ym-apps-enabled .ym-form-surface .forminator-row{margin-bottom:22px!important}.ym-apps-enabled .ym-form-surface .forminator-field{font-family:inherit!important;min-width:0}.ym-apps-enabled .ym-form-surface .forminator-label{font:600 12px/1.5 "Segoe UI",Arial,sans-serif!important;color:#49383f!important;margin-bottom:9px!important}.ym-apps-enabled .ym-form-surface .forminator-description{font:11px/1.7 "Segoe UI",Arial,sans-serif!important;color:#78666f!important;margin-top:7px!important}.ym-apps-enabled .ym-form-surface :is(.forminator-input,.forminator-textarea,.forminator-select2 .select2-selection,.su-custom-form input){font:14px/1.5 "Segoe UI",Arial,sans-serif!important;background:#fcfaf6!important;border:1px solid #d9c9c3!important;border-radius:5px!important;color:#382d33!important;padding:13px 14px!important;box-shadow:none!important;height:auto!important;min-height:47px;max-width:100%}.ym-apps-enabled .ym-form-surface .forminator-textarea{min-height:135px;resize:vertical}.ym-apps-enabled .ym-form-surface :is(input,textarea,select):focus{outline:2px solid #af6a7c!important;outline-offset:2px!important;border-color:#a06275!important}.ym-apps-enabled .ym-form-surface :is(.forminator-input,.forminator-textarea)::placeholder{color:#98878d!important;opacity:1}.ym-apps-enabled .ym-form-surface :is(.forminator-button-submit,.su-custom-form button[type="submit"]){font:600 13px/1.5 "Segoe UI",Arial,sans-serif!important;background:#702e43!important;border:1px solid #702e43!important;color:#fffaf6!important;border-radius:5px!important;padding:15px 23px!important;box-shadow:none!important;min-height:49px;transition:background .15s}.ym-apps-enabled .ym-form-surface .forminator-button-submit:hover{background:#512031!important}.ym-apps-enabled .ym-auth-card .forminator-button-submit,.ym-apps-enabled .ym-contact-form .forminator-button-submit{width:100%!important}.ym-apps-enabled .ym-form-surface .forminator-required{color:#8a3c50!important}.ym-apps-enabled .ym-form-surface :is(.forminator-checkbox-label,.forminator-radio-label){font:12px/1.65 "Segoe UI",Arial,sans-serif!important;color:#51434a!important}.ym-apps-enabled .ym-form-surface :is(.forminator-checkbox-box,.forminator-radio-bullet){border-color:#b99aa4!important;flex-shrink:0}.ym-apps-enabled .ym-form-surface input:checked+.forminator-checkbox-box{background:#702e43!important;border-color:#702e43!important}.ym-apps-enabled .ym-form-surface input:checked+.forminator-radio-bullet::before{background:#702e43!important}.ym-apps-enabled .ym-form-surface .forminator-title{font:400 28px/1.25 Georgia,serif!important;letter-spacing:-.025em!important;color:#613345!important;margin:15px 0 10px!important;scroll-margin-top:25px}.ym-apps-enabled .ym-form-surface .forminator-subtitle{font:13px/1.8 "Segoe UI",Arial,sans-serif!important;color:#7b666e!important;margin:0 0 22px!important}.ym-apps-enabled .ym-form-surface .forminator-field-group{background:transparent!important;border:0!important;box-shadow:none!important;padding-top:8px!important}.ym-apps-enabled .ym-form-surface .forminator-response-message{font:13px/1.7 "Segoe UI",Arial,sans-serif!important;border-radius:6px!important}.ym-apps-enabled .ym-form-surface .forminator-error-message{font-size:12px!important;line-height:1.5!important;color:#922f3b!important;background:#fff0ed!important;border-radius:3px!important;padding:8px 10px!important}.ym-apps-enabled .ym-form-surface .forminator-has_error .forminator-input{border-color:#b13f50!important}.ym-apps-enabled .ym-form-surface a{color:#702e43;text-underline-offset:3px}.ym-password-toggle{border:0;background:transparent;color:#702e43;font:600 11px/1.5 "Segoe UI",Arial,sans-serif;padding:8px 0!important;cursor:pointer}.ym-password-toggle:hover{background:transparent!important;color:#512031!important}.ym-form-surface .su-custom-form p{font-size:14px;line-height:1.8;margin-bottom:18px}.ym-form-surface .su-custom-form label{display:block;margin-bottom:8px}.ym-form-surface .su-custom-form button{width:100%}.ym-form-surface .su-message,.ym-form-surface .error{padding:18px;background:#f4e7e0;border:1px solid #dbc5bd;border-radius:6px;font-size:14px;line-height:1.7}
.ym-student-layout{max-width:1300px;margin:auto;padding:52px 38px 65px;display:grid;grid-template-columns:225px minmax(0,1fr);gap:55px;align-items:start}.ym-student-nav{position:sticky;top:25px;background:#f1e5dd;padding:25px 20px;border:1px solid #e6d6ca;border-radius:7px}.ym-student-nav>a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 11px;border-radius:4px;font-size:12px;line-height:1.5;margin:4px -6px}.ym-student-nav>a[aria-current="page"]{background:#fffaf5;color:#702e43;font-weight:700;box-shadow:0 3px 15px #58334306}.ym-student-nav>a:hover{background:#fffaf5}.ym-student-nav>p:not(.ym-eyebrow){font-size:13px;line-height:1.7}.ym-student-nav .ym-logout{border-top:1px solid #dcc8be;padding-top:20px;margin-top:16px;color:#7b626b;font-size:11px}.ym-student-main{min-width:0}.ym-student-main>h1{font-size:clamp(36px,3.5vw,50px);line-height:1.18}.ym-app-content{margin-top:30px;min-width:0}.ym-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:34px}.ym-dashboard-card{display:block;background:#f0dfd7;padding:28px;border:1px solid #e2c9bd;border-radius:7px}.ym-dashboard-card:nth-child(2){background:#f4ebe2}.ym-card-kanji{font:45px/1.3 "Yu Mincho",Georgia,serif;color:#936577;display:block;margin-bottom:30px}.ym-dashboard-card h2{font-size:29px;margin-bottom:14px}.ym-dashboard-card p{font-size:13px;line-height:1.8;color:var(--ym-muted);margin-bottom:26px}.ym-profile-summary{padding:30px 0;margin-top:30px;border-top:1px solid var(--ym-line);display:flex;align-items:center;justify-content:space-between;gap:20px}.ym-profile-summary h2{font-size:27px;margin-bottom:12px}.ym-profile-summary p:not(.ym-eyebrow){font-size:13px;line-height:1.8;color:var(--ym-muted)}.ym-sync-notice{background:#f8e8ce;padding:12px;margin-top:14px!important}.ym-native-widget .ym-gt-card,.ym-native-widget .ym-gt-spoiler{border-color:#e1cfc5;border-radius:8px;box-shadow:none}.ym-native-widget .ym-gt-spoiler summary{background:#f5eae2;color:#643248}.ym-native-widget .ym-gt-progress-bar{background:#8b4b60}.ym-native-widget .ym-gt-terms{background:#fffdf9}.ym-apps-enabled .ym-profile-surface .yama-profile{max-width:none}.ym-apps-enabled .ym-profile-surface .yama-profile-section{background:#fffdf9;border:1px solid #e3d3c9;border-radius:8px;box-shadow:none;padding:27px;margin-bottom:23px}.ym-apps-enabled .ym-profile-surface .yama-profile-section h2{font:400 28px/1.25 Georgia,serif;color:#68394c}.ym-apps-enabled .ym-profile-surface .yama-profile-field label,.ym-apps-enabled .ym-profile-surface .yama-profile-radio-field legend{font:600 12px/1.6 "Segoe UI",Arial,sans-serif;color:#57424c}.ym-apps-enabled .ym-profile-surface .yama-profile :is(input:not([type="radio"]):not([type="checkbox"]),select,textarea){background:#fcfaf6;border:1px solid #d7c4bf;border-radius:5px;font-size:14px;min-height:45px;padding:11px 13px;max-width:100%}.ym-apps-enabled .ym-profile-surface .yama-profile-radio-option{background:#fcf8f3;border-color:#decac4;border-radius:5px}.ym-apps-enabled .ym-profile-surface .yama-profile-submit{background:#702e43;border-color:#702e43;border-radius:5px;box-shadow:none;font:600 13px "Segoe UI",Arial,sans-serif;padding:16px 25px}.ym-profile-surface .yama-profile-section-head p{font-size:12px;line-height:1.8;color:#78666e}.ym-apps-enabled .ym-profile-surface input:focus-visible{outline:2px solid #a96379;outline-offset:2px}
/* Native dialog gives keyboard containment, Escape and a real modal backdrop. */
.ym-dialog-open{overflow:hidden}.ym-contact-dialog{padding:0;border:1px solid #e2cec5;border-radius:12px;background:#fffdf9;width:min(930px,calc(100vw - 48px));max-height:calc(100dvh - 48px);color:#352c31;font:14px/1.7 "Segoe UI",Arial,sans-serif;box-shadow:0 25px 100px #21101840;overflow:auto}.ym-contact-dialog[open]{display:grid;grid-template-columns:.88fr 1.12fr}.ym-contact-dialog::backdrop{background:#33202a99;backdrop-filter:blur(4px)}.ym-dialog-close{position:absolute;right:14px;top:14px;z-index:2;width:38px;height:38px;display:grid;place-items:center;border:1px solid #dac6bf;border-radius:50%;background:#fffaf7;color:#703a4b;font:26px/1 "Segoe UI",sans-serif;padding:0;cursor:pointer}.ym-dialog-close:hover{background:#f3e2d9;color:#512031}.ym-dialog-close:focus-visible{outline:3px solid #a66177;outline-offset:3px}.ym-dialog-intro{background:#f2e2d9;padding:52px 28px 35px}.ym-dialog-intro h2{font:400 37px/1.15 Georgia,serif;letter-spacing:-.045em;color:#493039;margin:20px 0}.ym-dialog-intro h2 em{color:#79384e}.ym-dialog-intro>p:last-child{font-size:13px;line-height:1.9;color:#765b64}.ym-dialog-flower{font-size:65px;color:#b68089;display:block;line-height:1;margin-bottom:42px}.ym-contact-dialog .ym-eyebrow{font:600 9px/1.7 "Segoe UI",Arial,sans-serif;letter-spacing:1.7px;color:#80455b;margin:0}.ym-contact-form{padding:55px 32px 26px;min-width:0}.ym-contact-dialog .forminator-ui .forminator-row{margin-bottom:18px!important}.ym-contact-link{display:inline-flex;align-items:center;gap:10px;font-size:12px;color:inherit;border:1px solid currentColor;border-radius:4px;padding:13px 18px;min-height:48px;margin-left:14px}.ym-apps-enabled .floating-contact-btn{background:#fff7f3;color:#702e43;border:1px solid #ddc4ca;font:600 12px "Segoe UI",Arial,sans-serif;box-shadow:0 4px 18px #56354318}.ym-site .ym-nav .ym-nav-join{background:#702e43;color:#fffaf6;border-radius:4px;padding:11px 15px;font-size:11px}
/* Also brand WordPress fallback login without replacing its authentication logic. */
body.login{background:#fbf8f3;font-family:"Segoe UI",Arial,sans-serif}body.login #login{width:min(400px,calc(100% - 36px));padding-top:7vh}body.login #login h1 a{background:none;text-indent:0;width:auto;height:auto;font:italic 34px Georgia,serif;color:#702e43}body.login form{background:#fffdf9;border:1px solid #e2cec5;border-radius:9px;box-shadow:0 15px 40px #71394c08;padding:30px}body.login .button-primary{background:#702e43;border-color:#702e43;min-height:42px;padding:5px 20px}body.login input[type="text"],body.login input[type="password"]{border-color:#d8c5bd;background:#fcfaf6;border-radius:5px}body.login #nav a,body.login #backtoblog a{color:#702e43}
@media(max-width:1000px){.ym-auth-layout{gap:35px;padding:45px 28px}.ym-auth-card{padding:28px}.ym-registration-layout{grid-template-columns:190px minmax(0,1fr);gap:25px;padding:10px 28px 50px}.ym-registration-card{padding:26px}.ym-student-layout{grid-template-columns:185px minmax(0,1fr);gap:25px;padding:40px 28px}.ym-student-nav{padding:22px 15px}.ym-dashboard-grid{gap:16px}.ym-dashboard-card{padding:23px}.ym-dashboard-card h2{font-size:26px}.ym-profile-summary{align-items:flex-start;flex-direction:column}.ym-contact-dialog[open]{grid-template-columns:.85fr 1.15fr}.ym-dialog-intro{padding:48px 24px 26px}.ym-dialog-intro h2{font-size:31px}}
@media(max-width:680px){.ym-auth-layout{grid-template-columns:1fr;gap:25px;padding:28px 22px 40px}.ym-auth-story{padding:8px 0}.ym-auth-story h1{font-size:44px}.ym-auth-story>p:not(.ym-eyebrow){font-size:13px;margin-top:20px}.ym-auth-word{display:none}.ym-auth-story .ym-text-link{margin-top:12px}.ym-auth-card{padding:26px 22px}.ym-auth-card h2{font-size:29px}.ym-form-lead{font-size:13px}.ym-app-title{padding:37px 24px 25px}.ym-app-title h1{font-size:39px}.ym-app-title>p:last-child{font-size:13px}.ym-registration-layout{grid-template-columns:1fr;padding:0 22px 35px;gap:22px}.ym-registration-aside{position:static;padding:0}.ym-registration-aside>.ym-eyebrow,.ym-registration-aside>p,.ym-aside-note{display:none}.ym-registration-nav{grid-template-columns:1fr 1fr;gap:7px;background:#f2e4db;padding:15px;border-radius:6px}.ym-registration-nav a{font-size:11px;padding:5px;gap:9px}.ym-registration-nav a span{font-size:16px}.ym-registration-card{padding:23px 19px}.ym-apps-enabled .ym-form-surface .forminator-title{font-size:25px!important}.ym-apps-enabled .ym-form-surface .forminator-subtitle{font-size:12px!important}.ym-apps-enabled .ym-form-surface :is(.forminator-input,.forminator-textarea,.su-custom-form input){font-size:16px!important}.ym-student-layout{grid-template-columns:1fr;padding:24px 22px 35px;gap:25px}.ym-student-nav{position:static;padding:16px;display:flex;flex-wrap:wrap;gap:5px}.ym-student-nav>.ym-eyebrow{width:100%;margin-bottom:10px!important}.ym-student-nav>a{font-size:11px;flex:1 1 42%;margin:0;padding:10px 8px}.ym-student-nav .ym-logout{margin:0;border:0;padding:10px 8px}.ym-student-main>h1{font-size:36px}.ym-dashboard-grid{grid-template-columns:1fr;margin-top:24px}.ym-dashboard-card{padding:26px}.ym-card-kanji{margin-bottom:15px}.ym-dashboard-card p{margin-bottom:15px}.ym-apps-enabled .ym-profile-surface .yama-profile-section{padding:22px 17px}.ym-apps-enabled .ym-profile-surface .yama-profile-section h2{font-size:25px}.ym-native-widget .ym-gt-spoiler-body{padding:0 13px 18px}.ym-contact-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:10px}.ym-contact-dialog[open]{grid-template-columns:1fr}.ym-dialog-intro{padding:29px 26px 22px}.ym-dialog-intro h2{font-size:31px;margin:13px 0}.ym-dialog-intro>p:last-child{font-size:12px;margin:0}.ym-dialog-flower{display:none}.ym-contact-form{padding:24px 24px 18px}.ym-dialog-close{right:9px;top:9px;width:33px;height:33px}.ym-contact-link{margin:12px 0 0}.ym-auth-layout.ym-contact-page{padding-top:35px}.ym-contact-page .ym-auth-story h1{font-size:42px}}
@media(prefers-reduced-motion:reduce){.ym-apps-enabled *{scroll-behavior:auto!important}.ym-contact-dialog::backdrop{backdrop-filter:none}}

.ym-apps-enabled .ym-dialog-close{background:#f3e4df!important;color:#702e43!important;border:1px solid #e5ccc5!important;padding:0!important;line-height:1!important}.ym-apps-enabled .ym-form-surface .select2-selection--single{min-height:46px!important;border:1px solid #d8c8c0!important;background:#fcfaf6!important;border-radius:5px!important}.ym-apps-enabled .ym-form-surface .select2-selection__rendered{font:13px/44px "Segoe UI",Arial,sans-serif!important;padding-right:30px!important}.ym-apps-enabled .ym-form-surface .select2-selection__arrow{height:44px!important}

.ym-apps-enabled .ym-form-surface :is(.forminator-radio,.forminator-checkbox){pointer-events:auto!important;cursor:pointer}.ym-apps-enabled .ym-form-surface a{color:#702e43!important}.ym-apps-enabled .ym-form-surface :is(.forminator-radio,.forminator-checkbox):focus-within{outline:2px solid #a96379;outline-offset:4px;border-radius:3px}

.ym-contact-dialog select{display:block!important;width:100%!important;max-width:100%;min-height:46px;padding:11px 32px 11px 12px;border:1px solid #d8c8c0;border-radius:5px;background:#fcfaf6;color:#382d33;font:13px/1.5 "Segoe UI",Arial,sans-serif}

.ym-registration-card .forminator-date .forminator-input{padding-right:42px!important}
.ym-profile-surface input[type="radio"],.ym-profile-surface input[type="checkbox"]{accent-color:#702e43}

.ym-apps-enabled #ui-datepicker-div{background:#fffdf9;border:1px solid #d9c4bc;border-radius:7px;box-shadow:0 10px 35px #51344226;font-family:"Segoe UI",Arial,sans-serif}.ym-apps-enabled #ui-datepicker-div .ui-datepicker-header{background:#702e43;color:#fffaf6;border:0}.ym-apps-enabled #ui-datepicker-div .ui-state-active{background:#702e43!important;color:#fffaf6!important;border-color:#702e43!important}
@media(max-width:680px){.ym-contact-dialog[open]{overflow:hidden;grid-template-rows:auto minmax(0,1fr);height:calc(100dvh - 24px)}.ym-contact-form{overflow-y:auto;min-height:0;overscroll-behavior:contain}.ym-contact-dialog select{font-size:16px}}

.ym-footer button.ym-cookie-settings{appearance:none;background:transparent;border:0;border-radius:0;padding:0;color:inherit;font:inherit;cursor:pointer;text-align:left}.ym-footer button.ym-cookie-settings:hover{text-decoration:underline}.ym-footer button.ym-cookie-settings:focus-visible{outline:2px solid #742f43;outline-offset:4px}
