body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.homepage-container{background-color:#f9f5f1;box-sizing:border-box;display:flex;gap:20px;height:100vh;padding:20px}.left-panel{align-items:center;background:#d6ccd9;border-radius:16px;display:flex;flex-shrink:0;justify-content:center;width:240px}.right-panel-wrapper{flex-shrink:0;height:98%;margin-top:30px;overflow-y:auto;width:340px}.top-right-buttons{display:flex;gap:8px;position:absolute;right:20px;top:6px;z-index:10}.top-right-buttons button{background:#fff;border:1px solid #d6c7d1;border-radius:999px;color:#6f4b63;font-weight:500;padding:6px 14px}.center-panel{display:flex;flex:1 1;flex-direction:column;gap:1px;min-width:0}.progress-area{padding:0 10px 15px}.calendar-area{flex:1 1;margin-top:20px;overflow:hidden}.calendar-root{width:100%}.calendar-header{align-items:center;display:flex;justify-content:center;margin-bottom:12px;margin-top:20px;position:relative}.cal-nav{background:#fff;border:1px solid #ddd;border-radius:8px;cursor:pointer;font-size:18px;height:34px;line-height:1;position:absolute;top:50%;transform:translateY(-50%);width:34px}.cal-nav[aria-label="prev month"]{left:0}.cal-nav[aria-label="next month"]{right:0}.calendar-title{align-items:center;display:flex;gap:12px}.cal-today{background:#fff;border:1px solid #ddd;border-radius:10px;cursor:pointer;font-size:13px;padding:6px 12px}.cal-ym{color:#444;font-size:18px;font-weight:700}.calendar-weekdays{color:#4a4a4a;font-size:14px;font-weight:700;margin-bottom:6px;text-align:center}.calendar-grid,.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-grid{grid-gap:8px;gap:8px}.calendar-cell{background:#fff;border:1px solid #efede9;border-radius:10px;color:#333;cursor:pointer;display:flex;flex-direction:column;height:64px;justify-content:flex-start;padding:6px;position:relative}.calendar-cell.next,.calendar-cell.prev{background:#f4f1ee;color:#b3aaa4}.calendar-cell.selected{background:#8d4f73;border:1px solid #e0dcd8;color:#fff}.calendar-cell.locked{opacity:.45;pointer-events:none}.calendar-day{font-size:14px;font-weight:600}.calendar-dots{align-items:center;display:flex;flex-wrap:nowrap;gap:4px;justify-content:center;margin-top:6px;min-height:12px;position:relative}.dot{border-radius:50%;height:6px;width:6px}.dot.done{background:#92d050}.dot.todo{background:#d7c7d2}.dot-more{color:#fae9f6;font-size:11px;font-weight:700;margin-left:2px}.diary-badge{bottom:-25px;font-size:14px;opacity:.85;position:absolute;right:6px;-webkit-user-select:none;user-select:none}.right-panel-container{display:flex;flex-direction:column;height:100%;max-width:380px;width:100%}.tab-buttons{border:1px solid #ccc;border-radius:8px 8px 0 0;display:flex;margin-bottom:0;overflow:hidden;width:99.5%}.tab-buttons button{background:#fff;border:none;border-right:1px solid #ccc;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:12px 0;transition:background .2s}.tab-buttons button:last-child{border-right:none}.tab-buttons button.active{background:#a5668b;color:#fff}.rightpanel-content{background:#fff;border:1px solid #ccc;border-radius:0 0 8px 8px;border-top:none;box-sizing:border-box;flex:1 1;max-height:calc(100vh - 110px);overflow-y:auto;padding:20px;width:100%}.diary-container{display:flex;flex-direction:column;max-height:calc(100vh - 200px);overflow-y:auto;padding:0;width:100%}.diary-date-select{align-items:center;display:flex;gap:10px;justify-content:flex-start;margin-bottom:20px}.diary-date-select label{color:#333;font-weight:600}.diary-date-select input{border:1px solid #ccc;border-radius:4px;padding:8px}.mood-select-container{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(4,1fr);margin-bottom:20px}.mood-button{align-items:center;background:#fff;border:1px solid #ccc;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;min-height:80px;padding:5px;transition:all .2s}.mood-button svg{height:35px;margin-bottom:3px;width:35px}.mood-button span{color:#333;font-size:.8rem;font-weight:600}.mood-button.selected{background:#fdf5f9;border:3px solid #a5668b}.diary-form{display:flex;flex-direction:column}.diary-textarea{border:1px solid #ccc;border-radius:6px;box-sizing:border-box;font-size:1rem;margin-bottom:15px;min-height:150px;padding:12px;resize:vertical;width:100%}.diary-buttons{display:flex;gap:10px;justify-content:flex-end}.diary-buttons button{border-radius:5px;font-weight:700;padding:8px 16px}.diary-buttons .cancel-button{background:#fff;border:1px solid #ccc;color:#333}.diary-buttons .save-button{background:#a5668b;border:none;color:#fff}.onion-display{align-items:center;display:flex;flex-direction:column;gap:16px}.onion-lottie-box{align-items:center;display:flex;height:180px;justify-content:center;overflow:hidden;transition:transform .25s ease;width:180px}.onion-lottie-box:hover{transform:scale(1.03)}.auth-container{align-items:center;background-color:#f9f5f1;display:flex;font-family:Noto Sans KR,sans-serif;justify-content:center;min-height:100vh}.auth-card{background-color:#fff;border-radius:12px;box-shadow:0 4px 15px #0000000d;max-width:400px;padding:40px;text-align:center;width:100%}.auth-title{color:#333;font-size:1.5rem;font-weight:700;margin-bottom:30px}.form-group{margin-bottom:20px;text-align:left}.form-group label{color:#555;display:block;font-size:.9rem;font-weight:700;margin-bottom:8px}.form-input{border:1px solid #ddd;border-radius:6px;box-sizing:border-box;font-size:1rem;outline:none;padding:12px;transition:border-color .2s;width:100%}.form-input:focus{border-color:#5d9cec}.btn-submit{background-color:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;margin-top:10px;padding:12px;transition:background-color .2s;width:100%}.btn-submit:hover{background-color:#1d4ed8}.auth-footer{color:#666;font-size:.9rem;margin-top:20px}.auth-link{color:#2563eb;cursor:pointer;font-weight:700;margin-left:5px;text-decoration:none}.onion-logo{color:#333;font-size:1.8rem;font-weight:700;margin-bottom:10px}.onion-desc{color:#666;font-size:1rem;line-height:1.5;margin-bottom:30px}.btn-choice-login{background-color:#a5668b;margin-bottom:10px}.btn-choice-login,.btn-choice-register{border:none;border-radius:8px;color:#fff;cursor:pointer;display:block;font-size:1rem;font-weight:700;padding:15px;width:100%}.btn-choice-register{background-color:#92d050}.collection-page{align-items:center;background-color:#f9f5f1;display:flex;flex-direction:column;min-height:100vh;padding:40px 20px}.collection-container{max-width:1000px;width:100%}.back-button{align-items:center;background-color:#fff;border:1px solid #ddd;border-radius:8px;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;margin-bottom:30px;padding:10px 20px;transition:all .2s}.back-button:hover{background-color:#f0f0f0}.content-box{background-color:#fff;border-radius:20px;box-shadow:0 10px 25px #0000000d;padding:40px}.header-section{border-bottom:2px solid #f0f0f0;margin-bottom:30px;padding-bottom:20px}.header-section h1{color:#333;font-size:2rem;margin:0}.header-section p{color:#666;font-size:1.1rem;margin-top:10px}.card-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.character-card{align-items:center;background-color:#fff;border:2px solid #eee;border-radius:15px;cursor:pointer;display:flex;flex-direction:column;padding:20px;position:relative;text-align:center;transition:transform .2s,box-shadow .2s}.character-card:hover{border-color:#aa5796;box-shadow:0 5px 15px #0000001a;transform:translateY(-5px)}.character-card.locked{background-color:#f9f9f9;border-color:#eee;cursor:default;filter:grayscale(100%);opacity:.6}.character-card.locked:hover{border-color:#eee;box-shadow:none;transform:none}.lock-icon{font-size:1.2rem;position:absolute;right:10px;top:10px}.image-box{background-color:#f0f0f0;border-radius:15px;box-shadow:inset 0 2px 5px #0000000d;height:180px;margin-bottom:15px;overflow:hidden}.image-box,.lottie-wrapper{align-items:center;display:flex;justify-content:center;width:100%}.lottie-wrapper{height:100%;padding:10px}.locked-mark{color:#aaa;font-size:4rem}.card-info h3{color:#333;font-size:1.2rem;margin:0 0 5px}.card-info p{color:#888;font-size:.9rem;margin:0}
/*# sourceMappingURL=main.d968270a.css.map*/