:root{--color-bg-base:#111211;--color-bg-surface:#1b1d1b;--color-bg-surface-elevated:#252825;--color-text-primary:#eaece8;--color-text-secondary:#9fa69d;--color-accent:#97a684;--color-accent-hover:#839171;--color-border:#323832;--color-status-work:#5a7e9c;--color-status-off:#a45c5c;--color-status-pto:#bc9f58;--color-status-help:#8d6b9c;--font-family-sans:"Outfit", "Noto Sans JP", sans-serif;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-full:9999px;--transition-fast:.15s ease;--transition-normal:.3s ease;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 6px -1px #0006, 0 2px 4px -1px #0003}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family-sans);background-color:var(--color-bg-base);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-weight:500;line-height:1.2}button{cursor:pointer;background:0 0;border:none;outline:none;font-family:inherit}a{color:inherit;text-decoration:none}.glass-panel{-webkit-backdrop-filter:blur(12px);border-radius:var(--radius-lg);background:#1b1d1b99;border:1px solid #ffffff0d}.btn{border-radius:var(--radius-md);transition:all var(--transition-fast);justify-content:center;align-items:center;padding:.5rem 1rem;font-size:.875rem;font-weight:500;display:inline-flex}.btn-primary{background-color:var(--color-accent);color:var(--color-bg-base)}.btn-primary:hover{background-color:var(--color-accent-hover);transform:translateY(-1px)}.btn-outline{border:1px solid var(--color-border);color:var(--color-text-primary);background-color:#0000}.btn-outline:hover{background-color:var(--color-bg-surface-elevated)}.status-badge{border-radius:var(--radius-sm);justify-content:center;align-items:center;padding:.25rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.status-work{color:#8fbde0;background-color:#5a7e9c33}.status-off{color:#e08f8f;background-color:#a45c5c33}.status-pto{color:#e0c78f;background-color:#bc9f5833}.status-help{color:#c69fe0;background-color:#8d6b9c33}.status-empty{color:#ffffff40;background-color:#ffffff05;border:1px dashed #ffffff1f;font-size:.65rem;font-weight:400}.custom-tooltip-group{cursor:help;margin-left:.25rem;display:inline-block;position:relative}.custom-tooltip-content{color:#fff;white-space:pre-wrap;z-index:50;pointer-events:none;background-color:#1f2937;border-radius:4px;width:max-content;max-width:250px;margin-bottom:4px;padding:4px 8px;font-size:.75rem;display:none;position:absolute;bottom:100%;left:50%;transform:translate(-50%);box-shadow:0 4px 6px -1px #0000001a}.custom-tooltip-group:hover .custom-tooltip-content{display:block}.header-home-button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:.5rem;margin:0;padding:.25rem;transition:opacity .15s;display:flex}.header-home-button:hover{opacity:.75}.header-home-button:focus-visible{outline:2px solid var(--color-primary,#ffbd39);outline-offset:2px}
