/* MALMUN — one sentence, one step. Bright, encouraging and easy to use. */
:root{color-scheme:light;--paper:#fffaf2;--white:#fff;--ink:#252c46;--muted:#606b7f;--green:#3657ed;--lime:#ffe39c;--line:#e2e5ef;--orange:#e96745;--softorange:#fff0e8;--lav:#efebff;--radius:22px;--shadow:0 7px 24px #33458207}
body{background:var(--paper);color:var(--ink)}
.topbar{background:#fff;border-bottom-color:#e3e6f1}.brand strong{color:#283455;font-weight:850}.brand small{color:#6b7190;font-weight:600;letter-spacing:.09em}.brand img{filter:drop-shadow(0 4px 6px #3657ed14)}
.topnav a{color:#5f6880}.topnav a.active{background:#edf0ff;color:#304fd5}.topnav a:hover{background:#f2f4ff;color:#304fd5}.device-link{background:#fff;border-color:#dce1f1;color:#3657ed}
.page-head .eyebrow,.eyebrow.muted{color:#7c5e45}.page-head h1,.section-title h2{color:#29324c;font-weight:800}.page-head p{color:#646e80}.card{border-color:var(--line);box-shadow:var(--shadow)}
.btn{font-weight:750;box-shadow:0 3px 0 #203ebd12;transition:background .15s,box-shadow .15s}.btn:hover{filter:none;background:#2947cf}.btn.secondary{background:#fff;color:#3652d2;border-color:#d5dcf5;box-shadow:none}.btn.secondary:hover{background:#f3f5ff}.btn.soft{background:#edf1ff;color:#3455d8;box-shadow:none}.btn.coral{background:#e96745}.btn.danger{background:#fff0ed;color:#a54132;box-shadow:none}
.text-btn,.back-link,.section-title a{color:#5b6785}.badge{background:#eef1ff;color:#405cbb}.badge.rec{background:#fff1d0;color:#886126}.badge.photo{background:#feece5;color:#a1573c}.dot{background:#ff9b54}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline-color:#4867ee}
.bottomnav{background:#fffffff5;border-top-color:#dce3f4;backdrop-filter:blur(12px)}.bottomnav a{color:#727a90}.bottomnav a.active{color:#3657ed}.bottomnav a.active .icon{stroke-width:2.3}

/* First visit: start with one sentence, not a perfect performance. */
.guest-welcome{background:#fff5df;border:1px solid #f2e7ce;border-radius:28px;padding:42px 38px;margin-bottom:26px;gap:38px}
.guest-welcome .eyebrow{color:#98633a;letter-spacing:.1em}.guest-welcome h1{font-size:49px;line-height:1.35;color:#29324c;font-weight:850;letter-spacing:-.06em;margin:18px 0}.guest-welcome h1 em{font-style:normal;color:#3657ed}.guest-welcome p{color:#626b7c}.guest-welcome .row .btn:first-child{background:#3657ed;box-shadow:0 5px 12px #3657ed19}
.guest-limit-visual{position:relative;width:320px;padding:27px 24px;background:#eef0ff;border:1px solid #dce1fa;border-radius:23px;transform:rotate(2deg);text-align:left;box-shadow:8px 8px 0 #ffde8b66;overflow:visible}
.guest-limit-visual>span{display:block;padding:0;background:none;border-radius:0}.guest-limit-visual .mm-visual-tag{font-size:9px;letter-spacing:.07em;color:#5166ad;font-weight:750;line-height:1.7}
.mm-speech{font-weight:700;font-size:16px;line-height:1.65;padding:15px 17px;overflow-wrap:anywhere}.mm-speech-ko{margin:22px 14px 13px -8px;background:#fff;border:1px solid #dce1f4;border-radius:16px 16px 16px 3px;color:#353e60;box-shadow:0 4px 10px #33458206}.mm-speech-en{margin-right:-9px;margin-left:14px;background:#3657ed;color:#fff;border-radius:16px 16px 3px 16px;font-size:17px}
.mm-voice-wave{display:flex;align-items:center;justify-content:center;gap:5px;height:36px;margin:13px 0 7px}.mm-voice-wave i{width:5px;height:12px;background:#f39a59;border-radius:4px}.mm-voice-wave i:nth-child(2n){height:23px}.mm-voice-wave i:nth-child(3n){height:32px}.mm-voice-wave i:nth-child(4n){height:18px;background:#8a9af3}
.guest-limit-visual .mm-visual-caption{text-align:center;color:#586485;font-size:11px;line-height:1.8}.guest-limit-visual .mm-visual-limit{margin:15px auto 0;text-align:center;width:fit-content;padding:7px 12px;background:#fff;border:1px solid #dce1f4;border-radius:30px;font-size:10px;color:#4e608f}
.guest-options .card{background:#fff;border-color:#e1e5f1;box-shadow:none}.guest-options .card:nth-child(2){background:#fff4e8;border-color:#f1e1cb}.guest-options .card:nth-child(3){background:#eeefff;border-color:#dfe2f7}.guest-options .icon{color:#3f5ddd}.guest-options h2{font-weight:750}

/* Members see their next action before the routine explanation. */
.welcome p{color:#667087}.welcome .badge{background:#fff0ce;color:#856024}.hero{background:#3657ed;border:0;box-shadow:none}.hero .eyebrow{color:#e0e7ff}.hero h1{font-weight:800;color:#fff}.hero h1 em{color:#ffe39c}.hero p{color:#edf0ff}.hero .btn{background:#ffe39c;color:#303650;box-shadow:0 4px 0 #233a981a;font-weight:800}.hero .btn:hover{background:#ffda7b}.hero-bottom{color:#e5eaff}.hero-decor i{background:#ffbd83}
.plan{background:#fff;border-color:#e0e5f4}.plan-title{color:#334365;font-weight:750}.plan-line .num{background:#edf0ff;color:#3d57bd}.plan-line:last-of-type .num{background:#fff0d0;color:#94641e}.plan-line strong{color:#34415c}.plan-foot{color:#67718b}
.stats .stat{background:#fff;border:1px solid #e3e7f1;box-shadow:none}.stats .stat:first-child{background:#f0f2ff;border-color:#e0e5f9}.stats .stat:nth-child(2){background:#fff2dd;border-color:#f2e7ce}.stats .stat:last-child{background:#fff0e9;border-color:#f4e0d6}.stat strong{font-weight:800;color:#33476a}.stat span{color:#6c7283}
.category-card{border-color:#e2e6f2;box-shadow:none}.category-icon{background:#edf0ff;color:#4161db}.category-card:nth-child(2) .category-icon{background:#fff0dd;color:#b57b2f}.category-card:nth-child(3) .category-icon{background:#ffece5;color:#b66546}.category-card:nth-child(4) .category-icon{background:#f0eaff;color:#8664ca}.category-card h3{color:#34415e;font-weight:750}

/* The memory routine stays clear and encouraging, without a dark panel. */
.routine-campaign{background:#f0f2ff;color:#293452;border-color:#dce2fa;box-shadow:none}.routine-campaign:before{background:#ffdf884d;width:230px;height:230px;top:-130px;right:-100px}.routine-kicker{color:#6578b4}.routine-kicker>span{background:#ed8b55}.routine-campaign h2{color:#2b3655;font-weight:800}.routine-campaign h2 em{color:#3e5be0}.routine-campaign .routine-lead{color:#63708c}.routine-evidence span{background:#fff;border-color:#d7dff5;color:#4861a1}.routine-evidence>b{color:#8995bd}
.routine-orbit{border-color:#cbd5f1}.routine-example{background:#fff;color:#344568;border:1px solid #dce2f5;box-shadow:0 8px 22px #3657ed0b}.routine-example-label{color:#7781a0}.routine-speech{background:#edf0ff;color:#3656c8}.routine-speech i{color:#e79a54}.routine-steps b{background:#ffdf8f;color:#765423}.routine-steps li{color:#546181;font-weight:600}.routine-revisit{color:#6d7b9a}.routine-revisit b{color:#4e65ba}
.routine-bottom{border-top-color:#d4ddf5}.routine-bottom strong{color:#34456c}.routine-bottom span{color:#6b7996}.routine-cta{background:#3657ed;color:#fff;box-shadow:0 3px 0 #233a9814}.routine-cta:hover{background:#2947cf}.routine-research,.routine-campaign .routine-research p,.account-entry .routine-research p{color:#697a9c}.routine-research a{color:#4666c9}

/* Notebooks, shop, accounts and file import use the same brand materials. */
.notebook-tabs,.notebook-workspace .notebook-tabs{background:#eaeefa}.notebook-tabs .chip.selected{color:#3657ed;background:#fff}.notebook-toolbar select{color:#4e6092;border-color:#dce2f3}.notebook-cover{background:#edf0ff;color:#364977;border-bottom-color:#dfe5f4}.notebook-cover.shared{background:#fff1d4;color:#7c592e}.notebook-spine{background:#3657ed26;box-shadow:3px 0 0 #ffffffa6}.notebook-card:nth-child(3n+2) .notebook-cover:not(.shop-cover){background:#feece5;color:#8d5948}.notebook-card:nth-child(3n) .notebook-cover:not(.shop-cover){background:#efebfb;color:#6b5796}.notebook-cover h2{font-weight:800}.notebook-tags span{border-color:#abb8de66}.notebook-sharing-note{background:#f0f3ff;color:#647195}.notebook-detail-bar{border-color:#dce3f6}
.guest-limit-bar{background:#fff4db;border-color:#f0e0bc}.guest-limit-bar strong b{color:#b37428}.store-intro{background:#edf1ff;color:#334c82;border:1px solid #dae3f8}.store-intro p{color:#687b9b}.store-intro>span{border-color:#bfcae9;color:#536fa3}.shop-cover{background:#3657ed!important;color:#fff!important}.shop-cover .notebook-access{color:#e0e7ff}.shop-cover h2{color:#fff0c2}.product-price{color:#3a55bd}.store-status{background:#fff5df;border-color:#efdfb9}
.login{border-color:#dee3f2;background:#fff}.login h1{color:#303c60;font-weight:800}.privacy-note{color:#707b90}.settings-card{background:#fff;border-color:#e1e5f0}.account-identity{background:#edf1ff;color:#4b63b3}.phone-address-card{background:#eff3ff;border-color:#d7e1f7}.phone-address-card .address{color:#3c58a7}.device-note{background:#fff4df;color:#8a6a3b}.settings-card h2{color:#354668}.field{color:#526080}
textarea,input,select{border-color:#d8dfef;color:#33415e}input:focus,textarea:focus,select:focus{border-color:#7f95eb}.searchbox{border-color:#dce2f1}.searchbox input{color:#3e5076}.chip{color:#667394;border-color:#dfe4f3;background:#fff}.chip.selected{background:#eaf0ff;color:#3758ce;border-color:#b7c8f5}.modal,dialog{border-color:#d9e1f4}.close-btn{background:#edf1fa;color:#6578a1}
.import-flow b{background:#edf0ff;color:#4161d0}.import-format-tabs{background:#edf0fa}.import-format-tabs button{color:#69779b}.word-line-example{border-color:#dce3f4}.word-line-example>div{background:#f3f5ff}.word-line-example>div+div{border-color:#e0e6f4}.word-line-example>div:nth-child(3){background:#fff6e5}.word-line-example span{color:#6e7b9c}.file-guide-caption b{background:#edf0ff}.dropzone{border-color:#bdcbef;background:#f8faff}.review-item{border-color:#e0e5f3}.import-panel{background:#fff}.example-table th{background:#eff3ff;color:#5a6f9b}
.practice-settings-card{background:#fff}.practice-category-label p,.practice-save-note{color:#68799a}.practice-stepper{background:#edf1ff;border-color:#d5def7}.practice-stepper button{color:#3e61d1}.practice-total-row{background:#fff3d8;color:#8b6430}.practice-total-row strong{color:#a16b25}.record-list .card{border-color:#e1e5f2}.record-day{color:#53679d}.record-stat{background:#eef2ff;color:#4865ba}

/* Speaking stays compact. No extra copy or controls are added to practice. */
.progress{background:#e2e8fb}.progress i{background:#4267f0}.progress-label strong{color:#3657ed}.question-card{background:#fff;border-color:#d9e2fa;box-shadow:0 5px 18px #3657ed07}.question-card h1{color:#303d5b}.mic-btn{background:#3657ed;box-shadow:0 4px 12px #3657ed1c}.mic-btn.listening{background:#e06046}.result-card{background:#eef3ff;border-color:#d8e2f8}.answer-label{color:#6578a1}.answer-text{color:#334b83}.listen-icon{background:#e8efff;color:#3657ed}.tip{background:#fff4dc;color:#806335}.transcript{background:#fff;color:#526385}.own-voice-panel{background:#fff;border-color:#dce4f8}.audio-rate{color:#647899}
.confidence-panel{border-top-color:#d9e3f6}.confidence-options button{border-color:#d5e0f5}.confidence-options [aria-pressed=true]{background:#3657ed;color:#fff;box-shadow:0 0 0 2px #3657ed22}.confidence-options [aria-pressed=true] small{color:#e5ebff}.memory-feedback,.memory-status{color:#5472b8}.finish-symbol{background:#ffdf8f;color:#986528;box-shadow:7px 7px 0 #fff1c5}.finish h1{color:#34456d}.finish .btn{background:#3657ed}.loading{color:#6177b1}#toast{background:#334b9c;color:#fff}
@media(max-width:850px){.guest-welcome{gap:24px;padding:30px 26px}.guest-welcome h1{font-size:39px}.guest-limit-visual{width:275px;padding:23px 18px}.mm-speech{font-size:14px}.mm-speech-en{font-size:15px}}
@media(max-width:700px){.guest-welcome{display:block;padding:26px 22px;margin-bottom:22px;border-radius:23px}.guest-welcome h1{font-size:34px;margin:15px 0;line-height:1.35}.guest-welcome .eyebrow{font-size:9px;letter-spacing:.08em}.guest-welcome p{font-size:12px;line-height:1.85}.guest-welcome .row{gap:8px}.guest-welcome .row .btn{font-size:12px;min-height:44px;padding:12px}.guest-limit-visual{width:100%;max-width:320px;margin:28px auto 6px;padding:23px 21px;transform:rotate(1deg)}.mm-speech{font-size:15px}.mm-speech-en{font-size:16px}.hero h1{font-weight:800}.brand small{font-size:8px;letter-spacing:.07em}.routine-example{transform:none}.routine-campaign h2{font-weight:800}.account-with-routine{padding-top:24px}.guest-options .card{border-radius:19px}}
@media(prefers-reduced-motion:reduce){.btn{transition:none}.guest-limit-visual{transform:none}}

/* A full tap target replaces the tiny browser transport for short voice clips. */
.study-compact .own-voice{display:block;margin-top:8px}
.study-compact .own-voice-heading{display:flex;align-items:center;gap:7px;margin:0}
.study-compact #play-own-voice{flex:1;min-height:40px;padding:8px 10px;font-size:12px;white-space:nowrap}
.study-compact .own-voice-heading output{font-size:10px;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}
.study-compact .own-voice-heading select{flex:0 0 62px;width:62px;min-height:40px}
.own-voice audio[hidden]{display:none!important}
#play-own-voice[aria-pressed=true]{background:#e7edff;border-color:#8297f9}
