/* OMV6 v2 shell - original work */
body{margin:0;font-family:var(--font);font-size:var(--fs-md);color:var(--text);background:var(--bg)}
*{box-sizing:border-box}
.app{display:grid;grid-template-columns:232px 1fr;min-height:100vh}
.side{background:var(--surface-sunken);border-right:1px solid var(--border);padding:10px 8px;display:flex;flex-direction:column;gap:2px}
.ws{display:flex;align-items:center;gap:8px;padding:6px 8px;font-weight:600}
.logo{width:22px;height:22px;border-radius:6px;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:11px}
.search{margin:6px 0 10px;display:flex;justify-content:space-between;align-items:center;padding:5px 8px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text-faint)}
kbd{font-family:var(--mono);font-size:10px;border:1px solid var(--border-strong);border-radius:3px;padding:0 4px;color:var(--text-muted);background:var(--surface-sunken)}
.nav{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:6px;color:var(--text-muted)}
.nav svg{width:15px;height:15px;flex:none}
.nav.on{background:var(--surface-hover);color:var(--text);font-weight:500}
.nav .ct{margin-left:auto;font-size:var(--fs-xs);color:var(--text-faint)}
.sub{padding:3px 8px 3px 31px;color:var(--text-faint);font-size:var(--fs-sm);display:flex}
.sub.on{color:var(--accent);font-weight:500}.sub .ct{margin-left:auto}
.grp{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint);padding:12px 8px 4px}
.main{display:flex;flex-direction:column;min-width:0}
.top{display:flex;align-items:center;gap:8px;padding:10px 16px;border-bottom:1px solid var(--border);background:var(--surface)}
.top h1{font-size:var(--fs-lg);margin:0;font-weight:600}
.btn{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:var(--fs-md);white-space:nowrap}
.btn.pri{background:var(--accent);border-color:var(--accent);color:#fff}
.btn.ghost{border-color:transparent;color:var(--text-muted)}
.views{display:flex;align-items:center;gap:2px;padding:6px 16px;border-bottom:1px solid var(--border);background:var(--surface)}
.vt{padding:5px 10px;border-radius:6px;color:var(--text-muted);white-space:nowrap}
.vt.on{background:var(--surface-hover);color:var(--text);font-weight:500}
.vt b{font-weight:500;color:var(--red);margin-left:3px}
.sp{flex:1}
.seg{display:inline-flex;border:1px solid var(--border);border-radius:6px;overflow:hidden}
.seg span{padding:4px 10px;color:var(--text-muted)}.seg .on{background:var(--surface-hover);color:var(--text);font-weight:500}
.work{display:flex;flex:1;min-height:0}
.tbl{flex:1;overflow:hidden}
table{border-collapse:collapse;width:100%;table-layout:fixed}
th{font-weight:500;color:var(--text-faint);text-align:left;font-size:var(--fs-sm);height:32px;padding:0 10px;border-bottom:1px solid var(--border);border-right:1px solid var(--border);background:var(--surface)}
td{height:34px;padding:0 10px;border-bottom:1px solid var(--border);border-right:1px solid var(--border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--surface)}
tr.sel td{background:var(--accent-soft)}
td.edit{outline:2px solid var(--accent);outline-offset:-2px;position:relative;overflow:visible}
.chip{display:inline-flex;align-items:center;gap:4px;height:20px;padding:0 8px;border-radius:999px;font-size:var(--fs-sm);font-weight:500}
.c-g{background:var(--gray-soft);color:var(--text-muted)}.c-b{background:var(--blue-soft);color:var(--blue)}
.c-a{background:var(--amber-soft);color:var(--amber)}.c-gr{background:var(--green-soft);color:var(--green)}
.c-r{background:var(--red-soft);color:var(--red)}.c-v{background:var(--violet-soft);color:var(--violet)}
.av{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;font-size:10px;font-weight:600;background:var(--violet-soft);color:var(--violet);vertical-align:middle;margin-right:5px}
.mut{color:var(--text-faint)}.mono{font-family:var(--mono);font-size:var(--fs-sm)}
.pop{position:absolute;top:36px;left:-2px;z-index:5;width:230px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-md);padding:6px;white-space:normal}
.pop input{width:100%;height:28px;border:1px solid var(--border);border-radius:5px;padding:0 8px;font:inherit;margin-bottom:4px}
.opt{display:flex;align-items:center;gap:6px;padding:5px 6px;border-radius:5px}.opt.on{background:var(--surface-hover)}
.panel{width:420px;flex:none;border-left:1px solid var(--border);background:var(--surface);box-shadow:-8px 0 24px rgba(0,0,0,.05)}
.ph{padding:14px 16px 0}
.ph .x{float:right;color:var(--text-faint)}
.ph h2{text-transform:none;letter-spacing:0;color:var(--text);margin:4px 0 2px;font-size:var(--fs-xl)}
.tabs{display:flex;gap:16px;border-bottom:1px solid var(--border);padding:0 16px;margin-top:10px}
.tabs span{padding:8px 0;color:var(--text-muted)}.tabs .on{color:var(--text);font-weight:500;box-shadow:inset 0 -2px var(--accent)}
.facts{display:grid;grid-template-columns:90px 1fr;gap:6px 8px;padding:10px 16px;font-size:var(--fs-md)}
.facts dt{color:var(--text-faint)}.facts dd{margin:0}
.tl{padding:12px 16px;position:relative}
.ev{display:grid;grid-template-columns:24px 1fr;gap:10px;padding-bottom:14px;position:relative}
.ev:before{content:"";position:absolute;left:11px;top:24px;bottom:0;width:1px;background:var(--border)}
.ev:last-child:before{display:none}
.dot{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:11px;background:var(--surface-hover);color:var(--text-muted)}
.ev .t{color:var(--text-faint);font-size:var(--fs-sm)}
.note{margin-top:5px;padding:8px 10px;background:var(--surface-sunken);border-radius:6px;border:1px solid var(--border)}
.thumbs{display:flex;gap:6px;margin-top:6px}.thumbs i{width:64px;height:48px;border-radius:5px;background:linear-gradient(135deg,#c9d3e6,#8ea0c2)}
.compose{margin:0 16px 12px;border:1px solid var(--border);border-radius:8px;padding:8px 10px;color:var(--text-faint)}
.hint{position:fixed}
.tip{position:absolute;z-index:6;background:var(--gray-900);color:#fff;font-size:var(--fs-sm);padding:5px 8px;border-radius:5px;white-space:nowrap}
