:root{--primary-color: #06C755;--bg-color: #f7f7f7;--card-bg: #ffffff;--text-main: #111111;--text-sub: #666666;--border-color: #eeeeee;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:var(--text-main);background-color:var(--bg-color)}body{margin:0;padding:0;background-color:var(--bg-color);-webkit-text-size-adjust:100%}#root{width:100%;min-height:100vh}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:calc(65px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#fff;display:flex;box-shadow:0 -2px 10px #0000000d;z-index:1000}.nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;background:none;border:none;color:#999;font-size:.75rem;font-weight:600;cursor:pointer;padding:0}.nav-icon{font-size:20px;margin-bottom:2px}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.react-calendar{width:350px;max-width:100%;background:#fff;border:1px solid #a0a096;font-family:Arial,Helvetica,sans-serif;line-height:1.125em}.react-calendar--doubleView{width:700px}.react-calendar--doubleView .react-calendar__viewContainer{display:flex;margin:-.5em}.react-calendar--doubleView .react-calendar__viewContainer>*{width:50%;margin:.5em}.react-calendar,.react-calendar *,.react-calendar *:before,.react-calendar *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.react-calendar button{margin:0;border:0;outline:none}.react-calendar button:enabled:hover{cursor:pointer}.react-calendar__navigation{display:flex;height:44px;margin-bottom:1em}.react-calendar__navigation button{min-width:44px;background:none}.react-calendar__navigation button:disabled{background-color:#f0f0f0}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:#e6e6e6}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__weekdays__weekday{padding:.5em}.react-calendar__month-view__weekNumbers .react-calendar__tile{display:flex;align-items:center;justify-content:center;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__days__day--weekend{color:#d10000}.react-calendar__month-view__days__day--neighboringMonth,.react-calendar__decade-view__years__year--neighboringDecade,.react-calendar__century-view__decades__decade--neighboringCentury{color:#757575}.react-calendar__year-view .react-calendar__tile,.react-calendar__decade-view .react-calendar__tile,.react-calendar__century-view .react-calendar__tile{padding:2em .5em}.react-calendar__tile{max-width:100%;padding:10px 6.6667px;background:none;text-align:center;font:inherit;font-size:.833em}.react-calendar__tile:disabled{background-color:#f0f0f0;color:#ababab}.react-calendar__month-view__days__day--neighboringMonth:disabled,.react-calendar__decade-view__years__year--neighboringDecade:disabled,.react-calendar__century-view__decades__decade--neighboringCentury:disabled{color:#cdcdcd}.react-calendar__tile:enabled:hover,.react-calendar__tile:enabled:focus{background-color:#e6e6e6}.react-calendar__tile--now{background:#ffff76}.react-calendar__tile--now:enabled:hover,.react-calendar__tile--now:enabled:focus{background:#ffffa9}.react-calendar__tile--hasActive{background:#76baff}.react-calendar__tile--hasActive:enabled:hover,.react-calendar__tile--hasActive:enabled:focus{background:#a9d4ff}.react-calendar__tile--active{background:#006edc;color:#fff}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#1087ff}.react-calendar--selectRange .react-calendar__tile--hover{background-color:#e6e6e6}:root{--primary-color: #06C755;--bg-color: #f7f7f7;--card-bg: #ffffff;--text-main: #111111;--text-sub: #666666;--border-color: #eeeeee}body{background-color:var(--bg-color);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;margin:0;padding:0;color:var(--text-main);-webkit-text-size-adjust:100%}.calendar-container{padding:20px 20px 80px;max-width:600px;margin:0 auto}.header-title{text-align:center;color:var(--text-main);margin-bottom:20px;font-weight:800;font-size:1.5rem}.react-calendar{width:100%;background:#fff;border:none;border-radius:16px;box-shadow:0 4px 12px #0000000d;font-family:inherit;padding:16px;box-sizing:border-box}.react-calendar__navigation{display:flex;margin-bottom:1rem}.react-calendar__navigation button{min-width:44px;background:none;font-size:1.1rem;font-weight:700;color:var(--text-main);border:none}.react-calendar__navigation__label{display:flex;align-items:center;justify-content:center;padding:0 10px}.calendar-nav-label{display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.1}.calendar-year{font-size:.7rem;color:#888;font-weight:500;margin-bottom:2px}.calendar-month{font-size:1.15rem;font-weight:800;color:var(--text-main)}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font-weight:700;font-size:.8rem;color:var(--text-sub);margin-bottom:10px}.react-calendar__month-view__weekdays__weekday abbr{text-decoration:none}.react-calendar__tile{height:50px;display:flex!important;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:8px!important;background:none;border:none;font-size:.9rem;color:var(--text-main);overflow:hidden}.react-calendar__tile abbr{white-space:nowrap}.react-calendar__tile:disabled{background-color:#f0f0f0;color:#ccc}.react-calendar__month-view__days__day--neighboringMonth{color:#d1d1d1!important}.react-calendar__tile--now{background:#e6f7ff;border-radius:8px;font-weight:700}.react-calendar__tile--active{background:var(--primary-color)!important;color:#fff!important;border-radius:8px}.react-calendar__tile--active.react-calendar__month-view__days__day--neighboringMonth{color:#fff!important;opacity:.6}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#05b34c!important}.react-calendar__tile:focus{outline:none}.dot{width:6px;height:6px;background-color:#ff6b6b;border-radius:50%;margin-top:4px;flex-shrink:0}.schedule-list{margin-top:24px}.schedule-list h3{font-size:1.1rem;color:var(--text-sub);margin-bottom:12px;border-bottom:1px solid var(--border-color);padding-bottom:8px}.no-schedule{color:#999;text-align:center;padding:30px;background:#fff;border-radius:12px}.schedule-item-card{background:#fff;border-radius:12px;padding:16px;margin-bottom:12px;display:flex;align-items:stretch;gap:16px;border:1px solid #eef0f2;box-shadow:0 4px 12px #00000008;cursor:pointer;transition:all .2s ease;overflow:hidden;position:relative;max-width:100%!important;box-sizing:border-box!important}.schedule-item-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000014;border-color:#d1d9e0}.company-indicator{width:5px;border-radius:4px;flex-shrink:0}.schedule-content{flex:1;min-width:0}.schedule-content h4{margin:0 0 8px!important;font-size:.95rem!important;font-weight:800!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;display:block!important}.schedule-meta{display:flex!important;align-items:center!important;gap:8px!important;margin-bottom:8px!important;overflow:hidden!important;width:100%!important}.schedule-time{font-size:.8rem!important;color:#333!important;font-weight:600!important;white-space:nowrap!important;flex-shrink:0!important}.schedule-location{font-size:.8rem!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;display:block!important;color:#06c755!important;margin-top:6px!important}.schedule-memo-preview{margin:8px 0 0;font-size:.85rem;color:#666;background:#f8f9fa;padding:8px 12px;border-radius:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-left:2px solid #ddd}.tag{padding:6px 10px;border-radius:6px;font-size:.75rem;font-weight:700;color:#fff;min-width:70px;text-align:center;line-height:1;display:inline-flex;align-items:center;justify-content:center}.tag.ES_SUBMISSION{background-color:#ff6b6b}.tag.SPI_TEST{background-color:#4dabf7}.tag.INTERVIEW_1{background-color:#ffd43b;color:#333}.tag.INTERVIEW_2{background-color:#fd7e14}.tag.INTERVIEW_3{background-color:#be4bdb}.tag.BRIEFING{background-color:#20c997}.tag.OTHER{background-color:#adb5bd}.past-event{opacity:.5;filter:grayscale(.8)}.past-event .company-name,.past-event h4,.past-event .detail-date,.past-event .schedule-time,.past-event .detail-memo,.past-event .schedule-memo-preview{text-decoration:line-through}.fab{position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:28px;background-color:var(--primary-color);color:#fff;border:none;font-size:32px;line-height:1;box-shadow:0 4px 12px #06c75566;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s,background-color .2s;z-index:100;padding:0}.fab:active{transform:scale(.95);background-color:#05b34c}.modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:20px;width:100%;max-width:400px;max-height:90vh;display:flex;flex-direction:column;padding:0;box-shadow:0 10px 40px #0003;animation:slideUp .3s cubic-bezier(.16,1,.3,1);overflow:hidden}.modal-content h3{margin:0;padding:20px;font-size:1.15rem;text-align:center;color:var(--text-main);border-bottom:1px solid #f1f3f5}.modal-form-container{flex:1;overflow-y:auto;padding:20px;scrollbar-width:none;-ms-overflow-style:none}.modal-form-container::-webkit-scrollbar{display:none}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.input-group{margin-bottom:12px}.input-group label{display:block;margin-bottom:6px;font-weight:600;color:#444;font-size:.85rem}.input-group input,.input-group select{width:100%;padding:0 12px;height:44px!important;line-height:44px;border:1px solid #ddd;border-radius:12px;font-size:1rem;box-sizing:border-box;background:#fdfdfd;transition:border-color .2s;font-family:inherit;color:#111;-webkit-appearance:none;appearance:none;display:block;margin:0}.input-group textarea{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #ddd;border-radius:12px;font-size:1rem;background:#fdfdfd;font-family:inherit;color:#111;min-height:80px;max-height:120px;resize:vertical;display:block}.input-group input::placeholder,.input-group textarea::placeholder{font-size:1rem;color:#bbb}.company-list-container{padding:20px;max-width:600px;margin:0 auto}.section-header{font-size:.85rem;font-weight:800;color:var(--primary-color);background:#e6f7ff;padding:4px 12px;border-radius:20px;display:inline-block;margin:20px 0 10px;box-shadow:0 2px 4px #0000000d}.company-item{background:#fff;border-radius:12px;padding:16px;margin-bottom:12px;display:flex;align-items:center;gap:12px;box-shadow:0 2px 8px #0000000d;position:relative;overflow:hidden}.company-color-bar{position:absolute;left:0;top:0;bottom:0;width:6px}.company-name{font-weight:700;font-size:1rem;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:8px}.company-count{font-size:.85rem;color:var(--text-sub);background:#f1f3f5;padding:4px 8px;border-radius:12px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:60px;background:#fff;display:flex;box-shadow:0 -2px 10px #0000000d;z-index:100}.nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;background:none;border:none;color:#999;font-size:.75rem;font-weight:600;cursor:pointer}.nav-item.active{color:var(--primary-color)}.btn-next-stage{margin-top:8px;width:100%;padding:10px;font-size:.9rem;background-color:#f1f3f5;border:none;border-radius:8px;cursor:pointer;color:#495057;font-weight:600;transition:background-color .2s}.btn-next-stage:hover{background-color:#e9ecef}.suggestion-chips span{transition:all .2s}.suggestion-chips span:hover{transform:translateY(-1px);box-shadow:0 2px 5px #0000001a}.company-group{margin-bottom:12px}.company-item.expanded{border-bottom-left-radius:0;border-bottom-right-radius:0;margin-bottom:0;border-bottom:1px solid #f1f3f5}.company-detail-list{background:#fdfdfd;border:1px solid #eee;border-top:none;border-bottom-left-radius:12px;border-bottom-right-radius:12px;padding:8px 16px;box-shadow:0 4px 12px #00000008}.company-detail-item{padding:12px 0;border-bottom:1px solid #f1f3f5}.company-detail-item:last-child{border-bottom:none}.detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.detail-date{font-size:.8rem;color:#999;font-weight:500}.detail-memo{font-size:.85rem;color:#666;background:#f8f9fa;padding:6px 10px;border-radius:8px;margin-top:4px}.tag-mini{font-size:.7rem;font-weight:700;color:#fff;padding:2px 8px;border-radius:4px}.tag-mini.ES_SUBMISSION{background-color:#ff6b6b}.tag-mini.SPI_TEST{background-color:#4dabf7}.tag-mini.INTERVIEW_1{background-color:#ffd43b;color:#333}.tag-mini.INTERVIEW_2{background-color:#fd7e14}.tag-mini.INTERVIEW_3{background-color:#be4bdb}.tag-mini.BRIEFING{background-color:#20c997}.tag-mini.OTHER{background-color:#adb5bd}.timeline-wrapper{margin:10px -16px 20px;padding:15px 20px;background:#f8f9fa;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;border-bottom:1px solid #eee}.timeline-wrapper::-webkit-scrollbar{display:none}.company-timeline{display:flex;flex-direction:column;align-items:flex-start;min-width:max-content;padding:0 10px}.timeline-subtitle{font-size:.75rem;font-weight:800;color:var(--text-sub);margin-bottom:12px;opacity:.8}.timeline-nodes-container{display:flex;align-items:center}.timeline-node{display:flex;flex-direction:column;align-items:center;gap:8px;z-index:2}.node-circle{width:28px;height:28px;border-radius:50%;background:#e9ecef;color:#adb5bd;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:800;border:2px solid #fff;box-shadow:0 2px 4px #0000000d;transition:all .3s ease}.timeline-node.completed .node-circle{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.node-label{font-size:.65rem;font-weight:700;color:#adb5bd;white-space:nowrap}.timeline-node.completed .node-label{color:var(--text-main)}.timeline-connector{width:40px;height:2px;background:#e9ecef;margin:-18px 0 0;z-index:1}.timeline-connector.completed{background:var(--primary-color)}.detail-items-container{padding:0 4px}.input-group input:focus,.input-group select:focus,.input-group textarea:focus{font-size:1rem;color:#111}.modal-actions{display:flex;justify-content:stretch;gap:12px;padding:16px 20px;border-top:1px solid #f1f3f5;background:#fff}.btn{flex:1;padding:12px;border-radius:12px;border:none;font-size:.95rem;font-weight:700;cursor:pointer;transition:background-color .2s}.btn-cancel{background:#f1f3f5;color:#495057}.btn-cancel:hover{background:#e9ecef}.btn-submit{background:var(--primary-color);color:#fff}.btn-submit:hover{background:#05b34c}.strategy-board-container{padding:24px 16px 100px;max-width:1200px;margin:0 auto;min-height:calc(100vh - 80px);background-color:#f8f9fa}.strategy-header{margin-bottom:32px;text-align:center}.strategy-header h1{font-size:1.8rem;color:#1a1a1a;margin-bottom:8px;font-weight:800}.strategy-header p{color:#666;font-size:1rem}.kanban-board{display:flex;gap:16px;overflow-x:auto;padding:8px 4px;scrollbar-width:thin;scrollbar-color:#dee2e6 transparent;align-items:flex-start}.kanban-board::-webkit-scrollbar{height:6px}.kanban-board::-webkit-scrollbar-thumb{background-color:#dee2e6;border-radius:10px}.kanban-column{flex:0 0 280px;background-color:#f1f3f5;border-radius:16px;padding:16px;min-height:400px}.column-header{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid #e9ecef}.column-icon{font-size:1.2rem}.column-title{font-weight:700;color:#495057;font-size:.95rem;flex:1}.column-count{background-color:#ced4da;color:#495057;padding:2px 8px;border-radius:12px;font-size:.8rem;font-weight:600}.column-cards{display:flex;flex-direction:column;gap:12px}.company-card{background-color:#fff;padding:16px;border-radius:12px;box-shadow:0 2px 8px #0000000d;transition:transform .2s,box-shadow .2s;cursor:pointer}.company-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.company-card h3{font-size:1rem;margin:0 0 8px;color:#212529;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-footer{font-size:.8rem;color:#adb5bd}.empty-column-msg{text-align:center;color:#adb5bd;font-size:.85rem;padding:20px 0;font-style:italic}@media(max-width:600px){.strategy-header h1{font-size:1.5rem}.kanban-column{flex:0 0 85%}}
