 
.pte{position:relative;display:flex;flex-direction:column;margin-bottom:14px;border:1px solid rgba(58,143,184,.28);border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.85),rgba(238,248,255,.55));box-shadow:0 2px 10px rgba(58,143,184,.08);transition:border-color .25s,box-shadow .25s,transform .15s}
.pte:focus-within{border-color:rgba(58,143,184,.65);box-shadow:0 0 0 3px rgba(58,143,184,.15),0 4px 16px rgba(58,143,184,.12);transform:translateY(-1px)}
.pte.pte-over{border-color:rgba(239,68,68,.55);box-shadow:0 0 0 3px rgba(239,68,68,.12)}
.pte.pte-busy{opacity:.75;pointer-events:none}
.pte textarea.pte-input{width:100%!important;min-height:118px!important;max-width:100%!important;padding:12px 14px!important;margin:0!important;border:none!important;outline:none!important;box-shadow:none!important;background:transparent!important;border-radius:0!important;resize:vertical!important;font-family:inherit!important;font-size:0.88rem!important;line-height:1.65!important;color:#22384a!important;box-sizing:border-box!important}
.pte textarea.pte-input::placeholder{color:#9db4c6}

.pte-toolbar{display:flex;align-items:center;gap:6px;padding:8px 10px;border-bottom:1px solid rgba(58,143,184,.16);background:rgba(58,143,184,.06);border-radius:14px 14px 0 0;user-select:none}
.pte-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border:1px solid rgba(58,143,184,.25);background:#fff;color:#2E7A9C;border-radius:9px;font-size:0.78rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .18s;line-height:1}
.pte-btn:hover{background:#eaf6ff;border-color:rgba(58,143,184,.5);transform:translateY(-1px)}
.pte-btn:active{transform:translateY(0)}
.pte-btn i{font-size:0.95rem;pointer-events:none}
.pte-btn.pte-active{background:#2E7A9C;color:#fff;border-color:#2E7A9C}
.pte-btn.pte-active i{color:#fff}
.pte-btn[disabled]{opacity:.45;cursor:not-allowed;transform:none}
.pte-toolbar-spacer{flex:1}

.pte-editor{min-height:118px;max-height:280px;overflow-y:auto;padding:12px 14px;outline:none;font-family:inherit;font-size:0.88rem;line-height:1.65;color:#22384a;box-sizing:border-box}
.pte-editor:empty:before{content:attr(data-placeholder);color:#9db4c6;pointer-events:none}
.pte-editor img.pte-img{display:block;max-width:100%;max-height:260px;width:auto;height:auto;margin:8px 0;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,.15);cursor:pointer}
.pte-editor a{color:#1d6fa5}
.pte-editor[contenteditable="false"]{background:rgba(148,163,184,.06);color:#94a3b8}

.pte-footer{display:flex;align-items:center;gap:8px;padding:7px 12px;border-top:1px solid rgba(58,143,184,.14);background:rgba(58,143,184,.04);border-radius:0 0 14px 14px;font-size:0.72rem;color:#7b93a6;min-height:26px}
.pte-footer b{color:#2E7A9C;font-weight:800}
.pte.pte-over .pte-footer b{color:#ef4444}
.pte-hint{margin-left:auto;display:none;color:#ef4444;font-weight:600}
.pte-over .pte-hint{display:inline}

.pte-emoji-panel{position:absolute;z-index:120;left:10px;top:44px;width:268px;max-height:180px;overflow-y:auto;background:#fff;border:1px solid rgba(58,143,184,.3);border-radius:12px;box-shadow:0 10px 30px rgba(31,60,86,.22);padding:10px;display:none;grid-template-columns:repeat(6,1fr);gap:4px}
.pte-emoji-panel.show{display:grid}
.pte-emoji-panel span{display:flex;align-items:center;justify-content:center;height:34px;font-size:1.25rem;border-radius:8px;cursor:pointer;transition:background .15s,transform .15s}
.pte-emoji-panel span:hover{background:#eaf6ff;transform:scale(1.18)}

.pte-photo-preview{position:absolute;z-index:120;left:10px;top:44px;right:10px;max-height:220px;overflow:auto;background:#fff;border:1px solid rgba(58,143,184,.3);border-radius:12px;box-shadow:0 10px 30px rgba(31,60,86,.22);padding:10px;display:none;align-items:center;gap:10px}
.pte-photo-preview.show{display:flex}
.pte-photo-preview img{max-width:150px;max-height:150px;border-radius:8px}
.pte-photo-preview .pte-photo-actions{display:flex;flex-direction:column;gap:6px;font-size:0.8rem}
.pte-photo-preview .pte-photo-actions button{border:1px solid rgba(58,143,184,.3);background:#fff;color:#2E7A9C;border-radius:8px;padding:6px 12px;font-weight:600;font-family:inherit;cursor:pointer;font-size:0.78rem}
.pte-photo-preview .pte-photo-actions button:hover{background:#eaf6ff}

.pte-link-panel{position:absolute;z-index:120;left:10px;top:44px;width:280px;background:#fff;border:1px solid rgba(58,143,184,.3);border-radius:12px;box-shadow:0 10px 30px rgba(31,60,86,.22);padding:12px;display:none;flex-direction:column;gap:8px}
.pte-link-panel.show{display:flex}
.pte-link-panel input{width:100%;padding:8px 10px;border:1px solid rgba(58,143,184,.3);border-radius:8px;font-size:.82rem;font-family:inherit;box-sizing:border-box;outline:none;color:#22384a;background:#fff}
.pte-link-panel input:focus{border-color:rgba(58,143,184,.6)}
.pte-link-panel-row{display:flex;gap:6px}
.pte-link-panel-row button{border:1px solid rgba(58,143,184,.3);background:#fff;color:#2E7A9C;border-radius:8px;padding:6px 12px;font-weight:600;font-family:inherit;cursor:pointer;font-size:.78rem}
.pte-link-panel-row button.primary{background:#2E7A9C;color:#fff;border-color:#2E7A9C}
.pte-link-panel-row button:hover{background:#eaf6ff}
.pte-link-panel-row button.primary:hover{background:#256b8e}

 
.fb-photo{display:block;max-width:100%;max-height:320px;width:auto;height:auto;margin:10px 0;border-radius:12px;box-shadow:0 3px 12px rgba(0,0,0,.18)}
.lc-review-comment a,.nb-comment a{color:#1d6fa5;text-decoration:underline;word-break:break-word}
.lc-review-comment,.nb-comment{word-wrap:break-word}

 
.auth-dark .pte{background:linear-gradient(180deg,rgba(18,34,48,.92),rgba(12,26,38,.6));border-color:rgba(79,211,247,.28)}
.auth-dark .pte:focus-within{border-color:rgba(79,211,247,.6);box-shadow:0 0 0 3px rgba(79,211,247,.14)}
.auth-dark .pte textarea.pte-input{color:#dbe9f3;background:transparent!important}
.auth-dark .pte textarea.pte-input::placeholder{color:#5f7a8f}
.auth-dark .pte-editor{color:#dbe9f3}
.auth-dark .pte-editor:empty:before{color:#5f7a8f}
.auth-dark .pte-editor a{color:#6cc4f2}
.auth-dark .pte-toolbar{background:rgba(79,211,247,.07);border-bottom-color:rgba(79,211,247,.15)}
.auth-dark .pte-btn{background:rgba(255,255,255,.06);border-color:rgba(79,211,247,.25);color:#8fd4ef}
.auth-dark .pte-btn:hover{background:rgba(79,211,247,.14)}
.auth-dark .pte-btn.pte-active{background:#4FD3F7;color:#0b1c2b;border-color:#4FD3F7}
.auth-dark .pte-btn.pte-active i{color:#0b1c2b}
.auth-dark .pte-footer{background:rgba(79,211,247,.05);border-top-color:rgba(79,211,247,.12);color:#6f8ba0}
.auth-dark .pte-footer b{color:#7fd6f5}
.auth-dark .pte.pte-over .pte-footer b{color:#f87171}
.auth-dark .pte-emoji-panel,.auth-dark .pte-photo-preview{background:#10202f;border-color:rgba(79,211,247,.3)}
.auth-dark .pte-emoji-panel span:hover{background:rgba(79,211,247,.15)}
.auth-dark .pte-link-panel{background:#10202f;border-color:rgba(79,211,247,.3)}
.auth-dark .pte-link-panel input{background:#0b1c2b;color:#dbe9f3;border-color:rgba(79,211,247,.25)}
.auth-dark .pte-link-panel-row button{background:rgba(255,255,255,.06);border-color:rgba(79,211,247,.25);color:#8fd4ef}
.auth-dark .pte-link-panel-row button.primary{background:#4FD3F7;color:#0b1c2b;border-color:#4FD3F7}
.auth-dark .fb-photo{box-shadow:0 3px 12px rgba(0,0,0,.35)}