:root{--color-bg:#fffbf0;--color-bg-nav:#fef3c7;--color-bg-hover:#fde68a;--color-accent:#f59e0b;--color-accent-dark:#d97706;--color-text:#3b2f10;--color-text-muted:#78583a;--color-border:#fcd34d;--color-shadow:rgba(245,158,11,.18);--color-loading-bar:#f59e0b;--color-link:#b45309;--color-link-hover:#92400e}a{color:var(--color-link);text-decoration:underline;text-underline-offset:2px}a:hover{color:var(--color-link-hover)}*,:after,:before{box-sizing:border-box}body{background-color:var(--color-bg);color:var(--color-text);font-family:system-ui,sans-serif;line-height:1.6;margin:0}.app-shell{display:flex;min-height:100vh}.app-main{flex:1;min-width:0;padding:2rem 2.5rem}.app-nav{flex-shrink:0;width:220px}.menu{background-color:var(--color-bg-nav);border-right:2px solid var(--color-border);height:100vh;overflow-y:auto;padding:1.5rem 1rem;position:sticky;top:0}.menu,.menu>ul{display:flex;flex-direction:column}.menu>ul{gap:.25rem;list-style:none;margin:0;padding:0}.menu>ul>li{width:100%}.menu-list-header{color:var(--color-text-muted);display:block;font-size:.7rem;font-weight:700;letter-spacing:.1em;padding:1rem .5rem .25rem;text-transform:uppercase}.menu ul{list-style:none;margin:0;padding:0}.menu a,.menu-item a{border-radius:6px;color:var(--color-text);display:block;padding:.35rem .75rem;text-decoration:none;transition:background .15s}.menu a:hover,.menu-item a:hover{background-color:var(--color-bg-hover);color:var(--color-accent-dark)}.menu a.router-link-active,.menu-item a.router-link-active{background-color:var(--color-bg-hover);border-left:3px solid var(--color-accent);font-weight:600;padding-left:calc(.75rem - 3px)}.menu-area-loading-indicator{animation:loadingBar 1s infinite;background-color:var(--color-loading-bar);height:3px;left:0;position:fixed;right:0;top:0;z-index:9999}@keyframes loadingBar{0%{width:0}50%{width:50%}to{width:100%}}.menu>.menu-toggle{display:none}@media(max-width:640px){.app-shell{flex-direction:column}.app-nav{width:100%}.app-main{padding:1.25rem 1rem}.menu{border-bottom:2px solid var(--color-border);border-right:none;height:auto;left:0;padding:0;position:fixed;right:0;top:0;width:100%;z-index:200}.menu>ul{box-shadow:0 4px 16px var(--color-shadow);display:none;flex-direction:column;gap:0;max-height:100vh;overflow-y:auto;padding:3.5rem 1rem 1rem}.menu>ul.showMenu{display:flex}.menu>.menu-toggle{background:var(--color-bg-nav);border:2px solid var(--color-border);border-radius:6px;display:block;line-height:0;padding:.25rem;position:fixed;right:.75rem;top:.6rem;z-index:201}.app-main{padding-top:4rem}}
