:root{--astra-color-primary:#6366f1;--astra-color-primary-light:#818cf8;--astra-color-primary-dark:#4f46e5;--astra-color-text-primary:#16191f;--astra-color-text-secondary:#5f6b7a;--astra-color-text-on-dark:#fff;--astra-color-text-on-dark-muted:#fff9;--astra-color-text-on-dark-subtle:#ffffff6b;--astra-color-bg:#f1f3f4;--astra-color-bg-paper:#fff;--astra-color-bg-subtle:#f7f8f8;--astra-color-bg-hover:#f4f6f7;--astra-color-bg-dark:#1b1f27;--astra-color-bg-darker:#12151b;--astra-color-border:#c6c6cd;--astra-color-divider:#d4d9dd;--astra-color-divider-light:#e9ebed;--astra-color-divider-on-dark:#ffffff1a;--astra-color-divider-on-dark-faint:#ffffff0f;--astra-color-sidebar-text:#ffffffa8;--astra-color-sidebar-text-muted:#ffffff6b;--astra-color-sidebar-hover-bg:#ffffff12;--astra-color-sidebar-active-bg:#6366f11a;--astra-color-sidebar-active-border:var(--astra-color-primary);--astra-color-sidebar-button-border:#ffffff2e;--astra-color-sidebar-button-border-hover:#ffffff73;--astra-font-base:"Open Sans", "Noto Sans JP", system-ui, sans-serif;--astra-font-size-h1:24px;--astra-font-size-h2:20px;--astra-font-size-h3:18px;--astra-font-size-h4:16px;--astra-font-size-body:14px;--astra-font-size-secondary:12px;--astra-line-height-h1:30px;--astra-line-height-h2:26px;--astra-line-height-h3:22px;--astra-line-height-body:20px;--astra-line-height-secondary:16px;--astra-space-xxxs:2px;--astra-space-xxs:4px;--astra-space-xs:8px;--astra-space-s:12px;--astra-space-m:16px;--astra-space-l:20px;--astra-space-xl:24px;--astra-space-xxl:32px;--astra-space-xxxl:40px;--astra-sidebar-width:240px;--astra-header-height:56px;--astra-toolbar-height:50px;--astra-content-max-width:960px;--astra-card-inset:10px;--astra-dock-height:0px;--astra-dock-height-default:360px;--astra-dock-height-min:200px;--astra-radius-sm:6px;--astra-radius-md:8px;--astra-radius-lg:12px;--astra-shadow-md:0 1px 3px #0000001a;--astra-shadow-lg:0 1px 2px #0000000f, 0 6px 18px #0000001f;--astra-shadow-dock:0 -6px 20px #0000001f;--astra-transition-fast:.15s}*,:before,:after{box-sizing:border-box}body{font-family:var(--astra-font-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--astra-color-bg);color:var(--astra-color-text-primary);margin:0}#root{width:100%;min-height:100vh}.astra-sidebar{width:var(--astra-sidebar-width);background-color:var(--astra-color-bg-dark);z-index:1200;flex-direction:column;flex-shrink:0;height:100vh;display:flex;position:fixed;top:0;left:0}.astra-sidebar__brand{border-bottom:1px solid var(--astra-color-divider-on-dark);padding:24px}.astra-sidebar__brand-name{color:var(--astra-color-text-on-dark);letter-spacing:.04em;margin:0;font-size:1.25rem;font-weight:700}.astra-sidebar__brand-sub{color:var(--astra-color-sidebar-text-muted);margin-top:4px;font-size:.7rem;display:block}.astra-sidebar__nav{flex:1;padding:16px;overflow-y:auto}.astra-sidebar__nav-item{border-radius:var(--astra-radius-sm);color:var(--astra-color-sidebar-text);transition:all var(--astra-transition-fast);margin-bottom:2px;padding:7px 16px;font-size:.875rem;font-weight:500;text-decoration:none;display:block}.astra-sidebar__nav-item:hover{color:var(--astra-color-text-on-dark);background-color:var(--astra-color-sidebar-hover-bg)}.astra-sidebar__nav-item.active{color:var(--astra-color-text-on-dark);background-color:var(--astra-color-sidebar-active-bg);border-left:3px solid var(--astra-color-sidebar-active-border);padding-left:13px;font-weight:600}.astra-sidebar__nav-item--child{padding-left:34px;font-size:.82rem}.astra-sidebar__nav-item--child.active{padding-left:31px}.astra-sidebar__footer{border-top:1px solid var(--astra-color-divider-on-dark);padding:24px}.astra-sidebar__footer-name{color:var(--astra-color-text-on-dark-muted);margin-bottom:12px;font-size:.75rem;display:block}.astra-auth{min-height:100vh;display:flex}.astra-auth__left{background-color:var(--astra-color-bg-dark);flex-direction:column;justify-content:center;width:45%;padding:0 64px;display:flex}@media (width<=899.95px){.astra-auth__left{display:none}}.astra-auth__brand{color:var(--astra-color-text-on-dark);letter-spacing:.04em;margin:0 0 16px;font-size:2.125rem;font-weight:800}.astra-auth__brand-sub{color:var(--astra-color-text-on-dark-muted);font-size:1rem;line-height:1.8}.astra-auth__right{background-color:var(--astra-color-bg);flex:1;justify-content:center;align-items:center;padding:0 32px;display:flex}.astra-auth__form-box{width:100%;max-width:380px}.astra-auth__title{letter-spacing:-.02em;margin:0 0 4px;font-size:1.5rem;font-weight:700}.astra-auth__subtitle{color:var(--astra-color-text-secondary);margin:0 0 32px;font-size:.875rem}.astra-auth__footer{text-align:center;color:var(--astra-color-text-secondary);margin-top:24px;font-size:.875rem}.astra-auth__footer a{color:var(--astra-color-primary);font-weight:600;text-decoration:none}.astra-auth__footer a:hover{text-decoration:underline}.astra-main-header{height:var(--astra-header-height);background-color:var(--astra-color-bg-dark);border-bottom:1px solid var(--astra-color-divider-on-dark);z-index:1200;justify-content:space-between;align-items:center;padding:0 32px;display:flex;position:fixed;top:0;left:0;right:0}.astra-main-header__brand{letter-spacing:.04em;color:var(--astra-color-text-on-dark);margin:0;font-size:1.125rem;font-weight:700}.astra-main-content{padding-top:var(--astra-header-height);max-width:var(--astra-content-max-width);margin:0 auto;padding-bottom:24px;padding-left:24px;padding-right:24px}.astra-page-toolbar{height:var(--astra-toolbar-height);background-color:var(--astra-color-bg-dark);border-bottom:1px solid var(--astra-color-divider-on-dark-faint);flex-shrink:0;align-items:center;padding:0 20px;display:flex}.astra-page-toolbar__label{color:var(--astra-color-text-on-dark);letter-spacing:.01em;font-size:.92rem;font-weight:600}.astra-page-toolbar__separator{color:#fff3;margin:0 8px;font-size:.9rem;line-height:1}.astra-page-toolbar__sub{color:#ffffff73;font-size:.82rem}.astra-layout-shell{background-color:var(--astra-color-bg-darker);height:100vh;display:flex;overflow:hidden}.astra-layout-main{margin-left:var(--astra-sidebar-width);flex-direction:column;flex:1;height:100vh;display:flex;overflow:hidden}.astra-layout-main__inner{background-color:var(--astra-color-bg);min-height:0;padding-bottom:var(--astra-dock-height,0px);flex:1;overflow-y:auto}.astra-content{padding:var(--astra-space-l) var(--astra-space-xl) var(--astra-space-xxl)}.astra-content__breadcrumbs{margin-bottom:var(--astra-space-m)}.astra-app-header{height:var(--astra-header-height);z-index:1200;background-color:var(--astra-color-bg-dark);border-bottom:1px solid var(--astra-color-divider-on-dark);justify-content:space-between;align-items:center;padding:0 12px 0 16px;display:flex;position:fixed;top:0;left:0;right:0}.astra-app-header__left,.astra-app-header__right{align-items:center;gap:4px;display:flex}.astra-app-header__brand{color:var(--astra-color-text-on-dark);letter-spacing:.04em;padding:0 4px;font-size:1.05rem;font-weight:700}.astra-app-header__sep{color:var(--astra-color-text-on-dark-subtle);margin:0 2px;font-size:1.1rem}.astra-layout-shell--with-header .astra-sidebar{top:var(--astra-header-height);height:calc(100vh - var(--astra-header-height))}.astra-layout-shell--with-header .astra-layout-main{margin-top:var(--astra-header-height);height:calc(100vh - var(--astra-header-height))}.astra-detail-dock{left:var(--astra-sidebar-width);z-index:1150;background-color:var(--astra-color-bg-paper);border-top:2px solid var(--astra-color-border);flex-direction:column;display:flex;position:fixed;bottom:0;right:0;overflow:hidden}.astra-detail-dock__resizer{cursor:row-resize;touch-action:none;flex-shrink:0;justify-content:center;align-items:center;height:10px;display:flex}.astra-detail-dock__resizer:before{content:"";background-color:var(--astra-color-divider);border-radius:2px;width:36px;height:3px}.astra-detail-dock__resizer:hover:before{background-color:var(--astra-color-text-secondary)}.astra-detail-dock__header{border-bottom:1px solid var(--astra-color-divider-light);flex-shrink:0;align-items:center;gap:10px;padding:12px 24px;display:flex}.astra-detail-dock__title{color:var(--astra-color-text-primary);font-size:1.05rem;font-weight:700}.astra-detail-dock__body{flex:1;min-height:0;padding:20px 24px 28px;overflow-y:auto}
