*{box-sizing:border-box}body{margin:0;background:#f7f4ee;color:#3a352e;font-family:Microsoft YaHei,Helvetica Neue,Arial,sans-serif}button,input,select,textarea{font:inherit}.app-shell{min-height:100vh}.app-header{align-items:center;display:flex;gap:20px;justify-content:space-between;padding:24px 32px 16px}.header-actions{align-items:center;display:flex;gap:10px}.app-header h1{color:#2c2822;font-size:22px;line-height:1.2;margin:0}.app-header p{color:#8a8378;font-size:12px;margin:5px 0 0}.status-pill{align-items:center;background:#fffdf8;border:1px solid #e8e2d6;border-radius:18px;color:#5c5648;display:flex;font-size:12px;gap:6px;padding:7px 12px}.login-screen{align-items:center;background:#f7f4ee;display:flex;justify-content:center;min-height:100vh;padding:24px}.login-panel{background:#fffdf8;border:1px solid #e8e2d6;border-radius:8px;box-shadow:0 16px 36px #3f2d1c14;max-width:360px;padding:32px;text-align:center;width:100%}.login-panel h1{color:#2c2822;font-size:24px;margin:0 0 10px}.login-panel p{color:#8a8378;margin:0 0 22px}.login-button,.logout-button{align-items:center;border-radius:6px;cursor:pointer;display:inline-flex;font:inherit;gap:6px;justify-content:center;text-decoration:none}.login-button{background:#b8643f;border:1px solid #b8643f;color:#fff;min-height:40px;padding:0 18px}.logout-button{background:#fffdf8;border:1px solid #e8e2d6;color:#6b6254;min-height:32px;padding:0 10px}.tabs{border-bottom:1px solid #e8e2d6;display:flex;gap:4px;padding:0 32px}.tab{align-items:center;background:transparent;border:0;border-bottom:2px solid transparent;color:#8a8378;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:11px 16px}.tab-active{border-bottom-color:#b8643f;color:#b8643f}.main-content{padding:24px 32px 64px}.section-header{align-items:flex-end;display:flex;justify-content:space-between;margin-bottom:16px}.section-header h2{align-items:center;color:#2c2822;display:flex;font-size:16px;gap:8px;margin:0}.section-header p{color:#8a8378;font-size:12px;margin:5px 0 0 26px}.notice,.placeholder-panel,.reminder-form,.reminder-group,.calendar-toolbar,.holiday-card{background:#fff;border:1px solid #e8e2d6;border-radius:12px}.notice{color:#5c5648;font-size:12px;margin-bottom:14px;padding:10px 12px}.placeholder-panel{color:#7a746a;display:grid;gap:8px;padding:22px}.placeholder-panel strong{color:#2c2822}.icon-action{align-items:center;background:#fff;border:1px solid #e8e2d6;border-radius:8px;color:#5c5648;cursor:pointer;display:flex;height:34px;justify-content:center;width:34px}.header-actions,.form-actions{display:flex;gap:8px}.primary-action,.secondary-action{align-items:center;border-radius:8px;cursor:pointer;display:flex;font-size:13px;font-weight:700;gap:6px;justify-content:center;min-height:34px;padding:7px 12px}.primary-action{background:#b8643f;border:1px solid #b8643f;color:#fff}.secondary-action{background:#fff;border:1px solid #e8e2d6;color:#5c5648}.calendar-toolbar{align-items:center;display:flex;gap:10px;margin-bottom:14px;padding:10px 12px}.calendar-toolbar select{background:#fbfaf6;border:1px solid #e8e2d6;border-radius:8px;color:#3a352e;min-height:34px;padding:6px 10px}.calendar-toolbar span{color:#8a8378;font-size:12px;margin-left:auto}.holiday-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.holiday-card{padding:14px}.holiday-card-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:10px}.holiday-card h3{color:#2c2822;font-size:15px;line-height:1.3;margin:0}.holiday-card-header p,.holiday-card p{color:#5c5648;font-size:12px;line-height:1.5;margin:5px 0 0}.tier-badge{align-items:center;background:#f0ece3;border-radius:8px;color:#5c5648;display:flex;flex:0 0 auto;font-size:12px;font-weight:700;height:28px;justify-content:center;min-width:34px}.tier-A{background:#b8643f;color:#fff}.tier-B{background:#7a8b6f;color:#fff}.tier-C{background:#d8c08b;color:#3a352e}.keywords{color:#8a5f48!important}.direction-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.direction-list span{background:#f7f4ee;border-radius:7px;color:#5c5648;font-size:11px;padding:4px 8px}.risk-note{background:#fff8f2;border-left:3px solid #d8c08b;border-radius:7px;padding:7px 9px}.holiday-form{background:#fff;border:1px solid #e8e2d6;border-radius:12px;display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px;padding:14px}.form-title{align-items:center;display:flex;grid-column:1 / -1;justify-content:space-between}.form-title button{align-items:center;background:#fff;border:1px solid #e8e2d6;border-radius:8px;color:#5c5648;cursor:pointer;display:flex;height:30px;justify-content:center;width:30px}.holiday-form input,.holiday-form select,.holiday-form textarea{background:#fbfaf6;border:1px solid #e8e2d6;border-radius:8px;color:#3a352e;min-height:38px;padding:8px 10px;width:100%}.holiday-form textarea{grid-column:span 2;min-height:68px;resize:vertical}.month-day-field{align-items:center;background:#fbfaf6;border:1px solid #e8e2d6;border-radius:8px;display:grid;gap:6px;grid-template-columns:1fr 58px 58px;padding:6px 8px}.month-day-field span{color:#8a8378;font-size:12px}.month-day-field input{min-height:28px;padding:4px 6px}.holiday-form .form-actions{grid-column:1 / -1}.reminder-form{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px;padding:14px}.reminder-form input,.reminder-form select,.reminder-form textarea{background:#fbfaf6;border:1px solid #e8e2d6;border-radius:8px;color:#3a352e;min-height:38px;padding:8px 10px;width:100%}.reminder-form textarea{grid-column:span 2;min-height:38px;resize:vertical}.reminder-form button{align-items:center;background:#b8643f;border:0;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:700;gap:6px;justify-content:center;min-height:38px}.reminder-form .secondary-action{background:#fff;border:1px solid #e8e2d6;color:#5c5648}.reminder-groups{display:grid;gap:14px}.reminder-group{padding:14px}.group-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.group-header h3{color:#2c2822;font-size:14px;margin:0}.group-header p{color:#8a8378;font-size:11px;margin:4px 0 0}.group-header span{background:#f0ece3;border-radius:10px;color:#8a8378;font-size:11px;padding:2px 8px}.empty{border:1px dashed #e8e2d6;border-radius:10px;color:#a8a096;font-size:12px;padding:18px;text-align:center}.card-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.reminder-card{background:#fbfaf6;border:1px solid #f0ece3;border-radius:10px;padding:12px}.reminder-card h4{color:#2c2822;font-size:14px;margin:0 0 8px}.meta-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.meta-row span{background:#7a8b6f1a;border-radius:6px;color:#6f7f65;font-size:11px;padding:3px 7px}.reminder-card a,.reminder-card p{color:#5c5648;display:block;font-size:12px;line-height:1.5;margin:6px 0 0}.note{background:#f7f4ee;border-radius:8px;padding:7px 8px}.card-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.card-actions button{align-items:center;background:#fff;border:1px solid #e8e2d6;border-radius:6px;color:#5c5648;cursor:pointer;display:flex;font-size:11px;gap:4px;padding:5px 8px}.card-actions .danger-action{color:#b8643f}@media(max-width:760px){.app-header,.section-header{align-items:flex-start;flex-direction:column}.header-actions{width:100%}.header-actions .primary-action{flex:1}.tabs,.main-content,.app-header{padding-left:16px;padding-right:16px}.tabs{overflow-x:auto}.reminder-form,.holiday-form{grid-template-columns:1fr}.holiday-form textarea,.holiday-form .form-actions{grid-column:span 1}.calendar-toolbar{align-items:stretch;flex-direction:column}.calendar-toolbar span{margin-left:0}.reminder-form textarea{grid-column:span 1}}
