:root{font-family:PingFang SC,Microsoft YaHei,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#213547;background-color:#f8f5f0;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{min-height:100vh}.app{max-width:1200px;margin:0 auto;padding:20px}.header{text-align:center;margin-bottom:40px;padding:20px 0;border-bottom:2px solid #e8dfd0}.header h1{font-size:2.5rem;color:#8a6d3b;margin-bottom:10px;font-weight:700}.header p{font-size:1.2rem;color:#a67c00}.poetry-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-bottom:40px}.poetry-card{background:#fff;border-radius:10px;padding:20px;box-shadow:0 2px 10px #0000001a;transition:transform .3s ease;cursor:pointer}.poetry-card:hover{transform:translateY(-5px);box-shadow:0 5px 20px #00000026}.poetry-title{font-size:1.3rem;font-weight:600;color:#8a6d3b;margin-bottom:10px}.poetry-author{font-size:.9rem;color:#999;margin-bottom:15px}.poetry-content{font-size:1.15rem;line-height:2.2;color:#333;margin-bottom:20px;text-align:center}.poetry-line{display:block}.poetry-translation{font-size:.9rem;color:#666;padding-top:15px;border-top:1px dashed #e8dfd0;text-align:left}.search-section{margin-bottom:30px;text-align:center}.search-input{width:100%;max-width:600px;padding:12px 15px;font-size:1rem;border:2px solid #e8dfd0;border-radius:25px;outline:none;transition:border-color .3s ease}.search-input:focus{border-color:#8a6d3b}.footer{text-align:center;margin-top:40px;padding:20px 0;border-top:2px solid #e8dfd0;color:#999;font-size:.9rem}.read-more{text-align:center;color:#8a6d3b;font-size:.85rem;margin-top:8px;font-weight:500}.back-btn{display:inline-block;padding:8px 20px;margin-bottom:20px;background:transparent;color:#8a6d3b;border:2px solid #8a6d3b;border-radius:25px;font-size:1rem;cursor:pointer;transition:all .3s ease}.back-btn:hover{background:#8a6d3b;color:#fff}.detail-page{background:#fff;border-radius:12px;padding:40px;box-shadow:0 2px 15px #0000001a;max-width:800px;margin:0 auto}.detail-title{text-align:center;font-size:2rem;color:#8a6d3b;margin-bottom:8px}.detail-author{text-align:center;font-size:1.1rem;color:#999;margin-bottom:30px}.detail-content{margin-bottom:30px;padding:20px 0}.detail-content.poem{font-size:1.2rem;line-height:2.4;color:#333;text-align:center}.detail-content.poem .poetry-line{display:block;padding:4px 0}.detail-content.prose{font-size:1.15rem;line-height:2.2;color:#333;text-align:justify}.prose-paragraph{text-indent:2em;margin:0}.detail-translation{border-top:1px dashed #e8dfd0;padding-top:25px}.detail-translation h3{font-size:1.1rem;color:#8a6d3b;margin-bottom:15px;text-align:center}.detail-translation p{font-size:1.05rem;line-height:2;color:#555;text-align:left}.detail-section{background:#faf7f2;border-radius:10px;padding:20px 24px;margin-top:20px;border-left:4px solid #e8dfd0}.detail-section h3{font-size:1.15rem;color:#8a6d3b;margin-bottom:12px;font-weight:600;text-align:center}.detail-section p{font-size:1rem;color:#555;line-height:1.9;text-align:justify}.detail-section.poet-story{background:#f0f8f7;border-left-color:#7ab8a8}.detail-section.poet-story h3{color:#4a8a7a}.nav-bar{display:flex;justify-content:space-between;align-items:center;padding:12px 24px;background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000000f;margin-bottom:24px}.nav-brand{font-size:1.4rem;font-weight:700;color:#8a6d3b;cursor:pointer;letter-spacing:2px}.nav-links{display:flex;gap:8px}.nav-link{padding:8px 24px;border:none;background:transparent;color:#666;font-size:1rem;border-radius:20px;cursor:pointer;transition:all .3s ease}.nav-link:hover{color:#8a6d3b;background:#f8f5f0}.nav-link.active{color:#fff;background:#8a6d3b}.section-title{font-size:1.5rem;color:#8a6d3b;text-align:center;margin-bottom:24px;font-weight:600}.create-section{margin-bottom:30px}.type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.type-card{background:#fff;border-radius:10px;padding:20px 16px;text-align:center;box-shadow:0 2px 10px #0000000f;cursor:pointer;transition:all .3s ease;border:2px solid transparent}.type-card:hover{transform:translateY(-3px);box-shadow:0 5px 20px #0000001f;border-color:#e8dfd0}.type-card.selected{border-color:#8a6d3b;background:#fdf8f0;box-shadow:0 4px 16px #8a6d3b26}.type-name{font-size:1.15rem;color:#8a6d3b;margin-bottom:8px;font-weight:600}.type-desc{font-size:.85rem;color:#999;line-height:1.5}.create-guide{margin-bottom:40px}.guide-card{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 10px #0000000f;margin-bottom:24px}.guide-title{font-size:1.4rem;color:#8a6d3b;text-align:center;margin-bottom:24px;font-weight:600;padding-bottom:16px;border-bottom:2px solid #e8dfd0}.guide-section{margin-bottom:20px}.guide-section:last-child{margin-bottom:0}.guide-section h4{font-size:1.05rem;color:#555;margin-bottom:10px;font-weight:600}.guide-section p{font-size:.95rem;color:#666;line-height:1.8;padding-left:8px}.guide-structure,.guide-example{background:#faf7f2;border-radius:8px;padding:16px 20px;font-size:.95rem;color:#555;line-height:2;border-left:3px solid #e8dfd0;font-family:inherit;white-space:pre-wrap;margin:0}.create-form{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 10px #0000000f}.form-title{font-size:1.4rem;color:#8a6d3b;text-align:center;margin-bottom:24px;font-weight:600}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:.95rem;color:#555;margin-bottom:8px;font-weight:500}.form-input{width:100%;padding:10px 14px;font-size:1rem;border:2px solid #e8dfd0;border-radius:8px;outline:none;transition:border-color .3s ease;font-family:inherit}.form-input:focus{border-color:#8a6d3b}.form-textarea{width:100%;padding:14px;font-size:1.05rem;border:2px solid #e8dfd0;border-radius:8px;outline:none;transition:border-color .3s ease;resize:vertical;line-height:2;font-family:inherit}.form-textarea:focus{border-color:#8a6d3b}.form-actions{display:flex;justify-content:center;gap:16px;margin-top:20px}.btn{padding:10px 32px;font-size:1rem;border-radius:25px;cursor:pointer;transition:all .3s ease;font-family:inherit;border:2px solid #8a6d3b}.btn-primary{background:#8a6d3b;color:#fff;border-color:#8a6d3b}.btn-primary:hover{background:#a67c00;border-color:#a67c00}.btn-secondary{background:transparent;color:#8a6d3b;border-color:#8a6d3b}.btn-secondary:hover{background:#8a6d3b;color:#fff}.create-result{text-align:center}.result-card{background:#fff;border-radius:12px;padding:40px;box-shadow:0 2px 15px #0000001a;max-width:600px;margin:0 auto 24px}.result-title{font-size:1.8rem;color:#8a6d3b;margin-bottom:8px;font-weight:700}.result-author{font-size:1.1rem;color:#999;margin-bottom:24px}.result-content{font-size:1.2rem;line-height:2.4;color:#333;text-align:center;padding:20px 0;border-top:1px dashed #e8dfd0;border-bottom:1px dashed #e8dfd0;margin-bottom:16px}.result-content .poetry-line{display:block;padding:4px 0}.result-type{margin-top:12px}.result-tag{display:inline-block;padding:4px 16px;background:#fdf8f0;color:#8a6d3b;border-radius:15px;font-size:.85rem;border:1px solid #e8dfd0}.mode-switch{display:flex;justify-content:center;gap:12px;margin-bottom:24px}.mode-btn{padding:10px 32px;font-size:1rem;border:2px solid #e8dfd0;background:#fff;color:#666;border-radius:25px;cursor:pointer;transition:all .3s ease;font-family:inherit}.mode-btn:hover{border-color:#8a6d3b;color:#8a6d3b}.mode-btn.active{background:#8a6d3b;color:#fff;border-color:#8a6d3b}.form-subtitle{text-align:center;color:#999;font-size:.9rem;margin-bottom:20px}.inspiration-textarea{font-size:1.05rem;line-height:1.8;border-style:dashed}.generated-list{margin-top:30px;padding-top:24px;border-top:2px dashed #e8dfd0}.generated-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-bottom:20px}.generated-card{background:#fdf8f0;border:2px solid #e8dfd0;border-radius:12px;padding:20px;cursor:pointer;transition:all .3s ease;text-align:center}.generated-card:hover{transform:translateY(-3px);box-shadow:0 5px 20px #8a6d3b26;border-color:#8a6d3b}.generated-title{font-size:1.2rem;color:#8a6d3b;margin-bottom:12px;font-weight:600}.generated-content{font-size:1.05rem;line-height:2.2;color:#333;margin-bottom:12px}.generated-content .poetry-line{display:block}.generated-theme{display:inline-block;padding:3px 12px;background:#fff;color:#a67c00;border-radius:12px;font-size:.8rem;border:1px solid #e8dfd0}.result-theme{margin-left:8px;background:#f0f8f0;color:#5a8a5a;border-color:#c0dcc0}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:disabled:hover{background:#8a6d3b;border-color:#8a6d3b}.btn-secondary:disabled:hover{background:#8a6d3b;color:#fff}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px}.detail-header .detail-title{text-align:left;margin-bottom:4px}.detail-header .detail-author{text-align:left;margin-bottom:0}.fav-btn{flex-shrink:0;padding:8px 20px;border:2px solid #e8dfd0;background:#fff;color:#999;border-radius:25px;font-size:.95rem;cursor:pointer;transition:all .3s ease;font-family:inherit;white-space:nowrap;margin-left:16px}.fav-btn:hover{border-color:#d4a843;color:#d4a843}.fav-btn.fav-active{background:#fdf8f0;border-color:#d4a843;color:#d4a843;font-weight:600}.login-page{display:flex;justify-content:center;align-items:center;min-height:60vh;padding:20px}.login-card{background:#fff;border-radius:16px;padding:40px;box-shadow:0 4px 20px #00000014;width:100%;max-width:420px}.login-title{font-size:1.6rem;color:#8a6d3b;text-align:center;margin-bottom:30px;font-weight:700}.login-form .form-group{margin-bottom:20px}.login-form .form-group label{font-size:.95rem;color:#555;margin-bottom:8px;font-weight:500}.login-error{color:#e74c3c;font-size:.9rem;text-align:center;margin-bottom:12px;padding:8px 12px;background:#fdecea;border-radius:8px}.login-switch{text-align:center;margin-top:20px;font-size:.9rem;color:#999}.link-btn{background:none;border:none;color:#8a6d3b;font-size:.9rem;cursor:pointer;font-family:inherit;text-decoration:underline;padding:0 4px;transition:color .3s ease}.link-btn:hover{color:#a67c00}.profile-page{padding-bottom:40px}.profile-header{display:flex;align-items:center;gap:20px;background:#fff;border-radius:16px;padding:30px;box-shadow:0 2px 15px #0000000f;margin-bottom:24px}.profile-avatar{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#8a6d3b,#d4a843);color:#fff;font-size:2rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.profile-info{flex:1}.profile-info h2{font-size:1.4rem;color:#333;margin-bottom:4px;font-weight:600}.profile-info p{font-size:.95rem;color:#999}.logout-btn{flex-shrink:0;font-size:.9rem!important;padding:8px 20px!important}.profile-tabs{display:flex;gap:0;margin-bottom:24px;background:#fff;border-radius:12px;padding:6px;box-shadow:0 2px 10px #0000000a}.profile-tab{flex:1;padding:12px 24px;border:none;background:transparent;color:#666;font-size:1rem;font-weight:500;border-radius:10px;cursor:pointer;transition:all .3s ease;font-family:inherit}.profile-tab:hover{color:#8a6d3b;background:#faf7f2}.profile-tab.active{color:#fff;background:#8a6d3b;font-weight:600}.fav-list{display:flex;flex-direction:column;gap:12px}.fav-card{display:flex;align-items:center;background:#fff;border-radius:12px;padding:20px 24px;box-shadow:0 2px 10px #0000000f;cursor:pointer;transition:all .3s ease;border:2px solid transparent}.fav-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a;border-color:#e8dfd0}.fav-card.creation-card{cursor:default}.fav-card.creation-card:hover{transform:none;border-color:transparent}.fav-card-main{flex:1;min-width:0}.fav-card-title{font-size:1.15rem;color:#8a6d3b;margin-bottom:4px;font-weight:600}.fav-card-author{font-size:.85rem;color:#999;margin-bottom:10px}.fav-card-content{font-size:.95rem;color:#555;line-height:1.8}.fav-card-content .poetry-line{margin-right:8px}.fav-card-meta{display:flex;align-items:center;gap:12px;margin-top:12px;flex-wrap:wrap}.fav-time{font-size:.8rem;color:#bbb}.fav-remove-btn{flex-shrink:0;width:32px;height:32px;border:none;background:#f5f0ea;color:#999;border-radius:50%;font-size:.85rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;margin-left:16px}.fav-remove-btn:hover{background:#fdecea;color:#e74c3c}.creation-content{text-align:center}.empty-state{text-align:center;padding:60px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000000a}.empty-state p{font-size:1.1rem;color:#999;margin-bottom:20px}.fav-toast{position:fixed;top:20px;left:50%;transform:translate(-50%);background:#000000bf;color:#fff;padding:12px 32px;border-radius:25px;font-size:.95rem;z-index:1000;animation:toastIn .3s ease,toastOut .3s ease 1.7s forwards;pointer-events:none}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes toastOut{0%{opacity:1}to{opacity:0}}@media (max-width: 768px){.app{padding:10px}.header h1{font-size:2rem}.poetry-container{grid-template-columns:1fr}.detail-page{padding:20px}.detail-title{font-size:1.5rem}.detail-content.prose{font-size:1rem;line-height:1.9}.detail-content.poem{font-size:1.05rem;line-height:2}.detail-section{padding:16px}.detail-section p{font-size:.95rem}.nav-bar{padding:10px 16px}.nav-brand{font-size:1.2rem}.nav-link{padding:6px 16px;font-size:.9rem}.type-grid{grid-template-columns:repeat(2,1fr);gap:10px}.type-card{padding:14px 10px}.type-name{font-size:1rem}.type-desc{font-size:.75rem}.guide-card,.create-form{padding:20px}.form-row{grid-template-columns:1fr;gap:0}.result-card{padding:24px 16px}.result-title{font-size:1.4rem}.result-content{font-size:1.05rem}.mode-switch{gap:8px}.mode-btn{padding:8px 20px;font-size:.9rem}.generated-grid{grid-template-columns:1fr}.detail-header{flex-direction:column;gap:12px}.detail-header .detail-title,.detail-header .detail-author{text-align:center}.fav-btn{align-self:center;margin-left:0}.login-card{padding:24px}.profile-header{flex-wrap:wrap;padding:20px;gap:16px}.profile-avatar{width:56px;height:56px;font-size:1.5rem}.profile-info h2{font-size:1.2rem}.logout-btn{margin-left:auto}.profile-tab{padding:10px 16px;font-size:.9rem}.fav-card{padding:16px}.fav-card-title{font-size:1.05rem}.fav-card-content{font-size:.85rem}}
