/* H5 presentation only. Reference: supplied Huacong pale-green card interface. */
:root{--bg:#f3f7f3;--panel:#fcfefd;--ink:#243f33;--muted:#687c70;--line:#dce6dd;--accent:#3b6653;--soft:#e8f0e9;--danger:#a43737;--nav-height:72px}
html,body{height:100%;overflow:hidden;overscroll-behavior:none}
body{background:var(--bg);font-family:'PingFang SC','Microsoft YaHei',sans-serif;font-size:15px}
button,input,textarea,select{font-size:15px;border-radius:11px}
button{min-height:44px;padding:9px 16px;transition:none}
button:hover{background:#edf3ed}.primary{background:var(--accent)}.primary:hover{background:#305742}
#workspace{position:relative;height:var(--app-height,100dvh);display:block;padding-bottom:calc(var(--nav-height) + env(safe-area-inset-bottom));overflow:hidden}
main{height:100%;max-width:980px;margin:auto;padding:20px 20px 0;display:flex;flex-direction:column;overflow:hidden}
header{height:65px;flex:none;gap:8px;margin:0;padding:0 2px}h1{font-size:22px;font-weight:650;letter-spacing:.03em}.page-caption{margin:1px 0 0;color:var(--muted);font-size:12px}
#back{font-size:13px;padding:7px 6px;color:var(--accent)}
#message{flex:none;height:25px;font-size:12px;padding:2px 4px;overflow:auto;margin:0}
#preview-banner{font-size:11px;padding:3px 4px}
aside{position:absolute;bottom:0;left:0;right:0;height:calc(var(--nav-height) + env(safe-area-inset-bottom));padding:0 12px env(safe-area-inset-bottom);border:0;border-top:1px solid var(--line);background:#fcfefd;display:block;z-index:3}
aside .brand{display:none}nav{height:100%;max-width:760px;margin:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;align-items:stretch}nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:0;border-radius:0;padding:8px 0;background:transparent;color:var(--muted);font-size:12px;min-width:0}nav button.selected{background:transparent;color:var(--accent);font-weight:600}nav button span{white-space:nowrap}.line-icon{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round;flex:none}
.page{width:100%;max-width:none;margin:0;flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 2px 36px;scrollbar-gutter:stable}
#home{display:block;align-items:normal;justify-content:normal;padding:0 2px 36px}
.welcome{background:linear-gradient(120deg,#dfecdf,#f4f5e8);border-radius:17px;padding:28px 24px 32px;margin:0 0 18px;min-height:154px}.welcome h2{font-size:22px;font-weight:600;margin:0 0 10px}.welcome p{font-size:13px;color:#607765;margin:0;line-height:1.8}
.entry-grid,.plugin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.entry-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:18px;padding:24px 20px;text-align:left;min-height:164px;background:var(--panel);border:1px solid var(--line);border-radius:17px;box-shadow:none}.entry-card .line-icon{width:30px;height:30px;color:#557e66}.entry-card strong{display:block;font-size:17px;font-weight:600}.entry-card small{display:block;color:var(--muted);font-size:12px;margin-top:6px;line-height:1.65}
.quiet-note{margin:22px 4px;font-size:12px;color:var(--muted);line-height:1.8}
.interaction{border:1px solid var(--line);border-radius:16px;background:var(--panel);gap:14px;padding:20px;margin-bottom:18px;overflow:auto;flex:1;width:100%;min-height:0}
.interaction h2{font-size:17px;font-weight:600;margin:0}
#chat{overflow:hidden;padding:18px;gap:10px}#chat-log{flex:1;max-height:none;min-height:20px;overflow:auto;padding:4px}#chat-log:empty::before{content:'有想法，慢慢说。';display:block;padding:18px 0;color:var(--muted);font-size:13px}
#chat-form{flex:none;max-height:none;display:block}#chat-input{display:block;height:96px;min-height:60px;max-height:140px;padding:10px 12px;background:#f8faf7}#chat-status{flex:none;font-size:12px;min-height:18px;margin:0;line-height:1.5}.chat-actions{margin-top:9px;display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.chat-actions button{min-height:42px;padding:8px 14px;min-width:0}.chat-message{padding:12px 14px;background:#f1f6f1;border-radius:13px;font-size:14px;margin:0 0 10px}.chat-message strong{font-size:11px}.chat-message button{background:transparent}
#create-form{display:flex;flex-direction:column;overflow:auto;gap:16px}#intake-title{height:44px;flex:none}#create-form #intake-text{flex:1;min-height:190px;max-height:none;background:#f8faf7}#create-form .actions{padding:0;flex:none}#create-form .actions button{width:100%;min-height:44px}.secondary-links{display:flex;gap:10px;justify-content:space-between;flex:none}.secondary-links button{font-size:13px;color:var(--accent);background:transparent;border:0;padding:8px 4px}
#library{display:flex;padding-top:2px}.filters{gap:10px;margin-bottom:12px;grid-template-columns:minmax(0,1fr) 100px}.filters input,.filters select{font-size:14px}#list{padding:10px 14px;background:var(--panel);border:1px solid var(--line);border-radius:16px}.doc{padding:16px 2px}.doc:last-child{border-bottom:0}
#edit-form{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px;margin-bottom:18px}#edit-form>.scroll{min-height:0;flex:1;overflow:auto}#edit-form textarea{max-height:none}#edit-form .actions{padding-top:12px}
#plugins{display:block}.section-intro{padding:14px 4px 18px}.section-intro h2{font-size:19px;margin:0 0 5px}.section-intro p{margin:0}.plugin-card{border:1px solid var(--line);border-radius:17px;background:var(--panel);padding:24px 20px;min-height:190px}.plugin-card .line-icon{color:#557e66}.plugin-card h3{font-size:16px;font-weight:600;margin:16px 0 6px}.plugin-card p{font-size:12px;margin:0 0 13px}.status-label{font-size:11px;color:#687c70;background:#eef3ec;border-radius:6px;padding:4px 7px}.plugin-card.placeholder{background:transparent;border-style:dashed}
#settings{display:block;padding:0 2px 30px}.profile-card,#auto-form,#password-form{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px;margin:0 0 14px}.profile-card{display:flex;gap:14px;align-items:center}.profile-card h2{font-size:17px;margin:0 0 2px}.profile-card p{margin:0}.profile-mark{display:grid;place-items:center;background:#e5eee4;color:var(--accent);width:46px;height:46px;border-radius:13px;font-size:27px}.switch{margin-bottom:8px}#auto-form p{line-height:1.8}#password-form h2{margin:0 0 18px;font-size:17px}#password-form label{font-size:13px}#logout.logout-button{width:100%;margin:0;border:1px solid var(--line);border-radius:13px;text-align:center;background:var(--panel);min-height:44px}
.login{height:var(--app-height,100dvh);background:var(--bg);overflow:auto;padding:24px;overscroll-behavior:contain}.login form{width:min(380px,100%);padding:28px 24px;background:var(--panel);border:1px solid var(--line);border-radius:22px}.login-mark{position:relative;display:grid;place-items:center;width:66px;height:66px;margin:0 auto 18px;border-radius:19px;background:#e8f0e6;color:var(--accent);font-size:40px;line-height:1}.login-mark span{position:absolute;right:10px;top:10px;width:7px;height:7px;background:#8aaf98;border-radius:50%}.login h1{font-size:23px;text-align:center;margin:0 0 4px}.login-caption{text-align:center;font-size:13px;color:var(--muted);margin:0 0 28px}.login label{font-size:13px}.login .muted{text-align:center;margin:16px 0 0;font-size:11px}
.password-field{display:block;position:relative;margin-top:6px}.password-field input{margin:0;padding-right:50px}.password-eye,.login .password-eye{position:absolute;right:1px;top:1px;width:44px;min-width:44px;height:calc(100% - 2px);min-height:40px;display:grid;place-items:center;padding:10px;border:0;background:transparent;color:var(--muted)}.password-eye svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}.password-eye[aria-pressed=true]{color:var(--accent);background:#e8f0e9}
@media(min-width:761px){main{padding:28px 32px 0}.welcome{padding:32px;min-height:174px}.entry-card{min-height:180px;flex-direction:row;align-items:center;justify-content:flex-start;gap:24px}.page{max-width:900px}.login form{padding:36px}}
@media(max-width:380px){main{padding:12px 14px 0}.entry-card,.plugin-card{padding:20px 14px}.entry-card strong{font-size:15px}.welcome{padding:24px 20px}.welcome h2{font-size:20px}.entry-card{min-height:154px;gap:14px}}
@media(max-height:560px){header{height:44px}.page-caption{display:none}#message{height:21px}:root{--nav-height:58px}nav button{gap:1px;font-size:11px}nav .line-icon{width:21px;height:21px}#chat{padding:12px;gap:5px}#chat-input{height:60px}#chat-status{font-size:11px}.chat-actions{margin-top:5px}.login{place-items:start center}.welcome{min-height:124px;padding:20px}}

.download-card{width:min(420px,100%);padding:28px;background:var(--panel);border:1px solid var(--line);border-radius:18px}.download-card h1{font-size:24px}.download-card a,.download-entry a{color:var(--accent)}.download-link{display:block;border:1px solid var(--line);padding:14px;margin:12px 0;border-radius:10px}.download-entry{padding:8px 4px}

#workbench{display:block}.control-board,.dispatch-card,#control-settings-form{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px;margin:0 0 16px}.control-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.control-heading h2,.dispatch-card h2,#control-settings-form h2{font-size:17px;margin:0 0 12px}.control-heading button{font-size:12px;padding:6px 12px}.control-board{min-height:220px}.agent-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.agent-tile{border-top:1px solid var(--line);padding:14px 0}.agent-tile h3{font-size:15px;margin:0}.agent-tile p{font-size:13px;color:var(--muted)}.agent-tile progress{width:100%;accent-color:var(--accent)}#dispatch-input{width:100%;min-height:120px;max-height:240px;resize:vertical}#dispatch-status{font-size:12px}#dispatch-confirm{color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:16px;width:min(420px,calc(100vw - 32px));max-height:80dvh;overflow:auto;padding:22px}#dispatch-confirm::backdrop{background:#243f3355}#dispatch-confirm h2{font-size:18px}#dispatch-confirm p{font-size:13px;line-height:1.8}#confirm-command{white-space:pre-wrap;overflow-wrap:anywhere;max-height:180px;overflow:auto;font-family:inherit;font-size:14px;background:var(--soft);padding:12px}#control-settings-form p{font-size:12px;line-height:1.8}

/* Inline home interaction and a lower, compact dispatch panel. */
#home{display:flex;flex-direction:column;gap:10px;overflow:hidden;padding-bottom:12px}.home-voice-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;flex:none}.home-voice-actions button{width:100%;min-height:54px;background:var(--panel);border:1px solid var(--line);font-size:16px}.home-voice-actions button[aria-pressed=true]{background:var(--soft);border-color:var(--accent)}.home-voice-hint{font-size:11px;color:var(--muted);margin:0 2px;line-height:1.6;flex:none}#home>.interaction{margin:0;min-height:0;width:100%;flex:1}#home #create-form #intake-text{min-height:80px}#intake-status{font-size:12px;margin:0}#workbench{display:flex;flex-direction:column;gap:14px;overflow:hidden;padding-bottom:12px}.control-board{flex:1;min-height:0;overflow:auto;margin:0}.dispatch-card{flex:0 0 clamp(210px,30dvh,340px);min-height:0;margin:0;padding:14px;display:flex;flex-direction:column;gap:6px;overflow:auto}.dispatch-card h2{font-size:16px;margin:0;flex:none}#dispatch-input{flex:1;min-height:46px;height:auto;resize:none;margin:0}#dispatch-status{margin:0;font-size:11px;line-height:1.4}.dispatch-card .chat-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;flex:none;margin-top:2px}.dispatch-card .chat-actions button{width:100%;min-width:0;padding:8px 2px;white-space:nowrap;font-size:13px;min-height:44px;touch-action:none}.home-voice-actions button{touch-action:manipulation}#dispatch-target-label{margin:0;font-size:12px}#dispatch-target{padding:4px;margin:0;min-height:30px}@media(max-height:560px){.dispatch-card{flex-basis:190px;padding:10px}.control-board{padding:10px}.home-voice-actions button{min-height:44px}.home-voice-hint{display:none}}
#home #voice,#home #intake-voice{display:none}

#plugin-launch{border:1px solid var(--line);border-radius:16px;padding:24px;width:min(420px,calc(100vw - 32px));background:var(--panel);color:var(--ink)}#plugin-launch p{line-height:1.8;font-size:14px}#plugin-launch-link{display:block;text-align:center;padding:12px;border-radius:10px;color:white;text-decoration:none;margin:16px 0}#plugin-launch::backdrop{background:#243f3355}
