:root{--bg: #ffffff;--panel: #f8f9fa;--border: #e0e3e7;--border-strong: #c6cbd1;--text: #1f2328;--text-soft: #57606a;--text-dim: #8b949e;--accent: #188038;--accent-soft: #e6f4ea;--sel: rgba(24, 128, 56, .09);--sel-border: #188038;--header-bg: #f6f8fa;--header-active: #ddefe1;--e1: 0 1px 2px rgba(16, 24, 40, .04), 0 1px 3px rgba(16, 24, 40, .05);--e2: 0 1px 2px rgba(16, 24, 40, .05), 0 6px 16px -4px rgba(16, 24, 40, .09);--e3: 0 2px 4px rgba(16, 24, 40, .05), 0 14px 32px -8px rgba(16, 24, 40, .14);--e-accent: 0 2px 6px rgba(24, 128, 56, .18), 0 10px 24px -8px rgba(24, 128, 56, .42);--ease: cubic-bezier(.32, .72, 0, 1);--t-fast: .13s;--t-base: .22s;--t-slow: .45s;--r-sm: 8px;--r-md: 12px;--r-lg: 16px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}@keyframes sgRise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes sgPop{0%{opacity:0;transform:scale(.9)}60%{transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@keyframes sgGrowUp{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes sgDraw{0%{stroke-dashoffset:var(--dash, 400)}to{stroke-dashoffset:0}}@keyframes sgSheen{0%{transform:translate(-120%) skew(-18deg)}to{transform:translate(320%) skew(-18deg)}}@keyframes sgFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{font-family:Inter,-apple-system,Segoe UI,Roboto,sans-serif;font-size:13px;color:var(--text);background:var(--bg);overflow:hidden}.sg-app{display:flex;flex-direction:column;height:100vh}.sg-logo{width:34px;height:34px;border-radius:9px;flex-shrink:0;background:linear-gradient(135deg,#34a853,#188038);color:#fff;display:flex;align-items:center;justify-content:center;font-size:19px;font-weight:800;text-decoration:none;font-family:Georgia,serif}.sg-title-input{font-size:15px;font-weight:600;color:var(--text);border:1px solid transparent;border-radius:6px;padding:4px 8px;outline:none;min-width:60px;max-width:420px;background:transparent}.sg-title-input:hover{border-color:var(--border)}.sg-title-input:focus{border-color:var(--accent)}.sg-savestate{font-size:11.5px;color:var(--text-dim);white-space:nowrap}.sg-spin{animation:sgSpin .9s linear infinite}@keyframes sgSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sg-topbar-end{margin-left:auto;display:flex;gap:8px;align-items:center;padding-bottom:8px}.sg-btn{border:1px solid var(--border);background:#fff;color:var(--text-soft);border-radius:7px;padding:6px 12px;font-size:12.5px;font-weight:550;cursor:pointer;font-family:inherit}.sg-btn:hover{border-color:var(--border-strong);color:var(--text)}.sg-toolbar{display:flex;align-items:center;gap:6px;padding:7px 12px;border-bottom:1px solid var(--border);background:#fff;flex-wrap:wrap;row-gap:6px}.sg-toolbar::-webkit-scrollbar{display:none}.sg-tgroup{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:11px;background:#0f172a0d;flex-shrink:0}.sg-tool{min-width:32px;height:32px;border:none;background:transparent;border-radius:8px;color:var(--text-soft);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-family:inherit;padding:0 7px;flex-shrink:0;transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.sg-tool:hover:not(:disabled){background:#fffc;color:var(--text)}.sg-tool.on{background:#fff;color:var(--accent);box-shadow:0 1px 2px #1018281f,0 0 0 1px #18803847}.sg-tool.on:hover{background:#fff;color:var(--accent)}.sg-tool:disabled{opacity:.3;cursor:default}.sg-tool:disabled:hover{background:transparent}.sg-tool.wide{padding:0 11px;gap:6px;font-size:12.5px;font-weight:600}.sg-tool.accent{background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 0 0 1px #1880382e}.sg-tool.accent:hover{background:#d7ecdd;color:var(--accent)}.sg-color-btn{position:relative;padding:0 8px 5px}.sg-color-bar{position:absolute;left:7px;right:7px;bottom:6px;height:3px;border-radius:2px;box-shadow:inset 0 0 0 1px #1018281f}.sg-size{display:inline-flex;align-items:center;gap:2px}.sg-size-trigger{border:none;background:none;padding:0;cursor:pointer;display:inline-flex}.sg-size-val{min-width:40px;height:32px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;gap:3px;background:#fff;border:none;border-radius:8px;cursor:pointer;font-family:inherit;font-size:12.5px;font-weight:600;color:var(--text);box-shadow:0 1px 2px #10182814,0 0 0 1px var(--border);transition:box-shadow var(--t-fast) var(--ease)}.sg-size-val:hover{box-shadow:0 1px 2px #1018281a,0 0 0 1px var(--border-strong)}.sg-sep{width:1px;height:20px;background:var(--border);margin:0 4px;flex-shrink:0}.sg-select{height:32px;border:none;border-radius:8px;background:#fff;box-shadow:0 1px 2px #10182814,0 0 0 1px var(--border);font-size:12.5px;color:var(--text);padding:0 6px;font-family:inherit;flex-shrink:0}.sg-color{width:32px;height:32px;padding:3px;border:none;border-radius:8px;background:#fff;cursor:pointer;flex-shrink:0;box-shadow:0 0 0 1px var(--border)}.sg-fbar{display:flex;align-items:stretch;border-bottom:1px solid var(--border);background:#fff}.sg-namebox{width:90px;padding:6px 10px;border-right:1px solid var(--border);font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;color:var(--text-soft);display:flex;align-items:center;flex-shrink:0}.sg-fx{padding:6px 8px 6px 12px;color:var(--text-dim);font-style:italic;font-family:Georgia,serif;display:flex;align-items:center}.sg-finput{flex:1;border:none;outline:none;padding:6px 10px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12.5px;color:var(--text)}.sg-gridwrap{flex:1;position:relative;overflow:hidden;background:var(--panel)}.sg-scroll{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto}.sg-corner{position:absolute;top:0;left:0;z-index:30;background:var(--header-bg);border-right:1px solid var(--border-strong);border-bottom:1px solid var(--border-strong);cursor:pointer}.sg-colhead,.sg-rowhead{position:absolute;z-index:20;overflow:hidden;background:var(--header-bg)}.sg-colhead{top:0;right:0}.sg-rowhead{left:0;bottom:0}.sg-hcell{position:absolute;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:var(--text-soft);background:var(--header-bg);border-right:1px solid var(--border);border-bottom:1px solid var(--border);-webkit-user-select:none;user-select:none}.sg-hcell.active{background:var(--header-active);color:var(--accent)}.sg-hresize-c{position:absolute;right:-3px;top:0;width:6px;height:100%;cursor:col-resize;z-index:5}.sg-hresize-r{position:absolute;bottom:-3px;left:0;height:6px;width:100%;cursor:row-resize;z-index:5}.sg-cells{position:absolute;top:0;left:0}.sg-cell{position:absolute;padding:0 6px;display:flex;align-items:center;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:#fff;white-space:nowrap;overflow:hidden;-webkit-user-select:none;user-select:none;font-size:13px;line-height:1.2}.sg-cell.num{justify-content:flex-end}.sg-cell.err{color:#c0392b;font-weight:600}.sg-selbox{position:absolute;pointer-events:none;background:var(--sel);border:1px solid var(--sel-border);z-index:10}.sg-activebox{position:absolute;pointer-events:none;border:2px solid var(--sel-border);background:transparent;z-index:11}.sg-fillhandle{position:absolute;width:8px;height:8px;background:var(--sel-border);border:1px solid #fff;z-index:12;cursor:crosshair;pointer-events:auto}.sg-fillpreview{position:absolute;pointer-events:none;border:1.5px dashed var(--sel-border);z-index:9}.sg-editor{position:absolute;z-index:15;border:2px solid var(--sel-border);outline:none;padding:0 5px;font-size:13px;font-family:inherit;background:#fff;box-shadow:0 4px 16px #0000001f}.sg-menu{position:fixed;z-index:100;min-width:190px;background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 32px #00000024;padding:5px;font-size:12.5px}.sg-menu button{display:block;width:100%;text-align:left;border:none;background:none;padding:7px 12px;border-radius:6px;cursor:pointer;color:var(--text);font-family:inherit;font-size:12.5px}.sg-menu button:hover{background:var(--accent-soft);color:var(--accent)}.sg-menu hr{border:none;border-top:1px solid var(--border);margin:4px 0}.sg-tabs{display:flex;align-items:center;gap:2px;padding:4px 10px;border-top:1px solid var(--border);background:var(--panel);overflow-x:auto}.sg-tab{padding:5px 14px;border-radius:7px 7px 0 0;border:1px solid transparent;font-size:12.5px;color:var(--text-soft);cursor:pointer;background:transparent;font-family:inherit;white-space:nowrap;display:flex;align-items:center;gap:6px}.sg-tab.on{background:#fff;border-color:var(--border);border-bottom-color:#fff;color:var(--accent);font-weight:600}.sg-tab input{border:1px solid var(--accent);border-radius:4px;font-size:12px;padding:1px 4px;width:90px;outline:none;font-family:inherit}.sg-tab-x{border:none;background:none;color:var(--text-dim);cursor:pointer;font-size:13px;padding:0 2px}.sg-tab-x:hover{color:var(--accent)}.sg-tab-add{width:26px;height:26px;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--text-soft);font-size:15px;cursor:pointer;flex-shrink:0}.sg-tab-add:hover{color:var(--accent);border-color:var(--accent)}.sg-home{position:relative;min-height:100vh;background:var(--panel);overflow:auto}.sg-home-bg{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:0}.sg-home-glow{position:absolute;border-radius:50%;filter:blur(90px);opacity:.5}.sg-home-glow.one{width:620px;height:620px;top:-300px;left:-140px;background:radial-gradient(circle,rgba(52,168,83,.3),transparent 70%);animation:sgFloat 14s var(--ease) infinite}.sg-home-glow.two{width:520px;height:520px;top:-220px;right:-160px;background:radial-gradient(circle,rgba(24,128,56,.18),transparent 70%);animation:sgFloat 18s var(--ease) infinite reverse}.sg-home-head{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:12px;padding:14px 28px;background:#ffffffd1;backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid var(--border)}.sg-home-title{font-size:16.5px;font-weight:700;letter-spacing:-.01em}.sg-home-sub{font-size:12px;color:var(--text-dim)}.sg-home-body{position:relative;z-index:1;max-width:1080px;margin:0 auto;padding:40px 24px 72px}.sg-hero{display:flex;align-items:center;gap:28px;animation:sgRise var(--t-slow) var(--ease) both}.sg-hero-copy{flex:1;min-width:0}.sg-hero h1{margin:0 0 6px;font-size:30px;line-height:1.15;font-weight:700;letter-spacing:-.025em;color:var(--text)}.sg-hero p{margin:0 0 22px;font-size:14px;line-height:1.5;color:var(--text-soft);max-width:46ch}.sg-hero-actions{display:flex;flex-wrap:wrap;gap:10px}.sg-hero-art{width:240px;height:120px;flex-shrink:0}.sg-hero-grid{stroke:var(--border-strong);stroke-width:1;opacity:.5}.sg-hero-bar{animation:sgGrowUp .7s var(--ease) both}.sg-hero-line{stroke:var(--accent);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;--dash: 260;stroke-dasharray:260;animation:sgDraw .9s var(--ease) .5s both}.sg-hero-dot{fill:#fff;stroke:var(--accent);stroke-width:2;animation:sgPop .3s var(--ease) both}.sg-new{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:9px;background:linear-gradient(135deg,#34a853,#188038);color:#fff;border:none;border-radius:var(--r-md);padding:11px 20px;font-size:13.5px;font-weight:650;cursor:pointer;font-family:inherit;box-shadow:var(--e-accent);transition:transform var(--t-fast) var(--ease),box-shadow var(--t-base) var(--ease),filter var(--t-fast) var(--ease)}.sg-new:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.06);box-shadow:0 4px 10px #1880383d,0 16px 32px -10px #18803880}.sg-new:active:not(:disabled){transform:translateY(0) scale(.985)}.sg-sheen{position:absolute;top:0;left:0;width:40%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transform:translate(-120%) skew(-18deg);animation:sgSheen 1.1s var(--ease) .55s 1 both}.sg-new:disabled,.sg-import:disabled{opacity:.6;cursor:not-allowed}.sg-import{display:inline-flex;align-items:center;gap:9px;background:#fff;color:var(--text-soft);border:1px solid var(--border-strong);border-radius:var(--r-md);padding:11px 18px;font-size:13.5px;font-weight:600;cursor:pointer;font-family:inherit;box-shadow:var(--e1);transition:transform var(--t-fast) var(--ease),border-color var(--t-base) var(--ease),color var(--t-base) var(--ease),box-shadow var(--t-base) var(--ease)}.sg-import:hover:not(:disabled){border-color:var(--accent);color:var(--accent);transform:translateY(-1px);box-shadow:var(--e2)}.sg-import:active:not(:disabled){transform:translateY(0) scale(.985)}.sg-section-label{margin:38px 0 14px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);animation:sgFade var(--t-slow) var(--ease) .1s both}.sg-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(224px,1fr))}.sg-card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;text-decoration:none;color:var(--text);box-shadow:var(--e1);animation:sgRise var(--t-slow) var(--ease) both;transition:transform var(--t-base) var(--ease),box-shadow var(--t-base) var(--ease),border-color var(--t-base) var(--ease)}.sg-card:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:var(--e3)}.sg-card:active{transform:translateY(-1px)}.sg-card-preview{position:relative;height:132px;overflow:hidden;background:#fff;border-bottom:1px solid var(--border)}.sg-preview{display:block;width:100%;height:100%}.sg-preview-head{fill:var(--accent-soft)}.sg-preview-headbar{fill:var(--accent);opacity:.34}.sg-preview-rule{stroke:var(--border);stroke-width:.5}.sg-preview-label{fill:#b6bcc4}.sg-preview-label.strong{fill:#8b949e}.sg-preview-cell{fill:#ccd2d9}.sg-preview-cell.strong{fill:#9aa2ab}.sg-preview-cell.accent{fill:var(--accent);opacity:.45}.sg-preview-total{stroke:var(--border-strong);stroke-width:1}.sg-preview-bar{fill:#cfe3d6}.sg-preview-bar.accent{fill:var(--accent);opacity:.8}.sg-preview{transition:transform var(--t-slow) var(--ease);transform-origin:50% 0}.sg-card:hover .sg-preview{transform:scale(1.045)}.sg-card-shine{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.55) 45%,transparent 60%);transform:translate(-100%);opacity:0;transition:transform .7s var(--ease),opacity .2s var(--ease)}.sg-card:hover .sg-card-shine{transform:translate(100%);opacity:1}.sg-card-foot{display:flex;align-items:center;gap:10px;padding:11px 12px}.sg-card-mark{width:28px;height:28px;flex-shrink:0;border-radius:var(--r-sm);background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;transition:transform var(--t-base) var(--ease)}.sg-card:hover .sg-card-mark{transform:scale(1.08) rotate(-4deg)}.sg-card-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.sg-card-title{font-size:13px;font-weight:650;letter-spacing:-.005em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sg-card-sub{font-size:11px;color:var(--text-dim)}.sg-card-del{position:absolute;top:8px;right:8px;z-index:2;width:26px;height:26px;border:none;border-radius:var(--r-sm);background:#ffffffeb;color:var(--text-soft);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--e1);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);opacity:0;transform:scale(.85) translateY(-2px);transition:opacity var(--t-base) var(--ease),transform var(--t-base) var(--ease),background var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.sg-card:hover .sg-card-del,.sg-card-del:focus-visible{opacity:1;transform:scale(1) translateY(0)}.sg-card-del:hover{background:#fdeaea;color:#c0392b}.sg-empty{margin-top:34px;padding:44px 24px 52px;text-align:center;background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--e1);animation:sgRise var(--t-slow) var(--ease) .08s both}.sg-empty-art{width:200px;height:150px;margin-bottom:6px}.sg-empty h2{margin:0 0 4px;font-size:16px;font-weight:650}.sg-empty p{margin:0;font-size:13px;color:var(--text-dim)}.sg-empty-back{fill:#eef1f4}.sg-empty-mid{fill:#f6f8f9;stroke:var(--border);stroke-width:1}.sg-empty-page{stroke:var(--border-strong);stroke-width:1}.sg-empty-band{fill:var(--accent-soft)}.sg-empty-headbar{fill:var(--accent);opacity:.6}.sg-empty-label{fill:#c3c9d0}.sg-empty-cell{fill:#dde2e7}.sg-empty-front{animation:sgRise .5s var(--ease) .1s both}.sg-empty-card{fill:#fff;stroke:var(--border-strong);stroke-width:1;filter:drop-shadow(0 6px 14px rgba(16,24,40,.12))}.sg-empty-chart{animation:sgPop .5s var(--ease) .28s both;transform-origin:147px 88px}.sg-empty-bar{fill:#b9dcc7;animation:sgGrowUp .5s var(--ease) both;transform-origin:0 106px}.sg-empty-bar.accent{fill:var(--accent)}.sg-dropdown{position:absolute;top:calc(100% + 4px);left:0;z-index:95;background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:0 14px 38px #00000026;padding:5px}.sg-dd-item{display:flex;align-items:center;gap:9px;width:100%;border:none;background:none;padding:7px 10px;border-radius:7px;font-size:12.5px;color:var(--text);cursor:pointer;font-family:inherit}.sg-dd-item:hover{background:var(--accent-soft);color:var(--accent)}.sg-dd-icon{width:18px;display:inline-flex;justify-content:center;color:var(--text-soft);flex-shrink:0}.sg-dd-item:hover .sg-dd-icon{color:var(--accent)}.sg-dd-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:3px}.sg-dd-cell{display:flex;flex-direction:column;align-items:center;gap:3px;border:1px solid transparent;background:none;padding:7px 4px;border-radius:8px;cursor:pointer;color:var(--text-soft);font-family:inherit;font-size:10px}.sg-dd-cell:hover{background:var(--accent-soft);color:var(--accent);border-color:#18803833}.sg-titlebar{display:flex;align-items:flex-start;gap:12px;padding:8px 14px 0;background:#fff;border-bottom:1px solid var(--border);position:relative;z-index:30}.sg-titlecol{display:flex;flex-direction:column;min-width:0;flex:1}.sg-titlerow{display:flex;align-items:center;gap:4px;min-width:0}.sg-menubar{display:flex;align-items:center;gap:1px;padding:1px 0 4px}.sg-menubtn{border:none;background:none;padding:4px 11px;border-radius:6px;font-size:13px;color:var(--text);cursor:pointer;font-family:inherit}.sg-menubtn:hover,.sg-menubtn.on{background:#eceff2}.sg-dd-sep{border:none;border-top:1px solid var(--border);margin:4px 0}.sg-dd-hint{color:var(--text-dim);font-size:11px;font-family:JetBrains Mono,ui-monospace,monospace}.sg-dd-item:disabled{opacity:.4;cursor:default}.sg-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;background:#0f172a73;display:flex;align-items:flex-start;justify-content:center;padding-top:10vh;animation:sgFade .15s ease}@keyframes sgFade{0%{opacity:0}to{opacity:1}}.sg-modal{background:#fff;border-radius:16px;width:480px;max-width:calc(100vw - 32px);max-height:78vh;overflow-y:auto;box-shadow:0 28px 80px #0f172a4d;animation:sgPop .18s cubic-bezier(.22,1,.36,1)}@keyframes sgPop{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}.sg-modal-head{display:flex;align-items:center;gap:12px;padding:18px 22px 14px}.sg-modal-head h2{font-size:16.5px;font-weight:700;margin:0;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sg-modal-body{padding:4px 22px 20px}.sg-modal-x{border:none;background:none;color:var(--text-dim);cursor:pointer;width:30px;height:30px;border-radius:8px;font-size:16px;flex-shrink:0}.sg-modal-x:hover{background:var(--panel);color:var(--text)}.sg-share-opt{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1.5px solid var(--border);border-radius:12px;cursor:pointer;margin-bottom:8px;transition:border-color .15s,background .15s}.sg-share-opt:hover{border-color:var(--border-strong)}.sg-share-opt.on{border-color:var(--accent);background:var(--accent-soft)}.sg-share-ic{width:34px;height:34px;border-radius:10px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--panel);color:var(--text-soft)}.sg-share-opt.on .sg-share-ic{background:#fff;color:var(--accent)}.sg-modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:0 22px 20px}.sg-btn-primary{background:linear-gradient(135deg,#34a853,#188038);color:#fff;border:none;border-radius:9px;padding:8px 20px;font-size:13px;font-weight:650;cursor:pointer;font-family:inherit;box-shadow:0 4px 14px #22292f47}.sg-btn-primary:hover{filter:brightness(1.06)}.sg-avatar{width:32px;height:32px;border-radius:50%;flex-shrink:0;border:none;cursor:pointer;background:linear-gradient(135deg,#34a853,#188038);color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 10px #1880384d;font-family:inherit}.sg-avatar:hover{filter:brightness(1.07)}.sg-profile-card{position:fixed;z-index:110;width:260px;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 18px 50px #0f172a2e;padding:16px;text-align:center}.sg-workarea{position:relative;flex:1;display:flex;min-height:0;min-width:0}.sg-workarea .sg-gridwrap{flex:1;min-width:0}.sg-ai-toggle{display:flex;align-items:center;gap:6px}.sg-ai-toggle.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.sg-chart-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:15}.sg-chart{position:absolute;pointer-events:auto;background:#fff;border:1px solid var(--border-strong);border-radius:8px;box-shadow:0 2px 10px #0f172a1a;overflow:hidden;display:flex;flex-direction:column}.sg-chart.sel{border-color:var(--accent);box-shadow:0 0 0 2px var(--sel),0 4px 14px #0f172a24}.sg-chart.dragging{opacity:.85;cursor:grabbing}.sg-chart-grip{display:flex;align-items:center;gap:4px;height:22px;padding:0 4px 0 2px;background:var(--panel);border-bottom:1px solid var(--border);color:var(--text-dim);cursor:grab;flex-shrink:0}.sg-chart-grip:active{cursor:grabbing}.sg-chart-grip-title{flex:1;min-width:0;font-size:11px;font-weight:600;color:var(--text-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sg-chart-btn{border:none;background:transparent;color:var(--text-dim);padding:2px 3px;border-radius:4px;cursor:pointer;display:flex;align-items:center}.sg-chart-btn:hover{background:var(--bg);color:var(--text)}.sg-chart-body{flex:1;min-height:0;overflow:hidden}.sg-chart-resize{position:absolute;right:0;bottom:0;width:14px;height:14px;cursor:nwse-resize;background:linear-gradient(135deg,transparent 50%,var(--accent) 50%);border-bottom-right-radius:7px}.sg-chart-empty{display:flex;align-items:center;justify-content:center;height:100%;padding:12px;text-align:center;font-size:11.5px;color:var(--text-dim)}.sg-chart-note{position:absolute;left:8px;bottom:4px;font-size:10px;color:var(--text-dim)}.sg-chart-tip{position:absolute;z-index:5;pointer-events:none;background:#1f2328;color:#fff;border-radius:6px;padding:6px 8px;font-size:11px;line-height:1.5;box-shadow:0 4px 14px #0f172a40;min-width:110px}.sg-chart-tip-label{font-weight:650;margin-bottom:3px}.sg-chart-tip-row{display:flex;align-items:center;gap:6px}.sg-chart-tip-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.sg-chart-tip-name{flex:1;opacity:.85}.sg-chart-tip-val{font-variant-numeric:tabular-nums;font-weight:600}.sg-ai-panel{width:340px;max-width:380px;flex-shrink:0;background:#fff;border-left:1px solid var(--border);display:flex;flex-direction:column;height:100%;box-shadow:-4px 0 16px #0f172a0a}.sg-ai-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--border);background:var(--header-bg)}.sg-ai-badge{width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,#34a853,#188038);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #18803852;flex-shrink:0}.sg-ai-plan{font-size:9.5px;font-weight:700;text-transform:uppercase;padding:1px 6px;border-radius:100px;color:#b45309;background:#fef3c7}.sg-ai-plan.pro{color:var(--accent);background:var(--accent-soft)}.sg-ai-skills{padding:8px 14px;border-bottom:1px solid var(--border)}.sg-ai-skills-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.sg-ai-tabs{display:inline-flex;background:var(--panel);border:1px solid var(--border);border-radius:100px;padding:2px}.sg-ai-tab{border:none;background:transparent;color:var(--text-dim);font-family:inherit;font-size:11px;font-weight:650;padding:3px 10px;border-radius:100px;cursor:pointer}.sg-ai-tab.active{background:#fff;color:var(--text);box-shadow:0 1px 3px #0f172a1f}.sg-ai-chartmode{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border);background:var(--panel);color:var(--text-dim);font-family:inherit;font-size:10.5px;font-weight:600;padding:3px 9px;border-radius:100px;cursor:pointer;white-space:nowrap}.sg-ai-chartmode.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.sg-ai-chartmode.off{opacity:.55}.sg-ai-skill-row{display:flex;flex-wrap:wrap;gap:5px}.sg-ai-skill-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:100px;border:1px solid var(--border);background:var(--panel);color:var(--text-soft);font-size:11.5px;font-weight:550;font-family:inherit;cursor:pointer;white-space:nowrap}.sg-ai-skill-btn:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.sg-ai-skill-btn:disabled{opacity:.5;cursor:not-allowed}.sg-ai-chat{flex:1;overflow-y:auto;padding:12px 14px;display:flex;flex-direction:column;gap:12px}.sg-ai-msg{display:flex;flex-direction:column;max-width:94%;font-size:13px;line-height:1.55}.sg-ai-msg.user{align-self:flex-end;background:var(--accent);color:#fff;padding:8px 12px;border-radius:12px 12px 2px}.sg-ai-msg.assistant{align-self:flex-start;background:var(--panel);border:1px solid var(--border);padding:10px 12px;border-radius:12px 12px 12px 2px}.sg-ai-msg-body p{margin:0 0 8px}.sg-ai-msg-body>*:last-child{margin-bottom:0}.sg-ai-msg-body ul{margin:4px 0 8px;padding-left:20px}.sg-ai-msg-body li{margin-bottom:3px}.sg-ai-msg-body code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11.5px;background:#0f172a0f;padding:1px 4px;border-radius:3px}.sg-ai-msg.user .sg-ai-msg-body code{background:#ffffff38;color:inherit}.sg-ai-patch{margin-top:8px;border:1px solid var(--border-strong);border-radius:8px;background:#fff;padding:8px 10px}.sg-ai-patch-head{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:650;color:var(--text-soft)}.sg-ai-patch-note{margin-top:4px;font-size:11px;color:var(--text-dim)}.sg-ai-apply{margin-top:8px;width:100%;border:none;border-radius:6px;background:var(--accent);color:#fff;font-family:inherit;font-size:12px;font-weight:650;padding:6px 10px;cursor:pointer}.sg-ai-apply:hover:not(:disabled){filter:brightness(1.08)}.sg-ai-apply:disabled{opacity:.5;cursor:not-allowed}.sg-ai-hint{margin-top:6px;font-size:11px;line-height:1.45;color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:6px;padding:5px 8px}.sg-ai-meta{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}.sg-ai-chip{font-size:9.5px;font-weight:650;letter-spacing:.2px;text-transform:uppercase;color:var(--text-dim);background:var(--panel);border:1px solid var(--border);border-radius:100px;padding:1px 7px}.sg-ai-chip.skill{color:var(--accent);background:var(--accent-soft);border-color:#b7e1cd;text-transform:none;letter-spacing:0}.sg-ai-working{flex-direction:row;align-items:center;gap:7px;font-style:italic;color:var(--text-soft)}.sg-ai-dots{width:6px;height:6px;border-radius:50%;background:var(--accent);display:inline-block;animation:sgAiPulse 1s infinite alternate}@keyframes sgAiPulse{0%{opacity:.25}to{opacity:1}}.sg-ai-input-wrap{padding:10px 12px;border-top:1px solid var(--border);background:var(--header-bg);display:flex;gap:8px;align-items:flex-end}.sg-ai-textarea{flex:1;border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:12.5px;font-family:inherit;outline:none;resize:none;background:#fff;color:var(--text);line-height:1.4}.sg-ai-textarea:focus{border-color:var(--accent)}.sg-ai-send{width:32px;height:32px;border-radius:8px;border:none;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.sg-ai-send:hover:not(:disabled){filter:brightness(1.1)}.sg-ai-send:disabled{opacity:.4;cursor:not-allowed}.sg-ai-upgrade{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 20px;text-align:center;overflow-y:auto;background:linear-gradient(180deg,#f8fafc,#fff)}.sg-ai-upgrade-orb{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#34a853,#188038);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px #18803840;margin-bottom:16px;flex-shrink:0}.sg-ai-upgrade-kicker{font-size:10px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--accent);margin-bottom:6px}.sg-ai-upgrade-list{width:100%;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:12px 14px;text-align:left;margin-bottom:20px;font-size:12px;line-height:1.45;color:var(--text-soft)}.sg-ai-upgrade-cta{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:10px 16px;background:linear-gradient(135deg,#34a853,#188038);color:#fff;border-radius:8px;font-weight:650;font-size:13px;text-decoration:none;box-shadow:0 4px 12px #1880384d}.sg-ai-upgrade-cta:hover{filter:brightness(1.08)}.sg-field{display:block;margin-top:12px}.sg-field>span{display:block;font-size:11.5px;font-weight:650;color:var(--text-soft);margin-bottom:4px}.sg-field input[type=text],.sg-field input:not([type]),.sg-field select{width:100%;border:1px solid var(--border-strong);border-radius:6px;padding:6px 9px;font-family:inherit;font-size:13px;color:var(--text);background:#fff;outline:none}.sg-field input:focus,.sg-field select:focus{border-color:var(--accent)}.sg-field.row{display:flex;align-items:center;gap:8px}.sg-field.row>span{margin:0;font-weight:500;color:var(--text)}.sg-field-hint{margin-top:4px;font-size:11px;line-height:1.45;color:var(--text-dim)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.sg-cell:focus-visible,.sg-scroll:focus-visible{outline:none}.sg-btn{transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.sg-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--e1)}.sg-btn:active:not(:disabled){transform:translateY(0) scale(.97)}.sg-btn-primary{transition:filter var(--t-fast) var(--ease),transform var(--t-fast) var(--ease),box-shadow var(--t-base) var(--ease)}.sg-btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px #22292f52}.sg-btn-primary:active{transform:translateY(0) scale(.98)}.sg-title-input{transition:background var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease);border-radius:6px}.sg-title-input:hover{background:var(--panel)}.sg-title-input:focus{background:#fff;box-shadow:0 0 0 2px var(--accent-soft),0 0 0 3px var(--accent)}.sg-avatar{transition:transform var(--t-base) var(--ease),box-shadow var(--t-base) var(--ease)}.sg-avatar:hover{transform:scale(1.06);box-shadow:var(--e2)}.sg-tool{position:relative;transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.sg-tool:hover:not(:disabled){transform:translateY(-1px)}.sg-tool:active:not(:disabled){transform:scale(.92)}.sg-tool.on:after{content:"";position:absolute;left:50%;bottom:3px;width:14px;height:2px;border-radius:2px;background:var(--accent);transform:translate(-50%) scaleX(0);animation:sgToolOn var(--t-base) var(--ease) forwards}@keyframes sgToolOn{to{transform:translate(-50%) scaleX(1)}}.sg-menubtn{transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.sg-menu,.sg-profile-card,.sg-dd-grid{box-shadow:var(--e3);animation:sgMenuIn var(--t-base) var(--ease) both;transform-origin:top left}@keyframes sgMenuIn{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:none}}.sg-menu button{transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease),padding-left var(--t-fast) var(--ease)}.sg-menu button:hover{padding-left:20px}.sg-tab{transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.sg-tab:hover{transform:translateY(-1px)}.sg-tab-add{transition:transform var(--t-base) var(--ease),background var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.sg-tab-add:hover{transform:rotate(90deg)}.sg-overlay{animation:sgFade var(--t-base) var(--ease) both;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.sg-modal{box-shadow:var(--e3);animation:sgModalIn var(--t-base) var(--ease) both}@keyframes sgModalIn{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}.sg-modal-x{transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease),transform var(--t-base) var(--ease)}.sg-modal-x:hover{transform:rotate(90deg)}.sg-chart{animation:sgPop var(--t-base) var(--ease) both}.sg-chart-grip{opacity:0;transition:opacity var(--t-base) var(--ease)}.sg-chart:hover .sg-chart-grip,.sg-chart.sel .sg-chart-grip{opacity:1}.sg-chart-btn{transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.sg-chart-btn:hover{transform:scale(1.12)}.sg-chart-tip{animation:sgFade var(--t-fast) var(--ease) both}.sg-ai-panel{animation:sgPanelIn var(--t-slow) var(--ease) both;box-shadow:-8px 0 28px -12px #10182829}@keyframes sgPanelIn{0%{opacity:0;transform:translate(26px)}to{opacity:1;transform:none}}.sg-ai-badge{position:relative;background:linear-gradient(135deg,#34a853,#188038,#34a853);background-size:200% 200%;animation:sgAurora 7s ease-in-out infinite}@keyframes sgAurora{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.sg-ai-toggle{position:relative;overflow:hidden}.sg-ai-toggle.on{box-shadow:inset 0 0 0 1px var(--accent)}.sg-ai-tab{transition:background var(--t-base) var(--ease),color var(--t-base) var(--ease),box-shadow var(--t-base) var(--ease)}.sg-ai-chartmode{transition:all var(--t-base) var(--ease)}.sg-ai-chartmode:active{transform:scale(.96)}.sg-ai-skill-btn{transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.sg-ai-skill-btn:hover:not(:disabled){transform:translateY(-1px)}.sg-ai-skill-btn:active:not(:disabled){transform:scale(.95)}.sg-ai-msg{animation:sgMsgIn var(--t-base) var(--ease) both}@keyframes sgMsgIn{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}.sg-ai-working{gap:10px}.sg-ai-dots{position:relative;width:6px;height:6px;border-radius:50%;margin:0 10px;background:var(--accent);animation:sgThink 1.1s var(--ease) .14s infinite}.sg-ai-dots:before,.sg-ai-dots:after{content:"";position:absolute;top:0;width:6px;height:6px;border-radius:50%;background:var(--accent);animation:sgThink 1.1s var(--ease) infinite}.sg-ai-dots:before{left:-10px;animation-delay:0s}.sg-ai-dots:after{left:10px;animation-delay:.28s}@keyframes sgThink{0%,60%,to{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.sg-ai-patch{animation:sgRise var(--t-base) var(--ease) both;box-shadow:0 0 0 3px #1880380f;transition:box-shadow var(--t-base) var(--ease),border-color var(--t-base) var(--ease)}.sg-ai-patch:hover{box-shadow:0 0 0 4px #1880381a}.sg-ai-patch.done{box-shadow:none}.sg-ai-apply{transition:filter var(--t-fast) var(--ease),transform var(--t-fast) var(--ease),box-shadow var(--t-base) var(--ease)}.sg-ai-apply:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--e-accent)}.sg-ai-apply:active:not(:disabled){transform:scale(.98)}.sg-ai-chip{transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.sg-ai-textarea{transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.sg-ai-textarea:focus{box-shadow:0 0 0 3px var(--accent-soft)}.sg-ai-send{transition:transform var(--t-fast) var(--ease),filter var(--t-fast) var(--ease),box-shadow var(--t-base) var(--ease)}.sg-ai-send:hover:not(:disabled){transform:scale(1.06);box-shadow:var(--e-accent)}.sg-ai-send:active:not(:disabled){transform:scale(.94)}.sg-ai-upgrade-orb{animation:sgFloat 5s var(--ease) infinite}.sg-ai-upgrade-cta{transition:transform var(--t-fast) var(--ease),filter var(--t-fast) var(--ease),box-shadow var(--t-base) var(--ease)}.sg-ai-upgrade-cta:hover{transform:translateY(-2px)}.sg-ai-panel{--ai: #e74c3c;--ai-warm: #f97316;--ai-soft: #fef4f2;--ai-line: #f0ded9;--ai-surface: #fdfbfa;background:var(--ai-surface);width:360px;max-width:400px}.sg-ai-head{background:var(--ai-surface);border-bottom:1px solid var(--border);padding:13px 14px}.sg-ai-sub{font-size:11px;color:var(--text-dim);letter-spacing:.01em}.sg-ai-plan{color:#9a3412;background:#ffedd5}.sg-ai-plan.pro{color:#b91c1c;background:var(--ai-soft)}.sg-ai-skills{background:var(--ai-surface);border-bottom:1px solid var(--border)}.sg-ai-tab.active{color:var(--ai)}.sg-ai-chartmode.on{border-color:#f6c9bd;background:var(--ai-soft);color:var(--ai)}.sg-ai-skill-btn{background:#fff}.sg-ai-skill-btn:hover:not(:disabled){background:var(--ai-soft);border-color:#f2c4b8;color:#b3402f}.sg-ai-chat{background:var(--ai-surface);gap:18px;padding:16px 14px 20px}.sg-ai-turn-head{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:650;letter-spacing:.01em;color:var(--text-soft)}.sg-ai-msg{max-width:100%}.sg-ai-msg.assistant{align-self:stretch;background:none;border:none;border-radius:0;padding:0;display:flex;flex-direction:column;gap:7px}.sg-ai-msg.user{align-self:flex-end;max-width:92%;background:#fff;color:var(--text);border:1px solid var(--border);box-shadow:var(--e1);border-radius:14px 14px 4px;padding:9px 12px}.sg-ai-msg-body{font-size:13.5px;line-height:1.62}.sg-ai-msg.assistant .sg-ai-msg-body>*:first-child{margin-top:0!important}.sg-ai-msg.user .sg-ai-msg-body code{background:#0f172a0f}.sg-ai-patch{border-color:var(--ai-line);box-shadow:0 0 0 3px #e74c3c0d}.sg-ai-patch:hover{box-shadow:0 0 0 4px #e74c3c17}.sg-ai-patch-head{color:#b3402f}.sg-ai-patch.done{border-color:var(--accent);background:var(--accent-soft)}.sg-ai-patch.done .sg-ai-patch-head{color:var(--accent)}.sg-ai-apply{background:linear-gradient(135deg,#e74c3c,#f97316)}.sg-ai-apply:hover:not(:disabled){box-shadow:0 4px 12px #e74c3c61}.sg-ai-chip.skill{color:#b3402f;background:var(--ai-soft);border-color:var(--ai-line)}.sg-ai-dots{background:var(--ai)}.sg-ai-dots:before,.sg-ai-dots:after{background:var(--ai)}.sg-ai-working{color:var(--text-soft)}.sg-ai-input-wrap{background:var(--ai-surface);border-top:1px solid var(--border);padding:12px;align-items:stretch;gap:0;position:relative}.sg-ai-textarea{border-radius:14px;border-color:var(--border-strong);padding:11px 46px 11px 13px;font-size:13px;line-height:1.5;box-shadow:var(--e1)}.sg-ai-textarea:focus{border-color:var(--ai);box-shadow:0 0 0 3px var(--ai-soft),var(--e1)}.sg-ai-send{position:absolute;right:20px;bottom:20px;width:30px;height:30px;border-radius:10px;background:linear-gradient(135deg,#e74c3c,#f97316)}.sg-ai-send:hover:not(:disabled){box-shadow:0 4px 12px #e74c3c66}.sg-ai-upgrade{background:linear-gradient(180deg,var(--ai-soft) 0%,var(--ai-surface) 60%)}.sg-ai-upgrade-orb{background:none;box-shadow:0 10px 26px -8px #e74c3c80;border-radius:15px;width:54px;height:54px}.sg-ai-upgrade-kicker{color:var(--ai)}.sg-ai-upgrade-list{background:#fff;border-color:var(--ai-line)}.sg-ai-upgrade-cta{background:linear-gradient(135deg,#e74c3c,#f97316);box-shadow:0 4px 12px #e74c3c52}.sg-ai-toggle.on{background:var(--ai-soft);border-color:#f2c4b8;color:#b3402f;box-shadow:none}.sg-dock-fab,.sg-dock{--ai: #e74c3c;--ai-warm: #f97316;--ai-soft: #fef4f2;--ai-line: #f0ded9;position:fixed;left:50%;transform:translate(-50%);z-index:40}.sg-dock-fab{bottom:22px;display:inline-flex;align-items:center;gap:9px;padding:8px 10px 8px 9px;border:1px solid var(--border);border-radius:100px;background:#ffffffeb;backdrop-filter:saturate(1.6) blur(12px);-webkit-backdrop-filter:saturate(1.6) blur(12px);box-shadow:var(--e2);font-family:inherit;font-size:12.5px;font-weight:600;color:var(--text);cursor:pointer;transition:transform var(--t-base) var(--ease),box-shadow var(--t-base) var(--ease),border-color var(--t-base) var(--ease);animation:sgRise var(--t-slow) var(--ease) both}.sg-dock-fab:hover{transform:translate(-50%) translateY(-2px);box-shadow:var(--e3);border-color:var(--ai-line)}.sg-dock-fab:active{transform:translate(-50%) translateY(0) scale(.98)}.sg-dock-fab kbd{font-family:inherit;font-size:10.5px;font-weight:600;color:var(--text-dim);background:var(--panel);border:1px solid var(--border);border-radius:5px;padding:1px 5px}.sg-dock{bottom:22px;width:min(680px,calc(100% - 48px));display:flex;flex-direction:column;gap:10px;animation:sgDockIn var(--t-base) var(--ease) both}@keyframes sgDockIn{0%{opacity:0;transform:translate(-50%) translateY(10px) scale(.98)}to{opacity:1;transform:translate(-50%)}}.sg-dock-bar{display:flex;align-items:flex-end;gap:8px;padding:8px 8px 8px 10px;background:#fffffff5;backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px);border:1px solid var(--border-strong);border-radius:18px;box-shadow:var(--e3)}.sg-dock-icon{border:none;background:none;padding:0;cursor:pointer;display:flex;align-items:center;height:32px;flex-shrink:0;transition:transform var(--t-base) var(--ease)}.sg-dock-icon:hover{transform:scale(1.1)}.sg-dock-input{flex:1;min-width:0;border:none;outline:none;resize:none;background:none;font-family:inherit;font-size:13.5px;line-height:1.5;color:var(--text);padding:7px 0;max-height:120px}.sg-dock-input::placeholder{color:var(--text-dim)}.sg-dock-send{flex-shrink:0;width:32px;height:32px;border:none;border-radius:11px;background:linear-gradient(135deg,#e74c3c,#f97316);color:#fff;display:flex;align-items:center;justify-content:center;gap:4px;cursor:pointer;transition:transform var(--t-fast) var(--ease),box-shadow var(--t-base) var(--ease),opacity var(--t-fast) var(--ease)}.sg-dock-send:hover:not(:disabled){transform:scale(1.06);box-shadow:0 4px 12px #e74c3c66}.sg-dock-send:active:not(:disabled){transform:scale(.94)}.sg-dock-send:disabled{opacity:.35;cursor:not-allowed}.sg-dock-send.working{width:auto;padding:0 10px;background:var(--text-soft)}.sg-dock-elapsed{font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.sg-dock-x{flex-shrink:0;border:none;background:none;cursor:pointer;color:var(--text-dim);font-size:14px;line-height:1;width:26px;height:26px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease),transform var(--t-base) var(--ease)}.sg-dock-x:hover{background:var(--panel);color:var(--text);transform:rotate(90deg)}.sg-dock-x.bar{height:32px}.sg-dock-hints{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.sg-dock-hints button{border:1px solid var(--border);background:#ffffffeb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:100px;padding:5px 12px;font-family:inherit;font-size:12px;color:var(--text-soft);cursor:pointer;box-shadow:var(--e1);transition:all var(--t-fast) var(--ease)}.sg-dock-hints button:hover{border-color:var(--ai-line);background:var(--ai-soft);color:#b3402f}.sg-dock-sheet{background:#fdfbfa;border:1px solid var(--border-strong);border-radius:16px;box-shadow:var(--e3);padding:12px 14px 13px;max-height:46vh;overflow-y:auto;animation:sgRise var(--t-base) var(--ease) both}.sg-dock-sheet-head{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:650;color:var(--text-soft);margin-bottom:8px}.sg-dock-sheet-head>span{flex:1}.sg-dock-body{font-size:13.5px;line-height:1.62;color:var(--text)}.sg-dock-body>*:first-child{margin-top:0!important}.sg-dock-body>*:last-child{margin-bottom:0!important}.sg-dock-error{margin:0;font-size:13px;color:#b91c1c}.sg-dock-actions{display:flex;align-items:center;gap:7px;margin-top:11px;padding-top:10px;border-top:1px dashed var(--ai-line)}.sg-dock-primary{display:inline-flex;align-items:center;gap:5px;border:none;border-radius:9px;background:linear-gradient(135deg,#e74c3c,#f97316);color:#fff;font-family:inherit;font-size:12.5px;font-weight:650;padding:7px 13px;cursor:pointer;transition:transform var(--t-fast) var(--ease),box-shadow var(--t-base) var(--ease)}.sg-dock-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #e74c3c61}.sg-dock-primary:active{transform:scale(.98)}.sg-dock-ghost{border:1px solid var(--border);background:#fff;border-radius:9px;padding:7px 11px;font-family:inherit;font-size:12.5px;font-weight:550;color:var(--text-soft);cursor:pointer;transition:all var(--t-fast) var(--ease)}.sg-dock-ghost:hover{border-color:var(--ai);color:var(--ai);background:var(--ai-soft)}@media print{.sg-dock,.sg-dock-fab{display:none!important}}.sg-dock-primary:disabled{opacity:1;cursor:default;background:var(--accent)}.sg-dock-note{margin-top:8px;font-size:11.5px;color:var(--text-dim)}.sg-dock-sheet-head>span:first-of-type{flex:1}.sg-dock-clear{border:none;background:none;cursor:pointer;font-family:inherit;font-size:11px;font-weight:600;color:var(--text-dim);padding:3px 7px;border-radius:6px;transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.sg-dock-clear:hover{background:var(--ai-soft);color:var(--ai)}.sg-dock-thread{display:flex;flex-direction:column;gap:14px}.sg-dock-turn.assistant{align-self:stretch}.sg-dock-turn.user{align-self:flex-end;max-width:86%;background:#fff;border:1px solid var(--border);border-radius:13px 13px 4px;padding:7px 11px;box-shadow:var(--e1)}.sg-dock-turn.user p{margin:0;font-size:13px;line-height:1.5}.sg-dock-working{display:flex;align-items:center;gap:10px;font-size:13px;font-style:italic;color:var(--text-soft)}
