/* Writing practice pages */
.writing-list-shell{padding:2rem 1.5rem 4rem}
.writing-list-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;flex-wrap:wrap;margin-bottom:2rem}
.writing-list-header h1{margin:.5rem 0 .25rem}
.writing-list-header p{color:var(--muted,#5b6472)}
.writing-task-filter{display:flex;gap:.5rem;flex-wrap:wrap}
.writing-empty{color:var(--muted,#5b6472)}
.writing-history-banner{display:flex;align-items:center;gap:1rem;margin:0 0 2.5rem;padding:1rem 1.25rem;border:1px solid var(--border,#e5e7eb);border-radius:.9rem;background:var(--surface,#fff)}
.writing-history-banner:hover{border-color:var(--accent,#3b82f6)}
.writing-history-banner>svg{width:1.5rem;height:1.5rem;flex:none;color:var(--accent,#176b50)}
.writing-history-banner>div{flex:1;display:flex;flex-direction:column;gap:.15rem}
.writing-history-banner span{color:var(--muted,#5b6472);font-size:.92rem}
.writing-task-group{margin-bottom:2.5rem}
.writing-task-group h2{display:flex;align-items:center;gap:.6rem;margin-bottom:.35rem}
.writing-task-note{margin:0 0 1rem;color:var(--muted,#5b6472);font-size:.92rem}
.writing-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:1.25rem}
.writing-card{display:flex;flex-direction:column;gap:.6rem;padding:1.25rem;border:1px solid var(--border,#e5e7eb);border-radius:.9rem;background:var(--surface,#fff)}
.writing-card:hover{border-color:var(--accent,#3b82f6)}
.writing-card>div{display:flex;justify-content:space-between;align-items:center;gap:.75rem}
.writing-card h3{margin:0}
.writing-card footer{display:flex;gap:1rem;flex-wrap:wrap;color:var(--muted,#5b6472);font-size:.88rem;margin-top:auto}

.writing-shell{max-width:80rem;margin:0 auto;padding:2rem 1.5rem 4rem}
.writing-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;flex-wrap:wrap;margin-bottom:2rem}
.writing-header h1{margin:.5rem 0 .25rem}
.writing-header p{color:var(--muted,#5b6472)}
.writing-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:2.5rem;align-items:start}
.writing-prompt h2,.writing-editor h2{margin-top:0}
.writing-prompt-text{font-family:'Newsreader',serif;font-size:1.08rem;line-height:1.75;white-space:pre-line}
.writing-chart{overflow-x:auto;margin-top:1rem}
.writing-chart table{border-collapse:collapse;width:100%;font-size:.95rem}
.writing-chart th,.writing-chart td{padding:.55rem .8rem;border:1px solid var(--border,#d4d9e0);text-align:left}
.writing-chart th{background:var(--surface-alt,#f1f5f9);font-weight:700}
.writing-editor-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem}
.writing-timer{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;font-variant-numeric:tabular-nums}
.writing-timer.over{color:#dc2626}
.writing-wordcount{font-weight:600;color:var(--muted,#5b6472);font-variant-numeric:tabular-nums}
.writing-content{width:100%;padding:1rem;border:1px solid var(--border,#d4d9e0);border-radius:.6rem;background:var(--surface,#fff);font:inherit;line-height:1.7;resize:vertical}
.writing-content:focus{outline:none;border-color:var(--accent,#3b82f6)}
.writing-wordgoal{margin:.5rem 0 0;font-size:.88rem;font-weight:600;color:var(--muted,#5b6472)}
.writing-wordgoal.met{color:#15803d}
.writing-actions{margin-top:1rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.writing-save-status{flex:1;margin:0;font-size:.88rem;color:var(--muted,#5b6472)}
.writing-error{color:#dc2626;font-weight:600;margin:.75rem 0 0}

.writing-review{margin-top:2.5rem;border-top:2px solid var(--border,#e5e7eb);padding-top:1.5rem}
.writing-review h2{display:flex;align-items:center;gap:.5rem;margin-top:0}
.writing-review>p{color:var(--muted,#5b6472)}
.writing-review-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:1.25rem;margin:1.25rem 0}
.writing-review-group{border:1px solid var(--border,#e5e7eb);border-radius:.9rem;padding:1rem 1.25rem;background:var(--surface,#fff)}
.writing-review-group legend{font-weight:700;padding:0 .4rem}
.writing-review-group label{display:flex;align-items:flex-start;gap:.6rem;padding:.4rem 0;cursor:pointer}
.writing-review-group input{margin-top:.25rem;flex:none}
.writing-review-band{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.writing-review-band label{font-weight:600}
.writing-review-band select{padding:.55rem .8rem;border:1px solid var(--border,#d4d9e0);border-radius:.6rem;background:var(--surface,#fff);font:inherit}

.writing-history-list{display:grid;gap:1rem}
.writing-history-item{display:flex;flex-direction:column;gap:.6rem;padding:1.25rem;border:1px solid var(--border,#e5e7eb);border-radius:.9rem;background:var(--surface,#fff)}
.writing-history-item:hover{border-color:var(--accent,#3b82f6)}
.writing-history-item h3{margin:.4rem 0 0}
.writing-history-item footer{display:flex;gap:1.25rem;flex-wrap:wrap;color:var(--muted,#5b6472);font-size:.88rem}
.writing-band{font-weight:700;color:var(--accent,#176b50)}

@media (max-width:960px){
  .writing-layout{grid-template-columns:1fr}
}
