/* line 9, app/assets/stylesheets/layout.scss */body.kai-layout{background:var(--kai-body-bg);color:var(--kai-text)}/* line 14, app/assets/stylesheets/layout.scss */body.kai-layout.kai-pc{background:var(--kai-outer-bg)}/* line 18, app/assets/stylesheets/layout.scss */body.kai-layout .kai-frame{background:var(--kai-body-bg);min-height:100vh;padding-bottom:7rem;box-shadow:0 0 24px rgba(90,60,45,0.12)}/* line 26, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header{background:var(--kai-surface);min-height:60px;padding:0;border-bottom:0;box-shadow:0 1px 10px rgba(90,60,45,0.08);z-index:1030}/* line 34, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header .kai-header-inner{position:relative;min-height:60px;padding:0 12px;flex-wrap:nowrap}/* line 41, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header .navbar-brand{display:flex;align-items:center;gap:8px;margin:0;padding:0}/* line 48, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header .navbar-brand img{cursor:pointer}/* line 53, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header .kai-menu-toggle{color:var(--kai-text);cursor:pointer}/* line 58, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header .kai-title{position:absolute;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);max-width:55%;margin:0;font-size:1rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}/* line 72, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header .kai-back-btn{width:38px;height:38px;border-radius:50%;border:0;background:transparent;color:var(--kai-text);display:flex;align-items:center;justify-content:center;transition:background .15s}/* line 84, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header .kai-back-btn:hover,body.kai-layout .kai-header .kai-back-btn:active{background:var(--kai-hover-bg)}/* line 90, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header .kai-user-btn{display:flex;align-items:center;gap:8px;border:0;border-radius:50px;background:var(--kai-page-bg);color:var(--kai-text);font-size:.875rem;font-weight:600;padding:4px 12px 4px 4px;white-space:nowrap}/* line 103, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header .kai-user-btn .kai-avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg, var(--kai-primary) 0%, var(--kai-secondary) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700}/* line 116, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header .kai-user-btn:hover{background:var(--kai-hover-bg-dark)}/* line 122, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header .kai-header-right{display:flex;align-items:center;gap:4px;margin-left:auto}/* line 129, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header .kai-noti-btn{position:relative;width:38px;height:38px;border-radius:50%;color:var(--kai-text);display:flex;align-items:center;justify-content:center;text-decoration:none;transition:background .15s}/* line 141, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header .kai-noti-btn:hover,body.kai-layout .kai-header .kai-noti-btn:active{color:var(--kai-text);background:var(--kai-hover-bg)}/* line 148, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header .kai-noti-btn .kai-noti-badge{position:absolute;top:7px;right:8px;width:10px;height:10px;border-radius:50%;border:2px solid var(--kai-surface);box-sizing:content-box;background:var(--kai-danger)}/* line 159, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header .kai-noti-btn .kai-noti-badge[hidden]{display:none}/* line 165, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header .kai-login-btn{border-radius:50px;background:var(--kai-primary);border:0;color:#fff;font-size:.875rem;font-weight:600;padding:7px 18px}/* line 174, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header .kai-login-btn:hover{background:var(--kai-primary-dark);color:#fff}/* line 181, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header #bottom_nav_bar{width:100%;margin:0 !important;padding:8px 4px !important;border-top:1px solid var(--kai-border) !important;text-align:center}/* line 188, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header #bottom_nav_bar svg{color:var(--kai-muted)}/* line 194, app/assets/stylesheets/layout.scss */body.kai-layout .kai-header-spacer{height:72px}/* line 199, app/assets/stylesheets/layout.scss */body.kai-layout .kai-tabbar{background:var(--kai-surface);border-top:0 !important;box-shadow:0 -1px 10px rgba(90,60,45,0.08);padding:6px 8px;padding-bottom:max(8px, env(safe-area-inset-bottom));justify-content:space-around;flex-wrap:nowrap}/* line 208, app/assets/stylesheets/layout.scss */body.kai-layout .kai-tabbar .kai-tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:4px 0;color:var(--kai-muted);font-size:.7rem;font-weight:600;text-decoration:none;cursor:pointer;border-radius:10px}/* line 222, app/assets/stylesheets/layout.scss */body.kai-layout .kai-tabbar .kai-tab svg{width:1.45em;height:1.45em}/* line 227, app/assets/stylesheets/layout.scss */body.kai-layout .kai-tabbar .kai-tab:active{background:var(--kai-page-bg)}/* line 233, app/assets/stylesheets/layout.scss */body.kai-layout .kai-tabbar .kai-tab-icon-wrap{position:relative;display:inline-flex}/* line 238, app/assets/stylesheets/layout.scss */body.kai-layout .kai-tabbar .kai-tab-badge{position:absolute;top:-6px;right:-10px;min-width:1.5em;padding:.2em .4em;font-size:.6rem;line-height:1.1}/* line 251, app/assets/stylesheets/layout.scss */body.kai-layout .alert{border:0;border-radius:10px;box-shadow:0 1px 10px rgba(90,60,45,0.08);margin:8px 4px}/* line 260, app/assets/stylesheets/layout.scss */.turbolinks-progress-bar{height:3px;background-color:var(--kai-primary)}
