.mk-editor-root{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;gap:0;position:relative}
.mk-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;position:relative;z-index:30;flex-shrink:0;background:linear-gradient(180deg,rgba(255,255,255,0.92) 0%,rgba(248,248,250,0.88) 100%);border:1px solid var(--border-light);border-bottom:none;border-radius:14px 14px 0 0;-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px);box-shadow:inset 0 1px 0 rgba(255,255,255,0.8)}
.mk-toolbar--compact{padding:8px 10px;gap:6px}
.mk-tb-group{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:11px;background:rgba(120,120,128,0.08);box-shadow:inset 0 0 0 0.5px rgba(0,0,0,0.04)}
.mk-tb-group--char{background:rgba(0,122,255,0.08)}
.mk-tb-group--paint{background:rgba(175,82,222,0.07)}
.mk-tb-group--para{background:rgba(52,199,89,0.08)}
.mk-tb-group--meta{background:rgba(120,120,128,0.06)}
.mk-tb-spacer{flex:1 1 auto;min-width:8px}
.mk-tb-btn{min-width:34px;height:34px;padding:0 9px;border:none;border-radius:9px;background:transparent;color:var(--text-primary);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:4px;transition:background .14s,transform .12s,color .14s}
.mk-tb-btn:hover{background:rgba(255,255,255,0.72)}
.mk-tb-btn:active{transform:scale(0.94);background:rgba(0,0,0,0.06)}
.mk-tb-select{position:relative;font-size:0;color:#007AFF}
.mk-tb-select::before,.mk-tb-select::after{content:'';position:absolute;box-sizing:border-box;width:11px;height:11px;border:2px solid currentColor;border-radius:1px}
.mk-tb-select::before{top:8px;left:8px;border-right:none;border-bottom:none}
.mk-tb-select::after{bottom:8px;right:8px;border-left:none;border-top:none}
.mk-tb-bold{font-weight:800;font-size:15px;color:#1c1c1e}
.mk-tb-italic{font-style:italic;font-weight:600;color:#3a3a3c}
.mk-tb-ul{text-decoration:underline;text-underline-offset:2px;font-weight:600;color:#007AFF}
.mk-tb-strike{text-decoration:line-through;font-weight:600;color:#8E8E93}
.mk-tb-indent{font-size:15px;color:#248A3D}
.mk-tb-undo{font-size:17px;color:#007AFF}
.mk-tb-reset{font-size:12px;font-weight:600;min-width:4.5em;padding:0 11px;color:#FF9500;white-space:nowrap;box-sizing:border-box}
.mk-tb-reset.confirm{color:#FF9500;background:rgba(255,149,0,0.14);animation:mkResetShake 0.3s}
@keyframes mkResetShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-2px)}75%{transform:translateX(2px)}}
.mk-tb-btn:disabled{opacity:0.32;pointer-events:none}
.mk-tb-icon{font-size:13px;font-weight:700;line-height:1}
.mk-tb-icon--size{font-size:12px;font-weight:600;min-width:18px}
.mk-tb-caret{font-size:9px;color:var(--text-tertiary);margin-left:-2px}
.mk-color-a{font-size:17px;font-weight:800;line-height:1;color:#007AFF}
.mk-color-bar{display:block;width:14px;height:3px;border-radius:2px;background:linear-gradient(90deg,#FF3B30,#FF9500,#34C759,#007AFF);margin-top:1px}
.mk-tb-dropdown{position:relative;z-index:1}
.mk-tb-dropdown.open{z-index:60}
.mk-tb-dropdown.open .mk-menu{display:block}
.mk-tb-dropdown.open .mk-color-menu{display:flex}
.mk-tb-dropdown.open>.mk-tb-btn{background:rgba(255,255,255,0.85);box-shadow:0 1px 4px rgba(0,0,0,0.08)}
.mk-menu{display:none;position:absolute;top:calc(100% + 6px);left:0;min-width:128px;padding:6px;background:rgba(255,255,255,0.96);border:0.5px solid rgba(0,0,0,0.08);border-radius:14px;box-shadow:0 10px 32px rgba(0,0,0,0.14);z-index:70;max-height:240px;overflow-y:auto;-webkit-overflow-scrolling:touch;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
.mk-menu-item{display:block;width:100%;text-align:left;border:none;background:transparent;padding:9px 12px;border-radius:10px;font-size:14px;color:var(--text-primary);cursor:pointer;font-family:inherit;transition:background .12s}
.mk-menu-item:hover,.mk-menu-item:active{background:rgba(0,122,255,0.1);color:var(--primary)}
.mk-color-menu{flex-wrap:wrap;gap:8px;padding:12px;min-width:168px}
.mk-color-chip{width:30px;height:30px;border-radius:50%;border:2px solid rgba(255,255,255,0.95);box-shadow:0 2px 6px rgba(0,0,0,0.12);cursor:pointer;padding:0;transition:transform .12s,box-shadow .12s}
.mk-color-chip:hover{transform:scale(1.08);box-shadow:0 3px 10px rgba(0,0,0,0.16)}
.mk-color-chip:active{transform:scale(0.94)}
.mk-body-wrap{position:relative;z-index:1;flex:1 1 auto;min-height:0;display:flex;flex-direction:column}
.mk-char-count{position:absolute;right:14px;bottom:10px;font-size:11px;line-height:1;color:rgba(60,60,67,0.38);pointer-events:none;user-select:none;z-index:2;font-variant-numeric:tabular-nums}
.mk-bubble[hidden]{display:none!important}
.mk-bubble.mk-bubble--portal { z-index: 500; }
.mk-bubble{position:fixed;z-index:80;display:inline-flex;align-items:center;gap:2px;padding:4px 6px;border-radius:999px;background:rgba(255,255,255,0.96);border:0.5px solid rgba(0,0,0,0.08);box-shadow:0 6px 24px rgba(0,0,0,0.14),0 2px 6px rgba(0,122,255,0.08);transform:translate(-50%,-100%);-webkit-backdrop-filter:saturate(180%) blur(18px);backdrop-filter:saturate(180%) blur(18px);animation:mkBubbleIn .16s ease-out}
.mk-bubble::after{content:'';position:absolute;bottom:-5px;left:50%;transform:translateX(-50%);border:5px solid transparent;border-top-color:rgba(255,255,255,0.96);filter:drop-shadow(0 1px 1px rgba(0,0,0,0.06))}
.mk-bubble .mk-tb-btn{min-width:32px;height:32px;border-radius:999px}
.mk-bubble .mk-tb-btn:hover{background:rgba(0,122,255,0.12)}
.mk-bubble .mk-tb-btn:active{background:rgba(0,122,255,0.2);transform:scale(0.94)}
.mk-bubble-bold{font-weight:800;color:#007AFF}
.mk-bubble-bold:hover{color:#0056CC}
.mk-bubble-italic{font-style:italic;color:#5856D6}
.mk-bubble-italic:hover{color:#4240A8}
.mk-bubble-ul{text-decoration:underline;text-underline-offset:2px;color:#007AFF}
.mk-bubble-ul:hover{color:#0056CC}
.mk-bubble-undo{font-size:16px;color:#FF9500}
.mk-bubble-undo:hover{color:#CC7700}
.mk-bubble-sep{width:1px;height:18px;background:rgba(0,0,0,0.08);margin:0 2px}
@keyframes mkBubbleIn{from{opacity:0;transform:translate(-50%,calc(-100% + 6px))}to{opacity:1;transform:translate(-50%,-100%)}}
.mk-body{border-radius:0 0 14px 14px!important;box-shadow:inset 0 0 0 1px var(--border-light)!important;line-height:1.75;font-size:var(--text-body);overflow-y:auto;-webkit-overflow-scrolling:touch;flex:1 1 auto;min-height:0;padding-bottom:28px}
.mk-body:focus{box-shadow:inset 0 0 0 2px rgba(120,120,128,0.42)!important;outline:none}
.mk-body:empty:before,.mk-body[data-placeholder]:not(:focus):has(.mk-line:only-child br:only-child):before{content:attr(data-placeholder);color:var(--text-tertiary);pointer-events:none}
.cm-p{margin:0 0 10px}
.cm-p.cm-section{font-weight:600;color:var(--text-primary)}
.cm-empty{color:var(--text-tertiary)}
.desk-word-preview .cm-p,.mk-preview .cm-p{margin:0 0 10px;font-family:'Songti SC','SimSun',serif;font-size:11pt;line-height:1.75}
.desk-panel-correct{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}
#deskMarkupEditor{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}
.tpl-mode-seg{margin-bottom:12px}
.tpl-advanced-pane{display:none;flex-direction:column;gap:10px;min-height:280px}
.tpl-advanced-pane.active{display:flex}
.tpl-wizard-pane.active{display:block}
.tpl-wizard-pane{display:none}
.tpl-format-hint{font-size:12px;color:var(--text-tertiary);line-height:1.45;padding:0 2px}
.tpl-preview-render{background:var(--card);border:1px solid var(--border-light);border-radius:14px;padding:14px 16px;max-height:220px;overflow-y:auto;font-size:11pt;line-height:1.75;-webkit-overflow-scrolling:touch}
#templateAdvancedEditor{min-height:240px;display:flex;flex-direction:column}
#templateAdvancedEditor .mk-body{min-height:200px;max-height:320px}
.is-hidden{display:none!important}
@media (prefers-color-scheme:dark){
.mk-toolbar{background:linear-gradient(180deg,rgba(44,44,46,0.94) 0%,rgba(28,28,30,0.9) 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.06)}
.mk-tb-group{background:rgba(255,255,255,0.06)}
.mk-tb-btn:hover{background:rgba(255,255,255,0.08)}
.mk-bubble{background:rgba(44,44,46,0.96);border-color:rgba(255,255,255,0.1)}
.mk-bubble .mk-tb-btn:hover{background:rgba(255,255,255,0.1)}
.mk-bubble::after{border-top-color:rgba(44,44,46,0.96)}
.mk-menu{background:rgba(44,44,46,0.96);border-color:rgba(255,255,255,0.1)}
}
