pi-interview 0.6.1 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/form/styles.css CHANGED
@@ -239,6 +239,22 @@ body {
239
239
  min-width: 0;
240
240
  }
241
241
 
242
+ .option-item-body {
243
+ flex: 1;
244
+ min-width: 0;
245
+ display: grid;
246
+ gap: 10px;
247
+ }
248
+
249
+ .option-item-label {
250
+ display: flex;
251
+ align-items: center;
252
+ gap: 0;
253
+ min-height: 20px;
254
+ min-width: 0;
255
+ flex-wrap: wrap;
256
+ }
257
+
242
258
  .option-item:hover {
243
259
  border-color: var(--border-focus);
244
260
  background: var(--bg-hover);
@@ -334,7 +350,7 @@ input[type="checkbox"] {
334
350
  display: inline-grid;
335
351
  place-content: center;
336
352
  margin: 0;
337
- margin-top: 3px;
353
+ margin-top: 2px;
338
354
  flex-shrink: 0;
339
355
  }
340
356
 
@@ -1393,6 +1409,9 @@ button {
1393
1409
  padding: 0.75rem;
1394
1410
  overflow-x: hidden;
1395
1411
  line-height: 1.5;
1412
+ white-space: pre-wrap;
1413
+ overflow-wrap: anywhere;
1414
+ word-break: break-word;
1396
1415
  }
1397
1416
 
1398
1417
  .code-block code {
@@ -1400,6 +1419,91 @@ button {
1400
1419
  font-size: var(--font-size-code);
1401
1420
  background: none;
1402
1421
  padding: 0;
1422
+ white-space: inherit;
1423
+ overflow-wrap: inherit;
1424
+ word-break: inherit;
1425
+ }
1426
+
1427
+ .markdown-content-block .code-block-header {
1428
+ border-bottom: 0;
1429
+ }
1430
+
1431
+ .markdown-preview {
1432
+ padding: 0.875rem;
1433
+ display: grid;
1434
+ gap: 0.625rem;
1435
+ color: var(--fg);
1436
+ line-height: 1.6;
1437
+ text-wrap: pretty;
1438
+ }
1439
+
1440
+ .markdown-preview > * {
1441
+ margin: 0;
1442
+ }
1443
+
1444
+ .markdown-preview h1,
1445
+ .markdown-preview h2,
1446
+ .markdown-preview h3,
1447
+ .markdown-preview h4,
1448
+ .markdown-preview h5,
1449
+ .markdown-preview h6 {
1450
+ font-family: var(--font-display);
1451
+ line-height: 1.2;
1452
+ text-wrap: balance;
1453
+ }
1454
+
1455
+ .markdown-preview h1 { font-size: 1.2rem; }
1456
+ .markdown-preview h2 { font-size: 1.1rem; }
1457
+ .markdown-preview h3 { font-size: 1rem; }
1458
+
1459
+ .markdown-preview ul,
1460
+ .markdown-preview ol {
1461
+ margin: 0;
1462
+ padding-left: 1.25rem;
1463
+ display: grid;
1464
+ gap: 0.35rem;
1465
+ }
1466
+
1467
+ .markdown-preview blockquote {
1468
+ margin: 0;
1469
+ padding-left: 0.75rem;
1470
+ border-left: 3px solid var(--accent-muted);
1471
+ color: var(--fg-muted);
1472
+ }
1473
+
1474
+ .markdown-preview pre {
1475
+ margin: 0;
1476
+ padding: 0.75rem;
1477
+ border-radius: 6px;
1478
+ background: color-mix(in srgb, var(--bg-body) 90%, transparent);
1479
+ border: 1px solid var(--border-muted);
1480
+ overflow-x: auto;
1481
+ }
1482
+
1483
+ .markdown-preview pre code {
1484
+ font-family: var(--font-mono);
1485
+ font-size: var(--font-size-code);
1486
+ white-space: pre;
1487
+ }
1488
+
1489
+ .markdown-preview code {
1490
+ font-family: var(--font-mono);
1491
+ font-size: 0.75rem;
1492
+ background: color-mix(in srgb, var(--bg-body) 80%, transparent);
1493
+ padding: 0.1rem 0.3rem;
1494
+ border-radius: 4px;
1495
+ }
1496
+
1497
+ .markdown-preview a {
1498
+ color: var(--accent);
1499
+ text-underline-offset: 2px;
1500
+ }
1501
+
1502
+ .markdown-preview p code,
1503
+ .markdown-preview li code,
1504
+ .markdown-preview blockquote code {
1505
+ white-space: normal;
1506
+ overflow-wrap: anywhere;
1403
1507
  }
1404
1508
 
1405
1509
  .code-block-lines-container {
@@ -1468,25 +1572,11 @@ button {
1468
1572
 
1469
1573
  /* Option with code */
1470
1574
  .option-item.has-code {
1471
- position: relative;
1472
- flex-direction: column;
1473
- align-items: stretch;
1474
1575
  min-width: 0;
1475
1576
  }
1476
1577
 
1477
- .option-item.has-code > input {
1478
- position: absolute;
1479
- top: 6px;
1480
- left: 8px;
1481
- }
1482
-
1483
- .option-item.has-code > span:first-of-type {
1484
- margin-left: 1.5rem;
1485
- }
1486
-
1487
1578
  .option-item.has-code .code-block {
1488
- margin-top: 0.5rem;
1489
- margin-left: 1.5rem;
1579
+ margin: 0;
1490
1580
  }
1491
1581
 
1492
1582
  /* Question-level code block */
@@ -1812,6 +1902,320 @@ button {
1812
1902
  animation: option-slide-in 0.25s ease-out backwards;
1813
1903
  }
1814
1904
 
1905
+ .option-row {
1906
+ position: relative;
1907
+ display: grid;
1908
+ gap: 0;
1909
+ min-width: 0;
1910
+ border-radius: 8px;
1911
+ background: var(--bg-elevated);
1912
+ border: 1px solid var(--border-muted);
1913
+ transition: border-color 120ms ease, background 120ms ease, box-shadow 120ms ease;
1914
+ }
1915
+
1916
+ .option-row.generated {
1917
+ animation: option-slide-in 0.25s ease-out backwards;
1918
+ }
1919
+
1920
+ .option-row:hover {
1921
+ border-color: var(--border-focus);
1922
+ background: var(--bg-hover);
1923
+ }
1924
+
1925
+ .option-row.focused {
1926
+ border-color: var(--card-accent, var(--accent));
1927
+ box-shadow: 0 0 0 2px color-mix(in srgb, var(--card-accent, var(--accent)) 20%, transparent);
1928
+ }
1929
+
1930
+ .option-row-main {
1931
+ display: flex;
1932
+ align-items: flex-start;
1933
+ gap: 10px;
1934
+ min-width: 0;
1935
+ padding: var(--option-padding);
1936
+ }
1937
+
1938
+ .option-row-main .option-item {
1939
+ flex: 1;
1940
+ min-width: 0;
1941
+ padding: 0;
1942
+ border: none;
1943
+ background: transparent;
1944
+ box-shadow: none;
1945
+ }
1946
+
1947
+ .option-row-main .option-item:hover,
1948
+ .option-row-main .option-item.focused {
1949
+ border: none;
1950
+ background: transparent;
1951
+ box-shadow: none;
1952
+ }
1953
+
1954
+ .option-ask-btn {
1955
+ align-self: center;
1956
+ margin-left: auto;
1957
+ border: none;
1958
+ border-radius: 999px;
1959
+ padding: 6px 10px;
1960
+ background: color-mix(in srgb, var(--card-accent, var(--accent)) 12%, transparent);
1961
+ color: var(--card-accent, var(--accent));
1962
+ font-family: var(--font-body);
1963
+ font-size: 11px;
1964
+ font-weight: 600;
1965
+ opacity: 0;
1966
+ transform: translateY(-2px);
1967
+ pointer-events: none;
1968
+ transition: opacity 150ms ease, transform 150ms ease, background 150ms ease;
1969
+ }
1970
+
1971
+ .option-row:hover .option-ask-btn,
1972
+ .option-row:focus-within .option-ask-btn,
1973
+ .option-row.focused .option-ask-btn,
1974
+ .option-row.ask-open .option-ask-btn {
1975
+ opacity: 1;
1976
+ transform: translateY(0);
1977
+ pointer-events: auto;
1978
+ }
1979
+
1980
+ .option-row.ask-open {
1981
+ border-color: color-mix(in srgb, var(--card-accent, var(--accent)) 55%, var(--border-muted));
1982
+ background: color-mix(in srgb, var(--card-accent, var(--accent)) 6%, var(--bg-elevated));
1983
+ overflow: hidden;
1984
+ }
1985
+
1986
+ .option-row.ask-open .option-ask-btn {
1987
+ margin-top: 2px;
1988
+ }
1989
+
1990
+ .option-note-wrap {
1991
+ margin: 0 16px 16px 42px;
1992
+ }
1993
+
1994
+ .option-note-input {
1995
+ width: 100%;
1996
+ min-width: 0;
1997
+ border: 1px solid var(--border-muted);
1998
+ border-radius: 8px;
1999
+ background: var(--bg-body);
2000
+ color: var(--fg);
2001
+ font-family: var(--font-body);
2002
+ font-size: 13px;
2003
+ line-height: 1.4;
2004
+ padding: 8px 10px;
2005
+ }
2006
+
2007
+ .option-note-input::placeholder {
2008
+ color: var(--fg-dim);
2009
+ }
2010
+
2011
+ .option-insight-panel {
2012
+ display: grid;
2013
+ gap: 10px;
2014
+ margin: 0 16px 16px 16px;
2015
+ padding-top: 12px;
2016
+ border-top: 1px solid color-mix(in srgb, var(--card-accent, var(--accent)) 22%, var(--border-muted));
2017
+ }
2018
+
2019
+ .option-insight-meta-row {
2020
+ display: flex;
2021
+ justify-content: space-between;
2022
+ align-items: center;
2023
+ gap: 10px;
2024
+ }
2025
+
2026
+ .option-insight-model,
2027
+ .option-insight-meta {
2028
+ font-size: 11px;
2029
+ color: var(--fg-muted);
2030
+ }
2031
+
2032
+ .option-insight-chips {
2033
+ display: flex;
2034
+ flex-wrap: wrap;
2035
+ gap: 6px;
2036
+ }
2037
+
2038
+ .option-insight-chip,
2039
+ .option-insight-secondary,
2040
+ .option-insight-primary,
2041
+ .option-insight-submit,
2042
+ .option-insight-advanced-toggle,
2043
+ .option-insight-unpin {
2044
+ border: 1px solid var(--border-muted);
2045
+ border-radius: 999px;
2046
+ background: transparent;
2047
+ color: var(--fg-muted);
2048
+ font-family: var(--font-body);
2049
+ font-size: 11px;
2050
+ cursor: pointer;
2051
+ }
2052
+
2053
+ .option-insight-chip,
2054
+ .option-insight-secondary,
2055
+ .option-insight-primary,
2056
+ .option-insight-submit,
2057
+ .option-insight-unpin {
2058
+ padding: 6px 10px;
2059
+ }
2060
+
2061
+ .option-insight-chip.active,
2062
+ .option-insight-primary,
2063
+ .option-insight-submit {
2064
+ border-color: color-mix(in srgb, var(--card-accent, var(--accent)) 55%, transparent);
2065
+ color: var(--card-accent, var(--accent));
2066
+ background: color-mix(in srgb, var(--card-accent, var(--accent)) 10%, transparent);
2067
+ }
2068
+
2069
+ .option-insight-input,
2070
+ .option-insight-select {
2071
+ width: 100%;
2072
+ border: 1px solid var(--border-muted);
2073
+ border-radius: 12px;
2074
+ padding: 10px 12px;
2075
+ background: var(--bg-body);
2076
+ color: var(--fg);
2077
+ font-family: var(--font-body);
2078
+ font-size: 13px;
2079
+ }
2080
+
2081
+ .option-insight-input {
2082
+ min-height: 72px;
2083
+ resize: vertical;
2084
+ }
2085
+
2086
+ .option-insight-advanced-toggle {
2087
+ padding: 0;
2088
+ border: none;
2089
+ color: var(--fg-muted);
2090
+ }
2091
+
2092
+ .option-insight-advanced {
2093
+ display: grid;
2094
+ grid-template-columns: 1fr 1fr;
2095
+ gap: 8px;
2096
+ }
2097
+
2098
+ .option-insight-actions,
2099
+ .option-insight-result-actions {
2100
+ display: flex;
2101
+ flex-wrap: wrap;
2102
+ gap: 8px;
2103
+ }
2104
+
2105
+ .option-insight-error {
2106
+ font-size: 11px;
2107
+ color: var(--error);
2108
+ }
2109
+
2110
+ .option-insight-result {
2111
+ display: grid;
2112
+ gap: 8px;
2113
+ border-top: 1px solid var(--border-muted);
2114
+ padding-top: 10px;
2115
+ }
2116
+
2117
+ .option-insight-summary {
2118
+ margin: 0;
2119
+ color: var(--fg);
2120
+ }
2121
+
2122
+ .option-insight-summary.pinned {
2123
+ font-size: 12px;
2124
+ }
2125
+
2126
+ .option-insight-bullets {
2127
+ margin: 0;
2128
+ padding-left: 18px;
2129
+ display: grid;
2130
+ gap: 4px;
2131
+ color: var(--fg-muted);
2132
+ }
2133
+
2134
+ .option-insight-suggestion-label {
2135
+ font-size: 10px;
2136
+ text-transform: uppercase;
2137
+ letter-spacing: 0.06em;
2138
+ color: var(--fg-muted);
2139
+ }
2140
+
2141
+ .option-insight-suggested-text {
2142
+ display: block;
2143
+ padding: 10px 12px;
2144
+ border-radius: 10px;
2145
+ background: var(--bg-body);
2146
+ font-family: var(--font-mono);
2147
+ font-size: 12px;
2148
+ white-space: pre-wrap;
2149
+ overflow-wrap: anywhere;
2150
+ }
2151
+
2152
+ .option-insight-suggested-text.compact {
2153
+ padding: 8px 10px;
2154
+ font-size: 11px;
2155
+ }
2156
+
2157
+ .option-insight-pinned-list {
2158
+ display: grid;
2159
+ gap: 8px;
2160
+ margin: 0 16px 16px 16px;
2161
+ }
2162
+
2163
+ .option-insight-pinned {
2164
+ border: 1px solid var(--border-muted);
2165
+ border-radius: 12px;
2166
+ padding: 10px 12px;
2167
+ background: color-mix(in srgb, var(--bg-body) 88%, transparent);
2168
+ display: grid;
2169
+ gap: 6px;
2170
+ }
2171
+
2172
+ .option-insight-pinned-head {
2173
+ display: flex;
2174
+ justify-content: space-between;
2175
+ gap: 10px;
2176
+ align-items: center;
2177
+ }
2178
+
2179
+ .option-insight-pinned-prompt {
2180
+ font-size: 11px;
2181
+ color: var(--card-accent, var(--accent));
2182
+ font-family: var(--font-mono);
2183
+ }
2184
+
2185
+ .option-insight-unpin {
2186
+ padding: 4px 8px;
2187
+ }
2188
+
2189
+ @media (max-width: 640px) {
2190
+ .option-row-main {
2191
+ flex-wrap: wrap;
2192
+ }
2193
+
2194
+ .option-ask-btn {
2195
+ opacity: 1;
2196
+ transform: none;
2197
+ pointer-events: auto;
2198
+ margin-left: 1.5rem;
2199
+ }
2200
+
2201
+ .option-insight-panel,
2202
+ .option-insight-pinned-list {
2203
+ margin-left: 1rem;
2204
+ margin-right: 1rem;
2205
+ }
2206
+
2207
+ .option-insight-meta-row,
2208
+ .option-insight-actions,
2209
+ .option-insight-result-actions {
2210
+ align-items: flex-start;
2211
+ flex-direction: column;
2212
+ }
2213
+
2214
+ .option-insight-advanced {
2215
+ grid-template-columns: 1fr;
2216
+ }
2217
+ }
2218
+
1815
2219
  /* Side-by-side layout */
1816
2220
  .question-side-layout {
1817
2221
  display: grid;
@@ -1831,4 +2235,3 @@ button {
1831
2235
  grid-template-columns: 1fr;
1832
2236
  }
1833
2237
  }
1834
-