:root{--bg: #0f1419;--surface: #1a222c;--border: #2d3a47;--text: #e7ecf1;--muted: #8b9bab;--accent: #3d8bfd;--accent-dim: #2563c7;--success: #34c759;--danger: #ff5c5c;font-family:Segoe UI,Microsoft YaHei,system-ui,sans-serif;font-size:14px;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0;min-height:100vh;overflow:hidden}#root{height:100vh}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:24px}.modal-box{width:100%;max-width:400px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px;box-shadow:0 16px 48px #00000073}.modal-box h3{margin:0 0 8px;font-size:16px}.modal-box .small{font-size:12px;margin-bottom:14px}.modal-box code{font-size:12px;padding:1px 6px;border-radius:4px;background:var(--bg);border:1px solid var(--border)}.modal-box--lg{max-width:560px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.modal-actions--wrap{flex-wrap:wrap;justify-content:flex-start}.template-lib-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.template-lib-list{max-height:360px;overflow:auto;border:1px solid var(--border);border-radius:8px;background:var(--bg)}.template-lib-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-bottom:1px solid var(--border)}.template-lib-row:last-child{border-bottom:none}.template-lib-thumb{flex:0 0 56px;width:56px;height:40px;border-radius:4px;overflow:hidden;background:#111820;display:flex;align-items:center;justify-content:center}.template-lib-thumb img{max-width:100%;max-height:100%;object-fit:contain}.template-lib-meta{flex:1;min-width:0}.template-lib-name{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-lib-actions{flex:0 0 auto;display:flex;gap:6px}.template-lib-meta .tiny{font-size:11px;margin-top:2px}p.muted.small{line-height:1.45}button{font:inherit;cursor:pointer;border:none;border-radius:6px;padding:8px 14px;background:var(--surface);color:var(--text);border:1px solid var(--border)}button.primary{background:var(--accent);border-color:var(--accent-dim);color:#fff}button.primary:hover{filter:brightness(1.08)}button.danger-outline{background:#ff5c5c1a;border-color:#c44;color:#ff9a9a}button.danger-outline:hover:not(:disabled){background:#ff5c5c33}button.danger-outline:disabled{opacity:.4}button:disabled{opacity:.5;cursor:not-allowed}input,textarea,select{font:inherit;color:var(--text);background:#0d1117;border:1px solid var(--border);border-radius:6px;padding:8px 10px;width:100%}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:34px;background-image:linear-gradient(45deg,transparent 50%,#8fa4ba 50%),linear-gradient(135deg,#8fa4ba 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% + 1px),calc(100% - 12px) calc(50% + 1px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #3d8bfd33}select:disabled{opacity:.72;cursor:not-allowed}select option{background:#0d1117;color:var(--text)}textarea{min-height:72px;resize:vertical}label{display:block;font-size:12px;color:var(--muted);margin-bottom:4px}.field{margin-bottom:12px}.field-hint{margin:6px 0 0;font-size:11px;color:var(--muted);line-height:1.4}.field-row{display:flex;flex-wrap:wrap;gap:8px;align-items:stretch}.field-row input{flex:1;min-width:0}button.narrow{padding:8px 12px;flex-shrink:0}.retry-block{margin-top:8px;padding-top:12px;border-top:1px solid var(--border)}.sub-h{margin:0 0 10px;font-size:12px;font-weight:600;color:var(--muted);letter-spacing:.04em}.check-row{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:13px;color:var(--text);margin-top:4px}.check-row input{width:auto;margin:0}.click-locate-mode{display:flex;flex-direction:column;gap:6px;margin-top:4px}.click-locate-mode .check-row{margin-top:0}.field-hint code{font-size:11px;color:var(--accent);background:#3d8bfd1f;padding:2px 6px;border-radius:4px}.vkbd-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:12000;display:flex;align-items:center;justify-content:center;padding:16px;background:#0000008c}.vkbd-panel{position:relative;max-width:min(1040px,100%);max-height:min(92vh,900px);overflow:auto;background:var(--panel, #121820);border:1px solid var(--border);border-radius:10px;box-shadow:0 16px 48px #00000073}.vkbd-header{position:sticky;top:0;z-index:1;padding:12px 40px 10px 14px;border-bottom:1px solid var(--border);background:var(--panel, #121820)}.vkbd-title{margin:0 0 6px;font-size:15px;font-weight:600}.vkbd-sub{margin:0 0 8px;font-size:11px;color:var(--muted);line-height:1.45}.vkbd-led{font-size:11px;color:var(--muted);display:flex;flex-wrap:wrap;align-items:center;gap:6px}.vkbd-tag{padding:2px 8px;border-radius:4px;background:#3d8bfd26;color:var(--accent, #6eb3ff);font-size:11px}.vkbd-close{position:absolute;top:8px;right:10px;width:32px;height:32px;border:none;border-radius:6px;background:transparent;color:var(--muted);font-size:22px;line-height:1;cursor:pointer}.vkbd-close:hover{background:#ffffff14;color:var(--text)}.vkbd-body{padding:10px 12px 8px}.vkbd-row{display:flex;flex-wrap:nowrap;gap:4px;margin-bottom:4px;align-items:stretch}.vkbd-gap{min-width:4px}.vkbd-key{flex:1;min-width:22px;min-height:34px;padding:3px 4px;border:1px solid var(--border);border-radius:4px;background:#1a222c;color:var(--text);font-size:11px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;line-height:1.1}.vkbd-key:hover:not(:disabled){background:#232d3a;border-color:var(--accent, #3d8bfd)}.vkbd-key:disabled{opacity:.45;cursor:not-allowed}.vkbd-key--wide{font-size:10px}.vkbd-key--space{min-height:40px}.vkbd-key--mod{font-size:10px;background:#151c24}.vkbd-key--mod-on{background:#3d8bfd38;border-color:var(--accent, #3d8bfd)}.vkbd-key--lock-on{background:#3d8bfd2e;border-color:var(--accent, #3d8bfd)}.vkbd-key--disabled{cursor:not-allowed}.vkbd-key-main{font-weight:600;font-size:11px}.vkbd-key-shift{font-size:9px;opacity:.8}.vkbd-key-line{display:block;font-size:10px}.vkbd-footer{padding:10px 12px 12px;border-top:1px solid var(--border);display:flex;justify-content:flex-end}.app-shell{display:grid;grid-template-rows:auto 1fr;height:100vh;background:var(--bg)}.app-shell.app-shell--android{display:flex;flex-direction:column;height:100vh;min-height:100vh;max-height:100vh}.app-shell--android>.layout.layout-hub{flex:1;min-height:0}.android-app-topbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-shrink:0;padding:8px 12px;padding-top:max(8px,env(safe-area-inset-top,0px));border-bottom:1px solid var(--border);background:#0c1016}.android-app-topbar-title{font-size:15px;font-weight:650;color:var(--text);flex-shrink:0}.workspace-tabs.workspace-tabs--android-bottom.android-bottom-tab-nav{flex-shrink:0;flex-wrap:nowrap;align-items:stretch;gap:0;padding:6px 0 0;padding-bottom:max(10px,env(safe-area-inset-bottom,0px));padding-left:max(0px,env(safe-area-inset-left,0px));padding-right:max(0px,env(safe-area-inset-right,0px));justify-content:space-around;border-bottom:none;border-top:1px solid rgba(255,255,255,.08);background:#0a0d12f0;backdrop-filter:saturate(160%) blur(18px);-webkit-backdrop-filter:saturate(160%) blur(18px);box-shadow:0 -6px 28px #0000006b}.workspace-tabs--android-bottom.android-bottom-tab-nav .android-bottom-tab{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;padding:8px 4px 10px;margin:0;border:none;border-radius:0;background:transparent;color:#8b9cab;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .15s ease,transform .1s ease}.workspace-tabs--android-bottom.android-bottom-tab-nav .android-bottom-tab:hover{color:#c5d0dc;border-color:transparent}.workspace-tabs--android-bottom.android-bottom-tab-nav .android-bottom-tab:active{transform:scale(.96);opacity:.88}.workspace-tabs--android-bottom.android-bottom-tab-nav .android-bottom-tab.active{color:var(--accent);background:transparent;border-color:transparent}.workspace-tabs--android-bottom.android-bottom-tab-nav .android-bottom-tab.active .android-bottom-tab__label{font-weight:650}.android-bottom-tab__icon{display:flex;align-items:center;justify-content:center;opacity:.92}.android-bottom-tab.active .android-bottom-tab__icon{opacity:1}.android-bottom-tab__label{font-size:11px;line-height:1.15;letter-spacing:.03em;font-weight:500}.android-app-topbar .workspace-user{margin-left:auto;max-width:min(280px,58vw)}.workspace-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 14px;border-bottom:1px solid var(--border);background:#0c1016}.workspace-tabs button{font-size:12px;padding:6px 12px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--muted);cursor:pointer}.workspace-tabs button:hover{color:var(--text);border-color:#3a4656}.workspace-tabs button.active{border-color:var(--accent);color:var(--text);background:#1e2835}.workspace-tabs--detail{gap:10px}.workspace-close{font-size:12px;padding:6px 12px;border-radius:6px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;margin-right:8px}.workspace-close:hover{color:var(--text);border-color:#5a6a7e;background:#ffffff0a}.main.schedule-main{display:flex;flex-direction:column;gap:10px;padding:12px 14px;min-height:0}.main.profile-hub-main{overflow:auto;padding:20px 24px 28px}.profile-hub{max-width:960px;margin:0 auto;width:100%}.profile-hub-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:20px}.profile-hub-title{margin:0;font-size:1.25rem;font-weight:650;color:var(--text)}.profile-usage-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px}@media (max-width: 900px){.profile-usage-summary{grid-template-columns:repeat(2,1fr)}}.profile-usage-card{border:1px solid var(--border);border-radius:8px;padding:12px 14px;background:var(--surface);display:flex;flex-direction:column;gap:6px}.profile-usage-card strong{font-size:1.1rem;font-weight:650;color:var(--text);font-variant-numeric:tabular-nums}.profile-table-wrap{border:1px solid var(--border);border-radius:8px;overflow:auto;background:var(--surface)}.profile-usage-table{width:100%;border-collapse:collapse;font-size:12px}.profile-usage-table th,.profile-usage-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border)}.profile-usage-table th{color:var(--muted);font-weight:600;background:var(--bg);position:sticky;top:0;z-index:1}.profile-usage-table td.num{text-align:right;font-variant-numeric:tabular-nums}.profile-usage-table th.num{text-align:right}.profile-usage-table tbody tr:last-child td{border-bottom:none}.profile-usage-table td.mono{font-family:ui-monospace,Consolas,monospace}.profile-subscribe-section{margin-bottom:1.35rem;padding-bottom:4px}.profile-subscribe-title{margin:0 0 6px;font-size:1.05rem;font-weight:650;color:var(--text)}.profile-subscribe-lead{margin:0 0 14px;line-height:1.5;max-width:52rem}.profile-subscribe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.profile-subscribe-card{border:1px solid var(--border);border-radius:12px;padding:16px 16px 14px;background:var(--surface);display:flex;flex-direction:column;gap:10px;min-height:200px}.profile-subscribe-card-title{margin:0;font-size:1rem;font-weight:650}.profile-subscribe-price{margin:0;line-height:1.3}.profile-subscribe-price-num{font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--accent)}.profile-subscribe-price-unit{font-weight:500}.profile-subscribe-summary{margin:0;flex:1;line-height:1.45}.profile-subscribe-buy-btn{align-self:flex-start;margin-top:auto;border-radius:10px;font-weight:650}.profile-subscribe-card-note{margin:0;line-height:1.35}.profile-token-wallet{margin-bottom:1.25rem;border:1px solid var(--border);border-radius:12px;padding:0;background:linear-gradient(165deg,rgba(61,139,253,.08) 0%,var(--surface) 42%,var(--surface) 100%);box-shadow:0 1px #ffffff0a inset;overflow:hidden}.profile-token-wallet-grid{display:grid;grid-template-columns:minmax(200px,1fr) minmax(260px,1.15fr);gap:0}@media (max-width: 720px){.profile-token-wallet-grid{grid-template-columns:1fr}}.profile-token-wallet-balance{padding:18px 20px;border-right:1px solid var(--border)}@media (max-width: 720px){.profile-token-wallet-balance{border-right:none;border-bottom:1px solid var(--border)}}.profile-token-wallet-topup{padding:18px 20px;display:flex;flex-direction:column;gap:12px}.profile-token-wallet-eyebrow{display:block;font-size:11px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.profile-token-wallet-balance-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px}.profile-token-wallet-balance-num{font-size:1.85rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text);line-height:1.1}.profile-token-wallet-balance-unit{font-size:.95rem;color:var(--muted);font-weight:600}.profile-token-wallet-hint{margin:10px 0 0;font-size:12px;line-height:1.45;max-width:36rem}.profile-token-wallet-topup-lead{margin:-4px 0 0;line-height:1.45}.profile-token-presets{display:flex;flex-wrap:wrap;gap:8px}.profile-token-preset-btn{padding:8px 14px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:13px;font-weight:600;cursor:pointer;transition:border-color .15s,background .15s}.profile-token-preset-btn:hover:not(:disabled){border-color:var(--accent);background:#3d8bfd1f}.profile-token-preset-btn:disabled{opacity:.45;cursor:not-allowed}.profile-token-topup-row{display:flex;flex-wrap:wrap;align-items:stretch;gap:10px}.profile-token-amount-field{display:flex;align-items:center;flex:1 1 140px;min-width:0;border:1px solid var(--border);border-radius:10px;background:var(--bg);padding:0 4px 0 12px;transition:border-color .15s,box-shadow .15s}.profile-token-amount-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px #3d8bfd33}.profile-token-amount-prefix{font-size:15px;font-weight:650;color:var(--muted);margin-right:4px}.profile-token-amount-input{flex:1;min-width:0;border:none;background:transparent;color:var(--text);font-size:16px;font-weight:600;font-variant-numeric:tabular-nums;padding:12px 10px 12px 0;outline:none}.profile-token-amount-input:disabled{opacity:.55}.profile-token-pay-btn{flex:0 0 auto;padding-left:20px;padding-right:20px;font-weight:650;border-radius:10px}.profile-token-estimate{margin:0;line-height:1.45}.profile-token-estimate-num{color:var(--accent);font-weight:650;font-variant-numeric:tabular-nums}.profile-topup-modal .profile-topup-modal-title{margin:0 0 6px;font-size:1.05rem}.profile-topup-modal-sub{margin:0 0 14px;line-height:1.5}.profile-topup-modal-sub code{font-size:12px}.profile-topup-modal-sub-hint{display:block;margin-top:8px;font-size:12px;color:var(--muted)}.profile-topup-qr-frame{display:flex;justify-content:center;align-items:center;margin:0 0 14px;padding:14px;border-radius:12px;border:1px solid var(--border);background:var(--bg)}.profile-topup-qr-img{display:block;border-radius:8px}.profile-topup-qr-placeholder{min-height:280px;display:flex;align-items:center;justify-content:center;text-align:center;padding:16px;max-width:280px}.profile-topup-link-label{margin:0 0 6px}.profile-topup-link-row{display:flex;gap:8px;align-items:stretch;margin-bottom:4px}.profile-topup-link-input{flex:1;min-width:0;padding:10px 12px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:12px}.profile-topup-copy-btn{flex-shrink:0;align-self:stretch}.schedule-editor{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:12px}.schedule-row{border:1px solid var(--border);border-radius:8px;padding:10px 12px;background:var(--surface);display:flex;flex-direction:column;gap:8px}.schedule-row-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.schedule-row-head label{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted);min-width:76px;padding-right:6px;white-space:nowrap}.schedule-pickers{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.schedule-inline-row{display:grid;grid-template-columns:1.6fr .9fr 1.3fr;gap:10px;align-items:end}.schedule-inline-item{min-width:0}.schedule-pickers select{font-size:12px;padding:6px 8px;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text);max-width:100%}.schedule-editor .field select,.schedule-editor .schedule-row select{min-height:34px;padding:6px 10px;border-radius:8px;border:1px solid var(--border);background:var(--panel);color:var(--text);outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;color-scheme:dark}.schedule-editor .field select:hover,.schedule-editor .schedule-row select:hover{border-color:var(--accent)}.schedule-editor .field select:focus,.schedule-editor .schedule-row select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.schedule-editor .field select option,.schedule-editor .schedule-row select option{background:#1f2833;color:#e6edf3}.schedule-pickers select:disabled{opacity:.85;cursor:not-allowed}@media (max-width: 1180px){.schedule-inline-row{grid-template-columns:1fr}}.layout{display:grid;grid-template-columns:220px 1fr 300px;min-height:0;background:var(--bg)}.layout>*{min-height:0}.project-layout{grid-template-columns:288px 1fr 280px}.layout.layout-hub{grid-template-columns:1fr}.projects-hub-main{overflow:auto;padding:24px 28px 32px;min-height:0}.projects-hub{width:100%;max-width:none}.claw-hub{max-width:1080px;margin:0 auto;padding:0 12px}.projects-hub-header{display:flex;flex-direction:column;gap:16px;margin-bottom:28px}@media (min-width: 720px){.projects-hub-header{flex-direction:row;align-items:flex-end;justify-content:space-between}}.projects-hub-title{margin:0;font-size:1.35rem;font-weight:650;color:var(--text);letter-spacing:.02em}.projects-hub-actions{display:flex;flex-wrap:wrap;gap:10px;flex-shrink:0}.projects-hub-actions button{font-size:13px;padding:8px 14px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer}.projects-hub-actions button:hover:not(:disabled){border-color:var(--accent-dim)}.projects-hub-actions button.primary{background:var(--accent);border-color:var(--accent-dim);color:#fff}.projects-hub-actions button.primary:hover:not(:disabled){filter:brightness(1.08)}.projects-hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.projects-hub-empty{grid-column:1 / -1;margin:32px 0;text-align:center;font-size:14px}.project-card{position:relative;display:flex;flex-direction:column;border-radius:10px;border:1px solid var(--border);background:var(--surface);overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}.project-card-delete-corner{position:absolute;top:10px;right:10px;z-index:2}.project-card:hover:not(.project-card-missing){border-color:#3a4d62;box-shadow:0 4px 20px #0003}.project-card-current{border-color:var(--accent-dim);box-shadow:0 0 0 1px #3d8bfd40}.project-card-missing{opacity:.72}.project-card-body{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:16px 56px 12px 16px;border:none;background:transparent;color:var(--text);text-align:left;cursor:pointer;width:100%;font:inherit}.project-card-body:hover:not(:disabled){background:#ffffff08}.project-card-body:disabled{cursor:not-allowed}.project-card-name{font-size:15px;font-weight:600;line-height:1.3;word-break:break-word}.project-card-meta{font-size:12px;color:var(--muted)}.project-card-meta.warn{color:#ff9a6b}.project-card-foot{padding:8px 12px 12px;border-top:1px solid var(--border);display:flex;justify-content:flex-end}.project-card-foot--wrap{flex-wrap:wrap;justify-content:flex-start;gap:8px}.project-card-top{display:flex;align-items:flex-start;gap:12px;width:100%;text-align:left}.project-card-text{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.project-card-icon{width:48px;height:48px;border-radius:8px;object-fit:cover;flex-shrink:0;border:1px solid var(--border)}.project-card-icon-placeholder{width:48px;height:48px;border-radius:8px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:var(--muted);background:#0f141c;border:1px solid var(--border)}.project-card-dev{display:block;width:100%}.project-card-desc{margin:0;font-size:12px;line-height:1.45;color:var(--text);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.project-meta-textarea{width:100%;box-sizing:border-box;min-height:88px;padding:10px 12px;border-radius:8px;border:1px solid var(--border);background:#0a0e14;color:var(--text);font:inherit;font-size:13px;resize:vertical}.project-meta-icon-preview{max-width:120px;max-height:120px;border-radius:8px;border:1px solid var(--border);margin-top:8px}.warn-text{color:#fca5a5;font-size:13px;margin:0 0 12px}.skill-market-intro{font-size:12px;line-height:1.5;margin:0;max-width:720px}.skill-market-hub .skill-market-section{margin-bottom:28px}.skill-market-section-title{margin:0 0 12px;font-size:15px;font-weight:600;color:var(--text)}.skill-market-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.skill-market-card{border:1px solid var(--border);border-radius:10px;padding:14px;background:var(--surface);display:flex;flex-direction:column;gap:10px}.skill-market-card-head{display:flex;align-items:flex-start;gap:10px}.skill-market-icon{width:44px;height:44px;border-radius:8px;object-fit:cover;border:1px solid var(--border)}.skill-market-icon-placeholder{width:44px;height:44px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--muted);background:#0f141c;border:1px solid var(--border)}.skill-market-card-title{font-weight:600;font-size:14px}.skill-market-desc{margin:0;font-size:12px;line-height:1.45;color:var(--muted);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.skill-market-card-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.skill-market-admin-list{display:flex;flex-direction:column;gap:12px}.skill-market-admin-card{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--border);border-radius:10px;background:#121820}.skill-market-admin-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start}.skill-dev-wallet-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px 14px;margin:12px 0}.skill-dev-wallet-stat{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:#121820;font-size:13px}.skill-dev-wallet-form{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end;margin-top:8px}.skill-dev-wallet-form .skill-run-field{min-width:140px;flex:1}.skill-dev-wallet-table{width:100%;border-collapse:collapse;font-size:12px}.skill-dev-wallet-table th,.skill-dev-wallet-table td{border:1px solid var(--border);padding:8px 10px;text-align:left}.skill-run-fields{display:flex;flex-direction:column;gap:12px;margin:12px 0;max-height:50vh;overflow-y:auto}.skill-run-field{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted)}.skill-run-field input{padding:8px 10px;border-radius:8px;border:1px solid var(--border);background:#0a0e14;color:var(--text);font-size:13px}.skill-reject-textarea{width:100%;box-sizing:border-box;margin:12px 0;padding:10px 12px;border-radius:8px;border:1px solid var(--border);background:#0a0e14;color:var(--text);font:inherit;font-size:13px;resize:vertical}.toolbar-project-name{display:flex;align-items:center;margin-right:4px}.toolbar-project-name input{min-width:120px;max-width:200px;padding:6px 10px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:13px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sidebar,.panel,.toolbar,.workspace-tabs{user-select:none;-webkit-user-select:none}.sidebar input,.sidebar textarea,.sidebar select,.panel input,.panel textarea,.panel select,.panel .log-box{user-select:text;-webkit-user-select:text}.sidebar{border-right:1px solid var(--border);padding:14px;display:flex;flex-direction:column;gap:10px;background:#121820;min-height:0;overflow:hidden}.sidebar-body-scroll{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:10px;padding-right:4px;margin-right:-2px}.sidebar-body-scroll::-webkit-scrollbar{width:8px}.sidebar-body-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.sidebar-body-scroll::-webkit-scrollbar-thumb:hover{background:#3d4d62}.sidebar-body-scroll .table-mini{max-height:none;overflow:visible}.sidebar-body-scroll .table-head{position:static}.brand{font-size:18px;font-weight:700;letter-spacing:.06em;color:var(--text);flex-shrink:0}.side-hint.tiny{font-size:11px;margin:0}.flow-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.flow-tabs .tab{font-size:11px;padding:5px 8px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--muted)}.flow-tabs .tab.active{border-color:var(--accent);color:var(--text);background:#1e2835}.flow-tabs .tab.add{border-style:dashed}.flow-tabs .tab.danger{border-color:#8f2a2a;color:#ff8a8a}.flow-tabs .tab.danger:hover{background:#ff5c5c1f}.subflow-extract-row{margin-bottom:10px}.subflow-extract-btn{width:100%;margin-top:0;margin-right:0}.sidebar-panel{margin-top:12px;padding-top:10px;border-top:1px solid var(--border);flex-shrink:0}.sidebar-body-scroll .sidebar-panel{margin-top:0}.sidebar-panel-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.sidebar-panel-head h4{margin:0;flex:1;min-width:0;font-size:12px;color:var(--muted);font-weight:600}.batch-from-table-btn{flex-shrink:0;white-space:nowrap;margin-top:0!important}.sidebar-panel h4{margin:0 0 8px;font-size:12px;color:var(--muted);font-weight:600}.small-btn{margin-top:6px;margin-right:6px;font-size:12px;padding:5px 10px}.field-row.tight{gap:6px;margin-bottom:6px}.field-row.tight input{font-size:12px;padding:6px 8px}.table-mini{margin-top:8px;max-height:160px;overflow:auto;border:1px solid var(--border);border-radius:6px}.table-head{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;padding:6px;background:#121820;font-size:10px;color:var(--muted);position:sticky;top:0}.table-row{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;padding:4px 6px;border-top:1px solid var(--border)}.table-row input{font-size:11px;padding:4px 6px}.side-hint{margin:0;font-size:12px;color:var(--muted);line-height:1.45}.palette{display:flex;flex-direction:column;gap:14px;flex:0 0 auto;padding-bottom:4px}.palette-group{display:flex;flex-direction:column;gap:8px}.palette-group-title{margin:0;padding:0 2px 6px;font-size:11px;font-weight:700;letter-spacing:.06em;color:var(--muted);border-bottom:1px solid var(--border)}.palette-item{border:1px dashed var(--border);border-radius:8px;padding:10px;cursor:grab;background:var(--surface);transition:border-color .15s,background .15s}.palette-item:hover{border-color:var(--accent);background:#1e2835}.palette-item:active{cursor:grabbing}.palette-label{display:block;font-weight:600;font-size:13px}.palette-meta{display:block;font-size:11px;color:var(--muted);margin-top:4px;line-height:1.3}.main{display:flex;flex-direction:column;min-width:0}.toolbar{display:flex;flex-wrap:wrap;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border);background:#121820}.canvas-wrap{flex:1;min-height:0}.canvas-wrap .react-flow{background:var(--bg)}.canvas-wrap .react-flow__edge-path{stroke-width:2.75px}.canvas-wrap .react-flow__edge-interaction{stroke-width:22px}.panel{border-left:1px solid var(--border);padding:14px 18px 14px 14px;display:flex;flex-direction:column;gap:10px;background:#121820;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;margin-right:-2px}.panel::-webkit-scrollbar{width:8px}.panel::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.panel::-webkit-scrollbar-thumb:hover{background:#3d4d62}.panel h3{margin:0;font-size:13px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.kimi-gen-panel{flex-shrink:0;margin-top:12px;padding-top:12px;padding-bottom:4px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:8px}.kimi-gen-panel-head{display:flex;flex-direction:column;gap:2px}.kimi-gen-title{font-size:13px;font-weight:600;color:var(--text)}.kimi-gen-hint{margin:0;font-size:11px;line-height:1.45}.kimi-gen-hint code{font-size:10px}.kimi-gen-actions{display:flex;flex-wrap:wrap;gap:8px}.kimi-gen-actions .primary{flex:1;min-width:0;font-size:13px;padding:8px 12px}.kimi-gen-textarea{width:100%;min-height:96px;font-size:13px;line-height:1.45;padding:10px 12px;border-radius:8px;border:1px solid var(--border);background:#0a0e14;color:var(--text);resize:vertical;font-family:inherit}.kimi-chat-log{max-height:220px;overflow-y:auto;overflow-x:hidden;padding:8px 12px 8px 8px;margin-bottom:10px;margin-right:-2px;border-radius:8px;border:1px solid var(--border);background:#080c11;scroll-behavior:smooth;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.kimi-chat-log::-webkit-scrollbar{width:8px}.kimi-chat-log::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.kimi-chat-log::-webkit-scrollbar-thumb:hover{background:#3d4d62}.kimi-chat-bubble{margin-bottom:10px;font-size:12px;line-height:1.45}.kimi-chat-bubble:last-child{margin-bottom:0}.kimi-chat-bubble-role{display:block;font-size:10px;font-weight:600;opacity:.65;margin-bottom:2px}.kimi-chat-bubble-text{white-space:pre-wrap;word-break:break-word;padding:8px 10px;border-radius:8px;border:1px solid var(--border);background:#0f141c}.kimi-chat-bubble--user .kimi-chat-bubble-text{background:#152535;border-color:#2a3f5c}.kimi-chat-bubble--ok .kimi-chat-bubble-text{border-color:#166534;background:#0f1f14;color:#86efac}.kimi-chat-bubble--err .kimi-chat-bubble-text{border-color:#7f1d1d;background:#1c0a0a;color:#fca5a5}.kimi-chat-bubble--info .kimi-chat-bubble-text{border-color:#334155;background:#0c1018;color:#94a3b8;font-size:11px}.kimi-chat-input{min-height:88px}.log-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.log-title{margin:0!important}.log-toolbar{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.log-tool-btn{margin-top:0!important;margin-right:0!important;font-size:11px;padding:4px 8px}.muted{margin:0;font-size:13px;color:var(--muted);line-height:1.5}.props{flex:0 0 auto}.log-box{flex:0 0 auto;min-height:120px;margin:0;padding:10px;font-size:11px;line-height:1.45;background:#0d1117;border:1px solid var(--border);border-radius:8px;overflow:visible;white-space:pre-wrap;word-break:break-word;color:#c8d0d8}.minimap{border-radius:8px;overflow:hidden;border:1px solid var(--border)}.workspace-user{margin-left:auto;display:flex;align-items:center;gap:10px;flex-shrink:0}.workspace-user-phone{font-size:12px;color:var(--muted);max-width:132px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-user-phone--full{max-width:200px}.workspace-phone-reveal{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;margin:0 -2px 0 -4px;border:none;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer}.workspace-phone-reveal:hover{color:var(--text);background:#ffffff0f}.workspace-logout{font-size:12px;padding:6px 10px;border-radius:6px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer}.workspace-logout:hover{color:var(--text);border-color:#5a6a7e}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg);box-sizing:border-box}.auth-page--boot{align-items:center}.auth-card{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:24px 22px 28px;box-shadow:0 16px 48px #00000059}.auth-card--wide{max-width:480px}.auth-brand{margin:0 0 6px;font-size:1.35rem;font-weight:700;color:var(--text);letter-spacing:.04em}.auth-lead{margin:0 0 18px;font-size:14px;color:var(--muted)}.auth-legal-hint{margin:-10px 0 16px;font-size:12px;color:var(--muted);text-align:center}.auth-legal-hint a{color:var(--accent);text-decoration:none}.auth-legal-hint a:hover{text-decoration:underline}.auth-hint{margin-top:10px}.auth-code{margin:8px 0 0;padding:12px 14px;font-size:12px;line-height:1.45;background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--accent);overflow-x:auto}.auth-tabs{display:flex;gap:8px;margin-bottom:18px}.auth-tabs button{flex:1;padding:8px 12px;font-size:13px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--muted);cursor:pointer}.auth-tabs button.active{border-color:var(--accent-dim);color:var(--text);background:#1e2835}.auth-form .field{margin-bottom:12px}.auth-field-row{display:flex;gap:8px;align-items:stretch}.auth-field-row input{flex:1;min-width:0}.auth-sms-btn{flex-shrink:0;padding:0 14px;font-size:13px;white-space:nowrap;border:1px solid var(--border, #334155);border-radius:8px;background:#1e2835;color:var(--text, #e2e8f0);cursor:pointer}.auth-sms-btn:disabled{opacity:.55;cursor:not-allowed}.auth-error{margin:0 0 12px;font-size:13px;color:#f87171;line-height:1.45}.auth-submit{width:100%;margin-top:6px;padding:10px 16px;font-size:14px}
