
body{margin:0;background:#080d17;font:14px system-ui,-apple-system,"Yu Gothic",Meiryo,sans-serif;color:#eef3fb}*{box-sizing:border-box}button,input,textarea,select{font:inherit}
.dh-app{--dh-bg:#080d17;--dh-panel:#0f1726;--dh-sub:#131e31;--dh-border:#24314a;--dh-text:#eef3fb;--dh-muted:#9baac5;--dh-blue:#4783ff;display:flex;min-height:100vh;background:var(--dh-bg);color:var(--dh-text)}
.dh-app button,.dh-app input,.dh-app textarea,.dh-app select{font:inherit}.dh-app button{cursor:pointer}.dh-app button:disabled{opacity:.45;cursor:not-allowed}.dh-sidebar{flex:0 0 235px;border-right:1px solid var(--dh-border);background:#0b1320;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:24px 14px}.dh-brand,.dh-topbrand{display:flex;align-items:center;gap:11px}.dh-brand{padding:4px 10px 33px}.dh-brand img,.dh-topbrand img{object-fit:cover;border-radius:8px}.dh-brand strong{font-size:18px;display:block;letter-spacing:.04em}.dh-brand small,.dh-sidebar-foot small{display:block;color:var(--dh-muted);font-size:10px;margin-top:3px}.dh-sidelabel{color:#778ba9;font-size:11px;padding:6px 14px 12px}.dh-side-nav{display:grid;gap:3px}.dh-side-nav button{background:none;border:0;text-align:left;padding:13px 15px;display:flex;align-items:center;gap:14px;color:#a5b3cb;border-radius:7px;font-weight:600}.dh-side-nav button:hover,.dh-side-nav button.dh-active{background:#152440;color:#ecf3ff}.dh-side-nav button.dh-active{box-shadow:inset 3px 0 #4281fb}.dh-sidebar-foot{margin-top:auto;display:flex;gap:9px;align-items:center;border-top:1px solid var(--dh-border);padding:17px 8px}.dh-avatar{width:37px;height:37px;background:#253b63;color:#dce8ff;border-radius:100%;display:grid;place-items:center;font-weight:800}.dh-sidebar-foot strong{display:block;font-size:12px}.dh-content{flex:1;min-width:0}.dh-topbar{height:66px;border-bottom:1px solid var(--dh-border);display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 32px;background:#0b1320}.dh-topbrand strong{font-size:13px;letter-spacing:.04em}.dh-topbrand span{color:#617b9e;font-size:11px;letter-spacing:1px;margin-left:6px}.dh-demo-tag{color:#86b7e8;font-size:11px}.dh-main{max-width:1140px;margin:0 auto;padding:32px 34px 110px}.dh-alert,.dh-flash{display:flex;gap:11px;align-items:flex-start;padding:11px 14px;border:1px solid #29415f;border-radius:7px;color:#a9bedf;font-size:12px;line-height:1.7;background:#101c30;margin-bottom:20px}.dh-alert svg{flex:none;margin-top:1px}.dh-flash{justify-content:space-between;background:#132f31;color:#9af1c9}.dh-flash button{background:none;color:inherit;border:0}.dh-heading{margin:0 0 23px}.dh-heading h1{font-size:29px;letter-spacing:-.03em;margin:0 0 8px}.dh-heading p{color:var(--dh-muted);font-size:13px;margin:0}.dh-next{border:1px solid #2b4775;background:#14223c;border-radius:10px;padding:25px 27px;margin-bottom:18px}.dh-overline{font-size:13px;color:#a9c7fb;display:flex;align-items:center;gap:8px}.dh-overline span{margin-left:auto;color:#819ac1;font-size:11px}.dh-next h2{font-size:22px;margin:14px 0 5px}.dh-next p{font-size:13px;color:#a8bad5;margin:0 0 20px}.dh-primary,.dh-outline{border-radius:6px;padding:11px 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;min-height:41px;font-size:13px}.dh-primary{background:#477ef1;color:#fff;border:1px solid #568cff}.dh-primary:hover{background:#5892ff}.dh-outline{background:#152137;color:#b9c9e8;border:1px solid #364965}.dh-outline:hover{border-color:#83a6ee}.dh-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--dh-border);border-radius:8px;overflow:hidden;margin-bottom:20px}.dh-shortcut{border:0;border-right:1px solid var(--dh-border);background:#10192a;color:#a7bbdc;display:flex;align-items:center;text-align:left;gap:14px;padding:18px;min-width:0}.dh-shortcut:last-child{border-right:0}.dh-shortcut:hover{background:#18243a}.dh-shortcut>span{display:grid;gap:4px;flex:1;min-width:0}.dh-shortcut strong{font-size:13px;color:#f0f4ff}.dh-shortcut small{font-size:11px;color:#889ab7}.dh-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.dh-panel{background:var(--dh-panel);border:1px solid var(--dh-border);border-radius:9px;padding:19px 20px;min-width:0}.dh-panelhead{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:13px;border-bottom:1px solid #25314a;margin-bottom:10px}.dh-panelhead h2{font-size:15px;margin:0}.dh-panelhead small{color:var(--dh-muted)}.dh-link{display:inline-flex;align-items:center;gap:5px;background:none;border:0;color:#95b8f4;font-size:12px}.dh-listitem{display:flex;align-items:center;text-align:left;justify-content:space-between;gap:12px;padding:14px 0;border:0;border-bottom:1px solid #1f2b41;background:transparent;width:100%;color:#edf2fb}.dh-listitem:last-child{border-bottom:0}.dh-listitem>span{display:grid;gap:5px;min-width:0;flex:1}.dh-listitem strong{font-size:13px;line-height:1.5}.dh-listitem small{font-size:11px;color:var(--dh-muted)}.dh-listitem em,.dh-recordhead em{white-space:nowrap;border-radius:3px;padding:5px 7px;background:#283852;color:#b5cbeb;font-style:normal;font-size:11px}.dh-listitem em.dh-success,.dh-recordhead em.dh-success{background:#1c403b;color:#96e7c8}.dh-listitem em.dh-muted,.dh-recordhead em.dh-muted{background:#302e39;color:#9fabbc}.dh-listitem.dh-selected{background:#16253f}.dh-listitem.dh-readonly{cursor:default}.dh-form{display:grid;gap:14px;padding-top:8px}.dh-form label,.dh-inline-label,.dh-event-add,.dh-switch{display:grid;gap:7px;font-size:12px;color:#b4c6df;font-weight:600}.dh-form input,.dh-form select,.dh-form textarea,.dh-commentform input,.dh-inline-label select,.dh-event-add input,.dh-switch select{border-radius:6px;background:#0b1321;color:#f3f6fd;border:1px solid #2e405e;padding:10px 12px;min-height:40px;width:100%;outline:none}.dh-form input:focus,.dh-form textarea:focus,.dh-form select:focus,.dh-commentform input:focus{border-color:#608ffd}.dh-actions{display:flex;gap:8px;flex-wrap:wrap}.dh-record{border-bottom:1px solid #243149;padding:16px 0}.dh-record:last-child{border:0}.dh-recordhead{display:flex;justify-content:space-between;align-items:center;gap:8px}.dh-recordhead strong{font-size:13px}.dh-record>small{color:#91a3c2;font-size:11px;display:block;margin-top:7px;overflow-wrap:anywhere}.dh-record p{color:#c0cce1;font-size:13px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.dh-inline-label{margin:12px 0}.dh-comment{display:flex;gap:6px;background:#172236;padding:8px 10px;border-radius:5px}.dh-commentform{display:flex;gap:8px;margin-top:13px}.dh-commentform input{flex:1;min-width:0}.dh-recordactions{display:flex;flex-wrap:wrap;gap:13px;margin-top:12px}.dh-recordactions button{border:0;background:none;color:#a6bad9;display:flex;align-items:center;gap:5px;padding:6px 0;font-size:12px}.dh-recordactions button:hover{color:#fff}.dh-eventdetail p{color:#bdcce1;display:flex;align-items:center;gap:9px;font-size:13px}.dh-eventdetail p.dh-description{white-space:pre-wrap;display:block;line-height:1.6}.dh-eventdetail h3{font-size:13px;margin:20px 0 9px}.dh-separator{border-top:1px solid #243149;margin:19px 0}.dh-choices{display:flex;gap:7px;flex-wrap:wrap}.dh-choices button{border:1px solid #314562;background:#111e30;color:#a9bddc;border-radius:5px;font-size:12px;padding:8px 13px}.dh-choices button.selected{border-color:#6c9aff;background:#28436a;color:#fff}.dh-candidate{border-bottom:1px solid #29364e;padding:10px 0}.dh-candidate strong{font-size:12px;display:block;margin-bottom:8px}.dh-event-add{margin:15px 0 10px}.dh-empty{color:#8294b0;font-size:12px;padding:15px 0;line-height:1.6}.dh-album{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;background:#152037;min-height:150px;border:1px solid #2a3b59;border-radius:7px}.dh-album svg{color:#8facd5}.dh-album strong{font-size:13px}.dh-album small{color:#93a8c8;font-size:11px}.dh-muted-paragraph{color:#acbdd8;font-size:13px;line-height:1.9}.dh-profile{display:flex;align-items:center;gap:12px;margin:15px 0 26px}.dh-profile strong{display:block}.dh-profile small{display:block;color:#9eb2d3;margin-top:5px}.dh-switch{margin-bottom:16px}.dh-footer{display:flex;gap:6px;align-items:center;color:#647b9c;font-size:11px;margin-top:34px}.dh-bottom{display:none}
@media(max-width:900px){.dh-sidebar{display:none}.dh-topbar{height:59px;padding:0 16px}.dh-main{padding:24px 16px 110px}.dh-heading h1{font-size:25px}.dh-topbrand span{display:none}.dh-next{padding:19px}.dh-grid{grid-template-columns:1fr}.dh-shortcuts{grid-template-columns:1fr}.dh-shortcut{border-right:0;border-bottom:1px solid var(--dh-border);padding:13px 16px}.dh-shortcut:last-child{border-bottom:0}.dh-shortcut>span{display:flex;justify-content:space-between;align-items:center}.dh-bottom{position:fixed;z-index:90;bottom:0;left:0;right:0;display:flex;justify-content:space-around;background:#0d1524f3;border-top:1px solid #263753;backdrop-filter:blur(12px);padding:9px 2px max(12px,env(safe-area-inset-bottom))}.dh-bottom button{border:0;background:none;color:#8da0bc;display:flex;flex-direction:column;align-items:center;gap:5px;font-size:10px;min-width:0;padding:0 5px}.dh-bottom button.dh-active{color:#8fb4ff}.dh-demo-tag{font-size:10px}.dh-panel{padding:17px}.dh-alert{font-size:11px}}
@media(max-width:380px){.dh-topbrand strong{font-size:11px}.dh-shortcut small{display:none}.dh-bottom button{font-size:9px;padding:0 2px}.dh-demo-tag{font-size:9px}}


/* v0.8: accessible controls and compact refinements */
.dh-main{min-height:calc(100vh - 70px)}
.dh-sidebar .dh-side-nav button{width:100%}
.dh-side-nav button,.dh-bottom button{cursor:pointer}
.dh-listitem{cursor:pointer}
.dh-recordactions button:focus-visible,.dh-listitem:focus-visible,.dh-primary:focus-visible,.dh-outline:focus-visible,.dh-bottom button:focus-visible,.dh-side-nav button:focus-visible{outline:2px solid #91b7ff;outline-offset:3px}
.dh-fieldnote{font-size:11px;color:#8296b5;margin:0;line-height:1.6}
.dh-minihead{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:10px 0}
.dh-help{display:block;color:#8a9fbf;font-size:11px;line-height:1.65;margin:7px 0 0}
.dh-editor-label{display:grid;gap:6px;margin:12px 0;font-size:12px;color:#b4c6df}
.dh-editor-label input,.dh-editor-label select,.dh-editor-label textarea{border:1px solid #344866;background:#0b1321;color:#eef3fb;border-radius:6px;padding:10px;width:100%}
.dh-comment-note{font-size:11px;color:#a8b9d5;line-height:1.7;padding:6px 0;border-bottom:1px solid #263550;overflow-wrap:anywhere}
.dh-neutral{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#9db3d0;font-size:11px}
.dh-recordactions button{cursor:pointer}
.dh-recordactions .dh-danger{color:#f1adb4}
.dh-label{font-size:12px;color:#a6bddd}
.dh-candidate-list{padding:9px 0;border-bottom:1px solid #2b394f}
.dh-candidate-list>strong{display:block;font-size:13px;margin-bottom:9px}
.dh-form legend{font-size:12px}
.dh-empty{word-break:break-word}
.dh-flash{margin:0 0 14px}
.dh-bannerlabel{font-size:11px;color:#a5b6d1}
.dh-pill{border:1px solid #3c5478;border-radius:4px;padding:3px 6px;color:#b4c7e6;font-size:10px;white-space:nowrap}
.dh-shortcuts .dh-shortcut{cursor:pointer}
.dh-detailstack{display:grid;gap:7px}
.dh-note{background:#0f1c30;border-left:3px solid #4b83ed;padding:12px;color:#b3c7e6;font-size:12px;line-height:1.7}
.dh-status-picker{display:grid;gap:6px;font-size:12px;color:#b4c6df;margin:12px 0}
.dh-status-picker select{border-radius:6px;background:#0b1321;color:#f3f6fd;border:1px solid #2e405e;padding:10px}
.dh-actions .dh-outline{white-space:nowrap}
@media(max-width:900px){.dh-main{min-height:calc(100vh - 56px)}.dh-topbar{gap:6px}.dh-topbrand span{display:none}.dh-shortcuts{margin-bottom:15px}.dh-next{padding:19px}.dh-alert{margin-bottom:14px}}
