    /* 全局樣式 */
    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    @keyframes gradualFadeIn {
        from { opacity: 0; transform: translateY(20px); }
        to { opacity: 1; transform: translateY(0); }
    }

    @keyframes floatAnimation {
        0% { transform: translateY(0); }
        50% { transform: translateY(-5px); }
        100% { transform: translateY(0); }
    }

    @keyframes falling {
        0% {
            opacity: 0;
            top: -10%;
            transform: translateX(0) rotate(0deg);
        }
        10% {
            opacity: 1;
        }
        20% {
            transform: translateX(10px) rotate(20deg);
        }
        40% {
            transform: translateX(-10px) rotate(-20deg);
        }
        60% {
            transform: translateX(10px) rotate(20deg);
        }
        80% {
            transform: translateX(-10px) rotate(-20deg);
        }
        100% {
            opacity: 0;
            top: 110%;
            transform: translateX(0) rotate(0deg);
        }
    }

    @keyframes blinking {
        0%, 100% { opacity: 1; }
        50% { opacity: 0.3; }
    }

    body {
        font-family: '微軟正黑體', Arial, sans-serif;
        line-height: 1.6;
        color: #5c4b31;
        background-color: #f8f5ee;
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><text x="20" y="50" font-family="Arial" font-size="15" fill="rgba(92,75,49,0.03)">謝謝陳老師</text></svg>');
        animation: gradualFadeIn 0.8s ease-out;
        position: relative;
        overflow-x: hidden;
    }

    a {
        text-decoration: none;
        color: #d2691e;
    }

    a:hover {
        text-decoration: underline;
    }

    /* 頁面佈局 */
    header, main, footer {
        padding: 20px;
    }

    main {
        max-width: 1200px;
        margin: 0 auto;
        padding: 20px;
    }

    section {
        margin-bottom: 40px;
    }

    /* 導航欄 */
    header {
        background-color: #d2b48c;
        color: #5c4b31;
        padding: 20px;
        box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    }

    header h1 {
        margin-bottom: 15px;
        font-size: 2.2rem;
        position: relative;
        display: inline-block;
        text-shadow: 2px 2px 4px rgba(0,0,0,0.1);
    }

    header h1:after {
        content: "🎓";
        font-size: 1.5rem;
        position: absolute;
        top: -10px;
        right: -30px;
    }

    nav ul {
        display: flex;
        list-style: none;
    }

    nav ul li {
        margin-right: 20px;
    }

    nav ul li a {
        color: #5c4b31;
        font-weight: bold;
        transition: all 0.3s;
        padding: 5px 10px;
        border-radius: 4px;
    }

    nav ul li a:hover {
        color: #fff;
        text-decoration: none;
        background-color: #c19a6b;
        transform: scale(1.05);
    }

    /* 首頁 */
    .hero {
        background: linear-gradient(135deg, #d2b48c 0%, #e6ccb2 100%);
        color: #5c4b31;
        padding: 60px;
        text-align: center;
        border-radius: 8px;
        margin-bottom: 40px;
        position: relative;
        overflow: hidden;
        box-shadow: 0 5px 15px rgba(0,0,0,0.1);
    }

    .hero:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><text x="20" y="50" font-family="Arial" font-size="40" fill="rgba(92,75,49,0.05)">🎓</text></svg>');
        background-repeat: repeat;
        opacity: 0.1;
    }

    .hero h2 {
        font-size: 2.5rem;
        margin-bottom: 20px;
        position: relative;
        display: inline-block;
        animation: floatAnimation 3s ease-in-out infinite;
    }

    .hero h2:after {
        content: "718班加油";
        position: absolute;
        top: -15px;
        right: -60px;
        background-color: #c19a6b;
        color: #fff;
        font-size: 0.8rem;
        padding: 3px 8px;
        border-radius: 10px;
        transform: rotate(15deg);
    }

    .hero p {
        font-size: 1.2rem;
        margin-bottom: 30px;
    }

    .hero .teacher-note {
        font-style: italic;
        margin-bottom: 25px;
        padding: 10px 15px;
        background-color: rgba(255, 255, 255, 0.2);
        border-left: 3px solid #fff;
        position: relative;
        display: inline-block;
        max-width: 80%;
        border-radius: 0 8px 8px 0;
    }

    .hero .teacher-note:before {
        content: "✉️";
        margin-right: 8px;
    }    .cta-button {
        text-align: center;
        margin: 20px 0;
    }

    .cta-button a {
        display: inline-block;
        padding: 15px 30px;
        background-color: #c19a6b;
        color: #fff;
        border-radius: 30px;
        font-weight: bold;
        transition: all 0.3s;
        box-shadow: 0 4px 6px rgba(0,0,0,0.1);
        text-decoration: none;
        cursor: pointer;
        user-select: none;
        position: relative;
        overflow: hidden;
        min-width: 250px;
    }    .cta-button a:hover {
        background-color: #a67c52;
        transform: translateY(-3px) scale(1.05);
        box-shadow: 0 8px 12px rgba(0,0,0,0.2);
        text-decoration: none;
        color: #fff;
    }

    .cta-button a:active {
        transform: translateY(-1px) scale(1.02);
        box-shadow: 0 4px 8px rgba(0,0,0,0.15);
    }

    .features {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
        gap: 20px;
    }

    .feature {
        background-color: white;
        padding: 30px;
        border-radius: 15px;
        box-shadow: 0 4px 6px rgba(0,0,0,0.1);
        transition: all 0.3s;
        border-top: 3px solid #c19a6b;
        position: relative;
        animation: gradualFadeIn 0.5s ease-out;
        animation-fill-mode: both;
    }

    .feature:hover {
        transform: translateY(-5px);
        box-shadow: 0 6px 12px rgba(0,0,0,0.15);
    }

    .feature h3 {
        color: #5c4b31;
        margin-bottom: 15px;
        font-size: 1.4rem;
        border-bottom: 2px dashed rgba(193, 154, 107, 0.3);
        padding-bottom: 8px;
        display: inline-block;
    }

    .feature:nth-child(1):before {
        content: "🧠";
        position: absolute;
        top: 10px;
        right: 15px;
        font-size: 1.5rem;
    }

    .feature:nth-child(2):before {
        content: "👨‍🏫";
        position: absolute;
        top: 10px;
        right: 15px;
        font-size: 1.5rem;
    }

    .feature:nth-child(3):before {
        content: "📚";
        position: absolute;
        top: 10px;
        right: 15px;
        font-size: 1.5rem;
    }

    .feature:nth-child(1) {
        animation-delay: 0.2s;
    }

    .feature:nth-child(2) {
        animation-delay: 0.4s;
    }

    .feature:nth-child(3) {
        animation-delay: 0.6s;
    }

    /* 感謝語頁面 */
    .thank-you-letter {
        background-color: white;
        padding: 40px;
        border-radius: 15px;
        box-shadow: 0 4px 6px rgba(0,0,0,0.1);
        margin-bottom: 40px;
        position: relative;
        border-left: 5px solid #c19a6b;
    }

    .thank-you-letter:after {
        content: "📝";
        position: absolute;
        top: -15px;
        right: -15px;
        font-size: 2rem;
        background: #c19a6b;
        width: 50px;
        height: 50px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 2px 4px rgba(0,0,0,0.2);
    }

    .thank-you-letter h2 {
        color: #5c4b31;
        margin-bottom: 20px;
        text-align: center;
        font-size: 2rem;
        position: relative;
        display: inline-block;
        left: 50%;
        transform: translateX(-50%);
        padding-bottom: 10px;
    }

    .thank-you-letter h2:after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 3px;
        background: linear-gradient(90deg, transparent, #c19a6b, transparent);
    }

    .letter-content {
        font-size: 1.1rem;
        line-height: 1.8;
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><text x="20" y="50" font-family="Arial" font-size="15" fill="rgba(92,75,49,0.03)">718班</text></svg>');
    }

    .letter-content p {
        margin-bottom: 20px;
    }

    .signature {
        text-align: right;
        font-style: italic;
        color: #5c4b31;
        position: relative;
    }

    .signature:before {
        content: "🖋️";
        margin-right: 5px;
    }

    .testimonial-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
        gap: 20px;
        align-items: stretch;
    }

    .testimonial {
        background-color: white;
        padding: 30px;
        border-radius: 15px;
        box-shadow: 0 3px 10px rgba(0,0,0,0.1);
        position: relative;
        transition: all 0.3s;
        animation: gradualFadeIn 0.5s ease-out;
        animation-fill-mode: both;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        max-width: 420px;
        margin: 0 auto;
        min-height: 320px;
    }

    .testimonial p {
        white-space: pre-wrap;
        font-style: italic;
        margin-bottom: 15px;
        text-align: center;
        position: relative;
        z-index: 1;
        font-size: 1.1rem;
        line-height: 1.8;
        padding: 0 10px;
    }

    .student-name {
        color: #5c4b31;
        font-weight: bold;
        display: block;
        text-align: right;
        margin-top: 10px;
        border-top: 1px dashed #e6dfd1;
        padding-top: 8px;
        font-size: 1rem;
    }

    .student-name:before {
        content: "👦";
        margin-right: 5px;
    }

    .testimonial:nth-child(1) {
        animation-delay: 0.2s;
    }

    .testimonial:nth-child(2) {
        animation-delay: 0.4s;
    }

    .testimonial:nth-child(3) {
        animation-delay: 0.6s;
    }

    .testimonial:nth-child(4) {
        animation-delay: 0.8s;
    }

    /* 頁面標題 */
    .page-title {
        text-align: center;
        margin-bottom: 40px;
        position: relative;
    }

    .page-title:after {
        content: "";
        display: block;
        width: 100px;
        height: 3px;
        background-color: #c19a6b;
        margin: 15px auto 0;
    }

    .page-title h2 {
        color: #5c4b31;
        font-size: 2.2rem;
        margin-bottom: 15px;
    }

    /* 聯絡表單頁面 */
    .contact-form {
        background-color: white;
        padding: 40px;
        border-radius: 15px;
        box-shadow: 0 4px 6px rgba(0,0,0,0.1);
        margin-bottom: 40px;
        position: relative;
        border: 1px solid #e6dfd1;
    }

    .contact-form:before {
        content: "✉️";
        position: absolute;
        top: -20px;
        left: 50%;
        transform: translateX(-50%);
        background: #c19a6b;
        color: #fff;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.2rem;
    }

    .form-group {
        margin-bottom: 25px;
    }

    label {
        display: block;
        margin-bottom: 8px;
        font-weight: bold;
        color: #5c4b31;
    }

    input[type="text"],
    input[type="email"],
    select,
    textarea {
        width: 100%;
        padding: 12px;
        border: 2px solid #e6dfd1;
        border-radius: 8px;
        font-family: inherit;
        font-size: 1rem;
        transition: all 0.3s;
    }

    input[type="text"]:focus,
    input[type="email"]:focus,
    select:focus,
    textarea:focus {
        border-color: #c19a6b;
        outline: none;
        box-shadow: 0 0 0 3px rgba(193, 154, 107, 0.2);
        transform: scale(1.01);
    }

    textarea {
        resize: vertical;
        min-height: 100px;
    }

    textarea::placeholder {
        color: #c9c1b5;
    }

    .checkbox-group,
    .radio-group {
        display: flex;
        flex-wrap: wrap;
        gap: 15px;
    }

    .checkbox-group label,
    .radio-group label {
        display: inline;
        margin-left: 5px;
        font-weight: normal;
        transition: all 0.2s;
    }

    .checkbox-group input:checked + label,
    .radio-group input:checked + label {
        color: #c19a6b;
        font-weight: bold;
    }

    .submit-btn {
        background-color: #c19a6b;
        color: white;
        border: none;
        padding: 12px 30px;
        border-radius: 30px;
        cursor: pointer;
        font-size: 1.1rem;
        font-weight: bold;
        transition: all 0.3s;
        position: relative;
        overflow: hidden;
        display: block;
        margin: 0 auto;
    }

    .submit-btn:hover {
        background-color: #a67c52;
        transform: translateY(-3px) scale(1.05);
        box-shadow: 0 4px 8px rgba(0,0,0,0.2);
    }

    .submit-btn:after {
        content: "➡️";
        position: absolute;
        right: -20px;
        opacity: 0;
        transition: all 0.3s;
    }

    .submit-btn:hover:after {
        right: 15px;
        opacity: 1;
    }

    .contact-info {
        background-color: #f8f5ee;
        padding: 30px;
        border-radius: 15px;
        border-left: 3px solid #c19a6b;
    }

    .contact-info h3 {
        color: #5c4b31;
        margin-bottom: 15px;
        position: relative;
        display: inline-block;
    }

    .contact-info h3:after {
        content: "";
        position: absolute;
        bottom: -5px;
        left: 0;
        width: 100%;
        height: 2px;
        background-color: #c19a6b;
    }

    .contact-info .note {
        margin-top: 15px;
        padding: 12px;
        background-color: rgba(193, 154, 107, 0.1);
        border-radius: 8px;
        font-style: italic;
        position: relative;
        padding-left: 35px;
        font-size: 1.05rem;
        border: 1px dashed rgba(193, 154, 107, 0.3);
    }

    .contact-info .note:before {
        content: "📝";
        position: absolute;
        left: 8px;
        top: 10px;
    }

    /* 頁腳 */
    footer {
        background-color: #d2b48c;
        color: #5c4b31;
        text-align: center;
        padding: 20px;
        margin-top: 40px;
        position: relative;
    }

    footer:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 3px;
        background: linear-gradient(90deg, #c19a6b, transparent, #c19a6b);
    }

    footer p {
        position: relative;
        display: inline-block;
        font-weight: bold;
    }

    footer p:after {
        content: "🎓";
        margin-left: 10px;
    }

    /* 響應式設計 */
    @media (max-width: 768px) {
        nav ul {
            flex-direction: column;
        }
        
        nav ul li {
            margin-right: 0;
            margin-bottom: 10px;
        }
        
        .hero {
            padding: 30px;
        }
        
        .hero h2 {
            font-size: 2rem;
        }
        
        .cta-button a {
            padding: 10px 20px;
        }
    }

    /* 添加的表情符號和裝飾 */
    .emoji-icon {
        display: inline-block;
        margin: 0 3px;
        animation: floatAnimation 2s ease-in-out infinite;
    }

    .emoji-decoration {
        font-size: 1.2em;
        position: relative;
        display: inline-block;
        animation: floatAnimation 2.5s ease-in-out infinite;
    }

    .student-decoration {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        pointer-events: none;
        overflow: hidden;
    }

    .doodle {
        position: absolute;
        opacity: 0.2;
        font-size: 1.8rem;
        transform: rotate(var(--rotation));
        animation: floatAnimation 3s ease-in-out infinite;
    }

    .math-symbol:nth-child(1) {
        top: 15%;
        left: 10%;
        --rotation: 15deg;
    }

    .math-symbol:nth-child(2) {
        top: 25%;
        right: 15%;
        --rotation: -20deg;
    }

    .math-symbol:nth-child(3) {
        bottom: 30%;
        left: 20%;
        --rotation: 10deg;
    }

    .math-symbol:nth-child(4) {
        bottom: 15%;
        right: 25%;
        --rotation: -15deg;
    }

    .math-symbol:nth-child(5) {
        top: 45%;
        right: 10%;
        --rotation: 25deg;
        font-size: 2.2rem;
    }

    /* 畢業留言區塊 */
    .graduation-message {
        background-color: #f8e8cc;
        border-radius: 15px;
        padding: 30px;
        box-shadow: 0 4px 10px rgba(0,0,0,0.1);
        margin: 40px 0;
        position: relative;
        overflow: hidden;
        text-align: center;
    }

    .graduation-message:before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="50" height="50" viewBox="0 0 50 50"><text x="5" y="30" font-family="Arial" font-size="20" fill="rgba(92,75,49,0.05)">718班</text></svg>');
        opacity: 0.1;
    }

    .message-container {
        position: relative;
        z-index: 1;
    }

    .graduation-message h3 {
        color: #5c4b31;
        font-size: 1.8rem;
        margin-bottom: 15px;
    }

    .graduation-message p {
        font-size: 1.1rem;
        margin-bottom: 20px;
    }

    .student-signatures {
        margin-top: 20px;
        display: inline-block;
        padding: 15px 30px;
        background-color: rgba(255, 255, 255, 0.4);
        border-radius: 30px;
    }

    .student-signatures .signature {
        font-family: 'Comic Sans MS', cursive, sans-serif;
        font-size: 1.2rem;
        color: #5c4b31;
        font-weight: bold;
        position: relative;
        display: inline-block;
    }

    .student-signatures .signature:before {
        content: "❤";
        margin-right: 8px;
        color: #d2691e;
    }

    .student-signatures .signature:after {
        content: "❤";
        margin-left: 8px;
        color: #d2691e;
    }

    /* 更新導航欄樣式 */
    nav ul li a i {
        margin-left: 5px;
        font-size: 0.9em;
    }

    /* 花瓣掉落特效 */
    .flower-container {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        pointer-events: none;
        z-index: 9999;
        overflow: hidden;
    }

    .flower {
        position: absolute;
        width: 20px;
        height: 20px;
        background-repeat: no-repeat;
        background-size: contain;
        opacity: 0.7;
        z-index: 9999;
        pointer-events: none;
        animation: falling linear infinite;
    }

    .flower:nth-child(1) {
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><text x="0" y="15" font-family="Arial" font-size="15" fill="rgba(210,180,140,0.7)">🌸</text></svg>');
        left: 10%;
        animation-duration: 10s;
        animation-delay: 1s;
    }

    .flower:nth-child(2) {
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><text x="0" y="15" font-family="Arial" font-size="15" fill="rgba(210,180,140,0.7)">🌼</text></svg>');
        left: 20%;
        animation-duration: 12s;
        animation-delay: 2s;
    }

    .flower:nth-child(3) {
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><text x="0" y="15" font-family="Arial" font-size="15" fill="rgba(210,180,140,0.7)">🌺</text></svg>');
        left: 35%;
        animation-duration: 9s;
        animation-delay: 0s;
    }

    .flower:nth-child(4) {
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><text x="0" y="15" font-family="Arial" font-size="15" fill="rgba(210,180,140,0.7)">🌸</text></svg>');
        left: 50%;
        animation-duration: 11s;
        animation-delay: 3s;
    }

    .flower:nth-child(5) {
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><text x="0" y="15" font-family="Arial" font-size="15" fill="rgba(210,180,140,0.7)">🌷</text></svg>');
        left: 65%;
        animation-duration: 13s;
        animation-delay: 1.5s;
    }

    .flower:nth-child(6) {
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><text x="0" y="15" font-family="Arial" font-size="15" fill="rgba(210,180,140,0.7)">🌼</text></svg>');
        left: 80%;
        animation-duration: 10.5s;
        animation-delay: 2.5s;
    }

    .flower:nth-child(7) {
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><text x="0" y="15" font-family="Arial" font-size="15" fill="rgba(210,180,140,0.7)">🌸</text></svg>');
        left: 90%;
        animation-duration: 12s;
        animation-delay: 1s;
    }

    .flower:nth-child(8) {
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><text x="0" y="15" font-family="Arial" font-size="15" fill="rgba(210,180,140,0.7)">🌺</text></svg>');
        left: 25%;
        animation-duration: 14s;
        animation-delay: 0.5s;
    }

    .flower:nth-child(9) {
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><text x="0" y="15" font-family="Arial" font-size="15" fill="rgba(210,180,140,0.7)">🌷</text></svg>');
        left: 40%;
        animation-duration: 9.5s;
        animation-delay: 2s;
    }

    .flower:nth-child(10) {
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><text x="0" y="15" font-family="Arial" font-size="15" fill="rgba(210,180,140,0.7)">🌼</text></svg>');
        left: 70%;
        animation-duration: 11s;
        animation-delay: 3.5s;
    }

    .blinking-arrow {
        animation: blinking 1.5s ease-in-out infinite;
        margin-left: 5px;
    }
