@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap");*{box-sizing:border-box;margin:0;padding:0;scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{display:none;width:0;height:0}:root{--bg-void:#f8fafc;--bg-deep:#f1f5f9;--bg-raised:#fff;--bg-float:#fff;--line-faint:#f1f5f9;--line-soft:#e2e8f0;--line-mid:#cbd5e1;--line-bright:#94a3b8;--ink-primary:#0f172a;--ink-secondary:#334155;--ink-muted:#626f81;--ink-ghost:#8c9ba5;--spark:#e8ff57;--spark-dim:#e8ff572e;--spark-glow:#e8ff5773;--spark-hover:#d2e63d;--spark-text:#0c0c0d;--bg:var(--bg-void);--panel:var(--bg-raised);--panel-2:var(--bg-deep);--border:var(--line-soft);--text:var(--ink-primary);--muted:var(--ink-muted);--accent:var(--spark);--danger:var(--ink-secondary);--shell-header-height:5rem}body{background:var(--bg-void);color:var(--ink-primary);font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:has(.shell),html:has(.shell){height:100%;overflow:hidden}a{color:var(--ink-primary);text-decoration:none;font-weight:500;transition:color .2s ease,opacity .2s ease}a:hover{color:var(--ink-secondary)}h1,h2,h3,h4,h5,h6{color:var(--ink-primary);font-weight:600;letter-spacing:-.03em}h1{font-size:1.85rem}h2{font-size:1.35rem}p{line-height:1.6;font-size:.95rem}code,p{color:var(--ink-secondary)}code{border:1px solid var(--line-soft);border-radius:6px;padding:.2rem .4rem;font-size:.85em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}code,main.center{background:var(--bg-deep)}main.center{min-height:100vh;min-height:100dvh;width:100%;display:flex;align-items:center;justify-content:center;padding:2.5rem}main.center .card{max-width:440px;width:100%;box-shadow:0 20px 25px -5px rgba(15,23,42,.05),0 10px 10px -5px rgba(15,23,42,.04)}.login-page{min-height:100vh;min-height:100dvh;justify-content:center;padding:clamp(1rem,4vw,2.5rem);background:var(--bg-deep);box-sizing:border-box}.login-page,.login-stack{width:100%;display:flex;align-items:center}.login-stack{max-width:440px;flex-direction:column;gap:1.5rem}.login-card{width:100%;box-shadow:0 20px 25px -5px rgba(15,23,42,.05),0 10px 10px -5px rgba(15,23,42,.04)}.login-card h1{margin:0 0 .5rem;font-size:clamp(1.5rem,4vw,1.85rem)}.login-card>p{color:var(--ink-muted);font-size:.9rem;line-height:1.45;margin:0 0 .25rem}.login-card .form .btn{width:100%}.login-powered{margin:0;font-size:.8rem;color:var(--ink-muted);text-align:center}.login-powered a{font-weight:700;color:var(--ink-primary)}.card{background:var(--bg-float);border:1px solid var(--line-soft);border-radius:18px;padding:2.75rem;box-shadow:0 4px 20px -2px rgba(15,23,42,.02)}.brand{color:var(--ink-muted);font-size:.75rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;margin-bottom:1.25rem;display:inline-flex;align-items:center;gap:.5rem}.brand:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--spark);border:1px solid var(--line-bright)}.kv{margin-top:1.5rem;border-top:1px solid var(--line-soft);padding-top:1.25rem;font-size:.875rem}.kv div{display:flex;justify-content:space-between;padding:.45rem 0}.kv span:first-child{color:var(--ink-muted)}.kv span:last-child{color:var(--ink-primary);font-weight:500}.shell{display:flex;height:100vh;overflow:hidden}.sidebar{width:250px;background:var(--bg-raised);border-right:1px solid var(--line-soft);padding:0;height:100%;overflow:hidden}.sidebar,.sidebar-brand{flex-shrink:0;display:flex;flex-direction:column}.sidebar-brand{color:var(--ink-primary);font-weight:700;letter-spacing:.05em;text-transform:uppercase;font-size:1.15rem;margin:0;padding:0 1.25rem;height:var(--shell-header-height);min-height:var(--shell-header-height);box-sizing:border-box;justify-content:center;gap:.2rem;border-bottom:1px solid var(--line-soft)}.sidebar-tenant{display:block;color:var(--ink-muted);font-weight:500;text-transform:none;letter-spacing:0;font-size:.825rem}.sidebar nav{display:flex;flex-direction:column;gap:.25rem;flex:1 1;min-height:0;overflow-y:auto;padding:.85rem .85rem 1rem}.sidebar nav a{color:var(--ink-secondary);padding:.55rem .85rem;border-radius:8px;font-size:.9rem;text-decoration:none;font-weight:500;transition:all .2s ease;border:1px solid transparent;line-height:1.35}.sidebar nav a:hover{background:var(--bg-deep);color:var(--ink-primary)}.sidebar nav a.active,.sidebar nav a[aria-current=page]{color:var(--ink-primary);font-weight:700;background:transparent;box-shadow:none;border-color:transparent}.nav-section{color:var(--ink-secondary);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin:1rem .5rem .35rem}.sidebar-footer{flex-shrink:0;margin-top:auto;border-top:1px solid var(--line-soft);padding:1rem 1.1rem 1.15rem;font-size:.9rem;background:var(--bg-raised)}.sidebar-user{margin-bottom:.65rem;gap:.75rem}.avatar,.sidebar-user{display:flex;align-items:center;color:var(--ink-primary)}.avatar{width:36px;height:36px;border-radius:50%;background:var(--spark-dim);border:1px solid var(--spark-glow);justify-content:center;font-weight:600;font-size:.8rem;flex-shrink:0}.user-info{display:flex;flex-direction:column;min-width:0;flex:1 1}.user-name{font-size:.875rem;font-weight:600;color:var(--ink-primary)}.user-email,.user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-email{font-size:.75rem;color:var(--ink-muted)}.sidebar-user .badge{flex-shrink:0;font-size:.65rem;padding:.15rem .4rem}.content{flex:1 1;min-width:0;min-height:0;height:100%;display:flex;flex-direction:column;overflow:hidden}.page{padding:1.75rem 2.75rem 2.75rem}.page,.page-narrow{width:100%}.page-header{position:-webkit-sticky;position:sticky;top:0;background:var(--bg-void);z-index:100;height:var(--shell-header-height);min-height:var(--shell-header-height);box-sizing:border-box;padding-top:0;padding-bottom:0;margin-top:-1.75rem;margin-bottom:2.25rem;border-bottom:1px solid var(--line-soft);display:flex;align-items:center;justify-content:space-between}.page-header h1{font-size:1.35rem;line-height:1.2;margin:0}.section-title{margin:2.5rem 0 1.25rem;color:var(--ink-primary);font-size:1.4rem}.grid{grid-gap:1.75rem}.grid,.grid-2{display:grid;gap:1.75rem;width:100%}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1.75rem;align-items:start}.form-row-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1rem;gap:1rem;align-items:start;width:100%}@media (max-width:900px){.grid-2{grid-template-columns:1fr}}@media (max-width:768px){.form-row-2{grid-template-columns:1fr;gap:1rem}.card{padding:1.25rem;border-radius:14px}.page{padding:1rem}.chat-messages{padding:.85rem}.chat-input-box{padding:.65rem .85rem;gap:.4rem}}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:1.5rem;gap:1.5rem;margin-bottom:1.75rem}.stat-card{background:var(--bg-raised);border:1px solid var(--line-soft);border-radius:16px;padding:1.75rem;display:flex;flex-direction:column;gap:.6rem;align-items:flex-start;box-shadow:0 1px 3px rgba(15,23,42,.01),0 10px 30px -15px rgba(15,23,42,.03);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.stat-card:hover{transform:translateY(-2px);border-color:var(--line-mid);box-shadow:0 10px 30px -10px rgba(15,23,42,.06)}.stat-value{font-size:2.4rem;font-weight:600;color:var(--ink-primary);line-height:1;letter-spacing:-.04em}.stat-label{color:var(--ink-muted);font-size:.85rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.table{width:100%;border-collapse:separate;border-spacing:0;background:var(--bg-raised);border:1px solid var(--line-soft);border-radius:14px;overflow:hidden;font-size:.95rem;box-shadow:0 1px 3px rgba(15,23,42,.01),0 10px 35px -20px rgba(15,23,42,.03)}.table td,.table th{text-align:left;padding:1rem 1.25rem;vertical-align:middle}.table td,.table th{border-bottom:1px solid var(--line-soft)}.table th{color:var(--ink-muted);font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;background:var(--bg-deep)}.table tr:last-child td{border-bottom:none}.table tr:hover td{background:var(--line-faint)}.t-right{text-align:right!important}.empty{color:var(--ink-ghost);text-align:center;padding:4rem!important;font-style:italic}.cell-sub{color:var(--ink-muted);font-size:.825rem;margin-top:.25rem}.cell-title{display:flex;align-items:center;gap:.75rem;font-weight:500}.logo{width:34px;height:34px;border-radius:8px;object-fit:cover;border:1px solid var(--line-soft)}.logo-lg{width:72px;height:72px;border-radius:14px}.badge{display:inline-flex;align-items:center;font-size:.72rem;font-weight:500;letter-spacing:.05em;padding:.25rem .65rem;border-radius:8px;border:1px solid var(--line-soft);color:var(--ink-secondary);background:var(--bg-deep);text-transform:uppercase}.badge.status-active{color:var(--ink-primary);background:var(--spark-dim);border-color:var(--spark-glow)}.badge.status-inactive{color:var(--ink-muted);background:var(--bg-deep);border-color:var(--line-soft)}.badge.status-on_hold{color:var(--ink-secondary);background:var(--bg-deep);border-color:var(--line-mid)}.badge.role-admin{background:var(--spark);color:var(--spark-text);border-color:var(--spark-hover);font-weight:600}.badge.role-manager{background:var(--bg-deep);color:var(--ink-secondary);border-color:var(--line-soft)}.pill{display:inline-flex;align-items:center;font-size:.75rem;font-weight:500;padding:.25rem .75rem;border-radius:99px;color:var(--ink-primary);border:1px solid var(--line-soft);background:var(--bg-raised);white-space:nowrap;gap:.4rem}.pill:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--line-bright)}.form{display:flex;flex-direction:column;gap:1.5rem;width:100%}.card.form,.form{margin-top:0}.form>label{font-size:.9rem;font-weight:600;color:var(--ink-primary)}.form-group,.form>label{display:flex;flex-direction:column;gap:.5rem;width:100%}.form-group>label{display:flex;flex-direction:row;align-items:center;gap:.35rem;font-size:.9rem;font-weight:600;color:var(--ink-primary);line-height:1.2;min-height:24px}.required{font-weight:700;display:inline}input,select,textarea{background:var(--bg-raised);border:1px solid var(--line-soft);border-radius:10px;padding:.75rem 1rem;font-size:.95rem;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease;color:var(--ink-primary);width:100%;box-sizing:border-box}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--line-bright);box-shadow:0 0 0 4px var(--spark-glow)}input[type=color]{padding:.2rem;width:52px;height:40px;cursor:pointer;border-radius:8px}input[type=checkbox]{width:1.15rem;height:1.15rem;cursor:pointer;accent-color:var(--spark-hover)}.help-text{font-size:.8rem;color:var(--ink-muted);font-weight:400}.required{color:#ef4444;margin-left:.2rem}.form-actions{display:flex;align-items:center;gap:1rem;margin-top:1rem}.input-num{width:85px}fieldset{border:1px solid var(--line-soft);border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;gap:.6rem;background:var(--bg-void);width:100%}legend{color:var(--ink-muted);font-size:.825rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:0 .5rem}.check{flex-direction:row!important;align-items:center;gap:.75rem!important;color:var(--ink-primary)!important;cursor:pointer}.hint{color:var(--ink-muted);font-size:.825rem;font-weight:400}.alert{background:var(--bg-deep);border:1px solid var(--line-mid);color:var(--ink-primary);border-radius:10px;padding:.85rem 1.25rem;font-size:.925rem;margin-bottom:1.5rem;font-weight:500;display:flex;align-items:center;gap:.5rem}.alert:before{content:"⚠";font-size:1.15rem;color:var(--ink-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--bg-raised);border:1px solid var(--line-soft);border-radius:10px;padding:.6rem 1.15rem;font-size:.875rem;font-weight:600;cursor:pointer;font-family:inherit;transition:all .2s ease;gap:.5rem;box-shadow:0 1px 3px rgba(15,23,42,.04)}.btn,.btn:hover{color:var(--ink-primary)}.btn:hover{background:var(--bg-deep);border-color:var(--line-mid);transform:translateY(-1px);box-shadow:0 4px 12px -2px rgba(15,23,42,.08);text-decoration:none}.btn-primary{background:var(--spark);border-color:var(--spark);color:var(--spark-text);font-weight:600;box-shadow:0 2px 8px rgba(232,255,87,.3)}.btn-primary:hover{background:var(--spark-hover);border-color:var(--spark-hover);color:var(--spark-text);transform:translateY(-1px);box-shadow:0 4px 14px rgba(232,255,87,.45)}.btn-ghost{background:transparent;box-shadow:none}.btn-ghost:hover{background:var(--bg-deep)}.btn-sm{padding:.45rem .9rem;font-size:.825rem;border-radius:8px}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.link-danger{background:none;border:none;color:var(--ink-secondary);cursor:pointer;font-size:inherit;font-family:inherit;padding:0;text-decoration:none}.link-danger:hover{color:var(--ink-primary);text-decoration:underline}.toolbar{display:flex;gap:.85rem;margin-bottom:1.75rem;flex-wrap:wrap;align-items:center}.toolbar input[name=q]{min-width:260px}.row-form{display:flex;gap:.85rem;align-items:center;flex-wrap:wrap}.inline{display:inline}.actions{white-space:nowrap}.actions>*{margin-left:.85rem}.panel{background:var(--bg-raised);border:1px solid var(--line-soft);border-radius:16px;padding:1.75rem;margin-bottom:1.5rem;box-shadow:0 1px 3px rgba(15,23,42,.01),0 10px 30px -15px rgba(15,23,42,.03)}.pagination{display:flex;gap:.4rem;margin-top:1.75rem}.page-link{padding:.45rem .95rem;border:1px solid var(--line-soft);border-radius:8px;color:var(--ink-secondary);font-weight:500;text-decoration:none;background:var(--bg-raised);transition:all .2s ease}.page-link:hover{background:var(--bg-deep);color:var(--ink-primary);text-decoration:none}.page-link.current{background:var(--spark);color:var(--spark-text);border-color:var(--spark-hover);font-weight:600}.tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--line-soft);margin-bottom:1.5rem}.tab{padding:.75rem 1.35rem;color:var(--ink-muted);border:1px solid transparent;border-bottom:none;border-radius:10px 10px 0 0;font-weight:500;font-size:.95rem;margin-bottom:-1px;transition:all .2s ease}.tab:hover{text-decoration:none}.tab.active,.tab:hover{color:var(--ink-primary)}.tab.active{background:var(--bg-raised);border-color:var(--line-soft);border-bottom-color:var(--bg-raised);font-weight:600}.md-field{margin-bottom:.75rem}.md-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.25rem;gap:1.25rem;align-items:stretch}.md-grid textarea{min-height:280px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.88rem;background:var(--bg-raised)}.md-preview{background:var(--bg-deep);border:1px solid var(--line-soft);border-radius:10px;padding:1.25rem;overflow:auto;max-height:480px}.md-body{color:var(--ink-primary);font-size:.95rem;line-height:1.6}.md-body h1{font-size:1.35rem;margin:.8rem 0 .4rem}.md-body h2{font-size:1.2rem;margin:.8rem 0 .4rem}.md-body h3{font-size:1.1rem;margin:.6rem 0 .3rem}.md-body p{margin:.5rem 0;color:var(--ink-secondary)}.md-body ol,.md-body ul{margin:.5rem 0 .5rem 1.5rem}.md-body pre{background:var(--bg-raised);border:1px solid var(--line-soft);border-radius:10px;padding:.9rem 1.1rem;overflow-x:auto;margin:.75rem 0}.md-body pre code{background:none;border:none;padding:0;color:var(--ink-primary)}.comment{border-bottom:1px solid var(--line-soft);padding:1rem 0}.comment:last-of-type{border-bottom:none}.comment-head{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem;font-size:.875rem}.comment-author{font-weight:600;color:var(--ink-primary)}.comment-hermes{color:var(--ink-secondary);font-weight:600;display:inline-flex;align-items:center;gap:.25rem}.comment-hermes:before{content:"⚡";color:var(--spark-hover)}.chat{display:flex;flex-direction:column;height:calc(100vh - 200px);min-height:520px;background:var(--bg-raised);border:1px solid var(--line-soft);border-radius:18px;overflow:hidden;box-shadow:0 4px 15px -3px rgba(15,23,42,.03)}.chat-messages{flex:1 1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:.9rem;background:var(--bg-void)}.chat-msg{max-width:75%;border-radius:14px;padding:.85rem 1.15rem;font-size:.95rem;line-height:1.55}.chat-user{align-self:flex-end;border:1px solid var(--line-mid)}.chat-hermes,.chat-user{background:var(--bg-raised);color:var(--ink-primary);box-shadow:0 1px 2px rgba(15,23,42,.02)}.chat-hermes{align-self:flex-start;border:1px solid var(--line-soft);border-left:4px solid var(--spark)}.chat-system{align-self:center;max-width:90%;background:var(--bg-deep);border:1px dashed var(--line-mid);color:var(--ink-muted);font-size:.825rem;border-radius:10px}.chat-text{white-space:pre-wrap;word-break:break-word;font-family:inherit;margin:0}.chat-system .chat-text{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.chat-input-box{display:flex;flex-direction:column;padding:.85rem 1.15rem;border-top:1px solid var(--line-soft);background:var(--bg-raised);gap:.5rem}.chat-input-box textarea{width:100%;border:none!important;background:transparent!important;outline:none!important;resize:vertical;box-shadow:none!important;font-family:inherit;font-size:.95rem;color:var(--ink-primary);padding:0;min-height:72px;max-height:350px}.chat-input-box textarea:focus{outline:none!important;box-shadow:none!important;border-color:transparent!important}.chat-input-toolbar{padding-top:.5rem;border-top:1px solid var(--line-soft)}.approval-bar,.chat-input-toolbar{display:flex;align-items:center;justify-content:space-between}.approval-bar{border-top:2px solid var(--spark);background:var(--spark-dim);padding:1.1rem 1.5rem;gap:1.5rem}.approval-bar pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.88rem;margin:.4rem 0 0;white-space:pre-wrap;word-break:break-all;color:var(--ink-primary)}.approval-actions{display:flex;gap:.6rem;flex-shrink:0}.run-bar{border-top:1px solid var(--line-soft);padding:.85rem 1.5rem;display:flex;align-items:center;justify-content:space-between;background:var(--bg-deep)}.audit-snippet{max-width:440px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;color:var(--ink-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.status-page{margin:0 auto;max-width:1000px;padding:4rem 2rem}.status-header{display:flex;gap:1.5rem;align-items:center;margin-bottom:2.5rem;border-bottom:1px solid var(--line-soft);padding-bottom:1.75rem}.status-project-head{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.page-wrapper{display:flex;flex-direction:column;flex:1 1;min-height:0;overflow-y:auto;overflow-x:hidden}.page{flex:1 1}.footer{flex-shrink:0;border-top:1px solid var(--line-soft);padding:1.5rem 2.75rem;display:flex;justify-content:space-between;align-items:center;font-size:.8rem;background:var(--bg-void);z-index:50}.footer,.footer a{color:var(--ink-muted)}.footer a{text-decoration:none;font-weight:500}.footer a:hover{color:var(--ink-primary)}.btn-logout{display:inline-flex;align-items:center;justify-content:center;width:100%;background:transparent;border:1px solid var(--line-soft);color:var(--ink-secondary);border-radius:10px;padding:.65rem 1.25rem;font-size:.925rem;font-weight:500;cursor:pointer;font-family:inherit;transition:all .2s ease;gap:.5rem;box-shadow:0 1px 2px rgba(15,23,42,.02);margin-top:.5rem}.btn-logout:hover{background:var(--bg-deep);border-color:var(--line-mid);color:var(--ink-primary)}.mobile-topbar,.sidebar-backdrop{display:none}body.nav-lock{overflow:hidden}.mention-menu{display:flex;flex-direction:column;gap:2px;max-height:180px;overflow-y:auto;border-top:1px solid var(--line-soft);background:var(--bg-raised);padding:6px}.mention-item{text-align:left;background:transparent;border:1px solid transparent;border-radius:8px;padding:6px 10px;font:inherit;font-size:.85rem;color:var(--ink-secondary);cursor:pointer}.mention-item:hover{background:var(--spark-dim);border-color:var(--line-soft)}@media (max-width:1024px){.page{padding:1.5rem 1.5rem 2rem}.page-header{margin-top:-1.5rem;margin-bottom:1.5rem;gap:.75rem;flex-wrap:wrap;height:auto;min-height:var(--shell-header-height);padding:.85rem 0}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem}.md-grid{grid-template-columns:1fr}.footer{flex-direction:column;align-items:flex-start;gap:.5rem;padding:1.15rem 1.5rem}.status-page{padding:2.5rem 1.25rem}}@media (max-width:860px){.mobile-topbar{display:flex;align-items:center;gap:.85rem;flex-shrink:0;height:3.5rem;padding:0 .85rem;background:var(--bg-raised);border-bottom:1px solid var(--line-soft);z-index:40}.mobile-brand{display:flex;flex-direction:column;gap:.05rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;font-size:.95rem;color:var(--ink-primary);line-height:1.15;min-width:0}.mobile-brand span{font-size:.7rem;font-weight:500;letter-spacing:0;text-transform:none;color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-toggle{width:2.5rem;height:2.5rem;flex-shrink:0;display:inline-flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;background:var(--bg-deep);border:1px solid var(--line-soft);border-radius:10px;cursor:pointer;padding:0}.nav-toggle span{display:block;width:1.1rem;height:2px;border-radius:2px;background:var(--ink-primary);transition:transform .2s ease,opacity .2s ease}.shell.nav-open .nav-toggle span:first-child{transform:translateY(7px) rotate(45deg)}.shell.nav-open .nav-toggle span:nth-child(2){opacity:0}.shell.nav-open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.shell{flex-direction:column;height:100dvh}.sidebar-backdrop{display:block;position:fixed;inset:0;z-index:90;border:0;padding:0;margin:0;background:rgba(15,23,42,.35);opacity:0;pointer-events:none;transition:opacity .2s ease;cursor:pointer}.shell.nav-open .sidebar-backdrop{opacity:1;pointer-events:auto}.sidebar{position:fixed;top:0;left:0;bottom:0;z-index:100;width:min(280px,86vw);height:100dvh;transform:translateX(-105%);transition:transform .22s ease;box-shadow:none}.shell.nav-open .sidebar{transform:translateX(0);box-shadow:8px 0 30px rgba(15,23,42,.12)}.sidebar-brand{height:3.5rem;min-height:3.5rem}.content{height:auto;flex:1 1;min-height:0}.page{padding:1.15rem 1rem 1.75rem}.page-header{margin-top:-1.15rem;margin-bottom:1.25rem;min-height:0;height:auto;padding:.75rem 0;position:static}.page-header h1{font-size:1.2rem}.page-header .btn{width:100%}.page-header:has(>:nth-child(2)){flex-direction:column;align-items:stretch}.toolbar{flex-direction:column;align-items:stretch}.toolbar .btn,.toolbar input,.toolbar input[name=q],.toolbar select{width:100%;min-width:0}.row-form{flex-direction:column;align-items:stretch}.row-form>*{width:100%}.actions{white-space:normal;display:flex;flex-wrap:wrap;gap:.5rem}.actions>*{margin-left:0}.table{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.stat-value{font-size:1.85rem}.card{padding:1.5rem;border-radius:14px}.login-card{padding:1.5rem 1.25rem}main.center{padding:1.25rem}.tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.tab{flex-shrink:0;padding:.65rem 1rem}.approval-actions{flex-wrap:wrap}.run-bar{gap:.65rem}.run-bar,.status-header{flex-direction:column;align-items:flex-start}.status-header{gap:1rem}.footer{padding:1rem}.chat{height:calc(100dvh - 10.5rem);min-height:320px;border-radius:12px}.chat-msg{max-width:92%}.chat-messages{padding:1rem}}@media (max-width:480px){.stat-grid{grid-template-columns:1fr 1fr;gap:.75rem}.stat-card{padding:1.1rem;border-radius:12px}.panel{padding:1.15rem}.btn,.btn-ghost,.btn-primary{padding:.6rem 1rem;font-size:.875rem}}