:root{--teal:#6ac5cc;--teal-dark:#3d9da5;--teal-700:#2e7279;--teal-light:#eaf6f7;--white:#fff;--off:#f4f8f9;--border:#cce8eb;--ink:#1a3a3d;--muted:#476f74;--dim:#b0d8dc;--warn:#8a4a1c;--warn-border:#f0c7a8;--warn-bg:#fdf3ec;--r-sm:6px;--r-md:9px;--r-lg:12px;--r-xl:18px;--shadow-card:0 2px 8px #00000012;--shadow-glow:0 3px 14px #6ac5cc70;--shadow-panel:-6px 0 40px #6ac5cc1f;--font:Lato,-apple-system,BlinkMacSystemFont,sans-serif}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{font-family:var(--font);background:var(--off);color:var(--ink);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.55}h1,h2,h3,p{margin:0}a{color:var(--teal-700)}a:hover{color:var(--ink)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--muted)}:focus-visible{outline:2px solid var(--teal-dark);outline-offset:2px}.btn{border:1px solid var(--border);background:var(--white);height:44px;color:var(--ink);white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover{background:var(--teal-light);color:var(--ink)}.btn:disabled{opacity:.55;cursor:default}.btn-primary{background:var(--teal-700);border-color:var(--teal-700);color:#fff;font-weight:900}.btn-primary:hover{background:var(--ink);border-color:var(--ink);color:#fff}.btn-outline{color:var(--teal-700);font-weight:900}.btn-dark{background:var(--ink);border-color:var(--ink);color:#fff}.btn-dark:hover{background:var(--ink);color:#fff}.btn-danger{border-color:var(--warn-border);color:var(--warn)}.btn-danger:hover{background:var(--warn-bg);color:var(--warn)}.btn-sm{height:36px;padding:0 14px;font-size:13px}.btn-dashed{border:1.5px dashed var(--teal);color:var(--teal-700);height:40px;margin-top:12px}.chip{border:1px solid var(--border);background:var(--white);color:var(--muted);text-align:left;border-radius:8px;padding:7px 12px;font-size:12px;text-decoration:none;display:inline-block}.chip:hover{background:var(--teal-light);color:var(--teal-700)}.badge{background:var(--teal-light);color:var(--teal-700);border:1px solid var(--border);border-radius:var(--r-sm);white-space:nowrap;padding:2px 8px;font-size:11px;font-weight:700}.tag{background:var(--teal-light);color:var(--teal-700);border-radius:var(--r-sm);letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;font-size:10px;font-weight:900;display:inline-block}.tag-draft{background:var(--warn-bg);color:var(--warn)}.overline{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:900}.seg{flex-wrap:wrap;gap:8px;display:flex}.seg .btn[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.hdr{background:var(--white);border-bottom:2px solid var(--teal);z-index:30;flex-wrap:wrap;align-items:center;gap:16px;min-height:64px;padding:8px 24px;display:flex;position:sticky;top:0}.brand{color:var(--ink);align-items:center;gap:11px;text-decoration:none;display:flex}.brand:hover{color:var(--ink)}.logo{background:linear-gradient(135deg,var(--teal),var(--teal-dark));color:var(--ink);letter-spacing:.07em;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:900}.logo-img{flex:none;width:auto;max-width:none;height:28px;display:block}.logo-img-lg{height:44px;margin:0 auto}.brand-name{letter-spacing:.07em;text-transform:uppercase;font-size:14px;font-weight:900;display:block}.brand-sub{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:700;display:block}.hdr-search{background:var(--off);border:1.5px solid var(--border);border-radius:var(--r-lg);max-width:520px;height:40px;color:var(--muted);flex:280px;align-items:center;gap:10px;margin:0 auto;padding:0 14px;display:flex}.hdr-search input{min-width:0;color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-size:14px}.crumbs{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.crumbs a{font-weight:700;text-decoration:none}.crumbs b{color:var(--ink)}.hdr-right{align-items:center;gap:14px;margin-left:auto;display:flex}.online{color:var(--teal-700);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:6px;font-size:10px;font-weight:900;display:flex}.online i{background:var(--teal);width:8px;height:8px;box-shadow:0 0 8px var(--teal);border-radius:50%}.user{flex:none;align-items:center;gap:8px;display:flex}.user .avatar{width:32px;height:32px;font-size:11px}.user button{color:var(--teal-700);background:0 0;border:none;padding:6px;font-size:12px;font-weight:700}.body{align-items:stretch;min-height:calc(100dvh - 64px);display:flex}.menu-wrap,.menu-panel{display:contents}.menu-toggle,.menu-backdrop{display:none}.side{background:var(--white);border-right:1px solid var(--border);flex-direction:column;flex:0 0 248px;gap:4px;padding:24px 14px;display:flex}.side a.nav{border-radius:var(--r-md);color:var(--ink);align-items:center;gap:10px;padding:11px 12px;font-size:13px;font-weight:700;text-decoration:none;display:flex}.side a.nav:hover{background:var(--off)}.side a.nav[aria-current=page]{background:var(--teal-light);color:var(--teal-700)}.side .overline{padding:22px 10px 8px}.side .overline:first-child{padding-top:0}.side details.side-admin{border-top:1px solid var(--border);flex-direction:column;gap:4px;margin-top:14px;padding-top:10px;display:flex}.side details.side-admin>summary{cursor:pointer;border-radius:var(--r-md);background:var(--teal-light);color:var(--teal-700);letter-spacing:.02em;justify-content:space-between;align-items:center;padding:11px 12px;font-size:14px;font-weight:900;list-style:none;display:flex}.side details.side-admin>summary::-webkit-details-marker{display:none}.side details.side-admin>summary:after{content:"▸";font-size:12px;transition:transform .15s}.side details.side-admin[open]>summary:after{transform:rotate(90deg)}.side details.side-admin>summary:hover{background:var(--teal-dark);color:#fff}.side details.side-admin>a.nav{padding-left:24px;font-weight:700}.side .nav-ico{flex:none;width:17px;height:17px}.side details.side-admin>summary{justify-content:flex-start;gap:10px}.side a.nav.tool{background:var(--teal-light);color:var(--teal-700);font-weight:900}.side a.nav.tool:hover{background:var(--teal-dark);color:#fff}.side a.sub{border-radius:var(--r-md);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;padding:9px 12px;font-size:13px;text-decoration:none;overflow:hidden}.side a.sub:hover,.side a.sub[aria-current=page]{background:var(--off)}.main{flex-direction:column;flex:1;gap:22px;min-width:0;padding:36px 40px 56px;display:flex}.main.wide{max-width:none}.narrow{max-width:1180px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.page-head h1{font-size:32px;font-weight:900;line-height:1.15}.page-head p{color:var(--muted);margin-top:4px;font-size:14px}.page-head .actions{flex-wrap:wrap;gap:10px;display:flex}@media (max-width:860px){.hdr{padding:8px 64px 8px 14px;position:static}.hdr-search{flex-basis:100%;order:3;max-width:none}.online,.user span.email{display:none}.body{flex-direction:column}.menu-toggle{z-index:70;border:1.5px solid var(--border);background:var(--white);width:40px;height:40px;color:var(--ink);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;display:flex;position:fixed;top:12px;right:12px}.menu-backdrop{z-index:55;opacity:0;pointer-events:none;background:#1a3a3d59;transition:opacity .25s;display:block;position:fixed;inset:0}.menu-wrap.open .menu-backdrop{opacity:1;pointer-events:auto}.menu-panel{z-index:60;background:var(--white);width:min(300px,85vw);transition:transform .25s;display:block;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;transform:translate(100%);box-shadow:-8px 0 30px #1a3a3d2e}.menu-wrap.open .menu-panel{transform:none}.side{background:var(--white);border-right:none;flex-direction:column;flex:none;gap:2px;min-height:100%;padding:72px 14px 24px;overflow:visible}.side a.nav{white-space:nowrap;padding:11px 12px}.side .extra,.side .overline,.side a.sub,.side .btn-dashed{display:none}.main{padding:24px 16px 48px}.page-head h1{font-size:26px}.hero{gap:16px;padding:24px 18px}.hero h1{font-size:26px}.hero-head{flex-direction:column;align-items:flex-start;gap:10px}.hero-head .tile{display:none}.askbox{padding:8px 8px 8px 14px}.askbox input{text-align:left;padding:0 4px}.askbox .btn{white-space:nowrap;flex:none}.logo-img{height:22px}.brand{gap:8px}.brand-name,.brand-sub{display:none}.hdr-right{gap:10px}}.search{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r-lg);height:44px;color:var(--muted);flex:280px;align-items:center;gap:10px;max-width:420px;padding:0 14px;display:flex}.search input{min-width:0;color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-size:14px}.field{flex-direction:column;gap:6px;font-size:12px;font-weight:700;display:flex}.field small{color:var(--muted);font-weight:400}.input,.select,.textarea{border:1.5px solid var(--border);height:44px;color:var(--ink);background:var(--white);border-radius:10px;width:100%;padding:0 12px;font-size:14px;font-weight:400}.input:focus,.select:focus,.textarea:focus{border-color:var(--teal);outline:none}.textarea{resize:vertical;height:auto;min-height:380px;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.6}textarea.input{resize:vertical;height:auto;padding:10px 12px}.grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.grid3{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}@media (max-width:700px){.grid2,.grid3{grid-template-columns:1fr}}.note{background:var(--off);color:var(--muted);border-radius:10px;padding:12px 14px;font-size:12px}.alert{border:1px solid var(--border);background:var(--teal-light);border-radius:10px;padding:12px 14px;font-size:13px}.alert.err{border-color:var(--warn-border);background:var(--warn-bg);color:var(--warn)}.check{align-items:center;gap:8px;min-height:44px;font-size:13px;display:flex}.card{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg)}.pad{padding:22px 24px}.avatar{background:var(--teal-light);border:2px solid var(--teal-dark);width:40px;height:40px;color:var(--teal-700);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:900;display:flex}.tile{background:var(--teal);width:36px;height:36px;color:var(--ink);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;font-weight:900;display:flex;box-shadow:0 2px 8px #6ac5cc70}.hero{background:var(--white);border:1px solid var(--border);border-radius:var(--r-xl);flex-direction:column;gap:18px;max-width:1080px;padding:36px;display:flex;box-shadow:0 2px 8px #0000000d}.hero h1{font-size:32px;font-weight:900;line-height:1.15}.hero p{color:var(--muted);margin-top:4px;font-size:15px}.hero .tile{width:44px;height:44px;box-shadow:var(--shadow-glow);border-radius:12px;font-size:12px}.hero-head{align-items:center;gap:14px;display:flex}.askbox{background:var(--off);border:1.5px solid var(--teal);border-radius:14px;align-items:center;gap:10px;padding:10px 10px 10px 18px;display:flex}.askbox input{min-width:0;color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-size:15px}.section{flex-direction:column;gap:16px;max-width:1080px;display:flex}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.section-head h2{font-size:20px;font-weight:900}.section-head a{font-size:13px;font-weight:700}.sop-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;display:grid}.sop-tile{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);color:var(--ink);flex-direction:column;gap:10px;padding:18px;text-decoration:none;display:flex}.sop-tile:hover{border-color:var(--teal);color:var(--ink);box-shadow:0 4px 18px #6ac5cc2e}.sop-tile .ico{background:var(--teal-light);width:36px;height:36px;color:var(--teal-700);border-radius:10px;justify-content:center;align-items:center;display:flex}.sop-tile b{font-size:15px;font-weight:900}.sop-tile span.d{color:var(--muted);font-size:13px;line-height:1.5}.two{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px;max-width:1080px;display:grid}.listcard{flex-direction:column;gap:12px;padding:22px;display:flex}.contact-row{border-bottom:1px solid var(--teal-light);align-items:center;gap:12px;padding:10px 0;display:flex}.contact-row:last-child{border-bottom:none}.contact-row .avatar{width:34px;height:34px;font-size:12px}.q-row{border-bottom:1px solid var(--teal-light);color:var(--ink);padding:10px 0;font-size:14px;font-weight:700;text-decoration:none}.q-row:last-child{border-bottom:none}.chat-main{flex-direction:column;flex:1;min-width:0;display:flex}.thread{flex-direction:column;flex:1;gap:24px;width:100%;max-width:760px;margin:0 auto;padding:40px 32px 24px;display:flex}.msg-user{justify-content:flex-end;display:flex}.bubble-user{background:var(--teal);max-width:80%;color:var(--ink);box-shadow:var(--shadow-glow);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:18px 4px 18px 18px;padding:14px 18px;font-size:14px;line-height:1.75}.msg-ai{align-items:flex-start;gap:14px;display:flex}.msg-ai .stack{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.bubble-ai{background:var(--white);border:1px solid var(--border);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:4px 18px 18px;align-self:flex-start;padding:14px 18px;font-size:14px;line-height:1.75;box-shadow:0 2px 8px #0000000f}.bubble-ai strong{color:var(--teal-700)}.bubble-ai.typing{color:var(--muted);font-style:italic}.source{background:var(--teal-light);border:1px solid var(--border);border-radius:var(--r-sm);align-self:flex-start;padding:4px 10px;font-size:12px;font-weight:700;text-decoration:none}.client-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);padding:16px;box-shadow:0 2px 10px #6ac5cc1a}.client-card .name{margin:2px 0 12px;font-size:16px;font-weight:900}.roles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}@media (max-width:560px){.roles{grid-template-columns:1fr}}.role{border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:1px;padding:10px 12px;display:flex}.role .lbl{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:900}.role .who{font-size:13px;font-weight:700}.role .how{color:var(--muted);font-size:12px}.chips{flex-wrap:wrap;gap:6px;display:flex}.composer{border-top:1px solid var(--border);background:#ffffffeb;padding:12px 32px 20px;position:sticky;bottom:0}.composer-in{max-width:760px;margin:0 auto}.composer-row{background:var(--off);border:1.5px solid var(--border);border-radius:14px;align-items:flex-end;gap:9px;padding:8px 8px 8px 16px;display:flex}.composer-row:focus-within{border-color:var(--teal)}.composer-row textarea{min-width:0;color:var(--ink);resize:none;background:0 0;border:none;outline:none;flex:1;max-height:140px;padding:10px 0;font-size:14px;line-height:1.5}.send{background:linear-gradient(135deg,var(--teal),var(--teal-dark));width:44px;height:44px;color:var(--ink);border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.send:disabled{background:var(--dim);cursor:default}.hint{text-align:center;color:var(--muted);margin-top:6px;font-size:11px}@media (max-width:860px){.thread{padding:24px 16px}.composer{padding:10px 12px 14px}}.compact .thread{background:linear-gradient(180deg,#fff,var(--off));gap:20px;max-width:none;padding:24px 20px}.compact .tile{border-radius:9px;width:32px;height:32px}.compact .bubble-ai,.compact .bubble-user{padding:12px 16px;line-height:1.7}.compact .composer{background:var(--white);padding:12px 16px 16px;position:static}.people-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.person{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);align-items:flex-start;gap:12px;padding:16px;display:flex}.person .info{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.person .nm{font-size:14px;font-weight:900}.person .tt{color:var(--muted);font-size:12px}.person .meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.person .cell{font-size:12px;font-weight:700;text-decoration:none}.person .bd{color:var(--muted);font-size:11px}.toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.ac{flex:none;width:100%;max-width:420px;position:relative}.ac .search{flex:none;max-width:none}.ac-list{z-index:20;background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);max-height:320px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto;box-shadow:0 8px 24px #6ac5cc38}.ac-list li{cursor:pointer;border-radius:8px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.ac-list li.on{background:var(--teal-light)}.ac-list .name{color:var(--ink);font-size:14px;font-weight:700}.ac-list .sub{color:var(--muted);font-size:12px}@media (max-width:700px){.table{flex:none;width:100%;overflow-x:visible}.table .trow{grid-template-columns:1fr 1fr;gap:6px 12px;min-width:0;padding:12px 14px}.table .trow.head{display:none}.table .trow .c1{grid-column:1/-1;font-size:14px}.table .trow span:not(.c1):before{content:attr(data-label);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:900;display:block}.detail{width:100%;max-width:none;position:static}}.split{flex-wrap:wrap;align-items:flex-start;gap:18px;display:flex}.table{flex:999 520px;min-width:0;overflow-x:auto}.trow{text-align:left;border:none;border-bottom:1px solid var(--teal-light);background:var(--white);width:100%;min-width:640px;color:var(--ink);grid-template-columns:2.2fr 1fr 1fr 1fr 1fr;gap:8px;padding:12px 16px;font-size:13px;display:grid}button.trow:hover{background:var(--off)}.trow.head{background:var(--teal-light);border-bottom-color:var(--border);letter-spacing:.12em;text-transform:uppercase;color:var(--teal-700);font-size:10px;font-weight:900}.trow.sel{background:var(--teal-light);box-shadow:inset 3px 0 0 var(--teal-dark)}.trow .c1{font-weight:700}.trow.sel .c1{font-weight:900}.detail{flex-direction:column;flex:300px;gap:12px;max-width:380px;padding:20px;display:flex;position:sticky;top:84px;box-shadow:0 2px 10px #6ac5cc1f}.detail .ttl{font-size:20px;font-weight:900;line-height:1.2}.detail .role .who{font-size:14px}.detail .role .how{color:var(--teal-700);font-weight:700}.btn-soft{background:var(--teal-light);color:var(--teal-700);font-size:13px;font-weight:900}.sop-list{flex-direction:column;display:flex}.sop-row{border-bottom:1px solid var(--teal-light);color:var(--ink);align-items:center;gap:16px;padding:18px 20px;text-decoration:none;display:flex}.sop-row:last-child{border-bottom:none}.sop-row:hover{background:var(--off);color:var(--ink)}.sop-row .tag{text-align:center;flex-shrink:0;width:132px}.sop-row .t{flex:1;min-width:0}.sop-row .t b{font-size:15px;font-weight:900;display:block}.sop-row .t span{color:var(--muted);font-size:13px;display:block}.sop-row .n{color:var(--muted);white-space:nowrap;font-size:12px}@media (max-width:640px){.sop-row{flex-wrap:wrap;gap:8px}.sop-row .tag{width:auto}}.article-wrap{flex-wrap:wrap;align-items:stretch;min-height:calc(100dvh - 64px);display:flex}.article-main{flex:999 560px;min-width:0;padding:40px 48px 56px}.article{flex-direction:column;gap:24px;max-width:760px;display:flex}.article h1{font-size:40px;font-weight:900;line-height:1.1}.article .lede{color:var(--muted);font-size:16px;line-height:1.6}.article .meta{color:var(--muted);flex-wrap:wrap;gap:16px;font-size:12px;display:flex}.sop-sec{flex-direction:column;gap:14px;padding:24px 26px;display:flex}.sop-sec h2{font-size:18px;font-weight:900}.sop-sec p{font-size:15px;line-height:1.6}.sop-sec ol{counter-reset:step;flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.sop-sec ol>li{counter-increment:step;align-items:flex-start;gap:14px;font-size:15px;line-height:1.6;display:flex}.sop-sec ol>li:before{content:counter(step);background:var(--teal);width:28px;height:28px;color:var(--ink);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:-2px;font-size:13px;font-weight:900;display:flex}.sop-sec ul{flex-direction:column;gap:8px;margin:0;padding-left:20px;font-size:15px;line-height:1.6;display:flex}.sop-sec strong{color:var(--ink)}.sop-sec code{background:var(--teal-light);border-radius:4px;padding:1px 5px;font-size:13px}.callout{background:var(--teal-light);color:var(--teal-700);border-radius:10px;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.callout>div{color:var(--ink);font-size:14px;line-height:1.6}.callout p{font-size:14px}.helpful{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;display:flex}.ask-aside{background:var(--white);border-left:1px solid var(--border);max-width:440px;box-shadow:var(--shadow-panel);flex-direction:column;flex:360px;height:calc(100dvh - 64px);display:flex;position:sticky;top:64px}.ask-aside .aside-head{border-bottom:1px solid var(--border);background:var(--teal-light);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.ask-aside .aside-head .overline{color:var(--teal-700)}.ask-aside .compact{flex-direction:column;flex:1;min-height:0;display:flex}.ask-aside .compact .thread{overflow-y:auto}@media (max-width:960px){.ask-aside{border-left:none;border-top:1px solid var(--border);max-width:none;height:640px;position:static}.article-main{padding:28px 16px 40px}.article h1{font-size:30px}}.editor-split{flex-wrap:wrap;align-items:flex-start;gap:18px;display:flex}.ed-list{flex-direction:column;flex:300px;max-width:380px;display:flex;overflow:hidden}.ed-list .top{border-bottom:1px solid var(--border);gap:8px;padding:12px;display:flex}.ed-list .top .search{background:var(--off);border-radius:10px;max-width:none}.ed-list .rows{max-height:900px;overflow-y:auto}.ed-row{text-align:left;border:none;border-bottom:1px solid var(--teal-light);background:var(--white);width:100%;color:var(--ink);flex-direction:column;gap:2px;padding:11px 16px;text-decoration:none;display:flex}.ed-row:hover{background:var(--off);color:var(--ink)}.ed-row b{font-size:14px;font-weight:700}.ed-row span{color:var(--muted);font-size:12px}.ed-row.sel{background:var(--teal-light);box-shadow:inset 3px 0 0 var(--teal-dark)}.ed-row.sel b{font-weight:900}.ed-row.off b{color:var(--muted);text-decoration:line-through}.ed-form{flex-direction:column;flex:999 420px;gap:18px;min-width:0;padding:24px;display:flex;box-shadow:0 2px 10px #6ac5cc1f}.ed-head{align-items:center;gap:14px;display:flex}.ed-head .avatar{width:52px;height:52px;font-size:16px}.ed-head .h{font-size:22px;font-weight:900}.ed-foot{border-top:1px solid var(--teal-light);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:16px;display:flex}.ed-foot .r{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.step{align-items:center;gap:12px;display:flex}.step .num{background:var(--teal);width:28px;height:28px;color:var(--ink);border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:900;display:flex}.step h2{font-size:17px;font-weight:900}.cols{border:1px solid var(--border);border-radius:10px;overflow-x:auto}.cols .r{border-bottom:1px solid var(--teal-light);grid-template-columns:150px 80px 1fr 170px;align-items:center;gap:12px;min-width:620px;padding:10px 14px;font-size:13px;display:grid}.cols .r:last-child{border-bottom:none}.cols .r.h{background:var(--teal-light);letter-spacing:.1em;text-transform:uppercase;color:var(--teal-700);font-size:10px;font-weight:900}.cols code{background:var(--off);border-radius:4px;justify-self:start;padding:2px 6px;font-size:12.5px}.drop{border:2px dashed var(--teal);border-radius:var(--r-lg);background:var(--off);text-align:center;color:var(--teal-700);cursor:pointer;flex-direction:column;align-items:center;gap:8px;padding:30px;display:flex}.drop.over{background:var(--teal-light)}.drop b{color:var(--ink);font-size:15px}.drop span{color:var(--muted);font-size:12px}.filebar{background:var(--teal-light);color:var(--teal-700);border-radius:10px;align-items:center;gap:10px;padding:10px 14px;font-size:13px;display:flex}.filebar b{color:var(--ink)}.stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.stat{border:1px solid var(--border);border-radius:10px;padding:12px 14px}.stat b{font-size:24px;font-weight:900;display:block}.stat span{color:var(--muted);font-size:12px}.stat.up{background:var(--teal-light)}.stat.up b,.stat.add b{color:var(--teal-700)}.stat.err{border-color:var(--warn-border);background:var(--warn-bg)}.stat.err b,.stat.err span{color:var(--warn)}.changes{border:1px solid var(--border);border-radius:10px;max-height:420px;overflow:auto}.change{border-bottom:1px solid var(--teal-light);align-items:center;gap:12px;min-width:560px;padding:10px 14px;font-size:13px;display:flex}.change:last-child{border-bottom:none}.change .rw{width:64px;color:var(--muted);flex-shrink:0;font-size:11px}.change .k{letter-spacing:.08em;text-transform:uppercase;width:96px;color:var(--teal-700);flex-shrink:0;font-size:10px;font-weight:900}.change .k.fix,.change .k.remove{color:var(--warn)}.change .w{flex-shrink:0;font-weight:700}.change .d{color:var(--muted)}.applybar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:18px 24px;display:flex}.applybar fieldset{border:none;flex-wrap:wrap;gap:18px;margin:0;padding:0;font-size:13px;display:flex}.applybar label{align-items:center;gap:8px;min-height:44px;display:flex}.sop-editor{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (max-width:960px){.sop-editor{grid-template-columns:1fr}}.preview{border:1px dashed var(--border);background:var(--off);border-radius:10px;flex-direction:column;gap:10px;min-height:380px;padding:4px;display:flex;overflow:auto}.preview .sop-sec{padding:16px 18px}.access-table{border-collapse:collapse;width:100%;font-size:14px}.access-table td{border-bottom:1px solid var(--teal-light);padding:10px 0}.access-table td:last-child{text-align:right}.login{place-items:center;min-height:100dvh;padding:16px;display:grid}.login-card{text-align:center;border-radius:var(--r-xl);flex-direction:column;align-items:center;gap:14px;width:100%;max-width:420px;padding:36px 30px;display:flex;box-shadow:0 8px 40px #6ac5cc2e}.login-card h1{font-size:24px;font-weight:900}.login-card .btn{width:100%}.login-form{text-align:left;flex-direction:column;gap:12px;width:100%;display:flex}.user-form{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:12px;display:grid}.row-actions,.row-actions form{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.row-actions .input{width:150px;height:32px;font-size:13px}.role-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px 22px;box-shadow:0 2px 10px #6ac5cc1a}.role-card.role-new{border-style:dashed;border-color:var(--teal);background:var(--teal-light);box-shadow:none}.role-form{flex-direction:column;gap:16px;display:flex}.role-head{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.role-name{flex:1;max-width:460px}.role-count{color:var(--teal-700);background:var(--teal-light);white-space:nowrap;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:900}.perm-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}@media (max-width:700px){.perm-list{grid-template-columns:1fr}}.perm{border:1.5px solid var(--border);background:var(--white);cursor:pointer;border-radius:12px;align-items:flex-start;gap:12px;height:100%;padding:12px 14px;transition:border-color .15s,background .15s;display:flex}.perm:hover{border-color:var(--teal)}.perm:has(input:checked){border-color:var(--teal-dark);background:var(--teal-light)}.perm input[type=checkbox]{width:18px;height:18px;accent-color:var(--teal-dark);cursor:pointer;flex:none;margin-top:1px}.perm-text{color:var(--ink);flex-direction:column;gap:2px;font-size:14px;display:flex}.perm-text .muted{font-size:12px;line-height:1.4}.perm-lock{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:11px;font-weight:700}.perm.locked{cursor:not-allowed;opacity:.75}.perm.locked:hover{border-color:var(--border)}.role-foot{border-top:1px solid var(--teal-light);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;display:flex}.btn-danger-text{color:#b3412e;cursor:pointer;background:0 0;border:none;padding:8px 4px;font-size:13px;font-weight:700}.btn-danger-text:hover{text-decoration:underline}@media (max-width:700px){.role-head{flex-direction:column;align-items:stretch}.role-name{max-width:none}.role-card{padding:16px}}.role-select{width:200px;height:36px;padding:0 10px;font-size:13px}.status-form{align-items:center;gap:10px;display:flex}.switch{cursor:pointer;border:none;border-radius:999px;flex:none;width:44px;height:24px;padding:0;transition:background .2s;position:relative}.switch.on{background:#2e9e5b}.switch.off{background:#c8473a}.switch .knob{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.switch.on .knob{transform:translate(20px)}.switch:focus-visible{outline:2px solid var(--teal-dark);outline-offset:2px}.status-text{white-space:nowrap;font-size:13px;font-weight:700}.status-text.on{color:#23794a}.status-text.off{color:#b3412e}.modal{width:min(480px,92vw);max-height:90vh;color:var(--ink);border:none;border-radius:16px;padding:0;box-shadow:0 20px 60px #1a3a3d40}.modal::backdrop{background:#1a3a3d66}.modal-body{flex-direction:column;gap:14px;padding:22px;display:flex}.modal-head{justify-content:space-between;align-items:center;display:flex}.modal-head h2{font-size:18px;font-weight:900}.modal-close{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:4px 8px;font-size:24px;line-height:1}.modal-close:hover{background:var(--off);color:var(--ink)}.modal-foot{border-top:1px solid var(--teal-light);justify-content:flex-end;gap:10px;padding-top:6px;display:flex}.modal{text-align:left}.modal .field,.modal .input,.modal .select{width:100%}.modal .field small{margin-top:2px;display:block}.modal-head h2{text-align:left;flex:1}.modal-body{align-items:stretch}.modal-head{width:100%}.mic{border:1.5px solid var(--border);background:var(--white);width:44px;height:44px;color:var(--teal-700);cursor:pointer;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.mic:hover{border-color:var(--teal)}.mic.on{background:var(--teal-700);border-color:var(--teal-700);color:#fff;animation:1.2s ease-in-out infinite mic-pulse}@keyframes mic-pulse{0%,to{box-shadow:0 0 #00808059}50%{box-shadow:0 0 0 8px #00808000}}.voice-status{color:var(--teal-700);margin:8px 4px 0;font-size:12px;font-style:italic}.voice-status.err{color:var(--warn)}.action-card{background:var(--white);border:1.5px solid var(--teal);border-radius:14px;flex-direction:column;align-self:flex-start;gap:12px;width:min(460px,100%);padding:14px 16px;display:flex;box-shadow:0 2px 8px #0000000f}.action-card.done{border-color:var(--border);background:var(--teal-light)}.action-card .overline{color:var(--teal-700)}.action-card .field{color:var(--ink);flex-direction:column;gap:6px;font-size:13px;font-weight:700;display:flex}.action-fields{grid-template-columns:auto 1fr;gap:6px 14px;margin:0;font-size:14px;display:grid}.action-fields div{display:contents}.action-fields dt{color:var(--muted);font-weight:700}.action-fields dd{color:var(--ink);overflow-wrap:anywhere;margin:0}.pw-row{align-items:center;gap:8px;display:flex}.pw-row .input{flex:1;min-width:0}.action-actions{justify-content:flex-end;display:flex}.action-result{font-size:14px;line-height:1.6}.action-card.danger{border-color:var(--warn-border)}.action-warning{color:var(--warn);font-size:13px;font-weight:700}.qa-fab{background:linear-gradient(135deg,var(--teal),var(--teal-dark));width:56px;height:56px;color:var(--ink);cursor:pointer;z-index:60;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 24px #1a3a3d40}.qa-panel{background:var(--white);border:1px solid var(--border);z-index:60;border-radius:16px;flex-direction:column;width:min(440px,100vw - 32px);height:min(640px,100dvh - 120px);display:flex;position:fixed;bottom:94px;right:24px;overflow:hidden;box-shadow:0 20px 60px #1a3a3d40}.qa-panel[hidden]{display:none}.qa-head{border-bottom:1px solid var(--border);background:var(--teal-light);align-items:center;gap:10px;padding:12px 14px;display:flex}.qa-head strong{flex:1;font-size:15px;font-weight:900}.qa-keys{color:var(--muted);font-size:11px}.qa-close{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.qa-close:hover{background:var(--off);color:var(--ink)}.qa-panel .compact{flex-direction:column;flex:1;min-height:0;display:flex}.qa-panel .compact .thread{flex:1;overflow-y:auto}.qa-loading{color:var(--muted);padding:24px;font-size:14px}@media (max-width:560px){.qa-panel{width:auto;height:calc(100dvh - 16px);bottom:8px;left:8px;right:8px}.qa-fab{bottom:16px;right:16px}}
